You are on page 1of 2

Error Correction Codes for Wireless Communication Systems

Student Project Assignment

Introduction

Wireless communication systems are an integral part of everyone’s daily life. Emerging wireless
communication systems transmit high data rates to provide a wide range of services including
high quality voice, data, images, video, and other multimedia applications. Unfortunately, wireless
communication signals propagate through a harsh communication channel encountering various
obstacles and mixing up with interfering signals, which weakens the transmitted signal and results
in data errors at the receiver end.

Redundancy Coding

In order to eliminate/reduce the errors in the received signal, error correction codes (ECC) are
used. Error correction coding can be achieved in different ways and forms. The simplest ECC
form is the n-redundancy coding, where every data bit is encoded in an n-bit redundancy
codeword. An n-bit redundancy coding has the ability to correct (n-1)/2 bits per codeword at the
expense of a data rate reduction by a factor ‘n’. In other words, higher values of n result in a better
performance at the expense of a slower data communication.
TASK 1
A simulation block diagram of an image communication system is shown in Figure 1. A similar
text messaging system would have the same diagram with the first and last blocks being “text to
binary converter” and “binary to text converter,” respectively. You will be provided with Matlab
codes that simulate all the blocks in the diagram except the encoder and the decoder.
 Use the provided codes to get familiar with the Matlab environment and programming
language.
• Write two separate Matlab codes to simulate an encoder and a decoder using the n-
redundancy scheme.
• Run the simulation for various values of n while recording the bit error rate (BER), and the
elapsed processing time (in seconds) corresponding to each value of n.
• Create a plot of the BER versus the coding rate n, and another plot of the processing time
versus n. Use these two plots to comment on the time versus performance trade-off for
various types of applications.

Image Channel De- Channel Image


Modulator
Encoder Encoder Modulator Decoder Decoder

Figure 1. Block diagram of the simulated “image” communication system.

Convolutional Coding
Convolutional coding, a more sophisticated coding scheme, may be able to achieve higher error
correction rate at a relatively lower cost. An m/n convolutional encoder is a sequential system that
generates an n bit codeword corresponding to a sequence of m bits in the original data signal.
The bits in the coded signal are usually generated by generator polynomials and modulo-2
adders. For example, in a 1/3 encoder with generator polynomials G1 = (1,0,1), G2 = (0,1,1), and
G3 = (1,1,0), for each data bit x(i) corresponds a three bit codeword y1(i)y2(i)y3(i) such that:
y1(i) = x(i) + x(i-2)

y2(i) = x(i-1) + x(i-2)

y3(i) = x(i) + x(i-1)

where x(i) denotes the current data bit, x(i-1) denotes the previous data bit, and so on. The ‘+’
sign denotes a modulo-2 addition operation. Different values of m & n and different generator
polynomials create unlimited number of convolutional coders.
Seeing how convolutional coding generates a codeword out of multiple data bits. Received
codewords are also decoded in blocks corresponding to multiple data bits. A good convolutional
coder would generate codes that are significantly different from each other.

TASK 2
 Considering the same image/text communication systems as in task 1, write two separate
Matlab codes to simulate a convolutional encoder/decoder pair using generator
polynomials given by the instructor.
• Use the simulation system to investigate the performance of the new system. Record the
elapsed processing time and the observed BER. How would they fit on the plots generated
in task 1?

DELIVERABLES

Submit a formal lab report including:


 A title page
 Problem definition
 Objective of the project
 Procedure and methods used
 Discussion of the involved trade-offs
 All necessary results (both tabulated and in plots)
 Summary and conclusion

You might also like