Chip123創新論壇's Archiver

camilla 發表於 2008-9-26 05:40 PM

crystal oscillator不起振~

各位前輩~_f+zZ$d V5}6x:r Y
h(r d"oGM-V
我現在正在研究crystal osc.我有在論壇裡看到這方面的討論...
.j&y_F:e'M5M9j [url]http://www.chip123.com.tw/phpBB/viewthread.php?action=printable&tid=8412&sid=g0bJll[/url]
(R tu)P F+lvq"^ 7oHud Q(?1G
其中finster版主建議說加入這個模擬條件  VDD VDD 0 PWL(0 0, 500US 3.3V)2B:A gP L ^S
%?-rN(^0Q [?
但很奇怪的是,我加入這個條件後竟然不能振了,但若是VDD VDD 0 3.3V卻可以振,
] _kE8T-^b dC wM9_/h2nEN+m
是什原因呢?W0Mx9lw!d
\"ID8bPJ3[ A
另外finster版主題到的low current crystal oscillator...請問有bias voltage control相關的資料可以參考嗎?
4N ZI9H&] (因我加完i/o pad後的電流竟然幾mA阿~)$z^)Omw:S8a HV'E(G ?P
3B~'W"P5g)A(v
請各位前輩知道的話能給一些意見嗎?謝謝
j]F_ b s(l)o(A V9Y
對了...我crystal osc frequency = 13MHz , vdd=3.3v

finster 發表於 2008-9-30 01:17 AM

我當初在作crystal oscillator模擬時,會加這個power ramp的方式!x? iI a/L
   VDD VDD 0 PWL(0 0, 500US 3.3V)6_HZ!p+oFa/q'C}4y
這是模擬電源電壓是從0V開始往上昇,在一定的時間內會達到穩定值,而會在多少的時間內達到穩定值就看PCB版子上的電源電壓多快能夠達到穩定,而這是比較接近真實情況的模擬,因為所有的電路皆不是一開始就是vdd
o,c*E7lM$|cVh.u j2W 如果,你所設計的電路無法接受power ramp的電源電壓方式,那表示你的電路在power ramp過程中有遇到無法收斂的點,以致於電路會無法起振,解決之道有幾種方式可以試試看,一是加initial電壓,二是在電路中加負載電容試試看,至於要加多少,這點要看你的電路來決定,三是試著改變ring oscillator的size大小
Gs@jZ g2zrm&aq0L [
你的crystal oscillator電路有需要作到low power嗎(total current <= 10uA以下)?? e(TiC*uAtQ
如果沒有,那就不需要bias voltage control
[pN;n^2E*r _B
$F#c{q*^+?aR 3.3V @ 13MHz的crystal oscillator,我已經很久沒作這方面的電路了,對於它的current會有多少已經不太有概念了,如果你想知道為何它的電流會這麼大,建議你看一下crystal oscillator兩端的電壓波形,再來觀看接在crystal oscillator的那個buffer(inverter)以及接進去的第一個反相器的電流,如此一來,你應該就可以看出為何電流會那麼大,同時也應該可以想到要怎麼修改size

camilla 發表於 2008-10-1 11:31 AM

謝謝finster版主~_k6w2H1O

C&k!O3|+E C/h[IN`*g 我加了初始電壓進去後就可以了~:D +}T"J5V,b5k#f J_W
8YgH!U gQ'o
我有看了一下你建議的那幾個電流...在inv的電流大概是2.多mA,7AcZZA n

k3iD%Q~ |9i 我也針對這個方向下去修正~也有變小了~
t%f"@t!B;Z
)]K9e bxW-MK 另外我還有一些疑問,就是crystal oscillator除了消耗功率外尚需考慮什麼條件呢? i]w EO+i G}K
i$`$|$` nX5D_
我教授給的spec只有vdd=3.3v i<1mA Freq=13MHz 那我還要再另外考慮什麼嗎?(Y1Ao1P)rh7N6j
F|%^(}?6v-fX6K)`
(不可能那麼簡單吧?)
u4i.Y5]1sjL9^9sn2F @U/MX0E1ZX
麻煩各位前輩了~謝謝

finster 發表於 2008-10-2 07:46 AM

一般crystal oscillator的電路設計,最重要的是當電源電壓一開起來之後就要能夠起振,經過多久之後振盪頻率要能夠穩定,整個振盪電路的電流消耗有多少,振盪頻率的jitter或者頻率穩定度為何(這項通常是針對R-C oscillator,對於crystal oscillator則較少有人在留意),整個area有多大1Y6WR$UMv#A
這幾點是crystal oscillator circuit在設計初期會留意的幾項
n:O#j(Bw$]u 其中第一項和第二項是首要的,其他的就都還好,反正,只要有起振,大概就完成了80%:DIA+O'\1KTT

!Pe(Dk:Jao 另外一提的是,有些crystal oscillator會作low power crystal oscillator,整個振盪電路的電流消耗要小於10uA或者小於1uA以下的規格,這種電路很難作,而且也要很小心,而這種電路和前面所提的設計難度大概差了至少三倍以上吧

camilla 發表於 2008-10-2 09:14 AM

謝謝finster版主~讓我獲益良多:D

camilla 發表於 2008-10-3 05:49 PM

不好意思~finster版主~
5WrJ&b/qO2k#s&VZ R {T I d/J3OPi
因為我現在想在不使用這個crystal時能把他disable(因inverter會有dc path),所以把inverter改成一個tri-state inverting buffer,但在disable時不是輸出應該要為零嗎?%R&i$Q]'_9a(N8y#zO
但為什麼卻慢慢衰減到1.5v左右?這是正常的嗎?
0Kd tM;_vE1d T_"vm;e2EW
再次麻煩各位了~謝謝

camilla 發表於 2008-10-3 05:51 PM

對不起~忘記附圖了~
&t G:j/nK |:?7Fy t9vG*^p)VX`G
不好意思~finster版主~bB%u@O\

B$r L eE n vc1b 因為我現在想在不使用這個crystal時能把他disable(因inverter會有dc path),
'A R/aa7Y"Q(uy? 所以把inverter改成一個tri-state inverting buffer,
@ _/PsP 但在disable時不是輸出應該要為零嗎?
I%vc6N0q*T&| j 但為什麼卻慢慢衰減到1.5v左右?這是正常的嗎? }M0BR8Iw*Y9]l6i3X

S]-\eG(q'W[ 再次麻煩各位前輩了~謝謝

poseidonpid 發表於 2008-10-3 07:11 PM

tri-state inverting buffer,在disable時輸出應該是Floating(High Z,高阻抗)
%pf6@1y5rE 所以你應該用power down switch來做喔~~~

camilla 發表於 2008-10-5 12:32 PM

poseidonpid你好~
kaZH y2J%["s ;Rx1bB}]y
請問有範例可參考嗎?因為我不清楚你講的意思~那TRI-STATE BUFFER在DISABLE時是Floating(High Z),那輸出應該是什呢?mU-T Z'Z

/p l[ uW2}%y T9i7X 麻煩各位前輩再次指教了~謝謝~

finster 發表於 2008-10-5 11:40 PM

一般來說,我們不會用inverter作為crystal oscillator的放大器F2ep!aS$?3Zd2J
而是用NAND作為取代inverteraoz+U%T6nO.@,S
原因乃是NAND的另外一腳可以作為enable pin的control x)D%IJ3M
M L ^$CB2E5B
再來,crystal oscillator不建議你用tri-state inverter bufferTcS3yx eS jL1m
原因是在disable情況下,output為folating,或者有人稱之為Hi-Z,此時為任何電壓準位
r7s&^,~Se 這對接在後面的電路而言,反而會造成極大的leaking current
'K@`/ps'hQ.h)W/M.h 而這,是絕對要避免的情況,V \R9K.j_6Q!r/qi

J!G s7s Sfl4q"Ct 最後,你所提到的dc path
|NE h3H Q(C 我不知道你在inverter的電路下所作的disable是怎樣子的一個電路
Op$v {D3G"HqN 一般,要作disable的動作,我們不會用inverter來作,而是利用NAND或者NOR來實現
+q#Xq-y l#m4y1z 若真要用inverter來作disable,那會在input端前面加一個transmission gate和一個對vdd的PMOS或者對ground的NMOS,如此便可達到你要的功能,只是,與其要這麼複雜,還不如直接採用NAND即可達到要求,既簡單又方便

camilla 發表於 2008-10-6 02:10 PM

謝謝finster版主~
e(E5j6aoX4Ax T dR@? _mr.C|
我了解了~我目前是兩個方法都試看看(加"nand" or "transmission gate & power down")...謝謝版主的指點~

camilla 發表於 2008-10-7 04:07 PM

各位前輩~
DE5d7Q{B:OO!m
,S Km"wsY | O ](N 我之前模擬crystal osc後,教授看了說我的作法是沒錯但想法錯了~eGM O g`9dhY.^&P

S2`X%^ jI Jp$z 因為我這個crystal osc是要藏在學長的ic裡...要用他其中一個i/o pad來實驗...
WP%l7]&KO+J.MP
XY![p5PZn 所以在不使用這個crystal時,能完全不影響到這個i/o pad所連接的cell(學長的i/o pad有另外用途~)
4M3vV \1IN6`
S.u4F3@ V$n.]mN*r 但我還是不太懂我教授的意思...且我的schmitt在disable時輸出是要為0...
*B0t_F4r7Mf7Z
*MB(V7oP:lH+@ 我實在不清楚我教授的意思...在原本的設計裡不是disable時就是把這個crystal都關掉了嗎? X#SyB3MN9ue x-x

r@-]u%J4{g Y 為什一定要使用一個tri-state buffer來代替inverter呢?一定輸出要為floating呢?
"BsOwn ^*I4a
]\u.My5B2_0R M%i 請各位前輩指點一下~非常謝謝~

camilla 發表於 2008-10-7 11:19 PM

各位前輩~M|&lJ_P@"P

Or[ t/J$~E&@;K$| 我剛剛想到,因為我是接到i/o pad,所以不希望在disable時,crystal會造成電路消耗而影響到真正接到此i/o pad的電路功能...6k:] ?oG}3a

K5t!B^:S:JKs 所以我教授才希望crystal disable時是floating...但又如finster版主所講,在high-z會有leakage current的影響...1A.oJ3oQ1z{H

A?iDq 那有什方法可以避免這個問題呢?或有什方法可以能有同樣功能(disable 是floating)但卻沒有此問題呢?]E+CO&{V3N(Y
#XVQ2jJ*M'p%c1R#d
麻煩各位前輩了~幫幫忙(因為我月底要搭學長的順風車,藏在裡面下線,所以拜託各位前輩了)謝謝~

finster 發表於 2008-10-8 12:03 AM

方法有很多種
_S OMSo 附圖是示意圖,實際控制信號自己加上去吧)GX9D;U Y

li{~?{? 我前面提到floating 會造成後面一級會有leakage current的問題,一般都是利用傳輸閘來解決此一問題
"j9Cn8m@^ 方式就如附圖所示

camilla 發表於 2008-10-8 12:10 PM

不好意思~謝謝finster版主的耐心指教~
@3\!{}A-e
1\*q&D$_+u8s1NW 我現在改成如finster的建議~不過我對在disable時的輸出不太確定是否正確~
x2p L8x? t
/cbEo/s.N ~^#s 如附件~是因為floation的關係所以他會慢慢衰減到一個偏壓嗎?而不會是0或vdd....?
D zjQhMq)t
bF)M_;B/nf$~ 再次麻煩各位前輩了~非常謝謝~

finster 發表於 2008-10-8 04:27 PM

不確定你是指那一個節點的電壓D r2B,yY+YAA
若依照我上面所繪的草圖,在一段時間後應該會降到0V&K ^lf;qL%JH4A8Q;f
;Iu]s6Jz
不過,你的模擬圖卻沒有)P K5D)x2I s3f
我猜,可能是因為在模擬crystal oscillator時,在crystal oscillator兩端要掛一個串接電阻!KV#IH*io'C,L8p
故而在進入到disable時,原本要降到0V的電壓會因為這個電阻的緣故而變成到0V ~ VDD之間的電位,此時,在crystal oscillator兩端既不是Hi-Z,也不是在0V或者VDD
3B~G;] U\ 你的模擬圖應該是正確的情況
J3|2cN]'^ 若想要證實,將串接在crystal oscillator兩端的電阻在串接一個傳輸閘,在進入disable情況時,將這條path打開,如此一來,在I/O PAD應該會看到0v的電位

camilla 發表於 2008-10-8 05:46 PM

不好意思~一直麻煩finster版主~_3^;b1M"K pe TQ

U8uC;Zy];L I 我的電路是如圖,我的輸出是指在INV改成你建議的電路多加一個TG後的輸出那點~
7FU;c!S0h~8K 9q8]@LP/T/c
你講的是回授電阻嗎?但我已經把他用一個tg來代替了,所以disable時這個path是打開的~
t%v_INC"_Cw'F Zk1^#o QX!@/M
還是你講的"串接電阻"不是只回授這個電阻?^0j"XEgu
,W!\ q4u9MI
假如我輸出不是0 OR VDD會有影響嗎?V NC f&t;~'N

