Linear Block Codes: Performance analysis tools

Here are several programs written in C for analysis and simulation of linear block codes over BSC, AWGN and Rayleigh fading channels. This is the topic of  Chapter 1 of the book. In addition to the programs below, the following two directories contain, respectively, the generator matrices and weight distributions of all binary extended BCH codes of length up to 128:
Matrices_BCH
Weights
 
 

Simulation of a (6,3,3) linear code, over BSC, AWGN and Rayleigh fading channels:
633_awgn.c
633_awgn_hdd.c
633_rayleigh.c
 
 

Compute the distribution of a linear code given its generator matrix in an input file:
WD_linear_code.c

An example is the binary linear (6,3,3) code discussed in the book, for which the file should contain the following 3 lines:

100110
010011
001101
 
 

Another program to find the weight distribution of a binary linear code given a generator matrix (better user interface, no prompt):
find_weights.c
 
 

Bounds on the probability of a block error (WER) and a bit error (BER) for binary linear codes with binary transmission over a Rayleigh fading channel:
WER_Chernoff.c
WER_MC_union.c
BER_Chernoff.c
BER_MC_union.c
 
 

Union bound on the word error probability  (WER) for a binary linear block code over a BSC channel:
bound_pe.c
 
 

Bounds on the probability of a bit error for a linear code with soft-decision and hard-decision decoding with binary transmission over an AWGN channel:
bound_awgn_ebno.c
bound_hdd_awgn.c
 
 

Bounds on the bit error probability of the memory-2 rate-1/2 convolutional code discussed in the book:
bound_rate12_bsc.c
bound_rate12_bsc_best.c
bound_rate12_bsc_meeberg.c
 
 
 

Evaluation of the undetected error probability of a binary linear (4,2,2) code, Equation (1.27) in the book:
bound_undetect_422.c
 
 
 

Bounds on the probability of error of a repetition code over an AWGN channel and a Rayleigh fading channel, with soft decision decoding, as well as probability of error with hard-decision over an AWGN channel:
bound_313.c
pe313_rayleigh.c
pe_313_hd_awgn.c
 
 

Simulation of a repetition (3,1,3) code over a binary symmetric channel:
simulation313.c
 
 
 

Probability of decoding error (block error) for a binary code with binary transmission over an AWGN channel and hard-decision decoding:
pe_hdd_awgn.c
 
 

Exact probability of error with standard array decoding of binary linear codes:
pe_std_array.c
 
 
 
 

Evaluate error  probabilities  for an RS code:
prob_error_RScode.c
prob_dec_error_rs.c
 

BACK TO INDEX


This page was last updated on May 6, 2002, by Robert H. Morelos-Zaragoza.