2011年3月9日 星期三

外接clock source?

前陣子改 E-MU 0404 USB時,做了一項實驗,
板上的DAC IC AK4396之前是I2S bus,再之前是FPGA,用來當做buffer,clock source是顆oscillator,
也就是說,clock的路徑是

oscillator -> FPGA -> AK4396

上回做的實驗是,只動FPGA的電源部分,其他都不動,而且只是在FPGA的電源腳上加上電容,
原本只有一個超小的SMD電容,頂多0.1uF,
試著加上10uF,改善挺顯著!再加100uF,差異不大...再加1000uF,喔,這就聽的出來了,更是穩定扎實。
差在哪?就是上回提過的那篇jitter怎麼聽的那些部分 ( http://records2ear.blogspot.com/2011/01/jitter_26.html )

這實驗證明,就算有超好的clock source,接收端的電源若是不穩,也是白搞...
為何如此?
數位電路,我們知道,就是0與1,實際上,是高電位與低電位,
高,是多高?低,是多低?實作因素,並不是個固定數字,而是個範圍,
例如AK4396,高,是指70%DVDD,低,是指30%DVDD,這DVDD是數位部分的電源電壓。
也就是說,高過70%就看做1,低過30%就看做0,是個相對的範圍,
那,這參考的標準,DVDD,若是不穩呢?有雜訊呢?
那,這認定範圍就會變化了...

另一方面,理想的clock source是個方波,例如這張圖中
實際上,並不會是如理想般陡峭,總是有點變形,例如這張是累積一段時間的clock的分佈圖
http://upload.wikimedia.org/wikipedia/commons/f/fb/Multipath_system_eye_diagram.svg

當一個變形的clock方波傳送到接收端,若接收段的電源不穩,導致認定0或1的電壓變動,
那麼縱使原始的clock很穩(只是波型因為負載阻抗不平衡而扭曲),認定的時間點,也會因此變動!
jitter,就冒出來了...

以上的推論帶出二點,
電源必須夠穩,否則認定時間會飄動,引入jitter;
clock輸入端的阻抗必須匹配,否則訊號會變形,導致jitter的量大增。
無論clock source在內或在外,這都是絕對必須搞定的。

倘若採用外接clock呢,拉出一條長長的線在外面,那麼,又要考慮這條線受到電磁雜訊干擾的可能性,以及線材的阻抗,增加了額外的變數,
似乎不是啥很好的手法...

那,為何studio器材會有外接clock輸入端呢?
這其實是另一個問題,oscillator這東西,要搞出二個的頻率完全相同,根本就不可能!
頂多是5ppm誤差,這還得是在同樣的工作環境下,電壓、溫度...

想想,在studio中一堆數位器材,這個負責ADC,那個負責effect,那個搞EQ,最後給DAC,
每個都有自己的clock,都有誤差,
跑個一段時間,就差一個sample,長時間就差一個buffer,導致overflow或underflow,開天窗或爆掉!
那怎麼行哪,只好加個外接clock,大家都用同樣的頻率工作。

沒有留言:

張貼留言