|
回復 #20 ianme 的帖子
ianme版主說的大部份上沒有錯, 而我也認同spice的"奧義"的確就在手寫的部份.
' x" P* S0 x* e我必須說, 在我們剛開始帶實驗課的時候, 也不會直接就把composer教給大家,+ P E- y/ r7 Z! |9 a2 c
手key電路加上需要的分析指令, 一剛開始的確是這麼做的,9 T8 o, Q/ ]: P# @
到後來有需要的時候, 才把composer教給他們.) P7 R. X \. o2 U# {# C
; \! A* T/ g9 V" {+ _4 f8 b2 x當然大部份的designers...我想在學校的時候大家都不想這麼做...我的意思是, $ F- W. G: k4 ?7 U
的確每當改一次電路, 就要在composer裡做修改, 再轉出需要的netlist出來,
3 j K+ A+ i# r6 Z# Z2 C我也不否認這是一件麻煩的事情...even我自己也都嫌這個procedure麻煩.; ~, n# @- F$ f. Z1 D
舉個例子來說好了, 一顆op的電晶體可能沒有幾顆, 當你自己在設計的時候,
' k$ E$ M8 T2 E% K你當然有權利可以手key你需要的電路, 再上分析再來跑模擬, 因為的確這樣子比較方便比較快, 也能給自己省下很多時間.
# U0 }1 P2 c0 [1 E6 E' U重點是, 電路一大, 好比說一個高階的sigma-delta analog-to-digital converter, + V6 g! H3 y% u) C/ n+ U
若是沒有經驗的designers本身, 或是仍在學的學生都好,
, ~4 j1 h$ h4 J; v$ K/ ^! p能真正確保電路的hierarchy架構一層層做起來都是很正確的嗎?
( @( A: j7 V S4 M* ^你曾經因為遇過大電路hierarchy架構混亂, 在佈局驗證之後所產生的麻煩嗎?0 H2 M4 W) b* e* g
你曾經因為自己的大電路裡面某個小地方節點名字打錯了一個字母, 導致做LVS驗證時花上好幾天時間來debug,6 U! u7 t2 N3 s, G H- H0 l" D
最後才發現原來是某某小地方的節點名稱"就錯那一個字母"嗎??0 o3 I& U- v) _0 S7 N2 f
很遺憾的, 這些麻煩, 正是designers本身在release電路出來給layout之前就應該要謹慎take care的地方,. X4 K9 _$ P7 u) {9 `0 h
而因為這樣的問題而產生出來的LVS debug時間, 我只能說都是浪費掉了,
1 [+ X# L: Q6 [/ w4 S8 f. e+ h) v因為這樣的問題根本上它就不應該存在的. 不知道您能認同嗎?
9 h2 R/ G) e/ G+ E) s7 k) `- e) ^9 H7 f; ^* T+ z( g
您說"沒有那個必要把spice分成區塊"...不知您所指的意思是不需要有subckt的存在嗎?& @. Z2 B+ I. E9 f; B V2 ~
大概是您做的電路較小所以不需要吧, 就算是純粹類比這種比較小型的電路, - J& `1 ?9 {* B/ d
或even是混合訊號電路, 沒有subckt存在的話......我只能說是自找死路,
# v; p9 ?0 s a- O. b a% k"照看spice其實就能夠轉出電路", 照您這麼說也沒有錯, 不過看看是要花多少時間呢!!
& t+ |3 s% \( a類比或混合訊號電路可能並不適用gate count來算它們的transistors數量, 但這並不代表它們的佈局很容易.3 i7 p4 k7 ~) v/ f; `
所以, 恕我直言, 您可能真的沒有tape out過晶片的經驗, 當然, 若是如此, 您也遇不到這樣的麻煩./ @ l, g. I. n* w) F; b0 ~
# ~* O* }( q* a
但是今天我們必須要知道是, 學校的情況和公司裡的情況的確會有很大的不同.6 `7 n t- ^0 O
我不知道您所謂的小公司是多少人叫做小公司,
! p' r$ F# j, h( ~- d. L3 a8 x. ^我待過的公司都是小公司, 有五十人以內的公司, 有三百人以內的公司, 這些都被稱為是小公司.
- {6 V/ [- d7 o- T9 {/ K- L在學校裡面, 你自己是designer兼layout, 你的電路哪裡key錯, 就算你到做LVS驗證時才發現,
: B0 p- H+ `8 c! g這個後果也必須是你自己要來承擔, 是吧?? C5 x1 g$ V1 k' J8 Q+ |
學校晶片通常是搭CIC的shuttle, 若是因此來不及tape out, ) H% N, m$ w- `( ^9 _
小則等到下一個梯次再tape out就行, 萬一遇到畢業晶片潮, 則這個來不及tape out的後果就會是比較嚴重的了., D- S" B+ W( |. p0 K5 _
但在公司裡面, 大部份的晶片tape out是自己公司負責費用, 當然有時候也會搭foundry的shuttle,6 t l0 W. [2 d G
然而若是因為designers release出來給layout的電路圖之版本差異而導致chip tape out delay的話,
1 o; B1 E( X, C' A! E公司上面的大頭追究下來, 這個責任歸屬的問題, 可就是很麻煩且傷感情的一件事了.
9 U# u. l& Y! ]7 o& j) z$ c0 ^4 c+ z3 n l
當然我今天在業界服務過的時間僅只幾年而已並不長, 而我也必須承認, EE並不是我到業界服務之前所讀的科系, V: E& n- ~. N- W3 ~
所以很多東西我也都是在原本的學校畢業之後才學的, 包括要到業界服務之前的相關知識亦然.
- J7 ]4 ^6 }6 C5 S就算到目前為止, 許多理論和知識我也都還在學習的階段,
; r, q; K6 P" P8 I" I而我現在唸的學校當然也絕不是如您所在的"雖然哪裡都給去"的學校.( N4 y: m6 F3 p; P ?0 b
但是就任何一個在公司上過班的人來說,責任歸屬我想它真的是相當重要的一個問題, & S; D; q" Q( M1 C' Z0 ^5 O9 R6 R
以layout engineer來說好了, 因為這個佈局驗證的時間可是算在layout身上,+ x2 d6 Q$ D, F
要說我是自私也好, 怎麼樣都好, 我可不希望自己花了好幾天在LVS debug上面,
* L) O9 G; }1 X* w2 Y" t0 @. b到頭來卻發現原來是自己同學或同事設計好電路之後release出來的netlist裡有typo的問題.
. S3 t0 T9 X7 d簡單的說, 前面電路設計的部份, designers要怎麼做都好, ; O6 C6 w( m# f6 } ?
但是今天一旦designers released circuit給layout, * d3 E$ D9 J4 ?- M4 j: Y6 G2 v
或是已經released之後的circuit, 要再做修改, 再released一次新版circuit給layout,
8 l, A1 [) h. _- L2 ~這個consisteny絕對是designer必須要去keep的關鍵所在,
( ^4 B* l; `; y j j0 n對於有經驗的designers來說, 我不敢保證他們都不會有這樣的問題產生,
+ ]9 F$ h1 i1 J4 H3 z1 A但我知道他們會盡量去避免所謂"inconsistency"的發生,( X1 Q+ {+ H1 z- {: B
而我想這與公司的scale大小並不相關吧, 這是flow本質上的問題.' F% }$ O5 N* f! F
" s4 r |8 @( ?' {* `4 _0 v
當然, 之所以會有這樣的意見, 實在因為是我自己其實是太多次這種情況之下的victim.8 u& E1 ~+ l1 D: _
這可以解釋成我們實驗室本身的design flow之建構並未完全所導致,
# S# Y3 J' D6 a2 _也並不代表每個學校的每個實驗室都會有這樣的情況,2 K: T. I1 T1 a
所以我只是想提醒一下, 要注意這樣的情況產生, 如此而已.2 a* ]% u) A0 c d* \
& z. e( V: n3 d/ k. V: W
最後關於第5點, 我想您是誤解我的意思了.) o* W+ M. C$ o$ e' k( E$ b+ @
這個hierarchy架構的建立...如我所說, 它很難解釋, 但絕對很重要.' p" [4 p7 `; G
沒有實際的經驗, 恐怕它的確很抽象也難以體會.
' B) L1 L( l" M# Z q E但這與"整個設計的流程是以designer為主導,designer如果願意盡量配合layout者那是一種體諒,絕非義務"完全無關,
! j! D3 `$ Y# ^2 H- Q同樣的, 這是designer flow本質的問題, 難道您覺得一個ADC或DAC, 能一次做完整個chip的模擬嗎??0 v u0 c( O+ C% \; a
circuit simulation和layout designer一樣, bottom-up的circuit/layout construction絕對是一個requirement,
% {% R/ i! J+ T$ x; i+ E* l因此circuit designe及layout design的hierarchy架構兩者同樣重要, 而且必須相輔相成,
9 y! L ~& H' o絕對不是如您所謂"能做到是最好,可是不能一廂情願的希望別人如何做如何做,這不是好現象".% _# b4 r& p) B; X
因為這肯定不僅僅是一個"一廂情願"的想法或做法而已...這是本來designers和layout engineers都應該要知道的常識吧.$ T. I& M# q" g# x) w/ \
7 }; t6 W O8 h8 u, x; B2 d" Q最後, 當然, postsim本身抽出phsical design後的parasitic RC來, 再取代原始presim的circuit來做接近exact situation做模擬,
6 M! a" i# H7 }% q當然設計的時候就能夠考慮到process variation的情況, 但一個考慮夠完全的layout masterpiece能做到的,
( z# i4 y# C: Y; P, _或許比您所想的要多得多了.- w* j; Y5 {9 _# ]) D
相對的, 不好的layout, 其parasitic effect便會增加許多, 因此我也並不覺得什麼東西一定是要在什麼階段來考慮的.& x% u' E6 Q$ H
我的意思是說, 若layout考慮得夠周全, 如process variation和parasitic effect...etc的情況,- {! O2 {, \0 ]5 A# U. U- w0 H S# L0 K
肯定都還能在layout中再做補強...無論在design的時候, designers是否有將類似的factors考慮進去.9 ?% s# ~/ N$ M2 R
; w& \$ D' [) q7 \7 T" X* L
以上所言, 皆無任何冒犯之意, 若讓您覺得有挑釁的感覺, 那麼或許我的語氣字句表達不當, 請見諒海涵." M! b* L9 N3 p6 W
或許您還年輕, 感覺您的想法有點主觀, 且格局有點不夠開闊.
3 {9 T4 o1 ~) ^. A! R1 A試著跳脫純粹學術界的領域來思考或加以瞭解看看, 或許您能體會我想要表達的感覺.
' P$ Y/ B" o5 O, w
7 a% N: ?# u/ h個人淺見, 請路過先進指導, 感激不盡!! |
評分
-
查看全部評分
|