|
原帖由 markcheng 於 2008-1-15 12:33 AM 發表 ) v9 G3 v+ u' f, k
感謝finster分享
) r# y; ?0 {/ H: h8 Q i小弟我目前遇到一個跟你的第五點問題滿類似的! _% `0 P* |! x5 b, Z6 K
我是design一個32.768k crystal osc8 A3 T, z" {% b3 q* _% M" z
ic 回來量測時發現經過digital counter的輸出會有過快的現象,也就是它會數太快,代表著也許我送給它的頻率變快了 ... 0 c3 i( z! a2 f6 P8 Q1 `( m
/ [, n# E/ i7 ^1 i+ @7 q8 t7 n, @" H j0 c' x* D$ Z
不好意思,因為這一個主題己經有太多人回覆了9 [& K" Z2 y; ?" m1 `
所以也就一直沒有留意有沒有人有再提出新的問題來
8 l8 h" q& ?! J( m+ G) [ d我們後來實驗的結果(藉由FIB),發現到當初的推論沒有錯,因為原本的規格是要作到很low power,所以32.768KHz Crystal output的推力就設計的很弱,以致於輸出的clock的rise time和fall time就變得很長,導致後級counter在遇到很長的rise time和fall time時,就會被重覆trigger,故而使得原本要一秒一秒計數的計數器變快了
7 i0 d, b# Y% S+ I- e解法就是加一個schmitter trigger,藉由schmitter trigger的hysteresis windows特點來解決過長rise time/fall time所造成的問題(我們有用hspice作過模擬,利用crystal oscillator + counter但卻沒有看到過長rise time/fall time會造成counter有多數的情況,後來,我們是在power處和crystal oscillator的output端各加一些noise,便會看到問題出現,因為過長的rise time/fall time在爬升的過程中,因為noise的緣故會導致counter在某些較大的noise處會被trigger) |
|