Chip123創新論壇's Archiver

CIC

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

crystal oscillator不起振~

各位前輩~
'`1oG0E(v4D
'scy ~t4i 我現在正在研究crystal osc.我有在論壇裡看到這方面的討論...
\}e"Iy7u [url]http://www.chip123.com.tw/phpBB/viewthread.php?action=printable&tid=8412&sid=g0bJll[/url]ZDFqq0f

4{3i4t6v4hn G)sXQ7g 其中finster版主建議說加入這個模擬條件  VDD VDD 0 PWL(0 0, 500US 3.3V)
#M2[/HoM3L;F 7}1? ^~ Q}
但很奇怪的是,我加入這個條件後竟然不能振了,但若是VDD VDD 0 3.3V卻可以振,P;\Q#Eu` Qs

9P"w1d"\&\"@+M)_Z0F 是什原因呢?
.O o }3AG5`7c h
RSB4B$d5za 另外finster版主題到的low current crystal oscillator...請問有bias voltage control相關的資料可以參考嗎?S_n)_I faR
(因我加完i/o pad後的電流竟然幾mA阿~){$X-z$HE ?6\

Y5@Lm.Y,RZ;] 請各位前輩知道的話能給一些意見嗎?謝謝
,U$L;T"k7t)p"^;]!?
R6Ej J*|t4jo 對了...我crystal osc frequency = 13MHz , vdd=3.3v

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

我當初在作crystal oscillator模擬時,會加這個power ramp的方式 |.jIymG3K
   VDD VDD 0 PWL(0 0, 500US 3.3V)E%Z9mz$j
這是模擬電源電壓是從0V開始往上昇,在一定的時間內會達到穩定值,而會在多少的時間內達到穩定值就看PCB版子上的電源電壓多快能夠達到穩定,而這是比較接近真實情況的模擬,因為所有的電路皆不是一開始就是vdd
v,B3dx0s*}R 如果,你所設計的電路無法接受power ramp的電源電壓方式,那表示你的電路在power ramp過程中有遇到無法收斂的點,以致於電路會無法起振,解決之道有幾種方式可以試試看,一是加initial電壓,二是在電路中加負載電容試試看,至於要加多少,這點要看你的電路來決定,三是試著改變ring oscillator的size大小
1mH:g-fNWZsU
8Ty0gp:TY 你的crystal oscillator電路有需要作到low power嗎(total current <= 10uA以下)??
-jo2ZbKtA-l F 如果沒有,那就不需要bias voltage control
f4b9tp1A1TmtO
y/h/{D l U h;c 3.3V @ 13MHz的crystal oscillator,我已經很久沒作這方面的電路了,對於它的current會有多少已經不太有概念了,如果你想知道為何它的電流會這麼大,建議你看一下crystal oscillator兩端的電壓波形,再來觀看接在crystal oscillator的那個buffer(inverter)以及接進去的第一個反相器的電流,如此一來,你應該就可以看出為何電流會那麼大,同時也應該可以想到要怎麼修改size

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

謝謝finster版主~IA:W)H|4?C

t4Y7]/d0\2A'nA8r7W3Pn 我加了初始電壓進去後就可以了~:D 8C1D.o Ev'}5` z3Q

