Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
123
返回列表 發新帖
樓主: camilla
打印 上一主題 下一主題

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

[複製鏈接]
41#
發表於 2008-12-19 10:16:00 | 只看該作者
關於crystal oscillator耗電的問題,這個其實並沒有一定的標準& \  ]5 s3 N1 Q) |
因為crystal oscillator本身其實是蠻耗電的,除非你是設計32.768KHz的crystal oscillator這種才會設計成很省電,不然若是5MHz以上的crystal oscillator電路,它本身的耗電程度都在mA等級以上,這個原因是因為頻率愈快,它所需要的rise time/fall time要愈快,所以放大器或者反相器的耗電就要愈大
$ l+ n+ M, m( |, Q( X3 _3 q
. m, m; r+ j* e# f3 b0 [, g若想加快start-up time! P; J; |( |! _  q
最簡單的方法則是加initial circuit,讓crystal oscillator在一開始便設定它可以振盪的電壓準位,提早讓crystal oscillator反應出相對的phase差的振盪
: M% N* \: `9 l. b5 K$ g7 }  r  j: I) k) D" \9 {
至於第3個waveform情況,你可以把輸入信號秀出來,你就可以知道為什麼了,這是因為crystal oscillator尚未達到穩定的振盪波形,所以輸入的waveform振幅會有點忽高忽低的,以致於schmitter trigger的輸入會接收到變化的電壓,故而輸出也會不穩定,這是合理且正常的情況
42#
 樓主| 發表於 2008-12-19 16:33:30 | 只看該作者
finster版主~: J2 P# R* Y1 E# z; u2 Q
  d6 G5 R, z% R
我看不到你的回覆呢?好奇怪~可以麻煩你在發一次給我好嗎?非常感激~
43#
 樓主| 發表於 2008-12-22 09:21:05 | 只看該作者
謝謝finster版主~& C: @7 b, o# m/ R  i2 G0 B. Z
; [" x. V* `- e  {& g+ z
應該是我電腦問題~可以看到你的回覆了~謝謝~
& M& r5 R( p) ^. D
/ {4 e0 @5 G, B我了解我問題的原因了,不過我對startup time總是不了解,% x( A5 M" }: }6 O2 Z7 a/ k
/ C$ X% v3 k- q/ U8 z' L! U+ R8 H1 L
我是想有無辦法不另外加initial circuit來加快startup time嗎?
5 ^( O3 T; C# }( C3 T% m( X2 {: _/ Q0 ^1 M, V. @
我是想說可以改變現有的元件參數來加快startup time嗎?  D4 o' }2 F  H- T1 g" p, ?

3 v" g8 q" |6 U* B0 t例如改變crystal model的負載電容等校的那兩顆電容(C1,C2)或R19 w% P7 [* [+ \7 ~. y
- t9 T% h: S( G' P. H% ?) q
因為我一開始是針對13MHz來作這個crystal osc,) J: p6 E  g% e$ x/ m  D6 o: T

0 `3 @$ H5 X6 T+ H所已在改變crystal model後(改成20MHz,25MHz),原本想要的結果就會改變,) g" T! L* Q# W4 a1 G* Q$ [% e; v

! b" K7 V2 V# \- F  N4 j是不是這個架構在13MHz時是最好的,但在改變crystal model後所有特性又會改變?, \/ ^* t5 O( t8 f+ E; V- w

$ e$ r: s8 i# s* I# A7 V3 X有辦法說可以設計出適用於4~25MHz的電路,但startup time, 耗電又都能符合我的要求嗎?
' {1 w, P) {$ H+ ~) S" l5 u! K7 O: O6 M+ {# k  U
(我目前13MHz這個crystal 架構若套上20MHz以上的model後,startup time,耗電都會明顯增加改變)2 y7 y9 E- Z) `- ?# r, R

5 [+ k/ A. i+ b; F8 i1 O) H* G不好意思~問了一大堆問題~再次麻煩finster版主了~謝謝~
44#
發表於 2008-12-22 17:30:15 | 只看該作者
有 disable 能力  的 gain0 M: t1 }. h  j, m8 q* o
要高點4 j' i# D- V2 Z6 {2 R

" Q' q) P! L, Q+ b, Ehspice  sim 會動
; }6 K1 q: I  V" i7 D% \' f. y# b* L7 A3 E2 M- k/ Z: z
real chip  可能不一定會動  : ^" A" K' T% M( X

& e  A; C: S. r0 }- |" L; N: d+ K而且 不是 所有的 fail  是部份
! h6 Q7 p9 X. x/ i1 J: |. _( s那就是 gain 太低
45#
發表於 2008-12-23 18:43:28 | 只看該作者
原帖由 camilla 於 2008-12-22 09:21 AM 發表
  h1 @. D8 E+ L' V6 R謝謝finster版主~. i- [+ L; [, \) B4 \
5 Q& m; I' F1 J8 l/ i5 ]' M, N' ^
應該是我電腦問題~可以看到你的回覆了~謝謝~
$ K$ A" r1 J. y' s3 F; ?) n  @! m1 l- f1 g. ^& V$ [. {7 f
我了解我問題的原因了,不過我對startup time總是不了解,! ]2 o. I6 t) i% ?% H

& U% B2 F) T* q2 i2 V- S我是想有無辦法不另外加initial circuit來加快startup time嗎?- e6 |! b5 a- {
3 q4 N4 Y' z0 C9 i
我是想說可以改變現 ...

( I) `0 e  A# w: ^: x( b! J# t) u, [) @
) c% j7 ^' t  s. W
7 I; A! m" K; ~  L) B* A6 M! W
先回答startup time的問題
- f+ U. }# x% E, h- `% k在不增加initial circuit的前提下想加快startup time並不是不可能,只不過要先理解crystal oscillator的理論,而這方面討論的paper只有早期的IEEE才有,比較偏理論,你可以研究一下
3 {& H: N! n; X! j# A至於你想改變外部r,c來加快startup time,這種方法的效果有限
) @& E% ~# }4 X0 b因為只要改變了外部的R,C值就會間接影響crystal oscillator本身的穩定度等issue,有時也可能會造成不起振的情況,所以若要改變外部R,C值,個人是不太建議你朝這方面去作% W/ b- Z0 j/ w7 W
0 A" H+ g( l, r; W6 c8 q
每一個範圍的crystal oscillator都有一定的design需求,目前很少有一個電路能夠涵蓋4~25MHz的range的crystal oscillator
- f, P5 G0 S, D" j7 L1 N8 v目前大部份都是針對某些特定的crystal oscillator的頻率作設計5 d" E: w& a4 o, k
而且愈高頻,其crystal oscillator的考量也愈多
46#
 樓主| 發表於 2008-12-24 13:14:13 | 只看該作者
謝謝FINSTER版主~  d$ d+ U0 k- ]- _# \

& w( F' Y9 k- @8 h+ D8 Q  V% P+ W我知道了,謝謝你的耐心指導~讓小妹收穫良多~, j& U( B8 U4 L3 A  ~" R

. q6 r! Z7 M- S# ?7 s$ Y我之所以想要做個可以涵蓋4MHz~25MHz電路,是因為我教授當初是要我做個crystal osc,freq是由4MHz~25MHz,
; [* z4 v$ T1 [+ z+ E, A8 x* u. ?5 ?3 A
" K8 j- Q8 t1 f9 p- S' ?+ ?且有人作過,但我試了很久還是沒辦法,為了讓更高頻可以振,而加大driver,但卻使得頻率較低的startup time變大甚至不振,
( a% f9 C7 i1 y) a% Z. Y$ H
# a& x$ l' n) c* G0 R5 W( l試了很久,我會再問我教授他真正的用意,是不是我想錯他的想法了~
+ o. }+ o& X$ Y. d" s+ E1 m! C+ |
1 ^: C$ d- Q8 y" D& T9 X至少目前我對crystal是瞭解了~6 E& t& y$ S. r

0 i6 r, O5 l' w' Y超感謝finster版主的指導~謝謝~
47#
 樓主| 發表於 2008-12-25 10:02:28 | 只看該作者
不好意思~finster版主~
/ b0 R5 ?6 ^" p4 H* F- H5 I* J9 N; g( j  Q6 J* C
能再請問一個問題嗎?( Y' ^( ^7 N, c0 }# z

( M' u0 R3 q; g' ostartup time的定義是指什麼呢?9 l  Y5 y2 j2 ?8 q8 b; L

) _. Y8 v; l1 y. m( i有些paper是指vdd從0v開始上升到穩定後,輸出也開始起振的這段時間(但不是輸出振幅到達穩定了),就稱作startup time- t: c5 T3 j) H0 Q: U: u% b+ X

7 ~: a! a4 _* d- @有些是指輸出振幅到達穩定(某一個值)的這段時間,就稱作startup time2 r0 m& l, j& u% z- f
) k5 D8 m3 K" |3 z! \
又有些是指輸出duty cycle穩定後(都相同後)的這段時間,就稱作startup time* F( \6 M* D, m/ A2 R% t3 ]
  x1 l' [5 z2 s7 s: Y
那到底startup time是指哪段時間呢?
6 `$ I5 P$ |- N8 w4 e
- O6 J# {6 R( D  c/ |請finster版主,或知道的前輩能指教一下~非常謝謝~
48#
發表於 2008-12-27 00:38:03 | 只看該作者
以目前我所知道的startup time的定義來說
" s1 N8 w+ A/ q) @+ D3 {它是指crystal oscillator從一開始沒有任何振盪到完成振盪且穩定的持續振盪時間稱之為startup time
2 Z7 _4 W- r  d/ V+ P1 T( H4 t7 A) W6 u- j* {) F
因為我們在模擬crystal oscillator時都是以vdd從0V昇到一個穩定值作為crystal oscillator作為一個初始值,所以有些人就會把從vdd的0V到crystal oscillator起振且穩定持續振盪時間稱之為startup time,而這種說法其實並不是非常正確的定義
+ J1 N/ A1 O% J' c' ~, f" O  R& N% M5 \6 b3 @& A7 x* e
不過,目前在startup time並沒有一個很統一的定義,而我所知道的那個定義也是從IEEE Journal paper上定義所知道的,而那份文章是很早期的paper,內容寫了一堆理論和公式& f2 }/ T% i+ }- Z9 p
& v( k% n  v9 p
最後,crystal oscillator要作到4MHz ~ 25MHz並不是不可能,只是較為複雜,以前我也作過,後來我也只是覺得沒有必要弄到那麼複雜且麻煩
49#
 樓主| 發表於 2008-12-27 19:19:48 | 只看該作者
謝謝finster版主~
5 U) b2 O' Z( Y6 N: \$ L' `& S( i' }6 F2 C: c( D: m! ]4 V
我對startup time了解了~# W1 h: `8 l& C0 a0 J" ~

; Y# T. L; `3 j, u* I! O' |% |7 z我昨天試過用spectre跑了一次crystal osc...0 g) b/ I/ s  i3 ]) a. X( |- t
; Z. [& d0 @0 u7 e2 x
不過竟然和hspice跑的結果不一樣,同一個netlist 13MHz跑出來的消耗電流和起振時間是不相同的,% j! S! A" U; t) L9 W* i

- \5 f* P) N# n. z% h0 `7 A9 n消耗電流小很多,而電源電壓給0到vdd,但輸出竟從0v就開始振了,所以startup time也跟著減少很多..." k" e6 e* e' m5 E
  e/ l& Y$ b0 W5 K
一模一樣的netlist為什會跑出不一樣的結果呢?
! A1 F3 o# Z9 i% b6 @8 y' j  x. e1 t5 J% |, U" w6 d9 p
另一個問題是,你所講的加快startup time可以加一個initial circuit,有範例可以參考嗎?因為我的startup time實在太慢了...
1 o' d" W) G3 ~* c5 i" Y6 ~* l% m" i* W- a
(一直被學長嫌)
9 k$ k/ e+ h. q& Z
7 }  [* N/ s9 q" w' X2 m; g# a" t; h5 k# j7 @8 y
p.s 很感謝finster版主不耐其煩的一直指導我,不過因為我實在有太多問題了,希望finster版主和前輩們能繼續給我指導~謝謝~
50#
發表於 2008-12-28 00:44:20 | 只看該作者
關於spectre與hspice兩者之間的差異7 j6 R. i. y% S- j9 E/ k6 r
這個問題我以前也遇過,只不過,這是一個沒有正確答案的問題
5 @' R$ w( ?6 Z6 Y! O8 ?6 j8 J據我所知最早類比電路模擬軟體是hspice(我不確定以前是否還有其他版本),而這套hspice模擬軟體對類比電路模擬來說可以稱的上是聖經,其他研發出來可以作為類比電路模擬軟體都是拿hspice來比較,其他模擬軟體愈接近hspice所模擬出來的結果愈所能夠得類比工程師的可信度,只不過,hspice也有bug,也有它不足之處,而這些bug在某些想取代hspice軟體而言也許會有比較優勢之處2 }2 |( K2 b3 a" `8 X6 _' R5 L

3 ?, d8 N& Z: |, I5 v0 o故而,回到你的問題,hspice和spectre兩者跑出來的結果要相信誰,基本上是要相信hspice跑出來的結果,只是,不知道你會不會誤觸hspice的bug,而這個bug恰巧是spectre所能夠避掉的問題
: t# T8 a! d+ ]& T$ p以前我這兩套軟體都有跑過,95%以上都是相同的模擬結果,只有極少部份才會有不同的地方,而且只有在某些很特別的情況與應用電路才會有不同的結果出現,所以,建議你先相信hspice的結果,然後再推導看看是否合理,若不合理,則再回過頭來看看spectre的結果
4 {! v  P1 L# @* J9 s$ v0 b$ S% [* e! h+ l# U' G
至於startup time的問題& ^5 `' E' I* L& p$ I2 S$ V2 J* N" `
加快它的速度是我個人從PLL的應用電路中的經驗,然後應用在crystal oscillator,因為crystal oscillator要從0V一直起振盪到欲定的電壓準位需要一段很長的時間,如果可以應用initial circuit便可大幅縮短此一時間,因為我在PLL上曾下過不少苦心,也作過不少,所以很容易就把PLL的initial circuit應用到crystal oscillator,所以我才會說加入initial circuit可以改進startup time的問題
51#
 樓主| 發表於 2008-12-30 15:20:46 | 只看該作者
謝謝finster版主~
# o$ E/ p: C: w9 z9 r2 T# B0 |9 X% u% m" O4 g! H9 e
超級謝謝finster版主這一連串不耐其煩的指導,讓我對crystal有更深入的了解了~超級感謝~
52#
發表於 2009-12-30 14:58:23 | 只看該作者
此篇看下來真的學習到很多知識!  q1 Q6 D! t9 Y2 M
* f1 A5 }! j: Y7 ?( M2 P) J
往後遇到一樣問題可以從中學習!
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-5-7 07:25 PM , Processed in 0.117006 second(s), 17 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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