PGA的硬件設計不同於DSP和ARM系統,比較靈活和自由。只要設計好專用管腳的電路,通用I/O的連接可以自己定義。因此,FPGA的電路設計中會有一些特殊的技巧可以參考。
1. FPGA管腳兼容性設計
FPGA在芯片選項時要盡量選擇兼容性好的封裝。那么,在硬件電路設計時,就要考慮如何兼容多種芯片的問題。例如,EP2C8Q208C8和EP2C5Q208這兩個型號的FPGA。其芯片僅有十幾個I/O管腳定義是不同的。在EP2C5Q208芯片上,這幾個I/O是通用I/O管腳,而在EP2C8Q208C8芯片上,它們是電源和地信號。為了能保證兩個芯片在相同的電路板上都能工作,我們就必須按照EP2C5Q208的要求來把對應管腳連接到電源和地平面。因為,通用的I/O可以連接到電源或者地信號,但是電源或地信號卻不能作為通用I/O。在相同封裝、兼容多個型號FPGA的設計中,一般原則就按照通用I/O數量少的芯片來設計電路。
2. 根據電路布局來分配管腳功能
FPGA的通用I/O功能定義可以根據需要來指定。在電路圖設計的流程中,如果能夠根據PCB的布局來對應的調整原理圖中FPGA的管腳定義,就可以使后期的布線工作更順利。例如,如圖2-10所示,SDRAM芯片在FPGA的左側。在FPGA的管腳分配時,應該把與SDRAM相關的信號安排在FPGA的左側管腳上。這樣,可以保證SDRAM信號的布線距離最短,實現最佳的信號完整性。
3. FPGA預設測試點
目前FPGA提供的I/O數量越來越多,除了能夠滿足設計需要的I/O外,還有一些剩余I/O沒有定義。這些I/O可以作為預留的測試點來使用。例如,在測試與FPGA相連的SDRAM工作時序狀態時,直接用示波器測量SDRAM相關管腳會很困難。而且SDRAM工作頻率較高,直接測量會引入額外的阻抗,影響SDRAM的正常工作。如果FPGA有預留的測試點,可以將要測試的信號從FPGA內部指定到這些預留的測試點上。這樣既能測試到這些信號的波形,又不會影響SDRAM的工作。如果電路測試過程中發現需要飛線才能解決問題,那么這些預留的測試點還可以作為飛線的過渡點。
本文轉自小平頭電子技術社區:https://www.xiaopingtou.cn/article-104214.html 嵌入式,物聯網,硬件PCB,電子技術盡在小平頭