Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
樓主: monkeybad
打印 上一主題 下一主題

[問題求助] CMOS晶體震盪器模擬

  [複製鏈接]
21#
發表於 2007-9-8 15:01:03 | 只看該作者

回復 #20 monkeybad 的帖子

to:monkeybad$ W7 o+ x8 ^( l- m  t" e
由于最近不常上chip123,所以现在才回答您的问题,表示非常抱歉!9 W5 j+ @7 H- G8 I  q4 i9 E
现在是我稍早前仿真的一个振荡电路,希望对您有所帮助!. ?# l6 V, n  ~2 g6 x! V
* W8 a: o. y. W# N8 a
电感初始的电流设置如下所示:2 d8 [4 |2 n" _( D) G3 M5 a, }
L_L1         N11450 N03952  588.873289 IC=1uA - x6 j2 H3 I, t2 p. |
2 }) x' t5 g9 X3 I! c9 Y4 q
注意给电感设置初始值要不能太小!9 z0 P- }. a) A, o  H1 i! `6 y
http://www.eetop.cn/bbs/thread-58028-1-1.html(这是我在eetop的一个讨论贴,希望对您有所帮助)
& \6 P" G8 S3 A. ^9 G# r------------------------5 m. O% c0 H' U: [& a$ z( u5 K3 U
* source 100K
$ N) L" p* g1 }.PROT/ a) U/ L* U8 v' o/ M
.inc 'd:\hs\lib\level3'3 k, |# h7 Z: Q+ r5 v  j4 F+ [" N
.UNPROT
" i  [% E3 K8 T) N% GC_C4         IN VOUT  1.72169576e-012  ' f# {" M# G* Y; \# W- G7 Y
M_M1         VOUT IN 0 0 n6 P& F: x& K- Z# ?$ m: x0 y& h7 y
+ L=16u  ' D; D8 P/ ^( {1 _& _+ c: f: s
+ W=0.8u          7 t# x. r0 U+ ~& b7 H& Q/ M' Z" e
+ M=105 x, i8 y7 }3 w
M_M2         VOUT IN vdd vdd p
$ G1 Y( ]# x$ b) F2 y+ L=16u  
3 {# b2 T8 M7 o7 P" l+ W=0.8u          ' @& ^9 U) L6 G+ x. v/ P8 v5 @
+ M=22. ~2 _9 e' t$ P5 t) T
R_R3         IN N11450  18.5k  : ^$ c# |9 l  L# h# L
V_V1         vdd 0 pwl(0 0,10us 3Vdc,20u 0,30us 3vdc)
& L- x+ x, X( S$ dC_C1         IN 0  5p  7 z7 G- S7 E, R
C_C2         0 VOUT  5p    ]: b1 Z, L' e6 r2 B, }
L_L1         N11450 N03952  588.873289 IC=1uA
6 T7 N. s' r) q  X* q3 Z; ^* GR_Rf         IN VOUT  50meg  
9 ]" Q; i8 x; j6 a- {+ jC_C3         N03952 VOUT  4.30423941e-015  
5 s+ v9 s: s! ]4 |/ f! C.tran 1ns 20ms
) f0 j3 _& N; ~! V, Q8 g: e5 @.probe tran  v(in) v(vout), z6 a0 P+ W. S6 p  ^: ~
.end

評分

參與人數 2Chipcoin +5 +8 收起 理由
skyboy + 3 很受用!
monkeybad + 5 + 5 謝謝這麼熱心的回覆 這些資料非常有用 ...

查看全部評分

22#
 樓主| 發表於 2007-9-8 16:44:00 | 只看該作者
感謝wwm101提供這麼詳細的模擬資料
, c3 s# ^: O+ o, _原來設電感初始值只要加 IC=1uA 就可以了 又學到一個指令了
! o+ ]$ \- Q) _& E$ F6 |5 X* J- j8 R1 S  }1 M
看了討論區的文章
$ m0 p' l" _1 N0 U6 q3 `+ O同意裡面的講法
8 W2 w- ~% b1 N4 k3 v震盪器模擬應該跟初始值有關 可能是模擬軟體本身的收斂問題 可能跟演算法有關吧
6 \" c" P% \0 n. a5 ^$ q$ G1 R/ w8 H設不好就都掉到ZERO的狀態 而不是震盪的狀態  / @+ G2 O8 P, s3 ^# e8 L
所以應該要設初始條件 尤其是在模擬電源start-up的情形 初始值沒設好 好像也不會振說
23#
發表於 2007-9-9 14:38:59 | 只看該作者
最近一直在嘗試, 本來因為 schedule 的關係想先擱下, 以前做這個線路的同事說就是用 . {  s' i2 S, e+ G: S" h
HSPICE 跑不起來才換 ADiT, 是還沒有遇到說 real chip 不會動的情況...
4 [$ l2 }/ |5 v9 h4 Z) \+ X; N( e1 _( K8 D# ?& S& |8 L
不過最後一次的嘗試讓我看到它起震了, time step 要縮小到 0.1ns, CX1(inverter輸入端)
* w/ y9 S7 Q, L! H$ [* f: s* p0 n縮小到 4pF (是任意挑一個較小的值, 沒試過其他的..CX2 仍為 10pF), 不過還是有點怪怪的...
( X$ ^" Z1 `% s# Q5 ]
6 q; S- y1 ^2 H. P4 o前面討論有提到, 起震時在 X'tal 內 CS 的端點會看到振幅漸增的震盪, 我用 ADiT 跑出來
7 s& Q5 N8 J7 c2 [9 j到穩態時震幅是 +/- 2.x KV, SPICE 跑出來只有900多V, 另外 CX1=CX2=10pF 時 ADiT - t3 I6 N" _3 v8 |8 N! m
就可以很順利的起震, XG/XD 的振幅是 full swing, SPICE 的話會看到 XG/XD 的振幅很小,
5 ~+ P2 w( z3 k: l# r幾乎就是在 INV 的操作點附近, CS 端點的振幅也只有幾十V, 頻率慢一點 (ex. 2MHz) / w0 j- T5 G, K, N% P
還可以起震, 跑到 12MHz 時就掛了..8 K6 ]$ S: v- c. T1 n
4 S' u* [* g: o
只是 time step 設到 0.1ns 用 HSPICE 跑 12MHz X'tal 要好久....>_<
0 R* M0 y: V- q7 J6 t8 ?* R(當然比起前面 finster 大說的 32KHz 跑一個禮拜是好多了...)! d0 k4 S4 K3 u, f! e- D- m

: b1 Y  k- p: R  m% O[ 本帖最後由 skyboy 於 2007-9-9 02:51 PM 編輯 ]

評分

參與人數 1Chipcoin +3 +3 收起 理由
monkeybad + 3 + 3 經驗之談!值得參考!

查看全部評分

24#
發表於 2007-9-10 14:39:39 | 只看該作者
各位前輩, 不知大家是否模擬過Crystal oscillator的phase noise.
9 ?. o3 S* y+ e! y6 g3 ~& }小弟最近在模擬20Mhz的Crystal oscillator, 架構和上述討論的一樣,! M: w2 e' U. b6 P0 [
為一CMOS反向器加上Crystal's model.
; ~9 j" S6 m# d4 r' \小弟使用Spectre RF 模擬, option中, Integration method parameters設為"gear2only",. ?3 _. }2 S4 Q- W0 h) ~
在pss 模擬時, Crystal oscillator 無法振盪, 但是transient 卻是可以振盪的.
2 D  X3 \$ s) I0 Q$ j想請教各位前輩, 不知是否有人模擬過Crystal oscillator的phase noise??+ d4 G8 `' ~" E; s% c) s- Z  D
謝謝!!
25#
發表於 2007-9-10 18:24:26 | 只看該作者
感謝各位前輩提供的資訊.. u5 h6 h, [# I  D5 o# b, G  p
對於電感的初始值要如何設定才會符合真實狀況.
1 E) b9 _' k. T, K" L* iIC=1ua,一開始模擬就振的很漂亮.1 ^8 N2 h+ K# F' S* }7 h  G8 g: E! B
IC=0.1na,也可以振,只是起振時間拉長.謝謝.
26#
發表於 2007-10-7 12:50:25 | 只看該作者
原帖由 monkeybad 於 2007-8-9 10:01 AM 發表
4 ?2 _9 c1 F3 @2 s* P昨天晚上試了一下以前在網路上找到的一個方法
+ j/ P+ e* e& h1 R" z8 R0 K就是在一開始的時候 串聯一個起始電壓源來加速Hspice的模擬, X6 b9 b" V' _5 H. j3 I
起始電壓源為一個sine波 頻率設為crystal的震盪頻率 然後要加入damping factor 讓起始電壓慢慢衰減到零9 s5 ]6 ]- K( {6 ]
結 ...

) [1 z* \* P2 D: ?# k3 x  C7 H2 N' h6 e% m% a
小弟最近也在研究crystal oscillator circuit, 這個討論串讓我穫益良多9 J% a# C( e0 o$ F6 v
monkeybad 大的這份附件, 剛好讓我想到一個問題
" n1 j2 a6 _$ m7 d/ c9 _- R在這篇附件裡 figure 2的模擬結果顯示, Xtalin的振幅會大過Xtalout, 而Xtalin振幅甚至會超出 Vdd&Gnd! f7 }$ k& N- @" b& U
我自己在模擬的時候也看到同樣的現象, 但不知如何解釋才正確....
9 l, n# c# R$ x: z( r# MXtalin > Xtalout還可以理解, 畢竟兩端的loading不同
5 b+ ^5 n: r9 [: e3 o7 a但是Xtalin的振幅是否真的會超出supply rail? 還是只是模擬上是如此?
, L/ C9 v3 }6 X, i) ?4 Y! A8 l這個現象讓我聯想到DC-DC converter~ 不知道是否是電感所造成的效果?5 _7 Q# c6 P6 E4 c
查了幾份application note都沒討論晶體兩端振幅的問題, 不知道這個振幅有沒有辦法去計算或調整?  |/ `  h% Q7 e6 s
煩請各位前輩指點了, 感謝!!
27#
發表於 2007-10-8 00:29:48 | 只看該作者
實際 IC 確實有振超過 vdd 的案例
( T% `( d% }/ X& N2 U不過通常都伴有 消耗電流 過大的問題  r: _& C" U$ l7 q9 Y
: E5 U4 h$ u% O  \$ }8 @
嘗試降低 負電阻 試試
28#
發表於 2007-10-8 00:33:36 | 只看該作者
實際量測IC 負電阻 / h2 T! y8 K- ^& l
除了 網路分析儀 外" U8 c6 V4 _6 V5 s
還有一個 小方法 能 簡易評估
* T. X, r5 K$ z: v, a+ u. g* E- Q6 N, \5 W* z7 j
缺錢 賣10代幣吧  有人要買嗎 ?
29#
發表於 2007-10-27 10:17:47 | 只看該作者
受教了,我也遇到晶振振不起来的问题了
) {6 i- g/ m% }7 Q! X对于负电阻还是不太理解
30#
發表於 2008-1-15 00:33:08 | 只看該作者

回復 8# 的帖子

感謝finster分享
- J6 O& Q* h) h. i& ^, j; W小弟我目前遇到一個跟你的第五點問題滿類似的: h) F5 N$ R0 J! a  a
我是design一個32.768k crystal osc
" l* f2 j/ j9 J! I  v& t: k/ ^ic 回來量測時發現經過digital counter的輸出會有過快的現象,也就是它會數太快,代表著也許我送給它的頻率變快了" o' g" u6 T- {2 B" O
所以我就去量測內部頻率輸出32.768k的那一點訊號7 p5 u) h# N% w0 j& ]
我下探針去量測,發現頻率跟波形都正確1 w% {5 G0 ?, V0 q3 X& t  h
但是當我探針離開輸出那一點時,頻率又變快了(有接led燈,所以感覺的出來閃爍變快)
8 N* N# j1 ^$ \+ R9 S! |我當下是覺得探針類似有電容的效果
2 u( n" a2 a& D, Q0 R" m所以當探針下去時會有濾波的效果,所以頻率會正常,當探針一離開則頻率會變快  y9 ]) r1 e9 E4 Z5 A0 G
還以為是noise的影響
; r) E5 Y% a+ J看到你的第五點分享,現在想在我的輸出端再加上一個smitte trigger,然後再接給後面的digital counter來使用: F, H& @% S% c& j8 c' ^( A
看看問題是否可以獲得解決
31#
發表於 2008-1-18 09:26:07 | 只看該作者
原帖由 markcheng 於 2008-1-15 12:33 AM 發表
" `2 n& r8 A# V  p  `感謝finster分享
- J2 F0 ]6 w- ^( T' B4 M小弟我目前遇到一個跟你的第五點問題滿類似的
9 P5 R6 v- F  ?+ s我是design一個32.768k crystal osc* y! e: a, W; X' U( t
ic 回來量測時發現經過digital counter的輸出會有過快的現象,也就是它會數太快,代表著也許我送給它的頻率變快了 ...
& @. F6 i0 V1 @$ b6 }: U
7 T+ ]  {7 L: i* Q0 l9 d6 y
, x. r1 ?4 q9 c8 @7 U; c
不好意思,因為這一個主題己經有太多人回覆了
# _& E! S/ s* H8 d$ V! I7 V1 u. ]所以也就一直沒有留意有沒有人有再提出新的問題來5 ]+ F5 L: \6 P0 a
我們後來實驗的結果(藉由FIB),發現到當初的推論沒有錯,因為原本的規格是要作到很low power,所以32.768KHz Crystal output的推力就設計的很弱,以致於輸出的clock的rise time和fall time就變得很長,導致後級counter在遇到很長的rise time和fall time時,就會被重覆trigger,故而使得原本要一秒一秒計數的計數器變快了
1 s/ L! H' E# c解法就是加一個schmitter trigger,藉由schmitter trigger的hysteresis windows特點來解決過長rise time/fall time所造成的問題(我們有用hspice作過模擬,利用crystal oscillator + counter但卻沒有看到過長rise time/fall time會造成counter有多數的情況,後來,我們是在power處和crystal oscillator的output端各加一些noise,便會看到問題出現,因為過長的rise time/fall time在爬升的過程中,因為noise的緣故會導致counter在某些較大的noise處會被trigger)
32#
發表於 2008-1-18 12:22:06 | 只看該作者
原帖由 finster 於 2008-1-18 09:26 AM 發表 7 [+ q% k% o- E- s# I* [! Z
! r# @; k5 e# M2 N, Q

0 R/ `' K- u- t0 ?! p2 a
1 {/ M" z, B2 |) W- j# F+ x$ `6 c不好意思,因為這一個主題己經有太多人回覆了
9 r- U+ o" g  a. y; R所以也就一直沒有留意有沒有人有再提出新的問題來
; j7 O/ K/ r# b/ p) M+ V/ }我們後來實驗的結果(藉由FIB),發現到當初的推論沒有錯,因為原本的規格是要作到很low power,所以32.768KHz Crys ...
0 b% T" \* c( V) T0 P% c
+ X% w5 K- v) V2 {# f# h
因為我的電路裡面還有另外一個12M的OSC....其實電路上是大同小異的...但是12M卻沒有這個問題...我想應該是它速度太快了...因為12M一個cycle大概是80n...而32k768大概是30u....這個差距就差很多了...難怪rising跟falling影響後者比較嚴重...因為counter大概反應時間也都是 n sec 等級的...最後還是感謝分享經驗
33#
發表於 2008-1-24 15:07:03 | 只看該作者
我想請問一下  之前一直提到的負電阻2 C# j; @6 Q9 a0 ~! o( Z8 P3 i6 h
到底是什麼阿
$ @; b6 D& h+ v' {有沒有參考資料可以閱讀的
! l+ t  J# S8 Y或是哪本教科書有提到的/ y+ g/ A7 a" n3 t. V4 `! y
我初踏入這個領域什麼都不懂% P. j% w" q' p, p7 A( r
謝謝大家了
34#
發表於 2008-1-31 11:33:38 | 只看該作者
很抱歉之前問了個小白問題0 A6 Z+ m: X: a" q# G
我查了些參考書還有文件後6 b) h6 a1 g( N3 T8 F4 h1 T' q! |
總算對負電阻有些粗淺的了解$ |) Q% Z, C, g

- k* j: z9 L% G- @最近老闆要我改良之前12MHZ的Oscillator( t# r4 C* C! F, S" `2 }, D
參考板上的文章後 把前人留下的電路丟下去跑模擬) X, A  P" e% b3 s" R5 J
算是可以正常起振; }: C. x/ ~( v9 W* H6 I0 D' K

6 ?. Y& i8 ^5 x( Q+ B" |我的經驗是$ v1 |8 M& U" |2 s
若是使用HSPICE的話 Time Step 設太小 模擬時間會拉的很長# G% N' s/ c6 k% c3 L5 Y& H, L4 r
使用ELDO則可以大幅縮減模擬時間  可是要注意要下 .option tuning = accurate/VHIGH 的參數 不然模擬結果會非常不準- g. L% G! |8 n( g9 R, V
然後ADIT模擬時間最短  但是算是最不準吧  粗淺的測試可以使用
( h, c$ K2 u( S1 _( Y: [& E, i* U  S但是到最後的驗證的話  還是要用HSPICE跑一下比較妥當
' ^5 z! Y' E; m; ~, z以上
35#
發表於 2008-1-31 16:39:37 | 只看該作者

回復 2# 的帖子

給monkeybad
1 t8 V1 y. A" p, T- \7 y/ s9 h, w( i% F. N' a: [, o) y& X
我覺得這樣模擬負電阻的方式有一點點問題
+ {' j) @$ v) q: H2 Q  L- m你這樣所看到的阻值 與你所提供的Philip AN97090文件裡面的值不一樣8 L: q5 |4 l% f1 d, e. ]
你模擬的是並聯的負電阻值  而Philip的是串聯的
" r) r6 A* {% j兩者會有差別
% B; V: Q/ [, u" Q' s! q. c( {& ]3 ?" ^: n
如果要用並聯的方式討論的話% y7 i: L4 j$ g' i
可能要把Crystal裡面的Rs換成並聯形式  就像是Razavi P.497推導的一樣
/ j$ z5 C! Z. D" j3 ~" j1 w* T* x然後負加正大於0 (因為是並聯形式  所以要相加大於零) (Razavi P.504)8 T) m/ j7 g4 O7 w1 Q) {
應該就可以起振了
9 Z) O5 W7 }5 I7 g' `6 m9 m1 _1 z- Y5 O+ ]& g
另外有個問題
9 D0 _- a9 p- H% K7 a不知道在圖二你是用什麼方式把頻率鎖在震盪頻率  _/ |8 j# Q% F. ]* y! [$ {
如果把石英拿掉的話, D( }% Y7 {; n! D2 R* P. w
震盪頻率應該就是Inverter Delay的倒數  大概都是G的等級! T4 j6 S2 A4 s6 G9 b
如果沒有鎖住的話  那模擬出來的負電阻就跟震盪時的負電阻不一樣了
# d, r7 o- r: L7 z: B
5 \6 N/ d. u. G2 l. a一點淺見, L6 ]2 |7 Y+ k: Z
有錯請不吝指教
36#
發表於 2008-1-31 22:41:07 | 只看該作者
抱歉 我又來囉唆了
( u# i* T8 I/ g- I! C我剛剛模擬了一下 monkeybad大大模擬負電阻的方式確實可以用
7 R3 {# G) s6 N0 J7 O7 @3 S5 d% B只是模擬出來的值  跟參考文件上的不一樣) s3 g( N* F1 d$ n5 c6 r  w
它其實是Crystal往外看的等效電阻值
' }9 W2 P" g7 J' V- P6 G+ X所以如果要用Philip文件上的方式判斷的話
: l4 J3 S/ C& t還要把這個電阻值做修正 也就是跟Rp的方法一樣% T/ ^. {) Q2 R& s& v+ a7 _: q9 u
這樣才可以把並聯的負電阻值換成串聯形式$ g- h: h. r* A% \
然後負大於正就可以起振
. f( U) w8 R' f. c2 c2 d+ h8 h5 h# B
另外  我想請問一下monkeybad還有skyboy大大3 \. [# j6 A6 O; L+ q, Z* B
在做負電組模擬時 要怎麼設定aa和bb的直流偏壓值
, n. d  c2 i7 N: R8 z. ]我自己的方式是把Inverter的平衡點社在中間  然後下電流參數的時候 不給直流參數
! J. Z1 Q) b; n不知道這樣合不合理1 D9 X* ^+ `+ }1 Y+ M3 P
謝謝
37#
發表於 2008-8-19 13:30:06 | 只看該作者
這一篇的討論真的很不錯!!
! _+ M; [- c7 J4 W' W4 r2 m   受益良多...
38#
發表於 2008-12-22 18:27:46 | 只看該作者
真是很棒的分享
( c' R! i3 w/ {* o; d# [( j9 n( a8 H/ x9 d1 ]  d1 h6 k: I/ h% ^
Thanks for your input!
39#
發表於 2008-12-22 20:23:13 | 只看該作者
谢谢f分享经验
# M# S! R; q1 Y6 I3 H4 H: Jcrystal的等效模型各位是从哪得到的?
40#
發表於 2008-12-24 20:38:47 | 只看該作者
嗯~~多謝大大的提供~~小第也在做振盪器~~~謝謝囉~~~大大
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-4-27 02:49 AM , Processed in 0.125008 second(s), 16 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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