Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

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

。。。

感觉不需要懂,因为我们根本就不会用到这方面的东西1 V6 M" U( e8 Y9 C# S- A
但是能大致看得懂电路结构的话可能就不一样了,( z. K4 A2 U/ d. T0 K1 F) ?7 |
唉,可惜我还不能看懂
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 T; {# J" i( _, w# t& l. `" @版主 你應該是ic layout Engineer吧^^ 是你們公司都交由IC Design Enginee 作嗎? 因為出事了是他要負責耶@@ 他壓力很大喔@@
5#
發表於 2007-6-6 21:32:14 | 只看該作者
我還是個學生喔~~還沒畢業去不了別的地方...雖然都給去...>"<所以我沒辦法回答你關於實際流程的問題,可是以小弟我站在一個IC Designer的角度來講,我是傾向於自己獨立完成pre-sim跟post-sim的,在我的看法中我認為這兩者是一體的,難以切割的,所以我覺得除非layout跟disign能配合的很好,兩邊都很清楚各自的流程跟整合中的問題以及雙方本身的問題,不然切割起來恐怕會有不work的疑慮,如果沒配合好的話...話說這樣不適合在外面生存吧XDD,我清楚這樣等於把責任都攬到自己身上囉~~不過就算要配合也要事前考慮完善,這樣就不會有出事之後在那邊推來推去的責任了吧?而且感覺這樣沒什麼意義!失敗就是失敗,沒有任何藉口與理由。上天是不會眷顧失敗之後停滯不前的人。1 E- ?3 E& l1 x1 [" ?0 S

1 m8 w& T/ Y* \7 X# h( O; {: N以我自己本身部分的主修方面來看,除了電路設計的部份還有製程上的作法,另外也還有特別去CIC上過Layout的課並且自己在看過一下,可惜的是我沒有實際下線過的經驗,所以最近也在考慮說要自己tapout看看,配合在量測的課程學到的觀念做整套的,也許會讓自己在有點進步吧?
- c3 ?( Q* q4 P: P! h, f$ I
5 J7 h* B' _2 d* {( Z6 s! r: jspice很難也不難!很多人覺得說會寫就自以為很懂spice了,實際上根本就不是這樣!spice就是電子學電路學等等的總和的結果,所謂的netlist就可以看出端倪,netlist顧名思義,可以理解吧?寫那也不過就幾行而已,但是重點是要知道在做什麼。spice是經由使用者描述電路節點之間的關係,透過內部內建的規則,以bsim3的精度來做運算,最後再經由使用者判斷與解釋,得到所需的結果。其實有點"專家系統"的味道所在,所以重點並非spice如何寫,spice兩大問題,一個是電路描述的問題,也就是電路結構與WL值;另外就是底下要怎麼給偏壓,怎麼下量測?這些都要回歸到原本的理論去探討,並非在spice上面琢磨。如果把spice當作高階語言在看的,那我想永遠是學不會電路設計的。今天就是因為如此,所以才不會像數位這樣入門容易。如果真的要學spice那真的太簡單了,隨便都可以學會,現在問題是:鐵劍配高手,削鐵如泥;神劍贈庸手,伐木不斷。
6 R0 @$ S4 T/ M; G8 }+ @  g
7 H! B1 S. [' I底下給個簡單的示範一下。隨手打打還請不要見笑@@
8 \4 B. ?2 p4 C0 }: g7 ]! F
" h, G2 `) Q; _. p*123123*      *awave上面顯示之標題
( {- L$ p+ A6 o: l; K' ~0 {.lib XXXXXX XXXX   *model引入,還有使用的區域。3 ?+ Q0 s: i' e- T, Q& {  T) T8 `

; N/ q- i9 L; S! CM1 Vdd Vin Vout Vdd pmos w=3u l=1u        *mosfet寫法:MXX  Drain  Gate  Source Bulk  Model  Width  Length
6 q. F. g9 [4 y4 a# z- ~4 O8 sM2 Vout Vin Vss Vss nmos w=1u l=1u
; v; S; J: N0 p+ u
' z, e" D2 L3 F/ R# R% Y5 zV1 Vdd 0 dc 5                                       *給定偏壓,此為V1迴路,DC 5V& o8 B' W9 r) e
V2 Vss 0 dc 0
- h# I, c7 ~2 j4 g8 _$ a# lV3 Vin 0 pulse(0 5 0 0 0 1m 2m)             *給定輸入,此為V3迴路,rail to rail 5V,duty cycle 50%,500Hz之方波
8 z; Y0 C! \5 d3 _( U5 U- p
3 {) ~& N0 `( t) H5 c.dc V3 0 5 0.1                 *做轉移特性曲線
4 T/ B. \0 V1 |$ E9 T9 G.tran 10u 4m                   *暫態分析
% H/ }6 g& H! c.end
9 o4 H! b0 b) y$ c
8 z7 \9 M( V  g* u; y+ _差不多就這樣,反正什麼分析就是X軸是什麼單位,簡單明瞭。類比的話其實寫個幾十行就算蠻大的了。所以也沒什麼太多關於使用上的技巧。3 \' Z! v7 B! t/ H6 Y
7 ^& H" A! ~* C) ~* V# T( z2 U# Z
.ac分析  X軸frequency
* n9 }8 p5 X$ M% E: E, N5 q& I.dc分析  X軸voltage
! ?1 Q: d8 B' K7 o.tran分析  X軸time. P3 u  g' c& ?3 v, [9 n9 L
.op分析   工作點分析,到lis裡面看
  h* G) ]8 j. C! l  n. P' w# |' _1 M% b+ D% u
