PLL Loop Parameters

Definition of Transfer Function and Desired Loop Parameters

Remove["Global`*"]

f[T_]=ϕ-ArcTan[(γ/(ωc T (1+T31+T41)))]+ArcTan[ωc T]+ArcTan[ωc T T31]+ArcTan[ωc T T41];

DeanSet={ϕ->.8343,γ->1.115,ωc->1.2566*(10^5),T31->2.5,T41->0.4,Kϕ->0.005,Kvco->44*(10^6),A->-1,n->4882,LoopCap->0.5079 (10^(-9))};
AndrewSet={ϕ->47.8*(π/180),γ->1.115,ωc->2 π  .5*(10^6),T31->2.5,T41->0.4,Kvco->40*(10^6),Kϕ->.005,Kvco->40*(10^6),A->-1,n->100,LoopCap->.5 (10^(-9))};

Deans Settings (test)

Time Constants

Plot[f[T1]/.DeanSet,{T1,0,(10^(-6))}]

Tsoln =FindRoot[f[T]==0/.DeanSet,{T,(10^(-8))}];

T1=T/.Tsoln;
T3=T1*T31/.DeanSet;
T4=T1*T41/.DeanSet;

T2=(γ/(((ωc)^2)(T1+T3+T4)))/.DeanSet;

A0 = ((Kϕ*Kvco *Abs[A])/(((ωc)^2)n))(Sqrt[((1+((ωc)^2)(T2^2))/((1+((ωc)^2)(T1^2))(1+((ωc)^2)(T3^2))(1+((ωc)^2)(T4^2))))])/.DeanSet;

(10^9)T1
(10^9)T2
(10^9)T3
(10^9)T4
(10^9)A0

Physical Values

C1=(T1/T2)A0;
C2=(1-(T1/T2))A0;
R2=(T2/C2);
C4=(LoopCap/.DeanSet);
C3=C4 ((4 T3 T4)/(((T3-T4))^2));
R3=((T3+T4)/(2(C3+C4)));
R4=((T3+T4)/(2 C4));

Capacitors [pF]

C1*(10^12)
C2*(10^12)
C3*(10^12)
C4*(10^12)

Resistors [Ω]

R2
R3
R4

My Settings

Plot[f[T1]/.AndrewSet,{T1,(10^(-10)),(10^(-7))}]

Tsoln =FindRoot[f[T]==0/.AndrewSet,{T,(10^(-8))}];
T1=T/.Tsoln;
T3=T1*T31/.AndrewSet;
T4=T1*T41/.AndrewSet;
T2=(γ/(((ωc)^2)(T1+T3+T4)))/.AndrewSet;
A0 = ((Kϕ*Kvco *Abs[A])/(((ωc)^2)n))(Sqrt[((1+((ωc)^2)(T2^2))/((1+((ωc)^2)(T1^2))(1+((ωc)^2)(T3^2))(1+((ωc)^2)(T4^2))))])/.AndrewSet;

(10^9)T1
(10^9)T2
(10^9)T3
(10^9)T4
(10^9)A0

C1=(T1/T2)A0;
C2=(1-(T1/T2))A0;
R2=(T2/C2);
C4=(LoopCap/.AndrewSet);
C3=C4 ((4 T3 T4)/(((T3-T4))^2));
R3=((T3+T4)/(2(C3+C4)));
R4=((T3+T4)/(2 C4));

Capacitors [pF]

C1*(10^12)
C2*(10^12)
C3*(10^12)
C4*(10^12)

Resistors [Ω]

R2
R3
R4

Inverted Equations In Terms of Physical Components

Consistency Check

Time Constants

ExpSet ={eC1->21.19*(10^(-12)),eC2->558.28*(10^(-12)),eC3->453.5*(10^(-12)),eC4->500*(10^(-12)),eR2->1594.15,eR3->49.5,eR4->94.4};

eA0=(eC1+eC2)/.ExpSet;
eT2=(eR2 eC2)/.ExpSet;
eT1=((eC1/eA0))eT2/.ExpSet;

α =4 (1+(eC4/eC3));
β= α eR4 eC4 ;
δ=(((2 eR4 eC4))^2);
((β+(Sqrt[(β^2)-α δ]))/α)/.ExpSet
((β-(Sqrt[(β^2)-α δ]))/α)/.ExpSet

eT4=((β-(Sqrt[(β^2)-α δ]))/α)/.ExpSet;
eT3=(2 eR4 eC4 -eT4)/.ExpSet;

Bandwidth and Phase Margin

Plot[(ω^4)(1+(((ω T1))^2))(1+(((ω T3))^2))(1+(((ω T4))^2))-(((((Kϕ Kvco A)/(n eA0))))^2)(1+(((ω T2))^2))/.AndrewSet,{ω,3 (10^6),3.2 (10^6)}]

Δω=ω/.FindRoot[(ω^4)(1+(((ω T1))^2))(1+(((ω T3))^2))(1+(((ω T4))^2))-(((((Kϕ Kvco A)/(n eA0))))^2)(1+(((ω T2))^2))/.AndrewSet,{ω, 3*(10^6)}]

