全局綜合(Global Synthesis)
全局綜合意味著整個設(shè)計在一個Synthesis Design Run流程中完成,這樣會帶來幾個好處。一是使得綜合工具能夠最大化地進行設(shè)計優(yōu)化,尤其是層次間的優(yōu)化(這些優(yōu)化是其他綜合流程不能實現(xiàn)的)。二是對于綜合后的設(shè)計分析帶來了很大的便利。當(dāng)然,其不足之處也是很明顯的,那就是編譯時間會很長。但這一不足之處可以借助增量綜合得以緩解。需要注意的是因為是全局綜合,所以XDC中描述的約束是以頂層為基準(zhǔn)進行索引的。
IPI綜合(Block Design Synthesis)
Vivado IPI (IP Integrator)提供了直觀的模塊化的設(shè)計方法。用戶可以將Vivado IP Catalog中的IP、用戶自己的RTL代碼、或者用戶已有的BD文件添加到IP Integrator中構(gòu)成Block Design,設(shè)計更復(fù)雜的系統(tǒng),如下圖所示。

IPI使得用戶可以方便地將特定功能打包放入設(shè)計中,這樣用戶可以將焦點放在整個系統(tǒng)上,而非系統(tǒng)的某個部分。對于Block Design,Vivado提供了如下圖所示的三種綜合方式。其中Global為全局綜合方式,其余兩種均為OOC(Out-of-Context)綜合方式,只是OOC的粒度不同而已。OOC可以有效縮短編譯時間。

OOC綜合方式
OOC綜合方式可以使用戶單獨對設(shè)計的某個層次進行綜合,然后再對整個設(shè)計進行綜合,此時,OOC綜合的對象會被當(dāng)作黑盒子對待。通常,對于Xilinx的IP,我們建議采用OOC綜合方式。OOC可以縮短后續(xù)整個設(shè)計綜合所需時間,同時,若設(shè)計發(fā)生改變,而OOC綜合對象沒有改變,那么整個設(shè)計的綜合就不需要再對OOC對象進行綜合。一旦采用OOC綜合方式,在Design Runs窗口中就會看到相應(yīng)的OOC Module Runs,如下圖所示。

增量綜合(Incremental Synthesis)
增量綜合可以使綜合工具復(fù)用之前已有的綜合結(jié)果,從而縮短編譯時間。但增量綜合是有前提條件的,即設(shè)計可以形成至少4個分割(Partitions),而每個分割至少包含25000個模塊。這里的“模塊”既包含設(shè)計層次也包含RTL原語。Vivado提供了四種增量綜合模式,如下圖所示。其中off表明關(guān)閉增量綜合,quick模式不會進行邊界優(yōu)化。default模式會執(zhí)行大部分邏輯優(yōu)化包括邊界優(yōu)化,相對于非增量模式,能顯著縮短編譯時間。aggressive模式會執(zhí)行所有的邏輯優(yōu)化,編譯時間縮短程度最為明顯。對于低性能設(shè)計需求,可以使用quick模式,而對于高性能設(shè)計需求,建議采用其余三種模式。

模塊化綜合(Block-level Synthesis)
本身Vivado提供了多種綜合策略和各種綜合設(shè)置選項,但其面向的對象是整個設(shè)計,換言之,這是一種全局設(shè)置。Block-level綜合技術(shù)則打破了這一常規(guī),可以對不同層次的設(shè)計設(shè)置不同的選項或應(yīng)用不同的綜合策略,從而達到更好的綜合質(zhì)量。
Block-level綜合技術(shù)需要通過XDC約束來實現(xiàn),如下圖所示。

我們來看一個例子:設(shè)計中有4個模塊U1、U2、U3和inst1,而inst1又嵌入在U3里。現(xiàn)在我們需要對U1使能RETIMING,對U2和U3使用AREA_OPTIMIZED策略,對inst1使用DEFAULT綜合策略,那么我們就可以通過下圖所示約束實現(xiàn)。


審核編輯 :李倩
-
模塊化
+關(guān)注
關(guān)注
0文章
356瀏覽量
22699 -
Vivado
+關(guān)注
關(guān)注
19文章
857瀏覽量
71139
發(fā)布評論請先 登錄
通過vivado HLS設(shè)計一個FIR低通濾波器
FPGA板下載運行調(diào)試流程
FPGA板下載調(diào)試流程
vcs和vivado聯(lián)合仿真
Vivado中向FPGA的Flash燒錄e203的方法
AMD Vivado ChipScope助力硬件調(diào)試
Vivado無法選中開發(fā)板的常見原因及解決方法
如何使用One Spin檢查AMD Vivado Design Suite Synth的結(jié)果
適用于Versal的AMD Vivado 加快FPGA開發(fā)完成Versal自適應(yīng)SoC設(shè)計
Vivado 2018.3軟件的使用教程
CPU的各種指令和執(zhí)行流程
Vivado HLS設(shè)計流程
Vivado Synthesis的各種流程
評論