Sunteți pe pagina 1din 34

COVENTRY UNIVERSITY

COVENTRY UNIVERSITY
FACULTY OF ENGINEERING & COMPUTING

BACHELOR OF ENGINEERING (HONS) IN ELECTRICAL AND ELECTRONIC ENGINEERING

A311SE Communications and networks

COURSEWORK

STUDENT NAME : M. Faazil Fairooz STUDENT ID NUMBER : 4701970 SUPERVISOR : DR. ROHAN MUNASINGHE

COVENTRY UNIVERSITY

TABLE OF CONTENTS:

Chapter 1: Abstract .............5 1.1 Motivation.....L..........5 1.2 Methodologies and Result......................5 1.3 Conclusion.......................5 Chapter 2: Introduction....6 2.1 Introduction........6 2.2 Objective............................6 Chapter 3: QAM Background and Principal....................................7 3.1 Governing Principles 3.2 Brief History of Evolution 3.3 Principle of Operations of Multilevel Digital Modulations Chapter 4: Principle of Operations of M-Qam Modulation... ..11 4.1 Detail of Operations.....11 4.2 Detail of Functionality.....11 4.3Waveform Illustration for Better Understanding....................11 Chapter 5: Parameters for Performance Measurement of M-Qam Modulation....................13 Chapter 6: Design and Software Implementation......................................14 6.1.1 6.1.2 6.1.3 6.1.4 6.1.5 6.1.6 6.1.7 6.1.7 Design Calculations...14 Calculate the number of bits per symbol k... 14 Phase calculation of wave design ..15 Prepare a table for binary bits to symbols assignment. 15 Draw the constellation diagram for given 8 M_QAM modulations......16 MATLAB program.....16 Final output Modulated wave............18 Screenshots ......19

COVENTRY UNIVERSITY

Chapter 7: Analysis/ conclusion on Results....20 7.1 Analysis....20 7.2 Conclusion....20 Chapter 8: Introduction to Forward Error Correction (FEC) Coding.21 8.1 Introduction.21 Chapter 9: Principles for Forward Error Correction (FEC)......22 9.1Principles of the FEC 9.2Performance Measurement Parameters For (FEC) Coding 9.2.1 SNR 9.2.2 Minimum Distance Chapter 10: Principles for Hamming Coding and Decoding....24 10.1Hamming Coding....24 Chapter 11: Design and Software Implementation.26 Chapter 12: Analysis/ conclusion on Results...32 Turnitin Report .....33

COVENTRY UNIVERSITY

COVENTRY UNIVERSITY

ACKNOWLEDGMENTS

The writer would like to send his distinct recognitions to his lecturers Dr. Rohan Munasingha and Mr. Duminda for their great effort during the coursework and before. Also, I would like to thank my parents for their standing behind me.

COVENTRY UNIVERSITY

CHAPTER 1: Abstract

1.1 Motivation Over time, the globe is still improving and advancing around us, there is a lot essence and personalities trying to change things around us in the field of communication but rather little success is achieved in this technological stride, its the same in all humans they tend to live and work with less effort and time and more efficiently and effectively
This project has been emotively dedicated to communication techniques, because we are in a fast growing world, where it is called a global village for us to be in the streamline of that technology we have to have very large and complex communication infrastructure is to be used where two main modulation schemes has been used and tested in computer simulation environment for proper function. which would be QAM (M-ary Quadrature Amplitude Modulation) and BPSK (Binary Phase Shift Keying) modulation techniques the main objective of this project is to clearly understand and hypothetically assess each problem given below, The first would be the understanding of QAM digital modulation techniques and the second would be the design of a Hamming code and its error detection mechanism. 1.2 Methodologies and Result

The methodology used firstly would be the calculating all mathematical numbers and variables and then finally getting into matlab for computing and plotting purposes, where the accuracy of mathematical calculated data could be tested. The second part of this report concentrates the construction of the Hamming code using basic theory after this part has been accomplished, it too will be fed into the computer for processing. For the above stated problem Matlab and Simulink would be extensively used 1.3 Conclusion Final results would that all mathematical parts would be solved and graphically represented. The main outcome of this project would be that an in-depth knowledge is acquired when completing this project

