|
小弟我在模擬一個簡單MOS switch取樣電路的解析度時有一個疑問,
1 |( x: ?# ^' A以下是我的CODE:& \, _/ ^ k8 ~8 ?% a$ I( Q, }* w, m6 _
vclk vclk gnd! pulse(0 1.2 0.125n 0 0 0.125n 0.25n)& P$ T/ q1 N8 e% M, |
vclkb vclkb gnd! pulse(1.2 0 0.125n 0 0 0.125n 0.25n)2 \# f& S+ b5 ]
vinp vinp gnd! sin(0.8165v 0.2835v 0.125g)
2 K8 @4 ~3 [+ Z7 R; avinn vinn gnd! sin(0.8165v 0.2835v 0.125g 0 0 180)
+ \& A. T! n- b" V! r6 i/ k.tran 0.25n 8.1875n
" o" ?2 }9 D0 i3 _# Y( E.fft v(voutp,voutn) start=0.1875n stop=8.1875n np=32 freq=0.125g
' U! g% {& }7 C* \% d以上幾行,表示我的CLOCK=4G,% V$ G& P1 P2 s+ I |: L0 D; J. z
想請問各位前輩".tran 0.25n 8.1875n"這一行的取點間格對嗎?是0.25n嗎?,9 a& m- O( v6 f4 ?$ v+ p0 z
那如果我取 ".tran 0.0001n 8.1875n" 又會有什麼影響?
* P! x( I& u/ s/ y( [3 W+ p9 B/ W我有爬文看過相關的討論,結果發現.tran的取點間格,都是為sampling time,但我這裡有了一個疑問了!為什麼?
, q4 b% \3 C* v& a& w以我的認知,m*Tin=n*Tsample這個規則是指做DFT的Data要符合,所以與transient分析無關,8 n1 n! N1 ], O+ h$ G
只要我.fft v(voutp,voutn) start=0.1875n stop=8.1875n np=32 freq=0.125g此行下的間格讓做DFT的DATA時間間格為0.25n
+ U# |) M6 S4 L, O& ]3 `1 a0 \! T5 |就好,但是我問過別人也看過其它討論,似乎得不到相關的答案,
0 ~. a. K) t1 s9 C. A當然,如果結果沒差,就沒差了,但是重點在於若此電路為一與時脈有關之電路,我發現.tran 0.25n 與.tran 0.0001n 將會有很大的差別,因為我去跑transient的結果發現,因為取點的關係,spice會將clock當做一有Tr與Tf斜斜上升的波,並非我原本設定的漂亮方波,
8 z2 n H! F8 u! z/ h造成嚴重的distortion在clock-edge處發生!( S( g4 ^( s. ~; C
我的問題是,做transient分析時,取點的間格大小不是不會影響電路嗎?只是取出此電路輸入一訊號後,在絕對時間的x(second)某點的值. j5 s, r |9 H$ ^! e/ b' M
,所以只要我取到的絕對時間相同,那跟我取的間格不是無關了嗎?
, ~2 h8 o! _7 [" a我有去做過與時脈無關之電路的模擬,的確與取點的間格無關,某點某時的電壓值是固定的,( j% R9 [' M/ V6 C% | V
但...那與時脈有關的電路呢?
; z. w s D9 L7 r1 R" j我覺得spice-transient的運算似乎是把某時的時脈電壓取出,而在沒取到的點做一線性方程計算出值,再內差出所需DFT-DATA-TIME的值,再代入運算得頻譜,但!我的CLOCK並非如此糟!: l& K8 M) R- \; z$ _1 a( Y
寫了一大堆..在於這個問題困擾了很久,所以才上來請教各位前輩,在此先再感謝!. l7 ^! d, J6 ~ P
不知道以上所說對不對?' P- D5 T [" c$ j& [5 W- w" C$ D
還有,若真的與transient分析取點間格無關,那我又要取多細呢?是否與我提供的時脈品質有關呢?
$ r( P+ g A0 v- J感謝!!!感恩!!!$ c0 Q! E7 e/ f; R n1 p9 U% g* R
7 A. S' _" I) ~/ p4 p! Y9 E* l[ 本帖最後由 henry90176 於 2009-7-21 01:00 AM 編輯 ] |
|