Chip123 科技應用創新平台

標題: BJT或是DIODE在netlist中該如何描述.. [打印本頁]

作者: sw5722    時間: 2011-7-5 02:08 PM
標題: BJT或是DIODE在netlist中該如何描述..
最近我公司的ic要從a廠轉投b廠,layer已經轉好了,由於designer在忙其他事,於是要我幫忙修改netlist,使它能對應原layout,* |: J& b: d3 i' p) R9 x4 F6 t% D# }- {
有問題的device經過改layer與model name大都解決了,包括正常BJT(指正方型的).+ }  e6 k0 F4 u6 v* f
但是有一種pnp型的bjt,它是兩端相接用來當DIODE的,使用在esd部份,卻一直無法matching,外型是正常的bjt壓扁拉寬,我試
6 p! S4 t# K! C* v過用bjt或diode的方式描述但是都失敗了,不知道原因.以下是原本投a廠時所用的netlist.$ x9 L' ~9 p0 M9 u7 B8 P; r
X75 14 VCC DIODE_4X25 $T=96800 -26500 1 180 $X=47300 $Y=-27000
( O' _! D0 k: t.
6 [* \* m. ]/ [( t) x.
. E& |( [2 S+ x3 E6 U. j$ V" i.4 s/ ~7 m# |0 [5 s
.SUBCKT DIODE_4X25 1 23 F. |7 R/ X6 I, A8 ?& T
D0 1 2 DD AREA=1.4982e-10 PJ=6.12971e-05 $X=12000 $Y=12300 $D=25; u% L' k, Y' @0 h8 B5 ]% N  ~
.ends
$ t1 ~1 G6 e0 i+ }4 [+ v. W============================================================================
1 N" p) o; s/ p; Z7 e這樣在a廠是可以的,但在b廠是抓不到device的,layer方面,我參考過command file跟pdk,都照它的layout了,還是說我必須朝" z* z$ q+ }; t# u; Y
command file的修改下手,但我對command file不太熟,這個該怎麼處理.
作者: motofatfat    時間: 2011-7-6 01:21 PM
把report 放上來看看. I0 ]) |3 d, A6 ~0 a7 x
有時候是要加  : n7 h2 t  n( Q* m# H4 w
BJT  dummy and DIODE dummy5 m* W' C) z1 O
才會認出 BJT 和 DIODE
作者: terriours    時間: 2011-7-6 05:08 PM
看看CDF参数中“diode的symbol名字”,然后试一下在netlist中diode后面加上[$"diode的symbol名字"],希望對你有幫助。
作者: sw5722    時間: 2011-7-7 10:24 AM
Layout    Source         Component Type# l) I$ [- S: G
                ------    ------         --------------$ {" |! @$ A- G8 w5 J' x% w
Ports:             11        11
$ s( P* f9 M: W) I
' i& |+ v& G# `7 K/ z Nets:              23        23' D/ U* b: k- g! c
) Z! ?8 W' D/ h6 n7 |
Instances:          0         1    *    M (4 pins)2 X: b) M$ e+ \
                     2         2         MN (4 pins)7 y3 s+ Z8 m) H# F
                     1         1         MP (4 pins)
" Y/ \: X* P0 B                     1         1         R (2 pins)3 H4 u1 n1 `3 Z7 c- I! b) O0 a
                    49        29    *    D (2 pins)9 X! @: X% n+ a
                ------    ------9 T, J1 x$ Z( q& e& }" g% A
Total Inst:        53        34
  |& z1 l3 G  q$ Q% J
