多維度分析布局器
Feist解釋說,上一代FPGA設(shè)計套件采用單維基于時序的布局布線引擎,通過模擬退火算法隨機確定工具應(yīng)在什么地方布置邏輯單元。使用這類工具時,用戶先輸入時序,模擬退火算法根據(jù)時序先從隨機初始布局種子開始,然后在本地移動單元,“盡量”與時序要求吻合。Feist說:“在當(dāng)時這種方法是可行的,因為設(shè)計規(guī)模非常小,邏輯單元是造成延遲的主要原因。但今天隨著設(shè)計的日趨復(fù)雜化和芯片工藝的進(jìn)步,互聯(lián)和設(shè)計擁塞一躍成為延遲的主因。采用模擬退火算法的布局布線引擎對低于100萬門的FPGA來說是完全可以勝任的,但對超過這個水平的設(shè)計,引擎便不堪重負(fù)。不僅僅有擁塞的原因,隨著設(shè)計的規(guī)模超過100萬門,設(shè)計的結(jié)果也開始變得更加不可預(yù)測。”
本文引用地址:http://m.butianyuan.cn/article/190472.htm著眼于未來,賽靈思為Vivado設(shè)計套件開發(fā)了新型多維分析布局引擎,其可與當(dāng)代價值百萬美元的ASIC布局布線工具中所采用的引擎相媲美。該新型引擎通過分析可以找到從根本上能夠最小化設(shè)計三維(時序、擁塞和走線長度)的解決方案。Feist表示:“Vivado設(shè)計套件的算法從全局進(jìn)行優(yōu)化,同時實現(xiàn)了最佳時序、擁塞和走線長度,它對整個設(shè)計進(jìn)行通盤考慮,不像模擬退火算法只著眼于局部調(diào)整。這樣該工具能夠迅速、決定性地完成上千萬門的布局布線,同時保持始終如一的高結(jié)果質(zhì)量(見圖1)。由于它能夠同時處理三大要素,也意味著可以減少重復(fù)運行流程的次數(shù)。”
圖1
圖1:與其它FPGA工具相比,Vivado設(shè)計套件能夠以更快的速度、更優(yōu)異的質(zhì)量完成各種規(guī)模的設(shè)計
為展現(xiàn)這種優(yōu)勢,賽靈思在ISE設(shè)計套件和Vivado設(shè)計套件中用按鍵式流程方式同時運行針對賽靈思Zynq-7000EPP仿真平臺開發(fā)的原始RTL,同時將每種工具指向賽靈思世界最大容量的FPGA器件——采用堆疊硅片互聯(lián)技術(shù)的Virtex-72000TFPGA。這樣Vivado設(shè)計套件的布局布線引擎僅耗時5個小時就完成了120萬邏輯單元的布局,而ISE設(shè)計套件則耗時長達(dá)13個小時(圖2)。而且采用Vivado設(shè)計套件實現(xiàn)的設(shè)計擁塞明顯降低(設(shè)計中顯示為灰色和黃色的部分),器件占用面積較小,這說明總體走線長度縮短。Vivado設(shè)計套件實現(xiàn)方案還體現(xiàn)出更出色的內(nèi)存編譯效率,僅用9GB就實現(xiàn)設(shè)計要求的內(nèi)存,而ISE設(shè)計套件則用了16GB。
Feist表示:“從本質(zhì)上來說,你看到的就是Vivado設(shè)計套件在滿足所有約束條件下,實現(xiàn)整個設(shè)計只需占用3/4的器件資源。這意味著用戶可以為自己的設(shè)計添加更多的邏輯功能和片上存儲器,甚至可以采用更小型的器件。”
圖2:Vivado設(shè)計套件的多維分析算法可創(chuàng)建專門針對最佳時序、擁塞和走線長度(而不僅僅只是針對最佳時序)優(yōu)化的布局。
評論