FPGA開(kāi)發(fā)基本流程有哪些?
5、 綜合后仿真
綜合后仿真檢查綜合結果是否和原設計一致。在仿真時(shí),把綜合生成的標準延時(shí)文件反標注到綜合仿真模型中去,可估計門(mén)延時(shí)帶來(lái)的影響。但這一步驟不能估計線(xiàn)延時(shí),因此和布線(xiàn)后的實(shí)際情況還有一定的差距,并不十分準確。目前的綜合工具較為成熟,對于一般的設計可以省略這一步,但如果在布局布線(xiàn)后發(fā)現電路結構和設計意圖不符,則需要回溯到綜合后仿真來(lái)確認問(wèn)題之所在。在功能仿真中介紹的軟件工具一般都支持綜合后仿真。

圖4-1 FPGA典型設計流程
6、 實(shí)現與布局布線(xiàn)
布局布線(xiàn)可理解為利用實(shí)現工具把邏輯映射到目標器件結構的資源中,決定邏輯的最佳布局,選擇邏輯與輸入輸出功能鏈接的布線(xiàn)通道進(jìn)行連線(xiàn),并產(chǎn)生相應文件(如配置文件與相關(guān)報告),實(shí)現是將綜合生成的邏輯網(wǎng)表配置到具體的FPGA芯片上,布局布線(xiàn)是其中最重要的過(guò)程。布局將邏輯網(wǎng)表中的硬件原語(yǔ)和底層單元合理地配置到芯片內部的固有硬件結構上,并且往往需要在速度最優(yōu)和面積最優(yōu)之間作出選擇。布線(xiàn)根據布局的拓撲結構,利用芯片內部的各種連線(xiàn)資源,合理正確地連接各個(gè)元件。目前,FPGA的結構非常復雜,特別是在有時(shí)序約束條件時(shí),需要利用時(shí)序驅動(dòng)的引擎進(jìn)行布局布線(xiàn)。布線(xiàn)結束后,軟件工具會(huì )自動(dòng)生成報告,提供有關(guān)設計中各部分資源的使用情況。由于只有FPGA芯片生產(chǎn)商對芯片結構最為了解,所以布局布線(xiàn)必須選擇芯片開(kāi)發(fā)商提供的工具。
7、 時(shí)序仿真
時(shí)序仿真,也稱(chēng)為后仿真,是指將布局布線(xiàn)的延時(shí)信息反標注到設計網(wǎng)表中來(lái)檢測有無(wú)時(shí)序違規(即不滿(mǎn)足時(shí)序約束條件或器件固有的時(shí)序規則,如建立時(shí)間、保持時(shí)間等)現象。時(shí)序仿真包含的延遲信息最全,也最精確,能較好地反映芯片的實(shí)際工作情況。由于不同芯片的內部延時(shí)不一樣,不同的布局布線(xiàn)方案也給延時(shí)帶來(lái)不同的影響。因此在布局布線(xiàn)后,通過(guò)對系統和各個(gè)模塊進(jìn)行時(shí)序仿真,分析其時(shí)序關(guān)系,估計系統性能,以及檢查和消除競爭冒險是非常有必要的。在功能仿真中介紹的軟件工具一般都支持綜合后仿真。
8、 板級仿真與驗證
板級仿真主要應用于高速電路設計中,對高速系統的信號完整性、電磁干擾等特征進(jìn)行分析,一般都以第三方工具進(jìn)行仿真和驗證。
9、 芯片編程與調試
設計的最后一步就是芯片編程與調試。芯片編程是指產(chǎn)生使用的數據文件(位數據流文件,Bitstream GeneraTIon),然后將編程數據下載到FPGA芯片中。其中,芯片編程需要滿(mǎn)足一定的條件,如編程電壓、編程時(shí)序和編程算法等方面。邏輯分析儀(Logic Analyzer,LA)是FPGA設計的主要調試工具,但需要引出大量的測試管腳,且LA價(jià)格昂貴。目前,主流的FPGA芯片生產(chǎn)商都提供了內嵌的在線(xiàn)邏輯分析儀(如Xilinx ISE中的ChipScope、Altera QuartusII中的SignalTapII以及SignalProb)來(lái)解決上述矛盾,它們只需要占用芯片少量的邏輯資源,具有很高的實(shí)用價(jià)值。
評論