Chip123 科技應用創新平台
標題:
λ -base esign rules中有些規則不懂 想請教謝謝^^
[打印本頁]
作者:
君婷
時間:
2007-6-11 12:57 PM
標題:
λ -base esign rules中有些規則不懂 想請教謝謝^^
小妹我從唐經洲的書上看到其介紹!
/ |% K8 H) k `6 Q9 N
而首先Mead&Conway只是提出λ基礎設計規則作者吧?
0 O! g( j3 f4 g: M0 h" T% ?
接著是書上寫的名詞規則有些不是很了解 ,在此提出麻煩大大們 提供意見謝謝^^
( T6 Y, J7 ^, l
------------------------------------
0 T1 G: m2 I% T3 [ F* v8 Y
規則/說明
+ J H V( A9 l1 E/ f; U- G% N
Epd>=2λ :閘poly需超過diffusion的最小長度。若不超過話,在diffusion or Implant source/drain時,將使source/drain因為
! }- S* `$ y9 x2 M- t7 N1 u
diffusion overlap而短路。
7 o, I$ S" K) ]
------------------------------------
3 @3 k% F6 s) \. t( i
關於diffusion overlap 這點 不懂diffusion為何會部份重疊而短路? 因為畫layout view時 畫棵mos不就先畫好diffusion後再畫poly閘極等,但diffusion已畫好了 那來的第2個diffusion來讓它部份重疊而短路呢? 還是說poly畫上 形成了s及d的diffusion 而poly未超過diffusion的最小長度將使這2區的diffsion短路呢?
/ P8 \( c; B( N! m# N/ @
-------------------------------------
% T: A+ D, Y/ r
名詞定義:
5 f! [; Q) F; J6 W2 c7 V3 f9 _
i:implantation region
" w" ?4 ^# z6 v1 W
implantation region 這是畫mos有 畫到嗎? 這是什麼東西?implantation好像指摻雜區吧?
: O% v/ @9 Z$ \5 T: e$ X5 d7 }! X$ ?
-------------------------------------
5 ~6 S+ j3 n( \
Emc>=1λ:contact hole 和包覆著洞外面的metal區的最小寬度
Y; b; l9 I- j
------------------------------------
" t) K( R* M# [ @9 x: g
上述規則是不是指包覆著洞外面的metal區從contact往外延伸的最小寬度呢?
6 c$ Y" W; u' W0 K& C7 t {' I
------------------------------------
; h+ Z2 R r# Z" s: x* D9 _
Opd=1λ:poly與diffusion對接成接觸的重疊寬度。通常poly與diffusion均作成4λ寬,兩者重疊1λ的寬度,在兩者之間開一個2λ寬、4λ長的
6 E) e3 O) S% Q# P, r
contact hole置於中間,而覆蓋於其上的metal為4λ寬、6λ長的metal。
$ o8 L! S6 ]2 X, Q
-----------------------------------
2 {5 Y3 Y+ w7 b+ L: \$ v
上述規則介紹poly、diffusion、contact hole、metal的尺吋,但是業界每間公司都是用Mead&Conway提出λ基礎設計規則嗎?
) e6 [+ A# W% \3 O, X! W
還有我是使用calibre驗証軟體,我曾開啟drc command file來看 有看過這些規則如wd>=2λ ,sdd>=3λ ,wp>=2λ等等,只是每間公司desing rule要求的線性尺吋λ的大小 應該與Mead&Conway提出λ基礎設計規則不同大小吧?
! {/ a& p( U4 T T) Z/ W
---------------------------------
4 P m; l. T( ~% ?
還有我跑drc 出現的錯誤訊息看不懂,但訊息中有出現這些規則如wd>=2λ 等之類的訊息,於是我去開啟drc command file內容想看看裡面的設計規則,而我不會寫command file 所以也看不懂別人寫的內容,但是跑drc時除錯的錯誤訊息的內容 不都是撰寫drc command file時寫好各物質之間的距離、寬度 及不符合規則時要出現的錯誤文字訊息嗎?
& f# e& z* D. I+ o U1 h5 D
所以我只要看的懂command file就能知drc的所有規則吧?
( O/ A. u$ L' f( `/ N+ |/ d3 v
簡單的就是問 如何看懂command file? 看的懂的話 那我跑drc、lvs時 的錯誤訊息 我就能清楚了解是那裡的錯誤 ,讓我方便很快的除錯。
! a1 H3 l4 o X' f
是有書還是網站有介紹嗎?
; @5 P4 K4 w7 r: j1 l) {
--------------------------------------
$ Q; P% Q6 G; a7 O. @* g: J8 e
Eig>=1.5λ :implantation區需超出閘poly的最小長度。
9 H* Q' j' Q }2 N4 _
--------------------------------------
' w$ K! s S Y% ^" g: o4 I+ p
上述規則的 implantation區 我沒看過 ,到底是什麼?
( s' {) k! @, U: ^6 i. _
4 E% j9 Y9 G4 m. _
; n2 a, K# P- Y7 o6 v. A
5 [# a( u* ]& v* c, G0 T. r# b1 G
麻煩大大們有空 協助解決小妹的問題 3q ^^
. \8 [* `6 R# Y( U; s9 T7 j% f
) Q3 [9 Q1 h" p
[
本帖最後由 君婷 於 2007-6-11 01:08 PM 編輯
]
作者:
君婷
時間:
2007-6-11 09:18 PM
還有一堆規局雖然寫各材質間的距離、寬度為多少λ? 但是λ只是個參數用以表示物質的線性大小,所以這與畫layout view時有關嗎? 因為畫layout時 不是都必須符合drc command file裡所設定的規則,否則跑drc就不會過了。
' t6 d" m0 ]- j9 s4 _! o5 `7 K
那麼書上的這些規則 在應用的實作上 到底是用在那阿?
0 D& p9 J7 N' Q3 `; N6 o8 L
希望有大大 願意回答小妹我那麼多的問題,因為才7個人看過我的文章 @@ 感恩><
作者:
mt7344
時間:
2007-6-11 11:16 PM
λ -base 這是一個示意的 Design Rule, 也就是差不多的 rule, 相當的不經精確, 但是好備好記!
, ^# P% N% f+ x: ^& ]
所以 RULE 就不需要被太多了!!
作者:
finster
時間:
2007-6-12 03:55 AM
我不知道各家公司是如何運用λ參數來撰寫design rule
5 s+ a% C V( H: b0 h3 h2 r6 @& B
不過,我以前待過的公司是不寫λ參數的,因為,那是學術理論教學用的,它是讓你有一個概念知道各個參數的定義值是以那個作為標準
2 m0 z: w$ R6 v# ~' p
但,在實際情況裡,我們是直接用design rule來看待layout rule與command file
. F) x+ |. V, N$ y. P
所以,只要照著design rule上面的定義來畫layout,就不會有問題
7 Y: a, o0 w% i! T: L
而LVS,DRC,ERC等check都是依據design rule來定的,所以,有任何的錯誤訊息出現,都是因為layout上有某些地方違返了design rule
3 p" M, P# I9 s) L/ b) J, s
所以,清楚且了解design rule上面的描述,對於在除錯會有很大的幫助
4 k3 L2 k5 I1 y0 l3 ]4 `& W
最後,design rule上面會有圖示標出各個rule的值的定義方式,當你遇到錯誤訊息時,首先先判讀錯誤的地方是在那裡,然後翻design rule看看裡面的rule值為何
作者:
君婷
時間:
2007-6-12 06:40 AM
謝謝2位大大的答覆,請問λ -base上定義許多規則分別多少λ 只是為了讓你看懂這名詞所代表那裡不符合design rule的意思嗎?
' w3 ]' X8 S' m, g7 y. @
而design rule定義的內容不是都在DRC,LVS,ERC的command file並且在裡面也定義了 若跑這3樣
8 x' j3 F: W3 j4 I2 H+ a3 J! c# g l
check時 若有違反design rule 將出現什麼錯誤訊息,我的確主要目的是 想問 怎看定義>< 才方便除錯,請問關於design rule內定義的規則和錯誤訊息 的撰寫 都是固定語法嗎?還是有相關資訊有教你怎看這間公司design rule定義的內容? 像我作DRC check都是直接看layout view上圖示標示那裡違反規則 再從錯誤訊息中看其要求所規定的最小長度或寬度,但我錯誤訊息只看的懂上面寫的數字其它都不懂,而作LVS check時 因為design rule定義更不了解 ,而跑LVS時除錯時 沒像DRC還有在layout view有圖示 直接清楚告訴你就是那裡錯誤要修改 所以 小妹我才請教是否有相關資訊教你怎看design rule定義的內容 ^^
+ n$ t. a4 J7 I& E6 |; f7 L
同時也謝謝2位的答覆 感恩^^
作者:
finster
時間:
2007-6-12 09:13 PM
我回答一下有關於LVS check
( @& Y& E+ s% C: ?
LVS check是檢查電路與layout兩者的差異
- C9 M. F0 _, K
如一: 電路中有一NMOS,W=5.05um,L=0.88um,而你在layout上故意畫個畫了一個NMOS,W=5.04um,L=0.88um,讓W少了0.01um,所以你在作LVS check時,就會出現電路和layout的size不符的錯誤訊息
% s5 e' W p7 ?5 y5 `9 U. M
如二:原本電路上有一條線是要接到vdd,但你在layout上卻把它接到gnd,故而在作LVS check時也會出現電路和layout不符的錯誤訊息
0 c1 ~, Z+ i& J9 o
因為layout是要畫出電路上的元件與各個接點接法,一旦layout並沒有完全畫出電路該有的接法與元件大小,那在作LVS check時就會出現錯誤訊息
2 d' M5 R& f+ G% Q/ R ^' a- \
2 K5 D: p, z4 h! o& v. `
所以,在畫layout時,一般的作法都是先畫一個小電路,然後作LVS check,確保小電路的LVS沒問題,然後再繼續畫其他的小電路
3 B$ ~: Q8 ?0 Y) Z& k$ o
如此一來,在作整個大電路的LVS check時,比較不會出現找不到LVS錯誤的地方在那
2 |" e7 n6 h# f, v% U
當然.這是經驗談
! L! K* f% P/ u5 P
試想一下,你要在50個元件的layout中找出一個LVS error,和如果你要在100個元件中的layout中要找出一個LVS error,那一個比較容易些
2 n5 z% K' N% D& i$ m' F
所以,一個很大的電路layout,通常LVS check會切割成好幾個小電路的LVS check,等到每個小電路的LVS都過了之後,再作完整電路的LVS check
作者:
君婷
時間:
2007-6-12 09:57 PM
喔喔^^想請問一下您的業界經驗,因為畫的是vlsi 具有1000個邏輯閘、1000~1萬個元件,如此超大的電路畫layout view一定畫死人><
4 e1 b) }- j$ Q! H( a+ o& V5 i/ O
是不是習慣上 先建好各基本邏輯閘和電子元件的schematic,symbol,layout view,然後作到DRC,LVS check就好 並存在library,當要開始畫設計工程師交給你的schematic為其建layout view時 才叫出已建好的邏輯閘 來方便畫?
& d0 J+ }* d7 D& @
而事先建好的電子元件和邏輯閘作到DRC,LVS check就可以了?
# V+ _- V. A8 F) Q$ y; [
我的想法大略只有這樣畫vlsi電路才較快 不然會畫死人 不知畫到民國幾年@@
" Y5 O; x1 Z# Y& @) X% j7 v
還有公司裡的cell library裡應該有先前的layout engineer早先建好的元件才對吧?
7 M( S/ g& w7 }* X4 q3 L4 Q: f
3 ~! q8 f* @( `% ^
[
本帖最後由 君婷 於 2007-6-12 09:58 PM 編輯
]
作者:
sjhor
時間:
2007-6-12 10:42 PM
現在的 logic circuit 很少用人畫了說!!
9 i* u- k, _6 \" I
現階段 都是用 APR 比較多!!! 而且 foundry 廠都會提供 cell library!
% G) R. Z1 ~7 M: p! q+ `
當然也有可能提供 MACRO cell 供 design hourse 使用!
$ f, A( P, G" s, |& l) C$ d
0.35um 以上的製程,才有可能自己建 cell library!!
0 y3 }8 _3 Z# T: G1 J" g
9 k* l0 M- D- _2 K* ?) E
現在的數位 designer 也很少自建 schematic entry!
$ `/ c3 }+ k* L1 v
都是用 Verylog-L ........ 等等 tools, simulation, 合成, APR, .........
作者:
君婷
時間:
2007-6-12 11:29 PM
很多公司仍用0.35um以上的製程嗎?因為我學的正好是0.35的,而您介紹的verylog等tools應該是屬semi custom中分類在programmable device這一類 的tools 如FPGA、PLC等這些IC設計軟體且會自動幫你佈局拉線 設計者只要會寫程式就好 是吧^^
作者:
ianme
時間:
2007-6-13 01:20 AM
CIC 現在.35以下歸類為先進製程(真的有先進嘛= =?),反正差不多,不過數位的很少自己畫吧?都是直接auto placement吧?
) g5 A8 n! Q) o; G1 _
1 \; Z& U- h2 e' N: [8 p- x! D8 T
λ -base只是比較適用於製程的轉換,規範不同的λ,所以rule之間的關係沒變,只要改變λ就可以。現在還有人在上這個嘛....
* {9 ~) ~/ r0 G6 ^+ I
! Y; y( z+ H4 d, b- e; h2 h5 e# D7 ^
還有類比跟數位那差很多的方式...妳如果要用verylog那就是tool要熟,不需要來看layout....也不用在電路元件上探討...當然是指基本的數位的,如果是特殊的比如memory那令當別論。反正就是verlog寫一寫然後轉一轉,只要跑個看有沒有timing不吻合的問題然後他就自己幫你弄到差不多了,沒人在那邊一條一條畫的。
, B% @1 i" K; \$ Q! N
! Z3 a! R; P" F; Q
妳是不是搞混了數位跟類比.....這差很多捏...主要探討的項目也不太相同,數位著重在一件事情:right go the right thing!
5 z( {- Q/ e; E- e8 O0 u% ~
如果是VLSI那要看教學的人,我看大部分都偏數位,少部分偏類比。數位你只要不要弄到meta上面去,隨便弄不要太離譜都不會有什麼大問題,所以才可以使用這種自動佈線的方式。類比的那個可能WL差一些特性天差地遠,才會特別專注在layout跟元件上面的探討。數位的差一點反正我只要0跟1,準位差點那沒差別。我看數位好像都是套裝好的。你要memory就寫一寫他就生出一塊,然後就貼一貼拼個圖上去,然後要什麼就用tool弄一弄,貼一貼兜一兜,大該這樣就差不多了,這樣才能做的很大又很快。慢慢用手拉不僅沒意義(功能又沒比較好 做心酸)而且又浪費時間(時間=產品上市日期=金錢=公司生存率)。
作者:
vlsi5575
時間:
2007-7-13 01:58 PM
標題:
回復 #1 君婷 的帖子
關於你的問題:
6 u# d3 ?3 X7 |5 v
Epd>=2λ:閘poly需超過diffusion的最小長度。若不超過話,在diffusion or Implant source/drain時,將使source/drain因為diffusion overlap而短路。
6 Q2 e4 f, h& H# _3 L
. F8 N3 V. I% q6 g0 I
其實是多慮了,這只是特殊情況,沒有人會犯這種錯
2 c/ G# c' p! n3 C
我們在畫MOS的時候不是會把poly覆蓋在diffusion上嗎?
: R8 f0 x1 A+ F& L+ ]" U$ B! O8 p
其中的兩邊就是source跟drain,
k2 [& y* t4 l+ D" O
而poly跟diffusion覆蓋的區域就是gate
! m2 ^3 o5 c: w$ b
這是無庸置疑的嘛~
* F2 A) B, D. c; m. _
MOS一般的digital操作我們知道就是在gate上施加電壓以使其導通或截止
$ t/ B4 x% ]9 T
書上寫的意思是說poly我們都會使它超過diffusion,
/ U) n6 H |0 g3 m# j a
而超過多少則有design rule規範
5 M% ?" u, t7 u
如果今天poly的某一端沒有超過deffusion,
5 n. x8 ~0 l% g% l. x6 S8 @
也就是說poly並沒有整個把兩塊diffusion區隔開來
9 m, ^7 V K3 R$ r( m: Q# D
這樣的話就沒有形成source跟drain
3 i, ?; I3 ]4 V6 W r
也就不算是一顆MOS,
* F% J- R; q' e; U3 I; i. y
所以書上才會說兩端短路,是因為根本沒有區隔出source跟drain
: s, a6 u* C+ O$ E/ T$ |
; s8 k: w9 q, W; G9 [
而λ只是一個單位符號,看看就好,
2 ~# s" C, V9 Y
他只是為了要讓看書的人大概知道幾λ幾λ,
5 i' G- z: q& ]0 y, d4 j0 x6 t
這個rule跟那個rule大概的比值是多少,
8 O8 y9 L) g1 A8 M2 k0 B
所以不用太在意,畢竟每個process的rule都不一樣
! v! a/ A0 J: I1 @; u7 X/ a/ }
所以書上為了不想表示成一個定值
" Q+ b0 ?% b& b! G7 u. ?0 F) Z+ G' s
就用λ來表示,意思相信也是希望讀者不要認為它是個絕對的值
& R7 z* ?, H0 {. B9 M# u, I
) v. O7 P. c: \9 L; B: @5 E
從您的發問可以看出來您是位剛入門的同事
, I* I# P4 i' ?/ r8 ~
因此建議您書上的看看就好,design rule比較重要!
4 p9 J e* J0 q3 x, {3 h
1 V8 Y" @2 F2 r* ~1 ~1 i2 z9 E
小弟的淺見!
: }9 s" ~# |: m( Y3 `9 P2 i( `
如果有不對的地方還請指教~
/ o; J% J, S. _( P5 G
$ I9 X# o' u4 V* U
[
本帖最後由 vlsi5575 於 2007-7-13 02:06 PM 編輯
]
作者:
君婷
時間:
2007-10-22 11:38 PM
使用cadence tools學習至今 發生了一個很大的問題 即LVS的除錯訊息根本幾乎不太明白其所表達的意思,無法直接從訊息中直接了解 就是指電路那裡節點有誤。
4 i" t9 B0 a- ~0 E2 m: c9 P
LVS的除錯訊息有教學網站嗎?因為小妹認為除錯花最多時間的地方乃在於LVS 而DRC本身就會顯示那裡的佈局不符合規局,所以小妹現在為了LVS的除錯能力很頭疼。
( l* y" j& q" \. Z4 F
對於finster 副版主所提的LVS看法....
% z' q `# f0 b
小妹覺得將netlist與layout作 LVS比對時,netlist因為之前跑過pri-sim所以netlist本身一定正確,LVS有錯誤訊息 一定是Layout部份有畫錯。
1 }( P4 E! u; L2 B7 q
假設layout的晶體寬度與電路的寬度不同 所出現的錯誤訊息 應該是表示電路寬度與layout不符吧?
& N" Z% x$ C& F7 N7 P R
而不是表示layout與電路寬度不符吧?
0 Q/ g& q9 I2 ?. j4 H; J
不知小妹對LVS的想法是否正確? layout錯了 但除錯訊息卻都是表示netlist與layout不符 讓初學者以為是netlist錯了?
' j+ [7 @1 ?# Y. l
麻煩大大們提供LVS除錯經驗及是否有教學資訊 謝謝唷^^
作者:
egg
時間:
2007-10-23 01:01 PM
不知您是使用哪一套軟體去跑LVS
: H- f) a8 Z7 ^7 i
dracula還是calibre
P% s( H. c1 j1 P' ^% ~; i
一般來說circuit轉出來的netlist file很少會有錯的
|; {3 _ u4 @, B1 J. z" F$ b
您說的layout mos width 跟netlist 的不符
$ m/ e& c, T2 L4 t( t) D, r
這不就是代表您所lay的mos有錯嗎?!
& O, d* Q9 H7 R1 h
怎會想去netlist錯了 = =
' Q, _ u7 F+ ^0 ? o0 j8 p
總覺得您把LVS report所要表達的意思給誤解了
3 y4 J B0 p5 a
LVS除錯大多數都是靠經驗累積的
; i5 a2 W4 b9 q; k/ i# H9 C# A& }
而初學者大多靠前輩帶著做學習debug的能力
Q2 X) d. n+ S, `, u3 h+ _5 Z: a
倒是沒聽過有教學資訊
0 a" x% |- j. U) O9 q: `; S
或許改天請版主開個專門把LVS驗證出現的問題
1 }: g X. f1 t( w, s
集中在一起的版好了 ^O^
作者:
君婷
時間:
2007-10-23 03:18 PM
抱歉 我所用的是calibre
4 P8 ~6 Q1 {+ l5 n. D
對於除錯訊息心裡的確認為不符部份 絕不會指netlist部份有誤,除非是後來schematic被修改過而忘了重轉一次netlist。
: E# x2 l' b- J" _0 N" P d$ g
假設layout檢查出有17個net s和netlist 有16個nets
$ k( ]4 O2 p1 M- g- y3 r% K+ ^! X7 u
就表示可能layout有某處開路 難到不會有可能是短路嗎?
$ C* m2 {5 `, D6 V
! m2 m) Y' R. }
假設layout檢查出有16個net s和netlist 有17個nets
, Y8 D$ L' @/ R) S. X* e; t
表示可能layout有某處短路 難到不會有可能是開路嗎?
! R" i$ M% C) a2 d1 T3 t
, Q. n4 C) [ Y+ _+ O) M
想請教calibre有沒很直接的指明就是layout處那裡開路或短路以及很清楚的說明就是那個一個點?
謝謝唷><
: m( C2 r. ~$ b
& P+ d/ B( d' b, X
小妹還想請教一下關於節點node在spice的定義,node指輸入端或輸出端的端點及2接腳以上連接在同一個點都算node吧...
& B$ r' c' k }
所以若2元件中有2接腳本來是連線在一起(只有一個node),若開路了 則在開路的2端也各算1個node於是變成2個node嗎? 謝謝
% q- T6 O6 _0 s# S: C& D, t# V8 D8 ?! e
6 o* ^" J4 B$ W, z8 Y' v
[
本帖最後由 君婷 於 2007-10-23 03:40 PM 編輯
]
作者:
egg
時間:
2007-10-23 07:28 PM
假設layout檢查出有16個net s和netlist 有17個nets
4 ?6 z. p0 a5 p
表示可能layout有某處短路 難到不會有可能是開路嗎?
0 f% A! z2 t9 _+ h; @$ Y9 K
Ans: 是的....不可能是open.....如果是open的話
6 ~& T. P" d6 Z1 r
layout會多出一條net
4 e N# A5 D4 v
ㄟ....不知道小妹您有沒有開啟RVE
/ Z# \4 ` q" W4 j: [ x: Q
一般來說用RVE LVS來debug應該會很容易找到錯
2 f' X$ @. y# f: P2 P. J
除了power&ground的short比較難找之外
0 \. u6 ]+ N) f' r6 f
照理說應不難除錯唷 ^^
作者:
sw5722
時間:
2007-10-24 11:17 AM
有些問題必須從半導體製程去解釋,比方說,
$ r: b" r, {2 \0 P& [2 u1 f9 G* B8 I" g
=====================================================
7 i: _2 A( I, `" l
Epd>=2λ :閘poly需超過diffusion的最小長度。若不超過話,在diffusion or Implant source/drain時,將使source/drain因為
( h* D) A0 x. Y5 d7 U! W
diffusion overlap而短路。
4 E8 [6 e3 n) m5 q9 I5 I5 t* z( Q% w
=====================================================
5 A+ ^+ j8 |) ?; @
上述應該指的是endcap,如果layout上的poly是突出diff的,實際上製程廠做出來的型狀,是會往後縮,並且尾
# ]1 U; Y3 `( H# L
端呈圓弧狀,為了避免poly縮進diff中,而造成s跟d導通,所設定的rule.
5 m* t3 j+ s( n; O5 o
當然有些比較特殊的mos不在此限,比如說可變電容之類.
9 Q- y) ~* D2 Z
妳把poly也就是gate當成一個控制s跟d的開關,也就不難理解了,妳後面所說的diff短路應該是指這個吧.
歡迎光臨 Chip123 科技應用創新平台 (http://free.vireal.world/chip123_website/innoingbbs/)
Powered by Discuz! X3.2