Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

[複製鏈接]
41#
發表於 2008-12-19 10:16:00 | 只看該作者
關於crystal oscillator耗電的問題,這個其實並沒有一定的標準& A8 J2 d) |+ f
因為crystal oscillator本身其實是蠻耗電的,除非你是設計32.768KHz的crystal oscillator這種才會設計成很省電,不然若是5MHz以上的crystal oscillator電路,它本身的耗電程度都在mA等級以上,這個原因是因為頻率愈快,它所需要的rise time/fall time要愈快,所以放大器或者反相器的耗電就要愈大
6 J% H. |- e! Y' k8 @' [  e# n
: L- Q2 g! `& j1 x; f  a若想加快start-up time7 o7 e* s4 ~" K; a
最簡單的方法則是加initial circuit,讓crystal oscillator在一開始便設定它可以振盪的電壓準位,提早讓crystal oscillator反應出相對的phase差的振盪6 ?0 }  |* r7 D  ~

: o' X2 I  C: K% X8 g  y至於第3個waveform情況,你可以把輸入信號秀出來,你就可以知道為什麼了,這是因為crystal oscillator尚未達到穩定的振盪波形,所以輸入的waveform振幅會有點忽高忽低的,以致於schmitter trigger的輸入會接收到變化的電壓,故而輸出也會不穩定,這是合理且正常的情況
42#
 樓主| 發表於 2008-12-19 16:33:30 | 只看該作者
finster版主~4 `  C: g! z/ E9 S: F3 J5 s0 I
# T: R& @! o+ s* R; F& ~* d
我看不到你的回覆呢?好奇怪~可以麻煩你在發一次給我好嗎?非常感激~
43#
 樓主| 發表於 2008-12-22 09:21:05 | 只看該作者
謝謝finster版主~
! P" `7 M& Q" q2 |8 O1 R; D+ j) ?/ o! M% I
應該是我電腦問題~可以看到你的回覆了~謝謝~
9 Z! ^6 f8 G9 ~3 ]+ t+ g8 \: ?8 O6 C( k( i; O& `4 t
我了解我問題的原因了,不過我對startup time總是不了解,
6 P$ k5 a/ a  b3 x. f* L! p  E* O: h# u; b+ L- v4 v
我是想有無辦法不另外加initial circuit來加快startup time嗎?
2 c  P  o% ?! o( E9 \6 F" F4 V1 a. k1 {- j" z, `# a# T
我是想說可以改變現有的元件參數來加快startup time嗎?2 S9 j& G$ ]/ E8 r3 Q# X  V5 F
4 r! d1 B* r9 {* K( Q2 e: o, X) ~
例如改變crystal model的負載電容等校的那兩顆電容(C1,C2)或R1
6 W3 `/ V7 w7 w9 g# K+ I4 ^+ G% d& v! H: d' k* p4 L
因為我一開始是針對13MHz來作這個crystal osc,
/ K- z( [( d% _; U, @$ ^" }2 N7 p7 D2 L. O% K+ Y3 W6 E/ d
所已在改變crystal model後(改成20MHz,25MHz),原本想要的結果就會改變,
5 H& G- M4 M2 h, }) [- |/ o/ v) h9 r& w0 V: O  z
是不是這個架構在13MHz時是最好的,但在改變crystal model後所有特性又會改變?: f# v: C$ @1 ^* c# K3 D8 a

' P4 w' I7 Z# f% \有辦法說可以設計出適用於4~25MHz的電路,但startup time, 耗電又都能符合我的要求嗎?) u+ j8 _! Z5 `/ V8 v& s
6 e. J1 Q8 o; p  ^) Q
(我目前13MHz這個crystal 架構若套上20MHz以上的model後,startup time,耗電都會明顯增加改變)
0 ^7 P/ _/ E9 [; E7 Z$ `
7 H0 u  D8 P: B4 J2 l不好意思~問了一大堆問題~再次麻煩finster版主了~謝謝~
44#
發表於 2008-12-22 17:30:15 | 只看該作者
有 disable 能力  的 gain
2 }% Y1 }. A7 f: f4 [! P3 o要高點* f* ^6 Z$ y& V$ Z5 W
6 m# P3 g2 h( ?" n
hspice  sim 會動
0 ~1 f+ e# Y1 r0 D. K, t: L0 e1 Y- d6 }
real chip  可能不一定會動  % V/ h, ~7 |0 I* |

: S* w- `4 ?" b2 ~  p而且 不是 所有的 fail  是部份 1 D- ~  n: E0 K5 Y  z- S, Y8 q
那就是 gain 太低
45#
發表於 2008-12-23 18:43:28 | 只看該作者
原帖由 camilla 於 2008-12-22 09:21 AM 發表 0 d3 R- i+ E2 G, @
謝謝finster版主~( {& ^3 A- I3 Z( U$ d# o
' f: a" E% T# t% F; `' l  G
應該是我電腦問題~可以看到你的回覆了~謝謝~
, r, A  o1 j# {! i/ h. b& n9 d4 x0 A8 T) m3 [( v7 c
我了解我問題的原因了,不過我對startup time總是不了解,: X8 I2 r2 Q) K

8 v$ p5 x* L0 ?/ O: T7 k) @5 O我是想有無辦法不另外加initial circuit來加快startup time嗎?/ t5 |2 E; s$ M0 ~4 F8 M
+ l8 h+ u+ x6 W
我是想說可以改變現 ...

- M$ i- p5 R1 i9 ^+ c
9 {! }) H' `% q$ ]- h# e$ j* C. ^6 e- |3 {) N

8 W& \% [* I! B% t$ _1 W& J+ x' l先回答startup time的問題. k: e" t% _; j
在不增加initial circuit的前提下想加快startup time並不是不可能,只不過要先理解crystal oscillator的理論,而這方面討論的paper只有早期的IEEE才有,比較偏理論,你可以研究一下% R" F# t' m0 Q* n( y3 |  F
至於你想改變外部r,c來加快startup time,這種方法的效果有限  C0 u0 O  R8 j4 L9 R4 `3 d/ M; C
因為只要改變了外部的R,C值就會間接影響crystal oscillator本身的穩定度等issue,有時也可能會造成不起振的情況,所以若要改變外部R,C值,個人是不太建議你朝這方面去作9 m( r# |+ a: ~4 N5 S, e. R* {

% S2 `  A0 o: g每一個範圍的crystal oscillator都有一定的design需求,目前很少有一個電路能夠涵蓋4~25MHz的range的crystal oscillator
. p4 ~) ~" V# ]目前大部份都是針對某些特定的crystal oscillator的頻率作設計( E! {7 @+ A9 c1 H4 R
而且愈高頻,其crystal oscillator的考量也愈多
46#
 樓主| 發表於 2008-12-24 13:14:13 | 只看該作者
謝謝FINSTER版主~
9 |9 T1 k/ I) ~, v$ v. q
" k! N$ b4 P# K& _7 M( n我知道了,謝謝你的耐心指導~讓小妹收穫良多~  U4 C# G3 o! k  `; ^; K8 }
9 @" I4 \) ~% Q* [- R+ j
我之所以想要做個可以涵蓋4MHz~25MHz電路,是因為我教授當初是要我做個crystal osc,freq是由4MHz~25MHz,6 a' n7 [* B& ]# d5 j3 @, o0 F

# J# `: f# B. l" S2 t( o+ N且有人作過,但我試了很久還是沒辦法,為了讓更高頻可以振,而加大driver,但卻使得頻率較低的startup time變大甚至不振," C, |7 p1 X9 ~* }4 A2 m  w6 n; E: i& p

2 F3 u5 C1 S  l' Y( [6 g/ ~試了很久,我會再問我教授他真正的用意,是不是我想錯他的想法了~( f6 x3 F/ L! N4 a- V
5 |' t1 S4 I/ d# l4 t, G: |
至少目前我對crystal是瞭解了~
/ L" E2 y; e5 {/ h) \# B- ^6 j2 a  G% I" ]6 t4 ^
超感謝finster版主的指導~謝謝~
47#
 樓主| 發表於 2008-12-25 10:02:28 | 只看該作者
