Vdd = 1.2;
CL = 0.2e-12;
F = 5e9;
omega = 2*pi*F;
PNSpec = 0.7e-11;
FOff = 6e5;
LoopGainSpec = 2.0;
Vbias = 0.2;
T = 0.1;
CvarRatio = 3;
CswBits = 3;
CswSegs = 2^(CswBits);
CvarCswLSBOverlap = 2;
gpvar D;
gpvar W;
gpvar SRF;
gpvar l;
gpvar w;
gpvar I;
gpvar VOsc;
gpvar CT;
gpvar Csw;
gpvar Cvar;
gpvar IBias;
gpvar CMaxFreq;
SRFSpec = 3*F;
omegaSRF = 2*pi*SRF;
L = 2.1e-06*D^(1.28)*(W)^(-0.25)*(F)^(-0.01);
R = 0.1*D/W+3e-6*D*W^(-0.84)*F^(0.5)+5e-9*D*W^(-0.76)*F^(0.75)+0.02*D*W*F;
C = 1e-11*D+5e-6*D*W;
Area = (D+W)^2;
G = R/(omega*L)^2;
invQ = R/(omega*L);
loop_constr = [ Area <= 0.25e-6;
W <= 30e-6;
5e-6 <= W;
10*W <= D;
D <= 100*W;
SRFSpec <= SRF;
omegaSRF^2*L*C <= 1 ];
GM = 6e-3*(w/l)^0.6*(I/2)^(0.4);
GD = 4e-10*(w/l)^0.4*(I/2)^(0.6)*1/l;
Vgs = 0.34+1e-8/l+800*(I*l/(2*w))^0.7;
Cgs = 1e-2*w*l;
Cgd = 1e-9*w;
Cdb = 1e-9*w;
transistor_constr = [ 2e-6 <= w;
0.13e-6 <= l;
l <= 1e-6 ];
power = Vdd*IBias;
invVOsc = (G+GD)/IBias;
kT4 = 4*1.38e-23*300;
kT4G = 2*kT4;
LoopCurrentNoise = kT4*G;
TransistorCurrentNoise = 0.5*kT4G*GM;
PN = 1/(160*(FOff*VOsc*CT)^2)*(LoopCurrentNoise+TransistorCurrentNoise);
Cfix = C+0.5*(CL+Cgs+Cdb+4*Cgd);
CDiffMaxFreq = Cfix+0.5*Cvar;
invLoopGain=(G+0.5*GD)/(0.5*GM);
constr = [ PN <= PNSpec;
loop_constr;
transistor_constr;
omega^2*L*CT == 1;
omega^2*(1+T)^2*L*CMaxFreq == 1;
4*T/((1-T^2)^2)*CT <= Csw*(1+CvarCswLSBOverlap/CswSegs);
Csw*CvarCswLSBOverlap/CswSegs <= 0.5*Cvar*(CvarRatio-1);
CDiffMaxFreq <= CMaxFreq;
VOsc+2*Vbias <= 2*Vdd;
VOsc*invVOsc <= 1;
invLoopGain*LoopGainSpec <= 1;
Vbias+Vgs+IBias/2*R/2 <= Vdd;
I == IBias ];
global QUIET; QUIET = 1;
powers = [];
for T = 0.15
for PNSpec=0.7e-12:0.2e-12:1e-11
constr(1) = PN <= PNSpec;
[min_power solution status] = gpsolve(power,constr);
powers = [powers min_power];
end
end
global QUIET; QUIET = 0;
PNSpec = [0.7e-12:0.2e-12:1e-11];
plot(10*log10(PNSpec),powers/1e-3);
xlabel('Phase Noise (dBc/Hz)')
ylabel('Power (mW)')
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.
Problem succesfully solved.