From b1f5c3f8d6671b4331cef1dcebdf63b7a43a3a2b Mon Sep 17 00:00:00 2001 From: priyanka Date: Wed, 24 Jun 2015 15:03:17 +0530 Subject: initial commit / add all books --- 339/CH7/EX7.1/ex7_1.jpg | Bin 0 -> 49458 bytes 339/CH7/EX7.1/ex7_1.sce | 61 +++++++++++++++++++++++++++++++++++++ 339/CH7/EX7.4/ex7_4.sce | 79 ++++++++++++++++++++++++++++++++++++++++++++++++ 339/CH7/EX7.5/ex7_5.sce | 14 +++++++++ 339/CH7/EX7.6/ex7_6.sce | 18 +++++++++++ 5 files changed, 172 insertions(+) create mode 100755 339/CH7/EX7.1/ex7_1.jpg create mode 100755 339/CH7/EX7.1/ex7_1.sce create mode 100755 339/CH7/EX7.4/ex7_4.sce create mode 100755 339/CH7/EX7.5/ex7_5.sce create mode 100755 339/CH7/EX7.6/ex7_6.sce (limited to '339/CH7') diff --git a/339/CH7/EX7.1/ex7_1.jpg b/339/CH7/EX7.1/ex7_1.jpg new file mode 100755 index 000000000..55061021e Binary files /dev/null and b/339/CH7/EX7.1/ex7_1.jpg differ diff --git a/339/CH7/EX7.1/ex7_1.sce b/339/CH7/EX7.1/ex7_1.sce new file mode 100755 index 000000000..023f073f1 --- /dev/null +++ b/339/CH7/EX7.1/ex7_1.sce @@ -0,0 +1,61 @@ +//define problem parameters +TT=500e-12; // transit time +T0=300; //temperature +Is0=5e-15; // reverse saturation current at 300K +Rs=1.5; // series resistance +nn=1.16; //emission coefficient + +// parameters needed to describe temperature behavior of +// the band-gap energy in Si +alpha=7.02e-4; +beta=1108; +Wg0=1.16; +pt=3; + +// quiescent current +Iq=50e-3; + +// frequency range 10MHz to 1GHz +f_min=10e6; // lower limit +f_max=1e9; //upper limit +N=300; // number of points in the graph +f=f_min*((f_max/f_min).^((0:N)/N)); // compute frequency points on log scale + +// temperatures for which analysis will be performed +T_points=[250 300 350 400]; + +// define physical constants +q=1.60218e-19; // electron charge +k=1.38066e-23; // Boltzmann's constant + +for n=1:length(T_points) + T=T_points(n); + s=sprintf('T=%.f\n',T); + Vt=k*T/q; + + Wg=Wg0-alpha*T^2/(beta+T); + s=sprintf('%s Wg(T)=%f\n',s,Wg); + + Is=Is0*(T/T0)^(pt/nn)*exp(-Wg/Vt*(1-T/T0)); + s=sprintf('%s Is(T)=%e\n',s,Is); + + Vq=nn*Vt*log(1+Iq/Is); + s=sprintf('%s Vq(T)=%f\n',s,Vq); + + Rd=nn*Vt/Iq; + s=sprintf('%s Rd(T)=%f\n',s,Rd); + + Cd=Is*TT/nn/Vt*exp(Vq/nn/Vt); + s=sprintf('%s Cd(T)=%fpF\n',s,Cd/1e-12) + + Zc=1./(%i*2*%pi*f*Cd); + + Zin=Rs+Rd*Zc./(Rd+Zc); + + plot(f/1e6,abs(Zin)); + set(gca(),"auto_clear","off"); +end; + +title('Frequency behavior of small-signal diode model'); +xlabel('Frequency {\itf}, MHz'); +ylabel('Impedance |Z|, \Omega'); \ No newline at end of file diff --git a/339/CH7/EX7.4/ex7_4.sce b/339/CH7/EX7.4/ex7_4.sce new file mode 100755 index 000000000..ee8f7bfae --- /dev/null +++ b/339/CH7/EX7.4/ex7_4.sce @@ -0,0 +1,79 @@ +//first we define all parameters for the transistor and the circuit +Z0=50; //characteristic imedance of the system + +Vcc=3.6; //power supply voltage +Vce=2; //collector voltage +Ic=10e-3; //collector current + +T=300; //ambient temperature (300K) + +//transistor parameters (they are very similar to BFG403W) +beta=145; // current gain +Is=5.5e-18; // saturation current +VAN= 30; // forward Early voltage +tau_f=4e-12; // forward transition time +rb=125; // base resistance +rc=15; // collector resistance +re=1.5; // emitter resistance +Lb=1.1e-9; // base inductance +Lc=1.1e-9; // collector inductance +Le=0.5e-9; // emitter inductance +Cjc=16e-15; // collector junction capacitance at zero applied voltage +mc=0.2; // collector junction grading coefficient +Cje=37e-15; // emitter junction capacitance at zero applied voltage +me=0.35; // emitter junction grading coefficient +phi_be=0.9; // base-emitter diffusion potential +phi_bc=0.6; // base-collector diffusion potential +Vbe=phi_be; // base-emitter voltage + +// some physical constants +k=1.38e-23; // Boltzmann's constant +q=1.6e-19; // elementary charge +VT=k*T/q; // thermal potential + +disp('DC biasing parameters'); + +Ib=Ic/beta; +disp("Amperes",Ib,"Base current"); + +Rc=(Vcc-Vce)/Ic; +disp("Ohms",Rc,"Collector resistance"); + +Rb=(Vcc-Vbe)/Ib; +disp("Ohms",Rb,"Base resistance"); + + +r_pi=VT/Ib; +disp("Ohms",r_pi,"Rpi"); + +r0=VAN/Ic; +disp("Ohms",r0,"R0"); + +gm=beta/r_pi; +disp("Mho",gm,"Gm"); + +Vbc=Vbe-Vce; +Cmu=Cjc*(1-Vbc/phi_bc)^(-mc); +disp("Farads",Cmu,"base collector capacitance"); + +if(Vbe<0.5*phi_be) + Cpi_junct=Cje*(1-Vbe/phi_be)^(-me); +else + C_middle=Cje*0.5^(-me); + k_middle=1-0.5*me; + Cpi_junct=C_middle*(k_middle+me*Vbe/phi_be); +end; + +disp("Farads",Cpi_junct,"Junction Capacitance"); + +Cpi_diff=Is*tau_f/VT*exp(Vbe/VT); +disp("Farads",Cpi_diff,"Differential capacitance"); + +Cpi=Cpi_junct+Cpi_diff; +disp("Farads",Cpi,"Total Capacitance"); + +C_miller=Cmu*(1+gm*r_pi/(r_pi+rb)*Z0*r0/(r0+rc+Z0)); +disp("Farads",C_miller,"Miller Capacitance"); + +C_input=Cpi+C_miller; +disp("Farads",C_input,"Total input capacitance"); \ No newline at end of file diff --git a/339/CH7/EX7.5/ex7_5.sce b/339/CH7/EX7.5/ex7_5.sce new file mode 100755 index 000000000..eb2a3ba25 --- /dev/null +++ b/339/CH7/EX7.5/ex7_5.sce @@ -0,0 +1,14 @@ +l=1*10^-6; //length +w=200*10^-6; //width +d=0.5*10^-6; //depth +E0=8.854*10^-12; +Er=13.1; +q=1.6*10^-19; //electron charge +Nd=1*10^16; //doping concentration +mun=8500; +Vp=(q*Nd*d^2)/(2*Er*E0); +G0=(q*mun*Nd*w)/l; +gm=0.0358; +Cap=(E0*Er*w*l)/d; +fT=gm/(2*%pi*Cap); +disp("Hertz",fT,"Cut off frequency"); \ No newline at end of file diff --git a/339/CH7/EX7.6/ex7_6.sce b/339/CH7/EX7.6/ex7_6.sce new file mode 100755 index 000000000..1f085d47d --- /dev/null +++ b/339/CH7/EX7.6/ex7_6.sce @@ -0,0 +1,18 @@ +Icq=6*10^-3; +Ibq=40*10^-6; +Van=30; //Early voltage +q=1.6*10^-19; +k=1.38*10^-23; +T=300; +fT=37*10^9; //Transition frequency +gm=(Icq*q)/(k*T); +beta0=Icq/Ibq; +r0=Van/Icq; +rpi=beta0/gm; +Cpi=(beta0)/(2*%pi*fT*rpi); +disp("Hybrid pi parametrs without Miller effect"); +disp("Mho",gm,"gm"); +disp("Ohms",rpi,"Rpi"); +disp("Farads",Cpi,"Cpi"); +disp("Ohms",r0,"R0"); +disp(beta0,"Beta0"); \ No newline at end of file -- cgit