<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)之:硬件系統(tǒng)的設(shè)計(jì)技巧

          FPGA最小系統(tǒng)之:硬件系統(tǒng)的設(shè)計(jì)技巧

          作者: 時(shí)間:2017-06-05 來源:網(wǎng)絡(luò) 收藏

          的硬件設(shè)計(jì)不同于DSP和ARM系統(tǒng),比較靈活和自由。只要設(shè)計(jì)好專用管腳的電路,通用I/O的連接可以自己定義。因此,的電路設(shè)計(jì)中會有一些特殊的技巧可以參考。

          本文引用地址:http://www.ex-cimer.com/article/201706/348850.htm

          2.3.1 管腳兼容性設(shè)計(jì)

          前面的內(nèi)容提到過,在芯片選項(xiàng)的時(shí)候要盡量選擇兼容性好的封裝。那么,在硬件電路設(shè)計(jì)時(shí),就要考慮如何兼容多種芯片的問題。

          例如,紅色颶風(fēng)II代-的開發(fā)板就是兼容了兩個(gè)型號的FPGA。這兩個(gè)芯片有12個(gè)I/O管腳定義是不同的。在芯片上,這12個(gè)I/O是通用I/O管腳,而在芯片上,它們是電源和地信號。

          為了能保證兩個(gè)芯片在相同的電路板上都能工作,我們就必須按照的要求來把對應(yīng)管腳連接到電源和地平面。因?yàn)?,通用的I/O可以連接到電源或者地信號,但是電源或者地信號卻不能作為通用I/O。

          在相同封裝、兼容多個(gè)型號FPGA的設(shè)計(jì)中,一般的原則就是按照通用I/O數(shù)量少的芯片來設(shè)計(jì)電路。

          2.3.2 根據(jù)電路布局來分配管腳功能

          FPGA的通用I/O功能定義可以根據(jù)需要來指定。在電路圖設(shè)計(jì)的流程中,如果能夠根據(jù)PCB的布局來對應(yīng)的調(diào)整原理圖中FPGA的管腳定義,就可以讓后期的布線工作更順利。

          例如,如圖2.1所示,芯片在FPGA的左側(cè)。在FPGA的管腳分配的時(shí)候,應(yīng)該把與相關(guān)的信號安排在FPGA的左側(cè)管腳上。這樣,可以保證信號的布線距離最短,實(shí)現(xiàn)最佳的信號完整性。

          2.3.3 預(yù)留測試點(diǎn)

          目前FPGA提供的I/O數(shù)量越來越多,除了能夠滿足設(shè)計(jì)需要的I/O外,還有一些剩余I/O沒有定義。這些I/O可以作為預(yù)留的測試點(diǎn)來使用。

          例如,在測試與FPGA相連的SDRAM工作時(shí)序狀態(tài)的時(shí)候,直接用示波器測量SDRAM相關(guān)管腳會很困難。而且SDRAM工作頻率較高,直接測量會引入額外的阻抗,影響SDRAM的正常工作。

          如果FPGA有預(yù)留的測試點(diǎn),那么可以將要測試的信號從FPGA內(nèi)部指定到這些預(yù)留的測試點(diǎn)上。這樣既能測試到這些信號的波形,又不會影響SDRAM的工作。

          如果電路測試過程中發(fā)現(xiàn)需要飛線才能解決問題,那么這些預(yù)留的測試點(diǎn)還可以作為飛線的過渡點(diǎn)。



          評論


          相關(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); })();