linux fall delay 10,Cell的Rise delay和Fall delay、Rise transition和fall transition
Cell的Rise delay和Fall delay、
Rise transition和Fall transition
介紹:
如下圖所示為一個(gè)Cell的lib中關(guān)于cell_rise/cell_fall、rise_transition/fall_transition的描述:
在NLDM模型的.lib中,cell_rise/cell_fall它描述的是Cell從輸入到輸出的延遲查找表,它是一個(gè)Input transition和Output load的二維查找表。
rise_transition/fall_transition描述的是Cell輸出上升和下降沿transition time與Input transition和Output load的二維查找表。
問題:
以上內(nèi)容大家應(yīng)該都知道,下面提出一個(gè)問題:
對(duì)于.lib中的cell_rise/fall這里的rise和fall指的是輸入是rise/fall還是輸出是rise/fall情況下的cell delay呢?
輸入是rise的猜想:因?yàn)閐elay是Input transition和Output load的二維查找表,所以可能指的是input rise或者fall的情況。另外該字段里面的related pin也是輸入pin。
輸出是rise的猜想:因?yàn)檎麄€(gè)描述是定義在timing里面的output pin里面的,所以可能指的是output rise的情況,另外從名稱判斷cell_rise應(yīng)該是輸出上升的情況。
在給出答案之前大家可以想想哪個(gè)答案是對(duì)的。
混淆你的視聽:
為了找到問題的答案,找了很多資料,可是發(fā)現(xiàn)網(wǎng)上有些資料是不可靠的,可能會(huì)混淆你的視聽。
下面是Liberty UG里面相關(guān)的介紹,從里面并不能獲得該問題的答案。
后來網(wǎng)上看到一個(gè)Liberty File的介紹,里面明確說明了rise_transition指的是output rise,而cell_rise感覺有點(diǎn)像是指的Input rise/fall:
http://web.engr.uky.edu/~elias/lectures/LibertyFileIntroduction.pdf
后來找了更多資料研究后發(fā)現(xiàn)這個(gè)圖里面錯(cuò)誤有很多,不具有參考性。
這個(gè)圖里面的錯(cuò)誤你能發(fā)現(xiàn)幾個(gè)呢?
錯(cuò)誤之處:
1、index_1和index_2不一定是input transition和output load,也可能是反著來的,要看lib前面的定義。不過在這里index_1是input transition沒錯(cuò),可是這個(gè)cell的timing_sense是negative_unate的,怎么可能出現(xiàn)input和output同時(shí)是rise的情況呢,所以上面的黃字介紹是錯(cuò)的,lib沒錯(cuò);
2、在index_1的input transition或者output transition rise time的時(shí)候里面說的是20%-80%,這個(gè)是有問題的,這個(gè)是lib里面定義的slew threshold的值,所以是slew time,而非transition time。這里應(yīng)該寫10%-90%。這里需要注意slew和transition的區(qū)別,之前一直以為是同一回事,研究發(fā)現(xiàn)并不是。后邊會(huì)專門寫篇推文介紹一下。
上面找到的例子有點(diǎn)問題,介紹幾個(gè)正確的博文:
https://vlsiuniverse.blogspot.com/2016/12/liberty-format-introduction.html
https://gogul.dev/hardware/cmos-basics-for-sta-2
答案:
下面給出答案:
Cell_rise指的是當(dāng)輸出從0變?yōu)?時(shí),在輸入和輸出之間的傳播延遲;
Cell_fall指的是當(dāng)輸出從1變?yōu)?時(shí),在輸入和輸出之間的傳播延遲。
由于輸入輸出不是瞬間從0變成1的,反之亦然,因此我們需要定義一個(gè)閾值來進(jìn)行測(cè)量:
# threshold point of input falling edge
input_threshold_pct_fall : 50.0 ;
# threshold point of input rising edge
input_threshold_pct_rise : 50.0 ;
#threshold point of output falling edge
output_threshold_pct_fall : 50.0 ;
#threshold point of output rising edge
output_threshold_pct_rise : 50.0 ;
這些點(diǎn)經(jīng)常為VDD的50%,如下圖所示為cell_rise/fall的真實(shí)定義:
舉個(gè)例子:
下面左圖是一個(gè)Inverter的輸入波形,input rise transition是20ps,input fall transition是15ps,output load是10fF。
那么Cell的fall delay通過查找LUT里面的cell_fall表格獲取,其中查表用的輸入分別為:
Input transition time(rising): 20ps;
Output load: 10fF
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的linux fall delay 10,Cell的Rise delay和Fall delay、Rise transition和fall transition的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c语言传入参数不正确,请高手看看一下程序
- 下一篇: mysql课程表学时_Mysql 巩固提