Jtq"j+m:v_#U@h$S(ok0a 這個偏壓有可能是我的回授電阻(tg)所造成的的嗎?(在en和enb要通不通的情況下一直有一個偏壓存在?)
_u,BMj6UtZi HE6B$}0^u
不好意思再麻煩各位前輩了~非常謝謝~

camilla 發表於 2008-10-8 05:48 PM

我又忘記附上電路了~對不起:L
S |)V"B{K
@#hN3n } 不好意思~一直麻煩finster版主~ O@f}L&X

%dg3tQ!Y'n u+d 我的電路是如圖,我的輸出是指在INV改成你建議的電路多加一個TG後的輸出那點~
])v&JQSnR@+O
2Pr;iY:m+_ @4xQ 你講的是回授電阻嗎?但我已經把他用一個tg來代替了,所以disable時這個path是打開的~
a b#y4w g3dc4q
Wklf g*fM 還是你講的"串接電阻"不是只回授這個電阻?3NW"@nOP x w
u_3a0M ^A.` u6RUw`r
假如我輸出不是0 OR VDD會有影響嗎?)im9A2i;e!`"zJ/Ai
([F j!]ibBo
這個偏壓有可能是我的回授電阻(tg)所造成的的嗎?(在en和enb要通不通的情況下一直有一個偏壓存在?)
X&L4Es Ap:`F]8}e
?s.s X|X[3| 不好意思再麻煩各位前輩了~非常謝謝~

finster 發表於 2008-10-10 08:19 AM

這是我依照你的電路圖所畫的動作圖
kU,P#[}vWux 在disable的情況下C1的電容上會有電壓,因為在disable下,電容沒有path可作放電,所以原本在C1上的波形該為振盪的正弦波應該會變成一個介於vdd到ground的一個電壓存在,波形該為你前面所貼的Vout才對
Y6j4g!w[Y0z 至於C2,因為反相器的輸入級被接到ground,故而在反相器的輸出應該為vdd,而非介於vdd和ground的任一個電壓,所以,若你的輸出電壓介於vdd到ground的一個電壓,這點倒是很奇怪,除非你的反相器的拉力不足以讓C2的電壓在disable的情況下被充電到vdd'qT)Q4x,X.I7X7@k
若以你目前貼的電路圖來看,在disable下是不會有問題,但,要留意是其他電路接到C1的節點,因為C1在disable下是floating,所以任何電壓皆有可能,那對接到這點的電路而言就有可能會造成leakage current的產生,除非,你在disable的情況下,C1那一節點會有另外的輸入電壓來控制,那就不會產生問題y.m,Z a{8cA*G g
`br'~g5h
至於C2,通常是接到buffer的輸入電壓點,在disable情況下,一般都會建議要為vdd或者ground,不會在disable下所接到的那個buffer會有leakage current的產生,而這是要避免的情況
'O(f)U.C9MY3hye4r !R:@#OB1z9d(\
如果你學長的電路在disable情況下要用到C1和C2兩個I/O PAD,那你C2的電壓在disable情況下就不能被拉到vdd,不然會有問題,這點你需跟你老闆確認一下,若有需用到C2那個I/O PAD,那在反相器的輸出級就必需接一個傳輸閘來隔開在disable情況下C2的連接XF4J1\H S"be

E6g{wWHbY Co 最後,你上面所貼的圖為Vout的波形??9zSP/E0|Rn,L
這點讓我覺得很奇怪,若照電路圖的行為來看,Vout在disable下該為VDD,而非介於vdd到ground的作一點電壓,你需再次確認一下傳輸閘的電壓有無錯誤,不然這樣子的波形是無法和你的電路圖作相呼應與解釋,而通常在這種問題下,要不就是遺漏掉什麼,不然就還有其他元件影響到C2的電壓,以致於C2沒有被拉到vdd,
9@tI+b$?/| (U0z)j1L YA#bp(S~
[[i] 本帖最後由 finster 於 2008-10-10 08:47 AM 編輯 [/i]]

camilla 發表於 2008-10-11 05:15 PM

謝謝finster版主的詳細解釋~
8u {W:Y,^E ?+Af;~ RS
我學長電路在disable時是需要用到c1和c2兩個i/o pad的...而我現在最主要問題是...
DpsUgM w7TjH8f;yR
在反相器輸出沒加傳輸閘時,我的輸出在disable時是可以拉到vdd的..."|*Sk9X%dh9G`)E.L:N

xp2hN8E3j 但在反相器的輸出我有加一個傳輸閘來隔開在disable情況下對c2得連接,但此時的輸出應該是要如何呢?
1Epxj/IL
&[&ITV2N!r 不是應該維持在vdd嗎?但卻是如圖所示的結果!!$mVLc3Qz

PB:Jc9n4C 是在加入這個用來隔開c2連接的這個傳輸閘後才會有如此的結果發生,是我的傳輸閘的設計有問題嗎?
}O!T2S?+R;O V] P#vF2h%W
一般像用來當成disable的傳輸閘有和限制呢或設計條件呢?因為我是懷疑是加了反相器輸出後的傳輸閘的關係... a HfLy4yUqU

Q,D1FP4U 但又不知道這個傳輸閘除了作disable用的開關外有什限制?)cYq;z\m*Thy