COVENTRY UNIVERSITY

CHAPTER 2: Introduction

2.1 Introduction Telecommunications in recent times has greatly evolved, where new and newer technologies have come in recent years. These technologies came in two forms mainly as analog and digital communication. As a part of our project we mainly look into digital communications. Where QAM techniques are used is large at hand. If it is to be seen in a nut shell QAM relates to the change in the phase of the digital signal with relationship to the input signal. 2.2 Objective The objective can be broken into a segment that would be Goals

The goal of this project is to clearly understand the uses and purposes QAM and hamming code to a BPSK modulated signal. And the clear idea of using matlab is also emphasized here.

COVENTRY UNIVERSITY

CHAPTER 3: QAM Background and Principal

3.1 Governing Principles The fundamental definition of communication methodology is to transfer informative content from any indicate any point, at whatever time and anyplace. In general, the communication framework or communication channel is limited on this principle, but over the years this brainstorm is in enduring enhancement. For instance, at the starting, individuals were utilizing blaze and drums as indicators to transfer the qualified data, and this methodology just for little separation but now we have enhanced communications frameworks now. Folks can talk and see one another from any side or wherever on the earth, accurately, in the universe. Any communication framework, basically built on these principals. Any QAM system, includes the following three parts shown as a satellite communication diagram in Figure 3.1[refer block diagram for simplified version figure 3.2]

Figure 0-1: Satellite Communication Diagram (image courtesy to Wikipedia. org)

COVENTRY UNIVERSITY

Noise

Source (transmitter)

Transmission Media

Destination (receiver)

Figure 0-2: block diagram Communication system Whenever the data or info signal transmits over the carrier. Its called modulating signal. Consider for example a QAM sinusoidal carrier signal. The signal is modulated according to the input data the modification is done on the carrier wave The operation of adjusting the amplitude of carrier means that modulation of the amplitude of carrier is called Amplitude Modulation. The data signal becomes modulating signal. Similarly when a data or modulating signal adjusting the phase or the frequency of the carrier it is called Angle Modulation, see Figure 3-3, below.

Figure 0-3: QAM waveform(image courtesy to Google image sourse)

COVENTRY UNIVERSITY

3.2 Brief History of Evolution M-ary Quadrature Amplitude Modulation more known as QAM was first introduced into the market in the early 20th century.it was first designed as a method of transmitting complex digital signals by the use of multilevel modulation. This technology was more concerned with signals that were created out of more complex sources like speech or video encoding or data that was more originated from computers and communication servers.

This method of modulation was more successful with signal encrypting and more so ever in signal scrambling purposes. Where early military equipments like communication set and data transmitters used this technology. This technology was taken further and hybrid adaptive

channel equalization was developed where the signal is set to deferent signal levels to reduce and avoid long distance losses in communication sets. The source encoder may be used to remove some of the redundancy which occurs in many sources such as speech, typically reducing the transmission rate of the source.

3.3 Principle of Operations of Multilevel Digital Modulations

To first understand the operation of multilevel digital modulation we must first see why digital modulation is used in the field of telecommunications and science For all transmission to be possible there must be a possible transmission media where the signal is generated (transmitter) and could travel for its intended destination were in communication we call it as the receiver. For all transmission media in communication there is only a static range of frequencies that is available for transmission purpose, as this is available we could not possibly transmit in all frequencies this could be disastrous, If a solution is not found and the data that we sent would not be suitable for that channel. A successful scheme was found after extensive research is that to alter a transmitting signal according to the information that is feed as input data, this alteration of the signal is called as modulation. This data that is modulated could be received by the receiver

10

COVENTRY UNIVERSITY

and the data that is inside the signal could be recovered as the original data that was encoded this is called as demodulation. See Figure 3-4, below

Figure 0-4: wave Spectrum (image courtesy to Wikipedia. org)


