您的位置:網(wǎng)站首頁 > 電器維修資料網(wǎng) > 正文 >
增量編譯技術(shù)介紹
來源: 日期:2013-12-7 10:02:03 人氣:標(biāo)簽:
通常fpga工程師編譯較大的工程時比較頭疼,因為編譯時間非常長,常常需要花費幾個小時,如果是在調(diào)試階段,每次修改一個錯誤需要幾小時,這樣效率就非常低。導(dǎo)致編譯時間較長的原因有兩點:1. 設(shè)計中資源利用比較大,synthesis、translate和map需要的時間較長;2. 設(shè)計的時序比較緊張,需要反復(fù)p&r來達到 佳時序狀態(tài)。
如果不想修改工程代碼,想要縮短編譯時間,則可以采用增量編譯技術(shù),其基本原理就是根據(jù)前一次編譯的結(jié)果,只重新編譯部分修改過設(shè)計,其它部分則沿用前一次編譯的結(jié)果,這樣就可以縮短總體的編譯時間。xilinx的增量編譯技術(shù)有兩種:smartguide和partition。
smartguide:這個ise中的全局優(yōu)化選項,使能這個選項,編譯器在implementation時會比較前一次編譯的implementation結(jié)果,未修改部分則沿用前一次的結(jié)果,但是如果時序比較緊張,會根據(jù)情況重新實現(xiàn)相應(yīng)未修改部分來達到時序要求。smartguide主要能縮短map和par的時間。
smartguide具體的使用方法如下:
1. 右擊top module,然后點擊smartguide選項。
圖1
2. 選擇前一次的編譯信息,其中ncd文件包含當(dāng)前設(shè)計的物理映射信息。
圖2
3. 點擊ok,使能smartguide。
partition:基于partition(分區(qū))的設(shè)計,如果一個partition的hdl代碼、時序、物理約束和實現(xiàn)選項未修改,實現(xiàn)工具會采用“復(fù)制粘貼”操作保留這部分partition的信息,從而縮短了實現(xiàn)的時間。partition設(shè)置后能縮短綜合、實現(xiàn)的時間。
自ise12.1版本后,ise軟件就不再支持partition選項,但是在planahead軟件中支持partition功能(ise快退出xilinx軟件舞臺了,據(jù)說以后有個rodin的軟件,界面與現(xiàn)在的planahead類似)。如圖3所示,在netlist窗口中右擊需要分區(qū)的module,然后選擇set partition即可。
圖3
參考文獻:
xapp918:incremental design reuse with partitions
注:在 近的項目中,為了縮短編譯時間,使能了smartguide選項,但是發(fā)現(xiàn)時序一直很差,記得以前timing score都是0分的,然后采用了各種優(yōu)化:加bufg、關(guān)鍵路徑加register打拍等等,但是時序始終達不到0分。在快絕望的時候,突然發(fā)現(xiàn)之前使 能過smartguide選項,把它去了試試,結(jié)果版本跑出來時序0分了,當(dāng)時是既欣喜又崩潰。 通過這次的經(jīng)歷,得到了一些教訓(xùn),在debug階段雖然使用增量編譯技術(shù)能加快效率,但是前提是你的代碼功能、時序都需要滿足條件,之后才能使用增量編譯 繼續(xù)debug
【看看這篇文章在百度的收錄情況】
相關(guān)文章
- 上一篇: 基于FPGA消除模塊的研究與應(yīng)用
- 下一篇: 了解邏輯門的等效電路