{ "metadata": { "name": "" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "CHAPTER 13 JFETs" ] }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 13-1, Page 428" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "VG=20 #Gate voltage(V)\n", "IG=1*10**-9 #Gate current(A) \n", "\n", "Rin=VG/IG #input resistance(Ohm)\n", "\n", "print 'input resistance of JFET Rin = ',Rin/10**6,'MOhm'" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "input resistance of JFET Rin = 20000.0 MOhm\n" ] } ], "prompt_number": 1 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 13-2, Page 430" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "Vp=6 #Pinch off voltage(V)\n", "IDSS=100*10**-3 #current drain to source with shorted gate(A)\n", "\n", "RDS=Vp/IDSS #Ohmic resistance(Ohm)\n", "VGS_off=-Vp #gate-source cutoff voltage(V)\n", "\n", "print 'Ohmic resistance RDS = ',RDS,'Ohm'\n", "print 'Gate-source cutoff VGS(off) = ',VGS_off,'V'" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Ohmic resistance RDS = 60.0 Ohm\n", "Gate-source cutoff VGS(off) = -6 V\n" ] } ], "prompt_number": 1 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 13-3, Page 431" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "VGS_off=-4 #gate-source cutoff voltage(V)\n", "IDSS=5 #current drain to source with shorted gate(mA)\n", "\n", "VGS=VGS_off/2 #gate voltage(V)\n", "ID=IDSS/4.0 #drain current(mA)\n", "\n", "print 'Gate voltage VGS = ',VGS,'V'\n", "print 'Drain current ID = ',ID,'mA'" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Gate voltage VGS = -2 V\n", "Drain current ID = 1.25 mA\n" ] } ], "prompt_number": 8 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 13-4, Page 432" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "VGS_off=-8 #gate-source cutoff voltage(V)\n", "IDSS=16 #current drain to source with shorted gate(mA)\n", "\n", "VGS=VGS_off/2 #gate voltage(V)\n", "ID=IDSS/4.0 #drain current(mA)\n", "\n", "print 'Gate voltage VGS = ',VGS,'V'\n", "print 'Drain current ID = ',ID,'mA'" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Gate voltage VGS = -4 V\n", "Drain current ID = 4.0 mA\n" ] } ], "prompt_number": 9 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 13-5, Page 433" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "Vp=4 #pinchoff voltage(V)\n", "Vin=-10 #input voltage(V)\n", "RD=10.0 #drain resistor(KOhm)\n", "IDSS=10.0 #IDSS (mA)\n", "VDD=10.0 #Drain supply voltage(V)\n", "\n", "VGS_off=-Vp #VGS cutoff voltage(V)\n", "VD=-Vin #drain voltage(V)\n", "ID_sat=VD/RD #saturation drain current(mA)\n", "RDS=Vp/IDSS #Ohmic resistance(Ohm)\n", "VD=VDD*RDS/(RDS+RD) #drain votage(V)\n", "\n", "print 'Drain voltage VD = ',round(VD,2),'V'" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Drain voltage VD = 0.38 V\n" ] } ], "prompt_number": 2 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 13-6, Page 436" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "Vp=4 #pinchoff voltage(V)\n", "RD=2.0 #drain resistor(KOhm)\n", "RS=400 #source resistance(Ohm)\n", "IDSS=10.0 #IDSS (mA)\n", "VDD=30.0 #Drain supply voltage(V)\n", "\n", "RDS=1000*Vp/IDSS #Ohmic resistance(Ohm)\n", "ID=IDSS/4.0 #drain current(mA)\n", "VD=VDD-(ID*RD) #drain votage(V)\n", "\n", "print 'Ohmic resistance RDS = ',RDS,'Ohm'\n", "print 'drain voltage VD = ',VD,'V'" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Ohmic resistance RDS = 400.0 Ohm\n", "drain voltage VD = 25.0 V\n" ] } ], "prompt_number": 22 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 13-7, Page 437" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "IDSS=20 #IDSS (mA)\n", "RS=270 #Source resistance (Ohm)\n", "\n", "VGS=-IDSS*RS #gate-source voltage(V)\n", "VGSQ_min=-0.8 #Q point minimum gate-source voltage(V)\n", "VGSQ_max=-2.1 #Q point maximum gate-source voltage(V)\n", "IDQ_min=2.8 #Q point minimum drain current(V)\n", "IDQ_max=8.0 #Q point maximum drain current(V)\n", "VGS_off_min=2 #VGS(off) minimum(V)\n", "VGS_off_max=6 #VGS(off) maximum(V)\n", "ID_min=8.0 #ID minimum(mA)\n", "ID_max=20.0 #ID maximum(mA)\n", "Rs_min=1000*VGS_off_min/ID_min #Minimum value for Rs(Ohm)\n", "Rs_max=1000*VGS_off_max/ID_max #Maximum value for Rs(Ohm)\n", "\n", "print 'Maximum value for Rs =',Rs_max,'Ohm'\n", "print 'Minimum value for Rs =',Rs_min,'Ohm'\n", "print 'Choose approximately mid point between these two.'" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Maximum value for Rs = 300.0 Ohm\n", "Minimum value for Rs = 250.0 Ohm\n", "Choose approximately mid point between these two.\n" ] } ], "prompt_number": 29 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 13-8, Page 440" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "VS=10 #source voltage (V)\n", "RS=2.0 #source resistance(KOhm)\n", "VDD=30 #Drain supply voltage (V)\n", "RD=1.0 #Drain resistance(KOhm)\n", "\n", "ID=VS/Rs #Drain current(mA)\n", "VD=VDD-(ID*RD) #Drain voltage(V)\n", "VDS=VD-VS #Drain to source voltage (V)\n", "ID_sat=VDD/(RD+RS) #ID(dc-saturation) (mA)\n", "VDS_cut=VDD #VDS(cutoff) (V)\n", "\n", "print 'ID (saturation) = ',ID_sat,'mA'\n", "print 'VDS (cutoff) = ',VDS_cut,'V'" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "ID (saturation) = 10.0 mA\n", "VDS (cutoff) = 30 V\n" ] } ], "prompt_number": 38 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 13-9, Page 441" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "IDSS=20 #IDSS (mA)\n", "RS=270 #Source resistance (Ohm)\n", "VDD=30 #Drain supply voltage (V)\n", "RD=1.0 #Drain resistance(KOhm)\n", "R1=1*10**6 #Gate resistor1(Ohm) \n", "R2=2*10**6 #Gate resistor2(Ohm) \n", "\n", "VG=-VDD*R1/(R1+R2) #gate-source voltage(V)\n", "ID=VG/RS #current for second point(mA)\n", "\n", "VGSQ_min=-0.4 #Q point minimum gate-source voltage(V)\n", "VGSQ_max=-2.4 #Q point maximum gate-source voltage(V)\n", "IDQ_min=5.2 #Q point minimum drain current(V)\n", "IDQ_max=6.3 #Q point maximum drain current(V)\n", "\n", "print 'Maximum value for VGS =',VGSQ_max,'V'\n", "print 'Minimum value for VGS =',VGSQ_min,'V'\n", "print 'Maximum value for ID =',IDQ_max,'mA'\n", "print 'Minimum value for ID =',IDQ_min,'mA'" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Maximum value for VGS = -2.4 V\n", "Minimum value for VGS = -0.4 V\n", "Maximum value for ID = 6.3 mA\n", "Minimum value for ID = 5.2 mA\n" ] } ], "prompt_number": 93 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 13-10, Page 443" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "RS=3.0 #Source resistance (KOhm)\n", "VDD=15 #Drain supply voltage (V)\n", "RD=1.0 #Drain resistance(KOhm)\n", "\n", "ID=VDD/RS #drain current(mA)\n", "VD=VDD-(ID*RD) #drain voltage(V)\n", "\n", "print 'Drain current ID = ',ID,'mA'\n", "print 'Drain voltage VD = ',VD,'V'" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Drain current ID = 5.0 mA\n", "Drain voltage VD = 10.0 V\n" ] } ], "prompt_number": 41 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 13-11, Page 444" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "RS=2.0 #Source resistance (KOhm)\n", "VDD=10 #Drain supply voltage (V)\n", "RD=1.0 #Drain resistance(KOhm)\n", "VBE=0.7 #BJT transistor drop(V)\n", "\n", "ID=((VDD/2)-VBE)/RS #drain current(mA)\n", "VD=VDD-(ID*RD) #drain voltage(V)\n", "\n", "print 'Drain current ID = ',ID,'mA'\n", "print 'Drain voltage VD = ',VD,'V'" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Drain current ID = 2.15 mA\n", "Drain voltage VD = 7.85 V\n" ] } ], "prompt_number": 44 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 13-12, Page 447" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "IDSS=5.0 #IDSS current (mA)\n", "gm0=5000.0 #transconductance at VGS=0(uS)\n", "VGS=-1.0 #VGS (V)\n", "VGS_off=1000*-2*IDSS/gm0 #VGS (off) (V)\n", "gm=gm0*(1-(VGS/VGS_off)) #gm at VGS=-1V\n", "\n", "print 'VGS (Off) = ',VGS_off,'V'\n", "print 'gm = ',gm,'uS'" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "VGS (Off) = -2.0 V\n", "gm = 2500.0 uS\n" ] } ], "prompt_number": 52 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 13-13, Page 449" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "RD=3.6 #drain resistance(KOhm)\n", "RL=10 #Load resistance(KOhm)\n", "gm=5000 #transconductance (uS)\n", "Vin=1 #input(mVpp)\n", "\n", "rd=RD*RL/(RD+RL) #ac drain resistance(KOhm)\n", "Av=gm*rd/1000 #voltage gain\n", "Vout=Av*Vin #Output voltage(V)\n", "\n", "print 'ac drain resistance rd = ',round(rd,2),'KOhm'\n", "print 'voltage gain Av = ',round(Av,2)\n", "print 'output voltage Vout = ',round(Vout,2),'mVpp'" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "ac drain resistance rd = 2.65 KOhm\n", "voltage gain Av = 13.24\n", "output voltage Vout = 13.24 mVpp\n" ] } ], "prompt_number": 3 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 13-14, Page 450" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "RS=1.0 #source resistance(KOhm)\n", "RL=1.0 #Load resistance(KOhm)\n", "gm=2500.0*10**-6 #transconductance (S)\n", "Vin=1 #input(mVpp)\n", "\n", "rs=1000*RS*RL/(RS+RL) #ac source resistance(Ohm)\n", "Av=gm*rs/(1+(gm*rs)) #voltage gain\n", "Vout=Av*Vin #Output voltage(V)\n", "\n", "print 'ac source resistance rs = ',round(rs,2),'Ohm'\n", "print 'voltage gain Av = ',round(Av,2)\n", "print 'output voltage Vout = ',round(Vout,2),'mVpp'" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "ac source resistance rs = 500.0 Ohm\n", "voltage gain Av = 0.56\n", "output voltage Vout = 0.56 mVpp\n" ] } ], "prompt_number": 4 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ " Example 13-15, Page 450" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "Ra=780 #Adjustaed resistance(Ohm)\n", "RS1=220 #source resistance(Ohm)\n", "VDD=30 #Drain supply voltage(V)\n", "RL=3 #Load resistance(KOhm)\n", "gm=2000.0*10**-6 #transconductance (S)\n", "\n", "RS=(RS1+Ra)/1000 #total source resistance(KOhm)\n", "rs=1000*RS*RL/(RS+RL) #ac source resistance(Ohm)\n", "Av=gm*rs/(1+(gm*rs)) #voltage gain\n", "\n", "print 'Ac source resistance rs = ',rs,'Ohm'\n", "print 'voltage gain Av = ',Av" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Ac source resistance rs = 750 Ohm\n", "voltage gain Av = 0.6\n" ] } ], "prompt_number": 74 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 13-16, Page 451" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "RS=2.2 #source resistance(Ohm)\n", "VDD=30 #Drain supply voltage(V)\n", "RL=3.3 #Load resistance(KOhm)\n", "gm=3500.0*10**-6 #transconductance (S)\n", "R1=2*10**-6 #Base resistor 1(Ohm)\n", "R2=1*10**-6 #Base resistor 2(Ohm) \n", "\n", "VD=VDD*(R2/(R1+R2)) #drain voltage(V)\n", "ID=VD/RS #drain current(mA)\n", "rs=1000*RS*RL/(RS+RL) #ac source resistance(Ohm)\n", "Av=gm*rs/(1+(gm*rs)) #voltage gain\n", "\n", "print 'Ac source resistance rs = ',rs/1000,'KOhm'\n", "print 'voltage gain Av = ',round(Av,2)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Ac source resistance rs = 1.32 KOhm\n", "voltage gain Av = 0.82\n" ] } ], "prompt_number": 5 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 13-17, Page 454" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "RD=10.0 #Drain resistance(KOhm)\n", "R1=0.2 #resistance(KOhm)\n", "IDSS=10.0 #IDSS current(mA)\n", "VGS_off=-2 #VGS(off) (V)\n", "gm=3500.0*10**-6 #transconductance (S)\n", "Vin=10.0 #input voltage (mVpp)\n", "\n", "RDS=-VGS_off/IDSS #Ohmic resistance(Ohm)\n", "Vout_on=Vin*RDS/(RD+R1) #Output voltage when JFET is on(V)\n", "Vout_off=Vin #Output voltage when JFET is off(V)\n", "ratio=Vout_off/Vout_on #on-off ratio\n", "\n", "print 'output voltage Vout = ',round(Vout_on,2),'mVpp'\n", "print 'on-off ratio = ',ratio" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "output voltage Vout = 0.2 mVpp\n", "on-off ratio = 51.0\n" ] } ], "prompt_number": 6 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 13-18, Page 455" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "RD=10.0 #Drain resistance(KOhm)\n", "R1=0.2 #resistance(KOhm)\n", "R2=10*10**6 #resistance(Ohm)\n", "IDSS=10.0 #IDSS current(mA)\n", "VGS_off=-2 #VGS(off) (V)\n", "gm=3500.0*10**-6 #transconductance (S)\n", "Vin=10.0 #input voltage (mVpp)\n", "\n", "Vout_on=Vin*(RD/(RD+R1)) #Output voltage when JFET is on(V)\n", "Vout_off=Vin*(RD/R2) #Output voltage when JFET is off(V)\n", "ratio=Vout_on/Vout_off/1000 #on-off ratio\n", "\n", "print 'output voltage Vout when on = ',round(Vout_on,2),'mVpp'\n", "print 'output voltage Vout when off = ',Vout_off*10**6,'uVpp'\n", "print 'on-off ratio = ',round(ratio,2)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "output voltage Vout when on = 9.8 mVpp\n", "output voltage Vout when off = 10.0 uVpp\n", "on-off ratio = 980.39\n" ] } ], "prompt_number": 7 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 13-19, Page 455" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\n", "fout=20 #frequency(KHz)\n", "RDS=50.0 #Ohmic resistance(Ohm)\n", "RL=10*10**3 #Load resistance(Ohm)\n", "Vin=100 #input voltage (mV)\n", "\n", "Vpeak=Vin*RL/(RL+RDS) #peak voltage(V)\n", "\n", "print 'Outout Vpeak = ',round(Vpeak,2),'mV'" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Outout Vpeak = 99.5 mV\n" ] } ], "prompt_number": 8 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] } ], "metadata": {} } ] }