i2OQ z%O(Pr 請各位前輩和finster版主在幫幫忙~非常感謝~

finster 發表於 2008-10-11 11:22 PM

從你貼的模擬圖來看,確實還蠻奇怪的,因為這個現象照你所描述的電路來說有些不合理
rY[&Z%vUOQ 若你已在反相器與C2之間有接一個傳輸閘了,在disable下,反相器的輸出應會被拉到vdd7P1x B V:z`0oE
而你的情況卻在vdd ~ gnd的任一電位!H#I&ac6{8w#xs&f

w3l(} k!N*f:s.e 你能否確認一下反相器輸出端傳輸閘兩端的電壓各為多少?傳輸閘的PMOS/NMOS在disable下時有沒有電流流過?電流值各為多少?W&] IE Zl9^&`
另外,量測一下反相器上方那個電阻在disable下時的電流為多少? P7cxBh? c"? Py
OA"S*b J?1v"{
上述第一種狀況是針對反相器後的傳輸閘作測試,看看有無正常動作
$LGdi\*U.p 至於看反相器上方電阻的電流則在看為何反相器的PMOS在disable下的動作
G6X*B'qN&W}&g nTM7ix0WP6se,t h
最後,若你學長都需要用到C1和C2兩個I/O PAD,那你的反相器的輸入和輸出端一定要加傳輸閘來隔開,不然,屆時就會有問題

camilla 發表於 2008-10-12 08:47 PM

再次感謝finster版主~
]t!? ~:Yd0x
0l3~HCMi#[VTH 我想確定我和版主所講的輸出是同一點嗎?
6v2cQuu*d
x2v~? T8T{?-yq 我的反相器輸出是會為vdd...但我現在是不清楚在圖上所標的vout在disable應該是要什麼情況呢?K-XP%on.l
R8q%~)}5X_q)qi t
是介於0~vdd嗎?還是vdd呢?)W_Z)C%z9r
v1o(WZX)^
因為我是想說在floating時不是輸出在任何一點準位都可以嗎?
Ex(ZA_#H W+|'Myf
因為我想說我上次貼的電路圖是不是誤導了finster版主了...怕說我們兩個指的輸出是在不同一點的?N_1~5VY!B vH

GD]'p*DK U&x6} Mha 再次~再次麻煩各位前輩和finster版主了~

