{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# 8: Semiconductors and Physics of Semiconductor Devices" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example number 1, Page number 8-55" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " resistivity is 0.41667 ohm m\n" ] } ], "source": [ "#importing modules\n", "import math\n", "from __future__ import division\n", "\n", "#Variable declaration\n", "e=1.6*10**-19; #charge(c)\n", "ni=2.5*10**19; #particle density(per m**3)\n", "mew_n=0.40; #electron mobility(m**2/Vs)\n", "mew_p=0.20; #hole mobility(m**2/Vs)\n", "\n", "#Calculation\n", "rhoi=1/(ni*e*(mew_n+mew_p)); #resistivity(ohm m)\n", "\n", "#Result\n", "print \"resistivity is\",round(rhoi,5),\"ohm m\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example number 2, Page number 8-56" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "number of donor atoms is 8.333 *10**19 per m**3\n" ] } ], "source": [ "#importing modules\n", "import math\n", "from __future__ import division\n", "\n", "#Variable declaration\n", "e=1.6*10**-19; #charge(c)\n", "mew_n=0.3; #electron mobility(m**2/Vs)\n", "rho=0.25; #resistivity(ohm m)\n", "\n", "#Calculation\n", "n=1/(rho*e*mew_n); #number of donor atoms per m**3\n", "\n", "#Result\n", "print \"number of donor atoms is\",round(n/10**19,3),\"*10**19 per m**3\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example number 3, Page number 8-56" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "diffusion coefficient is 54.34 *10**-4 m**2/s\n" ] } ], "source": [ "#importing modules\n", "import math\n", "from __future__ import division\n", "\n", "#Variable declaration\n", "e=1.6*10**-19; #charge(c)\n", "mewn=0.21; #electron mobility(m**2/Vs)\n", "T=300; #temperature(K)\n", "KB=1.38*10**-23; #boltzmann constant\n", "\n", "#Calculation\n", "Dn=mewn*KB*T/e; #diffusion coefficient(m**2/sec)\n", "\n", "#Result\n", "print \"diffusion coefficient is\",round(Dn*10**4,2),\"*10**-4 m**2/s\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example number 4, Page number 8-56" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "hole concentration is 19.4 *10**21 m-3\n", "hole mobility is 0.03788 m**2/Vs\n" ] } ], "source": [ "#importing modules\n", "import math\n", "from __future__ import division\n", "\n", "#Variable declaration\n", "e=1.6*10**-19; #charge(c)\n", "RH=3.22*10**-4; #hall coefficient(m**3C-1)\n", "rho=8.5*10**-3; #resistivity(ohm m)\n", "\n", "#Calculation\n", "p=1/(RH*e); #hole concentration(m-3)\n", "mewp=RH/rho; #hole mobility(m**2/Vs)\n", "\n", "#Result\n", "print \"hole concentration is\",round(p/10**21,1),\"*10**21 m-3\"\n", "print \"hole mobility is\",round(mewp,5),\"m**2/Vs\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example number 5, Page number 8-57" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "intrinsic concentration is 556.25 *10**16 per m**3\n" ] } ], "source": [ "#importing modules\n", "import math\n", "from __future__ import division\n", "\n", "#Variable declaration\n", "e=1.6*10**-19; #charge(c)\n", "mew_e=0.36; #electron mobility(m**2/Vs)\n", "mew_h=0.17; #hole mobility(m**2/Vs)\n", "rhoi=2.12; #resistivity(ohm m)\n", "\n", "#Calculation\n", "ni=1/(rhoi*e*(mew_e+mew_h)); #intrinsic concentration(per m**3)\n", "\n", "#Result\n", "print \"intrinsic concentration is\",round(ni/10**16,2),\"*10**16 per m**3\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example number 6, Page number 8-57" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "resistivity is 0.449 ohm m\n" ] } ], "source": [ "#importing modules\n", "import math\n", "from __future__ import division\n", "\n", "#Variable declaration\n", "e=1.6*10**-19; #charge(c)\n", "mew_e=0.39; #electron mobility(m**2/Vs)\n", "mew_h=0.19; #hole mobility(m**2/Vs)\n", "ni=2.4*10**19; #intrinsic concentration(per m**3)\n", "\n", "#Calculation\n", "rhoi=1/(ni*e*(mew_e+mew_h)); #resistivity(ohm m)\n", "\n", "#Result\n", "print \"resistivity is\",round(rhoi,3),\"ohm m\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example number 7, Page number 8-57" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "hole concentration is 2.25 *10**9 per m**3\n", "conductivity is 2.16 *10**3 per ohm m\n" ] } ], "source": [ "#importing modules\n", "import math\n", "from __future__ import division\n", "\n", "#Variable declaration\n", "ni=1.5*10**16; #charge carriers(per m**3)\n", "e=1.6*10**-19; #charge(c)\n", "mew_e=0.135; #electron mobility(m**2/Vs)\n", "mew_h=0.048; #hole mobility(m**2/Vs)\n", "N=10**23; #number of atoms(per m**3)\n", "\n", "#Calculation\n", "sigma=ni*e*(mew_e+mew_h); \n", "p=ni**2/N; #hole concentration(per m**3) \n", "sigman=N*e*mew_e; #conductivity(per ohm m)\n", "\n", "#Result\n", "print \"hole concentration is\",p/10**9,\"*10**9 per m**3\"\n", "print \"conductivity is\",sigman/10**3,\"*10**3 per ohm m\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example number 8, Page number 8-58" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "hole concentration is 1.7 *10**22 m-3\n", "hole mobility is 4.099 *10**-2 m**2/Vs\n" ] } ], "source": [ "#importing modules\n", "import math\n", "from __future__ import division\n", "\n", "#Variable declaration\n", "e=1.6*10**-19; #charge(c)\n", "RH=3.66*10**-4; #hall coefficient(m**3C-1)\n", "rho=8.93*10**-3; #resistivity(ohm m)\n", "\n", "#Calculation\n", "p=1/(RH*e); #hole concentration(m-3)\n", "mew=RH/rho; #hole mobility(m**2/Vs)\n", "\n", "#Result\n", "print \"hole concentration is\",round(p/10**22,1),\"*10**22 m-3\"\n", "print \"hole mobility is\",round(mew*10**2,3),\"*10**-2 m**2/Vs\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example number 9, Page number 8-58" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "conductivity is 4.32 *10**-4 per ohm m\n" ] } ], "source": [ "#importing modules\n", "import math\n", "from __future__ import division\n", "\n", "#Variable declaration\n", "e=1.6*10**-19; #charge(c)\n", "ni=1.5*10**16; #particle density(per m**3)\n", "mew_e=0.13; #electron mobility(m**2/Vs)\n", "mew_h=0.05; #hole mobility(m**2/Vs)\n", "\n", "#Calculation\n", "sigma=ni*e*(mew_e+mew_h); #conductivity(per ohm m)\n", "\n", "#Result\n", "print \"conductivity is\",sigma*10**4,\"*10**-4 per ohm m\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example number 10, Page number 8-58" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "conductivity is 11.2 per ohm m\n" ] } ], "source": [ "#importing modules\n", "import math\n", "from __future__ import division\n", "\n", "#Variable declaration\n", "e=1.6*10**-19; #charge(c)\n", "ni=1.5*10**16; #particle density(per m**3)\n", "mew_e=0.14; #electron mobility(m**2/Vs)\n", "mew_h=0.05; #hole mobility(m**2/Vs)\n", "D=2.33*10**3; #density(kg/m**3)\n", "A=28.09; #atomic weight(kg)\n", "NA=6.025*10**26; #avagadro number \n", "\n", "#Calculation\n", "N=NA*D/A; #number of atoms\n", "n=N/10**8; #electron concentration(per m**3)\n", "p=ni**2/n; #hole concentration(per m**3)\n", "sigma=e*((n*mew_e)+(p*mew_h)); #conductivity(per ohm m)\n", "\n", "#Result\n", "print \"conductivity is\",round(sigma,1),\"per ohm m\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example number 11, Page number 8-59" ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "resistivity is 4.13 *10**-4 per ohm m\n" ] } ], "source": [ "#importing modules\n", "import math\n", "from __future__ import division\n", "\n", "#Variable declaration\n", "e=1.6*10**-19; #charge(c)\n", "ni=2.5*10**19; #particle density(per m**3)\n", "mew_e=0.36; #electron mobility(m**2/Vs)\n", "mew_h=0.18; #hole mobility(m**2/Vs)\n", "N=4.2*10**28; #number of atoms\n", "A=28.09; #atomic weight(kg)\n", "NA=6.025*10**26; #avagadro number \n", "\n", "#Calculation\n", "n=N/10**6; #electron concentration(per m**3)\n", "p=ni**2/n; #hole concentration(per m**3)\n", "rhoi=1/(e*((n*mew_e)+(p*mew_h))); #resistivity(per ohm m)\n", "\n", "#Result\n", "print \"resistivity is\",round(rhoi*10**4,2),\"*10**-4 per ohm m\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example number 12, Page number 8-60" ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "hole concentration is 1.2 *10**9 m-3\n" ] } ], "source": [ "#importing modules\n", "import math\n", "from __future__ import division\n", "\n", "#Variable declaration\n", "np=2.4*10**9; #carrier concentration(m-3)\n", "\n", "#Calculation\n", "p=np/2; #hole concentration(m-3)\n", "\n", "#Result\n", "print \"hole concentration is\",p/10**9,\"*10**9 m-3\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example number 13, Page number 8-60" ] }, { "cell_type": "code", "execution_count": 34, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "density of donor atoms is 8.92 *10**19 electron/m**3\n" ] } ], "source": [ "#importing modules\n", "import math\n", "from __future__ import division\n", "\n", "#Variable declaration\n", "rho=0.2; #resistivity(ohm m)\n", "e=1.602*10**-19; #charge(c)\n", "mewn=0.35; #mobility of charge carriers(m**2/Vs)\n", "\n", "#Calculation\n", "n=1/(rho*mewn*e); #density of donor atoms(electrons/m**3)\n", "\n", "#Result\n", "print \"density of donor atoms is\",round(n/10**19,2),\"*10**19 electron/m**3\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example number 14, Page number 8-60" ] }, { "cell_type": "code", "execution_count": 36, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "energy gap is 0.573 eV\n" ] } ], "source": [ "#importing modules\n", "import math\n", "from __future__ import division\n", "\n", "#Variable declaration\n", "KB=1.38*10**-23; #boltzmann constant\n", "e=1.602*10**-19; #charge(c)\n", "rho1=5;\n", "rho2=2.5;\n", "T1=300; #temperature(K)\n", "T2=320; #temperature(K)\n", "\n", "#Calculation\n", "Eg=2*KB*math.log(rho1/rho2)/((1/T1)-(1/T2)); #energy gap(J)\n", "Eg=Eg/e; #energy gap(eV) \n", "\n", "#Result\n", "print \"energy gap is\",round(Eg,3),\"eV\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example number 15, Page number 8-61" ] }, { "cell_type": "code", "execution_count": 37, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "diffusion coefficient is 4.92 *10**-3 m**2/sec\n" ] } ], "source": [ "#importing modules\n", "import math\n", "from __future__ import division\n", "\n", "#Variable declaration\n", "e=1.6*10**-19; #charge(c)\n", "mew_e=0.19; #electron mobility(m**2/Vs)\n", "T=300; #temperature(K)\n", "KB=1.38*10**-23; #boltzmann constant\n", "\n", "#Calculation\n", "Dn=mew_e*KB*T/e; #diffusion coefficient(m**2/sec)\n", "\n", "#Result\n", "print \"diffusion coefficient is\",round(Dn*10**3,2),\"*10**-3 m**2/sec\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example number 16, Page number 8-61" ] }, { "cell_type": "code", "execution_count": 39, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "energy gap is 1.04 eV\n" ] } ], "source": [ "#importing modules\n", "import math\n", "from __future__ import division\n", "\n", "#Variable declaration\n", "KB=1.38*10**-23; #boltzmann constant\n", "e=1.602*10**-19; #charge(c)\n", "rho1=4.5;\n", "rho2=2.0;\n", "T1=293; #temperature(K)\n", "T2=305; #temperature(K)\n", "\n", "#Calculation\n", "Eg=2*KB*math.log(rho1/rho2)/((1/T1)-(1/T2)); #energy gap(J)\n", "Eg=Eg/e; #energy gap(eV) \n", "\n", "#Result\n", "print \"energy gap is\",round(Eg,2),\"eV\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example number 17, Page number 8-62" ] }, { "cell_type": "code", "execution_count": 43, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "peak current is 37.8 mA\n", "peak output voltage is 18.9 V\n" ] } ], "source": [ "#importing modules\n", "import math\n", "from __future__ import division\n", "\n", "#Variable declaration\n", "Vm=20; #voltage(V)\n", "RL=500; #load resistance(ohm)\n", "rf=10; #forward resistance(ohm)\n", "VB=0.7; #bias voltage(V) \n", "\n", "#Calculation\n", "Im=(Vm-VB)*10**3/(rf+RL); #peak current(mA)\n", "Vo=Im*RL/10**3; #peak output voltage(V)\n", "\n", "#Result\n", "print \"peak current is\",round(Im,1),\"mA\"\n", "print \"peak output voltage is\",round(Vo,1),\"V\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example number 18, Page number 8-62" ] }, { "cell_type": "code", "execution_count": 48, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "peak current is 0.2828 A\n", "average DC current is 0.18 A\n", "dc voltage is 180 V\n", "ripple factor is 87.178 V\n" ] } ], "source": [ "#importing modules\n", "import math\n", "from __future__ import division\n", "\n", "#Variable declaration\n", "Vrms=200; #voltage(V)\n", "RL=1000; #load resistance(ohm)\n", "\n", "#Calculation\n", "Im=Vrms*math.sqrt(2)/RL; #peak current(A)\n", "Idc=2*Im/math.pi; #average DC current(A)\n", "Vdc=int(Idc*RL); #dc voltage(V)\n", "x=(Vrms/Vdc)**2;\n", "gama=math.sqrt(x-1)*Vdc; #ripple factor(V)\n", "\n", "#Result\n", "print \"peak current is\",round(Im,4),\"A\"\n", "print \"average DC current is\",round(Idc,2),\"A\"\n", "print \"dc voltage is\",Vdc,\"V\"\n", "print \"ripple factor is\",round(gama,3),\"V\"" ] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.11" } }, "nbformat": 4, "nbformat_minor": 0 }