1 November 26, 2001 Communication Theory ECEN 4242 Homework #9 Due December 5, 2001 1) Problem 6.4 from Textbook 2) Problem 6.21 from Textbook 3) Computer Experiment This experiment consists of two parts: Part I: In this part, students are asked to write a MATLAB script to plot the bit-error rate (BER) and symbol-error rate (SER) of the following digital modulation schemes. Eb 1 erfc N 2 0 1 2. Differential PSK (non-coherent): BER exp Eb / N 0 2 1 3. Non-coherent binary FSK: BER exp Eb / 2 N 0 2 E sin 4. Coherent 8-PSK and 16-PSK: SER erfc , where E is the transmitted N M 0 1. Coherent binary PSK: BER energy per symbol and M is the number of symbols. E0 E0 1 1 1 erfc 2 5. 8-QAM, 16-QAM, 32-QAM: SER 21 erfc N , N P P 0 0 2 where P=M for the case when number of bits per symbol is even and P=2M when the number of bits per symbol is odd. E0 is the energy of symbols with the lowest amplitude. Use erfc(.) provided by MATLAB and plot BER of cases 1, 2, and 3 on the same figure, say Figure 1. Plot SER of case 4 on another figure, say Figure 2, and plot SER of case 5 on a third figure, Figure 3. Let the ratio Eb/N0 or E0/N0 varies between –5 dB and 13 dB. Compare the different plots. Part II: In this part, some of the digital modulation schemes, seen in Part I, will be simulated numerically using Monte Carlo simulation. In all the following simulations use N=105 symbols or bits, Eb=1, and E=1. 1. Coherent QPSK: signal constellation is given by 4 points s1=(, ), s2=(-, ), s3=(-, -), s4=(, -), where =1/2. The message points s1, s2, s3, and s4 correspond to symbols 0, 1, 3, and 2, which represent the dibits 00, 01, 11, and 10, respectively. To generate the symbols 0, 1, 2, and 3, use the MATLAB function "floor(4*rand(.))". To generate the white Gaussian noise use the MATLAB function "randn(.)" 2 The use of the carrier should be implicit, which means that the received signal should be the equivalent base-band signal of the actual modulated signal. For the detection, compute the inner product of the received (noisy) signal and the signal constellation points s1, s2, s3, and s4. The decision will be in favor of the symbol (dibit) with the maximum inner product. The following block diagram shows the different steps to be performed by this simulation Uniform Random Generator Gaussian RNG QPSK Mapper Detector Gaussian RNG Reference Symbols Compare Detected Symbols Bit-error Counter Symbol-error counter RNG denotes random number generator. For the different values of SNR=Eb/N0, estimate the bit-error rate and symbol-error rate and plot them together with the theoretical bit-error rate of QPSK. Compare the results. 2. Coherent binary FSK: For the Monte Carlo simulation of coherent binary FSK use the following procedure Generate N bits using MATLAB function "floor(2*rand(N,1))". Generate the corresponding message points s0=[1 0] for bit 1 and s1=[0 1] for bit 0. Add a white Gaussian noise to the message points to get the base-band equivalent of the received noisy signal r(k). To generate a Gaussian noise use MATLAB function "randn". Compute the inner product of the received noisy signal and the message points s0 and s1. Let these inner products be c0 and c1. The decision rule is: if c0>c1 then decide in favor of bit 1, otherwise decide in favor of bit 0. For each value of SNR count the number of bit errors and estimate the bit-error rate. Plot the theoretical and simulated bit-error rate (BER) on the same figure. Compare your results. 3 3. Non-coherent binary FSK: for the simulation of this digital modulation scheme use the following procedure Generate N bits using MATLAB function "floor(2*rand(N,1))". Generate the corresponding message points s0=[1 0] for bit 1 and s1=[0 1] for bit 0. Assume that the received noisy signal has a carrier phase . Using in-phase and quadrature demodulation, the base-band equivalent signal at the receiver input takes the form rI (k ) Eb cos() wI (k ) rQ (k ) Eb sin( ) wQ (k ) Since we have two symbols (bits), there are two channels in the demodulator (see Figure 6.39 of the Textbook). If symbol 0 were transmitted, then the base-band equivalent signal components at the receiver would be r0 I (k ) Eb cos() w0 I (k ) r0Q (k ) Eb sin( ) w0Q (k ) r1I (k ) w1I (k ) r1Q (k ) w1Q (k ) and if symbol 1 were transmitted, then the received signal components would be r1I (k ) Eb cos() w1I (k ) r1Q (k ) Eb sin( ) w1Q (k ) r0 I (k ) w0 I (k ) r0Q (k ) w0Q (k ) where w0I, w0Q, w1I, and w1Q are independent white Gaussian noise components with zero means and variances equal to N0/2. The detector for non-coherent binary FSK is called square-law detector since it computes the following quantities: l0 r02I r02Q , for the channel of symbol 0 l1 r12I r12Q , for the channel of symbol 1 Then the detector makes its decisions based on the following rules: if l0>l1, decide for symbol 0, otherwise decide for symbol 1. Compare the decisions made by the detector with the original binary sequence and count the number of bit errors. Based on the number of errors, estimate the bit-error rate. Repeat this procedure for every value of signal-to-noise ratio. Plot the simulated and theoretical BERs of non-coherent binary FSK on the same figure. Note: For the non-coherent binary FSK simulation, the phase can take any value. It can even vary with time. But it doesn't have any effect on the results since the square-law detector computes cos2()+sin2(). Hence, without loss of generality the carrier phase can be set to zero.