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

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

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

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

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

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


審核編輯 :李倩
-
模塊化
+關注
關注
0文章
359瀏覽量
22790 -
Vivado
+關注
關注
19文章
860瀏覽量
71378
發(fā)布評論請先 登錄
AMD Vivado Design Suite 2025.2版本現已發(fā)布
FPGA板下載運行調試流程
FPGA板下載調試流程
vcs和vivado聯合仿真
FPGA開發(fā)板vivado綜合、下載程序問題匯總
Vivado中向FPGA的Flash燒錄e203的方法
AMD Vivado ChipScope助力硬件調試
Vivado無法選中開發(fā)板的常見原因及解決方法
如何使用One Spin檢查AMD Vivado Design Suite Synth的結果
適用于Versal的AMD Vivado 加快FPGA開發(fā)完成Versal自適應SoC設計
Vivado 2018.3軟件的使用教程
Vivado Synthesis的各種流程
評論