generalized communication system: error control coding occurs in right column. 6

54

Upload: alaina-thornton

Post on 21-Dec-2015

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 2: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 3: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 4: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 5: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 6: Generalized Communication System: Error Control Coding Occurs In Right Column. 6

Generalized Communication System:Error Control Coding Occurs In Right Column.

6

Page 7: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 8: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 9: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 10: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 11: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 12: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 13: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 14: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 15: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 16: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 17: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 18: Generalized Communication System: Error Control Coding Occurs In Right Column. 6

Message Bits Codeword: message and parity bits.

Page 19: Generalized Communication System: Error Control Coding Occurs In Right Column. 6

For Example, H here has three parity checks on the 6 codeword bits:

Page 20: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 21: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 22: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 23: Generalized Communication System: Error Control Coding Occurs In Right Column. 6

Robert Gallagher, 1963: Low Density Parity Check Codes.

Introduced all the key concepts:1.) Low Density of H,2.) Tree-based “hard” bit decoding,3.) Probabilistic decoding from soft demodulation, more precisely, the a posteriori probabilities.

The amount of computation required led to these codes being forgotten, until:

David MacKay: “Good Error-Correcting Codes Based on Very Sparse Matrices.” IEEE Trans. Info. Thry. 1999.D. MacKay and R. M. Neal: “Near Shannon Limit Performance of LDPC Codes.” Electronics Letters, 1996.

Page 24: Generalized Communication System: Error Control Coding Occurs In Right Column. 6

S. Chung, G. David Forney, Jr. and Thomas Richardson: “On the Design of Low-Density Parity-Check Codes within 0.0045 dB of the Shannon Limit.” IEEE Comm. Letters, Feb. 2001.

But(!) the block length (N) of the code used was

The research on LDPC codes since then has been work to get results close to this, but with reasonable block length, and more efficient decoding.

Page 25: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 26: Generalized Communication System: Error Control Coding Occurs In Right Column. 6

i.e.

Page 27: Generalized Communication System: Error Control Coding Occurs In Right Column. 6

Construction Methods for LDPC Codes1.) Finite Geometry Methods: Lin and Costello’s Text.

2.) Consult the recent literature!

3.) Gallagher’s original random process.

Start with L many rows, staggered as shown:

Page 28: Generalized Communication System: Error Control Coding Occurs In Right Column. 6

Then “stack” column permutations of on top of itself:

Page 29: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 30: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 31: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 32: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 33: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 34: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 35: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 36: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 37: Generalized Communication System: Error Control Coding Occurs In Right Column. 6

Other methods of modifying Hin obtain higher girths exist, such as deleting a row or column. See Lin and Costello’s text for further information.

Page 38: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 39: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 40: Generalized Communication System: Error Control Coding Occurs In Right Column. 6

1.) Hard Bit Flip Decoding

2.) Soft Bit Flip Decoding

3.) Modification of the Sum-Product Algorithm for SBG8

1.’) Hard Bit Flip Decoding can be summarized as “voting on which bit(s) are bad, by those checks which indicate an error,” and then one flips the bits by the idea: “worst first.”

Consider the following part of an H matrix :

Page 41: Generalized Communication System: Error Control Coding Occurs In Right Column. 6

If checks C1, C2 and C3 indicate an error (i.e. incorrect parity in thebits they check), then C1 “votes” that bits b1, b2, and b3 are in error,C2 votes that b1, b4, and b5 are in error, etc. So after the voting is done, bit b1 will have received 3 votes, the other bits only 1 vote. So then bit b1 is flipped to its opposite. If afterflipping the estimate is still not a codeword, the process is iterated forsome fixed number of times.

Page 42: Generalized Communication System: Error Control Coding Occurs In Right Column. 6

The results gave surprisingly good performance.

The sparsity of H matters to concentrate the votes:if H were dense, intuitively most rows (checks) of H would check a good proportion of the bits, and so many rows wouldindicate an error, and so most bits would receive roughlythe same number of votes.

2.’) Soft Bit flip decoding was an attempt by the author to extend the previous idea to the case of soft demodulation to8 levels of output. The problems in adapting hard bit flip are: (a) how to assign “votes to be in error” based on a bit’s current estimate, and (b) to what level should one “flip” the worst bits.

Page 43: Generalized Communication System: Error Control Coding Occurs In Right Column. 6

The author used the following scheme, “linear weighting:”

The voting was averaged over the number of checks (rows of H) used.

Page 44: Generalized Communication System: Error Control Coding Occurs In Right Column. 6

The question now is how to flip the worst bit, i.e. the one(s) with the most votes-to-be-in-error.The following scheme was tried: the total numberof votes was averaged by the column weight. Then:

Page 45: Generalized Communication System: Error Control Coding Occurs In Right Column. 6

Unfortunately, the using the extra information of soft demodulation didn’t significantly improve the performance.

3.’) Finally, the Sum-Product Algorithm gives the best performance, but has the highest complexity. It is based on estimating the Likelihood Ratio:

This is the (ratio of ) probabilities that a transmitted bit is a 1, or 0, given the receivedestimates of the bits in the codoword.

Page 46: Generalized Communication System: Error Control Coding Occurs In Right Column. 6

There are numerous ways to estimate this ratio. Often, theLog of the ratio is used. The sum-product algorithm is aniterative update algorithm: the ratio, for each bit, is recalulated many times, with the probabilistic estimate (that each transmitted bit was a 1) being updated each time. The author eschewed a common way of calculating thisratio that uses the arctanh and tanh function, since it wasfelt that these transcendental functions would not be easilycalculated in hardware. However, the author’s way of calculating these ratios (even with adaptations for the SBG8channel) requires more multiplications. The author’s implementation gave exceptionial results, considering that the codes were short, and the channel not the ideal real-valued output AWGN channel of the literature,but the author’s hypothesized SBG8 channel.

Page 47: Generalized Communication System: Error Control Coding Occurs In Right Column. 6

The first two examples are taken from Lin and Costello.

Page 48: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 49: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 50: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 51: Generalized Communication System: Error Control Coding Occurs In Right Column. 6
Page 52: Generalized Communication System: Error Control Coding Occurs In Right Column. 6

The results for the classical block codes were obtained using Matlab/Simulink models; Simulink already has theencoding/decoding blocks available for models.

The simulation of the SBG8 channel was coded as anm-file in Matlab. Each codeword transmission requiredestimation of the channels noise variance from the numbersof received levels. Then the iterative decoding methods(hard and soft bit flips, sum-product algorithm) were separately coded and used.

Page 53: Generalized Communication System: Error Control Coding Occurs In Right Column. 6

The major research topics in LDPC coding theory concern1.) finding codes with good distance properties,2.) finding codes with lower order encoding processes,3.) finding codes whose graphs have better girths,4.) reducing the complexity of the sum-product algorithm.

Page 54: Generalized Communication System: Error Control Coding Occurs In Right Column. 6

References