|
小弟我在模擬一個簡單MOS switch取樣電路的解析度時有一個疑問,8 c. P; S# F3 i. S
以下是我的CODE:# p# T$ a, K) w* N- x5 w: y
vclk vclk gnd! pulse(0 1.2 0.125n 0 0 0.125n 0.25n)9 G, X: w; M3 g
vclkb vclkb gnd! pulse(1.2 0 0.125n 0 0 0.125n 0.25n): H, k4 E' g/ n1 T+ M. v2 c& z$ ~
vinp vinp gnd! sin(0.8165v 0.2835v 0.125g)
$ F# m2 L; T e/ D( _# I* y7 G. dvinn vinn gnd! sin(0.8165v 0.2835v 0.125g 0 0 180)
& ]/ o6 {# w7 ^0 t/ Q: [.tran 0.25n 8.1875n( p C1 T) C' \* |" ~
.fft v(voutp,voutn) start=0.1875n stop=8.1875n np=32 freq=0.125g+ i4 I3 F% U" l: F1 n& n
以上幾行,表示我的CLOCK=4G,& W" L+ V* |% l6 A: ]
想請問各位前輩".tran 0.25n 8.1875n"這一行的取點間格對嗎?是0.25n嗎?,
8 l* ~: g# R6 x& y0 v那如果我取 ".tran 0.0001n 8.1875n" 又會有什麼影響?9 ^1 R6 b$ J' E3 L8 m8 o0 t0 Q9 C# t
我有爬文看過相關的討論,結果發現.tran的取點間格,都是為sampling time,但我這裡有了一個疑問了!為什麼?, {2 F; [- \" K
以我的認知,m*Tin=n*Tsample這個規則是指做DFT的Data要符合,所以與transient分析無關,
I6 _$ M2 n6 Y0 @- |只要我.fft v(voutp,voutn) start=0.1875n stop=8.1875n np=32 freq=0.125g此行下的間格讓做DFT的DATA時間間格為0.25n
8 r- {: Q4 W4 A$ z就好,但是我問過別人也看過其它討論,似乎得不到相關的答案,; T8 `, K0 ]2 V" f7 c' r' Z* {3 R
當然,如果結果沒差,就沒差了,但是重點在於若此電路為一與時脈有關之電路,我發現.tran 0.25n 與.tran 0.0001n 將會有很大的差別,因為我去跑transient的結果發現,因為取點的關係,spice會將clock當做一有Tr與Tf斜斜上升的波,並非我原本設定的漂亮方波,
$ t0 k0 V. S# a* _7 a造成嚴重的distortion在clock-edge處發生!
( n7 i& c/ y9 H2 D4 ~1 P' @我的問題是,做transient分析時,取點的間格大小不是不會影響電路嗎?只是取出此電路輸入一訊號後,在絕對時間的x(second)某點的值
* s; ^+ j& W/ ?,所以只要我取到的絕對時間相同,那跟我取的間格不是無關了嗎?: \ ?) i1 ]/ @9 g O; T
我有去做過與時脈無關之電路的模擬,的確與取點的間格無關,某點某時的電壓值是固定的, T0 Y5 c9 g, d0 \$ v9 V
但...那與時脈有關的電路呢?
5 e9 n% s( T1 U# y! {我覺得spice-transient的運算似乎是把某時的時脈電壓取出,而在沒取到的點做一線性方程計算出值,再內差出所需DFT-DATA-TIME的值,再代入運算得頻譜,但!我的CLOCK並非如此糟!4 D: U( v+ ^) z- m9 K
寫了一大堆..在於這個問題困擾了很久,所以才上來請教各位前輩,在此先再感謝!8 U1 N0 o1 X# j" ]0 @
不知道以上所說對不對?
: q2 l1 P/ L, b6 H: e& c8 c4 n% E0 [還有,若真的與transient分析取點間格無關,那我又要取多細呢?是否與我提供的時脈品質有關呢?
* ?0 X6 e$ U2 i. w. D p2 n% Y感謝!!!感恩!!!
+ S* B. B% z+ h& J; ]( T- K5 b$ k/ O1 Q/ f( ~! h9 Q V
[ 本帖最後由 henry90176 於 2009-7-21 01:00 AM 編輯 ] |
|