就以我所知道的PLL和DLL兩者的架構來說
) Q4 C) Q1 V- l1 R* y& L0 J- lPLL的核心電路VCO可用單端的ring oscillator,也可用differential 的ring oscillator來實現,兩者的差異在於抗noise有極明顯的差距,如果VCO是用單端的ring oscillator來實現的話,當然對於noise就較容易受到干擾6 U+ K& q' M# O Y
而DLL的核心電路是delay cell,藉由一級一級的delay cell來產生出不同的phase,又或者可稱作不同delay time的頻率出來,故而,如果delay cell是用單端的delay cell來實現,則它的情況就如同PLL中VCO電路中使用單端的ring oscillator一樣,較易受到noise干擾,不過,這裡的noise干擾是一級對一級的干擾,而不像PLL那樣是一個閉迴路6 }7 c, @# c* J. q$ K# c l
所以,對於PLL和DLL來說,兩者對於noise的免疫能力來自於VCO和delay cell是採用單端電路實現還是differential架構來實現,再來就是noise的影響對於PLL來說,因為它是閉迴路,故而noise的影響會造成迴路的變動,進而使得PLL需要在迴路之中有所自我調整(自我變化)來讓迴路對於noise的產生有所反應,但對DLL而言,noise的產生影響是當時一級一級的反應,過了這個時間,noise的影響不會像PLL那樣需要整個閉迴路作自我調整0 ?+ o; ~! W M2 x
也就是說,VCO和delay cell對於noise的免疫能力要看它採用什麼架構,兩者基本上都有同樣的noise影響問題,只不過VCO是閉迴路,所以noise會讓閉迴路產生較大的反應,但delay cell是一級一級的,noise的影響只在當下的時間會產生影響,所以,DLL對於noise的影響程度就會比PLL小得多6 }( T9 u1 l1 {
/ M. A3 F' e7 R, r& D8 w7 s
再來是精確度的考量0 J! s# d: t4 ?) L0 O3 V U# K) Z
DLL的精確度來自於delay cell的一級delay time,此值若能愈小,相對的,DLL的精確度就會愈好,因為一級的delay time大都在ns- h+ E* g* l# I; Y+ v
而PLL的精確度來自於VCO的gain值和charge pump current對low-pass filter的反應,假設VCO freuqnecy range為500MHz ~ 600MHz,VCO的input電壓變化在1V ~ 2V,所以VCO的gain值為100MHz/V,也就是說VCO的input電壓有10mV的變化,就會有1MHz的改變,故而假若charge pump current對low-pass filter每次的變化量都只有10mV話,那VCO的output frequency變化就只有1MHz9 D- A4 ]5 d2 R4 r
如此一來,當然是DLL的精確度會高於PLL,如果PLL的VCO gain和chrage pump current都能有所調整的話,PLL的精確度也可以高過DLL,只不過那會產生出一些問題) q8 h* x' R+ n6 m4 [* P
. L8 ^3 d5 V+ a& [- z" ^至於面積和功耗的考量,其實這要看DLL的精確度% w0 v; \- d& b0 V. f! S- t& q
如我剛才所提,假若DLL的精確度在每個delay cell只有數個ns,那你需要多少級的delay cell,級數愈多,所需的面積和功耗也就會愈大7 A# Y" o: R5 n( \0 }8 C
相對的,PLL的VCO通常是3,4,5級之間,若和DLL相比之下,當然,極有可能會比較小+ U1 t1 Y6 H, V8 r& r$ A& m$ Q
但,如果DLL犠牲它的精確度來換取面積和功耗的話,那PLL的精確度會否小於DLL,那就需要去計算才能夠比較 |