Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
查看: 44303|回復: 36
打印 上一主題 下一主題

[問題求助] ic layout工程師需要熟悉spice嗎

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2007-6-5 15:27:24 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
我是正學習ic layout的學生,而設計工程師設計好電路時自已會先跑spice作pre-layout simulation,但之後交給佈局工程師後直到作完verification後 就要作post-layout simulation ,就這部份layout工程師不就得很熟悉怎用spice作模擬分析了?
& {& v$ h2 A1 n' ?# Y請問大大是這樣嗎? 必須也要很熟悉嗎?
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂1 踩 分享分享
2#
發表於 2007-6-5 21:33:40 | 只看該作者

。。。

感觉不需要懂,因为我们根本就不会用到这方面的东西3 ^0 K: Z5 C" k' A
但是能大致看得懂电路结构的话可能就不一样了,: ?9 h0 E5 T+ ]* H
唉,可惜我还不能看懂
3#
發表於 2007-6-6 09:28:51 | 只看該作者
post layout simulation應該是要交給IC Design Engineer才是,我不很清楚大公司的作業流程耶。反正都是自動產生,熟不熟悉還好吧?
4#
 樓主| 發表於 2007-6-6 10:33:19 | 只看該作者
版主 版主 小妹我是正學習中的學生,不過聽你的回答 我較不再意公司規模的大小 倒是想知是不是有的公司post-layout-simulation就是由IC Design Engineer來作分析 才決定要不要讓layout Engineer作stream out 轉出gdsii檔^^7 l/ i9 F1 i/ w8 y- ~+ q5 X2 c
版主 你應該是ic layout Engineer吧^^ 是你們公司都交由IC Design Enginee 作嗎? 因為出事了是他要負責耶@@ 他壓力很大喔@@
5#
發表於 2007-6-6 21:32:14 | 只看該作者
我還是個學生喔~~還沒畢業去不了別的地方...雖然都給去...>"<所以我沒辦法回答你關於實際流程的問題,可是以小弟我站在一個IC Designer的角度來講,我是傾向於自己獨立完成pre-sim跟post-sim的,在我的看法中我認為這兩者是一體的,難以切割的,所以我覺得除非layout跟disign能配合的很好,兩邊都很清楚各自的流程跟整合中的問題以及雙方本身的問題,不然切割起來恐怕會有不work的疑慮,如果沒配合好的話...話說這樣不適合在外面生存吧XDD,我清楚這樣等於把責任都攬到自己身上囉~~不過就算要配合也要事前考慮完善,這樣就不會有出事之後在那邊推來推去的責任了吧?而且感覺這樣沒什麼意義!失敗就是失敗,沒有任何藉口與理由。上天是不會眷顧失敗之後停滯不前的人。
+ Q. c! \" ~- a. ]6 Z
% {, v7 v# {4 O* U: \0 W$ `以我自己本身部分的主修方面來看,除了電路設計的部份還有製程上的作法,另外也還有特別去CIC上過Layout的課並且自己在看過一下,可惜的是我沒有實際下線過的經驗,所以最近也在考慮說要自己tapout看看,配合在量測的課程學到的觀念做整套的,也許會讓自己在有點進步吧?
9 d0 Q8 E3 f# E& H; S9 u5 ?
4 M- B5 f! h3 y* Q# B$ U) {spice很難也不難!很多人覺得說會寫就自以為很懂spice了,實際上根本就不是這樣!spice就是電子學電路學等等的總和的結果,所謂的netlist就可以看出端倪,netlist顧名思義,可以理解吧?寫那也不過就幾行而已,但是重點是要知道在做什麼。spice是經由使用者描述電路節點之間的關係,透過內部內建的規則,以bsim3的精度來做運算,最後再經由使用者判斷與解釋,得到所需的結果。其實有點"專家系統"的味道所在,所以重點並非spice如何寫,spice兩大問題,一個是電路描述的問題,也就是電路結構與WL值;另外就是底下要怎麼給偏壓,怎麼下量測?這些都要回歸到原本的理論去探討,並非在spice上面琢磨。如果把spice當作高階語言在看的,那我想永遠是學不會電路設計的。今天就是因為如此,所以才不會像數位這樣入門容易。如果真的要學spice那真的太簡單了,隨便都可以學會,現在問題是:鐵劍配高手,削鐵如泥;神劍贈庸手,伐木不斷。
4 g4 I/ E1 r' a: l; ~( U* I2 ?# M) p. I
底下給個簡單的示範一下。隨手打打還請不要見笑@@1 m+ A- d. O# V& q4 o: ^2 d
$ Z& H1 ~6 Z/ A' O" {( d) }  i! c9 w
*123123*      *awave上面顯示之標題
- ^6 d; E& V! t: G9 `.lib XXXXXX XXXX   *model引入,還有使用的區域。1 u8 O' F0 y5 X

* I: X4 G1 p  f, a4 W0 I3 S- Z% vM1 Vdd Vin Vout Vdd pmos w=3u l=1u        *mosfet寫法:MXX  Drain  Gate  Source Bulk  Model  Width  Length/ ^- F" \. V2 q3 G
M2 Vout Vin Vss Vss nmos w=1u l=1u; u8 @  P9 [% [" v

4 Q- ~; T4 c- u& M) H  WV1 Vdd 0 dc 5                                       *給定偏壓,此為V1迴路,DC 5V* Z4 f3 l4 v, }, [
V2 Vss 0 dc 0- {) K6 }2 j+ ]$ ?0 h
V3 Vin 0 pulse(0 5 0 0 0 1m 2m)             *給定輸入,此為V3迴路,rail to rail 5V,duty cycle 50%,500Hz之方波
/ ^) [) h% ]' p& o2 T/ e( k; I) p& K0 D
.dc V3 0 5 0.1                 *做轉移特性曲線  @" s& N( s. z  v' ~( l
.tran 10u 4m                   *暫態分析5 V. w% K7 k5 G! _. Y3 m# y1 ?
.end
: h6 |. U" E) C  J3 D6 Y* w6 Z( ~7 H$ C5 m2 g9 c
差不多就這樣,反正什麼分析就是X軸是什麼單位,簡單明瞭。類比的話其實寫個幾十行就算蠻大的了。所以也沒什麼太多關於使用上的技巧。1 T3 M5 a7 ]6 [  Q6 G  P- e
1 ?2 v4 N. G+ @$ K8 X& D
.ac分析  X軸frequency' Y) V3 i; z$ t6 C0 [
.dc分析  X軸voltage
' p3 w- _: s, l( c4 |.tran分析  X軸time
9 [1 _1 L$ i, z3 w$ ]) m.op分析   工作點分析,到lis裡面看
- |6 l/ u( ]) u  M: j; _
# R. ^$ @7 t2 @$ h$ l比較常用的就這幾項。. c# A$ m& ]/ i- Y; D2 J/ K
# s1 p1 e$ a2 ?+ g
有什麼需求才跑什麼分析,不是什麼樣的電路通通抓起來跑整套完整的分析,那是會被笑的!比如數位電路跑.ac分析那簡直是笑掉大牙,不注重noise的電路跑noise跟蒙地卡羅也嫌沒太大必要,不是bangap電路跑溫度分析。% o$ e+ Q0 b! m! ]0 r5 w
" P+ a' H) w$ \9 c  F
再次強調,spice是工具,輔助使用,不是設計電路就靠spice就了事。上次去看對岸的號稱高精準度的給感測器使用的精準OP,一看offset 200uV,笑的肚子還蠻痛的...哈!那叫做沒切入問題核心,沒了解問題重點。如果說我上面打的都看的懂其實那就spice差不多了。
  E2 D$ X; i5 o3 h$ B
6 @5 D: @9 k' o7 y! r/ Y1 v7 o% t[ 本帖最後由 ianme 於 2007-6-12 03:48 AM 編輯 ]

評分

參與人數 3Chipcoin +5 +8 收起 理由
GGUANG + 5 分析透徹
bosscck + 5 資深帶老手 老手帶新手
jauylmz + 3 大大辛苦啦!花你不少時間來回答這問題。

查看全部評分

6#
 樓主| 發表於 2007-6-6 22:28:01 | 只看該作者
意思是說應該要懂電路原理和分析並依照電路所需要的分析決定跑SPICE時下什麼分析的命令,所以自已本身要懂的分析電路 才知要作什麼分析,而分析就照SPICE的語法格式去下命令 是這樣嗎?
0 `' s- h6 s0 d& ?9 O: [/ `3Q
0 @8 `( g- O' @: Q真正要學的是原理的分析 才知要SPICE幫你進行什麼分析是吧?+ C' p; `. G- F; q: @8 ]

