賽靈思 Vivado 設計套件震撼登場
2012-04-25
作者:賽靈思Xcell 雜志發(fā)行人 Mike Santarini
賽靈思采用先進的EDA 技術和方法,提供了全新的工具套件,可顯著提高設計生產(chǎn)力和設計結(jié)果質(zhì)量,使設計者更好、更快地創(chuàng)建系統(tǒng),而且所用的芯片更少。
歷經(jīng)四年的開發(fā)和一年的試用版本測試,賽靈思可編程顛覆之作Vivado 設計套件終于震撼登場,并通過其早期試用計劃開始向客戶隆重推出。新的工具套件面向未來十年“All-Programmable”器件而精心打造,致力于加速其設計生產(chǎn)力。
賽靈思市場營銷與公司戰(zhàn)略高級副總裁Steve Glaser表示:“在過去的幾年中,賽靈思把??半導體技術的創(chuàng)新推向了一個新的高度,并釋放了可編程器件全面的系統(tǒng)級能力。隨著賽靈思在獲獎的Zynq™-7000 EPP(可擴展式處理平臺)器件、革命性的3D Virtex®-7堆疊硅片互聯(lián)(SSI)的技術器件上的部署,除了我們在FPGA技術上的不斷創(chuàng)新之外,,我們正開啟著一個令人興奮的新時代——一個“All-Programmable”器件的時代。”
“All-Programmable”器件,將使設計團隊不僅能夠為他們的設計編程定制邏輯,而且也可以基于ARM®和賽靈思處理子系統(tǒng)、算法和I / O進行編程。總之,這是一個全面的系統(tǒng)級的器件。Steve Glaser說“未來“All-Programmable”器件要比可編程邏輯設計更多。他們將是可編程的系統(tǒng)集成,投入的芯片越來越少,而集成的系統(tǒng)功能卻越來越多。”
Steve Glaser還表示,在利用“All-Programmable”器件創(chuàng)建系統(tǒng)的時候,設計者所面臨的是一套全新的集成和實現(xiàn)設計生產(chǎn)力的瓶頸問題。一方面從集成的角度講,其中包括集成算法C和寄存器傳輸級(RTL)的IP;混合了DSP、嵌入式、連接和邏輯域;驗證模塊和“系統(tǒng)”,以及設計和IP的重用等。實現(xiàn)的瓶頸包括芯片規(guī)劃和分層;多領域和大量的物理優(yōu)化;多元的“設計”與“時序”收斂;和后期的ECO和設計變更的連鎖效應。
正是為了解決集成和實現(xiàn)的瓶頸,使用戶能夠充分利用這些“All-Programmable”器件的系統(tǒng)集成能力,賽靈思打造了全新Vivado設計套件。
在Vivado 設計套件這一以系統(tǒng)為中心的工具套件的開發(fā)過程中,賽靈思以業(yè)界標準為標桿并采用了先進的EDA 技術與方法。為此,無論是需要高度自動化按鍵式流程的客戶,還是需要實際操作性極強的可修改流程的客戶,他們現(xiàn)在能夠比以往更快更高效地進行設計(甚至包括賽靈思最大型的FPGA 設計),同時還是在一個熟悉而直觀的先進的EDA 環(huán)境下工作。
賽靈思開發(fā)Vivado 設計套件的目的是為客戶提供一種具有完整系統(tǒng)可編程功能的新型工具套件,該套件遠遠超越了賽靈思為時甚久的旗艦型ISE 設計套件。為幫助客戶順利過渡到Vivado 設計套件的使用,賽靈思將繼續(xù)堅定地為采用7 系列及更早期的賽靈思FPGA 技術的客戶提供ISE 支持。今后Vivado 設計套件將成為賽靈思的旗艦設計環(huán)境,支持所有7 系列器件及賽靈思未來器件。
賽靈思公司設計方法市場營銷高級總監(jiān)Tom Feist 預計,一旦客戶啟用Vivado 設計套件,就會立即體會到其相對于ISE 的優(yōu)勢。
Feist說:“與同類競爭工具相比,Vivado 設計套件的運行時間可縮短高達4 倍,能夠顯著提升用戶的設計生產(chǎn)力。同時該設計套件純熟地運用了多種業(yè)界標準,諸如System Verilog、SDC(Synopsys 設計約束)、C/C++/System C、ARM AMBA AXI-4互聯(lián)、互動TCL(工具命令語言)腳本。Vivado 設計套件的其它突出優(yōu)勢包括為Vivado 的眾多報告和設計視圖提供全面的交叉探測功能、預計將于2012 年推出的高級圖形化IP 集成功能、首款得到FPGA 廠商全面支持的商用高層次綜合技術(C++ 到HDL綜合)。
一個面向新一代可編程設計的設計工具
賽靈思早在1997 年就推出了ISE 設計套件。ISE套件采用了當時非常具有創(chuàng)新性的基于時序的布局布線引擎,這是1995 年4 月賽靈思收購NeoCAD 獲得的。在其后15 年的時間里,隨著FPGA 能夠執(zhí)行日趨復雜的功能,賽靈思為ISE 套件增添了許多新技術,包括多語言綜合與仿真、IP 集成以及眾多編輯和測試實用功能,努力不斷從各個方面改進ISE 設計套件。Feist 表示,賽靈思通過借鑒ISE 設計套件的所有經(jīng)驗、注意事項和關鍵技術,并充分利用最新 EDA 算法、工具和技術,才打造出了這一顛覆性的全新Vivado 設計套件。
Feist 表示:“Vivado 設計套件將顯著提升當今設計的生產(chǎn)力,且能夠輕松實現(xiàn)升級擴展,應對20nm 芯片及更小工藝技術所帶來的容量和設計復雜性挑戰(zhàn)。在過去15 年時間里,EDA 技術取得了長足的發(fā)展。我們是從頭開始開發(fā)這套工具的,所以我們能夠在套件中采用最先進的EDA 技術和標準,讓其具有很強的前瞻性。”
確定性的設計收斂
任何FPGA 廠商的集成設計套件的核心都是物理設計流程,包括綜合,布局規(guī)劃、布局、布線、功耗和時序分析、優(yōu)化和ECO。有了Vivado,賽靈思打造了一個最先進的設計實現(xiàn)流程,可以讓客戶更快地達到設計收斂的目標。
可擴展的數(shù)據(jù)模型架構
為減少迭代次數(shù)和總體設計時間,并提高整體生產(chǎn)力,賽靈思用一個單一的、共享的、可擴展的數(shù)據(jù)模型建立其設計實現(xiàn)流程,這種框架也常見于當今最先進的ASIC 設計環(huán)境。Feist 說:“這種共享、可擴展的數(shù)據(jù)模型可讓流程中的綜合、仿真、布局規(guī)劃、布局布線等所有步驟在內(nèi)存數(shù)據(jù)模型上運行,故在流程中的每一步都可以進行調(diào)試和分析,這樣用戶就可在設計流程中盡早掌握關鍵設計指標的情況,比如時序、功耗、資源利用和布線擁塞等。而且這些指標的估測將在實現(xiàn)過程中隨著設計流程的推進而更趨于精確。”
具體來說,這種統(tǒng)一的數(shù)據(jù)模型使賽靈思能夠?qū)⑵湫滦投嗑S分析布局布線引擎與套件的RTL 綜合引擎、新型多語言仿真引擎以及IP 集成器(IP Integrator)、引腳編輯器(Pin Editor)、布局規(guī)劃器(Floor Planner)、芯片編輯器(Chip Editor) 等功能緊密集成在一起。此外,該數(shù)據(jù)模型使賽靈思能夠為該工具套件配備全面的交叉探測功能,以便用戶跟蹤并交叉探測原理圖、時序報告、邏輯單元或其它視圖,直至HDL 代碼中的給定問題。
Feist說:“用戶現(xiàn)在可以對設計流程中的每一步進行分析,而且環(huán)環(huán)相扣。在綜合后的流程中,我們還提供時序、功耗、噪聲和資源利用分析功能。所以如果很早就發(fā)現(xiàn)時序或功耗不符合要求,我可以通過短時迭代,前瞻性地解決問題,而不必等到布局布線完成后多次執(zhí)行長時間迭代來解決。”
Feist 指出,這種可擴展數(shù)據(jù)模型提供的緊密集成功能還增強了按鍵式流程的效果,從而可滿足用戶對工具實現(xiàn)最大自動化,完成大部分工作的期望。Feist 表示,這種模型還能夠滿足客戶對更高級的控制、更深入的分析以及掌控每個設計步驟進程的需要。
芯片規(guī)劃層次化,快速綜合
Feist說,Vivado為用戶提供了設計分區(qū)的功能,可以分別處理綜合、執(zhí)行、驗證的設計,使其可以在執(zhí)行大型項目時,可以成立不同的團隊分頭設計。同時,新的設計保存功能可以實現(xiàn)時序結(jié)果的復用,并且可以實現(xiàn)設計的部分可重配置。
Vivado還包括一個全新的綜合引擎,旨在處理數(shù)以百萬計的邏輯單元。新的綜合引擎的關鍵是對System Verilog的強大支持。“Vivado的綜合引擎對System Veriog語言可綜合子集的支持,比市場上任何其他工具都更好”Feist 說。它的綜合速度是賽靈思ISE Design Suite綜合工具XST的三倍,并支持“快速”模式,使得設計師迅速把握設計的面積和規(guī)模。另外,也讓他們調(diào)試問題的速度比之前采用RTL或門級原理圖快15倍。隨著越來越多的ASIC設計者轉(zhuǎn)向可編程平臺,賽靈思還在整個Vivado設計流程中提升了了Synopsys 設計約束(SDC)。標準的使用開啟了一個新的自動化水平,客戶現(xiàn)在可以訪問先進的EDA工具產(chǎn)生約束、檢查跨時鐘域、形式驗證,甚至是利用像Synopsys PrimeTime那樣的工具進行靜態(tài)時序的分析。
多維度分析布局器
Feist 解釋說,上一代FPGA 設計套件采用單維基于時序的布局布線引擎,通過模擬退火算法隨機確定工具應在什么地方布置邏輯單元。使用這類工具時,用戶先輸入時序,模擬退火算法根據(jù)時序先從隨機初始布局種子開始,然后在本地移動單元,“盡量”與時序要求吻合。Feist 說:“在當時這種方法是可行的,因為設計規(guī)模非常小,邏輯單元是造成延遲的主要原因。但今天隨著設計的日趨復雜化和芯片工藝的進步,互聯(lián)和設計擁塞一躍成為延遲的主因。采用模擬退火算法的布局布線引擎對低于100 萬門的FPGA 來說是完全可以勝任的,但對超過這個水平的設計,引擎便不堪重負。不僅僅有擁塞的原因,隨著設計的規(guī)模超過100萬門,設計的結(jié)果也開始變得更加不可預測。”
著眼于未來,賽靈思為Vivado 設計套件開發(fā)了新型多維分析布局引擎,其可與當代價值百萬美元的ASIC布局布線工具中所采用的引擎相媲美。該新型引擎通過分析可以找到從根本上能夠最小化設計三維(時序、擁塞和走線長度)的解決方案。Feist 表示:“Vivado設計套件的算法從全局進行優(yōu)化,同時實現(xiàn)了最佳時序、擁塞和走線長度,它對整個設計進行通盤考慮,不像模擬退火算法只著眼于局部調(diào)整。這樣該工具能夠迅速、決定性地完成上千萬門的布局布線,同時保持始終如一的高結(jié)果質(zhì)量(見圖1)。由于它能夠同時處理三大要素,也意味著可以減少重復運行流程的次數(shù)。”
圖1:與其它FPGA 工具相比,Vivado 設計套件能夠以更快的速度、更優(yōu)異的質(zhì)量完成各種規(guī)模的設計
為展現(xiàn)這種優(yōu)勢,賽靈思在ISE設計套件和Vivado 設計套件中用按鍵式流程方式同時運行針對賽靈思Zynq-7000 EPP 仿真平臺開發(fā)的原始RTL,同時將每種工具指向賽靈思世界最大容量的FPGA 器件——采用堆疊硅片互聯(lián)技術的Virtex-7 2000T FPGA。這樣Vivado 設計套件的布局布線引擎僅耗時5 個小時就完成了120 萬邏輯單元的布局,而ISE 設計套件則耗時長達13 個小時(圖2)。而且采用 Vivado 設計套件實現(xiàn)的設計擁塞明顯降低(設計中顯示為灰色和黃色的部分),器件占用面積較小,這說明總體走線長度縮短。Vivado 設計套件實現(xiàn)方案還體現(xiàn)出更出色的內(nèi)存編譯效率,僅用9GB就實現(xiàn)設計要求的內(nèi)存,而ISE 設計套件則用了16GB。
Feist 表示:“從本質(zhì)上來說,你看到的就是Vivado 設計套件在滿足所有約束條件下,實現(xiàn)整個設計只需占用3/4 的器件資源。這意味著用戶可以為自己的設計添加更多的邏輯功能和片上存儲器,甚至可以采用更小型的器件。”
圖2:Vivado 設計套件的多維分析算法可創(chuàng)建專門針對最佳時序、擁塞和走線長度(而不僅僅只是針對最佳時序)優(yōu)化的布局。
功耗優(yōu)化和分析
當今時代,功耗是FPGA設計中最關鍵的環(huán)節(jié)之一。因此,Vivado設計套件的重點就是專注于利用先進的功耗優(yōu)化技術,為用戶的設計提供更大的功耗降低優(yōu)勢。“我們在技術上采用了目前在ASIC工具套件中可以見到的先進的時鐘門控制技術,通過該技術可以擁有設計邏輯分析的功能,同時消除不必要的翻轉(zhuǎn)”Feist表示“具體來說,新的技術側(cè)重于翻轉(zhuǎn)因子‘alpha’,它能夠降低30%的動態(tài)功耗”Feist說,賽靈思去年在ISE設計套件中開始應用該技術,并一直沿用至今。Vivado將繼續(xù)加強這一技術的應用。
此外,有了這一新的可擴展的數(shù)據(jù)共享模型,用戶可以在設計流程的每一個階段得到功耗的估值,從而可以在問題發(fā)展的前期就能預先進行分析,從而能夠在設計流程中,先行解決問題。
簡化工程變更單(ECO)
增量流量讓快速處理小的設計更改成為可能,每次更改后只需重新實現(xiàn)設計的一小部分,使迭代速度更快。它們還能在每個增量變化之后實現(xiàn)性能的表現(xiàn),從而無需多個設計迭代。為此,Vivado設計套件還包括對一個流行的ISE FPGA編輯器工具的新的擴展,稱為Vivado器件編輯器。Feist說,在一個布局布線設計上使用Vivado器件編輯器,設計師現(xiàn)在有能力去做移動單元,重新布線,連接一個寄存器輸出作為調(diào)試管腳,修改DCM或者查找表(LUT)的參數(shù)的工程變更單(ECO)——在設計周期的后期,無需通過返回設計重新綜合和實現(xiàn)。他說,目前行業(yè)沒有任何其他FPGA設計環(huán)境可以提供這種級別的靈活性。
基于業(yè)界標準而打造
四年半前,當賽靈思開始從頭打造Vivado設計套件的時候,架構打造的首要任務,就是用標準的設計環(huán)境代替專有格式。致力于打造一個開放的環(huán)境,讓客戶能夠用EDA 工具和第三方IP 進行擴展。例如,Vivado 設計套件可支持SDC(Synopsys 設計約束)、ARM AMBA AXI 4 IP互聯(lián)標準、IP-XACT IP封裝和交付標準,并且在新環(huán)境中提供了強大的互動TCL 腳本功能。。
流程自動化,非流程強制化
在Vivado 設計套件構建過程中,賽靈思工具團隊遵循這樣的原則“自動化設計方式,不強制設計方式”。Feist 說:“不管用戶用C、C++、SystemC、VHDL、Verilog、System Verilog、MATLAB 還是Simulink 開始編程,也不管他們用的是我們的IP 還是第三方的IP,我們提供了一種實現(xiàn)所有流程自動化,幫助客戶提高生產(chǎn)力的方法。我們還充分考慮到我們的用戶的各種技能水平和偏好,既能滿足需要全按鍵式流程的客戶的要求,也能滿足在設計流程的每一步都進行分析的客戶的要求,甚至還能滿足那些認為用GUI 的是低手,喜歡用TCL 以命令行或批處理模式完成全部設計流程的客戶的要求。用戶能夠根據(jù)自己的特定需求,選用套件功能。”
為進一步增強所有用戶的設計體驗,賽靈思在Vivado 設計套件中加入了某些奇妙的新功能,同時為深受客戶贊譽的FPGA 編輯器增加了芯片編輯器功能。
IP 封裝器、集成器和目錄
賽靈思的工具架構團隊把重點放在新套件專門的IP 功能設計上,以便于IP 的開發(fā)、集成與存檔。為此,賽靈思開發(fā)出了IP 封裝器、IP 集成器和可擴展IP 目錄三種全新的IP 功能。
Feist 表示:“今天很難找到不采用IP 的IC 設計。我們采用業(yè)界標準,提供專門便于IP 開發(fā)、集成和存檔/維護的工具,這都有助于我們生態(tài)系統(tǒng)合作伙伴中的IP 廠商和客戶快速構建IP,提高設計生產(chǎn)力。目前已有20 多家廠商提供支持該最新套件的IP。”
采用IP 封裝器,賽靈思的客戶、賽靈思公司自己的IP 開發(fā)人員和賽靈思生態(tài)環(huán)境合作伙伴可以在設計流程的任何階段將自己的部分設計或整個設計轉(zhuǎn)換為可重用的內(nèi)核,這里的設計可以是RTL、網(wǎng)表、布局后的網(wǎng)表甚至是布局布線后的網(wǎng)表。IP 封裝器可以創(chuàng)建IP 的IP-XACT 描述,這樣用戶使用新型IP 集成器就能方便地將IP 集成到未來設計中。IP 封裝器在XML 文件中設定了每個IP 的數(shù)據(jù)。Feist 說一旦IP 封裝完成,用IP 集成器功能就可以將IP 集成到設計的其余部分。
Feist 說:“IP 集成器可以讓客戶在互聯(lián)層面而非引腳層面將IP 集成到自己的設計中??梢詫P 逐個拖放到自己的設計圖(canvas)上,IP 集成器會自動提前檢查對應的接口是否兼容。如果兼容,就可以在內(nèi)核間劃一條線,然后集成器會自動編寫連接所有引腳的具體RTL。”
Feist 表示:“這里的重點是可以取出已用IP 集成器集成的四五個模塊的輸出,然后通過封裝器再封裝。這樣就成了一個其他人可以重新使用的IP。這種IP 不一定必須是RTL,可以是布局后的網(wǎng)表,甚至可以是布局布線后的網(wǎng)表模塊。這樣可以進一步節(jié)省集成和驗證時間。”
第三大功能是可擴展IP 目錄,它使用戶能夠用他們自己創(chuàng)建的IP 以及賽靈思和第三方廠商許可的IP 創(chuàng)建自己的標準IP 庫。賽靈思按照IP-XACT 標準要求創(chuàng)建的該目錄能夠讓設計團隊乃至企業(yè)更好的組織自己的IP,供整個機構共享使用。Feist 稱賽靈思系統(tǒng)生成器(System Generator) 和IP 集成器均已與Vivado 可擴展IP 目錄集成,故用戶可以輕松訪問編目IP 并將其集成到自己的設計項目中。
Vivado 產(chǎn)品營銷總監(jiān)Ramine Roane指出:“以前第三方IP 廠商用Zip 文件交付的IP格式各異,而現(xiàn)在他們交付的IP,不僅格式統(tǒng)一,可立即使用,而且還與Vivado 套件兼容。”
Vivado HLS 把ELS帶入主流
可能Vivado 設計套件采用的眾多新技術中,最具有前瞻性的要數(shù)新的Vivado HLS(高層次綜合)技術,這是賽靈思2010 年收購AutoESL 后獲得的。在收購這項業(yè)界最佳技術之前,賽靈思對商用ESL 解決方案進行了廣泛評估。市場調(diào)研公司BDTI 的研究結(jié)果幫助賽靈思做出了收購決策(見賽靈思中國通訊雜志第36 期“BDTI研究認證以DSP為核心的FPGA設計的高層次綜合流程 ”http://china.xilinx.com/china/xcell/xl36/2-7.pdf)。
Feist 表示:“Vivado HLS 全面覆蓋C、C++、SystemC,能夠進行浮點運算和任意精度浮點運算。這意味著只要用戶愿意,可以在算法開發(fā)環(huán)境而不是典型的硬件開發(fā)環(huán)境中使用該工具。這樣做的優(yōu)點在于在這個層面開發(fā)的算法的驗證速度比在RTL 級有數(shù)量級的提高。這就是說,既可以讓算法提速,又可以探索算法的可行性,并且能夠在架構級實現(xiàn)吞吐量、時延和功耗的權衡取舍。”
設計人員使用Vivado HLS 工具可以通過各種方式執(zhí)行各種功能。為了演示方便,F(xiàn)eist 講解了用戶如何通過一個通用的流程進行Vivado HLS 開發(fā)IP 并將其集成到自己的設計當中。
在這個流程中,用戶先創(chuàng)建一個設計C、C++ 或SystemC 表達式,以及一個用于描述期望的設計行為的C 測試平臺。隨后用GCC/G++或Visual C++ 仿真器驗證設計的系統(tǒng)行為。一旦行為設計運行良好,對應的測試臺的問題全部解決,就可以通過Vivado HLS Synthesis 運行設計,生成RTL 設計,代碼可以是Verilog,也可以是VHDL。有了RTL 后,隨即可以執(zhí)行設計的Verilog 或VHDL 仿真,或使用工具的C封裝器技術創(chuàng)建SystemC 版本。然后可以進行System C架構級仿真,進一步根據(jù)之前創(chuàng)建的C 測試平臺,驗證設計的架構行為和功能。
設計固化后,就可以通過Vivado 設計套件的物理實現(xiàn)流程來運行設計,將設計編程到器件上,在硬件中運行和/或使用IP 封裝器將設計轉(zhuǎn)為可重用的IP。隨后使用IP 集成器將IP 集成到設計中,或在系統(tǒng)生成器(System Generator) 中運行IP。
圖三– Vivado HLS 支持設計團隊直接從系統(tǒng)級開始他們的設計.
這只是使用該工具的方法之一。實際上在即將發(fā)行的賽靈思Xcell雜志中,安捷倫的Nathan Jachimiec 和賽靈思的Fernando Marinez Vallina 將介紹如何使用Vivado HLS 技術(在ISE設計套件的流程中稱為AutoESL 技術)為安捷倫開發(fā)UDP 包引擎。
VIVADO 仿真器
除了Vivado HLS,公司還為該套件新開發(fā)了一種同時支持Verilog 和VHDL 的混合語言仿真器。Feist 表示,只需要單擊鼠標,用戶就可以啟動行為仿真,然后從集成波形查看器中查看結(jié)果。通過采用最新性能優(yōu)化的仿真內(nèi)核,可加速行為級仿真速度,執(zhí)行速度比賽靈思ISE 設計套件仿真器快三倍。采用硬件協(xié)仿真,門級仿真速度則可加快100 倍。
2012供貨情況
之前賽靈思ISE 設計套件針對不同類型設計者(邏輯,嵌入式,DSP和系統(tǒng))所發(fā)行的四個版本,賽靈思將推出Vivado 設計套件的兩個版本。其中,Vivado 基礎設計版本包括新型IP 工具和Vivado的綜合-比特流流程。而Vivado 系統(tǒng)版本則包括設計版本的所有工具、系統(tǒng)生成器和賽靈思的最新Vivado HLS 工具。
Vivado 設計套件2012.1 版本目前已隨早期試用計劃推出。如需了解更多詳情,敬請聯(lián)系您所在地的賽靈思代表。2012.2 版本將于第二季度中期公開發(fā)布,今年晚些時候還將推出WebPACK。目前支持服務尚未到期的ISE 設計套件用戶除了ISE之外,將免費得到全新的Vivado 設計套件。
對使用28nm 器件之前器件的用戶,賽靈思將繼續(xù)提供對ISE 設計套件的支持。如需了解更多Vivado詳情,敬請訪問www.xilinx.com/design-tools。