Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

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

回復 #20 monkeybad 的帖子

to:monkeybad
5 r3 y# n; x0 j3 n: \0 @7 b由于最近不常上chip123,所以现在才回答您的问题,表示非常抱歉!
2 H- b0 g  x/ }/ O2 q现在是我稍早前仿真的一个振荡电路,希望对您有所帮助!
, ]" r' e2 a% S8 ~
, Q7 ?/ W# `0 r电感初始的电流设置如下所示:) j* D) a4 n6 f9 l$ h& Z: M' J  S
L_L1         N11450 N03952  588.873289 IC=1uA   R! _* M  i! \2 {) A2 |; D

! [2 x* e9 g  y* {注意给电感设置初始值要不能太小!
9 t% |. H" S* j" f+ lhttp://www.eetop.cn/bbs/thread-58028-1-1.html(这是我在eetop的一个讨论贴,希望对您有所帮助)& d* p% R3 Q% t9 [: E/ o, |5 K
------------------------
) s6 _9 l- u! m! a* source 100K1 ]+ X0 f0 V( E: M
.PROT
. H& C6 ^8 z/ y4 q; t.inc 'd:\hs\lib\level3'  f8 v- _4 m! h1 }8 H
.UNPROT
+ N- q- o( L. m! Q/ ?7 L6 mC_C4         IN VOUT  1.72169576e-012  
% R5 G5 y2 t7 b  y+ s1 T- t+ w8 N# UM_M1         VOUT IN 0 0 n
; i6 J/ O' e- I+ u7 k7 f' E+ L=16u  ' f6 Q$ O3 W/ D1 ~$ C* F3 `9 Q
+ W=0.8u         
0 x  b6 r- G3 ~1 s: h+ M=10/ @6 X1 y; _% Q
M_M2         VOUT IN vdd vdd p
; Q+ @* \1 }3 L9 v8 Z0 Q; X# {+ L=16u  
: b9 q0 @9 B9 F) I% r; N5 l4 V+ W=0.8u         
2 [" \0 m# s8 x" j+ M=22$ e& x7 k4 ?3 [, z! D9 p, G7 I+ p
R_R3         IN N11450  18.5k  
$ h8 [9 z$ f, y- V2 Y  {8 PV_V1         vdd 0 pwl(0 0,10us 3Vdc,20u 0,30us 3vdc)8 V! q2 o; `; |' e/ t
C_C1         IN 0  5p  & B5 ?  E! T, ~3 K3 F3 Q- ?
C_C2         0 VOUT  5p  8 ~) s0 Z% U4 c; b5 L" Q
L_L1         N11450 N03952  588.873289 IC=1uA
! \# U  j, j$ F( w( YR_Rf         IN VOUT  50meg  
; a+ R' B2 z0 v6 s8 a! ]# pC_C3         N03952 VOUT  4.30423941e-015  
( m/ w2 t# J3 `! p* u.tran 1ns 20ms
& m! |6 e% h5 Q( N% i. G4 B.probe tran  v(in) v(vout)
% t- b8 G* O% x' m" Y5 j.end

評分

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

查看全部評分

22#
 樓主| 發表於 2007-9-8 16:44:00 | 只看該作者
感謝wwm101提供這麼詳細的模擬資料3 g4 ~- q" q, \8 }1 _) s
原來設電感初始值只要加 IC=1uA 就可以了 又學到一個指令了' q0 T8 w- K. t( m9 @; L- Z1 |

! W; {8 F3 e$ {  S) k0 w看了討論區的文章
' O# O4 V& s3 J; K) d8 y同意裡面的講法
$ u1 h2 Y5 y! j. D震盪器模擬應該跟初始值有關 可能是模擬軟體本身的收斂問題 可能跟演算法有關吧! b1 v; Y& Y6 B( h# Q. O* b
設不好就都掉到ZERO的狀態 而不是震盪的狀態  
8 |/ @7 l; j$ B所以應該要設初始條件 尤其是在模擬電源start-up的情形 初始值沒設好 好像也不會振說
23#
發表於 2007-9-9 14:38:59 | 只看該作者
最近一直在嘗試, 本來因為 schedule 的關係想先擱下, 以前做這個線路的同事說就是用
- L# }  W: P, [% S# l1 o+ uHSPICE 跑不起來才換 ADiT, 是還沒有遇到說 real chip 不會動的情況...
& V" c. u; Y7 |) l
2 B8 C: H+ J: {0 N. d3 a不過最後一次的嘗試讓我看到它起震了, time step 要縮小到 0.1ns, CX1(inverter輸入端)3 I8 e8 f& k, G- H* }+ i
縮小到 4pF (是任意挑一個較小的值, 沒試過其他的..CX2 仍為 10pF), 不過還是有點怪怪的...
2 t9 R8 g( E. o8 B3 N
* W* h! v9 h: b* d& l. `前面討論有提到, 起震時在 X'tal 內 CS 的端點會看到振幅漸增的震盪, 我用 ADiT 跑出來
6 p, u* A+ A, h到穩態時震幅是 +/- 2.x KV, SPICE 跑出來只有900多V, 另外 CX1=CX2=10pF 時 ADiT 2 C7 m6 T7 h! u- v9 S
就可以很順利的起震, XG/XD 的振幅是 full swing, SPICE 的話會看到 XG/XD 的振幅很小,
2 `9 }0 ]- A' e7 a+ }' E( Y幾乎就是在 INV 的操作點附近, CS 端點的振幅也只有幾十V, 頻率慢一點 (ex. 2MHz)
# a4 Q& k6 e. T8 |! p/ G還可以起震, 跑到 12MHz 時就掛了..
; d3 l, N1 Y0 t" L. f& R7 p( T. S6 K  ~9 n% ?7 z% [) }( E; G( F
只是 time step 設到 0.1ns 用 HSPICE 跑 12MHz X'tal 要好久....>_<
0 J5 K  y# F- s& u: \% l(當然比起前面 finster 大說的 32KHz 跑一個禮拜是好多了...)% o+ D6 S, A  m0 v& [# r  w( Q

( u: r  m1 E! c8 c1 q- D[ 本帖最後由 skyboy 於 2007-9-9 02:51 PM 編輯 ]

評分

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

查看全部評分

24#
發表於 2007-9-10 14:39:39 | 只看該作者
各位前輩, 不知大家是否模擬過Crystal oscillator的phase noise.
* x2 R4 h9 |- M( H: y小弟最近在模擬20Mhz的Crystal oscillator, 架構和上述討論的一樣,1 _% ?. e5 W3 Z1 D# o: v
為一CMOS反向器加上Crystal's model. , d, g* G" n5 N8 d" M5 z& t
小弟使用Spectre RF 模擬, option中, Integration method parameters設為"gear2only",& ]; I/ _) d- N: P: {' a7 u
在pss 模擬時, Crystal oscillator 無法振盪, 但是transient 卻是可以振盪的.( _, ~! n* H1 E% }3 x, W+ M% F; x
想請教各位前輩, 不知是否有人模擬過Crystal oscillator的phase noise??$ g8 `0 r( W/ a5 M
謝謝!!
25#
發表於 2007-9-10 18:24:26 | 只看該作者
感謝各位前輩提供的資訊.
* x* V% n3 M& M0 {對於電感的初始值要如何設定才會符合真實狀況.
  `. u. Z" f0 f) Y! H$ ?' ~IC=1ua,一開始模擬就振的很漂亮.+ T! }/ y) g$ O! p
IC=0.1na,也可以振,只是起振時間拉長.謝謝.
26#
發表於 2007-10-7 12:50:25 | 只看該作者
原帖由 monkeybad 於 2007-8-9 10:01 AM 發表
! }/ }$ z1 S6 B" W2 I7 i( f昨天晚上試了一下以前在網路上找到的一個方法
, h: y6 h# C: m" x就是在一開始的時候 串聯一個起始電壓源來加速Hspice的模擬. S  M8 P: i( q. n
起始電壓源為一個sine波 頻率設為crystal的震盪頻率 然後要加入damping factor 讓起始電壓慢慢衰減到零
3 J8 G% J# A$ s4 ]5 |' a8 R/ e結 ...

3 i, K7 `; a/ r+ Z% k% X) i1 y2 }7 i
小弟最近也在研究crystal oscillator circuit, 這個討論串讓我穫益良多9 b/ i2 e5 e2 X6 e
monkeybad 大的這份附件, 剛好讓我想到一個問題& {$ H( S9 N7 r& Y- X* R0 W& T: W6 ~3 N/ b
在這篇附件裡 figure 2的模擬結果顯示, Xtalin的振幅會大過Xtalout, 而Xtalin振幅甚至會超出 Vdd&Gnd
2 V# n1 q% V/ P$ L# Z: v7 d我自己在模擬的時候也看到同樣的現象, 但不知如何解釋才正確....
' P  |/ n5 m3 m! h" |Xtalin > Xtalout還可以理解, 畢竟兩端的loading不同
0 n, P6 a3 ]( Y/ x+ ]/ C但是Xtalin的振幅是否真的會超出supply rail? 還是只是模擬上是如此?
8 B3 v) R* b) S8 j' @% @這個現象讓我聯想到DC-DC converter~ 不知道是否是電感所造成的效果?
  f" T% K' A- p3 I+ X9 q查了幾份application note都沒討論晶體兩端振幅的問題, 不知道這個振幅有沒有辦法去計算或調整?
7 w: P3 P7 p9 H9 o$ q* n煩請各位前輩指點了, 感謝!!
27#
發表於 2007-10-8 00:29:48 | 只看該作者
實際 IC 確實有振超過 vdd 的案例
# P7 H3 a8 ?# V不過通常都伴有 消耗電流 過大的問題; I* p/ |2 n) p; E

5 l# T! a6 s7 s4 p9 Y7 N6 p) v* n+ |嘗試降低 負電阻 試試
28#
發表於 2007-10-8 00:33:36 | 只看該作者
實際量測IC 負電阻 * z; O: P  n. O6 v+ p
除了 網路分析儀 外
4 k  ?+ x4 Q$ a$ _7 k* d. }還有一個 小方法 能 簡易評估
" V) T8 V! \+ d8 d6 B2 p
: k; y2 B" ~9 r4 n/ t缺錢 賣10代幣吧  有人要買嗎 ?
29#
發表於 2007-10-27 10:17:47 | 只看該作者
受教了,我也遇到晶振振不起来的问题了( \. `' {) N3 j- v4 M# C- M
对于负电阻还是不太理解
30#
發表於 2008-1-15 00:33:08 | 只看該作者

回復 8# 的帖子

感謝finster分享% m$ j3 b6 D: X/ B9 `3 c
小弟我目前遇到一個跟你的第五點問題滿類似的# a* C% h% m) i! x% U/ d
我是design一個32.768k crystal osc, ?( n; r) G: S
ic 回來量測時發現經過digital counter的輸出會有過快的現象,也就是它會數太快,代表著也許我送給它的頻率變快了
3 L: Y: c7 s- C- Q. @所以我就去量測內部頻率輸出32.768k的那一點訊號
$ D( j  K3 y7 o) k6 P我下探針去量測,發現頻率跟波形都正確: Y2 Q& n0 Z- _- N
但是當我探針離開輸出那一點時,頻率又變快了(有接led燈,所以感覺的出來閃爍變快)0 O+ L' j% h* |$ O4 Z% @
我當下是覺得探針類似有電容的效果
7 j4 M1 [$ t3 A- S所以當探針下去時會有濾波的效果,所以頻率會正常,當探針一離開則頻率會變快5 D$ @0 b1 d. h8 F# i* o
還以為是noise的影響& \$ L- y% a2 A# h& o' }% D" C
看到你的第五點分享,現在想在我的輸出端再加上一個smitte trigger,然後再接給後面的digital counter來使用) i5 u% x- S. d+ J' ~
看看問題是否可以獲得解決
31#
發表於 2008-1-18 09:26:07 | 只看該作者
原帖由 markcheng 於 2008-1-15 12:33 AM 發表
1 z, r, w( N  a/ }) v感謝finster分享  v. m# |5 `% g3 x9 p4 }# e2 L
小弟我目前遇到一個跟你的第五點問題滿類似的2 C2 q& p: L9 c  j& ]; [* Z/ H
我是design一個32.768k crystal osc
: P7 s8 }/ _4 q: s. v5 \5 D' `$ ^ic 回來量測時發現經過digital counter的輸出會有過快的現象,也就是它會數太快,代表著也許我送給它的頻率變快了 ...

' A0 q  S. ^$ _( `
9 D* d& a# y6 }* I1 s6 G. [! P+ z% S. D: c% X
不好意思,因為這一個主題己經有太多人回覆了
. h2 w$ `& g$ K8 W9 s: P1 ?所以也就一直沒有留意有沒有人有再提出新的問題來
! }; b" R3 R5 s4 h  R% b7 A我們後來實驗的結果(藉由FIB),發現到當初的推論沒有錯,因為原本的規格是要作到很low power,所以32.768KHz Crystal output的推力就設計的很弱,以致於輸出的clock的rise time和fall time就變得很長,導致後級counter在遇到很長的rise time和fall time時,就會被重覆trigger,故而使得原本要一秒一秒計數的計數器變快了6 c/ b' v4 `; P$ U
解法就是加一個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 發表
( A8 N7 _- l7 Q# j2 Z3 _1 E
% M1 h  f! H( e8 k* D
( X" U4 b1 y# Z8 [) F2 m
/ V$ C; d2 E, o  O不好意思,因為這一個主題己經有太多人回覆了
5 q& t& v2 [. v3 q所以也就一直沒有留意有沒有人有再提出新的問題來
* X* V7 M  W8 \  N我們後來實驗的結果(藉由FIB),發現到當初的推論沒有錯,因為原本的規格是要作到很low power,所以32.768KHz Crys ...

% ^7 O3 f8 l3 q6 N! n! O2 l. c; d8 g1 d' \7 S. c& h
因為我的電路裡面還有另外一個12M的OSC....其實電路上是大同小異的...但是12M卻沒有這個問題...我想應該是它速度太快了...因為12M一個cycle大概是80n...而32k768大概是30u....這個差距就差很多了...難怪rising跟falling影響後者比較嚴重...因為counter大概反應時間也都是 n sec 等級的...最後還是感謝分享經驗
33#
發表於 2008-1-24 15:07:03 | 只看該作者
我想請問一下  之前一直提到的負電阻
" d0 g1 ]2 V) W到底是什麼阿
# W% m0 |, y% s有沒有參考資料可以閱讀的# t: S" o/ W  Z# f6 p
或是哪本教科書有提到的; Q) y3 Y$ D# k6 w- ?4 }- g8 h( S: g: B
我初踏入這個領域什麼都不懂
8 T1 g# \# ^' e! o1 u/ I謝謝大家了
34#
發表於 2008-1-31 11:33:38 | 只看該作者
很抱歉之前問了個小白問題
" P( v1 d! Z1 L! m我查了些參考書還有文件後
4 G2 R' ^; `1 L, M% u3 {$ Q9 c總算對負電阻有些粗淺的了解* g2 E( l+ r# n1 L" ~' i

& u5 a0 _$ y( S) j( U最近老闆要我改良之前12MHZ的Oscillator
! t) Q, b! C' X, s: F參考板上的文章後 把前人留下的電路丟下去跑模擬
4 r5 C* ^& Q6 Q' J& w( `+ H算是可以正常起振
' M3 d+ O. [% M0 S
9 _+ u( z9 `0 s0 p- n6 i" Z5 h我的經驗是5 g- Q5 e* Z' a9 n! c: i
若是使用HSPICE的話 Time Step 設太小 模擬時間會拉的很長4 K8 z3 m* F' {
使用ELDO則可以大幅縮減模擬時間  可是要注意要下 .option tuning = accurate/VHIGH 的參數 不然模擬結果會非常不準4 y2 C% }: D( S. E6 U' @6 @0 a) w
然後ADIT模擬時間最短  但是算是最不準吧  粗淺的測試可以使用7 w6 ^6 G/ t& @
但是到最後的驗證的話  還是要用HSPICE跑一下比較妥當
2 v* }% ^: I: v! f) m以上
35#
發表於 2008-1-31 16:39:37 | 只看該作者

回復 2# 的帖子

給monkeybad
* r  {1 M5 @$ [* w/ w. U6 \4 E. w# a+ K
我覺得這樣模擬負電阻的方式有一點點問題
9 }. R- Y' Z2 Q你這樣所看到的阻值 與你所提供的Philip AN97090文件裡面的值不一樣- e+ K# v. c; Z* }/ h" S
你模擬的是並聯的負電阻值  而Philip的是串聯的
) t+ V4 n7 Q8 W4 H$ U7 R兩者會有差別
: ^4 O6 @! d5 U4 i0 p1 ]; G, c) y# Q5 n4 j9 p! z" W9 D/ T! \
如果要用並聯的方式討論的話
; ~4 ~/ C4 N6 H3 [; V) t可能要把Crystal裡面的Rs換成並聯形式  就像是Razavi P.497推導的一樣) h' F9 v- m! ~8 A/ p
然後負加正大於0 (因為是並聯形式  所以要相加大於零) (Razavi P.504)
+ L; w; k$ L  g: @  \8 _. A- d應該就可以起振了% A9 O  C4 l- J/ j: [' `) z

' x7 V" o1 n, c" Y, F另外有個問題9 x- d. G- _5 B1 ~2 [; B
不知道在圖二你是用什麼方式把頻率鎖在震盪頻率0 |; D7 Z( i% y5 p+ S
如果把石英拿掉的話+ s, D0 I3 n  u$ x! H
震盪頻率應該就是Inverter Delay的倒數  大概都是G的等級
/ N1 e, X* y0 |如果沒有鎖住的話  那模擬出來的負電阻就跟震盪時的負電阻不一樣了# j: \( \  D0 Q1 D
3 y% ]" E5 S9 i. ~
一點淺見  Z4 |$ e, ^1 B1 k! S; ^" ]/ s0 O4 W0 ~
有錯請不吝指教
36#
發表於 2008-1-31 22:41:07 | 只看該作者
抱歉 我又來囉唆了# o0 l6 ]$ h" p& m9 k! X2 G
我剛剛模擬了一下 monkeybad大大模擬負電阻的方式確實可以用0 x/ {9 {$ H1 g' O# a6 w
只是模擬出來的值  跟參考文件上的不一樣
/ F( {6 m' G$ [+ s9 P/ C6 A* r它其實是Crystal往外看的等效電阻值* |, b( W5 l4 K3 N
所以如果要用Philip文件上的方式判斷的話
: [% P1 g' F# z) A還要把這個電阻值做修正 也就是跟Rp的方法一樣8 e0 ?5 }. t/ j/ L
這樣才可以把並聯的負電阻值換成串聯形式9 Q3 M' {( _* ^: ]6 Q+ J
然後負大於正就可以起振- p7 W5 t- b# x& i2 {3 h1 b0 O) E2 A
! {5 U$ o& d$ o+ w1 g  o
另外  我想請問一下monkeybad還有skyboy大大1 g  j, ]0 E, U* O
在做負電組模擬時 要怎麼設定aa和bb的直流偏壓值( [6 _- y' {% T5 |
我自己的方式是把Inverter的平衡點社在中間  然後下電流參數的時候 不給直流參數, n+ N1 ?: v4 g2 v4 E# t
不知道這樣合不合理
/ _6 B- c0 C4 A/ H4 n0 H謝謝
37#
發表於 2008-8-19 13:30:06 | 只看該作者
這一篇的討論真的很不錯!!' A5 t' j/ q8 f* O. e, n
   受益良多...
38#
發表於 2008-12-22 18:27:46 | 只看該作者
真是很棒的分享
5 t& @8 j, w- f  O, R6 j
8 R& x/ ^; g/ {% x3 q: _Thanks for your input!
39#
發表於 2008-12-22 20:23:13 | 只看該作者
谢谢f分享经验5 T+ l& c" F; h
crystal的等效模型各位是从哪得到的?
40#
發表於 2008-12-24 20:38:47 | 只看該作者
嗯~~多謝大大的提供~~小第也在做振盪器~~~謝謝囉~~~大大
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-6-2 08:12 PM , Processed in 0.139018 second(s), 16 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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