|
Part 2 about issue of time step too small by Kuan Min Chen
/ T) A$ w5 b2 r
( G8 X" F' G) @6 ^" ^1 S" ]: ~, W/ Y7 u- D! i
6 POWER電源由LOW升高到工作電壓有時也可以解,(指如 vdda vdda 0 pwl(0ns 0v 100ns 0v 200ns 1.8v),則在0ns~100ns之時間內因為節點狀況皆相同,故在t=0處會收斂可跑,但不代表在t=1000ns處會收斂* i* p7 D; z0 ~; S2 @3 o- [
$ r' `# l) a3 C$ d3 [4 G7檢查電路中的雙穩態電路(latch, DFF等),because 雙穩態電路在t=0處 ,because雙穩態,故Hspice易猜錯, solution is to先將雙穩態電路(latch, DFF等)reset
& w* t9 y. e; @& @- J# _+ c8.有時稍微改變vdd and temperature value 則可解決收斂問題,: T, W6 _7 G# Q$ U! J, ?
如原本要vdd=1.8v ,temp=60 but不收斂,則試vdd=1.82v ,temp=62
& I) a& a8 g5 {, H0 `7 pOr vdd=1.78v ,temp=58 等組合) Q7 `, ], }( h) I7 {- j, W) C
+ A# A7 O1 w7 M3 @
9.set initial condition to the critical node of your ckt ,對t=0處之收斂問題有些幫助; F! q; U* g! b, l$ `1 ^
但不是萬能的,因為若你的電路太大且結點太多時,# D0 w, A5 y) c7 J: _
我的經驗是將你跑過成功之檔案之initial state file存起來,
4 x! K5 b D3 ?! p讓無法收斂之檔案去呼叫該initial state file, 且由hspice *.lis file3 n7 b& S' B* C2 T8 j* u6 e
內,其會顯示那些節點有問題而再去改存起來之initial state file
. F& \, `+ T- i6 I5 s0 @# ^8 j內之那些節點之value ,而如此多試幾次
7 s. L8 U' \) Z4 q2 f1 J$ ^
, O' Y+ g1 k7 t3 m7 d10增大疊代次數ITL4有一定程度之幫助,但在Fab所提供之spice model有不連續問題時,& S9 `- K6 c; }* ]
還是沒用 ,因為若本身即為離散點,則試多少次還是發生離散
7 u& n( D5 ?4 e: I* @2 \$ V* D4 {0 [5 a0 X c8 K8 g3 Q+ O4 K1 X+ A- W# G
11 注意你對電路之所有輸入及控制及工作電壓及溫度之設定是否正確或是否合理,; }6 k; C: M8 C' T0 h( e& l# J
記住Hspice 只是一個計算機,它只是幫你解K.C.L & K.V.L equation,
. ~8 s) O* e5 j1 S* g( \而你的電路架構及對電路之所有輸入,及控制及工作電壓及溫度之設定之不同,即等同於你製造出之K.C.L & K.V.L equation之不同, 若你製造出之equation本身就無解,
$ T' m: i$ J- L則Hspice發生不收斂,且不跑了是理所當然的, 記住Hspice 只是一個計算tool
7 o, ~, Y, W: B. f' t* W! ]' N" ~, C/ X. a( w
12.活用上述之2~11點之心得則可以解決大多數之不收斂問題
$ y) [( K8 n$ d
! W+ z, s( Y5 M+ s8 |. M# _希望此文對於台灣之類比設計之入門者有所幫助 |
評分
-
查看全部評分
|