新聞中心

EEPW首頁 > 醫(yī)療電子 > 設(shè)計應(yīng)用 > 多種EDA工具進(jìn)行FPGA設(shè)計的原理及方法簡介

多種EDA工具進(jìn)行FPGA設(shè)計的原理及方法簡介

作者: 時間:2014-07-25 來源:網(wǎng)絡(luò) 收藏

  (1)轉(zhuǎn)換:將多個設(shè)計文件進(jìn)行轉(zhuǎn)換并合并到一個設(shè)計庫文件中。

本文引用地址:http://www.butianyuan.cn/article/256057.htm

  (2)映射:將網(wǎng)表中邏輯門映射成物理元素,即把邏輯設(shè)計分割到構(gòu)成可編程邏輯陣列內(nèi)的可配置邏輯塊與輸入輸出塊及其它資源中的過程。 (3)布局與布線:布局是指從映射取出定義的邏輯和輸入輸出塊,并把它們分配到內(nèi)部的物理位置,通?;谀撤N先進(jìn)的算法,如最小分割、模擬退火和一般的受力方向張弛等來完成;布線是指利用自動布線軟件使用布線資源選擇路徑試著完成所有的邏輯連接。因最新的設(shè)計實現(xiàn)工具是時序驅(qū)動的,即在器件的布局布線期間對整個信號通道執(zhí)行時序分析,因此可以使用約束條件操作布線軟件,完成設(shè)計規(guī)定的性能要求。在布局布線過程中,可同時提取時序信息形成報靠。

  (4)時序提?。寒a(chǎn)生一反標(biāo)文件,供給后續(xù)的時序使用。

  (5)配置:產(chǎn)生配置時的需要的位流文件。

  在實現(xiàn)過程中可以進(jìn)行選項設(shè)置。因其支持增量設(shè)計,可以使其重復(fù)多次布線,且每次布線利用上一次布線信息以使布線更優(yōu)或達(dá)到設(shè)計目標(biāo)。在實現(xiàn)過程中應(yīng)設(shè)置默認(rèn)配置的下載形式,以使后續(xù)位流下載正常。

  2.5 時序分析

  在設(shè)計實現(xiàn)過程中,在映射后需要對一個設(shè)計的實際功能塊的延時和估計的布線延時進(jìn)行時序分析;而在布局布線后,也要對實際布局布線的功能塊延時和實際布線延時進(jìn)行靜態(tài)時序分析。從某種程序來講,靜態(tài)時序分析可以說是整個設(shè)計中最重要的步驟,它允許設(shè)計者詳盡地分析所有關(guān)鍵路徑并得出一個有次序的報告,而且報告中含有其它調(diào)試信息,比如每個網(wǎng)絡(luò)節(jié)點的扇出或容性負(fù)載等。靜態(tài)時序分析器可以用來檢查設(shè)計的邏輯和時序,以便計算各通中性能,識別可靠的蹤跡,檢測建立和保持時間的配合,時序分析器不要求用戶產(chǎn)生輸入激勵或測試矢量。雖然Xilinx與Altera在FPGA開發(fā)套件上擁有時序分析工具,但在擁有第三方專門時序分析工具的情況下,僅利用FPGA廠家設(shè)計工具進(jìn)行布局布線,而使用第三方的專門時序分析工具進(jìn)行時序分析,一般FPGA廠商在其設(shè)計環(huán)境下皆有與第三方時序分析工具的接口。Synopsys公司的PrimeTime是一個很好的時序分析工具,利用它可以達(dá)到更好的效果。將后的網(wǎng)表文件保存為db格式,可在PrimeTime環(huán)境下打開。利用此軟件查看關(guān)鍵路徑或設(shè)計者感興趣的通路的時序,并對其進(jìn)行分析,再次對原來的設(shè)計進(jìn)行時序結(jié)束,可以提高工作主頻或減少關(guān)鍵路徑的躚 時。與過程相似,靜態(tài)時序分析也是一個重復(fù)的過程,它與布局布線步驟緊密相連,這個操作通常要進(jìn)行多次直到時序約束得到很好的滿足。

  在與時序過程中交互使用PrimeTime進(jìn)行時序分析,滿足設(shè)計要求后即可進(jìn)行FPGA芯片投片前的最終物理驗證。

  2.6 下載驗證

  下載是在功能與時序仿真正確的前提下,將綜合后形成的位流下載到具體的FPGA芯片中,也叫芯片配置。FPGA設(shè)計有兩種配置形式:直接由計算機(jī)經(jīng)過專用下載電纜進(jìn)行配置;由外圍配置芯片進(jìn)行上電時自動配置。因FPGA具有掉電信息丟失的性質(zhì),因此可在驗證初期使用電纜直接下載位流,如有必要再將燒錄配置芯片中(如Xilinx的XC18V系列,Altera的EPC2系列)。使用電纜下載時有多種直載方式,如對Xilinx公司的FPGA下載可以使用JTAG Programmer、Hardware Programmer、PROM Programmer三種方式,而對Altera公司的FPGA可以選擇JTAG方式或Passive Serial方式。因FPGA大多支持IEEE的JTAG標(biāo)準(zhǔn),所以使用芯片上的JTAG口是常用下載方式。

  將位流文件下載到FPGA器件內(nèi)部后進(jìn)行實際器件的物理測試即為電路驗證,當(dāng)?shù)玫秸_的驗證結(jié)果后就證明了設(shè)計的正確性。電路驗證對FPGA投片生產(chǎn)具有較大意義。

  3 基于多種工具的FPGA設(shè)計

  仿真工具M(jìn)odelsim與綜合工具FPGA Compiler II及布線工具Foundation Series或Quartus相配合實現(xiàn)FPGA設(shè)計流程圖如圖3所示。

  在設(shè)計輸入階段,因Modelsim僅支持VHDL或Verilog HDL,所以在選用多種設(shè)計輸入工具時,可以使用文本編輯器完成HDL語言的輸入,也可以利用相應(yīng)的工具以圖形方式完成輸入,但必須能夠?qū)С鰧?yīng)的 VHDL或Verilog HDL格式。近年來出現(xiàn)的圖形化HDL設(shè)計工具,可以接收邏輯結(jié)構(gòu)圖、狀態(tài)轉(zhuǎn)換圖、數(shù)據(jù)流圖、控制流程圖及真值表等輸入方式,并通過配置的翻譯器將這些圖形格式轉(zhuǎn)化為HDL文件,如Mentor Graphics公司的Renoir,Xilinx公司的Foundation Series都帶有將狀態(tài)轉(zhuǎn)換圖翻譯成HDL文本的設(shè)計工具。在這方面,Summit公司(現(xiàn)在已經(jīng)合并為Innoveda)的圖形化界面友好程度較高,且可以導(dǎo)出相應(yīng)的HDL格式。

  從圖3中可以看到有三處可以由Modelsim進(jìn)行仿真:第一處是寄存器傳輸級(RTL)仿真,此級仿真是對設(shè)計的語法和基本功能進(jìn)行驗證(不含時序信息);第二處是針對特定的FPGA廠有技術(shù)的仿真,此級偽真是在綜合后、實現(xiàn)前而進(jìn)行的功能級仿真,功能級仿真一般驗證綜合后是否可以得到設(shè)計者所需要的正確功能;第三處仿真是門級仿真,此級仿真是針對門級時序進(jìn)行的仿真,門級仿真體現(xiàn)出由于布局布線而產(chǎn)生的實際延時。

  在RTL仿真階段,應(yīng)該建立一個測試臺。此測試臺可以在整個FPGA流程中進(jìn)行仿真驗證(RTL級、功能級、時序門級)。測試臺不但提供測試激勵與接收響應(yīng)信息,而且可以測試HDL仿真流程中的關(guān)鍵功能(如運(yùn)算部件輸出值的正確性等)。測試臺的產(chǎn)生可以直接使用文本編程得到,也可以使用圖形化工具輸入,再由軟件翻譯為HDL格式,例如使用HDL Bencher軟件利用其良好的波形輸入界面輸入測試激勵,再由其自動轉(zhuǎn)化為HDL格式而得到。

  在功能級仿真階段,一般驗證綜合后是否仍與RTL級仿真結(jié)果相同。

  在門級仿真階段,由于已經(jīng)針對具體的FPGA廠家技術(shù)進(jìn)行了功能級仿真,因此可以通過布局布線得到標(biāo)準(zhǔn)延格式下的時序信息進(jìn)行門級仿真。

  Mentor Graphics公司的Modelsim是業(yè)界較好的仿真工具,其仿真功能強(qiáng)大,且圖形化界面友好,而且具有結(jié)構(gòu)、信號、波形、進(jìn)程、數(shù)據(jù)流等窗口。將 FPGA設(shè)計(以HDL方式)輸入后進(jìn)行編譯即可進(jìn)行前仿真,其最新版本Modelsim SE/Plus 5.5支持VHDL與Verilog HDL混合仿真。在仿真時可以編寫HDL激勵文件或執(zhí)行組模式方式。組模式方式類似批處理方式,可以連續(xù)執(zhí)行事先在文件中寫好的多個執(zhí)行命令,這對重新仿真或重復(fù)執(zhí)行多個命令特別有效。在仿真過程中可以執(zhí)行性能分析與代碼覆蓋分析。性能分析在程序代碼執(zhí)行過程中可以分析出各部分代碼執(zhí)行時占用整個執(zhí)行時間的百分率。在此信息下,設(shè)計者可以找到設(shè)計的瓶頸并通過優(yōu)化代碼減少仿真時間。代碼覆蓋分析可以使設(shè)計者確切知道在測試臺上正在進(jìn)行的代碼位置,以方便設(shè)計者調(diào)試。

fpga相關(guān)文章:fpga是什么




關(guān)鍵詞: FPGA 仿真 綜合 EDA

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