{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Chapter 2: semiconductor diodes" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 1.1: forward_and_reverse_resistance.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//chapter 2\n", "//example 2.1\n", "//page 37\n", "printf('\n')\n", "printf('given')\n", "disp('a)')\n", "If=100*10^-3;Vf=.75;//given\n", "disp('forward resistance')\n", "Rf=Vf/If;\n", "printf('forward resistnace is %3.1fohm\n',Rf)\n", "disp('b)')\n", "Vr=50;Ir=100*10^-9;\n", "Rr=(Vr/Ir);\n", "printf('reverse resistnace is %3.0fohm\n',Rr)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.10: diode_Vf_and_junction_dynamic_resistance.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//chapter 2\n", "//example 2.10\n", "//page 49\n", "printf('\n')\n", "printf('given')\n", "Vf1=.7;Vf=-1.8*10^-3;If=26*10^-3;\n", "T=100-25;\n", "Vf2=Vf1+(T*Vf);\n", "printf(' voltage at 100C is %3.3fV\n',Vf2)\n", "disp('At 25C')\n", "T1=25;\n", "rd=(26*10^-3/If)*((T1+273)/298);\n", "printf(' resistance at 25 C is %dohm\n',rd)\n", "disp(' At 100C')\n", "T2=100;\n", "rd=(26*10^-3/If)*((T2+273)/298);\n", "printf(' resistance at 100 C is %3.2fohm\n',rd)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.11: diffusion_capacitance.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//chapter 2\n", "//example 2.11\n", "//page 51\n", "printf('\n')\n", "printf('given')\n", "If=10*10^-3;Vf=.7;t=70*10^-9;\n", "Cd=((t*If)/Vf)*10^9;\n", "printf(' diffusion capacitance is %dnF\n',Cd)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.12: minimum_fall_times.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//chapter 2\n", "//example 2.12\n", "//page 53\n", "printf('\n')\n", "printf('given')\n", "disp('A')\n", "trr=10*10^-9;\n", "tf=10*trr*10^9\n", "printf('minimum fall times is %dns\n',tf)\n", "disp('B)')\n", "trr=3;\n", "tf=10*trr;\n", "printf('minimum fall times is %dns\n',tf)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.14: resistor_for_R1_and_appropriate_scale.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//chapter 2\n", "//example 2.14\n", "//page 58\n", "printf('\n')\n", "printf('given')\n", "Io=75*10^-3;\n", "//vertical scale of 5mA/cm \n", "If=Io/5*10^-3\n", "R1=15/(75*10^-3)\n", "P=((Io)^2)*R1" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.15: maximum_current.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//chapter 2\n", "//example 2.15\n", "//page 63\n", "printf('\n')\n", "printf('given')\n", "Vz=7.5;Pd=400*10^-3;D=3.2*10^-3;\n", "Izm=Pd/Vz\n", "printf('current at 50C is %3.3fA\n',Izm)\n", "disp('At 100C')\n", "P2=Pd-((100-50)*D)\n", "printf(' power at 100C is %3.3fW\n',P2)\n", "Izm=P2/Vz;\n", "printf(' current at 100C is %3.3fA\n',Izm)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.16: diode_current_and_power_dissipation.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//chapter 2\n", "//example 2.16\n", "//page 64\n", "printf('\n')\n", "printf('given')\n", "E=20;R1=620;Vz=7.5;\n", "Vr1=E-Vz\n", "Iz=Vr1/R1;\n", "printf(' diode current is %3.5fA\n',Iz)\n", "Pd=Vz*Iz;\n", "printf( 'power dissipation is %3.3fW\n',Pd)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.17: upper_and_lower_limit_of_Vz.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//chapter 2\n", "//example 2.17\n", "//page 64\n", "printf('\n')\n", "printf('given')\n", "Vz=4.3;Zz=22;Iz=20*10^-3;\n", "Iz1=5*10^-3;//change in current\n", "Vz1=Iz1*Zz;\n", "Vzmax=Vz+Vz1;\n", "printf(' maximum voltage is %3.3fV\n',Vzmax)\n", "Vzmin=Vz-Vz1;\n", "printf('minimum voltage is %3.3fV\n',Vzmin)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.1: dynamic_resistance.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//chapter 2\n", "//example 2.2\n", "//page 39\n", "printf('\n')\n", "printf('given')\n", "If=70*10^-3;\n", "rd=(26*10^-3)/If;\n", "printf('dynamic resistance is %3.2fohm\n',rd)\n", "disp('a)')\n", "If=60*10^-3;Vf=.025;\n", "rd=Vf/If;\n", "printf('dynamic resistance is %3.2fohm\n',rd)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.3: diode_current.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//chapter 2\n", "//example 2.3\n", "//page 40\n", "printf('\n')\n", "printf('given')\n", "R1=4.7*10^3;E=15;Vf=.7;\n", "disp('diode current is E=If*R1+Vf')\n", "If=((E-Vf)/R1)*10^3;\n", "printf(' diode current is %3.2fmA\n',If) " ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.5: forward_current.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//chapter 2\n", "//example 2.5\n", "//page 41\n", "printf('\n')\n", "printf('given')\n", "E=1.5;Vf=.7;R1=10;rd=.25;\n", "disp('a)')\n", "If=(E-Vf)/R1;\n", "printf(' forward current is %3.3fmA\n',If)\n", "disp('b)')\n", "If=(E-Vf)/(R1+rd);\n", "printf(' forward current is %3.3fmA\n',If)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.6: dc_load_line.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//chapter 2\n", "//example 2.6\n", "//page 43\n", "printf('\n')\n", "printf('given')\n", "If=0;Vf=5;R1=100;\n", "E=(If*R1)+Vf\n", "disp('E')\n", "disp('B)')\n", "Vf=0;E=5;R1=100;\n", "If=(E/R1)*1000;\n", "printf('resistance is %dmA\n',If) " ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.8: new_supply_voltage.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//chapter 2\n", "//example 2.8\n", "//page 45\n", "printf('\n')\n", "printf('given')\n", "If=50*10^-3;Vf=1.1;R1=100;\n", "Vf1=If*R1;\n", "disp('Vf1')\n", "E=Vf1+Vf\n", "printf(' new supply voltage is %3.1fV\n',E)" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.9: maximum_forward_current.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//chapter 2\n", "//example 2.9\n", "//page 48\n", "printf('\n')\n", "printf('given')\n", "P1=700*10^-3;Vf=.7;\n", "//at 25C\n", "If=P1/Vf;\n", "disp('If')\n", "//at 65C\n", "D=5*10^-3;T=65-25;\n", "P2=P1-D*T\n", "If=P2/Vf;\n", "printf( 'maximum forward current at 65C is %3.3fA\n',If)" ] } ], "metadata": { "kernelspec": { "display_name": "Scilab", "language": "scilab", "name": "scilab" }, "language_info": { "file_extension": ".sce", "help_links": [ { "text": "MetaKernel Magics", "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md" } ], "mimetype": "text/x-octave", "name": "scilab", "version": "0.7.1" } }, "nbformat": 4, "nbformat_minor": 0 }