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 --- 3515/CH4/EX4.1/Ex4_1.sce | 38 ++++++++++++++++++++++++++ 3515/CH4/EX4.10/Ex4_10.sce | 33 +++++++++++++++++++++++ 3515/CH4/EX4.11/Ex4_11.sce | 36 +++++++++++++++++++++++++ 3515/CH4/EX4.12/Ex4_12.sce | 25 ++++++++++++++++++ 3515/CH4/EX4.13/Ex4_13.sce | 37 ++++++++++++++++++++++++++ 3515/CH4/EX4.14/Ex4_14.sce | 19 +++++++++++++ 3515/CH4/EX4.15/Ex4_15.sce | 23 ++++++++++++++++ 3515/CH4/EX4.16/Ex4_16.sce | 25 ++++++++++++++++++ 3515/CH4/EX4.2/Ex4_2.sce | 66 ++++++++++++++++++++++++++++++++++++++++++++++ 3515/CH4/EX4.3/Ex4_3.sce | 22 ++++++++++++++++ 3515/CH4/EX4.4/Ex4_4.sce | 28 ++++++++++++++++++++ 3515/CH4/EX4.5/Ex4_5.sce | 56 +++++++++++++++++++++++++++++++++++++++ 3515/CH4/EX4.6/Ex4_6.sce | 26 ++++++++++++++++++ 3515/CH4/EX4.7/Ex4_7.sce | 19 +++++++++++++ 3515/CH4/EX4.8/Ex4_8.sce | 12 +++++++++ 3515/CH4/EX4.9/Ex4_9.sce | 49 ++++++++++++++++++++++++++++++++++ 16 files changed, 514 insertions(+) create mode 100644 3515/CH4/EX4.1/Ex4_1.sce create mode 100644 3515/CH4/EX4.10/Ex4_10.sce create mode 100644 3515/CH4/EX4.11/Ex4_11.sce create mode 100644 3515/CH4/EX4.12/Ex4_12.sce create mode 100644 3515/CH4/EX4.13/Ex4_13.sce create mode 100644 3515/CH4/EX4.14/Ex4_14.sce create mode 100644 3515/CH4/EX4.15/Ex4_15.sce create mode 100644 3515/CH4/EX4.16/Ex4_16.sce create mode 100644 3515/CH4/EX4.2/Ex4_2.sce create mode 100644 3515/CH4/EX4.3/Ex4_3.sce create mode 100644 3515/CH4/EX4.4/Ex4_4.sce create mode 100644 3515/CH4/EX4.5/Ex4_5.sce create mode 100644 3515/CH4/EX4.6/Ex4_6.sce create mode 100644 3515/CH4/EX4.7/Ex4_7.sce create mode 100644 3515/CH4/EX4.8/Ex4_8.sce create mode 100644 3515/CH4/EX4.9/Ex4_9.sce (limited to '3515/CH4') diff --git a/3515/CH4/EX4.1/Ex4_1.sce b/3515/CH4/EX4.1/Ex4_1.sce new file mode 100644 index 000000000..a0f0811f8 --- /dev/null +++ b/3515/CH4/EX4.1/Ex4_1.sce @@ -0,0 +1,38 @@ +// Exa 4.1 +format('v',7); +clc; +clear; +close; +// Given data +V_CC= 10;// in volt +V_EE= -10;// in volt +I= 1;// in mA +I=I*10^-3;// in A +R_C= 10;// in kohm +R_C=R_C*10^3;// in kohm +V_BE=0.7;// in volt + +i_C1= I/2;// in A +i_C2= i_C1;// in A +disp(i_C1*10^3,"Value of i_C1 in mA is : ") + +V_C1= V_CC-i_C1*R_C;// in V +// For V_cm=0 volt +V_E= -0.7;// in volt +V_CE1= V_C1-V_E;// in volt +disp(V_CE1,"For V_cm =0 , The alue of V_CE1 in volt is ") + +// For V_cm= -5 volt +V_cm= -5;// in V +V_B= V_cm;// in V +// From V_BE= V_B-V_E +V_E= V_B-V_BE;// in volt +V_CE1= V_C1-V_E;// in volt +disp(V_CE1,"For V_cm =-5V , The alue of V_CE1 in volt is ") + +// For V_cm= 5 volt +V_cm= 5;// in V +V_B= V_cm;// in V +V_E= V_B-V_BE;// in volt +V_CE1= V_C1-V_E;// in volt +disp(V_CE1,"For V_cm =5V , The alue of V_CE1 in volt is ") diff --git a/3515/CH4/EX4.10/Ex4_10.sce b/3515/CH4/EX4.10/Ex4_10.sce new file mode 100644 index 000000000..b22c0dfc0 --- /dev/null +++ b/3515/CH4/EX4.10/Ex4_10.sce @@ -0,0 +1,33 @@ +// Exa 4.10 +format('v',4); +clc; +clear; +close; +// Given data +delta_RDbyRD= 2/100; +delta_WLbyWL= 2/100; +delta_Vt= 2;//in mV +delta_Vt= delta_Vt*10^-3;// in V +//(From Exa 4.4) +V_A= 20;// in V +R_D= 5;// in kΩ +R_D= R_D*10^3;// in Ω +I= 0.8;// in mA +I=I*10^-3;// in A +i_D= I/2;// in A +unCox= 0.2;// mA/V^2 +unCox= unCox*10^-3;// in A/V^2 +WbyL= 100; +// Formula i_D= 1/2*unCox*WbyL*V_OV^2 +V_OV= sqrt(2*i_D/(unCox*WbyL));// in V +V_OS1= V_OV/2*delta_RDbyRD;// in V + +// V_OS due to W/L ratio +V_OS2= V_OV/2*delta_WLbyWL;// in V + +// V_OS due to threshold voltage +V_OS3= delta_Vt;// in V +// Total offset voltage +V_OS= sqrt(V_OS1^2+V_OS2^2+V_OS3^2);// in V +V_OS= V_OS*10^3;// in mV +disp(V_OS,"Total offset voltage in mV is : ") diff --git a/3515/CH4/EX4.11/Ex4_11.sce b/3515/CH4/EX4.11/Ex4_11.sce new file mode 100644 index 000000000..fd3554937 --- /dev/null +++ b/3515/CH4/EX4.11/Ex4_11.sce @@ -0,0 +1,36 @@ +// Exa 4.11 +format('v',7); +clc; +clear; +close; +// Given data +WLn= 100; +WLp= 200; +unCox= 0.2;// mA/V^2 +unCox=unCox*10^-3;//in A/V^2 +RSS= 25;// in kΩ +RSS= RSS*10^3;// in Ω +I=0.8;// in mA +I=I*10^-3;//in A +V_A= 20;// in V +i_D= I/2;// in A +// Formula i_D= 1/2*unCox*WLn*V_OV^2 +V_OV= sqrt(2*i_D/(unCox*WLn));// in V +gm= I/V_OV;// in A/V +disp(gm*10^3,"Value of Gm in mA/V is : ") +ro2= V_A/(I/2);// in ohm +ro4= ro2;// in ohm +Ro= ro2*ro4/(ro2+ro4);// in ohm +disp(Ro*10^-3,"Value of Ro in kΩ is : ") +Ad= gm*Ro;// in V/V +disp(Ad,"Value of Ad in V/V is :") +// Finding the value of gm3 +upCox= 0.1;// mA/V^2 +upCox=upCox*10^-3;//in A/V^2 +// Formula i_D= 1/2*upCox*WLp*V_OV^2 +V_OV= sqrt(2*i_D/(upCox*WLp));// in V +gm3= I/V_OV;// in A/V +Acm= 1/(2*gm3*RSS);//in V/V +disp(abs(Acm),"Value of |Acm| in V/V is : ") +CMRRindB= 20*log10(abs(Ad)/abs(Acm));//in dB +disp(round(CMRRindB),"CMRR in dB is :") diff --git a/3515/CH4/EX4.12/Ex4_12.sce b/3515/CH4/EX4.12/Ex4_12.sce new file mode 100644 index 000000000..bf04d1d43 --- /dev/null +++ b/3515/CH4/EX4.12/Ex4_12.sce @@ -0,0 +1,25 @@ +// Exa 4.12 +format('v',7); +clc; +clear; +close; +// Given data +I=0.8;// in mA +I=I*10^-3;//in A +V_A= 100;// in V +Bita=160; +VT=25;// in mV +VT= VT*10^-3;//in V +gm= (I/2)/VT;// in A/V +Gm= gm;// Short circuit trnsconductance in mA/V +disp(Gm*10^3,"The value of Gm in mA/V") +ro2= V_A/(I/2);// in ohm +ro4= ro2;// in ohm +Ro= ro2*ro4/(ro2+ro4);// in ohm +disp(Ro*10^-3,"The value of Ro in kΩ is :") +Ad= Gm*Ro;// in V/V +disp(Ad,"Value of Ad in V/V is :") +r_pi= Bita/gm;//in Ω +Rid= 2*r_pi;// in Ω +disp(Rid*10^-3,"The value of Rid in kΩ is :") + diff --git a/3515/CH4/EX4.13/Ex4_13.sce b/3515/CH4/EX4.13/Ex4_13.sce new file mode 100644 index 000000000..021a65536 --- /dev/null +++ b/3515/CH4/EX4.13/Ex4_13.sce @@ -0,0 +1,37 @@ +// Exa 4.13 +format('v',5); +clc; +clear; +close; +// Given data +Vtp= -0.8;// in V +KpWL= 3.5;// in mA/V^2 +I=0.7;// in mA +I=I*10^-3;// in A +R_D= 2;// in kΩ +R_D=R_D*10^3;// in Ω +KpWL=KpWL*10^-3;//in A/V^2 +v_G1= 0;// in V +v_G2=v_G1;// in V +VSS= 2.5;// in V +VDD=VSS;// in V +VCS= 0.5;// in V +// Part (a) +V_OV= -sqrt(I/KpWL);// in V +disp(V_OV,"The value of V_OV in volts is : ") +V_GS= V_OV+Vtp;// in V +disp(V_GS,"The value of V_GS in volts is : ") +V_G= 0;// as gate is connected ground +v_S1= V_G-V_GS;// in V +v_S2= v_S1;// in V +disp(v_S1,"The value of V_S in volts is : ") +v_D1= I/2*R_D-VDD;// in V +v_D2=v_D1;// in V +disp(v_D1,"The value of v_D1 in V is : ") +disp(v_D2,"The value of v_D2 in V is : ") + +// Part (b) +V_CMmin= I*R_D/2-VDD+Vtp;// in V +V_CMmax= VSS-VCS+Vtp+V_OV;// in V +disp(V_CMmin,"The value of V_CMmin in volt is : ") +disp(V_CMmax,"The value of V_CMmax in volt is : ") diff --git a/3515/CH4/EX4.14/Ex4_14.sce b/3515/CH4/EX4.14/Ex4_14.sce new file mode 100644 index 000000000..a35a06e95 --- /dev/null +++ b/3515/CH4/EX4.14/Ex4_14.sce @@ -0,0 +1,19 @@ +// Exa 4.14 +format('v',5); +clc; +clear; +close; +// Given data +V_OV= 0.2;// in V +gm=1;// in mA/V +gm=gm*10^-3;// in A/V +Vt=0.8;// in V +unCox= 90;// in µA/V^2 +unCox=unCox*10^-6;// in A/V^2 +// gm= I/V_OV +I= gm*V_OV;// in A +disp(I*10^3,"Bias current in mA is : ") +I_D= I/2;// in A +// Formula I_D= 1/2*unCox*WLn*V_OV^2 +WbyL= 2*I_D/(unCox*V_OV^2); +disp(WbyL,"W/L ratio is : ") diff --git a/3515/CH4/EX4.15/Ex4_15.sce b/3515/CH4/EX4.15/Ex4_15.sce new file mode 100644 index 000000000..7e38d4ed3 --- /dev/null +++ b/3515/CH4/EX4.15/Ex4_15.sce @@ -0,0 +1,23 @@ +// Exa 4.15 +format('v',5); +clc; +clear; +close; +// Given data +I=0.5;// in mA +I=I*10^-3;// in A +WbyL= 50; +unCox= 250;// in µA/V^2 +unCox=unCox*10^-6;// in A/V^2 +V_A= 10;// in V +R_D= 4;//in kΩ +R_D= R_D*10^3;//in Ω +V_OV= sqrt(I/(WbyL*unCox));//in V +disp(V_OV,"The value of V_OV in V is : ") +gm= I/V_OV;// in A/V +disp(gm*10^3,"The value of gm in mA/V is ") +I_D=I/2;// in A +ro= V_A/I_D;// in Ω +disp(ro*10^-3,"The value of ro in kΩ is : ") +Ad= gm*(R_D*ro/(R_D+ro));// in V/V +disp(Ad,"The value of Ad in V/V is : ") diff --git a/3515/CH4/EX4.16/Ex4_16.sce b/3515/CH4/EX4.16/Ex4_16.sce new file mode 100644 index 000000000..d05e58d69 --- /dev/null +++ b/3515/CH4/EX4.16/Ex4_16.sce @@ -0,0 +1,25 @@ +// Exa 4.16 +format('v',7); +clc; +clear; +close; +// Given data +I=1;// in mA +I=I*10^-3;// in A +i_C=1;// in mA +i_C=i_C*10^-3;// in A +V_CC= 5;// in V +V_CM= -2;// in V +V_BE= 0.7;// in V +R_C= 3;// in kΩ +R_C= R_C*10^3;// in Ω +Alpha=1; +Bita=100; +V_B= 1;// in V +i_C1= Alpha*I;// in A +i_C2=0; +v_E= V_B-V_BE;// in V +disp(v_E,"Emitters voltage in volts is : ") +v_C1= V_CC-i_C1*R_C;// in V +v_C2= V_CC-i_C2*R_C;// in V +disp("Output voltage is "+string(v_C1)+" V and "+string(v_C2)+" V") diff --git a/3515/CH4/EX4.2/Ex4_2.sce b/3515/CH4/EX4.2/Ex4_2.sce new file mode 100644 index 000000000..325d66bd0 --- /dev/null +++ b/3515/CH4/EX4.2/Ex4_2.sce @@ -0,0 +1,66 @@ +// Exa 4.2 +format('v',5); +clc; +clear; +close; +// Given data +V_DD= 1.5;// in V +V_SS= V_DD;// in V +KnWL= 4;// in mA/V^2 +KnWL=KnWL*10^-3;// in A/V^2 +Vt= 0.5;// in V +I=0.4;// in mA +I=I*10^-3;//in A +R_D= 2.5;// in kΩ +R_D= R_D*10^3;// in Ω + +// Part (a) +disp("Part (a)") +V_OV= sqrt(I/KnWL);// in V +V_GS= V_OV+Vt;// in V +disp(V_OV,"Value of V_OV in volt is : ") +disp(V_GS,"Value of V_GS in volt is : ") + +// Part (b) +disp("Part (b)") +V_CM= 0;// in volt +V_S= -V_GS;// in volt +disp(V_S,"Value of V_S in volt is :") +I=0.4;// in mA +i_D1= I/2;// in mA +disp(i_D1,"Value of i_D1 in mA is :") +i_D1=i_D1*10^-3;// in A +V_D1= V_DD-i_D1*R_D;// in V +V_D2=V_D1;// in V +disp(V_D1,"Value of V_D1 in volt is ") +disp(V_D2,"Value of V_D2 in volt is ") + + +// Part (c) +disp("Part (c)") +V_CM=1;// in V +V_GS= 0.82;// in V +V_G= 1;// in V +V_S= V_G-V_GS;// in V +disp(V_S,"Value of V_S in volt is :") +i_D1= I/2;// in mA +disp(i_D1,"Value of i_D1 in mA is :") +i_D1=i_D1*10^-3;// in A +V_D1= V_DD-i_D1*R_D;// in V +V_D2=V_D1;// in V +disp(V_D1,"Value of V_D1 in volt is ") +disp(V_D2,"Value of V_D2 in volt is ") + +// Part (d) +disp("Part (d)") +V_CM_max= Vt+V_DD-i_D1*R_D +disp(V_CM_max,"Highest value of V_CM in volt is :") + +// Part (e) +V_S= 0.4;// in V +disp("Part (e)") +V_CM_min= -V_SS+V_S+Vt+V_OV;// in V +disp(V_CM_min,"Lowest value of V_CM in volt is") +V_Smin= V_CM_min-V_GS;// in volt +disp(V_Smin,"Lowest value of V_S in volt is") + diff --git a/3515/CH4/EX4.3/Ex4_3.sce b/3515/CH4/EX4.3/Ex4_3.sce new file mode 100644 index 000000000..6cc6305e7 --- /dev/null +++ b/3515/CH4/EX4.3/Ex4_3.sce @@ -0,0 +1,22 @@ +// Exa 4.3 +format('v',7); +clc; +clear; +close; +format('v',5) +// Given data +I= 0.4;// in mA +unCox= 0.2;// in mA/V^2 +i_D= I/2;// in mA +V_OV1= 0.2;// in V +V_OV2= 0.3;// in V +V_OV3= 0.4;// in V +WbyL1= 2*i_D/(unCox*V_OV1^2); +gm1= I/V_OV1;// in mA/V +WbyL2= 2*i_D/(unCox*V_OV2^2); +gm2= I/V_OV2;// in mA/V +WbyL3= 2*i_D/(unCox*V_OV3^2); +gm3= I/V_OV3;// in mA/V +disp("Vov (in V) "+string(V_OV1)+" "+string(V_OV2)+" "+string(V_OV3)) +disp("W/L "+string(WbyL1)+" "+string(WbyL2)+" "+string(WbyL3)) +disp("gm(in mA/V) "+string(gm1)+" "+string(gm2)+" "+string(gm3)) diff --git a/3515/CH4/EX4.4/Ex4_4.sce b/3515/CH4/EX4.4/Ex4_4.sce new file mode 100644 index 000000000..b15a1cd7c --- /dev/null +++ b/3515/CH4/EX4.4/Ex4_4.sce @@ -0,0 +1,28 @@ +// Exa 4.4 +format('v',7); +clc; +clear; +close; +// Given data +format('v',11) +V_A= 20;// in V +R_D= 5;// in kΩ +R_D= R_D*10^3;// in Ω +I= 0.8;// in mA +I=I*10^-3;// in A +i_D= I/2;// in A +unCox= 0.2;// mA/V^2 +unCox= unCox*10^-3;// in A/V^2 +WbyL= 100; +// Formula i_D= 1/2*unCox*WbyL*V_OV^2 +V_OV= sqrt(2*i_D/(unCox*WbyL));// in V +disp(V_OV,"The value of V_OV in volts is : ") +gm= I/V_OV;// in A/V; +disp(gm*10^3,"The value of gm in mA/V is : ") +r_o= V_A/i_D;// in Ω +disp(r_o*10^-3,"The value of r_o in kΩ is : ") +// Ad= v_o/v_id = gm*(R_D || r_o) +Ad= gm*(R_D*r_o/(R_D+r_o)) ;// in V/V +disp(Ad,"Differential gain in V/V is : ") + + diff --git a/3515/CH4/EX4.5/Ex4_5.sce b/3515/CH4/EX4.5/Ex4_5.sce new file mode 100644 index 000000000..66a7d231f --- /dev/null +++ b/3515/CH4/EX4.5/Ex4_5.sce @@ -0,0 +1,56 @@ +// Exa 4.5 +format('v',7); +clc; +clear; +close; +// Given data +R_D= 5;// in kΩ +R_D= R_D*10^3;// in Ω +R_SS= 25;// in kΩ +R_SS= R_SS*10^3;// in Ω +I= 0.8;// in mA +I=I*10^-3;// in A +i_D= I/2;// in A +unCox= 0.2;// mA/V^2 +unCox= unCox*10^-3;// in A/V^2 +WbyL= 100; +// Formula i_D= 1/2*unCox*WbyL*V_OV^2 +V_OV= sqrt(2*i_D/(unCox*WbyL));// in V +gm= i_D/V_OV;// in A/V; + +// Part (a) +Ad= 1/2*gm*R_D;// in V/V +disp(Ad,"Differential gain in V/V is : ") +Acm= -R_D/(2*R_SS);// in V/V +disp(Acm,"Common mode gain in V/V is ") +CMRR= abs(Ad)/abs(Acm); +CMRRindB= round(20*log10(CMRR));// in dB +disp(CMRRindB,"Common mode rejection ratio in dB is : ") + + +// Part (b) +disp("Part (b) when output is taken differentially") +Ad= gm*R_D;// in V/V +disp(Ad,"Differential gain in V/V is : ") +Acm= 0; +disp(Acm,"Common mode gain in V/V is ") +// CMRRindB= 20*log10(Ad/Acm) = infinite ;// in dB +disp("Common mode rejection ratio in dB is : ") +disp("infinite"); + +// Part (c) +disp("Part (c) when output is taken differentially but the drain resistance have a 1% mismatch.") +Ad= gm*R_D;// in V/V +disp(Ad,"Differential gain in V/V is : ") +// delta_R_D= 1% of R_D +delta_R_D= R_D*1/100;// in Ω +Acm= R_D/(2*R_SS)*delta_R_D/R_D;// in V/V +disp(Acm,"Common mode gain in V/V is ") +CMRRindB= 20*log10(abs(Ad)/abs(Acm));// in dB +disp(CMRRindB,"Common mode rejection ratio in dB is : ") + +// Note: In the book, there is putting wrong value of Ad (20 at place of 10) to evaluate the value of CMRR in dB in part(c) , So the answer of CMRR in dB of Part (c) is wrong + + + + diff --git a/3515/CH4/EX4.6/Ex4_6.sce b/3515/CH4/EX4.6/Ex4_6.sce new file mode 100644 index 000000000..deb8412b9 --- /dev/null +++ b/3515/CH4/EX4.6/Ex4_6.sce @@ -0,0 +1,26 @@ +// Exa 4.6 +format('v',7); +clc; +clear; +close; +// Given data (From Exa 4.4) +R_D= 5;// in kΩ +R_D= R_D*10^3;// in Ω +R_SS= 25;// in kΩ +R_SS= R_SS*10^3;// in Ω +I= 0.8;// in mA +I=I*10^-3;// in A +i_D= I/2;// in A +unCox= 0.2;// mA/V^2 +unCox= unCox*10^-3;// in A/V^2 +WbyL= 100; +// Formula i_D= 1/2*unCox*WbyL*V_OV^2 +V_OV= sqrt(2*i_D/(unCox*WbyL));// in V +gm= i_D/V_OV;// in A/V; +// gm mismatch have a negligible effect on Ad +Ad= gm*R_D;// in V/V(approx) +// delta_gm= 1% of gm +delta_gm = gm*1/100;// in A/V +Acm= R_D/(2*R_SS)*delta_gm/gm; +CMRRindB= 20*log10(Ad/Acm); +disp(CMRRindB,"CMRR in dB is : ") diff --git a/3515/CH4/EX4.7/Ex4_7.sce b/3515/CH4/EX4.7/Ex4_7.sce new file mode 100644 index 000000000..9a7de15af --- /dev/null +++ b/3515/CH4/EX4.7/Ex4_7.sce @@ -0,0 +1,19 @@ +// Exa 4.7 +format('v',7); +clc; +clear; +close; +// Given data +V_CM= 0; +V_BE= -0.7;// in volt +v_E= V_CM-V_BE;// in volt +disp(v_E,"Value of v_E in volts is : ") + +I_E= (5-0.7)/10^3;// in A +v_B1= 0.5;// in V +v_B2= 0;// in V +// Due to Q1 is off; therefore +v_C1= -5;// in V +v_C2= I_E*10^3-5;// in V +disp(v_C1,"Value of v_C1 in volts is : ") +disp(v_C2,"Value of v_C2 in volts is : ") diff --git a/3515/CH4/EX4.8/Ex4_8.sce b/3515/CH4/EX4.8/Ex4_8.sce new file mode 100644 index 000000000..51645764b --- /dev/null +++ b/3515/CH4/EX4.8/Ex4_8.sce @@ -0,0 +1,12 @@ +// Exa 4.8 +format('v',7); +clc; +clear; +close; +// Given data +iE1_by_I= 0.99; // as it is given that iE1= 0.99 *I +VT= 0.025;// in volt +// Formula iE1= I/(1+%e^(-vid/VT)) +// %e^(-vid/VT)= 1/iE1_by_I-1 +vid= log( 1/iE1_by_I-1)*(-VT);// in volt +disp(round(vid*10^3),"Input differential signal in mVis : ") diff --git a/3515/CH4/EX4.9/Ex4_9.sce b/3515/CH4/EX4.9/Ex4_9.sce new file mode 100644 index 000000000..48f180905 --- /dev/null +++ b/3515/CH4/EX4.9/Ex4_9.sce @@ -0,0 +1,49 @@ +// Exa 4.9 +format('v',4); +clc; +clear; +close; +// Given data +Beta= 100; + +// Part (a) +RE= 150;// in Ω +VT= 25;// in mV +VT= VT*10^-3;// in V +IE= 0.5;// in mA +IE=IE*10^-3;// in A +re1= VT/IE;//in Ω +R_id= 2*(Beta+1)*(re1+RE);// in Ω +R_id= round(R_id*10^-3);// in kΩ +disp(R_id,"The input differential resistance in kΩ is :") + +// Part (b) +RC=10;//in kΩ +RC=RC*10^3;//in Ω +Rsig= 5+5;// in kΩ +VoltageGain1= R_id/(Rsig+R_id);//voltage gain from the signal source to the base of Q1 and Q2 in V/V +VoltageGain2= 2*RC/(2*(re1+RE));// voltage gain from the bases to the output in V/V +Ad= VoltageGain1*VoltageGain2;//in V/V +disp(Ad,"The overall differential voltage gain in V/V is "); + +// Part (c) +format('e',9) +delta_RC= 0.02*RC; +R_EE= 200;//in kΩ +R_EE=R_EE*10^3;//in Ω +Acm= RC/(2*R_EE)*delta_RC/RC;//in V/V +disp(Acm,"Common mode gain in V/V is :") + +// Part (d) +format('v',4); +CMRRindB= 20*log10(Ad/Acm);// in dB +disp(CMRRindB,"CMRR in dB is : ") + +// Part (e) +V_A= 100;// in V +r_o= V_A/(IE);// in Ω +// Ricm= (Beta+1)*(R_EE || r_o/2) +Ricm= (Beta+1)*(R_EE*(r_o/2)/(R_EE+(r_o/2))); +disp(Ricm*10^-6,"Input common mode resistance in MΩ is : ") + + -- cgit