Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

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

回復 #20 monkeybad 的帖子

to:monkeybad8 G( T8 z8 l( S2 J& h$ R2 P6 Q5 ^0 k
由于最近不常上chip123,所以现在才回答您的问题,表示非常抱歉!& v: u1 {6 a; `  |
现在是我稍早前仿真的一个振荡电路,希望对您有所帮助!. I3 i4 Q0 p1 S; s# [9 u* b
, f! i  P, L, u, @6 z2 ?3 ?
电感初始的电流设置如下所示:6 U' n- I  S0 v) U: J! X  h; F4 m
L_L1         N11450 N03952  588.873289 IC=1uA
5 q/ s) [- x. T& e2 I; U9 e9 N% ^+ B/ j: |# ]3 w! P
注意给电感设置初始值要不能太小!% z9 I; l# M' g# T% [7 t
http://www.eetop.cn/bbs/thread-58028-1-1.html(这是我在eetop的一个讨论贴,希望对您有所帮助)* Y. }5 U3 Y/ s1 ^9 T) M( D
------------------------
* G, x) \- r7 t4 X7 f% |) z3 O* source 100K" E% L- J% v% @
.PROT; h) t; K9 n/ K
.inc 'd:\hs\lib\level3'
& D% [' b" l/ |, F! i0 X, R6 B/ R9 I4 Q.UNPROT, o9 k) E& |9 c/ A# r
C_C4         IN VOUT  1.72169576e-012  ( @- s+ |. }0 Q+ B  {$ e
M_M1         VOUT IN 0 0 n( H6 e0 o2 n# o/ e5 O' n2 Z) W( n
+ L=16u  
' y' O! ?4 Q, {6 r& W6 B3 \/ q+ W=0.8u          5 I& N- Y4 U% s# K
+ M=10
3 V; G, |* c  B1 LM_M2         VOUT IN vdd vdd p $ y3 U/ D; b! O+ k+ z' ^
+ L=16u  
0 U* E9 E4 {9 l& F+ W=0.8u         
5 V5 [) }/ J' i: T9 c+ M=22
1 G7 l+ R  ^" p0 QR_R3         IN N11450  18.5k  . s, N! S& _- c' d! g, [1 V( i
V_V1         vdd 0 pwl(0 0,10us 3Vdc,20u 0,30us 3vdc)) H8 m- u0 B1 y" B6 ~/ ~0 u
C_C1         IN 0  5p  
1 x% U1 N! s7 Q3 @6 `0 ~C_C2         0 VOUT  5p  9 }/ F$ W: r' `4 v) O! E
L_L1         N11450 N03952  588.873289 IC=1uA
4 U' n: Z% s. v8 M& r' M# hR_Rf         IN VOUT  50meg  # S6 Z" i; |9 X; k- |0 t! \
C_C3         N03952 VOUT  4.30423941e-015  ) h# r/ x5 f  Y1 ]- M  s! ]$ ^
.tran 1ns 20ms 1 r' D0 L" x0 S
.probe tran  v(in) v(vout)6 N. P1 P. W0 \: t4 Z
.end

評分

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

查看全部評分

22#
 樓主| 發表於 2007-9-8 16:44:00 | 只看該作者
感謝wwm101提供這麼詳細的模擬資料# Q* q+ B1 f4 b' g  s2 w& [1 E. D
原來設電感初始值只要加 IC=1uA 就可以了 又學到一個指令了
' I: D, B2 {) }7 T6 @3 C( Q, H$ k( |5 c/ F5 {$ m: p
看了討論區的文章
: \" ]/ G3 L* d  p同意裡面的講法
! N! g; W% q" k. P  `; Y+ k: h震盪器模擬應該跟初始值有關 可能是模擬軟體本身的收斂問題 可能跟演算法有關吧* D, N/ t2 u, T
設不好就都掉到ZERO的狀態 而不是震盪的狀態  5 `& A$ m( D9 K! x
所以應該要設初始條件 尤其是在模擬電源start-up的情形 初始值沒設好 好像也不會振說
23#
發表於 2007-9-9 14:38:59 | 只看該作者
最近一直在嘗試, 本來因為 schedule 的關係想先擱下, 以前做這個線路的同事說就是用
( W4 ^* G, ]$ z% h& L9 a, K: BHSPICE 跑不起來才換 ADiT, 是還沒有遇到說 real chip 不會動的情況...* m0 [* H* s8 F4 s* e$ v
7 s+ ?1 p6 C1 ?
不過最後一次的嘗試讓我看到它起震了, time step 要縮小到 0.1ns, CX1(inverter輸入端)3 e2 s; S% _: A! P5 Q
縮小到 4pF (是任意挑一個較小的值, 沒試過其他的..CX2 仍為 10pF), 不過還是有點怪怪的...! F7 j1 _' v: X0 y6 r. F) m5 A- A

9 [, \) n5 j9 o6 x3 g前面討論有提到, 起震時在 X'tal 內 CS 的端點會看到振幅漸增的震盪, 我用 ADiT 跑出來
. F0 ?- |+ N; |+ A$ Z到穩態時震幅是 +/- 2.x KV, SPICE 跑出來只有900多V, 另外 CX1=CX2=10pF 時 ADiT
) c! N+ y0 B" G9 @就可以很順利的起震, XG/XD 的振幅是 full swing, SPICE 的話會看到 XG/XD 的振幅很小, # }- i" ?3 V8 l
幾乎就是在 INV 的操作點附近, CS 端點的振幅也只有幾十V, 頻率慢一點 (ex. 2MHz)
% i( a9 J3 y5 [: G) o還可以起震, 跑到 12MHz 時就掛了..
2 o7 M( c* u$ Z
5 n' |, J: {* t1 K7 o% C+ T只是 time step 設到 0.1ns 用 HSPICE 跑 12MHz X'tal 要好久....>_<) ]$ B) @: _/ I% O% b, u" S
(當然比起前面 finster 大說的 32KHz 跑一個禮拜是好多了...)
; L2 b$ G' P0 a; q2 T, ~. N* {( b- B$ p' x6 ^& {; W8 |8 m( E- h0 N. L
[ 本帖最後由 skyboy 於 2007-9-9 02:51 PM 編輯 ]

評分

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

查看全部評分

24#
發表於 2007-9-10 14:39:39 | 只看該作者
各位前輩, 不知大家是否模擬過Crystal oscillator的phase noise.
2 Z1 i* \; F+ N* V4 W* ^. x小弟最近在模擬20Mhz的Crystal oscillator, 架構和上述討論的一樣,
; b" M! D" i3 h' i為一CMOS反向器加上Crystal's model.
, X" t% ]: [4 B4 r/ {小弟使用Spectre RF 模擬, option中, Integration method parameters設為"gear2only",
0 e4 a6 Z$ l" B- c8 j8 l8 K& F# o在pss 模擬時, Crystal oscillator 無法振盪, 但是transient 卻是可以振盪的.
  a0 d. o  d- e想請教各位前輩, 不知是否有人模擬過Crystal oscillator的phase noise??
+ J  F# a$ W4 @8 E' H謝謝!!
25#
發表於 2007-9-10 18:24:26 | 只看該作者
感謝各位前輩提供的資訊.
% y- S% A0 C/ @' H9 H對於電感的初始值要如何設定才會符合真實狀況.
" k# k% h9 c6 E! t  @& dIC=1ua,一開始模擬就振的很漂亮.
7 h3 g- N: S. m- q9 n# W& Y$ _IC=0.1na,也可以振,只是起振時間拉長.謝謝.
26#
發表於 2007-10-7 12:50:25 | 只看該作者
原帖由 monkeybad 於 2007-8-9 10:01 AM 發表
; d& J9 x1 i. S, }1 X昨天晚上試了一下以前在網路上找到的一個方法
- _' f% H3 @2 e4 j; h6 u( I2 V就是在一開始的時候 串聯一個起始電壓源來加速Hspice的模擬5 G) O+ c- p' E+ k% Y
起始電壓源為一個sine波 頻率設為crystal的震盪頻率 然後要加入damping factor 讓起始電壓慢慢衰減到零. v7 Y6 }1 w. t
結 ...

+ H# Y% C; g( Z! S1 u
* i2 c( y3 J( M+ T小弟最近也在研究crystal oscillator circuit, 這個討論串讓我穫益良多) e& Z( {4 k  y" M9 s7 O2 h" ?
monkeybad 大的這份附件, 剛好讓我想到一個問題9 o& a1 }: L/ ^/ Q5 s
在這篇附件裡 figure 2的模擬結果顯示, Xtalin的振幅會大過Xtalout, 而Xtalin振幅甚至會超出 Vdd&Gnd, h7 B; V* P4 A2 k
我自己在模擬的時候也看到同樣的現象, 但不知如何解釋才正確....
* `& M1 G9 k9 rXtalin > Xtalout還可以理解, 畢竟兩端的loading不同
. V+ o$ O9 w; B( U1 y4 }1 @但是Xtalin的振幅是否真的會超出supply rail? 還是只是模擬上是如此?# y& u- X6 c" j$ R+ `
這個現象讓我聯想到DC-DC converter~ 不知道是否是電感所造成的效果?
2 f$ Y1 ]5 N5 Y& p2 r4 k4 l% i! P查了幾份application note都沒討論晶體兩端振幅的問題, 不知道這個振幅有沒有辦法去計算或調整?
' X# I2 y  D- x6 A; \' J7 D8 V煩請各位前輩指點了, 感謝!!
27#
發表於 2007-10-8 00:29:48 | 只看該作者
實際 IC 確實有振超過 vdd 的案例; C1 @3 d7 ]: a
不過通常都伴有 消耗電流 過大的問題  @( _: ~0 a, ~! W1 O

8 d& t( D0 e! a% p. N$ l# [嘗試降低 負電阻 試試
28#
發表於 2007-10-8 00:33:36 | 只看該作者
實際量測IC 負電阻 ' Y/ _. I9 t( C  M, H4 K( g/ H7 q% C
除了 網路分析儀 外6 Z0 D' E% G8 L% k! L
還有一個 小方法 能 簡易評估 % F5 I. W4 T3 p
1 }; W. b  X* o: k6 o  l/ _
缺錢 賣10代幣吧  有人要買嗎 ?
29#
發表於 2007-10-27 10:17:47 | 只看該作者
受教了,我也遇到晶振振不起来的问题了
9 j8 z/ K, K- h% F+ U" O, L对于负电阻还是不太理解
30#
發表於 2008-1-15 00:33:08 | 只看該作者

回復 8# 的帖子

感謝finster分享6 z- ^9 H1 j$ P
小弟我目前遇到一個跟你的第五點問題滿類似的
# \3 j8 f" f) C6 a我是design一個32.768k crystal osc
8 k' C; a! x% D2 K. J% d' mic 回來量測時發現經過digital counter的輸出會有過快的現象,也就是它會數太快,代表著也許我送給它的頻率變快了
+ P: n+ H! g: l. }9 k0 n所以我就去量測內部頻率輸出32.768k的那一點訊號
( E5 o8 }+ {: L2 L# x我下探針去量測,發現頻率跟波形都正確
- x- [% G/ y- N+ ~/ n但是當我探針離開輸出那一點時,頻率又變快了(有接led燈,所以感覺的出來閃爍變快)7 @0 u/ \7 p/ H# \
我當下是覺得探針類似有電容的效果0 |! n* s* f6 }8 @& m/ z" p
所以當探針下去時會有濾波的效果,所以頻率會正常,當探針一離開則頻率會變快& P  b8 b, z% h( W- X1 T: G
還以為是noise的影響
0 R, b) v: D2 Y* J, P看到你的第五點分享,現在想在我的輸出端再加上一個smitte trigger,然後再接給後面的digital counter來使用
. G) F3 D7 }$ |+ P0 V看看問題是否可以獲得解決
31#
發表於 2008-1-18 09:26:07 | 只看該作者
原帖由 markcheng 於 2008-1-15 12:33 AM 發表 - N; h- E& u4 |; U. i$ Y& f
感謝finster分享7 ?# o) P9 I# n4 I
小弟我目前遇到一個跟你的第五點問題滿類似的
) @4 U% C5 V5 C2 B9 F6 R我是design一個32.768k crystal osc
: q0 m* I3 }+ x. zic 回來量測時發現經過digital counter的輸出會有過快的現象,也就是它會數太快,代表著也許我送給它的頻率變快了 ...

