{ "metadata": { "name": "", "signature": "sha256:67ee8e7b784b607cbab75ad3758612a5810d648f2de452b74761d1700d1555d3" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "heading", "level": 1, "metadata": {}, "source": [ "Chapter 10 - Digital Multiplexers" ] }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 1 - pg 469" ] }, { "cell_type": "code", "collapsed": false, "input": [ "#calculate the minimum value of permissible sampling rate\n", "\n", "#given\n", "X_1 = 4.*10**3#first analog signal in Hz\n", "X_2 = 4.5*10**3#second analog signal in Hz\n", "\n", "#calculation\n", "#the highest frequency cmponent of the composite signal consisting among two signal is X_2\n", "f_sMIN = 2*X_2;\n", "\n", "print \"The minimum value of permissible sampling rate (kHz) = \",f_sMIN/1000.\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "The minimum value of permissible sampling rate (kHz) = 9.0\n" ] } ], "prompt_number": 1 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 2 - pg 469" ] }, { "cell_type": "code", "collapsed": false, "input": [ "#calculate the signalling rate and minimum channel bandwidth\n", "\n", "#given\n", "X_1 = 6.*10**3#Nyquist rate in Hz obtained the table\n", "X_2 = 2.*10**3#Nyquist rate in Hz obtained the table\n", "X_3 = 2.*10**3#Nyquist rate in Hz obtained the table\n", "X_4 = 2.*10**3#Nyquist rate in Hz obtained the table\n", "\n", "#calculations\n", "s = 2000#speed of rotation\n", "X1 = 3*s#number of samples produced per second for first signal\n", "X2 = 1*s#number of samples produced per second for second signal\n", "X3 = X2#number of samples produced per second for third signal\n", "X3 = X2#number of samples produced per second for fourth signal\n", "SR = X1 + 3*X2#signalling rate\n", "BW = .5*SR#minimum channel bandwidth \n", "\n", "#results\n", "print \"If the sampling commutator rotates at the rate of 2000 rotations per second the the signals X_1,X_2,X_3,X_4 will be sampled at their Nyquist rate\"\n", "print \"Signalling rate (samples per second) = \",SR\n", "print \"Minimum channel bandwidth (Hz) = \",BW\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "If the sampling commutator rotates at the rate of 2000 rotations per second the the signals X_1,X_2,X_3,X_4 will be sampled at their Nyquist rate\n", "Signalling rate (samples per second) = 12000\n", "Minimum channel bandwidth (Hz) = 6000.0\n" ] } ], "prompt_number": 2 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 3 - pg 470" ] }, { "cell_type": "code", "collapsed": false, "input": [ "#calculate the sampling rate and Nyquist rate\n", "\n", "#given\n", "SR = 8000.#sampling rate in samples per second\n", "T = 1.*10**-6#pulse duration\n", "f = 3.4*10**3#highest frequency component\n", "\n", "#calculations\n", "#second case\n", "NR = 2.*f#Nyquist rate of sampling\n", "T2 = 1./NR#time taken for one rotation of commutator\n", "\n", "\n", "#results\n", "print \"sampling rate for first condition = \",SR\n", "print \"There are 24 voice signals + 1 synchronizing pulse\"\n", "print \"Pulse width of each voice channel and synchronizing pulseis 1 microseconds \"\n", "print \"Now, time taken by the commutator for 1 rotation =1/8000 = 125*10**-6 seconds\"\n", "print \"Number of pulses produced in one rotation = 24 + 1 = 25\"\n", "print \"Therefore, the leading edges of the pulses are at 125/25 = 5*10^-6 seconds distance\"\n", "print \"Nyquist rate for second condition (kHz) = \",NR/1000.\n", "print \"Time taken for one rotation of commutator (museconds) = \",round(T2*10**6,2)\n", "print \"Therefore, 147*10**-6 seconds corresponds to 25 pulses\"\n", "print \"therefore, 1 pulse corresponds to 5.88*10^-6 seconds\"\n", "print \"As the pulse width of each pulse is 1*10^-6 seconds, the spacing between adjacent pulses will be 4.88*10**-6 seconds\\n and if we assume tou = 0 then the spacing between the adjacent pulses will be 5.88*10**-6 seconds \"\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "sampling rate for first condition = 8000.0\n", "There are 24 voice signals + 1 synchronizing pulse\n", "Pulse width of each voice channel and synchronizing pulseis 1 microseconds \n", "Now, time taken by the commutator for 1 rotation =1/8000 = 125*10**-6 seconds\n", "Number of pulses produced in one rotation = 24 + 1 = 25\n", "Therefore, the leading edges of the pulses are at 125/25 = 5*10^-6 seconds distance\n", "Nyquist rate for second condition (kHz) = 6.8\n", "Time taken for one rotation of commutator (museconds) = 147.06\n", "Therefore, 147*10**-6 seconds corresponds to 25 pulses\n", "therefore, 1 pulse corresponds to 5.88*10^-6 seconds\n", "As the pulse width of each pulse is 1*10^-6 seconds, the spacing between adjacent pulses will be 4.88*10**-6 seconds\n", " and if we assume tou = 0 then the spacing between the adjacent pulses will be 5.88*10**-6 seconds \n" ] } ], "prompt_number": 3 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 4 - pg 471" ] }, { "cell_type": "code", "collapsed": false, "input": [ "#calculate the Signaling rate and minimum channel bandwidth\n", "\n", "#given\n", "N = 6.#number of channels\n", "f_m = 5.*10**3#bandwidth of each channel\n", "\n", "#calculations\n", "SR1= 2*f_m#minimum sampling rate\n", "SR = N*SR1#sampling rate\n", "BW =N*f_m#minimum channel bandwidth\n", "\n", "#results\n", "print \"Signaling rate (Kbits per second) = \",SR/1000.\n", "print \"Minimum channel bandwidth (kHz) = \",BW/1000.\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Signaling rate (Kbits per second) = 60.0\n", "Minimum channel bandwidth (kHz) = 30.0\n" ] } ], "prompt_number": 4 }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Example 6 - pg 476" ] }, { "cell_type": "code", "collapsed": false, "input": [ "#calculate the number of framing plus signaling bits per frame\n", "\n", "#given\n", "channel=64*10**3 #kb/s\n", "bitrate=2.048*10**6 #bits/sec\n", "\n", "#calculations\n", "fs_min=channel*2\n", "x=bitrate/fs_min\n", "\n", "#results\n", "print 'No. of bits per frame = ',x" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "No. of bits per frame = 16.0\n" ] } ], "prompt_number": 5 } ], "metadata": {} } ] }