eϕ=ArcTan[(γ/(Δω eT1 (1+(eT3/eT1)+(eT4/eT1))))]-ArcTan[Δω eT1]-ArcTan[Δω eT1 (eT3/eT1)]-ArcTan[Δω eT1 (eT4/eT1)]/.AndrewSet;

Bandwidth [kHz]

((Δω)/(2 π ))(10^(-3))

Phase Margin [degrees]

(180/π) eϕ

Old Parameters

Time Constants

ExpSet ={eC1->1*(10^(-9)),eC2->1*(10^(-9)),eC3->1*(10^(-9)),eC4->1000*(10^(-12)),eR2->1000,eR3->1000,eR4->1000};

eA0=(eC1+eC2)/.ExpSet;
eT2=(eR2 eC2)/.ExpSet;
eT1=((eC1/eA0))eT2/.ExpSet;

α =4 (1+(eC4/eC3));
β= α eR4 eC4 ;
δ=(((2 eR4 eC4))^2);
((β+(Sqrt[(β^2)-α δ]))/α)/.ExpSet
((β-(Sqrt[(β^2)-α δ]))/α)/.ExpSet

eT4=((β-(Sqrt[(β^2)-α δ]))/α)/.ExpSet;
eT3=(2 eR4 eC4 -eT4)/.ExpSet;

Bandwidth and Phase Margin

Plot[(ω^4)(1+(((ω T1))^2))(1+(((ω T3))^2))(1+(((ω T4))^2))-(((((Kϕ Kvco A)/(n eA0))))^2)(1+(((ω T2))^2))/.AndrewSet,{ω, 1.1 (10^6),1.3 (10^6)}]

Δω=ω/.FindRoot[(ω^4)(1+(((ω T1))^2))(1+(((ω T3))^2))(1+(((ω T4))^2))-(((((Kϕ Kvco A)/(n eA0))))^2)(1+(((ω T2))^2))/.AndrewSet,{ω, 1.2*(10^6)}]

eϕ=ArcTan[(γ/(Δω eT1 (1+(eT3/eT1)+(eT4/eT1))))]-ArcTan[Δω eT1]-ArcTan[Δω eT1 (eT3/eT1)]-ArcTan[Δω eT1 (eT4/eT1)]/.AndrewSet;

Bandwidth [kHz]

((Δω)/(2 π ))(10^(-3))

Phase Margin [degrees]

(180/π) eϕ

N[(eT3/eT1)]
N[(eT4/eT1)]

New Parameters

Time Constants

ExpSet ={eC1->22*(10^(-12)),eC2->560*(10^(-12)),eC3->470*(10^(-12)),eC4->470*(10^(-12)),eR2->1500,eR3->47,eR4->100};

eA0=(eC1+eC2)/.ExpSet;
eT2=(eR2 eC2)/.ExpSet;
eT1=((eC1/eA0))eT2/.ExpSet;

α =4 (1+(eC4/eC3));
β= α eR4 eC4 ;
δ=(((2 eR4 eC4))^2);
((β+(Sqrt[(β^2)-α δ]))/α)/.ExpSet
((β-(Sqrt[(β^2)-α δ]))/α)/.ExpSet

eT4=((β-(Sqrt[(β^2)-α δ]))/α)/.ExpSet;
eT3=(2 eR4 eC4 -eT4)/.ExpSet;

Find Bandwidth and Phase Margin:

Plot[(ω^4)(1+(((ω T1))^2))(1+(((ω T3))^2))(1+(((ω T4))^2))-(((((Kϕ Kvco A)/(n eA0))))^2)(1+(((ω T2))^2))/.AndrewSet,{ω, (π/2) (10^6),((3π)/2) (10^6)}]

Δω=ω/.FindRoot[(ω^4)(1+(((ω T1))^2))(1+(((ω T3))^2))(1+(((ω T4))^2))-(((((Kϕ Kvco A)/(n eA0))))^2)(1+(((ω T2))^2))/.AndrewSet,{ω, 3.2*(10^6)}];

eϕ=ArcTan[(γ/(Δω eT1 (1+(eT3/eT1)+(eT4/eT1))))]-ArcTan[Δω eT1]-ArcTan[Δω eT1 (eT3/eT1)]-ArcTan[Δω eT1 (eT4/eT1)]/.AndrewSet;

Bandwidth [kHz] (want 500 kHz)

((Δω)/(2 π ))(10^(-3))

Phase Margin [degrees] (want (47.8^o))

(180/π) eϕ

Pole Ratio 3 to 1 (Want 2.5)

N[(eT3/eT1)]

Pole Ratio 4 to 1 (want 0.4)

N[(eT4/eT1)]

Capacitors (Subscript[C, 1]) to (Subscript[C, 4]) [pF]

eC1*(10^12)/.ExpSet
eC2*(10^12)/.ExpSet
eC3*(10^12)/.ExpSet
eC4*(10^12)/.ExpSet

Resistors (Subscript[R, 2]) to (Subscript[R, 3]) [Ω]

eR2/.ExpSet
eR3/.ExpSet
eR4/.ExpSet