不好意思~finster版主~6 V# _/ z% z9 i% {2 \( q: M- X

1 Z: J: e9 c  Q# I2 ^0 h能再請問一個問題嗎?
: f+ W6 p' Y( ?. Z# i7 V4 v9 O2 V& x" I( W6 E2 [! W
startup time的定義是指什麼呢?
8 a; b1 f# M' H2 C0 ]! g" t5 K! L+ j9 \& `4 G% U
有些paper是指vdd從0v開始上升到穩定後,輸出也開始起振的這段時間(但不是輸出振幅到達穩定了),就稱作startup time6 x3 g* ?9 U* f  N4 g. o1 `
- d' y* `) G+ g; N
有些是指輸出振幅到達穩定(某一個值)的這段時間,就稱作startup time3 C3 P$ O: m" ~2 W8 ^/ K) N

' B# D) G( C) ?4 }- y1 @又有些是指輸出duty cycle穩定後(都相同後)的這段時間,就稱作startup time% D, ]7 L% }9 F2 [6 L) M/ x

1 `4 `' P) y8 A8 i, G8 \7 H那到底startup time是指哪段時間呢?
: f! z4 P+ Z! B2 Z1 P0 r9 o: M$ B3 k4 A# R. f
請finster版主,或知道的前輩能指教一下~非常謝謝~
48#
發表於 2008-12-27 00:38:03 | 只看該作者
以目前我所知道的startup time的定義來說
/ L9 h" H3 t/ l% d- _它是指crystal oscillator從一開始沒有任何振盪到完成振盪且穩定的持續振盪時間稱之為startup time
. ^/ Z& f3 ], z" s! Y0 ^8 O
$ r9 u) y; D: h8 r" m; F因為我們在模擬crystal oscillator時都是以vdd從0V昇到一個穩定值作為crystal oscillator作為一個初始值,所以有些人就會把從vdd的0V到crystal oscillator起振且穩定持續振盪時間稱之為startup time,而這種說法其實並不是非常正確的定義* H5 a4 b) }6 @2 e% R
1 ^. F- E  ?5 l1 |" c) M
不過,目前在startup time並沒有一個很統一的定義,而我所知道的那個定義也是從IEEE Journal paper上定義所知道的,而那份文章是很早期的paper,內容寫了一堆理論和公式
) ~, ~5 N! g# |% O4 x6 C- n9 H) d* j5 e% u
最後,crystal oscillator要作到4MHz ~ 25MHz並不是不可能,只是較為複雜,以前我也作過,後來我也只是覺得沒有必要弄到那麼複雜且麻煩
49#
 樓主| 發表於 2008-12-27 19:19:48 | 只看該作者
