Vivado設(shè)計套件新增手把手的方法,確??深A(yù)測且可重復(fù)設(shè)計的結(jié)果。
過去40年來,IC工藝技術(shù)飛速發(fā)展,帶動電子企業(yè)推出豐富的產(chǎn)品,讓當(dāng)今的人們樂享其中。然而芯片工藝技術(shù)的發(fā)展對電子創(chuàng)新至關(guān)重要,而如果沒有學(xué)術(shù)界和電子設(shè)計自動化(EDA)產(chǎn)業(yè)同時快速推出工具的支持,芯片技術(shù)也是無法取得如此順利的發(fā)展。從二十世紀(jì)七十年代的晶體管級SPICE模擬發(fā)展到當(dāng)今的數(shù)十億門系統(tǒng)級集成設(shè)計環(huán)境,如此進(jìn)步確實神速。但對電子技術(shù)革新做出重大貢獻(xiàn)的設(shè)計方法,同樣令人驚嘆卻往往被人們忽略。
設(shè)計團(tuán)隊能夠借助全球最先進(jìn)的芯片和最出色的工具,但如果他們不能建立起有效的設(shè)計方法,也無法在適當(dāng)?shù)臅r間內(nèi)推出產(chǎn)品、進(jìn)而也難以獲得商業(yè)成功。好的設(shè)計方法不僅能縮短設(shè)計時間,讓設(shè)計團(tuán)隊按時交付高質(zhì)量產(chǎn)品,而且還能讓他們以可預(yù)測、可重復(fù)的方式開展工作,而這正是長期商業(yè)成功的關(guān)鍵所在。就此而言,設(shè)計方法應(yīng)不斷發(fā)展完善,以充分發(fā)揮芯片和設(shè)計工具的改進(jìn)。
為了幫助客戶進(jìn)一步提高生產(chǎn)力,成功實現(xiàn)新一代創(chuàng)新技術(shù),賽靈思針對其屢獲殊榮的Vivado?設(shè)計套件推出了UltraFast?設(shè)計方法,幫助使用Vivado的設(shè)計團(tuán)隊加快在賽靈思28nm 7系列器件以及即將推出的20nm/16nm UtraScale?產(chǎn)品系列上成功實現(xiàn)設(shè)計。
Vivado設(shè)計套件的高級產(chǎn)品市場總監(jiān)Ramine Roane指出,這款新的設(shè)計方法并不是完全另立門戶,而是公司根據(jù)業(yè)界專家的提議精選了數(shù)項最佳實例并將其精簡為一套有效方法,以推動設(shè)計團(tuán)隊走向可預(yù)測的成功,該方法統(tǒng)稱為UltraFast設(shè)計方法。這些最佳實例涵蓋開發(fā)板規(guī)劃、設(shè)計創(chuàng)建、設(shè)計實現(xiàn)與收斂、編程和硬件調(diào)試等各個方面。
Roane指出:“UltraFast設(shè)計方法將幫助設(shè)計團(tuán)隊充分利用Vivado設(shè)計套件和賽靈思All Programmable器件的先進(jìn)技術(shù),以提高生產(chǎn)力,并不斷縮短設(shè)計時間,準(zhǔn)確預(yù)測設(shè)計進(jìn)度,進(jìn)而加速產(chǎn)品上市進(jìn)程?!?/p>
UltraFast設(shè)計方法的推出是賽靈思如何保持領(lǐng)先于競爭對手整整一代水平的又一例證。賽靈思不僅推出最佳器件和最先進(jìn)的工具套件,而且還提供了業(yè)界最全面的設(shè)計方法。
為了加速推廣UtraFast設(shè)計方法,賽靈思發(fā)行了免費的設(shè)計方法手冊《Vivado設(shè)計套件的UltraFast設(shè)計方法指南》(UG949),幫助讀者一步步了解設(shè)計方法,包括開發(fā)板的選擇、RTL設(shè)計乃至實現(xiàn)和最終調(diào)試等。該手冊提供了全面的檢查清單(checklist),引導(dǎo)工程師完成整個設(shè)計流程。此外,Vivado Design Suite 2013.3版本還將設(shè)計方法的許多元素實現(xiàn)了自動化(包括linting),并添加了新的設(shè)計規(guī)則檢查(DRC rule decks),題為“Methodology”和“Timing”。
新版Vivado設(shè)計套件還提供硬件描述語言(HDL)和賽靈思設(shè)計約束(XDC)模板,有助于優(yōu)化綜合和實現(xiàn)的結(jié)果質(zhì)量(QoR)。賽靈思還提供一系列免費的在線自學(xué)視頻,并在全球不同地區(qū)提供官方培訓(xùn)課程。
加速收斂的設(shè)計方法
Roane指出,UltraFast設(shè)計方法的主旨就是把設(shè)計收斂提到設(shè)計流程的前端,也是QoR影響較大的地方(見圖1)。這樣,設(shè)計團(tuán)隊就能快速組建出一個“設(shè)計期正確”(correct-by-construction)的設(shè)計方案上。Roane說:“如果能在設(shè)計流程早期階段全面了解情況并做出決策,就能有效避免實現(xiàn)階段耗時過長?!?/p>
?
Roane指出,Vivado設(shè)計套件是可編程行業(yè)唯一一款在流程的每個環(huán)節(jié)(從設(shè)計輸入到IP集成、RTL綜合、實現(xiàn)(優(yōu)化、布局、物理優(yōu)化、布線)乃至啟動)均支持交互設(shè)計分析和源文件交叉探測的設(shè)計套件。Roane說:“采用傳統(tǒng)工具時設(shè)計者只有到設(shè)計流程結(jié)束時、在規(guī)劃全面實現(xiàn)后才能發(fā)現(xiàn)問題,如果設(shè)計方案不能達(dá)到預(yù)期效果,唯一的辦法就是從頭再來,而且根本不清楚問題的原因,不得不進(jìn)行多次長時間迭代循環(huán)?!?/p>
實現(xiàn)交叉探測和分析功能的主要因素在于Vivado設(shè)計套件的統(tǒng)一數(shù)據(jù)模型。Roane說:“統(tǒng)一數(shù)據(jù)模型使設(shè)計團(tuán)隊能夠在整個流程中采用相同的分析和收斂程序。這相對于老式設(shè)計套件而言是一大優(yōu)勢,能幫助工程師在多個環(huán)節(jié)上(甚至在尚未保存設(shè)計修改的臨時記憶中)修改設(shè)計方案,通過交叉探測到源文件或者其他設(shè)計視圖。賽靈思設(shè)計的這款統(tǒng)一數(shù)據(jù)模型能擴(kuò)展運用到包含數(shù)百萬個邏輯單元的高端器件,而同類競爭工具剛剛開始滿足中端器件的要求。”
或許,能反映UltraFast設(shè)計方法加快設(shè)計收斂的最好例證就是“基線(Baselining)”概念。
通過Baselining快速時序收斂
“基線(Baselining)是一種用于加速設(shè)計收斂的技術(shù),它著重于解決內(nèi)部Fmax,這是最大問題,10次有9次收斂所出現(xiàn)的問題就是它。這能避免由于復(fù)雜的、極易出錯的I/O約束和時序特例而耽誤時間,防止用戶和工具被引導(dǎo)至錯誤的方向。采用基線技術(shù),設(shè)計團(tuán)隊能用最簡單的約束啟動收斂進(jìn)程,集中精力于觸發(fā)器路徑。隨后,根據(jù)問題是出在時鐘路徑或數(shù)據(jù)路徑上,還是連線延遲或邏輯延遲,我們可采取有文檔記錄的修改措施,并重新運行分析?!?/p>
?
一旦設(shè)計團(tuán)隊用基線XDC收斂了時序,就基本完工。隨后就需要添加I/O接口約束。Roane指出:“必須確保這些約束的正確性,這樣才能避免出現(xiàn)‘假的’時序問題。”
“正由于此,我們?yōu)樵赐剑虚g對齊的DDR I/O約束等提供XDC模板。如果需要,我們可用時序特例來微調(diào)約束,或者進(jìn)行一定的布局規(guī)劃。不過重要的是應(yīng)當(dāng)記住,如果相應(yīng)路徑不是關(guān)鍵路徑,那最好不要采用時序特例。同樣,設(shè)計過度布局規(guī)劃造成的問題遠(yuǎn)比帶來的作用要多。”
Roane指出,基線法并不能替代簽署約束(sign-off constraint):“仍然要在完備的約束的基礎(chǔ)上驗證設(shè)計方案?!?/p>
UltraFast設(shè)計方法還給出了獲得原始簽署約束的詳細(xì)步驟。Vivado通過大量批處理和圖形界面程序使這一任務(wù)自動化,分析時序路徑、時鐘網(wǎng)絡(luò)、時鐘之間的交互等。新的時序DRC規(guī)則也可用于檢查設(shè)計的約束及時鐘網(wǎng)絡(luò)。
VIVADO設(shè)計套件的ULTRAFAST設(shè)計方法指南
要熟悉UltraFast設(shè)計方法,可從閱讀《Vivado設(shè)計套件的UltraFast設(shè)計方法指南》開始。該指南分為6章,前兩章介紹本指南內(nèi)容和設(shè)計流程建議,第三章到第六章深入分析UltraFast設(shè)計方法的最佳實踐。
第三章分析開發(fā)板和器件規(guī)劃,對PCB布局、時鐘資源規(guī)劃與分配、I/O規(guī)劃設(shè)計流程、FPGA功耗因素和系統(tǒng)依賴性給出了明智的建議。為了避免開發(fā)板改版,該設(shè)計方法概括介紹如何利用賽靈思功耗估計器(XPE)探索并找到滿足功耗預(yù)算分配要求的架構(gòu)。
這一章還強(qiáng)調(diào)了用良好的I/O規(guī)劃啟動設(shè)計的重要性,給出了配合開發(fā)板規(guī)劃進(jìn)行I/O規(guī)劃的建議,至少二者應(yīng)當(dāng)進(jìn)行適當(dāng)?shù)膮f(xié)調(diào)。如果I/O規(guī)劃和開發(fā)板規(guī)劃二者不協(xié)調(diào),就會在流程后期出現(xiàn)系統(tǒng)級的時序和配電問題。本章還討論了各種用電模式,對功率和散熱分析給出建議,并介紹了有關(guān)PCB的制冷考慮事項。此外,該章還給出了設(shè)計項目中實現(xiàn)賽靈思All Programmable 3D IC時的相關(guān)I/O建議,因為連接多芯片器件的插入器有著獨特的要求。
第四章《設(shè)計創(chuàng)建》首先介紹了創(chuàng)建可靠的設(shè)計層次以及選擇合適的IP等方面的策略和技巧,接下來的幾個部分介紹了實用的RTL編碼指南。本章內(nèi)容還涉及控制信號集合(control signals and sets)、RAM和ROM推斷、形成正確的DSP和算術(shù)推斷的代碼、移位寄存器和延遲線編碼,以及所有推斷的寄存器、SRL和存儲器的初始化。本章還包括“參數(shù)、屬性與約束“,“時鐘”以及“實例化、推斷兩種方法的選擇”等內(nèi)容。
“編寫HDL的方式對綜合如何推理邏輯有很大影響。良好的編碼風(fēng)格使得設(shè)計使用架構(gòu)中的固有資源,進(jìn)而提高工作頻率?!?/p>
Roane指出:“編寫HDL的方式對綜合如何推斷邏輯有很大影響。良好的編碼風(fēng)格使得設(shè)計使用架構(gòu)中的固有資源,進(jìn)而提高工作頻率。為幫助客戶充分利用這些資源,加速整體設(shè)計進(jìn)程,我們提供了模板,指導(dǎo)這些組件推理,特別是RAM、移位寄存器和DSP資源的使用。這些模板內(nèi)置于Vivado Design Suite 2013.3 版本中。”
本章還分三節(jié)著重介紹了提高可靠性、性能和功耗優(yōu)化的有關(guān)編碼技術(shù)。每節(jié)都給出了約束建議,以充分發(fā)揮Vivado設(shè)計套件統(tǒng)一數(shù)據(jù)模型的優(yōu)勢。
“實現(xiàn)高可靠性的編碼風(fēng)格”這一節(jié)給出了時鐘域交叉(同步和異步)、未約束的復(fù)位和避免組合邏輯環(huán)路的建議?!疤岣咝阅艿木幋a風(fēng)格”這一節(jié)給出了有關(guān)關(guān)鍵路徑上的高扇出和寄存器復(fù)制的建議,以及設(shè)計中實現(xiàn)流水線應(yīng)注意的事項?!皟?yōu)化功耗的編碼風(fēng)格”這一節(jié)介紹了您在設(shè)計中可能用到的多種不同節(jié)省功耗技術(shù),囊括了經(jīng)過檢驗且可靠的數(shù)據(jù)路徑和門控時鐘等方法,以及最大化門控元素、限制控制信號等一些微妙的建議。
第五章重點介紹了從綜合到布線整個實現(xiàn)流程。本章首先概括介紹了實現(xiàn)、綜合屬性和自下而上設(shè)計流程的優(yōu)勢。如前所述,本章深入介紹了時序分析,并給出了時序收斂的基線法理念。此外,時序收斂這一節(jié)還給出了面對各種時序問題應(yīng)該做什么、不應(yīng)該做什么的很好建議。本章還討論了時序?qū)牡目赡苡绊憽?/p>
本指南的最后一章也就是第六章介紹了配置和調(diào)試問題。這一章的前半部分一步步引導(dǎo)讀者了解生成比特流和配置賽靈思All Programmable器件中的最佳方法。后半部分主要介紹了設(shè)計流程中多個階段調(diào)試設(shè)計的最佳實踐。這部分探討了如何實現(xiàn)HDL實例化調(diào)試探測點流程,以及如何在網(wǎng)表中插入調(diào)試探測點流程。本章還討論了設(shè)計載入目標(biāo)器件之后的設(shè)計調(diào)試策略。
本指南的附錄部分給出了更多豐富資源,或許最重要的資源就是UltraFast設(shè)計方法檢查清單,列出了設(shè)計團(tuán)隊在設(shè)計周期中每個階段應(yīng)考慮的事項,從最初的設(shè)計規(guī)劃到最后的硬件調(diào)試。Roane指出:“它給出了長長的問題清單,重點指出可能對下游工序造成影響的設(shè)計決策典型方面?!?檢查清單不僅可可讓讀者鏈接至指南中的有關(guān)方面介紹,還給出外部鏈接,介紹特定的設(shè)計問題。賽靈思的這個檢查清單還提供可下載的電子數(shù)據(jù)表。
對ULTRAFAST設(shè)計方法的支持
除了將所有最佳實踐編譯到極其有用的《Vivado設(shè)計套件的UltraFast設(shè)計方法指南》之外,賽靈思還在Vivado Design Suite 2013.3版本中融合了有關(guān)UltraFast設(shè)計方法的眾多建議。Vivado Design Suite2013.3版本目前支持UltraFast設(shè)計方法和時序DRC規(guī)則,能更好地指導(dǎo)用戶一步步完成設(shè)計工作,而且提供了非常方便的硬件描述語言(HDL)和約束模板,支持自動建構(gòu)校正。
此外,賽靈思的全球培訓(xùn)人員和聯(lián)盟成員生態(tài)系統(tǒng)也都正在積極支持UltraFast設(shè)計方法的使用。
舉例來說,Blue Pearl Software公司將賽靈思UltraFast設(shè)計規(guī)則添加到其Analyze RTL linting工具中。Roane指出:“Blue Pearl實現(xiàn)了UltraFast設(shè)計方法中有關(guān)RTL指南的自動化。除了執(zhí)行語言linting之外,它還強(qiáng)制采用特定的編碼風(fēng)格,確保賽靈思器件的最佳結(jié)果質(zhì)量,包括使用適當(dāng)復(fù)位類型、RAM或MAC編碼方式能最佳推理出賽靈思器件的內(nèi)置固有模塊等?!?/p>
除了第三方EDA支持之外,賽靈思還積極測試其IP核,確保其符合UltraFast方法和DRC要求,并積極鼓勵所有聯(lián)盟成員IP廠商同樣確保符合指南要求。
最后同樣重要的是,賽靈思公司正在推出賽靈思及其全球合作伙伴共同提供的一系列培訓(xùn)課程,發(fā)布全新的UltraFast設(shè)計方法QuickTake視頻。此外,所有賽靈思最新視頻均融合了UltraFast指南內(nèi)容。
評論
查看更多