diff options
Diffstat (limited to 'Advance_Semiconductor_Devices_by_K._C._Nandi/chapter2.ipynb')
-rw-r--r-- | Advance_Semiconductor_Devices_by_K._C._Nandi/chapter2.ipynb | 1262 |
1 files changed, 1262 insertions, 0 deletions
diff --git a/Advance_Semiconductor_Devices_by_K._C._Nandi/chapter2.ipynb b/Advance_Semiconductor_Devices_by_K._C._Nandi/chapter2.ipynb new file mode 100644 index 00000000..fff383e3 --- /dev/null +++ b/Advance_Semiconductor_Devices_by_K._C._Nandi/chapter2.ipynb @@ -0,0 +1,1262 @@ +{ + "metadata": { + "name": "", + "signature": "" + }, + "nbformat": 3, + "nbformat_minor": 0, + "worksheets": [ + { + "cells": [ + { + "cell_type": "heading", + "level": 1, + "metadata": {}, + "source": [ + "Chapter-2 Junctions and interfaces" + ] + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.6.1 Pg 2-21" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from __future__ import division\n", + "from math import log\n", + "#Given : \n", + "Ge=4.4*10**22##atoms/cm**3\n", + "NA=Ge/10**8##per cm**3\n", + "NA=NA*10**6##per m**3\n", + "ND=NA*10**3##per m**3\n", + "ni=2.5*10**13##per cm**3\n", + "ni=ni*10**6##per m**3\n", + "VT=26##mV\n", + "Vj=VT*log(NA*ND/ni**2)##mV\n", + "print \"Junction potential = %0.1f mV\"%Vj" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Junction potential = 328.7 mV\n" + ] + } + ], + "prompt_number": 2 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.6.2 Pg 2-22" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "ni=2.5*10**15##per cm**3\n", + "Ge=4.4*10**22##atoms/cm**3\n", + "NA=Ge/10**8##per cm**3\n", + "NA=NA*10**6##per m**3\n", + "ND=NA*10**3##per m**3\n", + "ni=ni*10**6##per m**3\n", + "T=27+273##K\n", + "VT=T/11600##V\n", + "Vo=VT*log(NA*ND/ni**2)##V\n", + "print \"Contact potential = %0.4f V\"%Vo" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Contact potential = 0.0888 V\n" + ] + } + ], + "prompt_number": 4 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.6.3 Pg 2-23" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "mu_n=1500*10**-4##m**2/V-s\n", + "mu_p=475*10**-4##m**2/V-s\n", + "ni=1.45*10**10*10**6##per m**3\n", + "q=1.6*10**-19##Coulomb\n", + "rho_p=10##ohm-cm\n", + "rho_p=rho_p*10**-2##ohm-m\n", + "rho_n=3.5##ohm-cm\n", + "rho_n=rho_n*10**-2##ohm-m\n", + "sigma_p=1/rho_p##(ohm-m)**-1\n", + "NA=sigma_p/q/mu_p##m**3\n", + "sigma_n=1/rho_n##(ohm-m)**-1\n", + "ND=sigma_p/q/mu_n##m**3\n", + "VT=26*10**-3##V\n", + "Vj=VT*log(NA*ND/ni**2)##V\n", + "print \"Height of potential barrier = %0.3f V\"%Vj\n", + "#Answer in the book is wrong." + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Height of potential barrier = 0.564 V\n" + ] + } + ], + "prompt_number": 6 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.6.4 Pg 2-24" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "rho_p=2##ohm-cm\n", + "rho_p=rho_p*10**-2##ohm-m\n", + "rho_n=1##ohm-cm\n", + "rho_n=rho_n*10**-2##ohm-m\n", + "mu_n=1500*10**-4##m**2/V-s\n", + "mu_p=2100*10**-4##m**2/V-s\n", + "ni=2.5*10**13##per m**3\n", + "q=1.6*10**-19##Coulomb\n", + "sigma_p=1/rho_p##(ohm-m)**-1\n", + "NA=sigma_p/q/mu_p##m**3\n", + "sigma_n=1/rho_n##(ohm-m)**-1\n", + "ND=sigma_p/q/mu_n##m**3\n", + "T=27+273##K\n", + "VT=T/11600##V\n", + "Vj=VT*log(NA*ND/ni**2)##V\n", + "print \"Height of potential barrier = %0.4f V\"%Vj\n", + "#Anser in the book is wrong." + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Height of potential barrier = 0.9347 V\n" + ] + } + ], + "prompt_number": 8 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.7.1 Pg 2-27" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "Vgamma=0.6##Volt\n", + "rf=12##ohm\n", + "V=5##Volts\n", + "R=1##kohm\n", + "IF=(V-Vgamma)/(R*1000+rf)##A\n", + "print \"Diode current = %0.1f mA\"%(IF*1000)\n", + "VF=Vgamma+IF*rf##volts\n", + "print \"Diode voltage = %0.2f Volts\"%VF" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Diode current = 4.3 mA\n", + "Diode voltage = 0.65 Volts\n" + ] + } + ], + "prompt_number": 10 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.7.2 Pg 2-35" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "Vgamma=0.6##Volt\n", + "Rf=10##ohm\n", + "Eta=2#\n", + "Vm=0.2##Volts\n", + "Vdc=10##Volts\n", + "RL=1##kohm\n", + "IDQ=(Vdc-Vgamma)/(RL*1000+Rf)##A\n", + "VT=25*10**-3##Volts\n", + "rd=Eta*VT/IDQ##ohm\n", + "print \"Alternating component of voltage across RL, Vo(ac) = \",round((RL*1000/(RL*1000+rd)*Vm),4),\"*sin(omega*t)\"\n", + "Vo_DC=IDQ*RL*1000##Volts\n", + "print \"Total load voltage = \",round(Vo_DC,1),\"+\",round((RL*1000/(RL*1000+rd)*Vm),4),\"*sin(omega*t)\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Alternating component of voltage across RL, Vo(ac) = 0.1989 *sin(omega*t)\n", + "Total load voltage = 9.3 + 0.1989 *sin(omega*t)\n" + ] + } + ], + "prompt_number": 14 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.7.3 Pg 2-37" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from math import exp\n", + "#Given : \n", + "Eta=2##for Si diode\n", + "T=300##K\n", + "VT=T/11600##V\n", + "IbyIo=90/100#\n", + "#I=Io*(exp(V/Eta/VT)-1)\n", + "V=log(IbyIo+1)*Eta*VT##V\n", + "print \"Saturation value of voltage = %0.2f mV\"%(V*1000)\n", + "VF=0.5##Volts\n", + "VR=-0.5##Volts\n", + "IFbyIR=(exp(VF/Eta/VT)-1)/(exp(VR/Eta/VT)-1)##ratio\n", + "print \"Ratio of forward to reverse current = %0.2f\"%IFbyIR\n", + "#Answer in the book is wrong." + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Saturation value of voltage = 33.20 mV\n", + "Ratio of forward to reverse current = -15782.65\n" + ] + } + ], + "prompt_number": 15 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.7.4 Pg 2-37" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "Eta=2##for Si diode\n", + "T=300##K\n", + "VT=T/11600##V\n", + "IbyIo=90/100#\n", + "#I=Io*(exp(V/Eta/VT)-1)\n", + "V=log(IbyIo+1)*Eta*VT##V\n", + "print \"Saturation value of voltage = %0.2f mV\"%(V*1000)\n", + "VF=0.2##Volts\n", + "VR=-0.2##Volts\n", + "IFbyIR=(exp(VF/Eta/VT)-1)/(exp(VR/Eta/VT)-1)##ratio\n", + "print \"Ratio of forward to reverse current : %0.2f \"%IFbyIR\n", + "#Answer in the book is wrong." + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Saturation value of voltage = 33.20 mV\n", + "Ratio of forward to reverse current : -47.78 \n" + ] + } + ], + "prompt_number": 16 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.9.1 Pg 2-61" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "IF=10##mA\n", + "VF=0.75##volts\n", + "T=27+273##K\n", + "Eta=2##for Si diode\n", + "VT=T/11600##V\n", + "Io=IF/(exp(VF/Eta/VT)-1)##mA\n", + "print \"Reverse saturation current = %0.3f nA\"%(Io*10**6)" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Reverse saturation current = 5.043 nA\n" + ] + } + ], + "prompt_number": 18 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.9.2 Pg -61" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "IF=10##mA\n", + "VF=0.3##Volts\n", + "T=27+273##K\n", + "Eta=1##for Ge diode\n", + "VT=T/11600##V\n", + "Io=IF/(exp(VF/Eta/VT)-1)##mA\n", + "print \"Reverse saturation current = %0.2f nA\"%(Io*10**6)" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Reverse saturation current = 91.66 nA\n" + ] + } + ], + "prompt_number": 19 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.9.3 Pg 2-61" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "Io=1*10**-9##A\n", + "T=27+273##K\n", + "VT=T/11600##V\n", + "VF=0.3##Volts\n", + "Eta=1##for Ge diode\n", + "IF=Io*(exp(VF/Eta/VT)-1)##mA\n", + "print \"Forwad current = %0.4f mA\"%(IF*10**3)" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Forwad current = 0.1091 mA\n" + ] + } + ], + "prompt_number": 21 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.9.4 Pg 2-62" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "T=27+273##K\n", + "V1=0.4##V\n", + "V2=0.42##V\n", + "I1=10##mA\n", + "I2=20##mA\n", + "VT=T/11600##V\n", + "Eta=1/log(I1/I2)*(V1-V2)/VT\n", + "print \"Value of Eta : %0.2f\"%Eta\n", + "Io=I1/(exp(V1/Eta/VT)-1)*10**-3##A\n", + "print \"Current, Io = %0.2f nA\"%(Io*10**9)\n", + "#Ans in the book is not accurate." + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Value of Eta : 1.12\n", + "Current, Io = 9.54 nA\n" + ] + } + ], + "prompt_number": 22 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.9.5 Pg 2-63" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "Io1=10**-12##A\n", + "Io2=10**-10##A\n", + "I=2##mA\n", + "Eta=1##constant\n", + "T=27+273##K\n", + "VT=26/1000##V\n", + "#I=I1+I2\n", + "V=(log(I*10**-3/(Io1+Io2))+1)*Eta*VT##V\n", + "print \"Voltage across the diodes = %0.4f V\"%V\n", + "#Ans in the book is not accurate." + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Voltage across the diodes = 0.4628 V\n" + ] + } + ], + "prompt_number": 24 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.9.6 Pg 2-64" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "Io1=10*10**-9##A\n", + "Io2=10*10**-9##A\n", + "Eta=1.1##constant\n", + "T=25+273##K\n", + "V=0.2##V(assumed)\n", + "VT=T/11600##V\n", + "I1=Io1*(exp(V/Eta/VT)-1)##A\n", + "I2=Io2*(exp(V/Eta/VT)-1)##A\n", + "I=I1+I2##A\n", + "print \"Source current = %0.2f micro Ampere\"%(I*10**6)" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Source current = 23.68 micro Ampere\n" + ] + } + ], + "prompt_number": 25 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.9.7 Pg 2-65" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "Io=10**-13##A\n", + "T=27+273##K\n", + "Eta=1##constant\n", + "V=0.6##V\n", + "VT=26/1000##V\n", + "I3=Io*(exp(V/Eta/VT)-1)##A\n", + "R=1*1000##ohm\n", + "Ir=V/R##A\n", + "Itotal=I3+Ir##A\n", + "VD1=log(Itotal/Io)*Eta*VT##V\n", + "VD2=VD1##V\n", + "Vin=VD1+VD2+V##V\n", + "print \"Voltage Vin = %0.3f V\"%Vin" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Voltage Vin = 1.823 V\n" + ] + } + ], + "prompt_number": 27 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.9.8 Pg 2-66" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "Vs=10##V\n", + "print \"Case(i) : Vb=9.8V\"\n", + "Vb=9.8##V\n", + "#D1 forward & D2 reverse biased: Breakdown D2\n", + "VD2=Vb##V\n", + "VD1=Vs-Vb##V\n", + "print \"VD1 = %0.3f V\"%VD1\n", + "print \"VD2 = %0.3f V\"%VD2\n", + "print \"Case(ii) : Vb=10.2V\"\n", + "Vb=10.2##V\n", + "#D1 forward & D2 reverse biased: none will be breakdown\n", + "VD2=Vb##V\n", + "#I=I0 so exp(V1/Eta/VT)-1=1\n", + "Eta=1##constant\n", + "VT=26/1000##V\n", + "VD1=log(1+1)*Eta*VT##V\n", + "VD2=Vs-VD1##V\n", + "print \"VD1 = %0.3f V\"%VD1\n", + "print \"VD2 = %0.3f V\"%VD2" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Case(i) : Vb=9.8V\n", + "VD1 = 0.200 V\n", + "VD2 = 9.800 V\n", + "Case(ii) : Vb=10.2V\n", + "VD1 = 0.018 V\n", + "VD2 = 9.982 V\n" + ] + } + ], + "prompt_number": 30 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.9.9 Pg 2-67" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "Vs=5##Volt\n", + "Eta=1##constant\n", + "VT=26/1000##V\n", + "#I=I0 so exp(V1/Eta/VT)-1=1\n", + "V1=log(1+1)*Eta*VT##Volt\n", + "V2=Vs-V1##Volt\n", + "print \"Voltage across diode D1 = %0.3f V\"%V1\n", + "print \"Voltage across diode D2 = %0.3f V\"%V2" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Voltage across diode D1 = 0.018 V\n", + "Voltage across diode D2 = 4.982 V\n" + ] + } + ], + "prompt_number": 32 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.10.2 Pg 2-70" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "rho_n=10##ohm-cm\n", + "rho_p=3.5##ohm-cm\n", + "ni=1.5*10**10##per cm**3\n", + "Vj=0.56##volt\n", + "q=1.6*10**-19##Coulomb\n", + "mu_n=1500##cm**2/V-s\n", + "mu_p=500##cm**2/V-s\n", + "sigma_p=1/rho_p##(ohm-cm)**-1\n", + "NA=sigma_p/q/mu_p##per cm**3\n", + "sigma_n=1/rho_n##(ohm-cm)**-1\n", + "ND=sigma_n/q/mu_n##per cm**3\n", + "VT=Vj/log(NA*ND/ni**2)##V\n", + "T=11600*VT##K\n", + "print \"Temperature of junction = %0.2f degree K\"%T\n", + "t=T-273##degree C\n", + "print \"Temperature of junction = %0.2f degree C\"%t" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Temperature of junction = 287.28 degree K\n", + "Temperature of junction = 14.28 degree C\n" + ] + } + ], + "prompt_number": 34 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.11.1 Pg 2-75" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "Io=10##nA\n", + "T1=27+273##K\n", + "T2=87+273##K\n", + "VT=T1/11600##V\n", + "Eta=2##for Si\n", + "m=1.5##for Si\n", + "VGO=-1.21##volt\n", + "K=Io*10**-9/T1**m/exp(VGO/Eta/VT)##constant\n", + "VT=T2/11600##V\n", + "Io2=K*T2**m*exp(VGO/Eta/VT)##A\n", + "print \"Reverse saturation current at 87 degree C = %0.2f nA\"%(Io2*10**9)" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Reverse saturation current at 87 degree C = 648.69 nA\n" + ] + } + ], + "prompt_number": 35 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.11.2 Pg 2-76" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "V=0.45##volt\n", + "Eta=2##for Si\n", + "T1=27+273##K\n", + "T2=125+273##K\n", + "VT1=T1/11600##V\n", + "VT2=T2/11600##V\n", + "I1BYIo1=exp(V/Eta/VT1)#\n", + "I2BYIo2=exp(V/Eta/VT2)#\n", + "m=1.5##for Si\n", + "VGO=1.21##volt\n", + "Io1BYIo2=(T1/T2)**m*exp(-VGO/Eta/VT1+VGO/Eta/VT2)##constant\n", + "I2BYI1=I2BYIo2/I1BYIo1/Io1BYIo2#\n", + "print \"Factor by which current increases : %0.2f \"%I2BYI1\n", + "#Answer is wrong in the textbook." + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Factor by which current increases : 56.94 \n" + ] + } + ], + "prompt_number": 36 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.11.3 Pg 2-78" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "Io1=2##nA\n", + "T1=10+273##K\n", + "V=0.4##volt\n", + "VT1=T1/11600##V\n", + "m=1.5##for Si\n", + "Eta=2##for Si\n", + "VGO=-1.21##volt\n", + "K=Io1*10**-9/T1**m/exp(VGO/Eta/VT1)##constant\n", + "I1=Io1*10**-9*(exp(V/Eta/VT1)-1)##nA\n", + "T2=70+273##K\n", + "VT2=T2/11600##V\n", + "Io2=K*T2**m*(exp(VGO/Eta/VT2))##A\n", + "I2=Io2*(exp(V/Eta/VT2)-1)##nA\n", + "change=(I2-I1)/I1*100##%\n", + "print \"%% change = %0.2f diode current\"%change\n", + "#Answer is wrong in the textbook." + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "% change = 2332.39 diode current\n" + ] + } + ], + "prompt_number": 37 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.11.4 Pg 2-79" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "T=300##K\n", + "m_Si=1.5##for Si\n", + "m_Ge=1.5##for Ge\n", + "EGO_Si=1.21##Volt\n", + "EGO_Ge=0.785##Volt\n", + "Eta_Si=2#\n", + "Eta_Ge=1#\n", + "VT=26/1000##V\n", + "print \"Part(i)\"\n", + "d_logIoBYdt_Ge=m_Ge/T+EGO_Ge/(Eta_Ge*T*VT)##per degree C\n", + "print \"d(log(Io))/dt for Ge = %0.2f per degree C\"%d_logIoBYdt_Ge\n", + "d_logIoBYdt_Si=m_Si/T+EGO_Si/(Eta_Si*T*VT)##per degree C\n", + "print \"d(log(Io))/dt for Si = %0.2f per degree C \"%d_logIoBYdt_Si\n", + "print \"Part(ii)\"\n", + "V=0.2##Volt\n", + "dVBYdt_Ge=V/T-Eta_Ge*VT*d_logIoBYdt_Ge#\n", + "print \"dV/dt for Si = %0.2f mV per degree C \"%(dVBYdt_Ge*1000)\n", + "V=0.6##Volt\n", + "dVBYdt_Si=V/T-Eta_Si*VT*d_logIoBYdt_Si\n", + "print \"dV/dt for Si = %0.2f mV per degree C \"%(dVBYdt_Si*1000)" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Part(i)\n", + "d(log(Io))/dt for Ge = 0.11 per degree C\n", + "d(log(Io))/dt for Si = 0.08 per degree C \n", + "Part(ii)\n", + "dV/dt for Si = -2.08 mV per degree C \n", + "dV/dt for Si = -2.29 mV per degree C \n" + ] + } + ], + "prompt_number": 38 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.12.1 Pg 2-85" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from math import sqrt\n", + "#Given : \n", + "NA=4*10**20##per m**3\n", + "Vj=0.2##Volt\n", + "V1=-1##Volts\n", + "V2=-5##Volts\n", + "epsilon_r=16##for Ge\n", + "epsilon_o=8.85*10**-12##permitivity\n", + "q=1.6*10**-19##Coulomb\n", + "W1=sqrt(2*epsilon_r*epsilon_o*(Vj-V1)/q/NA)##m\n", + "print \"Width of depletion region = %0.2f micro meter \"%(W1*10**6)\n", + "W2=sqrt(2*epsilon_r*epsilon_o*(Vj-V2)/q/NA)##m\n", + "print \"New value of Width of depletion region = %0.2f micro meter \"%(W2*10**6)" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Width of depletion region = 2.30 micro meter \n", + "New value of Width of depletion region = 4.80 micro meter \n" + ] + } + ], + "prompt_number": 39 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.12.2 Pg 2-86" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "NA=4*10**20##per m**3\n", + "Vj=0.2##Volt\n", + "V1=-1##Volts\n", + "V2=-5##Volts\n", + "A=0.8*10**-6##m**2\n", + "epsilon_r=16##for Ge\n", + "epsilon_o=8.85*10**-12##permitivity\n", + "q=1.6*10**-19##Coulomb\n", + "W1=sqrt(2*epsilon_r*epsilon_o*(Vj-V1)/q/NA)##m\n", + "CT1=epsilon_r*epsilon_o*A/W1##\n", + "print \"Transition capacitance = %0.2f pF \"%(CT1*10**12)\n", + "W2=sqrt(2*epsilon_r*epsilon_o*(Vj-V2)/q/NA)##m\n", + "CT2=epsilon_r*epsilon_o*A/W2##\n", + "print \"New value of Transition capacitance = %0.2f pF \"%( CT2*10**12)" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Transition capacitance = 49.16 pF \n", + "New value of Transition capacitance = 23.62 pF \n" + ] + } + ], + "prompt_number": 40 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.12.3 Pg 2-87" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "NA=3*10**20##per m**3\n", + "Vj=0.2##Volt\n", + "V=-10##Volts\n", + "A=1*10**-6##m**2\n", + "epsilon_r=16##for Ge\n", + "epsilon_o=8.854*10**-12##permitivity\n", + "q=1.6*10**-19##Coulomb\n", + "W=sqrt(2*epsilon_r*epsilon_o*(Vj-V)/q/NA)##m\n", + "print \"Width of depletion region = %0.2f micro meter\"%(W*10**6)\n", + "CT=epsilon_r*epsilon_o*A/W##\n", + "print \"Transition capacitance = %0.2f pF\"%(CT*10**12)\n", + "#Answer is wrong in the textbook." + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Width of depletion region = 7.76 micro meter\n", + "Transition capacitance = 18.26 pF\n" + ] + } + ], + "prompt_number": 41 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.12.4 Pg 2-88" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "W=2*10**-4*10**-2##m\n", + "A=1*10**-6##m**2\n", + "epsilon_r=16##for Ge\n", + "epsilon_o=8.854*10**-12##permitivity\n", + "q=1.6*10**-19##Coulomb\n", + "CT=epsilon_r*epsilon_o*A/W##\n", + "print \"Barrier capacitance = %0.2f pF \"%(CT*10**12)\n", + "#Answer is wrong in the textbook." + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Barrier capacitance = 70.83 pF \n" + ] + } + ], + "prompt_number": 42 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.12.5 Pg 2-88" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from math import pi\n", + "#Given : \n", + "Vj=0.5##Volt\n", + "V=-4.5##Volt\n", + "rho_p=5*10**-2##ohm-m\n", + "epsilon_r=12##for Si\n", + "epsilon_o=8.854*10**-12##permitivity\n", + "q=1.6*10**-19##Coulomb\n", + "CT=100*10**-12##F\n", + "mu_p=500*10**-4##m**2/V-s\n", + "sigma_p=1/rho_p##(ohm-m)**-1\n", + "NA=sigma_p/q/mu_p##per m**3\n", + "W=sqrt(2*epsilon_r*epsilon_o*(Vj-V)/q/NA)##m\n", + "A=CT*W/(epsilon_r*epsilon_o)##\n", + "r=sqrt(A/pi)##m\n", + "D=2*r##m\n", + "print \"Diameter = %0.2f micro meter\"%(D*10**6)\n", + "#Answer is wrong = %0.2f the textbook. Sqrt is not taken while calculatng W value and also other mistakes." + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Diameter = 1397.53 micro meter\n" + ] + } + ], + "prompt_number": 43 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.12.6 Pg 2-90" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "Eta=2##for Si\n", + "T=300##K\n", + "VT=26/1000##V\n", + "IbyIo=0.9#\n", + "#part (i)\n", + "V=log(IbyIo+1)*Eta*VT##Volt\n", + "print \"Value of reverse voltage = %0.2f mV\"%(V*1000)\n", + "#part (ii)\n", + "VF=0.2##Volt\n", + "VR=-0.2##Volt\n", + "IFbyIR=(exp(VF/Eta/VT)-1)/(exp(VR/Eta/VT)-1)#\n", + "print \"Ratio of forward bias current to reverse saturation current = %0.2f \"%IFbyIR\n", + "#Answer is wrong in the textbook." + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Value of reverse voltage = 33.38 mV\n", + "Ratio of forward bias current to reverse saturation current = -46.81 \n" + ] + } + ], + "prompt_number": 44 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.12.7 Pg 2-91" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "Vs=100##V\n", + "Rf1=20##ohm\n", + "Vgamma1=0.2##Volts\n", + "Rf2=15##ohm\n", + "Vgamma2=0.6##Volts\n", + "Vb_Ge=0.2##Volts\n", + "Vb_Si=0.6##Volts\n", + "R1=10*10**3##ohm\n", + "R2=1*10**3##ohm\n", + "#Case(i)\n", + "Imax=Vs/R1##A\n", + "#D1 ON & D2 off\n", + "V=Vb_Ge+Rf1*Imax##Volt\n", + "#D2 off as V<Vb_Si\n", + "I2=0##A\n", + "I1=(Vs-V)/(R1+Rf1)##A\n", + "print \"For R=10 kohm\"\n", + "print \"I1 = %0.2f mA\"%(I1*1000)\n", + "print \"I2 = %0.2f mA\"%I2\n", + "#Case(ii)\n", + "R=R2##ohm#D1 & D2 ON \n", + "#V=Vb_Ge+Rf1*I1#V=Vb_Si+Rf2*I2\n", + "#V=Vs-I*R#V=Vs-(I1+I2)*R\n", + "#20*I1-15*I2=Vb_Si-Vb_Ge\n", + "#1020*I1+1000*I2=99.8\n", + "from numpy import mat, linalg\n", + "A=mat([[20, 1020],[-Rf2, R]])#\n", + "B=mat([[Vb_Ge-Vb_Ge],[Vs-Vb_Ge]])#\n", + "X = linalg.solve(A,B)\n", + "I1=X[0]*1000##mA\n", + "I2=X[1]*1000##mA\n", + "print \"For R=1 kohm\"\n", + "print \"I1 = %0.2f mA\"%I1\n", + "print \"I2 = %0.2f mA\"%I2\n", + "#Answer for 2nd part is not accurate in the book." + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "For R=10 kohm\n", + "I1 = 9.94 mA\n", + "I2 = 0.00 mA\n", + "For R=1 kohm" + ] + }, + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "\n", + "I1 = -2883.74 mA\n", + "I2 = 56.54 mA\n" + ] + } + ], + "prompt_number": 45 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex 2.12.8 Pg 2-93" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given : \n", + "Rf=10##ohm\n", + "Vgamma=0.5##Volt\n", + "RL=20##ohm\n", + "V=3##Volt\n", + "#Loop 1: 75*I1-50*I=V-Vgamma\n", + "#Loop 2: -50*I1+80*I=-Vgamma\n", + "import numpy as np\n", + "A=np.mat([[75 ,-50],[-50, 80]])#\n", + "B=np.mat([[V-Vgamma], [-Vgamma]])#\n", + "X = linalg.solve(A,B)\n", + "I1=X[0]*1000##mA\n", + "I2=X[1]*1000##mA\n", + "print \"For R=1 kohm\"\n", + "Vx=-Vgamma+50*I1##Volt\n", + "print \"DC source = %0.2f Volts\"%Vx[0,0]\n", + "#Answer is wrong in the textbook." + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "For R=1 kohm\n", + "DC source = 2499.50 Volts\n" + ] + } + ], + "prompt_number": 46 + } + ], + "metadata": {} + } + ] +} |