Text LF MF HF UHF Definition Low frequency Medium frequency High frequency Ultra high frequency Text SHF EHF Definition Super high frequency Extremely high frequency

11

COVENTRY UNIVERSITY

CHAPTER 4 : Principle of Operations of M-Qam Modulation

4.1 Detail of Operations QAM is a modulation technique that is raised by the combination of PSK (Phase Shift Key) and ASKS (Amplitude Shift Key) method. Therefore QAM has both the characteristics of PSK and ASK in its carrier wave where the data is incorporated. However it is regarded as a PSK waveform by specialist in the digital modulation world, But for the QAM modulator the carrier wave is ASK modulated. It is also possible and tested that two different signals could be transmitted on the same carrier frequency by creating two identical copies of the same carrier frequency without harming or cancellation of the original data signal that is to be transmitted; this is possible by the means of shifting each wave by 90o QAM modulator block diagram See Figure 4-1, below

Figure 5-1: wave Spectrum

4.2 Detail of Functionality For the functional scheme we could take that bit streams arrive at the serial to parallel converter at time which is equal to T, then the bits are broken up and separated into two separate bit streams where the data bits would enter D1 and D2 separately
12

COVENTRY UNIVERSITY

The data in the upper stream is then ASK modulated on the carrier frequency by multiplying the bit streams with the carrier QAM Modulation equation ( )= ( ) cos 2 + ( ) sin 2

In QAM modulation we can observer a special characteristic where if the numbers of states are increased we could have a higher data rate for a given bandwidth But at a certain number of states there will be higher possible error rate which would be due to noise and attenuation

4.3 Waveform Illustration for Better Understanding

Figure 5-1: Provides Final transmission wave and combined wave cycles Here two analog QAM carrier waves are generated each 90 degrees out of phase with each other. These two waves are further combined and transmitted.

13

COVENTRY UNIVERSITY

CHAPTER

5:

Parameters

for

Performance

Measurement

of

M-Qam

Modulation

