FPGA是一種可編程芯片,因此FPGA的設計方法包括硬件設計和軟件設計兩部分。硬件包括FPGA芯片電路、存儲器、輸入輸出接口電路等器件。軟件是對應的VHDL程序和VerilogHDL程序。FPGA采用自上而下的設計方法,從系統(tǒng)級設計開始,然后逐漸分為二級單元和三級單元,直到知道基本邏輯單元或IP核可以直接操作。通常,設計過程包含以下步驟:
1.功能定義/設備選擇
在FPGA設計項目開始之前,必須有系統(tǒng)功能的定義和模塊的劃分。此外,根據(jù)任務要求,如系統(tǒng)功能和復雜性,工作速度與電線的資源、成本和分配性應保持平衡。然后選擇正確的設計方案和適當?shù)脑O備類型。
2.Design輸入
設計輸入包括原理圖輸入和硬件描述語言輸入。原理圖輸入直觀,但不容易仿真。此外,它效率低下且難以維護。它不利于模塊構建和重用。主要缺點是其便攜性差。當芯片升級時,所有原理圖都需要更改。硬件語言包括VHDL,VerilogHDL,SystemC等。硬件描述語言輸入的共同特點是語言與芯片技術無關,有利于自上而下設計,便于分區(qū)和移植模塊。它們具有良好的便攜性,強大的邏輯描述和模擬功能。
3.功能仿真
功能仿真,也稱為預仿真,用于在編譯之前驗證用戶設計的電路的邏輯功能。此時,沒有延遲信息,只有函數(shù)的初始檢測。
4.合成
所謂綜合,就是把上層抽象層次的描述轉化為下層的描述。集成優(yōu)化可以根據(jù)邏輯連接產(chǎn)生的分層設計平面,優(yōu)化目標和要求,實現(xiàn)FPGA布局和布線軟件。在當前級別,綜合是將設計輸入編譯成一個邏輯連接網(wǎng)絡表,該網(wǎng)絡表由基本邏輯單元(如AND門、析取門、逆變器、RAM、觸發(fā)器等)組合在一起。它不是一個真正的柵極電路。
5.Post合成模擬
仿真是為了檢查合成結果是否與原始設計一致。在仿真中,當將合成生成的標準延遲文件去標記到合成仿真模型中時,可以估計柵極延遲的影響。但是,這一步無法估計線路的延遲,因此與布線后的實際情況仍有一定的差距,這不是很準確。
6.實現(xiàn)和布局路由
布局路由可以理解為使用實現(xiàn)工具將邏輯映射到目標設備結構的資源,以確定邏輯的最佳布局,并選擇該邏輯以連接到連接到輸入/輸出功能的布線通道并生成適當?shù)奈募ㄖT如配置文件和相關報告)。實現(xiàn)方式是在特定FPGA芯片上配置合成生成的邏輯網(wǎng)絡表。
7.時序模擬
時序仿真又稱后仿真,是指將布局布線的時延信息標注回設計網(wǎng)絡表,以檢測是否存在任何時序不規(guī)則(即不滿足時序約束或器件固有的時序規(guī)則,如建立時間、維護時間等)。時序仿真中包含的延遲信息是最完整和準確的,可以更好地反映芯片的實際運行情況。
8.板級仿真和驗證
板級仿真主要用于高速電路設計。分析了高速系統(tǒng)的信號完整性、電磁干擾等特性,一般由第三方工具進行仿真和驗證。
9.芯片編程與調(diào)試
設計的最后一步是芯片編程和調(diào)試。芯片編程是數(shù)據(jù)文件的生成(比特流文件/比特流生成)。然后將程序數(shù)據(jù)下載到FPGA芯片。邏輯分析儀是FPGA設計的主要調(diào)試工具。但是需要很多測試引腳,而且LA很昂貴。目前,主流FPGA芯片制造商都提供嵌入式在線邏輯分析儀。
-
FPGA
+關注
關注
1644文章
22004瀏覽量
616215 -
FPGA設計
+關注
關注
9文章
428瀏覽量
27235 -
可編程芯片
+關注
關注
0文章
54瀏覽量
18870
發(fā)布評論請先 登錄
評論