PLL開迴路與閉迴路響應模擬
想模擬PLL的頻率響應時,會遇到PFD,CP,LPF,VCO,Divider電路難以建立實際模型的問題, 這篇文章使用替代元件,把Phase domain元件取代成V與I Domain元件,來模擬PLL頻率響應,可以直接透過Hspice或是Spectre完成對PLL的頻率響應模擬。
1.PLL Modeling
首先對Charge pump PLL進行建模,迴路包含PFD, CP, LPF, VCO, Divider電路,為了方便演示,使用一階的迴路濾波器。
把Divider回授給PFD的連線斷開,就可以列出開迴路轉移函式H(s),open。
\[H(s)_{open} = \underbrace{\frac{I_{cp}}{2\pi}}_{CP+PFD} \cdot \underbrace{\frac{sR_1C_1 + 1}{sC_1}}_{LPF} \cdot \underbrace{\frac{2\pi \cdot K_{VCO}}{s}}_{VCO} \cdot \underbrace{\frac{1}{M}}_{Divider}\]整理後可得
\[H(s)_{open} = \frac{(sR_1C_1 + 1)I_{cp}K_{VCO}}{s^2C_1M}\]其中參數為
ICP : Charge pump output current(A)
KVCO: VCO gain(Hz/V)
M: Divide ratio
這邊需要注意的是,由於轉移函式是定義在Phase domain,因此VCO 的轉移函式必須以角頻率 ω 對時間積分才能得到相位(弧度),而不能使用以 Hz 表示的頻率。
因此,若 Kvco 以 Hz/V 定義,就必須再乘上 2π,將單位轉換為ω/V。若軟體跑出來的Kvco單位都是以Hz/V表示,則需要進一步的轉換。
2.Modeling on simulation tool
接著將每一個電路使用替代的元件表示出來,這邊會使用到壓控電壓源(VCVS)與壓控電流源(VCCS),把分析上的相位轉換到電壓與電流Domain,並在Virtuoso上建立電路圖。
為了觀察頻率響應,使用AC電壓源掛在輸入端VIN,接著使用轉導G0(VCCS)代替CP,把電壓轉換成電流提供給迴路濾波器,接著迴路濾波器又將電流轉換成電壓控制VCO。
VCO的轉移函式為Kvco/s,除了增益項Kvco,還需要表示laplace變換後的1/s(積分器),這部分可以把電流通入一個1F的電容來解決,由於電容在s domain的阻抗為1/sC,若C=1F則轉移函式為1/s,搭配上轉導項G1(VCCS)就可以表示出VCO的轉移函式。
最後除頻器把VCO輸出電壓除上一個比例就可以表示了,這邊使用E0(VCVS)來實現除頻器的除數。
Note PFD&CP 的增益中包含 1/(2π),而 VCO 由 Hz/V 轉換為 rad/s/V 時需要乘上 2π,兩者因此互相抵消。
3.Open-loop Frequency response
執行AC模擬後觀察輸出的開迴路頻率響應,透過相位裕度(Phase margin)可以幫助判斷迴路的穩定度。
紅線為開迴路增益,黃線為相位,由於使用一階loop filter,故LPF只提供了一個零點與極點,Phase margin為83度。
4.Closed-loop Frequency response
接著把divider的輸出接回PFD,形成閉迴路形式。
列出閉迴路轉移函式
\[H(s)_{closed} = \frac{\emptyset_{OUT}}{\emptyset_{IN}} = M \cdot \frac{s \cdot \frac{I_{CP} \cdot K_{VCO} \cdot R_1}{2\pi} + \frac{I_{CP} \cdot K_{VCO}}{2\pi \cdot C_1}}{s^2 + s \cdot \frac{I_{CP} \cdot K_{VCO} \cdot R_1}{2\pi} + \frac{I_{CP} \cdot K_{VCO}}{2\pi \cdot C_1}}\]執行AC模擬,獲得輸入與VCO輸出的頻率響應。
閉迴路頻率響應表示了Reference Clock到VCO輸出的轉移函式,由於divider除數設計為33,故閉迴路響應在低頻時具有約30dB增益(20log33),表示PLL把輸入相位增加了33倍(即頻率增加33倍),另外閉迴路響應也可以看出PLL的頻寬表現。




