standard cell timing model


standard cell timing model 主要包括兩方面的信息:

Cell Delay  calculation

Output Transition  calculation

首先,cell delay 和 cell output transition這兩者都是根據 input trans 和 output load 計算出來的;

具體應該是 input pin transition 和 output net total cap 來計算:

這里的 input transition 就是上一級cell 的output transition,而 cell output transition 的計算也是由 input trans 和 output load 決定的:

以此逐級類推計算,就可以計算出 timing path 上所有的 cell delay 值了。

 

********************************************************************************

來看一個具體的 cell delay 計算實例:

 

 

上圖中 SVN_BUF_10 這個 cell :

cell delay  =  0.0861 

input pin transition  =  0.5727

output net total cap = 0.0182 

基本原理是將input trans 和 output cap 這兩個參數代入到 std cell 庫中的 delay 計算表(lookup table),查出對應的 delay 值;

用 report_delay_calculation 可以報出計算過程:

圖中的 Z 就是計算出來的 cell delay ,與 report 中的 0.0861 很接近;

具體計算過程是:

根據 X 和 Y 的值,在 lib lookup table 中查找到 X 和 Y 左右兩側的坐標點,將這四個坐標點代入二元擬合公式 Z= B*X + C*Y + D*X*Y ,就可以得到四個二元二次方程,由這四個方程可以解出 ABCD 四個系數的值,這樣就得到了一個具體的擬合公式,然后再將 input trans 和output cap 代入擬合公式就可以計算出這個cell 的delay 值了。

 

 ******************************************************************************

lib lookup  table 如下:

在 lookup table 中,

index_1 是 input trans,是縱坐標

index_2 是 output cap,是橫坐標

 有了橫縱坐標,就很容易查出 delay value了 

 

#################################################

以上是 組合邏輯 cell delay 計算,那么 sequential cell 的 delay 如何計算? 比如 register ?

register 的 delay 包括兩個: cell delay (即 CK -> Q 的delay), library setup time (即 CK 端的 setup window)

a)register cell delay 的計算:根據CK 端 input transition 和 Q 端 output cap,查表得出

b)register library setup time 的計算:根據 D 端data input transition(index_1) 和 CK 端 clock input transition(index_2), 查表得出

 

 

 *********************************

 |  ^_^  |   ^_^  | 

 

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM