Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

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

回復 #20 monkeybad 的帖子

to:monkeybad
7 R/ j9 V" C2 h由于最近不常上chip123,所以现在才回答您的问题,表示非常抱歉!0 r+ ^& r' ?% n
现在是我稍早前仿真的一个振荡电路,希望对您有所帮助!
3 \1 m: u5 U: q# x% {6 o; ?+ d6 x+ X, P
电感初始的电流设置如下所示:3 \, ?1 |( L- t  p1 \
L_L1         N11450 N03952  588.873289 IC=1uA
) l1 Z/ r/ w7 h3 C; j/ b! U
. e8 ^! r6 n1 r" N" o( x- d  W注意给电感设置初始值要不能太小!5 ?) @/ ^, X8 t/ t3 q
http://www.eetop.cn/bbs/thread-58028-1-1.html(这是我在eetop的一个讨论贴,希望对您有所帮助)- j' j5 [6 j/ f2 l* y$ b
------------------------3 G, a( P  \+ i  l* G& g$ {- K
* source 100K
: @8 Y4 n' g5 n1 V- s.PROT9 W* J( o/ j- v  h
.inc 'd:\hs\lib\level3'
5 ^6 U- |+ f; c. a) c2 ^6 h1 c.UNPROT
. R- U" i/ E% CC_C4         IN VOUT  1.72169576e-012  + i* @9 g- S' o( I7 L! o+ \
M_M1         VOUT IN 0 0 n) O9 O9 W. ]( k, c# ]) S( a/ a
+ L=16u  
8 R9 ?$ e8 d/ Z9 \2 J+ W=0.8u          " f& @$ \5 Z' l9 Y$ u" a5 c
+ M=10+ C' ~/ ~# s  B7 [' C2 w& u1 a1 @
M_M2         VOUT IN vdd vdd p 8 r& }4 a; j9 s# A- q* n
+ L=16u  
) |6 {: K) L/ E' {2 u; C0 n( U+ W=0.8u          " ~, ]! W  N; D7 L" I0 m
+ M=22
* }9 s$ }7 M6 Q8 y) _R_R3         IN N11450  18.5k  
& V# d7 t. `3 f# oV_V1         vdd 0 pwl(0 0,10us 3Vdc,20u 0,30us 3vdc)
$ G/ [$ e  J( R! i* C% T0 KC_C1         IN 0  5p  
% u4 b: @" Z, `6 x# N' L! u1 yC_C2         0 VOUT  5p  9 _' X7 r/ ~& h( T+ {% {- l9 O
L_L1         N11450 N03952  588.873289 IC=1uA
* M4 U; w, B( M5 r% [! [R_Rf         IN VOUT  50meg  
6 j0 j9 x0 h( u5 e5 \/ YC_C3         N03952 VOUT  4.30423941e-015  
% W1 S1 f- j& {2 f4 v7 J.tran 1ns 20ms
& }3 U8 B; T) g) D5 p, G.probe tran  v(in) v(vout)
6 h# Q7 B+ S$ O) g" Q) G1 Z4 j! C1 a.end

評分

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

查看全部評分

22#
 樓主| 發表於 2007-9-8 16:44:00 | 只看該作者
感謝wwm101提供這麼詳細的模擬資料
  t+ k# `& w. H原來設電感初始值只要加 IC=1uA 就可以了 又學到一個指令了
! Y: P' o4 f5 K/ C9 `! R0 J3 ]. \+ D' O* n  I/ H1 H# k3 ~
看了討論區的文章 % X+ z/ I, Q( Q: `. v7 L
同意裡面的講法! j, n2 F5 ~& u: p8 B; {
震盪器模擬應該跟初始值有關 可能是模擬軟體本身的收斂問題 可能跟演算法有關吧0 e3 ?1 y) J; L: B0 x
設不好就都掉到ZERO的狀態 而不是震盪的狀態  : H$ k* ]5 }* u
所以應該要設初始條件 尤其是在模擬電源start-up的情形 初始值沒設好 好像也不會振說
23#
發表於 2007-9-9 14:38:59 | 只看該作者
最近一直在嘗試, 本來因為 schedule 的關係想先擱下, 以前做這個線路的同事說就是用
8 ~7 _  k, Z- V3 ?$ x; {HSPICE 跑不起來才換 ADiT, 是還沒有遇到說 real chip 不會動的情況...
4 M8 a$ L6 t& d/ u8 [' a6 p7 B6 Q2 i0 p/ j  L, w* n" q
不過最後一次的嘗試讓我看到它起震了, time step 要縮小到 0.1ns, CX1(inverter輸入端)
& X$ j3 F% r! m! w縮小到 4pF (是任意挑一個較小的值, 沒試過其他的..CX2 仍為 10pF), 不過還是有點怪怪的...1 T# @/ m2 Q; e/ I: @. y
, k+ r4 ~2 k) N$ u1 M  J5 x: R7 ?; y. B
前面討論有提到, 起震時在 X'tal 內 CS 的端點會看到振幅漸增的震盪, 我用 ADiT 跑出來5 W  C( d' Z  U. {
到穩態時震幅是 +/- 2.x KV, SPICE 跑出來只有900多V, 另外 CX1=CX2=10pF 時 ADiT ! ]& |, i- f0 C% C3 X7 M( e
就可以很順利的起震, XG/XD 的振幅是 full swing, SPICE 的話會看到 XG/XD 的振幅很小, 2 b/ M! H% @0 M+ O
幾乎就是在 INV 的操作點附近, CS 端點的振幅也只有幾十V, 頻率慢一點 (ex. 2MHz)
2 i9 [, b3 \. _8 {, ?; E& r還可以起震, 跑到 12MHz 時就掛了..
2 P% B, M1 Y: h- m! @1 q& {, L) N' a6 a4 n, Y/ `# O1 P
只是 time step 設到 0.1ns 用 HSPICE 跑 12MHz X'tal 要好久....>_<$ B0 @  P0 [1 Q9 U
(當然比起前面 finster 大說的 32KHz 跑一個禮拜是好多了...)4 }7 O+ n" D1 J" z8 \5 E/ t; D+ ~# O

; x( t0 M! P4 w6 I3 f[ 本帖最後由 skyboy 於 2007-9-9 02:51 PM 編輯 ]

評分

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

查看全部評分

24#
發表於 2007-9-10 14:39:39 | 只看該作者
各位前輩, 不知大家是否模擬過Crystal oscillator的phase noise.
7 p/ ]5 l2 L( \# j9 A# [小弟最近在模擬20Mhz的Crystal oscillator, 架構和上述討論的一樣,
# u! {) @* J1 y. M  }! F: H為一CMOS反向器加上Crystal's model.
5 n5 q4 y3 k/ L2 E小弟使用Spectre RF 模擬, option中, Integration method parameters設為"gear2only"," ?- s' \7 N6 N
在pss 模擬時, Crystal oscillator 無法振盪, 但是transient 卻是可以振盪的.4 _0 r$ I( t$ e2 i' l) P
想請教各位前輩, 不知是否有人模擬過Crystal oscillator的phase noise??$ _8 z% j  p$ q# l  h
謝謝!!
25#
發表於 2007-9-10 18:24:26 | 只看該作者
感謝各位前輩提供的資訊.
* u2 G6 Y+ [3 R% E; Y對於電感的初始值要如何設定才會符合真實狀況.
: t1 G- k$ ~" a! ]: @IC=1ua,一開始模擬就振的很漂亮.: M0 l& Z' J9 Z/ ]" n+ J
IC=0.1na,也可以振,只是起振時間拉長.謝謝.
26#
發表於 2007-10-7 12:50:25 | 只看該作者
原帖由 monkeybad 於 2007-8-9 10:01 AM 發表 ; |1 k' m' \  }: g
昨天晚上試了一下以前在網路上找到的一個方法1 F7 l# ]" V8 t: z  H
就是在一開始的時候 串聯一個起始電壓源來加速Hspice的模擬# I: r$ Q( _9 n* O* {" J
起始電壓源為一個sine波 頻率設為crystal的震盪頻率 然後要加入damping factor 讓起始電壓慢慢衰減到零
& O) F: ]. m) Q7 G: g. O結 ...

0 I5 W! m5 X) N: n: k) @  }( j- C" j& S, C& u
小弟最近也在研究crystal oscillator circuit, 這個討論串讓我穫益良多
9 @# @9 w1 Q' H  `' u  gmonkeybad 大的這份附件, 剛好讓我想到一個問題% U6 }8 m2 c* n* i
在這篇附件裡 figure 2的模擬結果顯示, Xtalin的振幅會大過Xtalout, 而Xtalin振幅甚至會超出 Vdd&Gnd9 J" b9 W6 c! @
我自己在模擬的時候也看到同樣的現象, 但不知如何解釋才正確....
* ]; ^6 J7 f  _( [8 I+ y% t. H" pXtalin > Xtalout還可以理解, 畢竟兩端的loading不同9 p0 ]8 @; ]! L- A' T
但是Xtalin的振幅是否真的會超出supply rail? 還是只是模擬上是如此?7 y: }% A5 _; S5 k
這個現象讓我聯想到DC-DC converter~ 不知道是否是電感所造成的效果?0 ?0 |3 \1 e* F2 h  L' e
查了幾份application note都沒討論晶體兩端振幅的問題, 不知道這個振幅有沒有辦法去計算或調整?
$ ~& J9 ]& F( {1 e- V3 T2 I煩請各位前輩指點了, 感謝!!
27#
發表於 2007-10-8 00:29:48 | 只看該作者
實際 IC 確實有振超過 vdd 的案例& A- ^7 e/ T  r; T1 l. a" H, S
不過通常都伴有 消耗電流 過大的問題) _6 w% R" I) y5 Z) V2 A

. u2 e0 B' a, p' b- q# z嘗試降低 負電阻 試試
28#
發表於 2007-10-8 00:33:36 | 只看該作者
實際量測IC 負電阻
- E# [0 @) V9 ]' M0 r6 `; i除了 網路分析儀 外6 Z/ n, M& x6 u2 F' @
還有一個 小方法 能 簡易評估 . X  y* j* \1 @6 p+ p

" u! n# i4 U/ d+ x" Q1 g0 P7 d" E缺錢 賣10代幣吧  有人要買嗎 ?
29#
發表於 2007-10-27 10:17:47 | 只看該作者
受教了,我也遇到晶振振不起来的问题了
8 R% o( J. m6 U& ?% s3 @" A  q! J对于负电阻还是不太理解
30#
發表於 2008-1-15 00:33:08 | 只看該作者

回復 8# 的帖子

感謝finster分享
3 M& c9 u  y: G& m! {- q小弟我目前遇到一個跟你的第五點問題滿類似的
& J% j- G  w  e我是design一個32.768k crystal osc
$ m; d5 J, a) Mic 回來量測時發現經過digital counter的輸出會有過快的現象,也就是它會數太快,代表著也許我送給它的頻率變快了  Q1 B  Z+ L$ i/ Q7 J
所以我就去量測內部頻率輸出32.768k的那一點訊號
' E4 {7 U. o) N我下探針去量測,發現頻率跟波形都正確+ q' Y$ a: _) u% {
但是當我探針離開輸出那一點時,頻率又變快了(有接led燈,所以感覺的出來閃爍變快)( g; \# t/ z/ @3 H0 c# @- b
我當下是覺得探針類似有電容的效果( K  n$ }  @* v
所以當探針下去時會有濾波的效果,所以頻率會正常,當探針一離開則頻率會變快
; N* e/ f* H" u: j0 N還以為是noise的影響& `% q& t& X0 b$ S1 ]/ T/ d
看到你的第五點分享,現在想在我的輸出端再加上一個smitte trigger,然後再接給後面的digital counter來使用1 T2 X  z0 y) l* n6 M2 s
看看問題是否可以獲得解決
31#
發表於 2008-1-18 09:26:07 | 只看該作者
原帖由 markcheng 於 2008-1-15 12:33 AM 發表 2 E0 v1 k  W! t. i% `$ S: \7 L. n/ k
感謝finster分享
, L6 A- P2 Z; j3 d. V8 m/ X小弟我目前遇到一個跟你的第五點問題滿類似的0 Z7 B! }: \! ^! D& g, Z
我是design一個32.768k crystal osc
- F; w" v% F! Q* Aic 回來量測時發現經過digital counter的輸出會有過快的現象,也就是它會數太快,代表著也許我送給它的頻率變快了 ...
* Y& c. k$ x1 n
! a# u0 s' K) \8 i& w1 P7 k

; d. U. Y3 V/ }8 R! w8 T不好意思,因為這一個主題己經有太多人回覆了7 t8 Y, H7 ^) O0 _! s) Z4 u0 X7 V
所以也就一直沒有留意有沒有人有再提出新的問題來
+ i" f; C. R' Q我們後來實驗的結果(藉由FIB),發現到當初的推論沒有錯,因為原本的規格是要作到很low power,所以32.768KHz Crystal output的推力就設計的很弱,以致於輸出的clock的rise time和fall time就變得很長,導致後級counter在遇到很長的rise time和fall time時,就會被重覆trigger,故而使得原本要一秒一秒計數的計數器變快了2 }& t/ R4 g8 r+ a2 {* \3 Y4 i
解法就是加一個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 發表
: a, E! P4 F1 a0 z7 Z* L( Y2 [" O$ {" o# w; }
/ B5 X" ?& I6 \' p
5 p. T  b$ N+ S
不好意思,因為這一個主題己經有太多人回覆了
$ B* X, v1 Y: g, Q5 V3 c所以也就一直沒有留意有沒有人有再提出新的問題來
* _+ ?3 c* B! R9 Z6 r$ k! V我們後來實驗的結果(藉由FIB),發現到當初的推論沒有錯,因為原本的規格是要作到很low power,所以32.768KHz Crys ...
2 z7 f' I9 s6 g
  |' ~: C4 [8 t2 C! f+ L
因為我的電路裡面還有另外一個12M的OSC....其實電路上是大同小異的...但是12M卻沒有這個問題...我想應該是它速度太快了...因為12M一個cycle大概是80n...而32k768大概是30u....這個差距就差很多了...難怪rising跟falling影響後者比較嚴重...因為counter大概反應時間也都是 n sec 等級的...最後還是感謝分享經驗
33#
發表於 2008-1-24 15:07:03 | 只看該作者
我想請問一下  之前一直提到的負電阻$ o5 Q6 h) J3 {* |! I3 h5 e
到底是什麼阿
5 o) V5 u9 D! r& \$ W; }: s有沒有參考資料可以閱讀的* g- {6 R0 b& @+ I9 x
或是哪本教科書有提到的
' b7 b; m/ i; P9 ]我初踏入這個領域什麼都不懂) p) }" e% n4 J* ~2 u1 \, E5 K9 h
謝謝大家了
34#
發表於 2008-1-31 11:33:38 | 只看該作者
很抱歉之前問了個小白問題6 X8 S" E& l# ^
我查了些參考書還有文件後1 I3 d+ ]( S; J! G; G* w
總算對負電阻有些粗淺的了解
/ m$ R! V( ]. a
5 H( m$ c9 _0 p3 ]最近老闆要我改良之前12MHZ的Oscillator+ ~; B) @+ I7 l6 \# f
參考板上的文章後 把前人留下的電路丟下去跑模擬
9 ?2 M/ a1 k7 L9 J  k! g算是可以正常起振8 z; E0 d' f0 e- u2 _

2 q9 _2 h& \, f: q我的經驗是
3 M+ ?9 u0 u& E4 J. B6 }若是使用HSPICE的話 Time Step 設太小 模擬時間會拉的很長6 d) X1 {1 Q$ t' O/ S7 R# x
使用ELDO則可以大幅縮減模擬時間  可是要注意要下 .option tuning = accurate/VHIGH 的參數 不然模擬結果會非常不準, }" G( b& W' Y. T, z
然後ADIT模擬時間最短  但是算是最不準吧  粗淺的測試可以使用5 U2 J) l; t( |8 r0 u0 I4 l
但是到最後的驗證的話  還是要用HSPICE跑一下比較妥當1 y1 @/ i7 t1 ]: x& L
以上
35#
發表於 2008-1-31 16:39:37 | 只看該作者

回復 2# 的帖子

給monkeybad! v/ ~$ E6 N: v$ f$ p9 T9 X0 E- M
! {4 U( z9 f  p5 W
我覺得這樣模擬負電阻的方式有一點點問題# A& ~6 i$ i8 n, R  Z; C
你這樣所看到的阻值 與你所提供的Philip AN97090文件裡面的值不一樣4 o9 o  O. n0 N) N
你模擬的是並聯的負電阻值  而Philip的是串聯的, `2 A$ T7 Y' p0 ^! I# [
兩者會有差別
' n4 P% o" f+ c5 S
) |5 {$ U. j5 K' [) C如果要用並聯的方式討論的話
8 ]0 P+ y: i- T可能要把Crystal裡面的Rs換成並聯形式  就像是Razavi P.497推導的一樣
6 a: _3 Z3 V8 X- s然後負加正大於0 (因為是並聯形式  所以要相加大於零) (Razavi P.504)
. _) a$ u2 T/ @' X' h: f/ t應該就可以起振了
) B% p5 b6 J# y
* Y6 i6 a( w7 P3 p另外有個問題
6 i/ k9 I/ k9 B0 K( r$ S不知道在圖二你是用什麼方式把頻率鎖在震盪頻率
5 K% u" h& m+ l% k0 n如果把石英拿掉的話! A& C6 R9 L6 G* R
震盪頻率應該就是Inverter Delay的倒數  大概都是G的等級0 G4 _: z- h. y% @' I: A1 W# i
如果沒有鎖住的話  那模擬出來的負電阻就跟震盪時的負電阻不一樣了1 h: D- ~/ }! C/ @: G; E4 z5 M8 C
. s" w* \; ]6 g
一點淺見. ^$ O$ b7 {6 k
有錯請不吝指教
36#
發表於 2008-1-31 22:41:07 | 只看該作者
抱歉 我又來囉唆了$ C3 G: p/ r9 s/ c( S. w( w4 m
我剛剛模擬了一下 monkeybad大大模擬負電阻的方式確實可以用. P) m  m; i# J* M3 O
只是模擬出來的值  跟參考文件上的不一樣
* a( R+ G4 u* ]) ?( N- {% K它其實是Crystal往外看的等效電阻值6 v- E; L% _2 n/ [6 r0 _
所以如果要用Philip文件上的方式判斷的話
0 p% q$ l9 t$ y8 Y4 B: y' Q還要把這個電阻值做修正 也就是跟Rp的方法一樣
. D8 c- |& }4 h+ K' r這樣才可以把並聯的負電阻值換成串聯形式( a% ~* I% }, s
然後負大於正就可以起振3 S* ~* o$ ^. }$ W4 w3 K% N
4 Y: T- e; \' j/ v2 K) m" k4 J0 S
另外  我想請問一下monkeybad還有skyboy大大* T4 q3 D, ~* u" L
在做負電組模擬時 要怎麼設定aa和bb的直流偏壓值7 D/ m) O# n8 T( z, y
我自己的方式是把Inverter的平衡點社在中間  然後下電流參數的時候 不給直流參數
9 V  R/ i2 D$ H不知道這樣合不合理  v$ [0 c. W% q2 `5 z, O
謝謝
37#
發表於 2008-8-19 13:30:06 | 只看該作者
這一篇的討論真的很不錯!!
! T1 `5 \+ s1 X' N, e) l   受益良多...
38#
發表於 2008-12-22 18:27:46 | 只看該作者
真是很棒的分享
: ~7 j: F4 r- Z
2 c/ l8 }/ O1 ~' B0 H; r" b* ?Thanks for your input!
39#
發表於 2008-12-22 20:23:13 | 只看該作者
谢谢f分享经验
6 W6 g! M; S+ a$ E$ P( r' _crystal的等效模型各位是从哪得到的?
40#
發表於 2008-12-24 20:38:47 | 只看該作者
嗯~~多謝大大的提供~~小第也在做振盪器~~~謝謝囉~~~大大
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-6-15 08:58 AM , Processed in 0.148519 second(s), 17 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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