比較常用的就這幾項。) U9 Q/ M1 u  i& q) c) n
9 _9 ^  Q  t! T( U  s/ _3 a* n, ~0 z
有什麼需求才跑什麼分析,不是什麼樣的電路通通抓起來跑整套完整的分析,那是會被笑的!比如數位電路跑.ac分析那簡直是笑掉大牙,不注重noise的電路跑noise跟蒙地卡羅也嫌沒太大必要,不是bangap電路跑溫度分析。
8 L0 R8 B- D+ h7 V  Q! ?. e) y+ }" {* O# B7 ~# v+ \" `
再次強調,spice是工具,輔助使用,不是設計電路就靠spice就了事。上次去看對岸的號稱高精準度的給感測器使用的精準OP,一看offset 200uV,笑的肚子還蠻痛的...哈!那叫做沒切入問題核心,沒了解問題重點。如果說我上面打的都看的懂其實那就spice差不多了。
( B7 s) Z" @8 F5 ~
6 m/ G7 \* z4 k) l1 Q7 D[ 本帖最後由 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的語法格式去下命令 是這樣嗎?: B4 [7 q+ R% D" y4 |; l
3Q0 l8 L: M  o, V; {) n6 t
真正要學的是原理的分析 才知要SPICE幫你進行什麼分析是吧?
6 I: W: Z1 Q# T. w' X0 h7 i8 S- f7 p) [$ q9 F8 @: d
[ 本帖最後由 君婷 於 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 | 只看該作者
我講一下我以前公司的情況) a5 n: T  B. D& X$ o
類比電路工程師需要精通SPICE,同時也要懂得ic layout的畫法和注意事項,諸如layout match,ESD,.....等
$ J; m  L+ z' k% q* {. g% i$ \1 D而至於ic layout工程師,不需要懂得SPICE,但製程流程與各個元件的畫法和技巧要很了解
' f. k6 k7 L) B- O- p對類比電路工程師來說,電路模擬共分前後兩道,分別是pri-sim和post-sim,分別在於pre-sim是指layout前的模擬,沒有考慮到layout的問題與寄生效應
4 B; |" _7 h( s2 x$ ?0 p5 n/ A* Tpost-sim則是指ic layout工程師在畫完電路layout後,同時完成LVS,DRC和ERC後,抽完R-C的netlist file給類比電路工程師所作的模擬稱之為post-sim
# U! u3 b8 f/ [8 m8 C對於ic layout工程師而言,了解或者懂得SPICE語法對於類比電路工程師而言並沒有太多的幫助  F6 B7 f( k4 ?5 J& q/ ]9 x
一個好的,或者優質的ic layout工程師,最重要的工作是畫好電路的layout,因為那是最直接影響電路的功能與performance! z  a% Z+ Q7 _4 U( R/ I
例如,一條50MHz clock path,用metal 1來畫,一個好的ic layout工程師會知道這條50MHz clock path要留意它經過的區域,同時要留意是否有其他干擾源在附近
+ j3 c3 _9 \& X2 c; L例如,一個OP AMP的input MOS,它就特別需要注意,任何一邊不對稱或者不相等,就會造成電路的performance有著不小的差異- U; F6 C) c. [; b# _
這些不是在SPICE語法中定義出來的,不過,這些關鍵卻是ic layout工程師需要注意且留意到的地方. Q1 ]+ f$ M( D& T  x1 z* j

% z. t( W& d6 h4 l最後,我想提一點的是6 V3 O: g) ^% _/ L) b5 |0 T8 P  x
ic layout工程師的layout會決定電路的performance' W- n$ [+ r6 J2 V
如我前面例子所言,一個OP AMP的input MOS沒有畫好,會產生出不小的offset問題,進而讓整個OP AMP的performance大打折扣3 X4 ?" ?6 D' R
如此一來,類比電路工程師在作post-sim時就會發覺到pre-sim和post-sim兩者的差異甚大,甚至大到無法達到規格需求! _" h. ^& ]4 l+ w
如此一來,類比電路工程師只能要求ic layout工程師再修改電路layout,或者類比電路工程師再修改自己的電路
9 k  e2 h0 H8 o$ ^. M7 @0 p9 o% N當然,我時常發現類比電路工程師只要查覺到自己在pre-sim沒問題,通常都是請ic layout工程師作修改
: |, r0 j* k2 a8 X; j" Aic layout工程師的重點在於畫好電路layout+ I# \0 r* Q& [$ [' S
而學習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 | 只看該作者
對於你的問題其實很難回答
7 @1 \/ n8 H& ~, X$ g; P9 K2 h因為一個好的IC layout工程師應該要具備一定程度的電路設計理論,但,一旦IC layout工程師有一定程度的電路設計經驗就不會想從事IC layout的職務5 n1 F4 W. P' w) h4 \6 S
其原因是因為IC layout的職務較單調,不具變化,且薪資上和電路設計工程師有一些差距
; _, c; n% z4 i# t所以,電路設計工程師不會想作IC layout  Z% X; k- v# a7 z' Y9 ^# c
故而,IC layout工程師就就成非電路設計工程師所從事的職務,只是,IC layout又會大大的影響電路設計的品質與效能% T8 p9 Q5 S' l, u- s  n- a' h6 K
; T9 o% j6 E8 _; G
故而,一個負責的電路設計工程師在交付給IC layout工程師時,會特別註明電路中那些部份或者電路要作特殊處理,更詳細的會說明儘可能以什麼樣的方式來畫電路- P) m9 j' J0 a9 ]% @
因為,只有電路設計工程師最清楚電路的那些地方最敏感,最需要特別處理
' C& W8 |7 x* G, v, ~+ }同時,在IC layout工程師在畫layout時,電路設計工程師通常會要求IC layout工程師在畫好某些部份電路時,能先請電路設計工程師觀看檢視,看看有沒有需要修改的地方7 j5 T+ I/ o, z8 d
若有,則會請IC layout工程師作細部修改,若沒有,IC layout工程師就繼續畫下去
1 o2 p; @) F$ f# }而這,是在業界中電路工程師和IC layout工程師的互動方式
2 b7 S  G0 d) ^  ]! D: {7 Q每一家公司的作法也許會有所不同,不過,大體上皆是一對一的互動
% v9 W# Y! f  o1 V1 [( W
+ V; C3 x5 ]/ M  s/ N5 E9 d再來,一個沒有經驗的IC layout工程師,通常會由一位資深的IC layout工程師帶著入門: P# {2 u4 m5 N! {, r. r
當然,每一家公司對於沒有工作經驗的都會有先期教學教育,對於那種己有數年工作經驗的大概都是直接上工吧
( b! I; z1 j# L: J" ?而對於布局的方法和技巧,一些短期教育訓練課程都有在開,像交大,清大每一期都有一些訓練課程
. O6 \4 d: r$ g' k. N; y* B& fIC layout布局我並沒有相關的參考書籍可供介紹,因為這方面的資訊我大都是從短期的訓練課程中學習而來的
3 v" B9 r, A* ^, l, c* _再者,因為本身是電路設計者,我通常只交待電路的那些部份要作特別處理,細部的畫法則交由IC layout工程師自行處理
2 f$ O5 m6 ?5 I1 P7 ]# r最後,我想提一點的是,IC layout很注重經驗,因為這一門職務的經驗值很重要,很多地方都是經驗累積來的,即使書上有教,但實際應用還是在個人的經驗值較為真實
% ?6 Y) H, M' m0 }) H, _電路工程師通常會告訴你那些地方要特別處理,而資深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,那∼∼∼很多公司應該就會收你了,其他進公司再學。
4 ^- ]: z$ A; C$ o6 `3 Y如果你想高人一等,那∼∼看你會不會看的懂DRC及LVS command file,如果看的懂,你就高人一等了。
& n6 z) D4 n5 B% g+ u/ F6 ^9 P如果你想超人一等,那∼∼就看你會不會自己寫command file了。# Q0 b5 D+ \/ l  ~, @
$ y' ?0 C' @) L, B
另外∼∼UNIX系統大概要懂,VI要怎麼會用最基本喔,我說UNIX大概懂是至少要會拷貝檔案,刪除檔案,建資料夾等等吧。
13#
 樓主| 發表於 2007-6-12 11:22:34 | 只看該作者
喔喔您講的很清楚 學生的方向,那我要熟悉tool的使用先 ,因為是學長帶我的,所以像drc, lvs根本很少錯誤訊息 ,同時也看不太懂錯誤訊息,因為其command file就看不懂了@@ 我想說看的懂的話跑LVS的錯誤訊息 應該也能很清楚要修改那裡@@
, ^/ c/ ?0 q7 w3 Y2 T我現在最大問題是看不懂command file 而撰寫 那個是晶圓製造廠 它們寫的吧 ,方便它們製造而已!  t2 Q& @) s6 e
版主大大 小妹我暫時剩一個問題就是 如何看懂 command file ?這是有書 且有語法的嗎?@@
14#
發表於 2007-6-21 03:26:29 | 只看該作者
1 spice 對ic layout 是不太需要,但是還是需要跑過基本的驗證 pre sim ,post sim,這是好的layout工程師& R5 c* N3 J% o. U' e. q  u, I
! c7 t% g2 |+ m
2 看的懂電路的動作原理,是更好的layout工程師,9 g: C. w( H" ]: \! h6 F
( }, g6 G# v+ n$ ]
3 能跟ic designer做好事前的溝通,互相瞭解所需,才是完美的layout工程師
# c% h9 R# g- u* P" P' [
: a( G# f( `! p5 ], g7 D2 z不過大部分遇到的,都是第一種比較多,其實這兩者是相輔相成的.
15#
發表於 2007-6-21 03:38:04 | 只看該作者

