|
小弟我在模擬一個簡單MOS switch取樣電路的解析度時有一個疑問,
. O4 v5 r" n1 k! ]# m$ a3 Z# M以下是我的CODE:
: Y" M4 U7 B/ G# P: v+ f/ uvclk vclk gnd! pulse(0 1.2 0.125n 0 0 0.125n 0.25n)* q0 D2 W- A0 I" |8 V2 ]5 e
vclkb vclkb gnd! pulse(1.2 0 0.125n 0 0 0.125n 0.25n)
4 G& p; i& L) D$ uvinp vinp gnd! sin(0.8165v 0.2835v 0.125g)- Y. [$ s. ^& Q
vinn vinn gnd! sin(0.8165v 0.2835v 0.125g 0 0 180)* |1 ?* | c- V$ [( Z, k& ~8 ?; k
.tran 0.25n 8.1875n
& Q% J$ B: j \3 n/ @/ L.fft v(voutp,voutn) start=0.1875n stop=8.1875n np=32 freq=0.125g& X' \2 R% I: w( D
以上幾行,表示我的CLOCK=4G,
5 [9 S5 V1 s1 e f/ r想請問各位前輩".tran 0.25n 8.1875n"這一行的取點間格對嗎?是0.25n嗎?,7 u4 r: X# o( ~
那如果我取 ".tran 0.0001n 8.1875n" 又會有什麼影響?$ E. |; @, D5 T. Y9 ]
我有爬文看過相關的討論,結果發現.tran的取點間格,都是為sampling time,但我這裡有了一個疑問了!為什麼?. B' I0 Y z: o& d/ n* _, J7 \
以我的認知,m*Tin=n*Tsample這個規則是指做DFT的Data要符合,所以與transient分析無關,
) f. q8 s3 J- }只要我.fft v(voutp,voutn) start=0.1875n stop=8.1875n np=32 freq=0.125g此行下的間格讓做DFT的DATA時間間格為0.25n. B9 |) b8 E& G
就好,但是我問過別人也看過其它討論,似乎得不到相關的答案,
. V6 J1 G l0 D( b2 L當然,如果結果沒差,就沒差了,但是重點在於若此電路為一與時脈有關之電路,我發現.tran 0.25n 與.tran 0.0001n 將會有很大的差別,因為我去跑transient的結果發現,因為取點的關係,spice會將clock當做一有Tr與Tf斜斜上升的波,並非我原本設定的漂亮方波,' y, |% N* o) X+ ]6 h6 G
造成嚴重的distortion在clock-edge處發生!& V* F" }1 L* D9 a
我的問題是,做transient分析時,取點的間格大小不是不會影響電路嗎?只是取出此電路輸入一訊號後,在絕對時間的x(second)某點的值
; X& j% v: T3 u* [,所以只要我取到的絕對時間相同,那跟我取的間格不是無關了嗎?
. @; _9 E! t$ G$ B4 p' R4 {+ | S我有去做過與時脈無關之電路的模擬,的確與取點的間格無關,某點某時的電壓值是固定的,
9 l& s7 L J8 U) U5 o8 \但...那與時脈有關的電路呢?: n- u% d6 S1 V- R+ j- N* [
我覺得spice-transient的運算似乎是把某時的時脈電壓取出,而在沒取到的點做一線性方程計算出值,再內差出所需DFT-DATA-TIME的值,再代入運算得頻譜,但!我的CLOCK並非如此糟!
% @( Q8 g" |0 b- V/ J% `寫了一大堆..在於這個問題困擾了很久,所以才上來請教各位前輩,在此先再感謝!
- N/ ]3 n+ H5 t; l不知道以上所說對不對?8 [0 \8 j% q. M2 U$ L: z, H* C) f
還有,若真的與transient分析取點間格無關,那我又要取多細呢?是否與我提供的時脈品質有關呢?
e) d+ A* A3 w# Z- r5 r& w感謝!!!感恩!!!
7 E" S) u. D: }( G. e3 I9 @% t- i; h5 Q% L; F N7 \! f" Z( g3 I
[ 本帖最後由 henry90176 於 2009-7-21 01:00 AM 編輯 ] |
|