就以我所知道的PLL和DLL兩者的架構來說
+ ]4 U w7 i3 N' XPLL的核心電路VCO可用單端的ring oscillator,也可用differential 的ring oscillator來實現,兩者的差異在於抗noise有極明顯的差距,如果VCO是用單端的ring oscillator來實現的話,當然對於noise就較容易受到干擾 Q7 i+ |5 C, `5 a5 `5 J4 t9 B
而DLL的核心電路是delay cell,藉由一級一級的delay cell來產生出不同的phase,又或者可稱作不同delay time的頻率出來,故而,如果delay cell是用單端的delay cell來實現,則它的情況就如同PLL中VCO電路中使用單端的ring oscillator一樣,較易受到noise干擾,不過,這裡的noise干擾是一級對一級的干擾,而不像PLL那樣是一個閉迴路" u! h6 V& x' ?9 q# E
所以,對於PLL和DLL來說,兩者對於noise的免疫能力來自於VCO和delay cell是採用單端電路實現還是differential架構來實現,再來就是noise的影響對於PLL來說,因為它是閉迴路,故而noise的影響會造成迴路的變動,進而使得PLL需要在迴路之中有所自我調整(自我變化)來讓迴路對於noise的產生有所反應,但對DLL而言,noise的產生影響是當時一級一級的反應,過了這個時間,noise的影響不會像PLL那樣需要整個閉迴路作自我調整5 g2 b6 I: l- F2 o- T- u
也就是說,VCO和delay cell對於noise的免疫能力要看它採用什麼架構,兩者基本上都有同樣的noise影響問題,只不過VCO是閉迴路,所以noise會讓閉迴路產生較大的反應,但delay cell是一級一級的,noise的影響只在當下的時間會產生影響,所以,DLL對於noise的影響程度就會比PLL小得多
7 K5 p9 O) r: o2 X
# M& j: l. _9 ~1 Q' G9 G @5 u; s再來是精確度的考量+ ^. W" q# E8 P! B
DLL的精確度來自於delay cell的一級delay time,此值若能愈小,相對的,DLL的精確度就會愈好,因為一級的delay time大都在ns4 o. @7 j0 V, i( [0 x
而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變化就只有1MHz, h" Y/ N7 b0 \) D
如此一來,當然是DLL的精確度會高於PLL,如果PLL的VCO gain和chrage pump current都能有所調整的話,PLL的精確度也可以高過DLL,只不過那會產生出一些問題0 ~; z5 o1 o+ ?8 U6 G- V
9 _2 W' x4 l( ?9 z至於面積和功耗的考量,其實這要看DLL的精確度
7 f/ h4 G4 y( r# u3 ?3 x' k0 O9 V如我剛才所提,假若DLL的精確度在每個delay cell只有數個ns,那你需要多少級的delay cell,級數愈多,所需的面積和功耗也就會愈大: D7 B9 S4 [# r
相對的,PLL的VCO通常是3,4,5級之間,若和DLL相比之下,當然,極有可能會比較小
. {% L: ?9 S' H- I- W! Q) H但,如果DLL犠牲它的精確度來換取面積和功耗的話,那PLL的精確度會否小於DLL,那就需要去計算才能夠比較 |