finster 發表於 2008-10-13 11:31 PM

從你目前所貼的圖和你之前所模擬的結果來看是一致的uK8l-M v#{H
就如你所言,先前我所說的節點和你認知的不同,所以有所造成誤解
s Q p*Q&v.Rk 依照你所標示的Vout,它確實會是floating,電壓應會介於VDD ~ 0V之間,更精確來說,它會略近似乎於C1上的電壓

camilla 發表於 2008-10-14 08:43 AM

謝謝finster版主~
N@*s"`,? |$z Sw'H
那我可以放心了趕在月底下線了~謝謝finster版主的耐心指教~讓我受益良多~謝謝

camilla 發表於 2008-10-17 01:42 PM

hi~finster版主我又有新問題了~不好意思T C N?"WR#C6v:k)}q

go1Wd5k6L 我layout都沒問題了等著月底下線~
]n aFfk
V@l2V n 因為在幾篇paper有看到利用相同電路,但crystal model不一樣(原本是13MHz,現在想說看能不能使用在更高速的10M~30MHz)
EH7iT7S f a'C4Q0@#wH)Lt!a3[8`
但改變crystal model後只能在20MHz下正常工作,更高速20MHz卻振福很小(有振,如附圖)ch/DDymH7t
!Y N\6V*a
我也有想過是driver不夠,所以也有加大但還是一樣,應該不可能是反相器不能工作在那麼高頻率下吧?!
{A3Y$d#Cg$s}aY
'Q)?,c#Jd&RQ7\ 這試什原因呢?在我不改變其他元件情況下(頂多改變反相器size)有什辦法能解決嗎?,\6{Q C(o"_'\
_ J;rT.U)b
p.s 圖1是模擬出來的結果,圖2是局部放大的結果~這個應該是有振吧?只試振福小到可憐~
[z!\'L2JcD:} sbw?|.q4B ]FHX'|
請finster版主在抽空幫我看看~非常感謝~

finster 發表於 2008-10-18 02:49 PM

以crystal oscillator電路來說,廠商會提供一個外部參考的電容值和回授電阻值作為參考ru,r Ey
故而在不同頻段的crystal會有不同的C1,C2和Rf建議參考值jDGZI+X
20MHz的crystal oscillator的C1,C2,和Rf並不一定和>=20MHz以上的crystal oscillator的C1,C2,和Rf值相同6J sKQ\w$S D

9to/]3_Y 再來,一般來說,大於15MHz ~ 20MHz以上的crystal oscillator,因為主頻較高,相對的第三倍頻也會隨著頻率增高而特別顯著 V ^%D+LWJMS
所以,有些廠高會在C2到crystal osciilator的output端再額外加一個小電阻,而這個則是用來阻絕(抑制)第三倍頻的功用,這個在一般的crystal oscillator的規格書上都有寫Z*E[+`f{.`$}D
~x#gcF8F,N
最後,如我前面所寫,不同頻段的crystal oscillator需要搭配不同的C1,C2,和Rf,而且,它的消耗電流也不同S7Q cic4E$U!f2o
一般來說,愈高頻的crystal oscillator的起振時間愈短,同時jitter也愈大,而且高次諧波也愈明顯
#[0z*oY`:Qos8eq 所以,請先查一下crystal oscillator的規格書上所寫的建議值,因為你的C1,C2,和Rf值也會影響振盪出來的振幅和頻率2Y5X4S MNr*N
'F Z3C/P4{
[[i] 本帖最後由 finster 於 2008-10-18 02:51 PM 編輯 [/i]]

