Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

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

回復 #20 monkeybad 的帖子

to:monkeybad0 e' s9 ~6 D( S5 p' }( z6 r
由于最近不常上chip123,所以现在才回答您的问题,表示非常抱歉!; V1 ^% G% [* o, g1 [# ~) U
现在是我稍早前仿真的一个振荡电路,希望对您有所帮助!
: E' r7 H4 s6 ~9 f  f6 {+ g4 p& ~" Q
3 L! ~+ h6 T$ g# b/ M8 E电感初始的电流设置如下所示:4 n3 E+ K* T; y9 V# ]2 u# T- t
L_L1         N11450 N03952  588.873289 IC=1uA # D. \/ ?, A9 @9 |0 ~# O3 C

# h7 K& A+ h$ i8 d; U注意给电感设置初始值要不能太小!
9 U: y( Y* e' v/ _6 \' p; w$ Hhttp://www.eetop.cn/bbs/thread-58028-1-1.html(这是我在eetop的一个讨论贴,希望对您有所帮助)
* x! N! a/ {8 u1 Y: k6 r------------------------. w# `7 u6 ~8 V  p
* source 100K5 g2 S- ^7 y" h, {6 \3 ^
.PROT( V# L0 |, h* J, k/ {  ?1 t* l
.inc 'd:\hs\lib\level3'
8 l- e* O. Y5 m% n( N- J0 n.UNPROT! ~& {- e! O) W) z
C_C4         IN VOUT  1.72169576e-012  * i' y& P6 w- Y% Q* \
M_M1         VOUT IN 0 0 n
1 y: r( R8 U* A+ V: T+ L=16u    N5 Y, y& x7 ~6 _3 i- I
+ W=0.8u         
( V+ w+ ?+ y. k3 y( D# e; g& T) j+ M=10
& _' ~. F+ t. Z9 sM_M2         VOUT IN vdd vdd p ; Q. ]' [6 ]! [: ]0 u" p" j
+ L=16u  * f1 \& X  F& T5 _+ ]/ P! t) f$ c
+ W=0.8u          - o* v+ d- R! X2 w. g1 m# k
+ M=228 O, Q* ?3 e3 a4 ]# Z# S
R_R3         IN N11450  18.5k  
% f2 d9 h2 X: ^2 p1 M$ M4 eV_V1         vdd 0 pwl(0 0,10us 3Vdc,20u 0,30us 3vdc)$ ]' Z/ T+ t; X( ^  j! k
C_C1         IN 0  5p  
( I. g! r& D% |8 Y% C( S6 D( |C_C2         0 VOUT  5p  
2 T; d% Q% `# |5 {, L$ dL_L1         N11450 N03952  588.873289 IC=1uA
! s$ ~: c& Q( B) N1 b/ PR_Rf         IN VOUT  50meg  
9 G, w' r: X( N% S; iC_C3         N03952 VOUT  4.30423941e-015  
# @. s6 |9 G5 z/ l4 J+ y4 l8 F.tran 1ns 20ms 6 C6 V( a% L$ M. g
.probe tran  v(in) v(vout)6 a4 i: |( {# E" }- l0 V
.end

評分

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

查看全部評分

22#
 樓主| 發表於 2007-9-8 16:44:00 | 只看該作者
感謝wwm101提供這麼詳細的模擬資料
* X6 j  [, f# C, ^2 t5 X& r5 m8 B  T3 S原來設電感初始值只要加 IC=1uA 就可以了 又學到一個指令了! K% f0 _" {# i% I+ ^4 _. C

7 G+ A+ x9 A5 d& ?8 V9 r看了討論區的文章 3 H9 y/ k8 F6 X, ^, B
同意裡面的講法; r5 r$ `3 h% o# f
震盪器模擬應該跟初始值有關 可能是模擬軟體本身的收斂問題 可能跟演算法有關吧. P2 i7 M# {. P) R+ [& p
設不好就都掉到ZERO的狀態 而不是震盪的狀態  - x% f- A. E: F
所以應該要設初始條件 尤其是在模擬電源start-up的情形 初始值沒設好 好像也不會振說
23#
發表於 2007-9-9 14:38:59 | 只看該作者
最近一直在嘗試, 本來因為 schedule 的關係想先擱下, 以前做這個線路的同事說就是用 ! ?' X, Q3 U2 S& X  ~
HSPICE 跑不起來才換 ADiT, 是還沒有遇到說 real chip 不會動的情況...3 a/ z) @. [2 l5 i. }" \+ K
$ f3 x, Y& q# ^% s8 X
不過最後一次的嘗試讓我看到它起震了, time step 要縮小到 0.1ns, CX1(inverter輸入端)
6 v  C5 U% R' }縮小到 4pF (是任意挑一個較小的值, 沒試過其他的..CX2 仍為 10pF), 不過還是有點怪怪的...
9 c: L& k8 k" V
- g  |7 h# b' _) H前面討論有提到, 起震時在 X'tal 內 CS 的端點會看到振幅漸增的震盪, 我用 ADiT 跑出來
, \0 Z7 p% d; ]& i% t- I2 F% S到穩態時震幅是 +/- 2.x KV, SPICE 跑出來只有900多V, 另外 CX1=CX2=10pF 時 ADiT 5 n3 ^, p0 ?% h; y$ K, L) e
就可以很順利的起震, XG/XD 的振幅是 full swing, SPICE 的話會看到 XG/XD 的振幅很小,
5 S" X% L( G; J5 @* W! k幾乎就是在 INV 的操作點附近, CS 端點的振幅也只有幾十V, 頻率慢一點 (ex. 2MHz) # r, I. |" S5 p  \9 K! ?
還可以起震, 跑到 12MHz 時就掛了..
& s! t8 E) J3 r9 y% E1 k1 d) p# M) g/ s0 z8 V
只是 time step 設到 0.1ns 用 HSPICE 跑 12MHz X'tal 要好久....>_<
: i) f0 q" v8 s(當然比起前面 finster 大說的 32KHz 跑一個禮拜是好多了...)
8 R: O* e4 j6 p! ^! {5 D9 f
5 o- l. m4 f8 t5 j( K[ 本帖最後由 skyboy 於 2007-9-9 02:51 PM 編輯 ]

評分

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

查看全部評分

24#
發表於 2007-9-10 14:39:39 | 只看該作者
各位前輩, 不知大家是否模擬過Crystal oscillator的phase noise.% z+ @: x" X. H+ S. r; Q2 h" L
小弟最近在模擬20Mhz的Crystal oscillator, 架構和上述討論的一樣,
% ~5 v, }7 c: {! J# m1 g0 c6 R為一CMOS反向器加上Crystal's model. 5 @4 J9 N9 S' b  P0 i+ }
小弟使用Spectre RF 模擬, option中, Integration method parameters設為"gear2only",
* i  w; ~+ d' r0 r+ p5 q在pss 模擬時, Crystal oscillator 無法振盪, 但是transient 卻是可以振盪的.+ s9 _6 b9 Z: X: l  ~8 `! D
想請教各位前輩, 不知是否有人模擬過Crystal oscillator的phase noise??2 `& ~- r: e7 D7 m4 f
謝謝!!
25#
發表於 2007-9-10 18:24:26 | 只看該作者
感謝各位前輩提供的資訊., W/ b+ r% Q/ |; g$ F. m! l& w# _$ i% Q
對於電感的初始值要如何設定才會符合真實狀況.
- I& h  O5 N$ V7 E( n+ J0 x3 aIC=1ua,一開始模擬就振的很漂亮., z( ?9 Z% Y; I# `( B. e6 s
IC=0.1na,也可以振,只是起振時間拉長.謝謝.
26#
發表於 2007-10-7 12:50:25 | 只看該作者
原帖由 monkeybad 於 2007-8-9 10:01 AM 發表
8 \3 t& S. K2 L5 }; m, S; i% N昨天晚上試了一下以前在網路上找到的一個方法- k2 B% {; b. `5 @" Z4 x; x8 P' S
就是在一開始的時候 串聯一個起始電壓源來加速Hspice的模擬: G0 _/ y5 D' c) R, X! ~' h
起始電壓源為一個sine波 頻率設為crystal的震盪頻率 然後要加入damping factor 讓起始電壓慢慢衰減到零
" C# A1 D9 D  m# F結 ...
/ m9 N4 c) Y( w

! E1 R) o; n% A1 h) a4 S- i( i小弟最近也在研究crystal oscillator circuit, 這個討論串讓我穫益良多9 r3 F  K+ F3 c: `: p# J$ ~
monkeybad 大的這份附件, 剛好讓我想到一個問題
: U9 N0 h; \6 ~4 H8 Q7 p在這篇附件裡 figure 2的模擬結果顯示, Xtalin的振幅會大過Xtalout, 而Xtalin振幅甚至會超出 Vdd&Gnd
0 t4 i, l& P" \我自己在模擬的時候也看到同樣的現象, 但不知如何解釋才正確....
5 R% e) T1 }! U/ ]: }5 \Xtalin > Xtalout還可以理解, 畢竟兩端的loading不同8 K: @! m  L+ G& y0 x: \$ t
但是Xtalin的振幅是否真的會超出supply rail? 還是只是模擬上是如此?$ E' a* c6 b* g8 `8 J7 L! C# ^
這個現象讓我聯想到DC-DC converter~ 不知道是否是電感所造成的效果?
3 u0 ?6 u0 A* R% v; Q) g; A. |( A查了幾份application note都沒討論晶體兩端振幅的問題, 不知道這個振幅有沒有辦法去計算或調整?
' z7 C) R  ?  ]0 d" W煩請各位前輩指點了, 感謝!!
27#
發表於 2007-10-8 00:29:48 | 只看該作者
實際 IC 確實有振超過 vdd 的案例
* [! }3 A/ ~' e7 h+ S' r不過通常都伴有 消耗電流 過大的問題
0 {* G2 o6 }/ n9 W  h1 n4 R3 R
3 W5 b( E( D" X4 W" U6 c嘗試降低 負電阻 試試
28#
發表於 2007-10-8 00:33:36 | 只看該作者
實際量測IC 負電阻 2 _6 d2 W, q1 a+ Q+ b
除了 網路分析儀 外( k8 g# x3 N: {; y
還有一個 小方法 能 簡易評估
9 u- @! U; `: R$ X' K1 U8 I
# h5 }0 ]* [# a1 m2 \缺錢 賣10代幣吧  有人要買嗎 ?
29#
發表於 2007-10-27 10:17:47 | 只看該作者
受教了,我也遇到晶振振不起来的问题了
3 _* s! H6 U" C- p5 I对于负电阻还是不太理解
30#
發表於 2008-1-15 00:33:08 | 只看該作者

回復 8# 的帖子

感謝finster分享% x; R$ N8 U( ~2 v9 J: c3 r
小弟我目前遇到一個跟你的第五點問題滿類似的
9 @8 H0 M0 g9 z6 @/ |我是design一個32.768k crystal osc
1 A. Q# r6 K# C2 Oic 回來量測時發現經過digital counter的輸出會有過快的現象,也就是它會數太快,代表著也許我送給它的頻率變快了5 [6 Y" A, N+ s
所以我就去量測內部頻率輸出32.768k的那一點訊號
! a8 g6 `: V1 L& f4 b, a7 Z& \( l我下探針去量測,發現頻率跟波形都正確% o1 t, ^# `; o7 {+ s  a
但是當我探針離開輸出那一點時,頻率又變快了(有接led燈,所以感覺的出來閃爍變快)3 i7 P( K0 n% ^$ l; P% Y
我當下是覺得探針類似有電容的效果
1 f- v% u5 C" V% f8 A8 |; L所以當探針下去時會有濾波的效果,所以頻率會正常,當探針一離開則頻率會變快% k. d0 }# ^0 q& N- i
還以為是noise的影響  F2 w: t0 A% `/ _; A6 l. c
看到你的第五點分享,現在想在我的輸出端再加上一個smitte trigger,然後再接給後面的digital counter來使用
- c4 i5 [% i$ y- o0 }8 S' R看看問題是否可以獲得解決
31#
發表於 2008-1-18 09:26:07 | 只看該作者
原帖由 markcheng 於 2008-1-15 12:33 AM 發表 / s# u3 K% Z6 z- z+ u( w4 ]
感謝finster分享5 ?: O+ T* M+ S) ~! P% u4 R! i. b
小弟我目前遇到一個跟你的第五點問題滿類似的
) [: W7 Q. p. d* g我是design一個32.768k crystal osc1 \+ P3 E: O1 o3 E' h& h- @
ic 回來量測時發現經過digital counter的輸出會有過快的現象,也就是它會數太快,代表著也許我送給它的頻率變快了 ...

9 v, k* D8 B  ^# H
' h! {' H' w6 c6 S, H- F- b2 F& _
不好意思,因為這一個主題己經有太多人回覆了( Y. {: C+ R, A; v, `/ ]
所以也就一直沒有留意有沒有人有再提出新的問題來
2 k7 `4 X7 V- P* V2 B我們後來實驗的結果(藉由FIB),發現到當初的推論沒有錯,因為原本的規格是要作到很low power,所以32.768KHz Crystal output的推力就設計的很弱,以致於輸出的clock的rise time和fall time就變得很長,導致後級counter在遇到很長的rise time和fall time時,就會被重覆trigger,故而使得原本要一秒一秒計數的計數器變快了
* S9 }, g- X' j+ ~/ O! r解法就是加一個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 發表
5 v" L5 ~3 l8 G7 |6 f7 Z7 L& K2 B3 K. D) {" r5 i

  c& }) ?1 N+ }! p: {; T1 X6 N. D
0 m  }- u: X: V1 |& h4 ^不好意思,因為這一個主題己經有太多人回覆了& n9 l2 J* m" s4 W* c& G
所以也就一直沒有留意有沒有人有再提出新的問題來8 l# x5 Y; \2 |) m7 K6 f4 L8 f
我們後來實驗的結果(藉由FIB),發現到當初的推論沒有錯,因為原本的規格是要作到很low power,所以32.768KHz Crys ...

" P: g! J6 S; i; C) u& k" t9 u+ m. e; F) _5 Q' C6 O* S4 {
因為我的電路裡面還有另外一個12M的OSC....其實電路上是大同小異的...但是12M卻沒有這個問題...我想應該是它速度太快了...因為12M一個cycle大概是80n...而32k768大概是30u....這個差距就差很多了...難怪rising跟falling影響後者比較嚴重...因為counter大概反應時間也都是 n sec 等級的...最後還是感謝分享經驗
33#
發表於 2008-1-24 15:07:03 | 只看該作者
我想請問一下  之前一直提到的負電阻* W" h) |/ L* z7 X
到底是什麼阿
: E# K' d. f* i6 ?有沒有參考資料可以閱讀的/ W; |* @" w* i9 L1 X1 ]7 u( i
或是哪本教科書有提到的
3 Q* Q6 `5 e5 j  C0 [! A我初踏入這個領域什麼都不懂$ \8 e& S% q0 T$ e9 Z1 P0 d
謝謝大家了
34#
發表於 2008-1-31 11:33:38 | 只看該作者
很抱歉之前問了個小白問題4 [6 n1 O; N; U. y8 f! d+ Z3 q! ], |% n
我查了些參考書還有文件後
' D  X3 N) a7 r0 Z8 `3 d7 o+ x+ M$ K) [總算對負電阻有些粗淺的了解) e. T; [; Q  Z9 J' ?( X. F, W, r' o

1 t! q) Q. b% m最近老闆要我改良之前12MHZ的Oscillator
( a6 \4 I; S* e; |, M參考板上的文章後 把前人留下的電路丟下去跑模擬
. p9 \7 |* b2 Z4 \算是可以正常起振
. Q  N9 U0 U$ K- `
1 F8 R  q( w* b' N& s. Q我的經驗是
" T$ T5 U7 p: G若是使用HSPICE的話 Time Step 設太小 模擬時間會拉的很長
& X) R( _: b6 M/ {7 m使用ELDO則可以大幅縮減模擬時間  可是要注意要下 .option tuning = accurate/VHIGH 的參數 不然模擬結果會非常不準
% }8 Z/ t. u9 _$ _然後ADIT模擬時間最短  但是算是最不準吧  粗淺的測試可以使用) d% f; Y8 k( e1 b" E& t- r
但是到最後的驗證的話  還是要用HSPICE跑一下比較妥當% W0 S2 N. |, i$ c* m3 O8 U+ v. |
以上
35#
發表於 2008-1-31 16:39:37 | 只看該作者

回復 2# 的帖子

給monkeybad2 H) R9 L* i7 G, n- ~; d! Q
3 |" Q' S8 ^' V7 f% q" `& _
我覺得這樣模擬負電阻的方式有一點點問題$ W2 `% Y% x  |& P3 D
你這樣所看到的阻值 與你所提供的Philip AN97090文件裡面的值不一樣; \+ X+ i/ \6 }2 h0 a
你模擬的是並聯的負電阻值  而Philip的是串聯的# _$ }( I& G% D# U9 w$ N, T
兩者會有差別- ]# R: n/ [% X$ X9 D/ t: p8 B- V
: i+ k5 @8 C( y% `3 w
如果要用並聯的方式討論的話
$ W' ?$ [. s, w3 d可能要把Crystal裡面的Rs換成並聯形式  就像是Razavi P.497推導的一樣
" d. W( s+ O' y# N* J1 x然後負加正大於0 (因為是並聯形式  所以要相加大於零) (Razavi P.504)
! T( g: j' J* d. w( S/ R8 l9 j$ E應該就可以起振了  i: s- H' j' i. k) u' q
: M6 O- `/ ]8 v! \6 f3 S8 r8 U' q
另外有個問題
, `3 i8 B" r8 Y  {4 X不知道在圖二你是用什麼方式把頻率鎖在震盪頻率7 N4 x1 N- s9 [, F$ t& }9 I) N
如果把石英拿掉的話
1 p; |7 U  S9 @7 ]震盪頻率應該就是Inverter Delay的倒數  大概都是G的等級
4 J& |  `( f: n# n9 m5 D$ }如果沒有鎖住的話  那模擬出來的負電阻就跟震盪時的負電阻不一樣了
  i1 Y, r# e1 W# z8 c! b8 E: P; d& c. g5 S
一點淺見
+ U4 {6 m" i# Q+ o, Q有錯請不吝指教
36#
發表於 2008-1-31 22:41:07 | 只看該作者
抱歉 我又來囉唆了+ f* \# t. {% r8 L9 q% X+ m2 U
我剛剛模擬了一下 monkeybad大大模擬負電阻的方式確實可以用
# K0 \5 q" C$ n8 Y5 B, }" B/ j只是模擬出來的值  跟參考文件上的不一樣; a: m( T+ ]' C4 D6 \- _# K
它其實是Crystal往外看的等效電阻值( Z2 t  X% }: p. x5 v. f
所以如果要用Philip文件上的方式判斷的話; G) t- z& g7 i. w' [( A5 {6 m/ s
還要把這個電阻值做修正 也就是跟Rp的方法一樣, C1 M# ]  Y" m% k/ @; s
這樣才可以把並聯的負電阻值換成串聯形式( b: \1 G* n5 n) r( C1 J
然後負大於正就可以起振2 R$ B5 n2 l& P) k# K1 A* K' ~
  v$ H) s7 h: r6 T0 Z7 v1 L
另外  我想請問一下monkeybad還有skyboy大大! O* A5 k% j* P" P* c  f7 C1 ^& M2 x
在做負電組模擬時 要怎麼設定aa和bb的直流偏壓值* S8 L" H6 E1 C1 t( `* E
我自己的方式是把Inverter的平衡點社在中間  然後下電流參數的時候 不給直流參數
3 k3 d; |: L+ k7 F  ]$ s; Q不知道這樣合不合理* v/ Z# w% o: j+ G+ ]' ?' \6 v' f  I
謝謝
37#
發表於 2008-8-19 13:30:06 | 只看該作者
這一篇的討論真的很不錯!!
+ B0 s  J6 }- h) K+ J   受益良多...
38#
發表於 2008-12-22 18:27:46 | 只看該作者
真是很棒的分享! w& D( V6 ^* F
2 {- R. S" k6 Y6 Q) F9 T
Thanks for your input!
39#
發表於 2008-12-22 20:23:13 | 只看該作者
谢谢f分享经验! j  R4 {! R% }& J% z
crystal的等效模型各位是从哪得到的?
40#
發表於 2008-12-24 20:38:47 | 只看該作者
嗯~~多謝大大的提供~~小第也在做振盪器~~~謝謝囉~~~大大
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-6-15 05:46 AM , Processed in 0.158520 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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