不知道大家有沒(méi)有想過(guò),拿到手一個(gè)標(biāo)準(zhǔn)單元的lib,它里面的那些參數(shù)是怎么得出來(lái)的?我們做出來(lái)的芯片成品,真的會(huì)按lib里描述的那樣,timing的值分毫不差嗎?
可能很多人覺(jué)得在仿真工具上這個(gè)芯片完全沒(méi)問(wèn)題,流片出來(lái)的就也一定沒(méi)問(wèn)題,其實(shí)不一定。這些lib都是由fab做好了之后給我們的,而他們要保證自己的lib沒(méi)有問(wèn)題,就一定要進(jìn)行流片后的測(cè)試。
其實(shí)芯片在流片出來(lái)之后,我們所能觀察的手段就非常有限了,應(yīng)用最多的方法就只是伸進(jìn)去一個(gè)探針,來(lái)測(cè)芯片某一點(diǎn)的邏輯信號(hào)。但只要用這種方法,再加上一些特別的設(shè)計(jì),就可以達(dá)到測(cè)試標(biāo)準(zhǔn)單元timing的目的!
具體的設(shè)計(jì)方法可以總結(jié)為:把相同的cell串成環(huán),通過(guò)反饋電路讓他們自己起振產(chǎn)生震蕩波形,而后用探針來(lái)測(cè)輸出波形,并與仿真波形比對(duì),就可以推出cell的性能是否真的如lib里寫的那樣。整個(gè)設(shè)計(jì)非常類似環(huán)形振蕩器(ring oscillator)。
這種方法實(shí)現(xiàn)的原理是ring出來(lái)的震蕩波的頻率是由cell的delay決定,如果測(cè)出來(lái)的頻率和仿真的頻率不一致,就說(shuō)明仿真時(shí)用的cell delay不對(duì),就說(shuō)明lib有問(wèn)題。反之如果頻率能對(duì)上,就說(shuō)明lib的某一部分沒(méi)有問(wèn)題。
這種測(cè)試電路的設(shè)計(jì)也需要注意很多問(wèn)題。比如說(shuō),要盡可能覆蓋多的使用場(chǎng)景,假設(shè)測(cè)一個(gè)buffer的delay,為了測(cè)出不同input transition和output load組合時(shí)delay的大小,設(shè)計(jì)ring的時(shí)候就要做出不同組合。
其次我們不希望繞線過(guò)多影響結(jié)果,cell就擺的很近,讓繞線盡量短,并且cell都會(huì)擺的很規(guī)整。而且為了避免芯片其它部分的影響,還會(huì)圍boundary等等。
這種思路其實(shí)不僅僅可以測(cè)delay,還可以測(cè)很多東西,比如OCV相關(guān)的,POCV的分布,就可以用header控制每個(gè)cell。
當(dāng)ring的cell數(shù)最多時(shí),測(cè)出的頻率最靠近mean的頻率,而后依次減少ring cell的數(shù)量,就可以測(cè)出頻率的sigma。還有很多,但核心思想都是來(lái)測(cè)ring的震蕩波形。
另外不僅僅可以測(cè)cell,還可以測(cè)一些繞線的pattern,比如兩根很長(zhǎng)的平行metal制造出來(lái)是不是會(huì)有short,可以用已知的cell,連很長(zhǎng)的線來(lái)做ring。
其實(shí)我也只知道測(cè)試原理了,真正設(shè)計(jì)這種測(cè)試電路也會(huì)很復(fù)雜的。想想我們平常拿到手的lib,也是要很多人花費(fèi)非常多心血的。
-
環(huán)形振蕩器
+關(guān)注
關(guān)注
1文章
12瀏覽量
8692 -
OCV
+關(guān)注
關(guān)注
0文章
25瀏覽量
12502 -
POCV
+關(guān)注
關(guān)注
1文章
6瀏覽量
12435
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論