diff options
Diffstat (limited to 'Optical_Fiber_Communication_by_A_Kalavar/8-Optical_Receiver_Operation.ipynb')
-rw-r--r-- | Optical_Fiber_Communication_by_A_Kalavar/8-Optical_Receiver_Operation.ipynb | 327 |
1 files changed, 327 insertions, 0 deletions
diff --git a/Optical_Fiber_Communication_by_A_Kalavar/8-Optical_Receiver_Operation.ipynb b/Optical_Fiber_Communication_by_A_Kalavar/8-Optical_Receiver_Operation.ipynb new file mode 100644 index 0000000..e103d91 --- /dev/null +++ b/Optical_Fiber_Communication_by_A_Kalavar/8-Optical_Receiver_Operation.ipynb @@ -0,0 +1,327 @@ +{ +"cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 8: Optical Receiver Operation" + ] + }, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 7.q: Determine_maximum_response_time.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"// Question 7 page 8.55\n", +"\n", +"clc;\n", +"clear;\n", +"\n", +"w=25d-6; //width\n", +"v=3d4; //velocity\n", +"\n", +"t=w/v; //computing drift time\n", +"BW=(2*%pi*t)^-1; //computing bandwidth\n", +"rt=1/BW; //response time\n", +"rt=rt*10^9;\n", +"\n", +"printf('\nMaximum response time is %.2f ns.',rt);\n", +"\n", +"//Answer in the book is given as 5.24ns deviation of 0.01ns" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 8.10_1: Find_signal_to_noise_ratio.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"// Example 8.10.1 page 8.25\n", +"\n", +"clc;\n", +"clear;\n", +"\n", +"//erfc 4.24 is given to be 2d-9\n", +"\n", +"SN=(2*sqrt(2)*4.24)^2; //computing optical SNR\n", +"SN=round(SN);\n", +"SN1=sqrt(SN); //computing electrical SNR\n", +"printf('\nOptical SNR is %d.\nElectrical SNR is %d.',SN,SN1);" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 8.11_1: Find_photon_energy.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"// Example 8.11.1 page 8.26\n", +"\n", +"clc;\n", +"clear;\n", +"\n", +"P=1d-9; //probability of error\n", +"eta=1;\n", +"N= -log(P);\n", +"N1=round(N);\n", +"printf('Thus %.1f or %d photons are required for maintaining 10^-9 BER.\nAssuming eta=1;\nE=%.1f*hv.',N,N1,N);" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 8.17_1: Calculate_shot_noise_and_thermal_noise.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"// Example 8.17.1 page 8.46\n", +"\n", +"clc;\n", +"clear;\n", +"\n", +"lamda=0.85d-6;\n", +"h=6.626d-34; //plank's constant\n", +"c=3d8; //speed of light\n", +"q=1.6d-19; //charge of electron\n", +"eta=65/100; //quantum efficiency\n", +"P0=300d-9; //optical power\n", +"Id=3.5; //dark current\n", +"B=6.5d6; //bandwidth\n", +"K=1.39d-23; //Boltzman constant\n", +"T=293; //temperature\n", +"R=5d3; //load resister\n", +"Ip= 10^9*eta*P0*q*lamda/(h*c);\n", +"Its=10^9*(2*q*B*(Ip+Id));\n", +"Its=sqrt(Its);\n", +"printf('\nrms shot noise current is %.2f nA.',Its);\n", +"\n", +"It= 4*K*T*B/R;\n", +"It=sqrt(It);\n", +"It=It*10^9;\n", +"printf('\nThermal noise is %.2f nA.',It);\n", +"\n", +"//answer given in book for Thermal noise it is 4.58nA, deviation is 0.02nA." + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 8.17_2: Find_signal_to_noise_ratio.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"// Example 8.17.2 page 8.47\n", +"\n", +"clc;\n", +"clear;\n", +"\n", +"lamda=0.85d-6;\n", +"h=6.626d-34; //plank's constant\n", +"c=3d8; //speed of light\n", +"q=1.6d-19; //charge of electron\n", +"eta=65/100; //quantum efficiency\n", +"P0=300d-9; //optical power\n", +"Id=3.5; //dark current\n", +"B=6.5d6; //bandwidth\n", +"K=1.39d-23; //Boltzman constant\n", +"T=293; //temperature\n", +"R=5d3; //load resister\n", +"F_dB=3; //noise figure\n", +"F=10^(F_dB/10);\n", +"Ip=10^9*eta*P0*q*lamda/(h*c);\n", +"Its=10^9*(2*q*B*(Ip+Id));\n", +"It1= 4*K*T*B*F/R;\n", +"\n", +"SN= Ip^2/(Its+It1);\n", +"SN_dB=10*log10(SN);\n", +"SN=SN/10^4;\n", +"\n", +"printf('\nSNR is %.2f*10^4 or %.2f dB.',SN,SN_dB);\n", +"\n", +"//answer given in the book is 6.16*10^4 (deviation of 0.9) and 47.8dB (deviation of 0.16dB)\n", +"" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 8.18_1: Calculate_maximum_load_resistance.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"// Example 8.18.1 page 8.48\n", +"\n", +"clc;\n", +"clear;\n", +"\n", +"Cd=7d-12;\n", +"B=9d6;\n", +"Ca=7d-12;\n", +"\n", +"R=(2*3.14*Cd*B)^-1;\n", +"B1=(2*3.14*R*(Cd+Ca))^-1;\n", +"R=R/1000;\n", +"B1=B1/10^6;\n", +"printf('\nThus for 9MHz bandwidth maximum load resistance is %.2f Kohm\nNow if we consider input capacitance of following amplifier Ca then Bandwidth is %.2fMHz\nMaximum post detection bandwidth is half.',R,B1);\n", +"\n", +"//answer for resistance in the book is 4.51Kohm, deviation of 0.01Kohm, while for bandwidth it is 4.51 MHz, deviation of 0.01MHz" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 8.3_1: Find_quantum_efficiency_and_minimum_incident_power.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"// Example 8.3.1 page 8.9\n", +"\n", +"clc;\n", +"clear;\n", +"\n", +"P=10^-9; //probability of error\n", +"eta=1; //ideal detector\n", +"h=6.626d-34 //plank's constant\n", +"c=3d8; //speed of light\n", +"lamda=1d-6; //wavelength\n", +"B=10^7; //bit rate\n", +"\n", +"Mn= - log(P);\n", +"printf('\n The quantum imit at the receiver to maintain bit error rate 10^-9 is (%.1f*h*f)/eta.',Mn);\n", +"f=c/lamda\n", +"Popt= 0.5*Mn*h*f*B/eta; //computing optical power\n", +"Popt_dB = 10 * log10(Popt) + 30; //optical power in dbm\n", +"Popt=Popt*10^12;\n", +"\n", +"printf('\nMinimum incident optical power is %.1f W or %.1f dBm.',Popt,Popt_dB);" + ] + } +, +{ + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Example 8.3_2: Calculate_incident_optical_power.sce" + ] + }, + { +"cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], +"source": [ +"// Example 8.3.2 page 8.11\n", +"\n", +"clc;\n", +"clear;\n", +"\n", +"SN_dB=60; //signal to noise ratio\n", +"h=6.626d-34 //plank's constant\n", +"c=3d8; //speed of light\n", +"lamda=1.3d-6; //wavelength\n", +"eta=1;\n", +"B=6.5d6; //Bandwidth\n", +"\n", +"SN=10^(SN_dB/10);\n", +"f=c/lamda\n", +"Popt= 2*SN*h*f*B/eta; //computing optical power\n", +"Popt_dB = 10 * log10(Popt) + 30; //optical power in dbm\n", +"Popt=Popt*10^6;\n", +"printf('\nIncident power required to get an SNR of 60 dB at the receiver is %.4f microWatt or %.3f dBm',Popt,Popt_dB);\n", +"printf('\nNOTE - Calculation error in the book.\nThey have take SN as 10^5 while calculating, which has lead to an error in final answer');\n", +"\n", +"//Calculation error in the book.They have take SN as 10^5 while calculating, which has lead to an error in final answer\n", +"//answer in the book 198.1nW and -37.71 dBm" + ] + } +], +"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 +} |