今天想來(lái)聊一聊STA相關(guān)的內(nèi)容。GBA和PBA是在做STA分析的時(shí)候的兩種分析模式,在PrimeTime里是這么命名的,在Quantus(cadence家的STA工具)里面好像是別的名字,但實(shí)質(zhì)內(nèi)容是一樣的。我就簡(jiǎn)單梳理一下這兩種模式到底是什么。
GBA全稱為graph based analysis,是工具默認(rèn)的分析方式。它是說(shuō)工具在從lib中讀取cell的delay的時(shí)候,永遠(yuǎn)是讀取由最差transition產(chǎn)生的delay。
Transition又可以叫slew,是指信號(hào)跳變所需的時(shí)間,rise transition一般會(huì)定電壓從10%到90%的時(shí)間,fall transition一般是90%到10%的時(shí)間。最差transition是什么意思呢?
實(shí)際上電路在工作的過(guò)程中,一個(gè)cell收到的input transition是由前一級(jí)cell影響的,如果前一級(jí)cell的輸入有多個(gè),不同pin的輸入所帶來(lái)的output transition會(huì)有所不同。
舉一個(gè)簡(jiǎn)單的例子,一個(gè)二輸入與門后面接了一級(jí)buffer,與門的input有A,B,輸出Z,假設(shè)原來(lái)AB都是1,Z是1,當(dāng)A從1變成0,B不變的時(shí)候,Z的transition假設(shè)是10ps,而當(dāng)B從1變成0,A不變的時(shí)候,Z的transition可能不是10ps,可能是5ps。
而讀取后一級(jí)buffer lib的時(shí)候,是需要查input transition & output load那個(gè)二維表的,10ps和5ps所帶來(lái)的delay是不一樣的。這樣工具就會(huì)疑惑,我在算這個(gè)buffer的delay時(shí),到底用前一級(jí)帶來(lái)的哪個(gè)transition呢?而我們的GBA模式,就是總是用最差的transition,10ps。
假設(shè)某條timing path是經(jīng)過(guò)B pin的,盡管對(duì)這條path來(lái)說(shuō),后一級(jí)buffer實(shí)際上應(yīng)該用B所帶來(lái)的5ps的transition,GBA模式下還是會(huì)用10ps。
可想而知,這樣的分析模式速度會(huì)比較快,它可以在timing分析之初就把所有cell的delay都算好,哪條path經(jīng)過(guò)什么cell直接拿現(xiàn)成的結(jié)果就行了。
但是GBA的結(jié)果較為悲觀,可能有些path產(chǎn)生了violation,但實(shí)際芯片工作時(shí)這條path上的transition不可能是另外那個(gè)更大的值的。這樣的悲觀我們是需要剔除掉的,因此引入了PBA的概念。
了解了GBA,PBA也就很好理解了。PBA是path based analysis,指的是我要分析哪條timing path,就用這條timing path的transition來(lái)查cell的delay。對(duì)應(yīng)上面的例子,如果用PBA模式就會(huì)用B的5ps來(lái)算buffer的delay值了。這種算法時(shí)間復(fù)雜度大大提高,但結(jié)果更為精確。
GBA和PBA都有其存在的意義。我們?cè)谧鯯TA分析的時(shí)候,首先都要快速做一遍GBA,如果沒有任何violation,那做PBA肯定也會(huì)沒有violation,timing可以確保clean。
而如果有violation,我們會(huì)再訴諸于PBA,但是也不必再分析所有的timing path了,只需要分析那些GBA模式下產(chǎn)生violation的path即可。
如果這些path在PBA模式下都pass,那我們同樣可以確保芯片timing clean;如果這些path在PBA模式下還遺留幾條有violation,那么這幾條就是我們真正需要去修的。
這其中蘊(yùn)含了一種很樸素的思想:首先用比實(shí)際更苛刻的標(biāo)準(zhǔn)快速篩選數(shù)據(jù),再用實(shí)際的標(biāo)準(zhǔn)來(lái)篩選上一輪的數(shù)據(jù),這樣可以大大提高篩選效率。
在primetime中pba模式還有path與exhaustive的區(qū)別。Path是指重新計(jì)算指定的最差path,exhaustive是要重新計(jì)算所有產(chǎn)生violation的path。這就不展開講了,因?yàn)槲矣X得path沒什么用,一般項(xiàng)目都會(huì)用exhaustive模式。
-
STA
+關(guān)注
關(guān)注
0文章
51瀏覽量
18925 -
GBA
+關(guān)注
關(guān)注
0文章
10瀏覽量
8673
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論