|
原帖由 君婷 於 2007-9-10 05:06 AM 發表 : U$ |& D! w( l4 b2 n
對初學者的我來說,calibre 驗証中的DRC LVS 的錯誤訊息及設計規則中的command file 內容是否全看的懂 ?為應徵 工作前必須務必作到的!8 o8 j3 R" f4 d& }& b
像drc lvs 裡的除錯訊息 似乎非直接以一段完整的英文清楚表示那裡出了 ...
6 d' a2 r6 v Z! [' |" ~( M& l5 U* _) N6 P9 z4 k0 r
關於DRC的錯誤,說真的不應該以cmd file 的為準,應該是以fab的TLR(topological layout rule)為準
; R8 Z' F" W% r因為那是正式的文件,cmd file 正常來說應該是要可以將錯誤完全找來,但是cmd的寫法因人而異,
; S! q( u/ G# E, j- @1 n' p5 k- p: N所以有時會有誤判的時候,由cmd 去找rule這好像反過來了。
K$ |" u) b* k* t# |0 o% f* ?+ c( w, ^/ J0 W
建議應該是先找文件,邊畫邊查,或是看完了再畫,這個看每個人的習慣。7 K8 j5 c5 U" D
) L0 s' K9 e" w. |& q( e) z+ ]8 `LVS的部份這個比較難說明,很多是經驗找出來的,所以下面的說明看不懂的話請多包含(個人表達能力不太好)1 i$ a" a* E7 D6 v" |' E7 [
8 n( Q. p. L) U6 L# H3 j0 mLAYOUT / x6 }0 ?9 @. A* `" u) P( T
最TOP的cell打的text,跟相對應的metal接觸到之後算成一個port點;對應於netlist 最top cell的pin點
1 w/ q; k* b! p4 A5 N5 N" h7 sex:9 D, w, }0 m$ m, [: }# z: c3 b
$ ^' B# H' @' O3 ]! |) W0 c
layout 的cell上面打了top metal 的text A、B、C、VDD、VSS、clock( E, @5 t8 ]6 N% {, Z
在netlist 的top cell看到的8 W) w( T' ?& s+ q% o% ]
.subckt topcell A B C VDD VSS clock& l1 R" ~' X7 f6 h4 W' [
# I8 p; n! N/ ?6 A
以上應該相符合
/ p2 C, O: |4 I$ _2 O+ _/ L! ^1 K K: d& S7 I' b
如果一邊有缺在lvs 就會出現 多出來的port 看是在layout 還是在netlist$ M3 q7 q2 _. C: F; [
===========================================
3 N0 d) u2 D4 U& Iport對了後先解short問題,vdd&vss有short這就不用玩了
; a; u; z0 M% b# ?1 e. d& m" s這個部份只能看report highlight的部份去看了這個真的看個人的眼力@@8 d+ G! z& X3 U# h" O* h
: }) k3 k$ G$ K1 Z) f' k再者看有沒有soft connect. m! d6 M0 d6 P% P# B
這個部份在有多組電源名稱時會發生+ u! M5 D3 ^; J/ y* F; J: }
ex : DVDD DVSS for 數位8 e; [& @& g# i2 u( Y
AVDD AVSS for 類比$ s! U% N& h2 P8 ~7 `# {, w
VDD33 VSS33 for IO ring使用
' b+ b! v9 f* e+ F+ E# V) y0 S0 \1 S. g8 ~* S" B+ [
正常gnd在sub 實際上都是接在一起的,但是在這個情形下會產生在底層short的情形7 w& q3 [- D H. M9 L
現在的cmd通常會有一層psub2 或是相關的層用來把sub切割成二塊,以利LVS的進行。
8 n8 M7 c$ h' k' E3 K! h==================================================) e) b/ }: c$ ~( x
其他一些比較平常的狀況
- I1 D) p; a @1 A, U" \2 Tlayout 上2條net對上 netlist上面的1條net
6 c1 x* V9 {6 m8 S U' V& r===>通常是open掉了
7 {& B" V7 g) y F8 hlayout 上一條net對上 netlist上的2條net
. |9 `3 P. C* n/ G' ^+ F===>應該是short到了
+ { n+ v- ~& ]' P! l. H# \9 t4 j$ v: [1 L0 }) J2 J
2對2 互換的線
& a2 R/ t- ~4 r9 H8 k/ x你應該是接錯了,換回來吧,不然就是一種情形gate的設定是不是有change到
# m3 c! i6 F: _; S4 _這個是在串連時常會發生,雖然function可能是相同的,但是還是換回來比較好。
' W- x: ^" W h5 u P# y8 ~0 a這個好像在cmd 有選項可以調整的0 S4 H# y9 ~) W, e
==================================================4 }3 q& b/ o g- r" x6 S' k1 d8 b
有時候看看文字的report上面會有很多訊息的,但是不知為啥很多人不喜歡去看....?_?
) U; E* e6 f( S* D+ G3 F是覺得煩還是看不懂?& {* Q1 J1 X- n. }" t( I
像一個nand2 看是認出來為一組p並連,n串連...有可能是沒吃到power或是gnd,
) H5 P! A! @9 V+ E因為基本的閘應該都會被找出來呈現的,像nand2, nor2, Inv, 這些。& `( z8 M0 `" f
==================================================
8 P8 l& i$ g8 h2 A8 R: M7 V A8 ?- y, o6 K& }& u; V
個人在工作上是用calibre的,上面僅供大家參考....LVS的除錯有時用說的真的不容易表達0 v0 o& Y2 l7 \
希望對大家有的助益。 |
評分
-
查看全部評分
|