* z% Y( [4 K) m[ 本帖最後由 君婷 於 2007-6-6 10:30 PM 編輯 ]
7#
發表於 2007-6-7 00:18:28 | 只看該作者
大致上是妳說的這個意思。要有理論基礎配合spice才會學到東西。spice不過就是個EDA tool,用cadance畫好他自己也是會轉netlist,或是用pspice也會幫你轉,沒有特別去學的必要。
8#
發表於 2007-6-10 15:59:19 | 只看該作者
我講一下我以前公司的情況
) o4 W4 F0 p1 V/ o& F類比電路工程師需要精通SPICE,同時也要懂得ic layout的畫法和注意事項,諸如layout match,ESD,.....等5 C3 H) l" c' F: S' T  E* o0 P% i
而至於ic layout工程師,不需要懂得SPICE,但製程流程與各個元件的畫法和技巧要很了解) o% w1 R; P2 I' b8 b
對類比電路工程師來說,電路模擬共分前後兩道,分別是pri-sim和post-sim,分別在於pre-sim是指layout前的模擬,沒有考慮到layout的問題與寄生效應' {- J* d, X) ?1 A# Z/ u+ M& t2 q
post-sim則是指ic layout工程師在畫完電路layout後,同時完成LVS,DRC和ERC後,抽完R-C的netlist file給類比電路工程師所作的模擬稱之為post-sim6 [+ h2 m5 ^; c: B/ p" k  ~
對於ic layout工程師而言,了解或者懂得SPICE語法對於類比電路工程師而言並沒有太多的幫助  n) W8 Y. r8 [
一個好的,或者優質的ic layout工程師,最重要的工作是畫好電路的layout,因為那是最直接影響電路的功能與performance3 g5 H. T& [! a) o
例如,一條50MHz clock path,用metal 1來畫,一個好的ic layout工程師會知道這條50MHz clock path要留意它經過的區域,同時要留意是否有其他干擾源在附近3 C3 a4 W) i9 z
例如,一個OP AMP的input MOS,它就特別需要注意,任何一邊不對稱或者不相等,就會造成電路的performance有著不小的差異$ R$ b8 j" E. i9 Q2 A
這些不是在SPICE語法中定義出來的,不過,這些關鍵卻是ic layout工程師需要注意且留意到的地方4 ^7 E1 q$ G2 d( T
1 }2 \% U5 i9 [: e, E
最後,我想提一點的是
/ J& N- y- J2 k- f. ric layout工程師的layout會決定電路的performance
. @( N* S" N7 d: E如我前面例子所言,一個OP AMP的input MOS沒有畫好,會產生出不小的offset問題,進而讓整個OP AMP的performance大打折扣
8 ?5 D+ u/ Y- `- F如此一來,類比電路工程師在作post-sim時就會發覺到pre-sim和post-sim兩者的差異甚大,甚至大到無法達到規格需求& @; ~* l' m6 m' w
如此一來,類比電路工程師只能要求ic layout工程師再修改電路layout,或者類比電路工程師再修改自己的電路
. G  }/ t0 V+ J5 S; H! r9 Q6 ?當然,我時常發現類比電路工程師只要查覺到自己在pre-sim沒問題,通常都是請ic layout工程師作修改
' J, e) ~5 C1 {" Xic layout工程師的重點在於畫好電路layout
* [. O# j0 U% F5 B4 _* b0 a而學習SPICE,則對於ic layout其實並沒有太大的助益

評分

參與人數 2Chipcoin +6 +1 收起 理由
semico_ljj + 1 + 1
bosscck + 5 感謝經驗分享!

查看全部評分

9#
 樓主| 發表於 2007-6-11 08:03:09 | 只看該作者
您好^^因為您提供的是業界的經驗,使得我了解了重要的一點就是IC LAYOUT對SPICE熟不熟悉對IC DESIGN不重要,但是像電路理論原理之類的書 本身理論並不會直接寫LAYOUT時要怎佈局才能避免發生什麼現象?及線寬或間距等! 而小妹我只知 依照最績極的設計規則 即採用design rule所規定的最小尺吋、距離來畫。所以佈局過程中要考慮的原理 反而不知是要看什麼的書?還是要有人帶你呢@@
10#
發表於 2007-6-12 03:33:39 | 只看該作者
對於你的問題其實很難回答
1 r8 P) z, K& {因為一個好的IC layout工程師應該要具備一定程度的電路設計理論,但,一旦IC layout工程師有一定程度的電路設計經驗就不會想從事IC layout的職務
) e; o2 K2 a2 U! C% o7 {, C' Z. e其原因是因為IC layout的職務較單調,不具變化,且薪資上和電路設計工程師有一些差距
( Y, T, }3 ^# C* f1 S% t6 }所以,電路設計工程師不會想作IC layout% O/ l- @1 j) o7 n
故而,IC layout工程師就就成非電路設計工程師所從事的職務,只是,IC layout又會大大的影響電路設計的品質與效能
% u+ \9 @5 H% Y. O
0 O% m: I1 g1 \/ K% B/ |7 t故而,一個負責的電路設計工程師在交付給IC layout工程師時,會特別註明電路中那些部份或者電路要作特殊處理,更詳細的會說明儘可能以什麼樣的方式來畫電路
1 f1 V( H6 S8 j: ~* e' m  E$ ]因為,只有電路設計工程師最清楚電路的那些地方最敏感,最需要特別處理9 D9 Y+ D0 s! x7 d& s# S/ s
同時,在IC layout工程師在畫layout時,電路設計工程師通常會要求IC layout工程師在畫好某些部份電路時,能先請電路設計工程師觀看檢視,看看有沒有需要修改的地方3 h8 Q0 E$ a. C7 _/ D
若有,則會請IC layout工程師作細部修改,若沒有,IC layout工程師就繼續畫下去
* C2 K( ^9 _2 }/ u而這,是在業界中電路工程師和IC layout工程師的互動方式$ i2 [& W* C1 ?6 S: _7 C" e
每一家公司的作法也許會有所不同,不過,大體上皆是一對一的互動
( L* P& N6 a, h* I% h8 J* A/ j7 p9 |- a: s
再來,一個沒有經驗的IC layout工程師,通常會由一位資深的IC layout工程師帶著入門1 y0 P# m) O% M# V; G
當然,每一家公司對於沒有工作經驗的都會有先期教學教育,對於那種己有數年工作經驗的大概都是直接上工吧
) o# g; i; G3 @0 C0 M: I( i而對於布局的方法和技巧,一些短期教育訓練課程都有在開,像交大,清大每一期都有一些訓練課程/ V2 Z+ J/ F% `) h
IC layout布局我並沒有相關的參考書籍可供介紹,因為這方面的資訊我大都是從短期的訓練課程中學習而來的
) k1 `5 P4 }- _# U再者,因為本身是電路設計者,我通常只交待電路的那些部份要作特別處理,細部的畫法則交由IC layout工程師自行處理
: q5 D8 ]1 T! Q7 n% B最後,我想提一點的是,IC layout很注重經驗,因為這一門職務的經驗值很重要,很多地方都是經驗累積來的,即使書上有教,但實際應用還是在個人的經驗值較為真實
" S5 A/ K0 V2 H" y% I6 D0 q0 U電路工程師通常會告訴你那些地方要特別處理,而資深IC layout工程師則是會教你那些地方要怎麼畫會比較好
11#
 樓主| 發表於 2007-6-12 09:40:40 | 只看該作者
感恩! 如果說具有電路設計能力的人來作ic layout可以成為最有價值的layout工程師,但薪資上的差遇 使得不願作layout,反正layout靠的是經驗  總之謝謝你,那我是不是只要熟悉軟體的操作 大致上公司肯錄用我機會就已很高呢? 站在學生的角色  應徵前可作的有?
12#
發表於 2007-6-12 09:51:41 | 只看該作者

回復 #11 君婷 的帖子

如果你是學生∼應徵前如果你會LAYOUT所有基本的元件(INV,NAND,AND,NOR,OR,DFF)等等,且你會跑DRC及LVS,那∼∼∼很多公司應該就會收你了,其他進公司再學。9 R$ G/ c$ P: M: N: U( O0 `9 k  w
如果你想高人一等,那∼∼看你會不會看的懂DRC及LVS command file,如果看的懂,你就高人一等了。# F! M; }  Q  j- O
如果你想超人一等,那∼∼就看你會不會自己寫command file了。9 \% i9 _! V: W# s& ?- T$ v
4 d& ~- w! v" h5 S, K
另外∼∼UNIX系統大概要懂,VI要怎麼會用最基本喔,我說UNIX大概懂是至少要會拷貝檔案,刪除檔案,建資料夾等等吧。
13#
 樓主| 發表於 2007-6-12 11:22:34 | 只看該作者
