電子產業(yè)一站式賦能平臺

PCB聯(lián)盟網

搜索
查看: 95|回復: 0
收起左側

為什么reg2cgate的setup難以滿足?

[復制鏈接]
跳轉到指定樓層
樓主
匿名  發(fā)表于 2024-10-29 12:17:00 回帖獎勵 |倒序瀏覽 |閱讀模式
Reg2cgate的setup天生是難以滿足的,其中緣由是什么呢?通過下面一張圖大家便可以直觀的了解到。
    從圖上我們可以看出,clock gate的clock latency是delay1,reg1的clock latency是delay1+delay2,可以明顯的看出,reg2cgate的setup,其launch clock path delay天生是要比capture clock path delay要多delay2的,因此其setup相對于reg2reg是不好滿足的。


    根據setup的計算公式可以看出:
Launch_clock_path_delay +data_path_delay+setup_check
    我們將下圖中的一些值代入到上述公式可以得到:
(Launch_clock_path_delay - capture_clock_path_delay) + data_path_delay+setup_check
    所以為了解決reg2cgate的setup,我們可以降低delay2,delay3的值,delay3為data path delay,這個工具默認是為去降低的。因此,能夠讓我們去處理的就是delay2的值。
    那么delay2的值是如何降低的呢?下面有幾種方法供大家參考。
    a. 在長clock tree的時候,讓clock gate盡量貼近其后面的register,盡量不要在clock gate后面用插buffer的方式,去解clock gate的fanout。這么操作會導致delay2變大。如果clock gate的fanout特別大,可以去問一下綜合人員是否可以優(yōu)化一下netlist,或者我們在長clock tree的時候可以將clock gate clone選項打開;
    b. 如果reg1與其他register沒有timing交互的話,可以在reg1的ck端設置ignore pin,這樣工具在長clock tree的時候,便會將reg1的clock latency做短,即減少了delay2的值。
    那么,通過上述方法,基本上可以解決掉reg2cgate的setup問題。
    另外,在innovus中,我們也可以在對reg2cgate創(chuàng)建group path,并對group path level設置一個較高的值。那么,工具在優(yōu)化的時候,會著重去優(yōu)化reg2cgate path。
    以上就是解決reg2cgate setup的原理和方法。

#小編也是一個入行幾年的數(shù)字后端工程師。由于本身對編程方面比較感興趣。因此,在數(shù)字后端腳本、flow上比較擅長,大家如果有相關的問題,可以提供答疑咨詢服務。另外,歡迎大家加入我的知識星球“芯冰樂”或者關注微信公眾號“芯冰樂”,獲取更多干貨知識分享。

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有賬號?立即注冊

x
回復

使用道具

發(fā)表回復

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則


聯(lián)系客服 關注微信 下載APP 返回頂部 返回列表