回復 #6 君婷 的帖子

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

回復 #14 zannx 的帖子

spice視覺化不見得比較好用吧....也有pspice阿,也不見得就輸給hspice,畫圖不見得比打字快。spice問題是在於收斂度的問題。太大還要很準就會很慢。/ T0 V" }! [" c. K
1 h: u$ m) o2 H+ |) a
重點就在於有這樣的能力誰要去layout......
17#
發表於 2007-6-23 14:37:59 | 只看該作者
看了以上的回覆, 其實我也有一些想法, 想提出來和大家討論一下.' W+ t2 w+ L* p, t( q
layout實際上需要注意的地方, finster副版主的說明已經夠詳細了, 所以我大概想要說的是一些心得吧./ y" c9 r/ e% `* `/ W7 P8 q
1 R1 p9 N7 T8 v# r' W, V5 t
1. 實際上, 我並不覺得layout工程師可以對spice都不瞭解.
3 |. Y# k/ v" N! I7 wMore specifically, 在hspice裡面, layout engineers必須至少對netlist部份的電路描述瞭若指掌才行.
% p) x1 t& W7 l3 ?至於模擬的分析部份倒是可以不必了, 反正以ic layout engineer來說,
% c/ B! m1 U! @0 t/ z" F* h在拿到netlist file要做LVS verification的時候, 分析的部份也在netlist裡也已經看不見了.- j, ]2 U) Z4 [& O& J7 l8 w* a
當然在一般的公司(就我自己所待過的公司來說啦)裡面, 的確ic layout engineer的工作大略上會是:% z: y4 D" z) ?) M7 K* I6 u( N
拿到designers release出來的電路圖-->layout-->DRC/LVS/PEX抽出結果-->給designer跑postsim! {" [& s: V6 L: f& }* G  [
但是在驗證的部份, 尤其是LVS驗證時, layout做久了, 難道你不會遇到一些莫名其妙的問題產生嗎?" W, b( z& a; k
例如怎麼看這個layout和netlist就是對的, LVS卻會report出奇怪的錯誤而導致驗證無法成功,
* z" v1 ?% j0 m8 F! r( m這個時候, layout engineer還能對netlist的內容不熟悉嗎?
1 G; e6 ?7 y* p& q+ |- q4 E這樣子的時候, 最好是連designers自己都必須看得懂LVS report和LVS command file吧!!  D1 ^# _6 k, q( b* ~! K6 m$ u
以前我曾看過同事有類似這樣的問題發生, 連designer都要坐在旁邊幫著看到底他給的netlist有什麼問題,
$ ]+ h( i: T, O3 Q  X類似typo(有時需要手動置換gnd或任何node, 可是在一個超級大電路的某處, gnd被typo成gdn)的問題, ' J: @: c3 H" v1 C. _
想想看, 兩個人四隻眼睛, 要花很多時間去找??6 S$ p4 ?3 C: J( c( e1 O" k# ~6 x/ ]

7 H1 w2 q4 M. [. t6 Y7 }: m2. 站在公司的分工上來看, designers當然需要去take care presim及postsim的流程,+ ?  x0 E4 Y1 w# K3 a; d8 ]
除此之外, designers當然也會需要對layout有一定的"瞭解"...& m, l1 H$ a( \. ]0 M0 X) B. q
此處所謂"瞭解", 倒不見得只是designers自己會"畫", layout上的一些方法及conventions也要知道才行.
/ U6 f; r0 F& L  z8 q  X$ [大部份的designers至少都有碩士學歷, 而碩士班要畢業, "通常"老師應該會要求要下前瞻性晶片吧.
# m7 y. q) D/ f我也曾經看過碩士畢業生design得很不錯的電路, 自己的layout卻差強人意, 不過不管,
/ k" @# X8 v# L. P4 L前瞻性晶片過了, 就畢業了, layout好不好是另外一回事...也沒時間再回頭去管這些東西.
5 B3 B  j; c0 ?; G: |2 e4 D我不否認類似這樣的情況的確經常發生...
! {2 s! C5 ?: O( j" w' J0 y( H有時候不見得只是designer, 連學校老師都會有這種情況...1 j0 ]3 ]# p1 X) Y/ }" C/ [  W" r) Z
有的老師或許會覺得layout不過就是一些專科畢業的人在做的工作,& J' T' a4 m  i& L. V! a" E* w
可能老師知道layout的好壞對一顆晶片的成敗之重要程度,% _( m$ G. Z) ]: ~# m
但是實際上在"做layout"時候會發生的問題或現象等等, 他們可能就比較缺乏這方面的經驗了.
$ t7 Q; A/ {. C例如, 前幾年我還在業界服務時, 曾經遇過designer要求我把電晶體畫成八角形,再把八角形的電晶體擺成六邊形,) _; ~6 t$ }# ]. |. B) u4 u# Q
當時......我無言了......到現在我還是不知道那樣的東西要怎麼做.
' D2 M* a4 Y7 a有的designers會覺得, layout就是layout嘛, 我叫你怎麼做, 你就照著做就好啦, 難道你會比我懂design嗎?- U  y" b% J/ U  l# @. D) q* p
說得基本上沒錯, 不過有些東西在layout上實際上就是做不到, ; X  I. f6 m- H9 g9 r$ @, K) ~
有時候designers(或even老師都好)在這一點上或許該有點sence會比較好.
. r) ^6 \( F- W  a
2 _7 _, Y5 m* c. m& F" G3. EDA tool的使用的確是layout engineers必須一定要熟悉的重要環節,4 h5 i& u; K' K: M2 z9 h. T
以在學校來說好了, 下晶片的deadline經常就壓在layout這個procedure上面.
1 z2 S3 d+ V6 r: b7 N( r: y有的人even連postsim都還來不及做, 晶片就出去了." R% v8 @$ D/ B
這當然並不是常態, 也絕對不會是一個好現象, 可是我只能說, 這是一個比較殘酷現實的情況之反映.9 x' k, U+ m) q% D  T
沒做postsim, 先不管process variation好了, 你怎麼知道你的晶片實際layout, fabricated出來會不會動??
8 \( u* Q- s$ [: x; R相對的, 我也曾經聽說過有的實驗室不用下晶片, 只要模擬有跑出來就好了, 你就畢業了.
! }/ k" z0 {, O& y. L6 n. Z但是事實上我是這麼想的, 無論自己的電路設計得多好, 無法把它做成晶片出來量測,- k- T2 \# i& y$ ~+ x
其實就等同於紙上談兵, 沒有夠solid的證據證明自己的晶片設計的確優良.
* g8 Y, e  [) A- |  Y: P  ]' ~. ?) u也就是說呢, 優良的電路設計, 也要搭配上優良的layout, 一個晶片work的possibility就能提升了.6 J9 ~& R; w" a- z* ?+ |2 Q# |
優良的layout包括了很多層面, 有的東西即使在書本上的知識你都讀懂了, 讀通了,3 i/ K( [" d8 W: e3 S+ x8 D4 Z
但是實際在做layout的時候是否知道如何去實行呢??  t; v: z2 N# V$ ~: e8 E9 n7 u
所以呢, 我覺得啦, 對學生來說有一個好處就是能下教育性晶片,
  E7 o4 T) M* [- \% s所以呢, CIC教育性晶片的制度我真的覺得很讚, 設計一個簡單的電路就好,
6 o# a& b2 ]4 V$ q. `8 K% \然後自己真的完整的做出一顆tape out出去, 再等它回來拿去量,
6 O$ J4 t0 X, h無論是work也好, fail也好, 能完成整個實際的流程的話, 這樣都還比較實際一點吧...

評分

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

查看全部評分

18#
發表於 2007-6-23 15:24:36 | 只看該作者
真抱歉, 補充的東西打太久, 超過30分鐘, 系統不讓我編輯了, 7 M: a( h1 x6 w8 r: K7 u% Q* g/ C
所以我再寫在另外一個回復裡, 請見諒!!!
* r+ }9 d5 _2 J, d
2 a5 r) o% d8 g) |2 J4. 忘記補充一點...我個人覺得, 電路圖的呈現是很重要的,; s. w, K/ ~, a: s" c
即使你的電路很簡單, 用手敲hspice file比畫圖來得快很多, 我想也都還是應該畫成電路圖會比較好.
4 Y6 |1 z5 i9 G. q! G' M這裡說的電路圖是像virtuoso schematic composer 畫出來的那種, 可以用來加上自己所需要的分析去跑模擬的電路圖.
8 m3 U6 a! s3 L. A, H  J3 q這份電路圖的功能, 我覺得第一, 是要維持designers與layout engineers目前手頭上有的電路圖之consistency.! A3 g5 w: `1 G( W0 l& ^
當然我也數次遇過designers改了電路, 卻忘記update一份新的電路圖給layout engineers, 以致到做LVS的時候才發現有所差異,# R1 U! L" s( z. R2 b- L' d
可是那時才發現有可能已經太晚, 已經做好了的layout經常是很compact的, 要去做compact layout的更改通常並不容易,+ {1 z$ o7 c, u4 P
不過這是另外的issue了.9 `$ [9 T, ]  s" s
我想說的是, designers做好的電路圖, 可以給自己用來跑模擬, 也必須把它release出來給layout engineers,* l5 z; U0 K8 C( ^
當designers有修改電路時, 要立刻update給layout engineers, 押日期做檔案版本確認...etc.0 t& ?  R. F7 `& i$ f2 K6 M
以上是一般公司大略的流程.
( Z0 l' o4 `# J. M而這公司的流程, 我強烈的覺得在學校裡也必須如此實行./ C/ b: \3 W1 H. J
我自己幾年前在業界服務過, 擔任layout engineer的職務,
" H1 q# `% V( {6 J8 N  r* P3 S所以我在到學校實驗室之後, 在還未能開始電路設計, 僅在學習階段時,
* V6 s! K+ S! v* S6 D實驗室的full custom 晶片佈局都是由我一手包辦.
" }, r7 j1 [7 L3 B4 J  u" b在我幫忙電路佈局時, 其實他們設計的電路都是用記事本一個一個subckt手敲的, 然後再加上要分析的指令.. T( [. z3 Z: ~: T5 _+ h+ X2 ?
可是今天要做佈局的人是我, 我的腦子裡可沒有他們的電路圖, 所以他們必須用手畫, 或用visio...等等什麼畫圖工具都好, 畫一份電路圖出來給我.
/ R6 H/ U$ W8 L9 w; Y在這樣的procedure中, 只要一不小心, "inconsistency"就發生了, 相對的, 也會造成後續很多的麻煩, 在debug時浪費很多時間." @+ R: V2 a" ^8 A% U
手敲電路對於小電路來說絕對有其便利性存在, 因為我想改哪一顆的W或L, 或哪個bias voltage, 我就直接改就好啦,4 W/ J+ u6 f* t( i* X( |
even是一些logic gates, 像INV, NAND, NOR...etc, 的確我必須承認, 畫圖不見得會比較快.8 y5 F% b3 `. d+ [9 @; \3 d
要改什麼設計參數的話, 也不用再到電路圖上改, 因為那樣子的話還要再轉一次netlist出來, 好像顯得挺麻煩的.
8 x$ c$ j; u3 B但是, 往往就因為貪圖該"so-called""便利性", 使得layout後做LVS驗證之時, 這個"inconsistency"出現了,  O7 q$ ~( d6 G$ Y) L
我們通常從layout裡去找到底哪裡接錯, 哪裡open, 哪裡short...etc,
; ?# _8 R4 H/ v# }0 H找到最後, 才發現是design的人給的手畫電路圖畫錯, 或是他手敲hspice file的時候敲錯...然後再改netlist或圖, 當然也有可能動到layout...etc.
8 ?* B0 U7 E  Q; a$ V: A這樣繞一大圈的程序好幾次花掉我很多時間, 所以這個"consistency", 是我想要特別強調的地方.# c, ]$ V* [% U+ E8 |/ _

+ b% N" B5 z8 `5. 然後是電路hierarchy架構的建立, 這個我想也是很重要的一點,
. ~! O+ J+ L1 o: {( D5 @! C8 @不過這個hierarchy的概念有一點點難解釋, 總之大概就是說呢, 2 H' C+ m% r1 q- l1 X( w& p; c
我們無論是在做電路或是layout的時候, 都必須要有很強烈的hierarchy架構建築在我們的腦海中.
# @1 E4 v! m( u) o今天一個layout的sub-block完成後, 其實應該都要能夠找到一個相對應的subckt來做LVS的比對,% G0 g2 f2 x! ]/ y7 q; y  m& U
由bottom到top cell都必須遵循這個原則來達成, 這樣會比較好.
4 q( x* v( h9 y. p+ L一方面對自己來說, 至少bottom cell已經做過LVS驗證, 到了上層的電路時若發現LVS驗證不過, 至少能夠確定大概是發生在這一層的問題,1 a) @% x1 I. Y2 V. e4 H
而不會是沒有方向的, 盲目去找究竟LVS的錯誤到底是在哪裡產生的.
+ ^7 |' g" O7 M! N8 L而Layout要能做到hierarchical的LVS驗證, 則netlist也必須corresponding的subckt才能做比對,
- r; h) K: S, H+ V因此這個hierarchy架構不只是在layout時重要, 在hspice file/netlist中的重要性也絕不遜於layout本身.4 R' W! ~" y; j. Y& D
其次, 若是在公司裡面的話, 有時候...或許還蠻常的啦, 會遇到要拿以前人家做好的layout來改版的情況發生.
0 T# m, \, Z$ S1 e4 ]' I! Y, L要是當初人家的hierarchy架構沒有做好, 整個晶片都是flat的, 或是hierarchy架構做得不對,
1 S* W% F& j/ J0 T& l那麼你能想像, 當自己要接手做修改的困難度有多高嗎??
6 Z! ]% Z/ |' S: B' Q' p# B- \或許hierarchy架構的觀念這樣講起來有點抽象, 不過它真的很重要, 希望有需要的人可以稍微體會看看.# M( I7 O( ~3 Z8 v7 N  z- b
' [6 r- S9 G% U2 f4 i9 g
以上是個人一些小小的觀點, 或許有些東西過於冗長, 請路過先進不吝給予指教, 感激不盡!!

評分

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

查看全部評分

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

評分

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

查看全部評分

20#
發表於 2007-6-24 19:48:10 | 只看該作者
我的看法不太相同,我認為spice精隨在於手寫的部份,實際上再做的時候一定都是visio電路圖配合打指令再做的,有時候要跑分析,還要去改動電路圖,這是相當沒有意義的事情。任何一個IC designer都不會想這樣做的,要去cadence畫那個電路圖要等到後面的事情,前面根本沒人這樣做。一定都是先全部弄的差不多才會開始cadence的流程。+ O. L7 T( ?+ j9 ]) K! c
1 d' t: f! p$ }6 H
再來,postsim主要探討的是寄生元件的問題,並非製程variation的問題,設計的時候自然可以去考慮製程變動的狀況,剛好目前我就正在做這個區域。這不是等到layout再來探討的問題,兩者之間有所區別。
) [1 H  O5 }/ q, G) J0 E( K3 o6 f. {1 o5 [
而且這樣的方式只有在大公司有所需要,學校裡面或是小公司,都會是單人包辦到底,所以這樣的流程在學術單位裡面根本沒有需要也沒有必要。因為這樣達不到學習目標或是作事效率。而且這說法有矛盾,如果layout的人可以懂spice就沒有那個必要把spice寫成分區塊,如果看不懂那寫那樣也沒什麼意義,而且照看spice其實就能夠轉出電路了。
4 c* @& n7 e3 y6 y2 m4 j! b" p* C7 e/ g0 ?+ @; K0 @' j6 `
而且第5點更是難,每個人都有每個人的風格,怎麼能夠要求硬要跟自我風格匹配呢?我覺得有些看法是站在一個layout者的看法,設計上是要兩者互相配合沒錯,可是要要求designer一定要怎樣怎樣恐怕溝通就會有問題了,整個設計的流程是以designer為主導,designer如果願意盡量配合layout者那是一種體諒,絕非義務。感覺有點本末倒置囉。能做到是最好,可是不能一廂情願的希望別人如何做如何做,這不是好現象。2 z1 ^/ P% H' u5 f% p- F

% i. f) q9 ~8 ?4 N7 ~. ~  z[ 本帖最後由 ianme 於 2007-6-24 07:49 PM 編輯 ]

評分

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

查看全部評分

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

本版積分規則

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

GMT+8, 2024-5-29 06:39 AM , Processed in 0.150519 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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