喔喔您講的很清楚 學生的方向,那我要熟悉tool的使用先 ,因為是學長帶我的,所以像drc, lvs根本很少錯誤訊息 ,同時也看不太懂錯誤訊息,因為其command file就看不懂了@@ 我想說看的懂的話跑LVS的錯誤訊息 應該也能很清楚要修改那裡@@
; Q, E0 i3 K& R我現在最大問題是看不懂command file 而撰寫 那個是晶圓製造廠 它們寫的吧 ,方便它們製造而已!: Y2 O1 N6 y/ s2 J( j! X7 L
版主大大 小妹我暫時剩一個問題就是 如何看懂 command file ?這是有書 且有語法的嗎?@@
14#
發表於 2007-6-21 03:26:29 | 只看該作者
1 spice 對ic layout 是不太需要,但是還是需要跑過基本的驗證 pre sim ,post sim,這是好的layout工程師
6 Y. R0 e' p+ P$ k4 o: n$ K8 M& T3 ?
* U8 [* F# G0 @$ K2 看的懂電路的動作原理,是更好的layout工程師,4 o- Z' n* U( U( H5 n& l

3 t/ O6 B5 @; x9 u1 k* o) i: r; s1 r3 能跟ic designer做好事前的溝通,互相瞭解所需,才是完美的layout工程師
$ U) J, k; q' n; z7 k
. z: F2 f/ u6 V$ I不過大部分遇到的,都是第一種比較多,其實這兩者是相輔相成的.
15#
發表於 2007-6-21 03:38:04 | 只看該作者

