{ "metadata": { "name": "", "signature": "sha256:eb4f284d8d12c103b674cc454947abe9c7a1a76e2d11836f2841ba55d4adeef7" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "heading", "level": 1, "metadata": {}, "source": [ "Chapter 9:Semiconductors" ] }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 9.2 , Page no:272" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import math\n", "from __future__ import division\n", "\n", "#given\n", "Eg=0.67; #in eV (Energy band gap)\n", "k=1.38E-23; #in J/K (Boltzmann\u2019s constant)\n", "T1=298; #in K (room temperature)\n", "e=1.6E-19; #in C (charge of electron)\n", "K=10; #ratio of number of electrons at different temperature\n", "\n", "#calculate\n", "Eg=Eg*e; #changing unit from eV to Joule\n", "#since ne=Ke*exp(-Eg/(2*k*T))\n", "#and ne/ne1=exp(-Eg/(2*k*T))/exp(-Eg/(2*k*T1)) and ne/ne1=K=10\n", "#therefore we have 10=exp(-Eg/(2*k*T))/exp(-Eg/(2*k*T1))\n", "#re-arranging the equation for T, we get T2=1/((1/T1)-((2*k*log(10))/Eg))\n", "T=1/((1/T1)-((2*k*math.log(10))/Eg)); #calculation of the temperature\n", "\n", "#result\n", "print\"The temperature at which number of electrons in the conduction band of a semiconductor increases by a factor of 10 is T=\",round(T),\"K (roundoff error)\";\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The temperature at which number of electrons in the conduction band of a semiconductor increases by a factor of 10 is T= 362.0 K (roundoff error)\n" ] } ], "prompt_number": 1 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 9.3 , Page no:272" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import math\n", "from __future__ import division\n", "\n", "#given\n", "ni=2.5E13; #in /cm^3 (intrinsic carrier density)\n", "ue=3900; #in cm^2/(V-s) (electron mobilities)\n", "uh=1900; #in cm^2/(V-s) (hole mobilities)\n", "e=1.6E-19; #in C (charge of electron)\n", "l=1; #in cm (lenght of the box)\n", "b=1;h=1; #in mm (dimensions of germanium rod )\n", "\n", "#calculate\n", "ni=ni*1E6; #changing unit from 1/cm^3 to 1/m^3\n", "ue=ue*1E-4; #changing unit from cm^2 to m^2\n", "uh=uh*1E-4; #changing unit from cm^2 to m^2\n", "sigma=ni*e*(ue+uh); #calculation of conductivity\n", "rho=1/sigma; #calculation of resistivity\n", "l=l*1E-2; #changing unit from mm to m for length\n", "A=(b*1E-3)*(h*1E-3); #changing unit from mm to m for width and height and calculation of cross-sectional area\n", "R=rho*l/A; #calculation of resistance\n", "\n", "#result\n", "print\"The resistance of intrinsic germanium is R=\",R,\"ohm\";" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The resistance of intrinsic germanium is R= 4310.34482759 ohm\n" ] } ], "prompt_number": 2 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 9.4 , Page no:273" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import math\n", "from __future__ import division\n", "\n", "#given\n", "ne=2.5E19; #in /m^3 (electron density)\n", "nh=2.5E19; #in /m^3 (hole density)\n", "ue=0.36; #in m^2/(V-s) (electron mobilities)\n", "uh=0.17; #in m^2/(V-s) (hole mobilities)\n", "e=1.6E-19; #in C (charge of electron)\n", "\n", "#calculate\n", "#since ne=nh=ni, therefore we have \n", "ni=nh;\n", "sigma=ni*e*(ue+uh); #calculation of conductivity\n", "rho=1/sigma; #calculation of resistivity\n", "\n", "#result\n", "print\"The conductivity of germanium is =\",round(sigma,2),\"/ohm-m\";\n", "print\"The resistivity of germanium is =\",round(rho,2),\"ohm-m\";" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The conductivity of germanium is = 2.12 /ohm-m\n", "The resistivity of germanium is = 0.47 ohm-m\n" ] } ], "prompt_number": 3 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 9.5 , Page no:273" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import math\n", "from __future__ import division\n", "\n", "#given\n", "ni=1.5E16; #in /m^3 (intrinsic carrier density)\n", "ue=0.135; #in m^2/(V-s) (electron mobilities)\n", "uh=0.048; #in m^2/(V-s) (hole mobilities)\n", "e=1.6E-19; #in C (charge of electron)\n", "ND=1E23; #in atom/m^3 (doping concentration)\n", "\n", "#calculate\n", "sigma_i=ni*e*(ue+uh); #calculation of intrinsic conductivity\n", "sigma=ND*ue*e; #calculation of conductivity after doping\n", "rho=ni**2/ND; #calculation of equilibrium hole concentration\n", "\n", "#result\n", "print\"The intrinsic conductivity for silicon is =\",sigma_i,\"S\";\n", "print\"The conductivity after doping with phosphorus atoms is =\",sigma,\"S\";\n", "print\"The equilibrium hole concentration is =\",rho,\"/m^3\";" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The intrinsic conductivity for silicon is = 0.0004392 S\n", "The conductivity after doping with phosphorus atoms is = 2160.0 S\n", "The equilibrium hole concentration is = 2250000000.0 /m^3\n" ] } ], "prompt_number": 4 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 9.6 , Page no:274" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import math\n", "from __future__ import division\n", "\n", "#given\n", "ni=1.5E16; #in /m^3 (intrinsic carrier density)\n", "ue=0.13; #in m^2/(V-s) (electron mobilities)\n", "uh=0.05; #in m^2/(V-s) (hole mobilities)\n", "e=1.6E-19; #in C (charge of electron)\n", "ne=5E20; #in /m^3 (concentration of donor type impurity)\n", "nh=5E20; #in /m^3 (concentration of acceptor type impurity)\n", "\n", "#calculate\n", "#part-i\n", "sigma=ni*e*(ue+uh); #calculation of intrinsic conductivity\n", "#part-ii\n", "#since 1 donor atom is in 1E8 Si atoms, hence holes concentration can be neglected\n", "sigma1=ne*e*ue; #calculation of conductivity after doping with donor type impurity\n", "#part-iii\n", "#since 1 acceptor atom is in 1E8 Si atoms, hence electron concentration can be neglected\n", "sigma2=nh*e*uh; #calculation of conductivity after doping with acceptor type impurity\n", "\n", "#result\n", "print\"The intrinsic conductivity for silicon is =\",sigma,\"(ohm-m)^-1\";\n", "print\"The conductivity after doping with donor type impurity is =\",sigma1,\"(ohm-m)^-1\";\n", "print\"The conductivity after doping with acceptor type impurity is =\",sigma2,\"(ohm-m)^-1\";\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The intrinsic conductivity for silicon is = 0.000432 (ohm-m)^-1\n", "The conductivity after doping with donor type impurity is = 10.4 (ohm-m)^-1\n", "The conductivity after doping with acceptor type impurity is = 4.0 (ohm-m)^-1\n" ] } ], "prompt_number": 5 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 9.7 , Page no:274" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import math\n", "from __future__ import division\n", "\n", "#given\n", "ni=1E20; #in /m^3 (intrinsic carrier density)\n", "ND=1E21; #in /m^3 (donor impurity concentration)\n", "\n", "#calculate\n", "nh=ni**2/ND; #calculation of density of hole carriers at room temperature\n", "\n", "#result\n", "print\"The density of hole carriers at room temperature is nh=\",nh,\"/m^3\";\n", "#Note: answer in the book is wrong due to printing mistake" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The density of hole carriers at room temperature is nh= 1e+19 /m^3\n" ] } ], "prompt_number": 6 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 9.8 , Page no:275" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import math\n", "from __future__ import division\n", "\n", "#given\n", "M=72.6; #atomic mass of germanium\n", "P=5400; #in Kg/m^3 (density)\n", "ue=0.4; #in m^2/V-s (mobility of electrons)\n", "uh=0.2; #in m^2/V-s (mobility of holes)\n", "Eg=0.7; #in eV (Band gap)\n", "m=9.1E-31; #in Kg (mass of electron)\n", "k=1.38E-23; #in J/K (Boltzmann\u2019s constant)\n", "T=300; #in K (temperature)\n", "h=6.63E-34; #in J/s (Planck\u2019s constant)\n", "pi=3.14; #value of pi used in the solution\n", "e=1.6E-19; #in C(charge of electron)\n", "\n", "#calculate\n", "Eg=Eg*e; #changing unit from eV to J\n", "ni=2*(2*pi*m*k*T/h**2)**(3/2)*math.exp(-Eg/(2*k*T));\n", "sigma=ni*e*(ue+uh);\n", "\n", "#result\n", "print\"The intrinsic carrier density for germanium at 300K is ni=\",ni,\"/m^3\";\n", "print\"The conductivity of germanium is=\",round(sigma,3),\"(ohm-m)^-1\";\n", "print \"NOTE: The answer in the textbook is wrong\" " ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The intrinsic carrier density for germanium at 300K is ni= 3.33408559508e+19 /m^3\n", "The conductivity of germanium is= 3.201 (ohm-m)^-1\n", "NOTE: The answer in the textbook is wrong\n" ] } ], "prompt_number": 7 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 9.9 , Page no:275" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import math\n", "from __future__ import division\n", "\n", "#given\n", "rho1=4.5; #in ohm-m (resistivity at 20 degree Celcius)\n", "rho2=2.0; #in ohm-m (resistivity at 32 degree Celcius)\n", "k=1.38E-23; #in J/K (Boltzmann\u2019s constant)\n", "T1=20; T2=32; #in degree Celcius (two temperatures)\n", "e=1.6E-19; #in C (charge of electron)\n", "\n", "#calculate\n", "T1=T1+273; #changing unit from degree Celius to K\n", "T2=T2+273; #changing unit from degree Celius to K\n", "#since sigma=e*u*C*T^(3/2)*exp(-Eg/(2*k*T))\n", "#therefore sigma1/sigma2=(T1/T2)^3/2*exp((-Eg/(2*k)*((1/T1)-(1/T2))\n", "#and sigma=1/rho \n", "#therefore we have rho2/rho1=(T1/T2)^3/2*exp((-Eg/(2*k)*((1/T1)-(1/T2))\n", "#re-arranging above equation for Eg, we get Eg=(2*k/((1/T1)-(1/T2)))*((3/2)*log(T1/T2)-log(rho2/rho1))\n", "Eg=(2*k/((1/T1)-(1/T2)))*((3/2)*math.log(T1/T2)-math.log(rho2/rho1));\n", "Eg1=Eg/e;#changing unit from J to eV\n", "\n", "#result\n", "print\"The energy band gap is Eg=\",Eg,\"J\";\n", "print\"\\t\\t\\t =\",round(Eg1,3),\"eV\";" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The energy band gap is Eg= 1.54302914521e-19 J\n", "\t\t\t = 0.964 eV\n" ] } ], "prompt_number": 8 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 9.10 , Page no:276" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import math\n", "from __future__ import division\n", "\n", "#given\n", "rho=2300; #in ohm-m (resistivity of pure silicon)\n", "ue=0.135; #in m^2/V-s (mobility of electron)\n", "uh=0.048; #in m^2/V-s (mobility of electron)\n", "Nd=1E19; #in /m^3 (doping concentration)\n", "e=1.6E-19; #in C (charge of electron)\n", "\n", "#calculate\n", "#since sigma=ni*e*(ue+uh) and sigma=1/rho\n", "#therefore ni=1/(rho*e*(ue+uh))\n", "ni=1/(rho*e*(ue+uh)); #calculation of intrinsic concentration\n", "ne=Nd; #calculation of electron concentration\n", "nh=ni**2/Nd; #calculation of hole concentration\n", "sigma=ne*ue*e+nh*uh*e; #calculation of conductivity\n", "rho=1/sigma; #calculation of resistivity\n", "\n", "#result\n", "print\"The electron concentration is ne=\",ne,\"/m^3\";\n", "print\"The hole concentration is nh=\",nh,\"/m^3\";\n", "print\"The resistivity of the specimen is =\",round(rho,3),\"ohm-m\";" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The electron concentration is ne= 1e+19 /m^3\n", "The hole concentration is nh= 2.20496745228e+13 /m^3\n", "The resistivity of the specimen is = 4.63 ohm-m\n" ] } ], "prompt_number": 9 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 9.11 , Page no:276" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import math\n", "from __future__ import division\n", "\n", "#given\n", "uh=1900; #in cm^2/V-s (mobility of electron)\n", "Na=2E17; #in /m^3 (acceptor doping concentration)\n", "e=1.6E-19; #in C(charge of electron)\n", "\n", "#calculate\n", "uh=uh*1E-4; #changing unit from cm^2/V-s to m^2/V-s\n", "Na=Na*1E6; #changing unit from 1/cm^3 to 1/m^3\n", "nh=Na; #hole concentration \n", "#since sigma=ne*ue*e+nh*uh*e and nh>>ne\n", "#therefore sigma=nh*uh*e\n", "sigma=nh*uh*e; #calculation of conductivity\n", "\n", "#result\n", "print\"The conductivity of p-type Ge crystal is =\",sigma,\"/ohm-m (roundoff error)\";\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The conductivity of p-type Ge crystal is = 6080.0 /ohm-m (roundoff error)\n" ] } ], "prompt_number": 10 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 9.12 , Page no:277" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import math\n", "from __future__ import division\n", "\n", "#given\n", "ue=0.19; #in m^2/V-s (mobility of electron)\n", "T=300; #in K (temperature)\n", "k=1.38E-23; #in J/K (Boltzmann\u2019s constant)\n", "e=1.6E-19; #in C(charge of electron)\n", "\n", "#calculate\n", "Dn=ue*k*T/e; #calculation of diffusion co-efficient\n", "\n", "#result\n", "print\"The diffusion co-efficient of electron in silicon is Dn=\",Dn,\"m^2/s\";" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The diffusion co-efficient of electron in silicon is Dn= 0.00491625 m^2/s\n" ] } ], "prompt_number": 11 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 9.13 , Page no:277" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import math\n", "from __future__ import division\n", "\n", "#given\n", "Eg=0.4; #in eV (Band gap of semiconductor)\n", "k=1.38E-23; #in J/K (Boltzmann\u2019s constant)\n", "T1=0; #in degree Celcius (first temperature)\n", "T2=50; #in degree Celcius (second temperature)\n", "T3=100; #in degree Celcius (third temperature)\n", "e=1.602E-19; #in C (charge of electron)\n", "\n", "#calculate\n", "T1=T1+273; #changing temperature form Celcius to Kelvin\n", "T2=T2+273; #changing temperature form Celcius to Kelvin\n", "T3=T3+273; #changing temperature form Celcius to Kelvin\n", "Eg=Eg*e; #changing unit from eV to Joule\n", "#Using F_E=1/(1+exp(Eg/2*k*T))\n", "F_E1=1/(1+math.exp(Eg/(2*k*T1))); #calculation of probability of occupation of lowest level at 0 degree Celcius\n", "F_E2=1/(1+math.exp(Eg/(2*k*T2))); #calculation of probability of occupation of lowest level at 50 degree Celcius\n", "F_E3=1/(1+math.exp(Eg/(2*k*T3))); #calculation of probability of occupation of lowest level at 100 degree Celcius\n", "\n", "#result\n", "print\"The probability of occupation of lowest level in conduction band is\";\n", "print\"\\t at 0 degree Celcius, F_E=\",F_E1,\"eV\";\n", "print\"\\t at 50 degree Celcius, F_E=\",F_E2,\"eV\";\n", "print\"\\t at 100 degree Celcius, F_E=\",F_E3,\"eV\";" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The probability of occupation of lowest level in conduction band is\n", "\t at 0 degree Celcius, F_E= 0.000202505914236 eV\n", "\t at 50 degree Celcius, F_E= 0.000754992968827 eV\n", "\t at 100 degree Celcius, F_E= 0.00197639649915 eV\n" ] } ], "prompt_number": 12 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 9.14 , Page no:278" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import math\n", "from __future__ import division\n", "\n", "#given\n", "Eg=1.2; #in eV (Energy band gap)\n", "k=1.38E-23; #in J/K (Boltzmann\u2019s constant)\n", "T1=600; T2=300; #in K (two temperatures)\n", "e=1.6E-19; #in C (charge of electron)\n", "\n", "#calculate\n", "Eg=Eg*e; #changing unit from eV to Joule\n", "#since sigma is proportional to exp(-Eg/(2*k*T))\n", "#therefore ratio=sigma1/sigma2=exp(-Eg/(2*k*((1/T1)-(1/T2))));\n", "ratio= math.exp((-Eg/(2*k))*((1/T1)-(1/T2))); #calculation of ratio of conductivity at 600K and at 300K\n", "\n", "#result\n", "print\"The ratio of conductivity at 600K and at 300K is =\",ratio;" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The ratio of conductivity at 600K and at 300K is = 108467.17792\n" ] } ], "prompt_number": 13 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 9.15 , Page no:278" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import math\n", "from __future__ import division\n", "\n", "#given\n", "ue=0.39; #in m^2/V-s (mobility of electron)\n", "n=5E13; #number of donor atoms\n", "ni=2.4E19; #in atoms/m^3 (intrinsic carrier density)\n", "l=10; #in mm (length of rod)\n", "a=1; #in mm (side of square cross-section)\n", "e=1.6E-19; #in C (charge of electron)\n", "\n", "#calculate\n", "l=l*1E-3; #changing unit from mm to m\n", "a=a*1E-3; #changing unit from mm to m\n", "A=a**2; #calculation of cross-section area\n", "Nd=n/(l*A); #calculation of donor concentration\n", "ne=Nd; #calculation of electron density\n", "nh=ni**2/Nd; #calculation of hole density\n", "#since sigma=ne*e*ue+nh*e*ue and since ne>>nh\n", "#therefore sigma=ne*e*ue\n", "sigma=ne*e*ue; #calculation of conductivity\n", "rho=1/sigma; #calculation of resistivity\n", "R=rho*l/A; #calculation of resistance \n", "\n", "#result\n", "print\"The electron density is ne=\",ne,\"/m^3\";\n", "print\"The hole density is nh=\",nh,\"/m^3\";\n", "print\"The conductivity is =\",sigma,\"/ohm-m\";\n", "print\"The resistance is R=\",round(R),\"ohm\";" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The electron density is ne= 5e+21 /m^3\n", "The hole density is nh= 1.152e+17 /m^3\n", "The conductivity is = 312.0 /ohm-m\n", "The resistance is R= 32.0 ohm\n" ] } ], "prompt_number": 14 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 9.16 , Page no:279" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import math\n", "from __future__ import division\n", "\n", "#given\n", "RH=3.66E-4; #in m^3/C (Hall coefficient)\n", "rho=8.93E-3; #in ohm-m (resistivity)\n", "e=1.6E-19; #in C (charge of electron)\n", "\n", "#calculate\n", "u=RH/rho; #calculation of mobility\n", "n=1/(RH*e); #calculation of density\n", "\n", "#result\n", "print\"The mobility is u=\",u,\"m^2/(V-s)\";\n", "print\"The density is n=\",n,\"/m^3\";" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The mobility is u= 0.0409854423292 m^2/(V-s)\n", "The density is n= 1.70765027322e+22 /m^3\n" ] } ], "prompt_number": 15 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 9.17 , Page no:279" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import math\n", "from __future__ import division\n", "\n", "#given\n", "RH=3.66E-4; #in m^3/C (Hall coefficient)\n", "rho=8.93E-3; #in ohm-m (resistivity)\n", "e=1.6E-19; #in C (charge of electron)\n", "\n", "#calculate\n", "nh=1/(RH*e); #calculation of density of charge carrier\n", "uh=1/(rho*nh*e); #calculation of mobility of charge carrier\n", "\n", "#result\n", "print\"The density of charge carrier is nh=\",nh,\"/m^3\";\n", "print\"The mobility of charge carrier is uh=\",uh,\"m^2/(V-s)\";" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The density of charge carrier is nh= 1.70765027322e+22 /m^3\n", "The mobility of charge carrier is uh= 0.0409854423292 m^2/(V-s)\n" ] } ], "prompt_number": 16 } ], "metadata": {} } ] }