<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于FPGA的仿真系統(tǒng)數(shù)據(jù)采集控制器IP核設(shè)計(jì)

          基于FPGA的仿真系統(tǒng)數(shù)據(jù)采集控制器IP核設(shè)計(jì)

          作者: 時(shí)間:2010-09-02 來源:網(wǎng)絡(luò) 收藏

            2 系統(tǒng)設(shè)計(jì)

            基于前述控制過程,本分發(fā)送數(shù)據(jù)和采集數(shù)據(jù)兩種處理機(jī)制進(jìn)行設(shè)計(jì)。相應(yīng)地,將本內(nèi)部劃分為控制邏輯模塊、數(shù)據(jù)模式轉(zhuǎn)換模塊、網(wǎng)絡(luò)通信模塊、寄存器模塊、總線模塊以及時(shí)鐘模塊六部分。其相互關(guān)系如圖3所示。

          基于FPGA的仿真系統(tǒng)數(shù)據(jù)采集控制器IP核設(shè)計(jì)

            主要模塊功能及其特征描述如下:

            (1)IP核控制邏輯模塊:負(fù)責(zé)整個(gè)IP核的控制與運(yùn)行,當(dāng)接收到主機(jī)發(fā)來的工作命令后,該模塊根據(jù)命令的種類(發(fā)送數(shù)據(jù)或采集數(shù)據(jù))向相應(yīng)的模塊發(fā)送控制命令;出現(xiàn)異常時(shí),本模塊根據(jù)事先定義好的規(guī)則對(duì)異常情況進(jìn)行處理;

            (2)數(shù)據(jù)模式轉(zhuǎn)換模塊:該模塊在接收到IP核控制邏輯模塊發(fā)來的工作命令后,啟動(dòng)數(shù)字信號(hào)——模擬信號(hào)的轉(zhuǎn)換;

            (3)網(wǎng)絡(luò)通信模塊:采用專用的快速以太網(wǎng)控制器,利用其內(nèi)部集成的控制器及協(xié)議棧,可以方便地與前端模擬設(shè)備連接通信;同時(shí)利用其支持10/100 M全雙工傳輸模式的性能,實(shí)現(xiàn)快速收發(fā)數(shù)據(jù)的目的;

            (4)寄存器模塊:包括寄存器訪問和寄存器單元兩部分。寄存器訪問部分的作用在于,當(dāng)寄存器訪問程序被IP核控制邏輯選中調(diào)用時(shí),IP核控制邏輯可通過其對(duì)寄存器單元進(jìn)行讀或?qū)懖僮髟L問;寄存器單元部分作為發(fā)送或采集機(jī)制流水線工作時(shí),數(shù)據(jù)流動(dòng)的中間暫存介質(zhì)?;诒鞠到y(tǒng)的設(shè)計(jì)目標(biāo),選擇SDRAM作為寄存器單元的硬件支撐,因其讀寫時(shí)序較復(fù)雜,需在本系統(tǒng)中集成專用的SDRAM控制器IP 核與其對(duì)接[5];

            (5)總線模塊:負(fù)責(zé)各模塊之間信息的傳輸,如提供Avalon接口供寄存器訪問時(shí)使用,它使用Avalon必需的信號(hào)來訪問寄存器,并支持任務(wù)邏輯傳輸類型[6];

            (6)時(shí)鐘模塊:產(chǎn)生相應(yīng)頻率的時(shí)鐘供給IP核,時(shí)鐘的頻率由系統(tǒng)時(shí)鐘頻率分頻所得。



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();