回復 #6 君婷 的帖子

沒錯,會用分析看出電路的好壞,才是重點,只懂得下指令,只不過算是文書處理階段,離設計還滿遙遠的.不過一般外面公司
) t& ]9 }% C4 |* `5 \還真的滿常用spice的,因為這是最便宜的soultion之一,畢竟spice沒有比視覺化的介面好用,要作太複雜的分析,指令就一堆了,
9 R/ y2 Z& x1 I. B要跑RF更是麻煩,通常適合小型的電路架構,倒是很方便,要是電路太大可能有只有設記者自己才會想看netlist檔吧.
16#
發表於 2007-6-22 23:45:58 | 只看該作者

回復 #14 zannx 的帖子

spice視覺化不見得比較好用吧....也有pspice阿,也不見得就輸給hspice,畫圖不見得比打字快。spice問題是在於收斂度的問題。太大還要很準就會很慢。
- z* ]" S: t9 o2 }( X2 o8 G- f& b2 Y/ l
重點就在於有這樣的能力誰要去layout......
17#
發表於 2007-6-23 14:37:59 | 只看該作者
看了以上的回覆, 其實我也有一些想法, 想提出來和大家討論一下.
+ a% `6 c$ x' _. d$ h" clayout實際上需要注意的地方, finster副版主的說明已經夠詳細了, 所以我大概想要說的是一些心得吧.
, n. S* m& ]$ B) u9 ^' b5 y5 U# ?& {
1. 實際上, 我並不覺得layout工程師可以對spice都不瞭解.
+ A4 g8 T3 `4 j5 V9 l- kMore specifically, 在hspice裡面, layout engineers必須至少對netlist部份的電路描述瞭若指掌才行.
7 z& z( V  K/ H至於模擬的分析部份倒是可以不必了, 反正以ic layout engineer來說,
' H: }1 |5 W/ t6 B' F在拿到netlist file要做LVS verification的時候, 分析的部份也在netlist裡也已經看不見了.
. M4 T( l" N2 n# S; d2 i! d7 Y當然在一般的公司(就我自己所待過的公司來說啦)裡面, 的確ic layout engineer的工作大略上會是:  w0 B! ~" N; d4 W. J. N3 E2 @" V- Z5 u
拿到designers release出來的電路圖-->layout-->DRC/LVS/PEX抽出結果-->給designer跑postsim5 e* v5 z4 W) `' e2 M$ ?7 J0 h# U. {6 p
但是在驗證的部份, 尤其是LVS驗證時, layout做久了, 難道你不會遇到一些莫名其妙的問題產生嗎?/ X* w8 v( e6 C  L5 g
例如怎麼看這個layout和netlist就是對的, LVS卻會report出奇怪的錯誤而導致驗證無法成功,
$ \! T& Y  b4 f8 O# G! X這個時候, layout engineer還能對netlist的內容不熟悉嗎?
6 Z, D- c2 q7 X1 P. U3 `+ d9 T這樣子的時候, 最好是連designers自己都必須看得懂LVS report和LVS command file吧!!0 D$ W! {. q( k" \7 t! _2 }
以前我曾看過同事有類似這樣的問題發生, 連designer都要坐在旁邊幫著看到底他給的netlist有什麼問題,4 J3 w: C; `( e' w% G( r
類似typo(有時需要手動置換gnd或任何node, 可是在一個超級大電路的某處, gnd被typo成gdn)的問題, 0 V: R! t8 _& M' y" X
想想看, 兩個人四隻眼睛, 要花很多時間去找??5 h5 b, P, K* L* H) p+ N3 k& d
& }5 c6 m; O5 J  w6 Q+ }# c
2. 站在公司的分工上來看, designers當然需要去take care presim及postsim的流程,
  `7 g7 c9 |# R; M除此之外, designers當然也會需要對layout有一定的"瞭解"...
* N+ K2 V2 `6 c* F, m' s: O此處所謂"瞭解", 倒不見得只是designers自己會"畫", layout上的一些方法及conventions也要知道才行.& n( k+ Q. @4 `) `, R! V! j
大部份的designers至少都有碩士學歷, 而碩士班要畢業, "通常"老師應該會要求要下前瞻性晶片吧.
$ P# g. W; p/ `- G' b- G我也曾經看過碩士畢業生design得很不錯的電路, 自己的layout卻差強人意, 不過不管,
- y7 g6 j3 G* U; n前瞻性晶片過了, 就畢業了, layout好不好是另外一回事...也沒時間再回頭去管這些東西.8 H* i, Q! A1 ?' m$ s6 W
我不否認類似這樣的情況的確經常發生...
) W: P+ B! _. J2 _, Y有時候不見得只是designer, 連學校老師都會有這種情況...
: L6 D  G3 O+ i, u有的老師或許會覺得layout不過就是一些專科畢業的人在做的工作,
+ N) y* Q5 i5 A1 _/ S: d2 b可能老師知道layout的好壞對一顆晶片的成敗之重要程度,
& l- ^& @" s( p: R但是實際上在"做layout"時候會發生的問題或現象等等, 他們可能就比較缺乏這方面的經驗了.
0 u) @: V& _; {; `% U# G- s) n+ @例如, 前幾年我還在業界服務時, 曾經遇過designer要求我把電晶體畫成八角形,再把八角形的電晶體擺成六邊形,; P( m6 m$ L$ j/ D9 T) N
當時......我無言了......到現在我還是不知道那樣的東西要怎麼做.
! a: _( P. C4 G: I有的designers會覺得, layout就是layout嘛, 我叫你怎麼做, 你就照著做就好啦, 難道你會比我懂design嗎?
/ |0 s- ], s! D1 G說得基本上沒錯, 不過有些東西在layout上實際上就是做不到,
9 L; n$ O& z7 V2 @) E有時候designers(或even老師都好)在這一點上或許該有點sence會比較好.( {4 x4 d/ y& ~4 h& ^
4 j7 F- X8 G0 J: `
3. EDA tool的使用的確是layout engineers必須一定要熟悉的重要環節,: ~8 q& p; R* B
以在學校來說好了, 下晶片的deadline經常就壓在layout這個procedure上面.
! T/ E! Z1 n" j& N' f有的人even連postsim都還來不及做, 晶片就出去了.4 B+ J  t; _" T
這當然並不是常態, 也絕對不會是一個好現象, 可是我只能說, 這是一個比較殘酷現實的情況之反映.) C, K8 \) G+ J3 z7 W. M0 T
沒做postsim, 先不管process variation好了, 你怎麼知道你的晶片實際layout, fabricated出來會不會動??7 a' z$ h: g8 w8 T
相對的, 我也曾經聽說過有的實驗室不用下晶片, 只要模擬有跑出來就好了, 你就畢業了.
' M5 f( J! @5 H: b, i$ g但是事實上我是這麼想的, 無論自己的電路設計得多好, 無法把它做成晶片出來量測,3 U  Z* c1 o6 x  R) W; M
其實就等同於紙上談兵, 沒有夠solid的證據證明自己的晶片設計的確優良.
4 c: @) ?3 E& B, P3 Y. o也就是說呢, 優良的電路設計, 也要搭配上優良的layout, 一個晶片work的possibility就能提升了.
4 r! o! D4 j9 ~$ B" w' E$ Y優良的layout包括了很多層面, 有的東西即使在書本上的知識你都讀懂了, 讀通了,# g% Z' f. [8 j
但是實際在做layout的時候是否知道如何去實行呢??
, v1 \# X% q8 `% ?% t3 |' [所以呢, 我覺得啦, 對學生來說有一個好處就是能下教育性晶片,
1 k: P# h  `! X" ~, [所以呢, CIC教育性晶片的制度我真的覺得很讚, 設計一個簡單的電路就好,
0 B# Q2 v* F' N3 [' O然後自己真的完整的做出一顆tape out出去, 再等它回來拿去量,
$ l) ]6 ?& c) W% L' `3 i無論是work也好, fail也好, 能完成整個實際的流程的話, 這樣都還比較實際一點吧...