謝謝finster版主~) K: a0 F. N0 P. L
' A# r8 L9 M6 |; t* n& ^2 ~2 v
我對startup time了解了~! h; e: h4 ^. j: [

* O) `& N* m7 S7 a& I( E我昨天試過用spectre跑了一次crystal osc...
- D: Z. ?% z( t. G+ Z2 ~0 Q' X( n8 Y2 S
不過竟然和hspice跑的結果不一樣,同一個netlist 13MHz跑出來的消耗電流和起振時間是不相同的,1 D, a7 {8 q6 P$ d0 y- T, b

" G, r$ C0 R" \' e消耗電流小很多,而電源電壓給0到vdd,但輸出竟從0v就開始振了,所以startup time也跟著減少很多...
' b6 z, u6 I0 ]- s9 n1 W' w
% z. {& C) \& |! r4 c一模一樣的netlist為什會跑出不一樣的結果呢?' D3 h4 ^" J$ N2 G2 y, G  ?

! D. C. Z* S# E6 |7 @另一個問題是,你所講的加快startup time可以加一個initial circuit,有範例可以參考嗎?因為我的startup time實在太慢了...
, p; R: T! Q% T3 u' x# j. [
& d2 }. n. I* t6 {7 q' a(一直被學長嫌)) _' q/ ^( ~. h$ B! q0 W/ b
0 b% V0 B9 v$ m8 p. I

: y. L5 C( C) @) k" \" X! Vp.s 很感謝finster版主不耐其煩的一直指導我,不過因為我實在有太多問題了,希望finster版主和前輩們能繼續給我指導~謝謝~
50#
發表於 2008-12-28 00:44:20 | 只看該作者
關於spectre與hspice兩者之間的差異
. q$ ~, [7 a3 P. S/ D, l3 X2 R這個問題我以前也遇過,只不過,這是一個沒有正確答案的問題
3 K0 K) m- Y3 g$ J. }/ {據我所知最早類比電路模擬軟體是hspice(我不確定以前是否還有其他版本),而這套hspice模擬軟體對類比電路模擬來說可以稱的上是聖經,其他研發出來可以作為類比電路模擬軟體都是拿hspice來比較,其他模擬軟體愈接近hspice所模擬出來的結果愈所能夠得類比工程師的可信度,只不過,hspice也有bug,也有它不足之處,而這些bug在某些想取代hspice軟體而言也許會有比較優勢之處
* U. T1 B3 ~/ d" g& O1 D
1 E& w$ T- l8 e- ]( C故而,回到你的問題,hspice和spectre兩者跑出來的結果要相信誰,基本上是要相信hspice跑出來的結果,只是,不知道你會不會誤觸hspice的bug,而這個bug恰巧是spectre所能夠避掉的問題: G* k$ m9 S0 {0 [& ~  F$ }
以前我這兩套軟體都有跑過,95%以上都是相同的模擬結果,只有極少部份才會有不同的地方,而且只有在某些很特別的情況與應用電路才會有不同的結果出現,所以,建議你先相信hspice的結果,然後再推導看看是否合理,若不合理,則再回過頭來看看spectre的結果
4 A/ H/ w- T3 _! Z
6 [# ?5 D2 u* B9 R, y至於startup time的問題' n3 @$ z! X% ~5 d
加快它的速度是我個人從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版主~& n: P8 z1 L" T
7 M& h% ^, R1 C" a' n+ W; V7 ^* R
超級謝謝finster版主這一連串不耐其煩的指導,讓我對crystal有更深入的了解了~超級感謝~
52#
發表於 2009-12-30 14:58:23 | 只看該作者
此篇看下來真的學習到很多知識!- e) v4 d/ v, J8 \+ V

8 i" h% Y9 {& ]% S& D往後遇到一樣問題可以從中學習!
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-6-9 03:38 AM , Processed in 0.141018 second(s), 18 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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