Q1
在Vivado或其他綜合工具(如Synplify)上,綜合階段需要添加什么約束呢?
A: Vivado綜合默認是timing driven模式,除了IO管腳等物理約束,建議添加必要的時序約束,有利于綜合邏輯的優化,同時綜合后的design里面可以評估時序。
Q2
如果綜合只是翻譯成網表過程,那么這些約束又有什么用呢?用來優化網表結構嗎?
A: 所謂timing driven,時序約束的有無會對網表產生影響,幫助工具盡可能朝著設定的performance優化網表。
Q3
我現在用的Synplify的edf ,這個edf 沒有加什么約束。
在VIVADO下,EDF 作為頂層是直接跳過綜合階段的,那么就沒有優化的過程了,這樣做實際效果就會大打折扣,我這樣理解沒錯吧?
A: Synplify綜合階段可以讀入sdc的,對綜合后的網表也有驅動作用,具體請參考synopsys文檔。
從Vivado流程來說,EDF在綜合階段是作為黑盒子,在implementation階段與其他模塊做link,如果添加了時序約束,對EDF這部分邏輯是不影響的,但剩余部分邏輯依然起作用。當然,如果你的頂層就以EDF形式輸入,那就沒有綜合的步驟,直接在impl階段讀入約束。
審核編輯:劉清
-
Vivado
+關注
關注
19文章
815瀏覽量
66890
原文標題:【Vivado那些事兒】Vivado 綜合階段什么約束生效?
文章出處:【微信號:Open_FPGA,微信公眾號:OpenFPGA】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論