評分

參與人數 2 +6 收起 理由
yhchang + 3 Good answer!
sjhor + 3 回答詳細

查看全部評分

18#
發表於 2007-6-23 15:24:36 | 只看該作者
真抱歉, 補充的東西打太久, 超過30分鐘, 系統不讓我編輯了, % ~7 f; }5 H! ^) e% N
所以我再寫在另外一個回復裡, 請見諒!!!" t3 g1 F5 m( _

" C( C7 z- p0 [! Z6 V4. 忘記補充一點...我個人覺得, 電路圖的呈現是很重要的,
! U- `1 T  s, O& Y3 e, e即使你的電路很簡單, 用手敲hspice file比畫圖來得快很多, 我想也都還是應該畫成電路圖會比較好.$ _$ Y; Y3 ~7 k! O9 s# x( k" q
這裡說的電路圖是像virtuoso schematic composer 畫出來的那種, 可以用來加上自己所需要的分析去跑模擬的電路圖.
! j# ?$ j) k2 K: ?' q) g這份電路圖的功能, 我覺得第一, 是要維持designers與layout engineers目前手頭上有的電路圖之consistency.
6 g, R% M! y* k* }# \當然我也數次遇過designers改了電路, 卻忘記update一份新的電路圖給layout engineers, 以致到做LVS的時候才發現有所差異,1 J2 m$ X: i  V# V/ m1 X) l
可是那時才發現有可能已經太晚, 已經做好了的layout經常是很compact的, 要去做compact layout的更改通常並不容易,
/ @+ c0 p( d  d/ z4 t, m# _不過這是另外的issue了.
# D8 t( r4 f/ J5 ?5 w我想說的是, designers做好的電路圖, 可以給自己用來跑模擬, 也必須把它release出來給layout engineers,
* a9 A& @  }/ R$ P, o; P- l當designers有修改電路時, 要立刻update給layout engineers, 押日期做檔案版本確認...etc.$ p) u, E% {! k  N1 F; i5 G9 L
以上是一般公司大略的流程.4 J4 F1 p( r' i- N7 \  G" [9 ?
而這公司的流程, 我強烈的覺得在學校裡也必須如此實行.3 G, E" d5 C! w1 J& D2 J$ {. X2 E
我自己幾年前在業界服務過, 擔任layout engineer的職務,
4 c+ \' e* f9 U1 r* w% e所以我在到學校實驗室之後, 在還未能開始電路設計, 僅在學習階段時,3 n3 L& _+ w$ C& Y& e% N
實驗室的full custom 晶片佈局都是由我一手包辦.% V1 G! g# R3 F
在我幫忙電路佈局時, 其實他們設計的電路都是用記事本一個一個subckt手敲的, 然後再加上要分析的指令.
$ G" ]9 K6 M7 A; q; j可是今天要做佈局的人是我, 我的腦子裡可沒有他們的電路圖, 所以他們必須用手畫, 或用visio...等等什麼畫圖工具都好, 畫一份電路圖出來給我.
& c8 \+ m# x1 {/ O# t% @+ s在這樣的procedure中, 只要一不小心, "inconsistency"就發生了, 相對的, 也會造成後續很多的麻煩, 在debug時浪費很多時間.9 r% |2 _! \& M# h' q9 t
手敲電路對於小電路來說絕對有其便利性存在, 因為我想改哪一顆的W或L, 或哪個bias voltage, 我就直接改就好啦,
0 o9 t8 t3 `" q3 P5 _! k4 b6 C' _even是一些logic gates, 像INV, NAND, NOR...etc, 的確我必須承認, 畫圖不見得會比較快.
& ^, D( H% {8 i" p; T# n9 N要改什麼設計參數的話, 也不用再到電路圖上改, 因為那樣子的話還要再轉一次netlist出來, 好像顯得挺麻煩的.
) m4 R# C) ?' R  Z但是, 往往就因為貪圖該"so-called""便利性", 使得layout後做LVS驗證之時, 這個"inconsistency"出現了,
( x# G* d% s( e我們通常從layout裡去找到底哪裡接錯, 哪裡open, 哪裡short...etc, - B9 P4 K1 x3 w$ v" v
找到最後, 才發現是design的人給的手畫電路圖畫錯, 或是他手敲hspice file的時候敲錯...然後再改netlist或圖, 當然也有可能動到layout...etc.
! \, Q7 D, H) X# W7 c; p" N4 _這樣繞一大圈的程序好幾次花掉我很多時間, 所以這個"consistency", 是我想要特別強調的地方.* K" u% |( i$ c2 }- j

+ U. g0 `" M) e' X) C# I5. 然後是電路hierarchy架構的建立, 這個我想也是很重要的一點,1 K  w& ]& k$ j) }7 ~2 k
不過這個hierarchy的概念有一點點難解釋, 總之大概就是說呢, ' H: ]6 ^& `% v; V4 Z$ P7 C
我們無論是在做電路或是layout的時候, 都必須要有很強烈的hierarchy架構建築在我們的腦海中.
% }! R' e/ s' u8 D9 O2 [. J4 Z今天一個layout的sub-block完成後, 其實應該都要能夠找到一個相對應的subckt來做LVS的比對,
- @) z7 b* }+ T- r% r- Z0 Q由bottom到top cell都必須遵循這個原則來達成, 這樣會比較好.
6 r; Z% M5 i* o一方面對自己來說, 至少bottom cell已經做過LVS驗證, 到了上層的電路時若發現LVS驗證不過, 至少能夠確定大概是發生在這一層的問題,
: n& n9 U; m  a8 H' i2 V2 p) |而不會是沒有方向的, 盲目去找究竟LVS的錯誤到底是在哪裡產生的.3 Z% D3 L+ G5 V5 w7 `
而Layout要能做到hierarchical的LVS驗證, 則netlist也必須corresponding的subckt才能做比對,
! L3 U9 z, I, D) D因此這個hierarchy架構不只是在layout時重要, 在hspice file/netlist中的重要性也絕不遜於layout本身.% U! D3 O% W0 F6 O
其次, 若是在公司裡面的話, 有時候...或許還蠻常的啦, 會遇到要拿以前人家做好的layout來改版的情況發生.
2 u( W- D0 ^' ~: ?9 g$ Q要是當初人家的hierarchy架構沒有做好, 整個晶片都是flat的, 或是hierarchy架構做得不對,
7 I4 A& p0 w/ }& ?& k4 M) _  h& F那麼你能想像, 當自己要接手做修改的困難度有多高嗎??" ?$ y0 U& {% [) F1 h4 c3 w' G* f5 @
或許hierarchy架構的觀念這樣講起來有點抽象, 不過它真的很重要, 希望有需要的人可以稍微體會看看.
* U/ a0 d; k! C7 u, R( ^( f8 k5 ?" i5 J$ o
以上是個人一些小小的觀點, 或許有些東西過於冗長, 請路過先進不吝給予指教, 感激不盡!!

評分

參與人數 3Chipcoin +21 +4 收起 理由
semico_ljj + 1 + 1 细致
sjhor + 3 感謝經驗分享!
heavy91 + 20 太強了!!!!(崇拜中)

查看全部評分

19#
 樓主| 發表於 2007-6-23 22:30:25 | 只看該作者
果然是不錯的經驗談 ,同時也了解剛踏入業界時剛開始要注重的學習方向之一!) T% x: c4 |5 E$ z
一個 layout engineer 務必要看的懂netlist檔及Lvs command file 否則LVS verification時常會除錯很久,但聽您這樣說 ,另外發現與design engineer間的溝通協調 變很重要,若協調的過程中因為意見不合 對方不滿 認為他是設計工程師 要你改 就是有權要求你 ,而layout engineer 做這工作就真的滿辛苦似的 只能期望與 你合作的design engineer是位願意溝通協調的人,這點令學生的我感到有點擔心,這份工作合作娛快與否 似乎在於溝通協調。
% D7 n* u! n+ _, c
1 o7 Q# M. L1 c, B4 W" a) j這是小妹 目前暫時的想法罷了  謝謝!

評分

參與人數 1 +2 收起 理由
sjhor + 2 學的很快唷!

查看全部評分

20#
發表於 2007-6-24 19:48:10 | 只看該作者
我的看法不太相同,我認為spice精隨在於手寫的部份,實際上再做的時候一定都是visio電路圖配合打指令再做的,有時候要跑分析,還要去改動電路圖,這是相當沒有意義的事情。任何一個IC designer都不會想這樣做的,要去cadence畫那個電路圖要等到後面的事情,前面根本沒人這樣做。一定都是先全部弄的差不多才會開始cadence的流程。
- ^) n. D, c3 K6 @. V' A. V; Q4 Q0 C; n6 M) g
再來,postsim主要探討的是寄生元件的問題,並非製程variation的問題,設計的時候自然可以去考慮製程變動的狀況,剛好目前我就正在做這個區域。這不是等到layout再來探討的問題,兩者之間有所區別。& Q, B( H# S0 C. ?3 ~+ Q
+ q" k: z- Y" X1 p* e
而且這樣的方式只有在大公司有所需要,學校裡面或是小公司,都會是單人包辦到底,所以這樣的流程在學術單位裡面根本沒有需要也沒有必要。因為這樣達不到學習目標或是作事效率。而且這說法有矛盾,如果layout的人可以懂spice就沒有那個必要把spice寫成分區塊,如果看不懂那寫那樣也沒什麼意義,而且照看spice其實就能夠轉出電路了。
7 O" o! B; V" F3 i% _) y# d1 P% F- h5 ~( m5 S: z) E; x
而且第5點更是難,每個人都有每個人的風格,怎麼能夠要求硬要跟自我風格匹配呢?我覺得有些看法是站在一個layout者的看法,設計上是要兩者互相配合沒錯,可是要要求designer一定要怎樣怎樣恐怕溝通就會有問題了,整個設計的流程是以designer為主導,designer如果願意盡量配合layout者那是一種體諒,絕非義務。感覺有點本末倒置囉。能做到是最好,可是不能一廂情願的希望別人如何做如何做,這不是好現象。/ a' V! A/ \4 Z9 a
- M9 a! [# Q5 w
[ 本帖最後由 ianme 於 2007-6-24 07:49 PM 編輯 ]

評分

參與人數 1 +5 收起 理由
mt7344 + 5 Good answer!

查看全部評分

您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

首頁|手機版|Chip123 科技應用創新平台 |新契機國際商機整合股份有限公司

GMT+8, 2024-5-21 04:57 PM , Processed in 0.132017 second(s), 18 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表