! }6 y/ C' c! x$ Y
( t9 Y. M) h2 P" G/ w1 L  O
7 S( [  d% p1 F不好意思,因為這一個主題己經有太多人回覆了/ T* Q8 f% C/ D8 s
所以也就一直沒有留意有沒有人有再提出新的問題來
7 s( F3 I# s" g. t3 I. |8 x我們後來實驗的結果(藉由FIB),發現到當初的推論沒有錯,因為原本的規格是要作到很low power,所以32.768KHz Crystal output的推力就設計的很弱,以致於輸出的clock的rise time和fall time就變得很長,導致後級counter在遇到很長的rise time和fall time時,就會被重覆trigger,故而使得原本要一秒一秒計數的計數器變快了
  X2 K# V% l2 e+ s4 r% r3 z解法就是加一個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 發表 & Z5 I. T, y  `) J# ^

% k$ P4 Q' \8 M& `( u7 ]  g
$ m. X4 ^! B. z. }6 n8 \  d9 W; v. U2 n: C* M, L
不好意思,因為這一個主題己經有太多人回覆了0 W- l. g% g" B
所以也就一直沒有留意有沒有人有再提出新的問題來# u$ w% S* x8 l4 [6 e& X' z0 J
我們後來實驗的結果(藉由FIB),發現到當初的推論沒有錯,因為原本的規格是要作到很low power,所以32.768KHz Crys ...
1 V( L1 p- D/ L- e* ?

) O- I) K$ N1 Y, X1 g4 @因為我的電路裡面還有另外一個12M的OSC....其實電路上是大同小異的...但是12M卻沒有這個問題...我想應該是它速度太快了...因為12M一個cycle大概是80n...而32k768大概是30u....這個差距就差很多了...難怪rising跟falling影響後者比較嚴重...因為counter大概反應時間也都是 n sec 等級的...最後還是感謝分享經驗
33#
發表於 2008-1-24 15:07:03 | 只看該作者
我想請問一下  之前一直提到的負電阻
8 d& G- _; ^2 e' S* A4 X; F到底是什麼阿2 u8 G9 U1 [& V* J6 F
有沒有參考資料可以閱讀的7 ~0 }1 C5 Z9 n8 X5 ]
或是哪本教科書有提到的
& \( J; g0 r, q! ^5 g我初踏入這個領域什麼都不懂
% M  ~# ?5 m" x2 V8 h謝謝大家了
34#
發表於 2008-1-31 11:33:38 | 只看該作者
很抱歉之前問了個小白問題
! V* p( F1 y* s我查了些參考書還有文件後
9 O2 Y& H1 S# M2 X! I* H& f' y2 `( @總算對負電阻有些粗淺的了解" u6 P3 ]0 `; M( w% a. O8 A
8 x+ F2 P1 H# O
最近老闆要我改良之前12MHZ的Oscillator7 @6 {4 v1 x/ F, {  b& n2 n
參考板上的文章後 把前人留下的電路丟下去跑模擬! K& q; T+ n4 ?  |% ^9 y
算是可以正常起振
& g& i9 A( v! x# F2 U. w+ s! J! O1 e$ f" h
我的經驗是
3 l( k! d" M6 N4 e/ c0 @若是使用HSPICE的話 Time Step 設太小 模擬時間會拉的很長
$ A7 Z3 \: t) P9 ^$ y使用ELDO則可以大幅縮減模擬時間  可是要注意要下 .option tuning = accurate/VHIGH 的參數 不然模擬結果會非常不準
, ~" `) _3 \7 z1 k+ F) v然後ADIT模擬時間最短  但是算是最不準吧  粗淺的測試可以使用7 Y3 h* M' `+ l" _
但是到最後的驗證的話  還是要用HSPICE跑一下比較妥當
' Z! z" W1 \6 X: E以上
35#
發表於 2008-1-31 16:39:37 | 只看該作者

回復 2# 的帖子

給monkeybad
! z$ A& d; `0 c& t' [+ J
: S. a9 J# `& Y我覺得這樣模擬負電阻的方式有一點點問題
# O* B/ T. P3 o: q+ h你這樣所看到的阻值 與你所提供的Philip AN97090文件裡面的值不一樣
* y9 q' J. e/ v+ M0 Q你模擬的是並聯的負電阻值  而Philip的是串聯的8 i/ t  w1 d- b! o; O! q
兩者會有差別' K6 Y! R8 z7 f* k* O

" [" J  x# r4 E6 L如果要用並聯的方式討論的話
1 }; Q8 g, ]5 F0 |# }& r; p% U  L可能要把Crystal裡面的Rs換成並聯形式  就像是Razavi P.497推導的一樣
1 g' g+ f. F  F7 p" M然後負加正大於0 (因為是並聯形式  所以要相加大於零) (Razavi P.504)
4 o( \) ]1 i% }9 I/ l5 L: M應該就可以起振了
' v. m6 W$ e9 C; v2 i+ F4 M* k3 J$ ^% F# S3 G
另外有個問題4 J" e6 a2 @, `5 _6 l
不知道在圖二你是用什麼方式把頻率鎖在震盪頻率" \3 z8 ?8 Z/ j1 L
如果把石英拿掉的話
: M1 |( H# _8 _; g( j震盪頻率應該就是Inverter Delay的倒數  大概都是G的等級
% g0 p# N3 r- G! Y: q2 q  }如果沒有鎖住的話  那模擬出來的負電阻就跟震盪時的負電阻不一樣了
! X$ }! `; M7 O" {3 q4 B( L0 c5 \& `$ G! o1 s! q& P3 ]
一點淺見/ E8 I8 Z+ O" z4 ]
有錯請不吝指教
36#
發表於 2008-1-31 22:41:07 | 只看該作者
抱歉 我又來囉唆了
9 c7 \2 C* C( L# Z$ w2 I/ O我剛剛模擬了一下 monkeybad大大模擬負電阻的方式確實可以用9 n7 ?. ]. F# `$ W  ?5 C! K' H
只是模擬出來的值  跟參考文件上的不一樣9 x5 ^/ Q0 {# e, ]
它其實是Crystal往外看的等效電阻值, S, x/ F; ]$ {7 j) G
所以如果要用Philip文件上的方式判斷的話' |' a0 k0 {! M4 D
還要把這個電阻值做修正 也就是跟Rp的方法一樣2 s0 ?$ R3 k6 N8 g! b0 o
這樣才可以把並聯的負電阻值換成串聯形式, f/ k8 z9 ?5 O  P5 F1 |
然後負大於正就可以起振
, M( N* N6 U  j, S: H* o
$ m, i3 B: p4 w6 L/ a另外  我想請問一下monkeybad還有skyboy大大% E; S4 s0 x, m3 j( ]
在做負電組模擬時 要怎麼設定aa和bb的直流偏壓值  v6 W7 @4 }  C& P9 u# W
我自己的方式是把Inverter的平衡點社在中間  然後下電流參數的時候 不給直流參數5 ^& {% f. S. @/ {; G* Y1 g
不知道這樣合不合理- H8 I+ \' @8 D, a" P
謝謝
37#
發表於 2008-8-19 13:30:06 | 只看該作者
這一篇的討論真的很不錯!!
9 p: U: c/ e/ F9 Z   受益良多...
38#
發表於 2008-12-22 18:27:46 | 只看該作者
真是很棒的分享; Z9 n( k* M& J5 r
( F8 _3 T& V6 A/ r0 B! u
Thanks for your input!
39#
發表於 2008-12-22 20:23:13 | 只看該作者
谢谢f分享经验
  a  C; h! f. }$ f: Pcrystal的等效模型各位是从哪得到的?
40#
發表於 2008-12-24 20:38:47 | 只看該作者
嗯~~多謝大大的提供~~小第也在做振盪器~~~謝謝囉~~~大大
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-6-8 08:56 AM , Processed in 0.149019 second(s), 17 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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