BYU Home page BRIGHAM YOUNG UNIVERSITY  
Search BYU 
Class Information



ECEn 775: Projects

Coded BPSK Simulation
The resource for this project is ``Progamming Laboratory 1" on pages 53 - 55 of the text. Complete the following:
Assignment: Preliminary Exercise
Programming Part: BPSK Simulation, parts 1 - 5.
Programming Part: Coded BPSK Simuation, parts 1 - 2.
Write a report to document your results. Be sure to include all the plots required by the exericse. And be sure to include answers to all the questions. You will be graded on both the content of the report and the writing, illustrations, organization, and presentation.

The report is due 25 September 2009.

LDPC Project
Design an iterative decoder for the (20,7) LDPC Gallager code. The 15 x 20 parity check matrix is defined in the file H_gallager.m. Simulate the performance of this code over the additive white Gaussian noise channel.

Write a report summarizing your results. The report should answer the following questions:
Which one has the better decoded bit error rate performance: the SPA formulated using the q's and r's or the SPA based on the log-likelihood ratio?
How much better is the iteratively decoded bit error rate than uncoded BPSK?


The report is due 23 October 2009

Convolutional Code Project
Develope an MLSE decoder (using the Viterbi algorithm) and a MAP decoder (using the BCJR algorithm) for the two rate-1/2 codes defined by the generator matrices

[image]

Use the encoders and decoders in the system outlined below

[image]

The vectors x, c(1), and c(2) are length-L vectors whose entries are in the set {0,1}:

[image]

The vectors c, a, n, and r are length-2L vectors:

[image]

Each element of c is in the set {0,1} while each element of a is in the set {-1,+1} using the mapping shown. Each element of n is an independent Gaussian random variable whose probability density function is

[image]

where the variance is[image]where Rc = 1/2 is the code rate.

Design a hard-decision MLSE decoder based on the Viterbi algorithm and simulate the BER performance of both codes.
Design a soft-decision MLSE decoder based on the Viterbi algorithm and simulate the BER performance of both codes.
Design a MAP decoder based on the BCJR algorithm and simluate the BER performance of both codes.
Summarize your results in a report. Be sure to include the following:
Plot the simulated BER performance for each code using each of the decoders. Plot the BER for uncoded BPSK as a reference.
Is there a performance difference between the two codes? If there is a difference, can you explain the performance difference?
For a given code, what is the performance difference between the three decoders you designed? Can you explain any differences?


The report is due 4 December 2009.

Turbo-Code Project
Design an iterative decoder for a rate-1/3 Turbo code based on two rate-1/2 systematic recursive convolutional codes. The generator matrix for each rate-1/2 code is

[image]

The encoder should use this interleaver and the corresponding de-interleaver. The interleaver length is 2048 and the indexes range from 1 to 2048 The first index is the output index of the first input; the second index is the output index of the second input; and so on. Note your processing should proceed block-by-block. You will need to figure out the block sizes for inputs and outputs -- this is part of the exercise! Use the BCJR algorithm to produce the soft output information required by each of the constituent decoders.

Write a report summarizing your results. Be sure to include the following in your report:
How many iterations you used.
A plot of decoded bit error rate as a function of uncoded Eb/N0. (Include the uncoded BPSK bit error rate curve for reference.)
How much better the iteratively decoded bit error rate is than uncoded BPSK

The report is due TBD.

Maintained by the ECEn Web Team (other formats). Based on this XML and ver. 3.4 of the ECEn web templates.
Copyright © 1994-2004. Brigham Young University. All Rights Reserved.