T$tK(V5Gk8L 我有看了一下你建議的那幾個電流...在inv的電流大概是2.多mA,
.Dn|n7g l f~ S;W re7[4v2b I"k
我也針對這個方向下去修正~也有變小了~ uh4l(?{j]+GH
+h,Ee5V+J+sQ
另外我還有一些疑問,就是crystal oscillator除了消耗功率外尚需考慮什麼條件呢?
;\.WTl3\ | Q 3\%R n.@s'H-\
我教授給的spec只有vdd=3.3v i<1mA Freq=13MHz 那我還要再另外考慮什麼嗎?
!Nb#H*K_s!XO
e$Dl+v|d"A[K6g] ~ (不可能那麼簡單吧?)
X?B z3S?~s_H ;^w#v s^_
麻煩各位前輩了~謝謝

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

一般crystal oscillator的電路設計,最重要的是當電源電壓一開起來之後就要能夠起振,經過多久之後振盪頻率要能夠穩定,整個振盪電路的電流消耗有多少,振盪頻率的jitter或者頻率穩定度為何(這項通常是針對R-C oscillator,對於crystal oscillator則較少有人在留意),整個area有多大u+R {%Q-rZm E
這幾點是crystal oscillator circuit在設計初期會留意的幾項
{%YxO{k:^Y q&U 其中第一項和第二項是首要的,其他的就都還好,反正,只要有起振,大概就完成了80% @0O{9Q$puEQ
*N eC.nd
另外一提的是,有些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版主~r h'U5\ ]w p.b

*ILU XrJ/y3e*R8Q 因為我現在想在不使用這個crystal時能把他disable(因inverter會有dc path),所以把inverter改成一個tri-state inverting buffer,但在disable時不是輸出應該要為零嗎?,w5]q+c)WGq jV
但為什麼卻慢慢衰減到1.5v左右?這是正常的嗎?0}!~?(BctN2];A
o6j1w5ZD!G!q2^G:lf&[
再次麻煩各位了~謝謝

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

對不起~忘記附圖了~
&y?e0Xn&r
m/r+@1C#F.{ w+ncK 不好意思~finster版主~
#H)X t'hPpP\
%n0uK,S)r]A 因為我現在想在不使用這個crystal時能把他disable(因inverter會有dc path),
uc F!aG| U 所以把inverter改成一個tri-state inverting buffer,s\-T/Je!}Jpm
但在disable時不是輸出應該要為零嗎?8bL:[#P T n5p_
但為什麼卻慢慢衰減到1.5v左右?這是正常的嗎?,{xtdq

9N0g QMQ T;w*_ 再次麻煩各位前輩了~謝謝

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

tri-state inverting buffer,在disable時輸出應該是Floating(High Z,高阻抗)
+_;Lf@|:_/rw1V6j 所以你應該用power down switch來做喔~~~

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

poseidonpid你好~CoZ"]+iP
gy |bn,m8c4Ib#d h
請問有範例可參考嗎?因為我不清楚你講的意思~那TRI-STATE BUFFER在DISABLE時是Floating(High Z),那輸出應該是什呢?l+CfnP'o8GJ!}v

2^Q6s u1v-} 麻煩各位前輩再次指教了~謝謝~

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

一般來說,我們不會用inverter作為crystal oscillator的放大器
*bgCv&t[e2W 而是用NAND作為取代inverter
$@@ Py.`#H+|0? 原因乃是NAND的另外一腳可以作為enable pin的control
`!m7aP9n1mM9d(P@(` $_%Z wj*D(^WFb
再來,crystal oscillator不建議你用tri-state inverter buffer5mB(wG&~;]y
原因是在disable情況下,output為folating,或者有人稱之為Hi-Z,此時為任何電壓準位k,OQ"q P9@
這對接在後面的電路而言,反而會造成極大的leaking current
i\Qq z 而這,是絕對要避免的情況
|l6sMjY'f)^r
5{AQ;D i'TN BD 最後,你所提到的dc path
\;\/V0`'Nmi 我不知道你在inverter的電路下所作的disable是怎樣子的一個電路
YY6{%q.nuq7iw 一般,要作disable的動作,我們不會用inverter來作,而是利用NAND或者NOR來實現!M2z#LX|"_6VY b
若真要用inverter來作disable,那會在input端前面加一個transmission gate和一個對vdd的PMOS或者對ground的NMOS,如此便可達到你要的功能,只是,與其要這麼複雜,還不如直接採用NAND即可達到要求,既簡單又方便

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

謝謝finster版主~Ej9D b%o.k

%Gcc.XE] Vv-Y8H 我了解了~我目前是兩個方法都試看看(加"nand" or "transmission gate & power down")...謝謝版主的指點~

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

各位前輩~
9zD8kdo0Iu 'k(p;E'FCu#X
我之前模擬crystal osc後,教授看了說我的作法是沒錯但想法錯了~u fBo9V^.ZF
y3t*kH-b?
因為我這個crystal osc是要藏在學長的ic裡...要用他其中一個i/o pad來實驗...\A!LD ^fTp*T

;r%g_)\ Z;n/J 所以在不使用這個crystal時,能完全不影響到這個i/o pad所連接的cell(學長的i/o pad有另外用途~)?DCy9V
m/XRT1q'u
但我還是不太懂我教授的意思...且我的schmitt在disable時輸出是要為0....K!uc g1P MK2e
8B#D4x)z*Go
我實在不清楚我教授的意思...在原本的設計裡不是disable時就是把這個crystal都關掉了嗎?
[2SZn/j!s
9IQ"m hdF*X%T 為什一定要使用一個tri-state buffer來代替inverter呢?一定輸出要為floating呢?0_^q:L5\ g&m }d Mm

b`%D+z$G GY 請各位前輩指點一下~非常謝謝~

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

各位前輩~
}zi?Tf
*m ~+T x[ ` ]/d 我剛剛想到,因為我是接到i/o pad,所以不希望在disable時,crystal會造成電路消耗而影響到真正接到此i/o pad的電路功能...Be;I`!T;DHEiY$d
D/~ mi {.v|
所以我教授才希望crystal disable時是floating...但又如finster版主所講,在high-z會有leakage current的影響...m_D7N B2nWO

;j-`5l\ ^.[c/}]8? 那有什方法可以避免這個問題呢?或有什方法可以能有同樣功能(disable 是floating)但卻沒有此問題呢? P@__8l's

a2E+hjz9];j@ 麻煩各位前輩了~幫幫忙(因為我月底要搭學長的順風車,藏在裡面下線,所以拜託各位前輩了)謝謝~

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

方法有很多種yh"s})z9Z
附圖是示意圖,實際控制信號自己加上去吧
U`5~{?R B5w_U
dF|j([r)M 我前面提到floating 會造成後面一級會有leakage current的問題,一般都是利用傳輸閘來解決此一問題
D8swL j 方式就如附圖所示

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

不好意思~謝謝finster版主的耐心指教~Hs|yk Q
-R dt5t!c6Nx
我現在改成如finster的建議~不過我對在disable時的輸出不太確定是否正確~
w2n0UJt6QRr9@ B.tT X9`
如附件~是因為floation的關係所以他會慢慢衰減到一個偏壓嗎?而不會是0或vdd....?
*Gz(`~f c3M0u z H w-i-bq4S5S
再次麻煩各位前輩了~非常謝謝~

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

不確定你是指那一個節點的電壓
2CvtnG3D%b 若依照我上面所繪的草圖,在一段時間後應該會降到0V
t8{"L/p8G4W*rV1bXr u W2fS+egC YLw
不過,你的模擬圖卻沒有%Zt{;X6T
我猜,可能是因為在模擬crystal oscillator時,在crystal oscillator兩端要掛一個串接電阻_ c7VF8^F
故而在進入到disable時,原本要降到0V的電壓會因為這個電阻的緣故而變成到0V ~ VDD之間的電位,此時,在crystal oscillator兩端既不是Hi-Z,也不是在0V或者VDD
)] S;S;lA E6T%I 你的模擬圖應該是正確的情況
9Bj&jjuN8F 若想要證實,將串接在crystal oscillator兩端的電阻在串接一個傳輸閘,在進入disable情況時,將這條path打開,如此一來,在I/O PAD應該會看到0v的電位

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

不好意思~一直麻煩finster版主~ t },^#x)M4q%w!D"B
B+k&~P0\j
我的電路是如圖,我的輸出是指在INV改成你建議的電路多加一個TG後的輸出那點~
b+Y,GPX-hB9m4Wi @ y?cS/]
你講的是回授電阻嗎?但我已經把他用一個tg來代替了,所以disable時這個path是打開的~h#_ jp/C
B j*`hRe
還是你講的"串接電阻"不是只回授這個電阻?C6g*t?;if;m4C;w*]

(j9Q"M5B(wn-`Y r-C.w 假如我輸出不是0 OR VDD會有影響嗎?
z{mb uO
3v c4_?Qls 這個偏壓有可能是我的回授電阻(tg)所造成的的嗎?(在en和enb要通不通的情況下一直有一個偏壓存在?)
@Jf3P*GOd:p/JB d3H H2i `APK
不好意思再麻煩各位前輩了~非常謝謝~

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

我又忘記附上電路了~對不起:L b1b"~:~m"@n mR
n4N4C]t eDn ~%z6]
不好意思~一直麻煩finster版主~
$H(AL$Z4s7_*`'Z `
$c(J|5j:z t@ 我的電路是如圖,我的輸出是指在INV改成你建議的電路多加一個TG後的輸出那點~
?%Jk*h tu ,G|M:@0pd!pfG
你講的是回授電阻嗎?但我已經把他用一個tg來代替了,所以disable時這個path是打開的~
kf$Z+qg Jb@"^
J)MdVK q} 還是你講的"串接電阻"不是只回授這個電阻? @e9xO_-DMp4X

%]C y9Rs"e U 假如我輸出不是0 OR VDD會有影響嗎?0V#Os$e[%Re

F[$C{,X 這個偏壓有可能是我的回授電阻(tg)所造成的的嗎?(在en和enb要通不通的情況下一直有一個偏壓存在?)I*b:u~CH

N'se:z*Nx&f.Z T3Q 不好意思再麻煩各位前輩了~非常謝謝~

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

這是我依照你的電路圖所畫的動作圖l&~*?8R;n-|
在disable的情況下C1的電容上會有電壓,因為在disable下,電容沒有path可作放電,所以原本在C1上的波形該為振盪的正弦波應該會變成一個介於vdd到ground的一個電壓存在,波形該為你前面所貼的Vout才對 ]7Uo+\g
至於C2,因為反相器的輸入級被接到ground,故而在反相器的輸出應該為vdd,而非介於vdd和ground的任一個電壓,所以,若你的輸出電壓介於vdd到ground的一個電壓,這點倒是很奇怪,除非你的反相器的拉力不足以讓C2的電壓在disable的情況下被充電到vdd4_P5n$H9_
若以你目前貼的電路圖來看,在disable下是不會有問題,但,要留意是其他電路接到C1的節點,因為C1在disable下是floating,所以任何電壓皆有可能,那對接到這點的電路而言就有可能會造成leakage current的產生,除非,你在disable的情況下,C1那一節點會有另外的輸入電壓來控制,那就不會產生問題
g:O[xq0J7w
$hLI Hq$o 至於C2,通常是接到buffer的輸入電壓點,在disable情況下,一般都會建議要為vdd或者ground,不會在disable下所接到的那個buffer會有leakage current的產生,而這是要避免的情況"h tgpHM

J?&tK:q+yY 如果你學長的電路在disable情況下要用到C1和C2兩個I/O PAD,那你C2的電壓在disable情況下就不能被拉到vdd,不然會有問題,這點你需跟你老闆確認一下,若有需用到C2那個I/O PAD,那在反相器的輸出級就必需接一個傳輸閘來隔開在disable情況下C2的連接
:Xqq p I o
!YFdB-A)X1hf2P7a 最後,你上面所貼的圖為Vout的波形??4jK&K$n0_5lRew
這點讓我覺得很奇怪,若照電路圖的行為來看,Vout在disable下該為VDD,而非介於vdd到ground的作一點電壓,你需再次確認一下傳輸閘的電壓有無錯誤,不然這樣子的波形是無法和你的電路圖作相呼應與解釋,而通常在這種問題下,要不就是遺漏掉什麼,不然就還有其他元件影響到C2的電壓,以致於C2沒有被拉到vdd,7h{tPA.L}+{l
9lf:NHM"MoLr"G0e
[[i] 本帖最後由 finster 於 2008-10-10 08:47 AM 編輯 [/i]]

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

謝謝finster版主的詳細解釋~
0fU:yoSn
xU u?BC1@ 我學長電路在disable時是需要用到c1和c2兩個i/o pad的...而我現在最主要問題是...@(} _(B:E4f2Ah

7qM`JQP4n 在反相器輸出沒加傳輸閘時,我的輸出在disable時是可以拉到vdd的...
,V5pi9p&]h Y5y-H}
A,kF[0c| 但在反相器的輸出我有加一個傳輸閘來隔開在disable情況下對c2得連接,但此時的輸出應該是要如何呢?
.tq'P"`-V@#D eXh5M3r8P
不是應該維持在vdd嗎?但卻是如圖所示的結果!!
#IO0dzmh8i -Jo)j*tg#bvK
是在加入這個用來隔開c2連接的這個傳輸閘後才會有如此的結果發生,是我的傳輸閘的設計有問題嗎?'|0j}&O8O

(|TE J{"S 一般像用來當成disable的傳輸閘有和限制呢或設計條件呢?因為我是懷疑是加了反相器輸出後的傳輸閘的關係...9W)A(y4I zY)|

@dD5x ]7AF 但又不知道這個傳輸閘除了作disable用的開關外有什限制?-i'L;v)by

o S`~7L L:r_ 請各位前輩和finster版主在幫幫忙~非常感謝~

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

從你貼的模擬圖來看,確實還蠻奇怪的,因為這個現象照你所描述的電路來說有些不合理DrU(b_$d
若你已在反相器與C2之間有接一個傳輸閘了,在disable下,反相器的輸出應會被拉到vdd [ j(^,?'nc7fB[
而你的情況卻在vdd ~ gnd的任一電位;s]_wEkL q*B*m
k`2jC9lH
你能否確認一下反相器輸出端傳輸閘兩端的電壓各為多少?傳輸閘的PMOS/NMOS在disable下時有沒有電流流過?電流值各為多少?*m:{I4W5\Y:M3RW~
另外,量測一下反相器上方那個電阻在disable下時的電流為多少?0{(cc,n:D6c
m f p%y Du @
上述第一種狀況是針對反相器後的傳輸閘作測試,看看有無正常動作,z6GGw e
至於看反相器上方電阻的電流則在看為何反相器的PMOS在disable下的動作+Q5m1z IzPE

7uw'qeJ}4O AC(W 最後,若你學長都需要用到C1和C2兩個I/O PAD,那你的反相器的輸入和輸出端一定要加傳輸閘來隔開,不然,屆時就會有問題

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

再次感謝finster版主~
k F Z/J7t RA"_
e4aYlVZ%A l 我想確定我和版主所講的輸出是同一點嗎?3D{;bY5F

7x:gc H3s;wW 我的反相器輸出是會為vdd...但我現在是不清楚在圖上所標的vout在disable應該是要什麼情況呢?
:V0|6k ~]&["k V GG
%HR'B#E|9v%r3C2I7Y 是介於0~vdd嗎?還是vdd呢?_#yV*j}wzR+D
_)|?8Xht
因為我是想說在floating時不是輸出在任何一點準位都可以嗎?!CF%k!gEZ6^
t5Sw@P)G1Z$w)v
因為我想說我上次貼的電路圖是不是誤導了finster版主了...怕說我們兩個指的輸出是在不同一點的?
6BV#maP5Aa)K)` j,j1Mc&lO
再次~再次麻煩各位前輩和finster版主了~

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

從你目前所貼的圖和你之前所模擬的結果來看是一致的
0H{ A,H `[9Y)m 就如你所言,先前我所說的節點和你認知的不同,所以有所造成誤解9D'I{1qK/S
依照你所標示的Vout,它確實會是floating,電壓應會介於VDD ~ 0V之間,更精確來說,它會略近似乎於C1上的電壓

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

謝謝finster版主~,gx6uf eb[#e#S

IV'R k;P 那我可以放心了趕在月底下線了~謝謝finster版主的耐心指教~讓我受益良多~謝謝

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

hi~finster版主我又有新問題了~不好意思 qQ\"n0\8F(^
3I[ `Ac'p$@+s!n
我layout都沒問題了等著月底下線~
6t-} Jwq+Lg "Dw{|/{5z]
因為在幾篇paper有看到利用相同電路,但crystal model不一樣(原本是13MHz,現在想說看能不能使用在更高速的10M~30MHz)
OqJ}LJ.e iJ%\3^|$W1e/U
但改變crystal model後只能在20MHz下正常工作,更高速20MHz卻振福很小(有振,如附圖)1dAb*X/G5g6D5u
-~4J#J5]&km
我也有想過是driver不夠,所以也有加大但還是一樣,應該不可能是反相器不能工作在那麼高頻率下吧?!
$[:h"qmH1Klh
tY5{2`'Z&T,|"P.r 這試什原因呢?在我不改變其他元件情況下(頂多改變反相器size)有什辦法能解決嗎?
oT`%k/_e0W 8`1?oiE8j9`l L X
p.s 圖1是模擬出來的結果,圖2是局部放大的結果~這個應該是有振吧?只試振福小到可憐~
OeN Rp EX T1]*V
qk$d7p0ww D 請finster版主在抽空幫我看看~非常感謝~

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

以crystal oscillator電路來說,廠商會提供一個外部參考的電容值和回授電阻值作為參考
0E GX&T)nnSq 故而在不同頻段的crystal會有不同的C1,C2和Rf建議參考值
&Hc6]d!QK6R"xd 20MHz的crystal oscillator的C1,C2,和Rf並不一定和>=20MHz以上的crystal oscillator的C1,C2,和Rf值相同&Q&l-U$D0Bd

\+l$YG/fq.e7p'i 再來,一般來說,大於15MHz ~ 20MHz以上的crystal oscillator,因為主頻較高,相對的第三倍頻也會隨著頻率增高而特別顯著0k.z6se{R#s5sG
所以,有些廠高會在C2到crystal osciilator的output端再額外加一個小電阻,而這個則是用來阻絕(抑制)第三倍頻的功用,這個在一般的crystal oscillator的規格書上都有寫
*y`6mse2P9N7dWrU[ @)C&B1c3f
最後,如我前面所寫,不同頻段的crystal oscillator需要搭配不同的C1,C2,和Rf,而且,它的消耗電流也不同
/]0f"_geN 一般來說,愈高頻的crystal oscillator的起振時間愈短,同時jitter也愈大,而且高次諧波也愈明顯
%TX3[,cXst 所以,請先查一下crystal oscillator的規格書上所寫的建議值,因為你的C1,C2,和Rf值也會影響振盪出來的振幅和頻率R-^G-Xg4xB3C
,p K-G!B {
[[i] 本帖最後由 finster 於 2008-10-18 02:51 PM 編輯 [/i]]

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

各位前輩~{P'x~b3KJ4E)w

2yyT wZH 之前因課程關係做了一個crystal osc(期間感謝finster版主的指導~),且也跟著藏在學長的ic下線了~
Z$y$N3Vo/Cw7IScm F P Tu {
不過最近在書裡有提到overshoot可能會造成emi的影響~
[ |5m4J J QS
;CO+Z k@ [1tHuh 我再把我之前做的crystal打開來看,發現我的輸出也有overshoot~
!H8[(y#YPf` d9]
6V@n,Z!V5P@w 如圖~這應該是overshoot吧!?
8F1P#dt-y M7O{
"|1Xl*w~ 那這個有影響嗎?有什辦法可以改善?
O2y1b!lB_j (t6eM.`\'c6x
請各位前輩能給我一些意見~謝謝~

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

正好在煩惱這方面的模擬
l9]cNcO(}$O.x1c 有了這份參考資料依定可以成功,感謝

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]
!p Eb eU/c 各位前輩~
4KB'Of)b5m N x`si~}.?L
之前因課程關係做了一個crystal osc(期間感謝finster版主的指導~),且也跟著藏在學長的ic下線了~
&sT*n~O]X )kOS E#Xa.M
不過最近在書裡有提到overshoot可能會造成emi的影響~
"n&o#lLT X|:dCa
我再把我之前做的crystal打開來看,發現我的輸 ... [/quote]|o\8Z8}

c]q2?6W9C U+o/q/RIE \!l8A1p]
你這種情況還好,並不嚴重#Uh:tMWLg/i
要想克服這種現象,若在OP,最簡單的作法是改補償電容
l*fUA P 若是反相器,減少driving能力或者在輸出端加點小電容(負載or Buffer)即可

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