Average Signal-to-Noise Ratio Outage Probability Average Symbol Error Probability Noise power spectral density (W/Hz

14

COVENTRY UNIVERSITY

CHAPTER 6 : Design and Software Implementation

6.1.1

Design Calculations

Circuit design for an 8 QAM modulator has been given below. See Figure 5-1,

Figure 6-1, Cct design has been given above for an 8 QAM system Figure 4-2.(a) block diagram Figure 4-2.(b) truth table =8

6.1.2

Calculate the number of bits per symbol k = log ( =3 )

Therefore with value M given we could calculate number of symbols. This would be K = log ( 8)

15

COVENTRY UNIVERSITY

6.1.3 6.1.4

Phase calculation of wave design Prepare a table for binary bits to symbols assignment. See Table 5-1, below Bit Assignment A 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 B 0 1 0 1 0 1 0 1 C Output Amplitude Phase 0.765 1.848 0.765 1.848 0.765 1.848 0.765 1.848 -135 -135 -45 -45 135 135 45 45

Table 5.1-Bit Assignment chart

16

COVENTRY UNIVERSITY

6.1.5

Draw the constellation diagram for given 8 M_QAM modulations.

See Figure 5-2, below

Figure 6-2, Constellation Diagram, 6.1.6 Write a MATLAB program to simulate the designed M_QAM digital modulation in your simulation result, show the output modulated signal together with related input binary signal Wave that would be used is a digital signal with an input combination of [000001010011100101110111] See Figure 5-3, below

Figure 6-3: Input digital signal

Matlab coding is stated below


format long; clc clear all M=8;

17

COVENTRY UNIVERSITY
data='000001010011100101110111'; A1=2; A2=4; f=2; t=linspace(0,1,900); time=[]; Digital_signal=[]; QAM_signal=[]; N=length(data)/log2(M); phase=[0 0 pi/2 pi/2 pi pi (3*pi)/2 (3*pi)/2]; phase_data=[]; for k=1:3:length(data) phase_data=[phase_data bin2dec(data(k:k+2))+1]; end for kk=1:1:N QAM_signal=[QAM_signal (phase_data(kk)==1)*A1*sin(2*pi*f*t + phase(1))+... (phase_data(kk)==2)*A2*sin(2*pi*f*t + phase(2))+... (phase_data(kk)==3)*A1*sin(2*pi*f*t + phase(3))+... (phase_data(kk)==4)*A2*sin(2*pi*f*t + phase(4))+... (phase_data(kk)==5)*A1*sin(2*pi*f*t + phase(5))+... (phase_data(kk)==6)*A2*sin(2*pi*f*t + phase(6))+... (phase_data(kk)==7)*A1*sin(2*pi*f*t + phase(7))+... (phase_data(kk)==8)*A2*sin(2*pi*f*t + phase(8))]; time=[time t]; t=t+1; end t1=linspace(0,1/3,300); for jj=1:1:length(data) Digital_signal = [Digital_signal (str2num(data(jj))==0)*zeros(1,length(t1))+... (str2num(data(jj))==1)*ones(1,length(t1))]; t1=t1+(1/3); end subplot(2,1,2); plot(time,QAM_signal,'.'); title('8QAM Signal'); xlabel('time'); ylabel('Amplitude'); axis([0 time(end) -8 8]); text(0.3,5.2,'\bf101'); text(1.3,5.2,'\bf100'); text(2.3,5.2,'\bf001'); text(3.3,5.2,'\bf000'); text(4.3,5.2,'\bf010'); text(5.3,5.2,'\bf011'); text(6.3,5.2,'\bf110'); text(7.3,5.2,'\bf111'); grid on; subplot(2,1,1); plot(time,Digital_signal,'LineWidth',3); title('Digital Input Signal'); xlabel('time'); ylabel('Amplitude'); axis([0 time(end) 0 2]); grid on; text(0.3,1.3,'\bf101'); text(1.3,1.3,'\bf100'); text(2.3,1.3,'\bf001'); text(3.3,1.3,'\bf000'); text(4.3,1.3,'\bf010'); text(5.3,1.3,'\bf011');

18

COVENTRY UNIVERSITY
text(6.3,1.3,'\bf110'); text(7.3,1.3,'\bf111');

6.1.7

Final output Modulated wave.

Figure 6-4: Input digital signal and output modulated wave

19

COVENTRY UNIVERSITY

6.1.8

Screenshots

Figure 6-5: Input digital signal and output modulated wave

20

COVENTRY UNIVERSITY

CHAPTER 7 : ANALYSIS/ CONCLUSION ON RESULTS

7.1 Analysis

After the simulation and the mathematical parts have been solved we have come to a very Important junction in QAM ,which states that the QAM modulator has a very stable operating and control over the bits, and the power of this modulator is that it could transit two deferent waves within the circuit which is a sine wave and cosine waveform in two deferent waveform angles. Where this circuit takes great pride in altering the waveform output where it stays robustly even in the AWGN channel.in a place more prone to noise 7.2 Conclusion We now have a very steady idea of QAM modulators where it has been tested for M=8 modulation schemes, after going through the modulation design it is possible for a person to understand its complexity. Not only in the calculation part but also in the circuitry part as well. All stages of the modulator including the waveform has been tested for stability and it is working at its full optimum levels. The waveform designed here is a just a test phase of a 8QAM system. The increase of density and M value in the circuit could bring about another very important technology that is to be used in world as a new technology tomorrow.

21

COVENTRY UNIVERSITY

CHAPTER 8 : Introduction to Forward Error Correction (FEC) Coding

8.1 Introduction Within the rst twentieth century audio, and data, as uninterrupted signals, were transmitted over an analog channel. An analog network hosts a lot of noise. Channel noise and distortion has to be and can be endured, if the precise communication does not need to be replicated. Most of the exertion in the area of communications was done on analog channels and technology in this era. With the dawn of computers and digital communication, in the second part of the twentieth century, it became necessary to transmit information reliably. Digital communications was used to replica original data at some point in the communication channel Approaches and philosophies were advanced to convert digital data from analog signal, and then digital data began to transmit over a digital communications channel. Finally, the ability of digital data to be converted back to an analog signal at the receiver was attained after extensive research in this area. The main benefit of the digital communication technology is an error free transmission of digital data. Conveys were placed in the digital communication channel at specic points and location to abstract the unique signal, before noise changes the signal to a degree that the original signal may not be recoverable or receivable. These convey retransmit data after they rearrange the data clearing and eliminating any sign of noise.

But later in time this technology became more prone to interference and error therefore many error correcting mechanisms were introduced.

22

COVENTRY UNIVERSITY

CHAPTER 9 : Principles for Forward Error Correction (FEC)

9.1 Principles of the FEC Bit errors occur autonomously of the former errors, but burst errors occur most of the time in contiguous bits. This is known as Burst error length. Burst error length means the dierence in positions of the rst bit in error to the last bit in error. An error vector can be in symbolizing bit errors where a 1 indicates a bit error and 0 indicates no error at that position. For us to understand FEC we must first look at Shannon limit What really is Shannon limit? The Shannon limit provides a higher boundary for the amount of signals that can possible propagate through a communication channel with randomly low BER; however, it is still possible that transmission of data in a channel could be kept well below Shannons limit. The BER below Shannons limit cannot be randomly low while some data is still beginning transmitted from the source to the destination The Hamming distance d(a, b) delivers us the determined possibility decision Assume a FEC with least Hamming distance D, the number of code words L, and code length N. Without loss of data, assume that all 0 code word were transmitted and received

Now lets come back to the Burst error length See Figure 8-1, below

Figure 9-1, Burst error length (image courtesy of wekepedia.org)

23

COVENTRY UNIVERSITY

9.2 Performance Measurement Parameters For (FEC) Coding 9.2.1 SNR

The SNR value signifies the quantity of power required to attain a certain BER rate. Generally a bigger SNR value results in lower BER. Coding gain is dened as the amount of enhancement and quality in SNR, when a particular coding scheme is used. The normal method of finding code gain is to plot the BER versus SNR for both coded and un coded system,
+1 = 2

Equation for SNR calculation 9.2.2 Minimum Distance

The minimum distance provides us a security against noise and attenuations. This mechanism the minimum distance between code words can be used for error detection and/or error correction. The fail-safe mechanism of error detection, and or correction capability of a FEC are determined by only on the minimum distance of the FEC. This could be worked out on two ways that can be that we can reduce the number of error corrections and or increase the number of error detections or the other way round.

This is also known as the hamming distance. The hamming distance is obtained by the minimum distance between any two codewords ( , )= ( , ) ( , )= 1 0 =

Equation for Minimum Distance calculation (Courtesy of University of Florida)

24

COVENTRY UNIVERSITY

CHAPTER 10: Principles for Hamming Coding and Decoding

10.1 Hamming Coding

Within side telecommunication, Hamming codes undoubtedly absolutely would definitely be a family of linear error-correcting codes in which generalize the Hamming (7, 4)-code created by Richard Hamming throughout 1950. Hamming codes can detect as much as two and proper around a single bit errors. By contrast, the straightforward reason parity code can't correct mistakes, and will detect just an odd quantity of mistakes. Hamming codes are special because they may be perfect rules, that is, they will reach the highest possible value regarding rules making use of their obstruct length and also minimum distance Due to the simpleness regarding Hamming codes, they are trusted throughout computer memory. With this circumstance, one usually makes use of an extended Hamming signal with one extra parity bit. Lengthy Hamming codes accomplish the range associated with, which allows the particular decoder to distinguish involving the scenario by which at most one bit error occurred as well as the situation by which 2 bit problems happened. With this feeling, prolonged Hamming codes tend to be single-error repairing and double-error sensing, and often referred to as SECDED When more error-correcting parts are included with a message, and when those bits could be organized such that different incorrect bits create diverse error final benefits, then poor pieces could be recognized. In the 7-bit information, you can find more effective feasible individual bit problems, therefore 3 error manage bits might specify not just that an error took place but also which usually bit caused the error. Hamming researched the prevailing programming schemes, such as two-of-five, and also generalized their particular ideas. To start with, he developed a nomenclature to spell it out the system, including the number of data bits as well as error-correction bits in a prevent. As an example, equality includes a solitary bit for almost any data term, thus presuming ASCII phrases having 7-bits

25

COVENTRY UNIVERSITY

Hamming described this as an (8, 7) signal, along together using ten pieces as a whole, which Seven are usually info. The actual repeating instance could be (3,1), following the same logic. The signal rates are the next number split by the first Hamming also seen the problems having flicking a couple of bits, and referred to this particular because the "range" (. Equality features a distance of two; just like any a couple of bit flips will be invisible. The particular (3,1) repetition includes a distance of 3, because three parts have to be turned inside same double to acquire one more code word without any visible mistakes. A (4,1) repetition (each and every bit is repeated 4 times) features a range of four, therefore flipping a couple of pieces could be detected, although not adjusted. Whenever 3 pieces flip in the very similar group there may be circumstances the location the place that the code adjusts towards the incorrect code word.

26

COVENTRY UNIVERSITY

CHAPTER 11 : Design and Software Implementation

11.1

Value selection for (n , k) =3

Value provided by Institute

11.2

Value of n

= log ( + 1) =2 1 =2 1 = =7

11.3

Value of K

=73 = =4

11.4

Number of check bits

As now we are aware that this is a (7, 4), by this data 4 information bits and we would need to add 3 parity bits to build a 7 bits code. There can be seven usable combinations of the three bit parity matrix 000 001 010 011 100

=3

27

COVENTRY UNIVERSITY

101 110 111 11.5 Construction of the matrix algebra can proceed =

G matrix has been constructed See Figure 10-1, below =( | 1 0 0 0 0 1 0 0 0 0 1 0

=( | 11.6

)= 1 1 1 0

H matrix has been constructed =( )=

11.7

Identity matrix

Parity check matrix.

Since identity matrix, the first remaining Parity equation

coded bits are identical to source message bits and the

= [ ( )]

=[ ]

1 0 1 1

0 1 1 1

1 1 0 1

0 0 0 1

1 0 0 0

0 1 1 1

0 1 0 0

0 1 1 1

0 0 1 0

1 1 0 1

0 0 0 1

bits form the parity check matrix.

28

COVENTRY UNIVERSITY

11.8
numbers 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 M0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1

Codewords table
M1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 M2 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 M3 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 P0 0 0 1 1 1 1 0 0 1 1 0 0 0 0 1 1 P1 0 1 1 0 1 0 0 1 0 1 1 0 1 0 0 1 P2 0 1 0 1 1 0 1 0 1 0 1 0 0 1 0 1 Codeweigh 0 3 3 4 4 3 3 4 3 4 4 3 3 4 4 7

Minimum distance

10.8.1

Simulation for hard decision decoding

=3

%Simulation for encoding and decoding of a [7,4] Hamming code. The decoder clear n = 7%# of codeword bits per block k = 4%# of message bits per block A = [ 1 1 1;1 1 0;1 0 1;0 1 1 ];%Parity submatrix-Need binary(decimal combination of 7,6,5,3) G = [ eye(k) A ]%Generator matrix H = [ A' eye(n-k) ]%Parity-check matrix % ENCODER% msg = [ 1 1 1 1 ] %Message block vector-change to any 4 bit sequence code = mod(msg*G,2)%Encode message code(2)= ~code(2);

29

COVENTRY UNIVERSITY
recd = code %Received codeword with error % DECODER% syndrome = mod(recd * H',2) %Find position of the error in codeword (index) find = 0; for ii = 1:n if ~find errvect = zeros(1,n); errvect(ii) = 1; search = mod(errvect * H',2); if search == syndrome find = 1; index = ii; end end end disp(['Position of error in codeword=',num2str(index)]); correctedcode = recd; correctedcode(index) = mod(recd(index)+1,2)%Corrected codeword %Strip off parity bits msg_decoded=correctedcode; msg_decoded=msg_decoded(1:4)

10.8.2

Simulation for comparison of Bit Error Rate (BER) for coded and uncoded

signals
% Script for computing BER with Hamming (7,4) code and maximal % likelihood hard decision decoding clear N = 10^6 ;% number of bits Eb_N0_dB = [0:1:10]; % multiple Eb/N0 values Ec_N0_dB = Eb_N0_dB - 10*log10(7/4); h = [ 1 0 1 ; 1 1 1; 1 1 0; 0 1 1]; ht = [h ;eye(3)]; g = [eye(4) h]; synRef = [ 5 7 6 3 ]; bitIdx = [ 7 7 4 7 1 3 2].'; for yy = 1:length(Eb_N0_dB) % Transmitter ip = rand(1,N)>0.5; % generating 0,1 with equal probability % Hamming coding (7,4) 30

COVENTRY UNIVERSITY ipM = reshape(ip,4,N/4).'; ipC = mod(ipM*g,2); cip = reshape(ipC.',1,N/4*7); % Modulation s = 2*cip-1; % BPSK modulation 0 -> -1; 1 -> 0 % Channel - AWGN n = 1/sqrt(2)*[randn(size(cip)) + j*randn(size(cip))]; % white gaussian noise, 0dB variance % Noise addition y = s + 10^(-Ec_N0_dB(yy)/20)*n; % additive white gaussian noise % Receiver cipHard = real(y)>0; % hard decision % Hamming decoder cipHardM = reshape(cipHard,7,N/4).'; syndrome = mod(cipHardM*ht,2); % find the syndrome syndromeDec = sum(syndrome.*kron(ones(N/4,1),[4 2 1]),2); % converting the three bit syndrom to decimal syndromeDec(find(syndromeDec==0)) = 1; % to prevent simulation crash, assigning no error bits to parity bitCorrIdx = bitIdx(syndromeDec); % find the bits to correct bitCorrIdx = bitCorrIdx + [0:N/4-1].'*7; % finding the index in the array cipHard(bitCorrIdx) = ~cipHard(bitCorrIdx); % correcting bits idx = kron(ones(1,N/4),[1:4]) + kron([0:N/4-1]*7,ones(1,4)); % index of data bits ipHat = cipHard(idx); % selecting data bits % counting the errors nErr(yy) = size(find([ip- ipHat]),2); end

theoryBer = 0.5*erfc(sqrt(10.^(Eb_N0_dB/10))); % theoretical ber uncoded AWGN simBer = nErr/N; close all figure semilogy(Eb_N0_dB,theoryBer,'bd-','LineWidth',2); hold on semilogy(Eb_N0_dB,simBer,'ms-','LineWidth',2); axis([0 10 10^-5 0.5]) grid on legend('theory - uncoded', 'simulation - Hamming 7,4 (hard)'); xlabel('Eb/No, dB'); 31

COVENTRY UNIVERSITY ylabel('Bit Error Rate'); title('BER for BPSK in AWGN with Hamming (7,4) code'); 10.8.3

BER simulation files See Figure 4-1, below

See Figure 4-1 Bit error Rate vs. Eb/No

32

COVENTRY UNIVERSITY

CHAPTER 12 : ANALYSIS/ CONCLUSION ON RESULTS

12.1.

Analysis and Conclusion

We will discuss the simulation results. The hamming code is an optimized bitwise FEC for the Gaussian channel. Many transmission schemes contain burst errors where they occur extremely in adjacent bits. The channel inbuilt nature sometimes is used to correct short burst errors. The channel interleaves tries to allocate burst errors randomly within a block of data where they may be corrected by a suitable random FEC at the receivers end, such as Hamming code. In this coursework we have seen such a situation. The main part is that the calculation of BER where it shows us the error rate at particular Eb/No. where it shows that an uncoded system has small error rate at start where Eb/no are small. But when the graph moves out a large power Is required to maintain the error rate same with the coded system

33

COVENTRY UNIVERSITY

Tunitin report

34

S-ar putea să vă placă și