camilla 發表於 2008-11-11 01:07 PM

各位前輩~T&bY#k$u_k|z)D]
S$f8z6u*}D
之前因課程關係做了一個crystal osc(期間感謝finster版主的指導~),且也跟著藏在學長的ic下線了~
.ANLUOD
4Kwvd Z'yj @z 不過最近在書裡有提到overshoot可能會造成emi的影響~*oh-Th1YU+^.M E

p{*HF(YA0k 我再把我之前做的crystal打開來看,發現我的輸出也有overshoot~
+h!z Q2q$b!Vo E5DePofX wF(p
如圖~這應該是overshoot吧!?
6L{)[QJ5wXn @$E&u![\udc0M^
那這個有影響嗎?有什辦法可以改善?^Q}~tO/NIA
#@yGD%]R{
請各位前輩能給我一些意見~謝謝~

pmet2007 發表於 2008-11-12 02:42 PM

正好在煩惱這方面的模擬
X5oC!C{3C Ox 有了這份參考資料依定可以成功,感謝

finster 發表於 2008-11-13 11:31 PM

[quote]原帖由 [i]camilla[/i] 於 2008-11-11 01:07 PM 發表 [url=http://www.chip123.com/phpBB/redirect.php?goto=findpost&pid=80568&ptid=15799][img]http://www.chip123.com/phpBB/images/common/back.gif[/img][/url]?"B'C9S-k|XB
各位前輩~q)`Ds$Pg Ko

N yCr@pO 之前因課程關係做了一個crystal osc(期間感謝finster版主的指導~),且也跟著藏在學長的ic下線了~
Jl4Vy.@6p\
F)Z/zFB$C2m-Nu"k 不過最近在書裡有提到overshoot可能會造成emi的影響~4T2g2}6_ZJ gjGl

\W2B;Sm 我再把我之前做的crystal打開來看,發現我的輸 ... [/quote]
5~`a+d8[;i6yZi .sZ%U+^;W/[P

,M0V7}KJgwDCP 你這種情況還好,並不嚴重
UK'A k9k"Q#R"`;W$ODd 要想克服這種現象,若在OP,最簡單的作法是改補償電容
`[1Q$O_b%`5_r 若是反相器,減少driving能力或者在輸出端加點小電容(負載or Buffer)即可

camilla 發表於 2008-11-17 04:45 PM

謝謝finster版主~FqLb qaEi

9[-b$us9n 你說可以在輸出端加小電容(負載or Buffer),是為什呢?
o YdDm
(t[ L(A0`X0RA)f x'W.y 因為我在輸出端有多一組schmitt trigger,這個是我學長要我加上去的,只不過在disable時要為zero,但為什要如此呢? JGN rUX

)kX4A#_ _y*h,IU`$I7|2?o 我為了要使disable輸出為zero,所以在schmitt trigger後又多加一pull down,這樣應該不會有問題吧?

finster 發表於 2008-11-18 09:58 AM

減少driving能力或者增加buffer其實都是同一個原理的解決方法
x"GI$j;Y\4k&a/E 因為你的輸出的driving能力太大了,導致在輸出為"1"時會有over-shoot的現象出現|T0T)W7LU `C
故而,把driving能力減弱,可以減緩over-shoot的問題)B'Xb;v8m?F X
另外一種是增加輸出級的loading,而這種方法就是加小電容或者buffer,如此一來輸出級的fan-out就增加了,相當於是一個loading,不過,我都是用加小電容比較OKe8SsP$vSt0_
{Rw*j;`i
至於你問到的第二個問題
w0Fj k8r+D,i$Y 這個要看你系統上的需求而定,在disable下要為"0"或者"1"都是看系統的設定來訂定的m%Sn(OOF
不過,你用pull-down,原則上沒有問題,但若是在實際產品就不建議,因為你是在輸出級加這一個pull-down,在disable下若輸入為floating或者"0"的狀態下會有一個leaking current path,這是要避免的情況
5E7s xQ,`^S1q 再來,pull-down的電阻值不能太小,不然會有一個strong的向下拉,如果你的輸出級不夠powerful,很有可能會讓輸出級保持在"0"的狀態

camilla 發表於 2008-11-20 11:12 AM

再次謝謝finster版主~!X0X8f-N.j3C\9b1ca8ga;ZF

I2@km1i 最近比較忙,所以現在才上來看你的回覆~
B9Tw7] ul&AY ^
8{[5o1PXuI 前天被學長問了幾個問題:(他也不知道,我也不太確定回得亂七八糟的)
T:rO7nao
|e6Bbl-q)b/C 1. 你crystal model上網抓,那你的設計是針對網路抓的model來設計的,那如果套上實驗室現有的crystal的話,能動嗎?U?`2||#BN5O
wkzH3^x
2. 輸出級只是要它產生成0/1的數位輸出,所以我指要用反相器應該也可以吧?但這樣不是在crystal model floating時出電壓是任意
$R6L nAu%}zIV['L    值嗎?不是有可能會造成輸出級反相器在disable時是導通的,造成vdd_off變大嗎?有什可以降低這個問題呢?O:n{w.G C4K"|

s}R3Yz%NY 3. 我在原本輸出級是史密特時,套上25MHz以上的crystal model時,電路是不振的,我想說是driver能力不夠大,所以又在schmitt多加 \iRo/C-g
   一反相器來推他,是可以振了但電路消耗電流卻變得很大,是我想的不對嗎?是其他原因嗎?6fVr$h5zm)ka[

&q7?2U U:k"fGx 再次麻煩finster版主了~謝謝~

finster 發表於 2008-11-21 02:33 PM

1. 不一定,因為不同廠家所生產的crystal,其crystal model都會不太一樣,所以換不同廠家的crystal oscillator也許會起振,也許不會
V5Z2}F(B3xp7?     不過,通常都會起振,因為不同廠家的crystal model不會差太遠B*e Y&Lr#ULpW
2. 不太了解你這個問題要問什麼AGy.OQe ?
    基本上,crystal oscillator 的放大器用反相器或者NAND都可以,用NAND只是要有控制腳的function,而在disable時,輸出要為"0"或者"1"或者floating都可以,但要看輸出級後面接的電路能不能接受"0"或者"1"或者floating
;W&C c3_"rV
QV U]k]+z)n 3.這個你可以看一下振盪的waveform,我在猜可能是你的振盪振幅太小了,以致於在schmitter trigger後面無法trigger後面的電路,而加了一個buffer後,把振盪振幅放大了,但,這個buffer會因為schmitter trigger的輸出振幅太小而會讓這個buffer有著極大的電流消耗

camilla 發表於 2008-12-1 01:31 AM

不好意思~finster版主~xR/k6@&JF H-e3b0Y
'VK'?._i'n_I:T2fB
我的文章沉到太下面了,我以為沒人回所以就試著自己找解決方法~今天才看到~很感謝你的回答~:D .z2S7?.f9og#ys
;h,?5[9T/zk0j
我的震盪波形在接上schmitt後變小了,是什原因呢?W;Ia:NdPu5d^
m d0E!c!`&I[/J)Sj
我目前有試著利用一個nand+inv來取代schmitt(因為我在schmitt的輸出在disable時希望是0v)ZXw^9~Vx7U

(PU.B5BQ#s 是沒問題的(在disable時的電流有2mA左右)...但我又怕說會有glitch的問題,所以才想說利用schmitt來產生一個high,low的輸出...
"z pDZA2iW
1rB4{,X o7dE_ 若使用schmitt又會只在25MHz以上的頻率才會有這個問題,所以我不知道要如何解決這個問題...:'(
+P+RW-HF` M
NN9_S}zg 但在振盪輸出和schmitt之間加了反相器卻增加了電流的消耗,有什可以解決得嗎?是我設計的schmitt有問題嗎?(但怎會在25MHz以上才有這個問題存在)
%u(TSJ7S;^F XcB (pR&IKs,kK'`Q u
可以麻煩finster版主在給我一些建議嗎?非常感激~:D

finster 發表於 2008-12-1 11:08 PM

你的振盪器的原本振盪波形的振幅有多大呢?接上schmitter trigger後振盪波形變小多少呢?
]3kMtZ2Vr,b 另外,你schmitter trigger的vih and vil又各為多少呢?
ac,Q9f0UWyG.KS
DY#H/q[X 因為我不知道你這些條件,所以無法回答你的問題@:h:GNh+He,AQ
5bM@.O`3s"s
至於你問到要降低消耗電流,這個問題需從你的振盪器著手,因為你的振盪波形並不是0 ~ vdd,所以接在振盪器輸出級不管是反相器或者schmitter trigger都會很耗電流,解決之道惟有改進振盪器的輸出波形+hm#dc%\/aL Z
H+we7wy-[;^$x o
[[i] 本帖最後由 finster 於 2008-12-1 11:33 PM 編輯 [/i]]

camilla 發表於 2008-12-2 01:28 AM

真是太感謝finster版主無私的教導了~:D `b d]} n

/z'G*q3S"F D)}.@ 我原本振盪波形振幅是0.3v~3.2v...y|gD(I@
'z Kbg D Z.S@
但接上schmitt後竟只剩下1.45v~1.58v而已...
q(T o&N RW/rv
4GP?$}?J 而我的schmitt vl=1.4v,vh=1.6v...(我也有試著把schmitt的觸發電壓改為1.4v~1.5v,但還一樣,很奇怪??)
j{[M_0S,bs :r#qoUC%wY)rCK@
但為什我同樣電路但crystal model由25MHz改為20MHz卻沒問題,只有在25MHz以上才會有問題呢?&FY ~3{)K

%p5H5wi@L (其它頻率範圍下振盪波形依舊會在接上schmitt時而變小,但就只有在25MHz以上才不會振~)
I&sx R:M&S&s-SBY
/O2Y0HJPPRz 這個問題困擾我好久了,我有想說就直接把schmitt改成一個nand+inv一樣可以達到我要的在disable時輸出為0...
0?.f,Q#E(G}Ws6R
x5i^+iS 但我不清楚說schmitt的優點在哪裡,除了能抑制noise,減少消耗電流外...
p;I8ose%RCz )T.]Cw\o:c&{&|^
若用nand+inv除了可能會有glitch外有會有什不好的缺點呢?(和schmitt相比) Fd P{W'@*}#?#w
{.}h2|.w6R8hqg
我想說若可以的話就使用nand+inv一樣也可以達到我的需求,消耗電流大概在1mA左右~
drhI"F6_
!b!s3z1[ H]~$i 再次~再次~在麻煩FINSTER版主了~非常感激~謝謝~:'(
E7JQ7N:^ j2UA+S1y;eT1l
p.s 圖為我使用的schmitt~

camilla 發表於 2008-12-4 09:00 AM

:'( ~又被沉到下面了~請各位前輩幫我看看吧~謝謝~

finster 發表於 2008-12-4 01:26 PM

從你的描述來看,應該是振盪器的driving能力太弱,以致於在加上一個schmitter trigger後才把輸出波形給變小T)~[w5L@
關於這個現象,你可以從你的模擬中重現這個現象
&q~/p^$\] 你在模擬時,先不加schmitter trigger,然後在振盪器的輸出端加一個小小的電容到地,我想,你應該就會看到你的振盪器的輸出波形會整個變小y v,to1Mxq]
而這點,主因乃在於你的振盪器輸出的推力太小,以致於一點點電容loading就會把輸出波形的振幅給變小
0B*`'H'd\T 而要改進這個問題,只能把振盪器的driving能力加大
R%@ zd2F\$Q 2Z BjF5B![_Z p
至於你問到為何只有在25MHz以上才有問題`Fv| W$BO+a+NW
這點,其實也跟你的振盪器的driving能力有關
gHp?9Cx^b&\ 因為在crystal oscillator中,振盪頻率愈高,所需的電流與driving能力也要愈大 | J@5FM z$\ K*au@
而你設計用來振盪20MHz的振盪器來推25MHz以上的crystal oscillator,當然振幅會明顯被壓小,甚至有可能不起振
0X&Z$n8|+e
t(PR1T*aR c0A 至於schmitter trigger的優缺點
k \*eIoa#M} xN 其實,就如你所言,它的最大優點乃在於它有window特性,故而對於noise有較佳的抗雜訊能力,也因為這個理由,所以才會使用schmitter trigger I't rF8p%j!m
基本上,如果只是學術,用nand其實就可以了,若是業界,我個人都比較建議用schmitter trigger會比較保險

caesarxl 發表於 2008-12-17 10:21 AM

留名关注,日后学习
D(GwM)cC 谢谢分享。。。。。。。。X|Fd s2b
。。。。。。。。。。。。

camilla 發表於 2008-12-17 05:56 PM

超級謝謝finster版主的解答~:D ]0`9e7e#n^2n
| ^Q(g7u K4DlIXwF
最近全實驗室都在忙年底要結案的計畫,直到這一兩天才有時間繼續自己的事~很對不起~ Yt-@^|T*E'v

@a3gTS 我加大driver後是沒問題了,不過我有幾點疑問想在請問finster版主,請finster版主能再多多指教~
~]*|0mV rnw~
7_,^ w:V+y} 第一~ 通常crystal的消耗電流會有多大呢?(雖然不需要設計到很小的消耗電流,但我又怕自己做的crystal會很耗電)
4pe{o3x2t
iqA^*wTj:N!_#F9UY 第二~ 我想讓設計的crystal的startup time能快一點,可以如何設計呢?(我希望能快到20~40us左右)
.y0`E G?1Rxw
@5s])j j] 第三~ 我在schmitt的輸出會有這種情況,不知道是為什?(這是一開始時的輸出,等到它穩定後就不會再出現):Kg5J$rmJ

4R\%S8t#x ^%x6w%O 麻煩finster版主在指教,非常謝謝~

頁: [1] 2

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.