summaryrefslogtreecommitdiff
path: root/1223/CH11
diff options
context:
space:
mode:
Diffstat (limited to '1223/CH11')
-rwxr-xr-x1223/CH11/EX11.1/Ex11_1.sce26
-rwxr-xr-x1223/CH11/EX11.10/Ex11_10.sce32
-rwxr-xr-x1223/CH11/EX11.11/Ex11_11.sce12
-rwxr-xr-x1223/CH11/EX11.12/Ex11_12.sce16
-rwxr-xr-x1223/CH11/EX11.13/Ex11_13.sce13
-rwxr-xr-x1223/CH11/EX11.15/Ex11_15.sce20
-rwxr-xr-x1223/CH11/EX11.16/Ex11_16.sce35
-rwxr-xr-x1223/CH11/EX11.17/Ex11_17.sce16
-rwxr-xr-x1223/CH11/EX11.19/Ex11_19.sce35
-rwxr-xr-x1223/CH11/EX11.20/Ex11_20.sce16
-rwxr-xr-x1223/CH11/EX11.3/Ex11_3.sce14
-rwxr-xr-x1223/CH11/EX11.7/Ex11_7.sce9
-rwxr-xr-x1223/CH11/EX11.8/Ex11_8.sce11
-rwxr-xr-x1223/CH11/EX11.9/Ex11_9.sce22
14 files changed, 277 insertions, 0 deletions
diff --git a/1223/CH11/EX11.1/Ex11_1.sce b/1223/CH11/EX11.1/Ex11_1.sce
new file mode 100755
index 000000000..a460fea23
--- /dev/null
+++ b/1223/CH11/EX11.1/Ex11_1.sce
@@ -0,0 +1,26 @@
+clear;
+clc;
+//Example 11.1
+V1=10;
+V2=-10;
+Iq=1;
+Rc=10;
+Vbe=0.7;
+iC1=Iq/2;
+iC2=iC1;
+printf('\ncollector currents =%.2fmA\n',iC1)
+Vc1=V1-iC1*Rc;
+Vc2=Vc1;
+printf('\ncollector voltages =%.2fV\n',Vc1)
+Vcm=0;
+Ve=Vcm-Vbe;
+Vce1=Vc1-Ve;
+printf('\ncollector emitter voltage=%.2f V\n',Vce1)
+Vcm=-5;
+Ve=Vcm-Vbe;
+Vce1=Vc1-Ve;
+printf('\ncollector emitter voltage =%.2fV\n',Vce1)
+Vcm=5;
+Ve=Vcm-Vbe;
+Vce1=Vc1-Ve;
+printf('\ncollector emitter voltage=%.2f V\n',Vce1)
diff --git a/1223/CH11/EX11.10/Ex11_10.sce b/1223/CH11/EX11.10/Ex11_10.sce
new file mode 100755
index 000000000..c9f6fef92
--- /dev/null
+++ b/1223/CH11/EX11.10/Ex11_10.sce
@@ -0,0 +1,32 @@
+clear;
+clc;
+//Example 11.10
+Kn1=0.1;
+Kn2=Kn1;
+Kn3=0.1;
+Kn4=Kn3;
+R1=30;
+Vtn=1;
+Rd=16;
+//I1=(20-Vgs4)/R1 and I1=Kn3*(Vgs4-Vtn)^2
+Vgs4=poly(0,'Vgs4')
+p=poly([-1 -17 9],'Vgs4','c')
+printf('\nroots=%.2fV\n',roots(p))
+Vgs4=2.40;
+I1=(20-Vgs4)/R1;
+printf('\nI1=%.2f mA\n',I1)
+Iq=I1;
+Id1=Iq/2;
+printf('\nId1 and Id2 =%.2fmA\n',Id1)
+Vgs1=sqrt(Id1/Kn1)+Vtn;
+printf('\nVgs1 and Vgs2 =%.2fV\n',Vgs1)
+vo1=10-Id1*Rd;
+printf('\nvo1 and vo2=%.2f V\n',vo1)
+Vds1=Vgs1-Vtn;
+printf('\nVds1=Vds2=Vds1(sat)=%.2f V\n',Vds1)
+Vcm=vo1-Vds1+Vgs1;
+printf('\nVcm max=%.2f V\n',Vcm)
+Vds4=Vgs4-Vtn;
+printf('\nVds4=%.2f V\n',Vds4)
+Vcm2=Vgs1+Vds4-10;
+printf('\nVcm min=%.2fV\n',Vcm2)
diff --git a/1223/CH11/EX11.11/Ex11_11.sce b/1223/CH11/EX11.11/Ex11_11.sce
new file mode 100755
index 000000000..b0307023d
--- /dev/null
+++ b/1223/CH11/EX11.11/Ex11_11.sce
@@ -0,0 +1,12 @@
+clear;
+clc;
+//Example 11.11
+Kn=0.5;
+Iq=1;
+Vt=0.026;
+//transconductance of the MOSFET
+gm=2*sqrt(Kn*Iq/2);
+printf('\ntransconductance=%.3f mA/V\n',gm)
+//transconductance of the bipolar transistor
+gm=Iq/(2*Vt);
+printf('\ntransconductance=%.3f mA/V\n',gm)
diff --git a/1223/CH11/EX11.12/Ex11_12.sce b/1223/CH11/EX11.12/Ex11_12.sce
new file mode 100755
index 000000000..ae72f3dfc
--- /dev/null
+++ b/1223/CH11/EX11.12/Ex11_12.sce
@@ -0,0 +1,16 @@
+clear;
+clc;
+//Example 11.12
+Iq=0.587;
+Kn=1;
+Rd=16;
+//lambda=y
+y=0.01;
+Ro=1/(y*Iq);
+printf('\noutput resistance =%.2fKOhm\n',Ro)
+Ad=sqrt(Kn*Iq/2)*Rd;
+printf('\ndifferential mode voltage gain=%.2f \n',Ad)
+Acm=-sqrt(2*Kn*Iq)*Rd/(1+2*sqrt(2*Kn*Iq)*Ro);
+printf('\ncommon mode voltage gain=%.2f\n',Acm)
+CMRR=20*log10(-Ad/Acm);
+printf('\ncommon mode rejection ratio=%.2f dB\n',CMRR)
diff --git a/1223/CH11/EX11.13/Ex11_13.sce b/1223/CH11/EX11.13/Ex11_13.sce
new file mode 100755
index 000000000..4f3123ce8
--- /dev/null
+++ b/1223/CH11/EX11.13/Ex11_13.sce
@@ -0,0 +1,13 @@
+clear;
+clc;
+//Example 11.13
+Iq=0.2;
+Va=100;
+Va2=Va;
+Va4=Va;
+Rl=100;
+Vt=0.026;
+Ad=(1/Vt)/(1/Va2+1/Va4);
+printf('\nopen circuit voltage gain=%.2f\n',Ad)
+Ad=(Iq/(2*Vt))/(Iq/(2*Va2)+Iq/(2*Va4)+1/Rl);
+printf('\nvoltage gain=%.2f\n',Ad)
diff --git a/1223/CH11/EX11.15/Ex11_15.sce b/1223/CH11/EX11.15/Ex11_15.sce
new file mode 100755
index 000000000..28d88be30
--- /dev/null
+++ b/1223/CH11/EX11.15/Ex11_15.sce
@@ -0,0 +1,20 @@
+clear;
+clc;
+//Example 11.15
+Kn=0.2;
+Idq=0.1;
+ro4=1000;//Kohm
+ro6=1000;//KOhm
+ro2=ro4;
+//lambda=y
+y=0.01;
+gm=2*sqrt(Kn*Idq);
+printf('\ntransconductance=%.3f mA/V\n',gm)
+ro=1/(y*Idq);
+printf('\noutput resistance=%.2f KOhm\n',ro)
+Ro=ro4+ro6*(1+gm*ro);
+Ro=Ro*0.001;//Mohm
+printf('\noutput resistance of the cascode active load=%.2fMohm\n',Ro)
+Ro=Ro*1000;//KOhm
+Ad=gm*ro2*Ro/(ro4+Ro);
+printf('\ndifferential mode voltage gain=%.2f\n',Ad)
diff --git a/1223/CH11/EX11.16/Ex11_16.sce b/1223/CH11/EX11.16/Ex11_16.sce
new file mode 100755
index 000000000..08892dcc2
--- /dev/null
+++ b/1223/CH11/EX11.16/Ex11_16.sce
@@ -0,0 +1,35 @@
+clear;
+clc;
+//Example 11.16
+Iq=0.2;
+Ic1=Iq;
+Icb=1;
+R4=10;
+R3=0.2;
+b=100;
+Va=100;
+Vt=0.026;
+Ri=2*(1+b)*b*Vt/Iq;
+Ri=Ri*0.001;//MOhm
+printf('\ninput resistance=%.2f MOhm\n',Ri)
+R11=b*Vt/Iq;
+printf('\nresistance R11=%.2f KOhm\n',R11)
+Re=R11*R3/(R11+R3);
+printf('\nRe=%.2f KOhm\n',Re)
+gm11=Iq/Vt;
+printf('\ngm11=%.3f mA/V\n',gm11)
+ro11=Va/Iq;
+printf('\nro11 =%.2fKOhm\n',ro11)
+Rc11=ro11*(1+gm11*Re);
+Rc11=Rc11*0.001;//MOhm
+printf('\nRc11=%.2f MOhm\n',Rc11)
+r8=b*Vt/Icb;
+printf('\nresistance=%.2fKOhm\n',r8)
+//answer of following given in the book is wrong
+Rb8=r8+(1+b)*R4;
+Rb8=Rb8*0.001;//MOhm
+printf('\nRb8 =%.2fMOhm\n',Rb8)
+Rl7=Rc11*Rb8/(Rc11+Rb8);
+printf('\nRl7=%.2f MOhm\n',Rl7)
+Av=Iq*Rl7/(2*Vt);
+printf('\nsmall signal voltage gain=%.2f\n',Av)
diff --git a/1223/CH11/EX11.17/Ex11_17.sce b/1223/CH11/EX11.17/Ex11_17.sce
new file mode 100755
index 000000000..e8c46d6c4
--- /dev/null
+++ b/1223/CH11/EX11.17/Ex11_17.sce
@@ -0,0 +1,16 @@
+clear;
+clc;
+//Example 11.17
+Va=100;
+R4=10;
+b=100;
+Rc11=1.26*10^3;
+r8=2.6;
+Iq=0.2;
+Rc7=Va/Iq;
+printf('\nRc7=%.2f KOhm\n',Rc7)
+Z=Rc11*Rc7/(Rc11+Rc7);
+printf('\nZ=%.2f KOhm\n',Z)
+x=(r8+Z)/(1+b);
+Ro=R4*x/(R4+x);
+printf('\noutput resistance=%.2f KOhm\n',Ro)
diff --git a/1223/CH11/EX11.19/Ex11_19.sce b/1223/CH11/EX11.19/Ex11_19.sce
new file mode 100755
index 000000000..5ee9b28ba
--- /dev/null
+++ b/1223/CH11/EX11.19/Ex11_19.sce
@@ -0,0 +1,35 @@
+clear;
+clc;
+//Example 11.19
+b=100;
+Vt=0.026;
+Rc=20;
+Ir4=0.4;
+Iq=Ir4;
+Ir6=Ir4;
+r4=b*Vt/Ir4;
+printf('\nr4=%.2f KOhm\n',r4)
+r3=b^2*Vt/Ir4;
+printf('\nr3=%.2f KOhm\n',r3)
+Ri2=r3+(1+b)*r4;
+printf('\ninput resistance=%.2f KOhm\n',Ri2)
+gm=Iq/(2*Vt);
+printf('\ntransconductance=%.3f mA/V\n',gm)
+Ad1=gm*Rc*Ri2/(2*(Rc+Ri2));
+printf('\ngain of differential amplifier stage=%.2f\n',Ad1)
+r5=b*Vt/Ir6;
+printf('\nr5 =%.2fKOhm\n',r5)
+Ir7=2;
+r6=b*Vt/Ir7;
+printf('\nr6=%.2f KOhm\n',r6)
+R6=16.5;
+R7=5;
+Ri3=r5+(1+b)*(R6+r6+(1+b)*R7);
+Ri3=Ri3*0.001;//MOhm
+printf('\nRi3=%.2f MOhm\n',Ri3)
+Rs=5;
+A2=Ir4*Rs/(2*Vt);
+printf('\nvoltage gain A2=%.2f\n',A2)
+A3=1;//vo/vo3
+Ad=Ad1*A2*A3;
+printf('\nsmall signal voltage gain=%.2f\n',Ad)
diff --git a/1223/CH11/EX11.20/Ex11_20.sce b/1223/CH11/EX11.20/Ex11_20.sce
new file mode 100755
index 000000000..ee0a7f943
--- /dev/null
+++ b/1223/CH11/EX11.20/Ex11_20.sce
@@ -0,0 +1,16 @@
+clear;
+clc;
+//Example 11.20
+Ro=10000000;
+Co=1*10^-12;
+Rb=500;
+r=10000;
+b=100;
+f=1/(2*%pi*Ro*Co);
+f=f*0.001;//KHz
+printf('\nfrequency of the zero=%.2f KHz\n',f)
+Req=Ro*(1+Rb/r)/(1+Rb/r+2*(1+b)*Ro/r);
+printf('\nReq=%.2f Ohm\n',Req)
+f=1/(2*%pi*Req*Co);
+f=f*10^-9;//GHz
+printf('\nfrequency of the pole=%.2f GHz\n',f)
diff --git a/1223/CH11/EX11.3/Ex11_3.sce b/1223/CH11/EX11.3/Ex11_3.sce
new file mode 100755
index 000000000..c17381010
--- /dev/null
+++ b/1223/CH11/EX11.3/Ex11_3.sce
@@ -0,0 +1,14 @@
+clear;
+clc;
+//Example 11.3
+V1=10;
+V2=-10;
+Iq=0.8*10^-3;
+Rc=12000;
+Ro=25000;
+b=100;
+Vt=0.026;
+Ad=Iq*Rc/(4*Vt);
+printf('\ndifferential gain=%.3f\n',Ad)
+Acm=-(Iq*Rc/(2*Vt))/(1+(1+b)*Iq*Ro/(Vt*b));
+printf('\ncommon mode gain=%.3f\n',Acm)
diff --git a/1223/CH11/EX11.7/Ex11_7.sce b/1223/CH11/EX11.7/Ex11_7.sce
new file mode 100755
index 000000000..7f520a16d
--- /dev/null
+++ b/1223/CH11/EX11.7/Ex11_7.sce
@@ -0,0 +1,9 @@
+clear;
+clc;
+//Example 11.7
+Ad=92.3;
+Acm=0.237;//mod of Acm
+CMRR=Ad/Acm;
+printf('\ncommon mode rejection ratio=%.2f\n',CMRR)
+CMRRdB=20*log10(CMRR);
+printf('\nCMRR in decibels=%.2f dB\n',CMRRdB)
diff --git a/1223/CH11/EX11.8/Ex11_8.sce b/1223/CH11/EX11.8/Ex11_8.sce
new file mode 100755
index 000000000..5cba74459
--- /dev/null
+++ b/1223/CH11/EX11.8/Ex11_8.sce
@@ -0,0 +1,11 @@
+clear;
+clc;
+//Example 11.8
+CMRRdB=90;//dB
+CMRR=3.16*10^4;
+b=100;
+Vt=0.026;
+Iq=0.8;
+Ro=(2*CMRR-1)*Vt*b/((1+b)*Iq);
+Ro=Ro*10^-3;//Mohm
+disp(Ro,"output resistance (MOhm)")
diff --git a/1223/CH11/EX11.9/Ex11_9.sce b/1223/CH11/EX11.9/Ex11_9.sce
new file mode 100755
index 000000000..4deb8ba6f
--- /dev/null
+++ b/1223/CH11/EX11.9/Ex11_9.sce
@@ -0,0 +1,22 @@
+clear;
+clc;
+//Example 11.9
+b=100;
+Vbe=0.7;
+Va=100;
+Vt=0.026;
+Iref=0.5;
+Iq=Iref;
+I1=Iq/2
+Icq=I1;
+r=b*Vt/Icq;
+printf('\nsmall signal parameter=%.2f KOhm\n',r)
+ro=Va/Icq;
+printf('\nro=%.2f KOhm\n',ro)
+Ro=Va/Iq;
+printf('\noutput resistance of Q4=%.2f KOhm\n',Ro)
+Rid=2*r;
+printf('\ndifferential mode input resistance =%.2fKOhm\n',Rid)
+Ricm=(1+b)*(Ro*ro/2)/(Ro+ro/2);
+Ricm=Ricm*0.001;//Mohm
+printf('\ncommon mode input resistance=%.2f MOhm\n',Ricm)