Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

[問題求助] crystal oscillator不起振~

[複製鏈接]
21#
發表於 2008-10-11 23:22:43 | 只看該作者
從你貼的模擬圖來看,確實還蠻奇怪的,因為這個現象照你所描述的電路來說有些不合理$ V! Y- b# _; g6 S9 m( F3 ]
若你已在反相器與C2之間有接一個傳輸閘了,在disable下,反相器的輸出應會被拉到vdd8 [8 L" @  ]2 t: R& y3 [
而你的情況卻在vdd ~ gnd的任一電位% ~# z/ _8 Y- o. F* J1 z: Y

" v4 ^# Z9 y7 q+ B) D你能否確認一下反相器輸出端傳輸閘兩端的電壓各為多少?傳輸閘的PMOS/NMOS在disable下時有沒有電流流過?電流值各為多少?3 P; ^( m% c! g( W5 g6 n
另外,量測一下反相器上方那個電阻在disable下時的電流為多少?# F) R& h' J! g
, `# d, b$ I$ T$ ^& {/ e2 R6 Z9 G
上述第一種狀況是針對反相器後的傳輸閘作測試,看看有無正常動作+ ^! L! N' i1 E4 _$ R
至於看反相器上方電阻的電流則在看為何反相器的PMOS在disable下的動作8 z' |$ S  k" P& f" `5 u+ T/ A

5 V- l* v2 R# g( y+ {( U最後,若你學長都需要用到C1和C2兩個I/O PAD,那你的反相器的輸入和輸出端一定要加傳輸閘來隔開,不然,屆時就會有問題
22#
 樓主| 發表於 2008-10-12 20:47:17 | 只看該作者
再次感謝finster版主~
8 _: C. u6 I. ~* @" @$ P+ {( n, _4 Y7 V& t/ D
我想確定我和版主所講的輸出是同一點嗎?
  G! z9 Z! y2 E, c
8 w0 P* r  L( e+ b) {7 ^我的反相器輸出是會為vdd...但我現在是不清楚在圖上所標的vout在disable應該是要什麼情況呢?  S+ r- ~0 C9 q$ y1 ~4 ~
- R# ~6 }# g( y. p2 p# J
是介於0~vdd嗎?還是vdd呢?
  _0 P) c3 w4 u- M6 G, k% c# K9 o. m
因為我是想說在floating時不是輸出在任何一點準位都可以嗎?
6 Z$ o, m* }  Z8 Z* q& B) S2 v3 m$ }4 n* ^
因為我想說我上次貼的電路圖是不是誤導了finster版主了...怕說我們兩個指的輸出是在不同一點的?0 O1 l5 @6 k! k) [+ V, ^

- V" ^- {, z2 c7 F! K6 Z再次~再次麻煩各位前輩和finster版主了~

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有帳號?申請會員

x
23#
發表於 2008-10-13 23:31:55 | 只看該作者
從你目前所貼的圖和你之前所模擬的結果來看是一致的, N+ I2 g2 {- ^: M
就如你所言,先前我所說的節點和你認知的不同,所以有所造成誤解
$ ]) u+ d( B8 O0 g; ^3 s依照你所標示的Vout,它確實會是floating,電壓應會介於VDD ~ 0V之間,更精確來說,它會略近似乎於C1上的電壓
24#
 樓主| 發表於 2008-10-14 08:43:46 | 只看該作者
謝謝finster版主~
! E+ G* A9 O) P6 L
8 z7 o( a0 A( W  |4 V那我可以放心了趕在月底下線了~謝謝finster版主的耐心指教~讓我受益良多~謝謝
25#
 樓主| 發表於 2008-10-17 13:42:43 | 只看該作者
hi~finster版主我又有新問題了~不好意思
% k3 D* K* c3 P7 v. k4 C
0 l5 H9 e( V; n& [6 ?5 k' Z" N! _2 U我layout都沒問題了等著月底下線~/ I9 _2 D! s' Z

8 A2 m, |/ u  {/ V2 Y9 V) d因為在幾篇paper有看到利用相同電路,但crystal model不一樣(原本是13MHz,現在想說看能不能使用在更高速的10M~30MHz)
  r2 e; s. L; v+ `9 y7 j9 n
1 e4 o1 m4 F& V8 v8 j9 O/ ~8 {$ k但改變crystal model後只能在20MHz下正常工作,更高速20MHz卻振福很小(有振,如附圖)2 ?5 P8 N- X; {, g' d
, @9 h/ L) ~. H" N. h4 N7 t
我也有想過是driver不夠,所以也有加大但還是一樣,應該不可能是反相器不能工作在那麼高頻率下吧?!% f4 D1 k/ C# d, M; }* X* b
0 E& S! ]2 c* o6 L1 Q8 b6 ?
這試什原因呢?在我不改變其他元件情況下(頂多改變反相器size)有什辦法能解決嗎?
) x7 J  q+ Y. j
8 C0 q8 b3 G* |+ ?8 ]9 ?0 E+ U: B% }p.s 圖1是模擬出來的結果,圖2是局部放大的結果~這個應該是有振吧?只試振福小到可憐~
# Z6 q; F8 S* s3 V
1 g, p5 t" _' V6 |" c& s請finster版主在抽空幫我看看~非常感謝~

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有帳號?申請會員

x
26#
發表於 2008-10-18 14:49:56 | 只看該作者
以crystal oscillator電路來說,廠商會提供一個外部參考的電容值和回授電阻值作為參考
4 j2 y6 O2 l6 r$ p故而在不同頻段的crystal會有不同的C1,C2和Rf建議參考值
. |5 e! r4 \5 ?7 G; O2 k20MHz的crystal oscillator的C1,C2,和Rf並不一定和>=20MHz以上的crystal oscillator的C1,C2,和Rf值相同' M) X2 o2 ^, N. P9 N  e

4 g0 D, _' `9 O) j+ _再來,一般來說,大於15MHz ~ 20MHz以上的crystal oscillator,因為主頻較高,相對的第三倍頻也會隨著頻率增高而特別顯著+ h, M$ x) ?' i- N3 ]  l  F
所以,有些廠高會在C2到crystal osciilator的output端再額外加一個小電阻,而這個則是用來阻絕(抑制)第三倍頻的功用,這個在一般的crystal oscillator的規格書上都有寫) G7 ^6 [' \) \1 K6 V7 d, n% |
) n/ Z" x$ V5 {: s
最後,如我前面所寫,不同頻段的crystal oscillator需要搭配不同的C1,C2,和Rf,而且,它的消耗電流也不同
6 s+ @  u6 [( Z2 P/ ^9 ?5 r, c一般來說,愈高頻的crystal oscillator的起振時間愈短,同時jitter也愈大,而且高次諧波也愈明顯
9 I! k( u- t! R" q+ G所以,請先查一下crystal oscillator的規格書上所寫的建議值,因為你的C1,C2,和Rf值也會影響振盪出來的振幅和頻率
7 q7 |$ l* X! r% r5 L( Y+ l# n( U3 P
[ 本帖最後由 finster 於 2008-10-18 02:51 PM 編輯 ]
27#
 樓主| 發表於 2008-11-11 13:07:56 | 只看該作者
各位前輩~1 M# a. w: i$ |2 H
& d7 W: u/ l4 _. L5 {& Z
之前因課程關係做了一個crystal osc(期間感謝finster版主的指導~),且也跟著藏在學長的ic下線了~# h  J/ j& l" J' u8 h" ]' c

0 c& a8 o4 n& {  @1 M* ^% T不過最近在書裡有提到overshoot可能會造成emi的影響~8 `0 N; d6 ~; V' u5 \
! t; e* H% l. T7 [1 P
我再把我之前做的crystal打開來看,發現我的輸出也有overshoot~
, p# @( A1 C: B$ e2 ^% p
. K. \, l  s1 S. n如圖~這應該是overshoot吧!?( d. O% a+ L/ l% ]4 E
) x7 }. m5 g5 p: }% q* ?% s
那這個有影響嗎?有什辦法可以改善?
1 v7 X% H* ^& n$ y0 a) _
' X3 D9 o* Z! [% l3 F- j請各位前輩能給我一些意見~謝謝~

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有帳號?申請會員

x
28#
發表於 2008-11-12 14:42:38 | 只看該作者
正好在煩惱這方面的模擬% `! ^; ~2 Y! t: d/ A* ?# H
有了這份參考資料依定可以成功,感謝
29#
發表於 2008-11-13 23:31:30 | 只看該作者
原帖由 camilla 於 2008-11-11 01:07 PM 發表
5 e7 g9 m) f7 Y" {各位前輩~
3 F7 b8 L, Z, ]7 O6 D2 k7 V# ?1 g8 ^) L5 K8 B+ R' \; G0 z
之前因課程關係做了一個crystal osc(期間感謝finster版主的指導~),且也跟著藏在學長的ic下線了~
- R( Z  V2 V$ D- r: H3 ~  y
; N0 @) ]# c+ {- Z" z1 m不過最近在書裡有提到overshoot可能會造成emi的影響~' {' n0 j# G* _8 T
' I# S' j4 [: v
我再把我之前做的crystal打開來看,發現我的輸 ...
- S, _1 B% Q" Z2 [9 f! U

  y( P8 B& {7 x
' ]/ y$ ?8 g4 M3 I$ A4 @1 ]你這種情況還好,並不嚴重# x! k3 D! a/ v" V. t
要想克服這種現象,若在OP,最簡單的作法是改補償電容
$ r& v6 o3 V8 t% f若是反相器,減少driving能力或者在輸出端加點小電容(負載or Buffer)即可
30#
 樓主| 發表於 2008-11-17 16:45:58 | 只看該作者
謝謝finster版主~
/ U& d3 K* P! V8 B8 Y& T# G' L+ }1 c1 x& k( D" L" L* j$ Z( K
你說可以在輸出端加小電容(負載or Buffer),是為什呢?
  Z, a2 O, X+ |2 b; y; o9 E
3 n( M* s8 M: C4 o) L' i' Y因為我在輸出端有多一組schmitt trigger,這個是我學長要我加上去的,只不過在disable時要為zero,但為什要如此呢?4 l) x) _. I! Z  E' w

# A9 U- H& r* j我為了要使disable輸出為zero,所以在schmitt trigger後又多加一pull down,這樣應該不會有問題吧?
31#
發表於 2008-11-18 09:58:04 | 只看該作者
減少driving能力或者增加buffer其實都是同一個原理的解決方法2 @+ [1 v. I- f) V5 H0 l
因為你的輸出的driving能力太大了,導致在輸出為"1"時會有over-shoot的現象出現
) v9 z( c: |4 K, }- M, b6 K故而,把driving能力減弱,可以減緩over-shoot的問題
8 k3 Y% Y) j. _7 a% t4 `/ x5 M另外一種是增加輸出級的loading,而這種方法就是加小電容或者buffer,如此一來輸出級的fan-out就增加了,相當於是一個loading,不過,我都是用加小電容比較OK2 c3 h# T! M2 z" P5 G
$ @" j8 p( r& E, T* S) Z+ o  K
至於你問到的第二個問題
2 }0 ^6 X' u: W0 W- l  x, o這個要看你系統上的需求而定,在disable下要為"0"或者"1"都是看系統的設定來訂定的
5 r% l  [" F  ?; j不過,你用pull-down,原則上沒有問題,但若是在實際產品就不建議,因為你是在輸出級加這一個pull-down,在disable下若輸入為floating或者"0"的狀態下會有一個leaking current path,這是要避免的情況
2 [4 @  E8 Z. c5 f再來,pull-down的電阻值不能太小,不然會有一個strong的向下拉,如果你的輸出級不夠powerful,很有可能會讓輸出級保持在"0"的狀態
32#
 樓主| 發表於 2008-11-20 11:12:45 | 只看該作者
再次謝謝finster版主~; L' h3 ?) V2 D
. A% h; {! s9 g
最近比較忙,所以現在才上來看你的回覆~7 d$ U' C+ ~( G

7 F$ @+ `' `7 C- J1 b前天被學長問了幾個問題他也不知道,我也不太確定回得亂七八糟的)
6 H9 n3 ^2 Q% q( m' h3 A' b2 @8 P% E7 w  `- v$ j2 J2 L: Q
1. 你crystal model上網抓,那你的設計是針對網路抓的model來設計的,那如果套上實驗室現有的crystal的話,能動嗎?$ v+ g+ i0 |2 u* f( F6 @

" A# Z8 ~4 K. ^6 ^4 W: D2. 輸出級只是要它產生成0/1的數位輸出,所以我指要用反相器應該也可以吧?但這樣不是在crystal model floating時出電壓是任意
% S. T. H- |  m/ [6 I7 T0 W0 q4 y  U* V9 V   值嗎?不是有可能會造成輸出級反相器在disable時是導通的,造成vdd_off變大嗎?有什可以降低這個問題呢?
1 ~$ A& i! q+ t3 J; b+ p) a8 ?$ t: V% n5 O! T- M( v
3. 我在原本輸出級是史密特時,套上25MHz以上的crystal model時,電路是不振的,我想說是driver能力不夠大,所以又在schmitt多加
8 |9 x( Q5 \' h8 ?   一反相器來推他,是可以振了但電路消耗電流卻變得很大,是我想的不對嗎?是其他原因嗎?
7 a# ~5 U$ b0 L2 [& C0 E
) D6 \4 K. P7 G- D再次麻煩finster版主了~謝謝~
33#
發表於 2008-11-21 14:33:07 | 只看該作者
1. 不一定,因為不同廠家所生產的crystal,其crystal model都會不太一樣,所以換不同廠家的crystal oscillator也許會起振,也許不會! t1 J4 D- f7 k9 T* ^# l$ U8 p
    不過,通常都會起振,因為不同廠家的crystal model不會差太遠
! X/ i2 B5 b# h# m7 {2 L- C$ b2. 不太了解你這個問題要問什麼+ }$ x1 j; Q! J- U- _4 X
    基本上,crystal oscillator 的放大器用反相器或者NAND都可以,用NAND只是要有控制腳的function,而在disable時,輸出要為"0"或者"1"或者floating都可以,但要看輸出級後面接的電路能不能接受"0"或者"1"或者floating
5 y# t  `3 b9 F5 m: N5 E' E8 [# ~2 `' L% O; ]/ E0 y' W
3.這個你可以看一下振盪的waveform,我在猜可能是你的振盪振幅太小了,以致於在schmitter trigger後面無法trigger後面的電路,而加了一個buffer後,把振盪振幅放大了,但,這個buffer會因為schmitter trigger的輸出振幅太小而會讓這個buffer有著極大的電流消耗
34#
 樓主| 發表於 2008-12-1 01:31:17 | 只看該作者
不好意思~finster版主~
' U, {9 t9 J8 \! X  A( q% o% k
5 s& n% A. W0 d8 e% s8 i" U我的文章沉到太下面了,我以為沒人回所以就試著自己找解決方法~今天才看到~很感謝你的回答~
( d7 m( E7 O& r9 [' m
: i; U, V$ x$ `9 i. o* E7 ~我的震盪波形在接上schmitt後變小了,是什原因呢?
0 V; j- `2 X1 ^# r. M8 e, T- V" h, ?
我目前有試著利用一個nand+inv來取代schmitt(因為我在schmitt的輸出在disable時希望是0v)
- E, s; ^3 {, @# A* i+ p+ T; [- ^3 r
是沒問題的(在disable時的電流有2mA左右)...但我又怕說會有glitch的問題,所以才想說利用schmitt來產生一個high,low的輸出...! s5 B8 _0 o: V. l
) t1 X# g: V5 v* u8 N; [7 }
若使用schmitt又會只在25MHz以上的頻率才會有這個問題,所以我不知道要如何解決這個問題...
4 h$ l1 C5 C! V' N/ P! r: m% q2 O; [) V5 |3 @
但在振盪輸出和schmitt之間加了反相器卻增加了電流的消耗,有什可以解決得嗎?是我設計的schmitt有問題嗎?(但怎會在25MHz以上才有這個問題存在)
6 f# ~* i& E8 w. ]! F% j1 T
$ Q' ?2 N; h1 a2 I0 J可以麻煩finster版主在給我一些建議嗎?非常感激~
35#
發表於 2008-12-1 23:08:08 | 只看該作者
你的振盪器的原本振盪波形的振幅有多大呢?接上schmitter trigger後振盪波形變小多少呢?
) x3 o6 d3 F' v$ s' x5 u/ F( q2 Z8 n  @# P另外,你schmitter trigger的vih and vil又各為多少呢?
( I& S  k% e; g" B  A
  d" i: w, t/ M* S因為我不知道你這些條件,所以無法回答你的問題
* M; E- G) y9 d+ U! o" E. B
8 D& m- X: r: S% ~6 y2 K1 M6 ]至於你問到要降低消耗電流,這個問題需從你的振盪器著手,因為你的振盪波形並不是0 ~ vdd,所以接在振盪器輸出級不管是反相器或者schmitter trigger都會很耗電流,解決之道惟有改進振盪器的輸出波形3 e6 L6 G% i5 U6 r2 {1 w
- Y! j8 W% B+ ~* X$ k& y
[ 本帖最後由 finster 於 2008-12-1 11:33 PM 編輯 ]
36#
 樓主| 發表於 2008-12-2 01:28:21 | 只看該作者
真是太感謝finster版主無私的教導了~ 7 T( s! @) j4 F. F

* f1 n% K& a6 ?# `8 F) P7 \: v' _& p5 f我原本振盪波形振幅是0.3v~3.2v...6 P" d) `! Z' ^1 e  @9 S
4 Z0 s+ S& @6 x* N; C
但接上schmitt後竟只剩下1.45v~1.58v而已...: H* g3 p' n7 n7 d

% H* O4 [8 U/ a而我的schmitt vl=1.4v,vh=1.6v...(我也有試著把schmitt的觸發電壓改為1.4v~1.5v,但還一樣,很奇怪??)
4 H4 t& \1 [( v/ X* \" z5 }& K( B- |0 |) K
但為什我同樣電路但crystal model由25MHz改為20MHz卻沒問題,只有在25MHz以上才會有問題呢?7 C8 K$ g5 \+ W& z* J( b' L, O4 X

* Q, [' x" k2 M' z  D" Y(其它頻率範圍下振盪波形依舊會在接上schmitt時而變小,但就只有在25MHz以上才不會振~)
. x  r$ ~! D( k  ]" _
3 x' U* b$ I5 w這個問題困擾我好久了,我有想說就直接把schmitt改成一個nand+inv一樣可以達到我要的在disable時輸出為0...  u# ?% I2 q$ K1 t

- e+ b/ r/ y& c7 u+ O* _! y但我不清楚說schmitt的優點在哪裡,除了能抑制noise,減少消耗電流外...) V, _8 |6 q4 X1 `5 Q  u: H7 e

+ U, `% A0 v& c1 a" u: y5 L若用nand+inv除了可能會有glitch外有會有什不好的缺點呢?(和schmitt相比)
3 w# g, }; I' P3 p: ?/ H* p  U8 L8 ^8 v
我想說若可以的話就使用nand+inv一樣也可以達到我的需求,消耗電流大概在1mA左右~
1 ~, C3 k& W. z% q
0 A$ G' \$ p$ m7 A: _  W再次~再次~在麻煩FINSTER版主了~非常感激~謝謝~
& J- L9 o8 _3 I: I
: ~* w% t9 r& o; u* b' |p.s 圖為我使用的schmitt~

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有帳號?申請會員

x
37#
 樓主| 發表於 2008-12-4 09:00:13 | 只看該作者
~又被沉到下面了~請各位前輩幫我看看吧~謝謝~
38#
發表於 2008-12-4 13:26:15 | 只看該作者
從你的描述來看,應該是振盪器的driving能力太弱,以致於在加上一個schmitter trigger後才把輸出波形給變小0 c" W# {% `+ W. o
關於這個現象,你可以從你的模擬中重現這個現象7 j( s4 _# {1 [
你在模擬時,先不加schmitter trigger,然後在振盪器的輸出端加一個小小的電容到地,我想,你應該就會看到你的振盪器的輸出波形會整個變小
7 A. o! Y' y5 s' a而這點,主因乃在於你的振盪器輸出的推力太小,以致於一點點電容loading就會把輸出波形的振幅給變小3 x( E5 z: U  V/ r/ _
而要改進這個問題,只能把振盪器的driving能力加大3 g4 m( T' V& H3 x0 M* n, Z5 \" y

4 B) \; M2 t/ u( a, H& |+ z至於你問到為何只有在25MHz以上才有問題. @! P: o/ q$ L* l
這點,其實也跟你的振盪器的driving能力有關
! X/ I" |4 e+ k/ m因為在crystal oscillator中,振盪頻率愈高,所需的電流與driving能力也要愈大
5 ?. p& B& y8 R' R( o* n而你設計用來振盪20MHz的振盪器來推25MHz以上的crystal oscillator,當然振幅會明顯被壓小,甚至有可能不起振
4 C+ B# x8 W" G& o( h+ q: k- A5 h' A9 j0 S: q9 x
至於schmitter trigger的優缺點
/ c1 a$ P. @5 |& O% r6 P4 o其實,就如你所言,它的最大優點乃在於它有window特性,故而對於noise有較佳的抗雜訊能力,也因為這個理由,所以才會使用schmitter trigger
: }3 z' W" K8 B基本上,如果只是學術,用nand其實就可以了,若是業界,我個人都比較建議用schmitter trigger會比較保險
39#
發表於 2008-12-17 10:21:20 | 只看該作者
留名关注,日后学习
- d. q7 q  F- G! F) k谢谢分享。。。。。。。。
, c) A4 E3 ?* K) r- S/ e。。。。。。。。。。。。
40#
 樓主| 發表於 2008-12-17 17:56:24 | 只看該作者
超級謝謝finster版主的解答~
( A. J. z5 P4 n6 X3 t2 ^# }; H
, |- Q5 \* N& r4 j3 _$ {3 e最近全實驗室都在忙年底要結案的計畫,直到這一兩天才有時間繼續自己的事~很對不起~
0 X+ V* u3 P0 x  A
! [1 w; F) a% X, @( z- s我加大driver後是沒問題了,不過我有幾點疑問想在請問finster版主,請finster版主能再多多指教~
- j  A% S8 F; A# V4 F% d. G  K0 ]2 y0 I
. C/ m2 \/ D6 |) ?: j1 ^# p第一~ 通常crystal的消耗電流會有多大呢?(雖然不需要設計到很小的消耗電流,但我又怕自己做的crystal會很耗電)( Q0 U4 k% y# m' Y  x7 @
. @' s: Q; V  w! v+ H  ?: Q
第二~ 我想讓設計的crystal的startup time能快一點,可以如何設計呢?(我希望能快到20~40us左右)1 }4 J5 l3 o! M* z# f. f

! I& ]' \! P3 j; J+ r第三~ 我在schmitt的輸出會有這種情況,不知道是為什?(這是一開始時的輸出,等到它穩定後就不會再出現)
4 _4 c4 g5 d1 I4 {6 [) e( D2 |5 l6 j2 l: }0 a& @. R& Z0 x/ c
麻煩finster版主在指教,非常謝謝~

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有帳號?申請會員

x
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-5-7 06:54 PM , Processed in 0.123007 second(s), 16 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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