在分析place_design生成的dcp時(shí),就要開始關(guān)注保持時(shí)間違例,尤其是當(dāng)WHS < -0.5ns時(shí)。這是因?yàn)檫^大的保持時(shí)間違例往往會(huì)導(dǎo)致布線時(shí)間增大,同時(shí),在布線階段,工具未必能修復(fù)此類違例。
解決保持時(shí)間違例流程如下圖所示。按照此流程,要逐步關(guān)注以下幾個(gè)因素:
Clock Skew是否大于0.5ns
Hold Requirement是否為正(應(yīng)該為0)
WHS是否小于-0.4ns或THS是否小于-1000ns
Clock Uncertainty是否大于0.1ns

圖片來(lái)源 page 4, ug1292
這幾個(gè)指標(biāo)的具體數(shù)值可在時(shí)序報(bào)告中查到,如下圖所示。圖中,Path Type用于確定分析的是保持時(shí)間。

圖片來(lái)源 page 4, ug1292
Hold Requirement為正的可能情形出現(xiàn)在使用多周期路徑約束的時(shí)序路徑中。如下圖所示,時(shí)鐘使能信號(hào)EN使得路徑的Setup Requirement為3個(gè)時(shí)鐘周期,但Hold Requirement仍應(yīng)為0。

圖片來(lái)源 page 4, ug1292
在此情況下,應(yīng)采用如下圖所示的多周期路徑約束。其中的第2條約束是對(duì)hold的調(diào)整,卻往往容易被遺漏。對(duì)于-hold,它表示相對(duì)于缺省捕獲沿(圖中的Default hold),實(shí)際捕獲沿應(yīng)回調(diào)的時(shí)鐘周期個(gè)數(shù)。
對(duì)于過大的WHS或THS,應(yīng)在布線之前做一些優(yōu)化,盡可能地降低WHS和THS。為此,可在phys_opt_design階段采取如下圖所示的幾個(gè)措施。
其中方法(1)是在兩個(gè)同步時(shí)序元件之間插入與至相反的時(shí)鐘沿觸發(fā)的寄存器,將該路徑一分為二,該方法的前提是建立時(shí)間不會(huì)被惡化。方法(2)至方法(4)都是在路徑中插入LUT1。方法(2)只在WHS最大的路徑中插入LUT1;方法(3)則是在更多的路徑中插入LUT1;方法(4)則是在-directive為Explore的基礎(chǔ)上進(jìn)一步修正保持時(shí)間違例,等效于-directive Explore +-aggressive_hold_fix。
-
寄存器
+關(guān)注
關(guān)注
31文章
5527瀏覽量
128576 -
信號(hào)
+關(guān)注
關(guān)注
11文章
2876瀏覽量
79529 -
時(shí)鐘
+關(guān)注
關(guān)注
11文章
1949瀏覽量
134349
原文標(biāo)題:深度解析ug1292(4)
文章出處:【微信號(hào):Lauren_FPGA,微信公眾號(hào):FPGA技術(shù)驛站】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
移植E203到Genesys2開發(fā)板時(shí)遇到時(shí)序問題的常見原因
E203內(nèi)核移植到FPGA開發(fā)板時(shí)出現(xiàn)時(shí)序違例的解決方式
時(shí)序約束問題的解決辦法
關(guān)于綜合保持時(shí)間約束不滿足的問題
復(fù)位引腳保持低電平邏輯以觸發(fā)MCU復(fù)位需要多長(zhǎng)時(shí)間?
請(qǐng)問復(fù)位引腳保持低電平邏輯以觸發(fā)MCU復(fù)位需要多長(zhǎng)時(shí)間?
賽思高保持小型時(shí)鐘模塊:精確時(shí)間的守護(hù)者
RK3128 Android 7.1 進(jìn)入深度休眠流程分析
一文看懂芯片的設(shè)計(jì)流程
模塊電源保持電容計(jì)算方式
ADS1112的讀出的AD值就會(huì)保持不變,好長(zhǎng)一段時(shí)間以后才會(huì)恢復(fù),為什么?
ADC采樣保持過程的具體時(shí)間要如何確定?
使用瑞薩AnalogPAK SLG47001/03節(jié)省開發(fā)時(shí)間

解決保持時(shí)間違例流程
評(píng)論