Chip123 科技應用創新平台
標題:
λ -base esign rules中有些規則不懂 想請教謝謝^^
[打印本頁]
作者:
君婷
時間:
2007-6-11 12:57 PM
標題:
λ -base esign rules中有些規則不懂 想請教謝謝^^
小妹我從唐經洲的書上看到其介紹!
6 e( m$ x8 X! H
而首先Mead&Conway只是提出λ基礎設計規則作者吧?
! g l7 Y8 P! ?) ?
接著是書上寫的名詞規則有些不是很了解 ,在此提出麻煩大大們 提供意見謝謝^^
3 i& d0 P% j& F5 E4 l8 S
------------------------------------
% E) J! H8 V2 q
規則/說明
0 e, u6 |8 ^( P
Epd>=2λ :閘poly需超過diffusion的最小長度。若不超過話,在diffusion or Implant source/drain時,將使source/drain因為
% ]5 L" j& I+ C$ m4 O
diffusion overlap而短路。
# x/ B/ _! e7 ]7 w5 h
------------------------------------
? D3 P" U) m7 ~7 w) `
關於diffusion overlap 這點 不懂diffusion為何會部份重疊而短路? 因為畫layout view時 畫棵mos不就先畫好diffusion後再畫poly閘極等,但diffusion已畫好了 那來的第2個diffusion來讓它部份重疊而短路呢? 還是說poly畫上 形成了s及d的diffusion 而poly未超過diffusion的最小長度將使這2區的diffsion短路呢?
& J8 J3 F8 c, G. Q: M) k
-------------------------------------
2 z; y8 J6 M0 E8 Q% r5 ?- V
名詞定義:
+ ]3 @, _9 F- i* x6 l
i:implantation region
& D, D4 _# b8 w& s/ n! \
implantation region 這是畫mos有 畫到嗎? 這是什麼東西?implantation好像指摻雜區吧?
" H, u9 {1 I3 U# l+ G
-------------------------------------
/ o, s a$ i* F
Emc>=1λ:contact hole 和包覆著洞外面的metal區的最小寬度
' D5 D7 `+ n) |2 ?9 S6 f
------------------------------------
2 N) j* _9 Z2 a* f S
上述規則是不是指包覆著洞外面的metal區從contact往外延伸的最小寬度呢?
/ {- ]& [. U* Y& Q9 E2 ]; n
------------------------------------
0 D/ Y; n9 T) L5 d# n( Z/ B7 m: S
Opd=1λ:poly與diffusion對接成接觸的重疊寬度。通常poly與diffusion均作成4λ寬,兩者重疊1λ的寬度,在兩者之間開一個2λ寬、4λ長的
5 A6 K3 }% |5 |; s
contact hole置於中間,而覆蓋於其上的metal為4λ寬、6λ長的metal。
" [' T! Y8 V: X1 N2 f" l
-----------------------------------
6 \- J1 F7 n5 A0 w, U' ?
上述規則介紹poly、diffusion、contact hole、metal的尺吋,但是業界每間公司都是用Mead&Conway提出λ基礎設計規則嗎?
+ s+ n/ X& x3 _$ ?1 c9 Z
還有我是使用calibre驗証軟體,我曾開啟drc command file來看 有看過這些規則如wd>=2λ ,sdd>=3λ ,wp>=2λ等等,只是每間公司desing rule要求的線性尺吋λ的大小 應該與Mead&Conway提出λ基礎設計規則不同大小吧?
- A1 s6 ?6 R% }: y) j* q/ C" e9 g6 M% I
---------------------------------
+ B- ?6 h( n% @# p. {1 E! R+ p6 o( U
還有我跑drc 出現的錯誤訊息看不懂,但訊息中有出現這些規則如wd>=2λ 等之類的訊息,於是我去開啟drc command file內容想看看裡面的設計規則,而我不會寫command file 所以也看不懂別人寫的內容,但是跑drc時除錯的錯誤訊息的內容 不都是撰寫drc command file時寫好各物質之間的距離、寬度 及不符合規則時要出現的錯誤文字訊息嗎?
+ F: H ^" i% q' U
所以我只要看的懂command file就能知drc的所有規則吧?
+ i& F* j% r$ c1 Y4 ^
簡單的就是問 如何看懂command file? 看的懂的話 那我跑drc、lvs時 的錯誤訊息 我就能清楚了解是那裡的錯誤 ,讓我方便很快的除錯。
1 Y u0 n: j) n6 N
是有書還是網站有介紹嗎?
# U% l3 r& H3 x# s
--------------------------------------
`- U+ ~; @6 S C. `% J
Eig>=1.5λ :implantation區需超出閘poly的最小長度。
0 t* K. S: M4 z+ h
--------------------------------------
6 ^* q# l4 i# _" J
上述規則的 implantation區 我沒看過 ,到底是什麼?
( X( L8 g7 ?( J# X: N1 B
6 V5 W( b* m* W& ]/ y% [8 s% g, G
9 O2 o3 |/ a7 \, \: i/ b$ a
2 U; V- s% _+ H0 L' Q7 E3 g5 s( z
麻煩大大們有空 協助解決小妹的問題 3q ^^
5 |4 L! z- Z& ]. _* b2 O4 k
1 s! {% [2 L1 ]9 u( D* b5 {2 O
[
本帖最後由 君婷 於 2007-6-11 01:08 PM 編輯
]
作者:
君婷
時間:
2007-6-11 09:18 PM
還有一堆規局雖然寫各材質間的距離、寬度為多少λ? 但是λ只是個參數用以表示物質的線性大小,所以這與畫layout view時有關嗎? 因為畫layout時 不是都必須符合drc command file裡所設定的規則,否則跑drc就不會過了。
. w/ P9 q5 l1 U0 |
那麼書上的這些規則 在應用的實作上 到底是用在那阿?
8 I1 b' }. P) i; x1 d% ]0 a. z# h
希望有大大 願意回答小妹我那麼多的問題,因為才7個人看過我的文章 @@ 感恩><
作者:
mt7344
時間:
2007-6-11 11:16 PM
λ -base 這是一個示意的 Design Rule, 也就是差不多的 rule, 相當的不經精確, 但是好備好記!
2 ?" q; `; v+ _% z2 c0 U
所以 RULE 就不需要被太多了!!
作者:
finster
時間:
2007-6-12 03:55 AM
我不知道各家公司是如何運用λ參數來撰寫design rule
7 j- {& e l, K3 |1 ]# `: [# J( N
不過,我以前待過的公司是不寫λ參數的,因為,那是學術理論教學用的,它是讓你有一個概念知道各個參數的定義值是以那個作為標準
4 ^: s- y6 B+ y) D3 ?
但,在實際情況裡,我們是直接用design rule來看待layout rule與command file
! j. U% E% l- _. j
所以,只要照著design rule上面的定義來畫layout,就不會有問題
7 {! y* S$ M3 _( z1 V' w- ~
而LVS,DRC,ERC等check都是依據design rule來定的,所以,有任何的錯誤訊息出現,都是因為layout上有某些地方違返了design rule
6 a6 ]2 o4 a7 y( \" f3 h$ m* m: w+ n
所以,清楚且了解design rule上面的描述,對於在除錯會有很大的幫助
8 ~! a; I5 [. s9 j
最後,design rule上面會有圖示標出各個rule的值的定義方式,當你遇到錯誤訊息時,首先先判讀錯誤的地方是在那裡,然後翻design rule看看裡面的rule值為何
作者:
君婷
時間:
2007-6-12 06:40 AM
謝謝2位大大的答覆,請問λ -base上定義許多規則分別多少λ 只是為了讓你看懂這名詞所代表那裡不符合design rule的意思嗎?
5 i$ T* k, o" k4 z/ x) w
而design rule定義的內容不是都在DRC,LVS,ERC的command file並且在裡面也定義了 若跑這3樣
: U5 X. o- v' H* z/ k
check時 若有違反design rule 將出現什麼錯誤訊息,我的確主要目的是 想問 怎看定義>< 才方便除錯,請問關於design rule內定義的規則和錯誤訊息 的撰寫 都是固定語法嗎?還是有相關資訊有教你怎看這間公司design rule定義的內容? 像我作DRC check都是直接看layout view上圖示標示那裡違反規則 再從錯誤訊息中看其要求所規定的最小長度或寬度,但我錯誤訊息只看的懂上面寫的數字其它都不懂,而作LVS check時 因為design rule定義更不了解 ,而跑LVS時除錯時 沒像DRC還有在layout view有圖示 直接清楚告訴你就是那裡錯誤要修改 所以 小妹我才請教是否有相關資訊教你怎看design rule定義的內容 ^^
/ _& F5 q0 N- n* ]; k
同時也謝謝2位的答覆 感恩^^
作者:
finster
時間:
2007-6-12 09:13 PM
我回答一下有關於LVS check
5 }( Z j; H8 H7 A$ J
LVS check是檢查電路與layout兩者的差異
3 d; ~' i# n1 A& h! G0 _
如一: 電路中有一NMOS,W=5.05um,L=0.88um,而你在layout上故意畫個畫了一個NMOS,W=5.04um,L=0.88um,讓W少了0.01um,所以你在作LVS check時,就會出現電路和layout的size不符的錯誤訊息
e5 ?4 g# T8 m# X
如二:原本電路上有一條線是要接到vdd,但你在layout上卻把它接到gnd,故而在作LVS check時也會出現電路和layout不符的錯誤訊息
$ G( W0 c' m8 t- u3 T
因為layout是要畫出電路上的元件與各個接點接法,一旦layout並沒有完全畫出電路該有的接法與元件大小,那在作LVS check時就會出現錯誤訊息
0 l; X! B4 M5 S7 b8 }" _6 Q
% r H. E2 W& w x
所以,在畫layout時,一般的作法都是先畫一個小電路,然後作LVS check,確保小電路的LVS沒問題,然後再繼續畫其他的小電路
4 T+ u) T E& h' l- ?0 e s
如此一來,在作整個大電路的LVS check時,比較不會出現找不到LVS錯誤的地方在那
: I8 B/ n! M* z9 c0 t
當然.這是經驗談
3 r8 \3 s( _1 P. D/ \
試想一下,你要在50個元件的layout中找出一個LVS error,和如果你要在100個元件中的layout中要找出一個LVS error,那一個比較容易些
' X1 F* N+ \: W- C0 F
所以,一個很大的電路layout,通常LVS check會切割成好幾個小電路的LVS check,等到每個小電路的LVS都過了之後,再作完整電路的LVS check
作者:
君婷
時間:
2007-6-12 09:57 PM
喔喔^^想請問一下您的業界經驗,因為畫的是vlsi 具有1000個邏輯閘、1000~1萬個元件,如此超大的電路畫layout view一定畫死人><
& |% o) M/ m7 B7 \% Q) M' h/ O0 F
是不是習慣上 先建好各基本邏輯閘和電子元件的schematic,symbol,layout view,然後作到DRC,LVS check就好 並存在library,當要開始畫設計工程師交給你的schematic為其建layout view時 才叫出已建好的邏輯閘 來方便畫?
5 A5 b1 |& z* l& U
而事先建好的電子元件和邏輯閘作到DRC,LVS check就可以了?
& ~0 j% f# ?4 d
我的想法大略只有這樣畫vlsi電路才較快 不然會畫死人 不知畫到民國幾年@@
# o, u/ G. y8 V
還有公司裡的cell library裡應該有先前的layout engineer早先建好的元件才對吧?
4 q. w2 }) s4 L( p& V
' k2 a: I; T- s6 D7 {& G! a
[
本帖最後由 君婷 於 2007-6-12 09:58 PM 編輯
]
作者:
sjhor
時間:
2007-6-12 10:42 PM
現在的 logic circuit 很少用人畫了說!!
! A5 N2 S1 l3 k U7 f8 Y
現階段 都是用 APR 比較多!!! 而且 foundry 廠都會提供 cell library!
9 t. z3 b l! i1 M/ E! H! H
當然也有可能提供 MACRO cell 供 design hourse 使用!
: _6 i/ B8 O2 j4 m. e
0.35um 以上的製程,才有可能自己建 cell library!!
8 m' r, e/ Q9 q, `' o* h4 m, k
. ^5 D0 S [9 g9 a
現在的數位 designer 也很少自建 schematic entry!
4 W& Q; ~- Y; a
都是用 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吧?
6 ?2 E3 n4 r5 L/ B N( p
9 P" e) p0 S2 e j* }; t
λ -base只是比較適用於製程的轉換,規範不同的λ,所以rule之間的關係沒變,只要改變λ就可以。現在還有人在上這個嘛....
7 S r, z' l& o. |" i P% q
$ z5 s" K8 I" c8 b# U$ D
還有類比跟數位那差很多的方式...妳如果要用verylog那就是tool要熟,不需要來看layout....也不用在電路元件上探討...當然是指基本的數位的,如果是特殊的比如memory那令當別論。反正就是verlog寫一寫然後轉一轉,只要跑個看有沒有timing不吻合的問題然後他就自己幫你弄到差不多了,沒人在那邊一條一條畫的。
/ |# C! g* I+ R* \* g+ G/ @2 @( K9 g
/ y, R* \% r* ?9 X9 R
妳是不是搞混了數位跟類比.....這差很多捏...主要探討的項目也不太相同,數位著重在一件事情:right go the right thing!
: R: ~- F0 k! R D# n3 Z8 j. @0 m
如果是VLSI那要看教學的人,我看大部分都偏數位,少部分偏類比。數位你只要不要弄到meta上面去,隨便弄不要太離譜都不會有什麼大問題,所以才可以使用這種自動佈線的方式。類比的那個可能WL差一些特性天差地遠,才會特別專注在layout跟元件上面的探討。數位的差一點反正我只要0跟1,準位差點那沒差別。我看數位好像都是套裝好的。你要memory就寫一寫他就生出一塊,然後就貼一貼拼個圖上去,然後要什麼就用tool弄一弄,貼一貼兜一兜,大該這樣就差不多了,這樣才能做的很大又很快。慢慢用手拉不僅沒意義(功能又沒比較好 做心酸)而且又浪費時間(時間=產品上市日期=金錢=公司生存率)。
作者:
vlsi5575
時間:
2007-7-13 01:58 PM
標題:
回復 #1 君婷 的帖子
關於你的問題:
6 E; E& e4 ]+ g7 |* z3 U2 F) w
Epd>=2λ:閘poly需超過diffusion的最小長度。若不超過話,在diffusion or Implant source/drain時,將使source/drain因為diffusion overlap而短路。
) @. q5 R4 e! K0 r8 x/ O( q! o
4 a- S5 B* {! v# L
其實是多慮了,這只是特殊情況,沒有人會犯這種錯
& E. V, a( p& u2 b
我們在畫MOS的時候不是會把poly覆蓋在diffusion上嗎?
; f! U2 z+ n2 E" s( F0 U
其中的兩邊就是source跟drain,
2 ]+ l+ c7 G% [! {, r+ U8 U; Z
而poly跟diffusion覆蓋的區域就是gate
) y/ E7 M+ ^" s# S
這是無庸置疑的嘛~
- _& x2 T2 D9 S( D/ @# b9 f+ q7 F
MOS一般的digital操作我們知道就是在gate上施加電壓以使其導通或截止
2 J' x* Y- e; Y1 N5 o- R2 G' N
書上寫的意思是說poly我們都會使它超過diffusion,
5 K3 ~4 r/ ?% c) O
而超過多少則有design rule規範
& `( `1 |! c* |5 B6 ~% W: \
如果今天poly的某一端沒有超過deffusion,
; b; U+ }# S1 v) m& b. g
也就是說poly並沒有整個把兩塊diffusion區隔開來
% k" t, r. F) P" l* y f
這樣的話就沒有形成source跟drain
! F& `' ~2 g6 J) i: C% e
也就不算是一顆MOS,
' J0 n" B. v3 b6 F
所以書上才會說兩端短路,是因為根本沒有區隔出source跟drain
: }7 T3 P, S' N' I
4 ~+ r1 u6 K+ |) p }! D+ y! ^' ^
而λ只是一個單位符號,看看就好,
5 N( |! W. z U+ I3 g
他只是為了要讓看書的人大概知道幾λ幾λ,
5 L) e- }4 [$ |! [9 V K
這個rule跟那個rule大概的比值是多少,
+ f8 _, z4 d3 w( G, _
所以不用太在意,畢竟每個process的rule都不一樣
' O9 ~% ~" s J% r; ^- P. y
所以書上為了不想表示成一個定值
4 Z* \; F. u; E% E+ b( ?- t
就用λ來表示,意思相信也是希望讀者不要認為它是個絕對的值
% b9 N% X; s3 z" L" f
% S# j' H8 z) l2 ?
從您的發問可以看出來您是位剛入門的同事
+ x+ u& R. Z7 t5 w( A5 V4 A3 I
因此建議您書上的看看就好,design rule比較重要!
% p" g) G& m4 N( n; j
3 E, k4 ^5 V# t, j1 K) K
小弟的淺見!
2 \8 I$ R! d9 P% A
如果有不對的地方還請指教~
$ S3 j+ P+ }( g a# d1 P# F2 O9 }9 q
) q* p! i Z5 ]# X& `% y* }
[
本帖最後由 vlsi5575 於 2007-7-13 02:06 PM 編輯
]
作者:
君婷
時間:
2007-10-22 11:38 PM
使用cadence tools學習至今 發生了一個很大的問題 即LVS的除錯訊息根本幾乎不太明白其所表達的意思,無法直接從訊息中直接了解 就是指電路那裡節點有誤。
6 {+ j- r5 H/ _" J6 ^2 B
LVS的除錯訊息有教學網站嗎?因為小妹認為除錯花最多時間的地方乃在於LVS 而DRC本身就會顯示那裡的佈局不符合規局,所以小妹現在為了LVS的除錯能力很頭疼。
0 o4 k& d/ B, {' X
對於finster 副版主所提的LVS看法....
" t5 x4 [4 L; }+ q
小妹覺得將netlist與layout作 LVS比對時,netlist因為之前跑過pri-sim所以netlist本身一定正確,LVS有錯誤訊息 一定是Layout部份有畫錯。
) w7 \' G; y3 k' j' J1 A; N/ s
假設layout的晶體寬度與電路的寬度不同 所出現的錯誤訊息 應該是表示電路寬度與layout不符吧?
6 s( B7 d0 g4 [9 w2 E
而不是表示layout與電路寬度不符吧?
0 \& P! h; C) b# _5 k" _7 ]
不知小妹對LVS的想法是否正確? layout錯了 但除錯訊息卻都是表示netlist與layout不符 讓初學者以為是netlist錯了?
* T& @0 ~0 J9 o4 X
麻煩大大們提供LVS除錯經驗及是否有教學資訊 謝謝唷^^
作者:
egg
時間:
2007-10-23 01:01 PM
不知您是使用哪一套軟體去跑LVS
! Q* [7 ]0 A, h" _: ]: _3 w
dracula還是calibre
! U* J1 e4 Z4 ?$ ^
一般來說circuit轉出來的netlist file很少會有錯的
/ D7 u1 f% `( A& T: q4 ?
您說的layout mos width 跟netlist 的不符
! x7 \2 p7 z8 A" q
這不就是代表您所lay的mos有錯嗎?!
* o9 ?9 k2 I U# G3 v
怎會想去netlist錯了 = =
: w, V3 V' v' w4 Y
總覺得您把LVS report所要表達的意思給誤解了
# ?6 X% }% u9 x# R: j
LVS除錯大多數都是靠經驗累積的
5 o# D$ d* e+ ~, [& z2 R5 w" O
而初學者大多靠前輩帶著做學習debug的能力
, P, A) f) a2 @& g) a* E: g3 P' z
倒是沒聽過有教學資訊
# q# C# R4 K& q% Z+ b- ^3 Q& D
或許改天請版主開個專門把LVS驗證出現的問題
3 `% M" u; q/ f2 E+ v. _# ^
集中在一起的版好了 ^O^
作者:
君婷
時間:
2007-10-23 03:18 PM
抱歉 我所用的是calibre
; u# n. h/ i3 H. R
對於除錯訊息心裡的確認為不符部份 絕不會指netlist部份有誤,除非是後來schematic被修改過而忘了重轉一次netlist。
% x' w r2 W0 v7 b8 y0 o
假設layout檢查出有17個net s和netlist 有16個nets
5 g8 j! U7 m' ~' M1 g
就表示可能layout有某處開路 難到不會有可能是短路嗎?
2 V0 ?# R& O0 K+ A, y
9 w X7 M9 g @
假設layout檢查出有16個net s和netlist 有17個nets
~4 B8 J: W. j3 _6 J K- e/ U4 e
表示可能layout有某處短路 難到不會有可能是開路嗎?
1 M4 O n7 P$ o8 `
9 B7 j* G. r4 ?" P7 D
想請教calibre有沒很直接的指明就是layout處那裡開路或短路以及很清楚的說明就是那個一個點?
謝謝唷><
& A$ n) Z' a+ \& K! H
+ M# g. k# e3 `6 I7 J* z! X
小妹還想請教一下關於節點node在spice的定義,node指輸入端或輸出端的端點及2接腳以上連接在同一個點都算node吧...
$ J u4 y( x( k# ^5 W2 A, e2 ?
所以若2元件中有2接腳本來是連線在一起(只有一個node),若開路了 則在開路的2端也各算1個node於是變成2個node嗎? 謝謝
! R9 F9 q' ^$ C' U+ L
! s, M u6 z3 W8 }, S
[
本帖最後由 君婷 於 2007-10-23 03:40 PM 編輯
]
作者:
egg
時間:
2007-10-23 07:28 PM
假設layout檢查出有16個net s和netlist 有17個nets
, }! g9 w# a H4 e; u
表示可能layout有某處短路 難到不會有可能是開路嗎?
" _$ k, E4 n/ a4 _' C
Ans: 是的....不可能是open.....如果是open的話
7 c; _' `; j+ B
layout會多出一條net
0 h/ O: t6 R( m, i$ R" m8 ?
ㄟ....不知道小妹您有沒有開啟RVE
6 ?. y& R: i2 z5 ?
一般來說用RVE LVS來debug應該會很容易找到錯
* ]! Q* i' D: J* x. E
除了power&ground的short比較難找之外
( n* C1 _; X1 h8 g8 U! N. k& M9 G
照理說應不難除錯唷 ^^
作者:
sw5722
時間:
2007-10-24 11:17 AM
有些問題必須從半導體製程去解釋,比方說,
' x% E7 F7 a+ v
=====================================================
9 t' R/ v& \: y8 k0 W G \
Epd>=2λ :閘poly需超過diffusion的最小長度。若不超過話,在diffusion or Implant source/drain時,將使source/drain因為
6 z7 a2 o* t p; G' i( z# k) N
diffusion overlap而短路。
+ H9 ~0 M! m! Y y5 l: y
=====================================================
I. O9 q/ n0 Y
上述應該指的是endcap,如果layout上的poly是突出diff的,實際上製程廠做出來的型狀,是會往後縮,並且尾
+ `$ E% q# Q' ^" b+ \* f* |
端呈圓弧狀,為了避免poly縮進diff中,而造成s跟d導通,所設定的rule.
4 _; l( q0 g# B8 u% ?% D! A
當然有些比較特殊的mos不在此限,比如說可變電容之類.
, U3 K' x5 X6 k
妳把poly也就是gate當成一個控制s跟d的開關,也就不難理解了,妳後面所說的diff短路應該是指這個吧.
歡迎光臨 Chip123 科技應用創新平台 (http://chip123.com/)
Powered by Discuz! X3.2