FPGA最小系統(tǒng)之:硬件系統(tǒng)的設計技巧
FPGA的硬件設計不同于DSP和ARM系統(tǒng),比較靈活和自由。只要設計好專用管腳的電路,通用I/O的連接可以自己定義。因此,FPGA的電路設計中會有一些特殊的技巧可以參考。
本文引用地址:http://www.ex-cimer.com/article/201706/348850.htm2.3.1 管腳兼容性設計
前面的內容提到過,FPGA在芯片選項的時候要盡量選擇兼容性好的封裝。那么,在硬件電路設計時,就要考慮如何兼容多種芯片的問題。
例如,紅色颶風II代-Altera的開發(fā)板就是兼容了EP1C6Q240和EP1C12Q240兩個型號的FPGA。這兩個芯片有12個I/O管腳定義是不同的。在EP1C6Q240芯片上,這12個I/O是通用I/O管腳,而在EP1C12Q240芯片上,它們是電源和地信號。
為了能保證兩個芯片在相同的電路板上都能工作,我們就必須按照EP1C12Q240的要求來把對應管腳連接到電源和地平面。因為,通用的I/O可以連接到電源或者地信號,但是電源或者地信號卻不能作為通用I/O。
在相同封裝、兼容多個型號FPGA的設計中,一般的原則就是按照通用I/O數(shù)量少的芯片來設計電路。
2.3.2 根據(jù)電路布局來分配管腳功能
FPGA的通用I/O功能定義可以根據(jù)需要來指定。在電路圖設計的流程中,如果能夠根據(jù)PCB的布局來對應的調整原理圖中FPGA的管腳定義,就可以讓后期的布線工作更順利。
例如,如圖2.1所示,SDRAM芯片在FPGA的左側。在FPGA的管腳分配的時候,應該把與SDRAM相關的信號安排在FPGA的左側管腳上。這樣,可以保證SDRAM信號的布線距離最短,實現(xiàn)最佳的信號完整性。
2.3.3 預留測試點
目前FPGA提供的I/O數(shù)量越來越多,除了能夠滿足設計需要的I/O外,還有一些剩余I/O沒有定義。這些I/O可以作為預留的測試點來使用。
例如,在測試與FPGA相連的SDRAM工作時序狀態(tài)的時候,直接用示波器測量SDRAM相關管腳會很困難。而且SDRAM工作頻率較高,直接測量會引入額外的阻抗,影響SDRAM的正常工作。
如果FPGA有預留的測試點,那么可以將要測試的信號從FPGA內部指定到這些預留的測試點上。這樣既能測試到這些信號的波形,又不會影響SDRAM的工作。
如果電路測試過程中發(fā)現(xiàn)需要飛線才能解決問題,那么這些預留的測試點還可以作為飛線的過渡點。
評論