' _5 y7 [" |* p7 b' {& z3 Q: _$ L! H
! m/ u+ F; F3 h* k" [# a* @# u       * = Number of objects in layout different from number in source.
$ B, I% N$ K( S5 n& t" U4 ~6 G) I5 {+ o0 ^

! p6 T# r( I6 S+ B% {
6 A! w/ S& V, [) {5 c9 ?0 j1 o" M$ l**************************************************************************************************************
2 \0 U6 J# K" K8 D( O" J                                 INCORRECT OBJECTS
+ P8 e% G" @$ L0 @7 a% R**************************************************************************************************************
4 S/ f3 `* w8 x  [; M: `
* x5 y$ o3 {* P2 o, C1 f5 T4 ^7 I0 W, R# S9 a/ _8 i; w
LEGEND:# ^: D/ S% B4 U
-------1 ?4 ~7 K3 X( G* j3 ^' p! t+ m
( B; @  f1 T$ J
  ne  = Naming Error (same layout name found in source
9 i- H9 m( m8 a. n  p) v5 ?        circuit, but object was matched otherwise).3 e  f8 I- C/ b6 u% A3 k

$ \4 J) ]2 v+ Z- ^" X
$ \6 \& T8 g0 n& m; |, P**************************************************************************************************************
" o& @+ F7 K& C$ c. }% v9 f                                   INCORRECT NETS* G- X/ d# J5 n
* Y4 ~2 l8 G1 P7 C- K- I
DISC#  LAYOUT NAME                                               SOURCE NAME- a+ L0 V9 l; _3 \
**************************************************************************************************************3 W) a% }( y/ a5 D8 k; Q0 p
) c0 J* c, _# V4 ?3 M8 k
  1    Net GND(688.800,122.000)                                  GND
, V  g9 e6 ~' y' q! V9 H6 F, w" N2 Z       --------------------------                                --------------------------
! l* f1 f  C9 F" U# z7 N' ]2 ^( d  L/ V; d  u$ o
       103(833.300,87.000)OS                                   ** missing connection **9 i6 i: m' Z6 d. g
       102(833.300,60.000)OS                                   ** missing connection **
4 f6 @' d- l7 ~$ Y0 C$ B       101(833.300,33.000)OS                                   ** missing connection **. z" Y5 ?" [( b% O3 N
       100(833.300,6.000)OS                                    ** missing connection **$ b/ c6 Q+ Q' v" a6 a& A: V
       99(787.300,87.000)OS                                    ** missing connection **
" L) v( N8 Q/ {) g1 a6 C; l/ O       97(787.300,33.000)OS                                    ** missing connection **/ E: q: U- W4 S3 i; Q# [
       96(787.300,6.000)OS                                     ** missing connection **
( I; i7 m( j: p$ }       95(787.300,-21.000)OS                                   ** missing connection **
. j, I2 |/ ~! O0 A9 Z3 v* s: }       92(640.100,80.500)OS                                    ** missing connection **7 ^& I4 a2 e2 o5 E
       89(492.500,80.500)OS                                    ** missing connection **
1 t0 {1 e5 O3 x; G* h5 n2 s  J( E       88(443.300,80.500)OS                                    ** missing connection **
9 X' {- w) @$ x* M3 c( G       86(344.900,80.500)OS                                    ** missing connection **
8 R. T  l9 t- F       84(246.500,80.500)OS                                    ** missing connection **
% A3 P& i1 K, R  Q) ]       80(53.300,87.000)OS                                     ** missing connection **$ |" H1 p, E/ B# ]# ]5 R! f
       78(53.300,33.000)OS                                     ** missing connection **# l% B5 t' u7 z% Z
       77(53.300,6.000)OS                                      ** missing connection **- O: _$ l4 v! f; e
       75(7.300,87.000)OS                                      ** missing connection **/ J4 B" A- ]7 ]8 Y3 s0 R
       74(7.300,60.000)OS                                      ** missing connection **. }) C( K0 `. x+ j5 w
.......................................................................................................................# e3 s" z/ Q2 I- S! U
report其實蠻長的,大致來說,應該是從pad進來的diode出問題,dummy layer for lvs的部分,我都照b廠) y0 N- k/ _: U4 e! D- z
提供的pdk以及command file敘述的加了,應該是沒錯.) \3 d# k: H3 B1 s9 L
=======================================================/ ]* ]: T  @; ]0 U; b: E
關於"$"的作法也有試過,如下
4 P# J; m5 P0 L/ B2 MD0 1 2 0 AREA=1.4982e-10 PJ=6.12971e-05 $[DD]( {) R$ b/ o; \9 _
不知道這樣寫有沒有錯,這樣寫的話,report上"D"的source就會變成0.
+ o% g/ o+ J+ v5 o2 d=======================================================
9 h8 A! m& E7 Q7 S$ @* A* p另外report中的"M"是一個nmos in nwell的穩壓電容,後來是發現b廠提供的command file沒寫這部份
; W9 e! J/ L3 T- A* Z: L# Y6 c也不知要不要在這問,還是找b廠要他們寫.
作者: motofatfat    時間: 2011-7-8 01:30 PM
另外report中的"M"是一個nmos in nwell的穩壓電容,後來是發現b廠提供的command file沒寫這部份
* y: ?; F3 e( ?; T5 g; Z) x  b2 G' b, ^7 [也不知要不要在這問,還是找b廠要他們寫.  C$ U3 ^% X1 v4 W+ d
- y7 H* F' u- ?0 w) T( p% m, w$ l
這個 最好找 b 廠寫
; A  l3 w0 o4 g: R6 T6 c2 j看來有任到 diode 了" l* E, V0 \5 ?# ?
但是你這個 netlist 似乎 沒有 BJT 元件
作者: terriours    時間: 2011-7-8 02:19 PM
本帖最後由 terriours 於 2011-7-8 02:22 PM 編輯
. d. I7 U2 a2 v: G0 K6 L6 I. k
Layout    Source         Component Type
2 S- r* G8 I$ h' d& w+ N: Z# o                ------    ------         --------------
6 }6 w! [/ D& x- H+ B Por ...
& j7 ]' g3 v& G; o8 @sw5722 發表於 2011-7-7 10:24

+ m1 y$ j* n* K3 Q& w9 k: r4 y' x" l" k  B8 S5 T: Y
你加的那個 $[DD]其中DD是diode正確的參數名字嗎?有沒有看CDF啊?呵呵
3 N: e' Q8 p. z, ]$ C. ~還有從calibre的report上看,source中地的節點不夠啊,给一个netlist和lvs rule中描写你所用的这个D的相关语句吧。: S# S1 P3 P' {2 Y6 P% V
一起研究一下,应该不是什么大问题。
作者: sw5722    時間: 2011-7-11 02:20 PM
D[DD]          1.8V diode P+/NW              (DIODE*TO*SP*TB-HV)- o6 m+ r7 D/ I9 g6 N  g# K  [
============================================! o  D5 A4 D. {. ^. _0 C; `
上面是b廠command file裡寫的,須要覆蓋的layer.因為a廠是直接把它當diode,所以對應到b廠,就是[DD].
' k: j; [2 a" S3 V8 |, L& D2 o============================================/ e+ U0 g# _/ Z. E4 D2 F
DEV D(DD) dpnw18 psd(POS) nwelcon(NEG)/ O, m+ V9 S7 K
NETLIST MODEL "dpplnw"
5 n* v# H/ b0 v: x% e( f4 V, `    [PROPERTY A,pj
- \1 `' G: C9 q" K% S- A    A=AREA(dpnw18)3 i( R4 p* V7 E8 J. e, o
    pj=PERIMETER(dpnw18)& L2 u; d. H6 M. X- z! R* _; c2 l
============================================
- V( Y, }1 N; n上面是command file對dd的描述,如果用bjt去認的話,好像中心那塊面積是要正方型如2umx2um,才能
" P8 K; r) q" q# D' J) c; G( n認出.
作者: terriours    時間: 2011-7-11 05:09 PM
sw5722,你好。
6 x, P0 K! |. Q- d我想你的這個問題是純粹的symbol和command file 的問題,我想了兩個方法:
  u# p: F; T% c3 V8 i1、將netlist中的D器件名換乘dpplnw;9 [) u* ^) ~/ _5 S
2、如果1不行,就在layout中用text層在D器件上標注上dpplnw字樣,如果還不行就應該問問fab里的相關人員。0 F1 f* }: q0 v% T
希望能幫到你。
作者: sw5722    時間: 2011-7-12 02:49 PM
D0 1 2 dpplnw AREA=1.4982e-10 PJ=6.12971e-05 $X=12000 $Y=12300 $D=25
" I0 D4 V' s! z=======================================================; G3 R; u0 y( o
之前有將netlist改成以上模式,但report就會變成以下6 V- \( Y3 }' S3 v& B
32    66(793.800,66.800)  D(DD)                                 83/0/D0  D(dpplnw)
  f  K4 L, j0 `; c8 ^. Q         bad component subtype0 X4 b/ J# i4 E
=======================================================
+ H7 }8 }( c2 Q6 g真的把它改成DD,也是不對,9 S$ U6 E7 I1 _9 S6 B1 q; t! B
"就在layout中用text層在D器件上標注上dpplnw字樣",這個是不是將dpplnw當一個port阿,不太了解
作者: terriours    時間: 2011-7-13 11:20 AM
按照你這次的LVS結果來看,已經快接近正確的結果了。因為現在只是報出了subtype不對,因為版圖上認出的期間是DD,netlist對了。所以下麵要做的事情是看看design rule中dpplnw的layer機構和cross section,看看需不需要ID層。然後還是改netlist,並且在相應的layout中標上dpplnw,然後再進行LVS,這樣如果不對就是要和FAB聯繫,修改下command file的問題,或者你自己也可以嘗試修改一下,問題應該就可以解決了。  p4 @# ~9 [$ H9 v  J7 {

8 n, C/ \9 E3 z( `還有就是標dpplnw是為了配合device的ID層,讓command file 可以認到這個device,不是將dpplnw當成一個port,一個器件怎麼能當成port,呵呵。
! i5 Z: n5 U' \6 S6 @! P: A( s" x* J8 b. P0 R+ y: D$ M% H
祝你成功。(我想這次應該可以了,~0~)
作者: sw5722    時間: 2011-7-18 01:50 PM
ID層的意思是否為dummy layer,基本上需要用的layer都已經從PDK,也就是它! w( x5 @3 @8 y4 x9 g' C3 y
的layout範例上知道了,command file也有註解,我上面寫的那個就是.9 t$ R7 P. f+ p5 W/ M
D[DD]          1.8V diode P+/NW              (DIODE*TO*SP*TB-HV)
+ Z2 e0 |& G0 V/ H DIODE可能就是你說的ID層吧.
作者: terriours    時間: 2011-7-19 09:16 AM
這個我不能確定,因為這個要看design manual,那個裏面會有說明.1 l2 l2 u! e' |! m6 k( Y
順便問一下,現在你的LVS結果到什麽程度了啊?
作者: sw5722    時間: 2011-7-20 04:55 PM
DIODE是給command file辨識的層,TO是diffusion,TB是nwell,SP是pimp,HV就是
$ C9 ]* R. U5 G高壓用的層,在這邊是沒用到.& d1 Z8 X% U. W5 c) A
lvs 結果還是一樣,已經沒招了,應該command file是有問題的,還好這個tape out日期, y9 }0 d$ W2 B9 g  i
較久,不然會被搞瘋.




歡迎光臨 Chip123 科技應用創新平台 (http://free.vireal.world/chip123_website/innoingbbs/) Powered by Discuz! X3.2