一、FPGA板級設計的五要素
1.1、電源電路
核心電壓:一般為固定值
IO電壓:FPGA的IO分為多個bank,同一個bank的不同IO引腳電壓相同,不同bank的電壓可以不同
輔助電壓:除了核心電壓和IO電壓,FPGA工作所需的其他電壓都叫輔助電壓,例如:模擬電壓,
Phase-locked loop,鎖相環?(PLL) 需要模擬電源。
1.2、時鐘電路
外部輸入時鐘:只需要將振蕩器連接到全局時鐘的專用引腳上,軟件工具一般會自動識別并連接到全局時鐘網絡上。通常使用有源晶振(Oscillator),非無源晶振(Crystal)。
時鐘走線要短,需確保外部輸入時鐘信號干凈且穩定,溫漂小。
全局時鐘網絡:FPGA內部設計的走線池,使用這種專用時鐘網絡走線,同一時鐘到達不同寄存器的時間差很小。
PLL和DLL:FPGA內部進行倍頻和分頻的時鐘管理模塊。DLL(Delay Locked Loop 延時鎖定環)
1.3、復位電路
復位信號開啟時(一般默認為低電平),系統處于復位狀態,當電平從低變高后,進入正常工作狀態,系統便擁有了所期望的初始狀態。
可使用電壓監控復位芯片(例如SGM803),可監控多電源系統的上一級公共電源電壓,以便實現可靠的上下電復位。
1.4、配置(燒錄)電路
FPGA大部分基于SRAM(Static Random Access Memory,靜態隨機存取存儲器)來實現可編程特性,一旦掉電,SRAM數據丟失,所以,FPGA通常需要外掛一個用于保存當前配置數據流的flash芯片,稱為“配置芯片”。
通常使用JTAG在線編程,JTAG包含如下關鍵管腳:
- VDD? ?電源正(可選)
- GND? ?電源負
- TDI? ? ?測試數據輸入引腳,用于將測試數據或指令串行輸入到芯片的內部寄存器
- TDO? ?測試數據輸出引腳,用于將芯片內部寄存器的數據串行輸出
- TMS? ?測試模式選擇引腳,用于控制JTAG狀態機的狀態,每個時鐘周期的TMS值決定了JTAG的狀態機進入哪個狀態
- TCK? ?測試時鐘輸入引腳,為JTAG操作提供時鐘信號
- TRST 測試復位引腳(可選),用于將JTAG控制器復位到初始狀態。不使用時可以通過內部邏輯復位。
1.5、外設電路
賽靈思(Xilinx)的FPGA管腳分布圖通常不在其Datasheet中直接展示,而是通過專門的Pinout文件或用戶手冊(如UG475)提供詳細信息。
FPGA器件有豐富的外設(I/O)資源,應用時,需考慮以下幾點:
- 輸入和輸出時鐘信號分配到專用的引腳上;
- 差分信號分配到支持差分傳輸的專用引腳上;
- 高速信號分配到支持高速傳輸的專用引腳上;
- 總線信號分配到同一個BANK或相近的BANK中;
- 引腳分配盡可能減少交叉連接;