就以我所知道的PLL和DLL兩者的架構來說
( ]0 O4 T+ {; [0 Y2 XPLL的核心電路VCO可用單端的ring oscillator,也可用differential 的ring oscillator來實現,兩者的差異在於抗noise有極明顯的差距,如果VCO是用單端的ring oscillator來實現的話,當然對於noise就較容易受到干擾
2 Z% @# {3 L0 @" @' w而DLL的核心電路是delay cell,藉由一級一級的delay cell來產生出不同的phase,又或者可稱作不同delay time的頻率出來,故而,如果delay cell是用單端的delay cell來實現,則它的情況就如同PLL中VCO電路中使用單端的ring oscillator一樣,較易受到noise干擾,不過,這裡的noise干擾是一級對一級的干擾,而不像PLL那樣是一個閉迴路
. F& K8 e% J4 x8 n/ \! h$ A0 t" G所以,對於PLL和DLL來說,兩者對於noise的免疫能力來自於VCO和delay cell是採用單端電路實現還是differential架構來實現,再來就是noise的影響對於PLL來說,因為它是閉迴路,故而noise的影響會造成迴路的變動,進而使得PLL需要在迴路之中有所自我調整(自我變化)來讓迴路對於noise的產生有所反應,但對DLL而言,noise的產生影響是當時一級一級的反應,過了這個時間,noise的影響不會像PLL那樣需要整個閉迴路作自我調整
/ X" ~) R# z# T. @也就是說,VCO和delay cell對於noise的免疫能力要看它採用什麼架構,兩者基本上都有同樣的noise影響問題,只不過VCO是閉迴路,所以noise會讓閉迴路產生較大的反應,但delay cell是一級一級的,noise的影響只在當下的時間會產生影響,所以,DLL對於noise的影響程度就會比PLL小得多
' X4 n6 U0 M( b' K
8 ]- b( l0 L4 p6 _0 w& x- ~; e再來是精確度的考量+ k& J0 A- O9 w3 \4 J
DLL的精確度來自於delay cell的一級delay time,此值若能愈小,相對的,DLL的精確度就會愈好,因為一級的delay time大都在ns' z6 q, T3 _2 I5 G
而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
1 D6 c9 Q2 B7 S- W- [如此一來,當然是DLL的精確度會高於PLL,如果PLL的VCO gain和chrage pump current都能有所調整的話,PLL的精確度也可以高過DLL,只不過那會產生出一些問題% [* p# V6 o0 T- i; X$ Y
8 V! W& h( I: h+ g6 M6 J至於面積和功耗的考量,其實這要看DLL的精確度
7 ], j+ v/ }8 A* R如我剛才所提,假若DLL的精確度在每個delay cell只有數個ns,那你需要多少級的delay cell,級數愈多,所需的面積和功耗也就會愈大0 _7 ^7 i' t1 K' b+ k; {
相對的,PLL的VCO通常是3,4,5級之間,若和DLL相比之下,當然,極有可能會比較小
2 N9 J" }) J0 `! [; N7 y但,如果DLL犠牲它的精確度來換取面積和功耗的話,那PLL的精確度會否小於DLL,那就需要去計算才能夠比較 |