謝謝finster版主~YB/y)R4m3ON? m

2R5k&^/h#N5a 你說可以在輸出端加小電容(負載or Buffer),是為什呢?d&w4iFn B

7D/p~*z!vv6mlv 因為我在輸出端有多一組schmitt trigger,這個是我學長要我加上去的,只不過在disable時要為zero,但為什要如此呢?
'i@,e&D.j A1s-R 7D`(P ](X3@
我為了要使disable輸出為zero,所以在schmitt trigger後又多加一pull down,這樣應該不會有問題吧?

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

減少driving能力或者增加buffer其實都是同一個原理的解決方法
[ ?!Z2b"X"l\ 因為你的輸出的driving能力太大了,導致在輸出為"1"時會有over-shoot的現象出現
[T\4Puqb:P 故而,把driving能力減弱,可以減緩over-shoot的問題"uj/C,]!t"SH:}
另外一種是增加輸出級的loading,而這種方法就是加小電容或者buffer,如此一來輸出級的fan-out就增加了,相當於是一個loading,不過,我都是用加小電容比較OK
Z4C(Pqs9B6TV )w{7T,M ?5_6B
至於你問到的第二個問題i M IuW
這個要看你系統上的需求而定,在disable下要為"0"或者"1"都是看系統的設定來訂定的
W&Arp~Dw^*T\ 不過,你用pull-down,原則上沒有問題,但若是在實際產品就不建議,因為你是在輸出級加這一個pull-down,在disable下若輸入為floating或者"0"的狀態下會有一個leaking current path,這是要避免的情況
i']bC$xj 再來,pull-down的電阻值不能太小,不然會有一個strong的向下拉,如果你的輸出級不夠powerful,很有可能會讓輸出級保持在"0"的狀態

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

再次謝謝finster版主~
&O`"JZ:QL$C~*@| q4j1g$U#V
最近比較忙,所以現在才上來看你的回覆~-s"w0iMG k~
R*z3J it'Sh]
前天被學長問了幾個問題:(他也不知道,我也不太確定回得亂七八糟的)
I%?X$m H S0g ~"v_ _6SJ*WPN'm
1. 你crystal model上網抓,那你的設計是針對網路抓的model來設計的,那如果套上實驗室現有的crystal的話,能動嗎?
O]l8|H|6}4Y
u(a \g6y5H8wT!O 2. 輸出級只是要它產生成0/1的數位輸出,所以我指要用反相器應該也可以吧?但這樣不是在crystal model floating時出電壓是任意
dYooRr%FR    值嗎?不是有可能會造成輸出級反相器在disable時是導通的,造成vdd_off變大嗎?有什可以降低這個問題呢?1}E ?){@u5D9}O?

-K'G ~kaf G 3. 我在原本輸出級是史密特時,套上25MHz以上的crystal model時,電路是不振的,我想說是driver能力不夠大,所以又在schmitt多加
;q;e.OJ"Wsr9pH'h    一反相器來推他,是可以振了但電路消耗電流卻變得很大,是我想的不對嗎?是其他原因嗎?:t7?R\L]
LV-A5S A/~3^ a.c
再次麻煩finster版主了~謝謝~

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

1. 不一定,因為不同廠家所生產的crystal,其crystal model都會不太一樣,所以換不同廠家的crystal oscillator也許會起振,也許不會 u,_,un;X0^5X U.]wey
    不過,通常都會起振,因為不同廠家的crystal model不會差太遠
X)qu7E}+_#o 2. 不太了解你這個問題要問什麼5X$fag)^u"h H6T
    基本上,crystal oscillator 的放大器用反相器或者NAND都可以,用NAND只是要有控制腳的function,而在disable時,輸出要為"0"或者"1"或者floating都可以,但要看輸出級後面接的電路能不能接受"0"或者"1"或者floatingJ1[MgZ z7E7w(v/j)q

&gR&vaYT1jT 3.這個你可以看一下振盪的waveform,我在猜可能是你的振盪振幅太小了,以致於在schmitter trigger後面無法trigger後面的電路,而加了一個buffer後,把振盪振幅放大了,但,這個buffer會因為schmitter trigger的輸出振幅太小而會讓這個buffer有著極大的電流消耗

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

不好意思~finster版主~c+co"a4e

8S`mR kB k 我的文章沉到太下面了,我以為沒人回所以就試著自己找解決方法~今天才看到~很感謝你的回答~:D 3@a0yBpz

%d4X(d H{_ 我的震盪波形在接上schmitt後變小了,是什原因呢?S\!Rw_+T5fD

Q5ob`$G_R 我目前有試著利用一個nand+inv來取代schmitt(因為我在schmitt的輸出在disable時希望是0v))XeT T%SBQ;I+w
Uch i/XN7s
是沒問題的(在disable時的電流有2mA左右)...但我又怕說會有glitch的問題,所以才想說利用schmitt來產生一個high,low的輸出...t3H0u;k6M A@0]6jI
$hM8S:J3\N$B
若使用schmitt又會只在25MHz以上的頻率才會有這個問題,所以我不知道要如何解決這個問題...:'(
s S'^*F8Z7f7P!j )j%T(qH{
但在振盪輸出和schmitt之間加了反相器卻增加了電流的消耗,有什可以解決得嗎?是我設計的schmitt有問題嗎?(但怎會在25MHz以上才有這個問題存在)W y)ZrJ/e }
c7O mg]+@
可以麻煩finster版主在給我一些建議嗎?非常感激~:D

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

你的振盪器的原本振盪波形的振幅有多大呢?接上schmitter trigger後振盪波形變小多少呢?
8B&q3k+{u#xHd6R 另外,你schmitter trigger的vih and vil又各為多少呢?r_J q8P ~D!Z

R7z dK8[0nt1t7a(C 因為我不知道你這些條件,所以無法回答你的問題
B,}2v:T4|}:P$G|3t
,l/G[ b(^8qw 至於你問到要降低消耗電流,這個問題需從你的振盪器著手,因為你的振盪波形並不是0 ~ vdd,所以接在振盪器輸出級不管是反相器或者schmitter trigger都會很耗電流,解決之道惟有改進振盪器的輸出波形3q:x%y5h+C
bJ6OWfR
[[i] 本帖最後由 finster 於 2008-12-1 11:33 PM 編輯 [/i]]

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

真是太感謝finster版主無私的教導了~:D
[A B#D.lV,k W :jR3{Jf4j+h
我原本振盪波形振幅是0.3v~3.2v...
s)CeXC7yd
Z#g;g"f,mdU*b{ 但接上schmitt後竟只剩下1.45v~1.58v而已...1I2S5O|eAd.`#Z:~
#V|.av J!?&m_$x
而我的schmitt vl=1.4v,vh=1.6v...(我也有試著把schmitt的觸發電壓改為1.4v~1.5v,但還一樣,很奇怪??)
"aL(z(gQMt a9?X :h1G Z)TT
但為什我同樣電路但crystal model由25MHz改為20MHz卻沒問題,只有在25MHz以上才會有問題呢?
+N*|*aAw Sh
7}2F9qT{Yy5x (其它頻率範圍下振盪波形依舊會在接上schmitt時而變小,但就只有在25MHz以上才不會振~)(]^ e.uI6{ jep3T
n2Q.q1S$\\2l
這個問題困擾我好久了,我有想說就直接把schmitt改成一個nand+inv一樣可以達到我要的在disable時輸出為0...Nu;g1{&WTD/p&R4_X+x

/Uv*D7] m4d~.x } 但我不清楚說schmitt的優點在哪裡,除了能抑制noise,減少消耗電流外...*[%O(Pl)O&v
/_{ gfp
若用nand+inv除了可能會有glitch外有會有什不好的缺點呢?(和schmitt相比),BT)M0y-R9?
xF&`1TMQ k
我想說若可以的話就使用nand+inv一樣也可以達到我的需求,消耗電流大概在1mA左右~DlqpZJ

+w w6z%Mxo3zO,J4B 再次~再次~在麻煩FINSTER版主了~非常感激~謝謝~:'( X~tSw*F!I gC(I
#Z%y.up \kX?S
p.s 圖為我使用的schmitt~

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

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

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

從你的描述來看,應該是振盪器的driving能力太弱,以致於在加上一個schmitter trigger後才把輸出波形給變小
w%CV XKE h+I 關於這個現象,你可以從你的模擬中重現這個現象+v1d5yI:y4R
你在模擬時,先不加schmitter trigger,然後在振盪器的輸出端加一個小小的電容到地,我想,你應該就會看到你的振盪器的輸出波形會整個變小
6cMN,eG&ry^2]'E 而這點,主因乃在於你的振盪器輸出的推力太小,以致於一點點電容loading就會把輸出波形的振幅給變小 t-S.q8wg%Z'^7wBut
而要改進這個問題,只能把振盪器的driving能力加大_/~b7n-F$G;a

0[ JO ME7M$w 至於你問到為何只有在25MHz以上才有問題GV%x S H bW
這點,其實也跟你的振盪器的driving能力有關&vw _2r LD$K2vH:a vDC
因為在crystal oscillator中,振盪頻率愈高,所需的電流與driving能力也要愈大~:ds:\ Vr5@SP!?
而你設計用來振盪20MHz的振盪器來推25MHz以上的crystal oscillator,當然振幅會明顯被壓小,甚至有可能不起振;N8B?J7b B|

)k(eo Nw 至於schmitter trigger的優缺點
KQ,X&bj+S i#z 其實,就如你所言,它的最大優點乃在於它有window特性,故而對於noise有較佳的抗雜訊能力,也因為這個理由,所以才會使用schmitter triggers8}$m+|_V#d2l!z h
基本上,如果只是學術,用nand其實就可以了,若是業界,我個人都比較建議用schmitter trigger會比較保險

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

留名关注,日后学习
:a1B(L)W0S!K;G 谢谢分享。。。。。。。。0z? }0X,`2@O_w _
。。。。。。。。。。。。

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

超級謝謝finster版主的解答~:D
h*VsN#AF!@4{b l
HJ"c:kwUK+V4r.O 最近全實驗室都在忙年底要結案的計畫,直到這一兩天才有時間繼續自己的事~很對不起~
`:S l'k4k |E FG 4xX&^`w3G
我加大driver後是沒問題了,不過我有幾點疑問想在請問finster版主,請finster版主能再多多指教~
2J0^'q9NwNPO,J6p
XdBD)au H 第一~ 通常crystal的消耗電流會有多大呢?(雖然不需要設計到很小的消耗電流,但我又怕自己做的crystal會很耗電)uS0ig+\ W8w'Yp
iO T;n,z#|
第二~ 我想讓設計的crystal的startup time能快一點,可以如何設計呢?(我希望能快到20~40us左右)
[:?a!c$eZC {\gn:R;p
第三~ 我在schmitt的輸出會有這種情況,不知道是為什?(這是一開始時的輸出,等到它穩定後就不會再出現)3^4Yk/I0jr
0yvW!]T
麻煩finster版主在指教,非常謝謝~

頁: [1] 2

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