Module arithmetic

Source
Expand description

LDPC decoder arithmetic.

This module contains the trait DecoderArithmetic, which defines generic arithmetic rules used by a belief propagation LDPC decoder, and implementors of that trait. The LDCP decoders, such as the flooding schedule Decoder, are generic over the DecoderArithmetic trait, so it can be used to obtain monomorphized implementations for different arithemtic rules.

§References

Most of the arithmetic rules implemented here are taken from:

[1] Jon Hamkins, Performance of Low-Density Parity-Check Coded Modulation, IPN Progress Report 42-184, February 15, 2011.

Another good resource is this book:

[2] Sarah J. Johnson, Iterative Error Correction: Turbo, Low-Density Parity-Check and Repeat-Accumulate Codes. Cambridge University Press. June 2012.

Other references:

[3] C. Jones, et al. “Approximate-MIN* Constraint Node Updating for LDPC Code Decoding.” In Proceedings of MILCOM 2003 (Boston, Massachusetts), 1-157-1-162. Piscataway, NJ: IEEE, October 2003.

Structs§

Aminstarf32
LDPC decoder arithmetic with $f and the A-Min*-BP described in [3].
Aminstarf64
LDPC decoder arithmetic with $f and the A-Min*-BP described in [3].
Aminstari8
LDPC decoder arithmetic with 8-bit quantization and the A-Min*-BP described in [3].
Aminstari8Deg1Clip
LDPC decoder arithmetic with 8-bit quantization and the A-Min*-BP described in [3].
Aminstari8Jones
LDPC decoder arithmetic with 8-bit quantization and the A-Min*-BP described in [3].
Aminstari8JonesDeg1Clip
LDPC decoder arithmetic with 8-bit quantization and the A-Min*-BP described in [3].
Aminstari8JonesPartialHardLimit
LDPC decoder arithmetic with 8-bit quantization and the A-Min*-BP described in [3].
Aminstari8JonesPartialHardLimitDeg1Clip
LDPC decoder arithmetic with 8-bit quantization and the A-Min*-BP described in [3].
Aminstari8PartialHardLimit
LDPC decoder arithmetic with 8-bit quantization and the A-Min*-BP described in [3].
Aminstari8PartialHardLimitDeg1Clip
LDPC decoder arithmetic with 8-bit quantization and the A-Min*-BP described in [3].
Minstarapproxf32
LDPC decoder arithmetic with $f and the following approximation to the min* function:
Minstarapproxf64
LDPC decoder arithmetic with $f and the following approximation to the min* function:
Minstarapproxi8
LDPC decoder arithmetic with 8-bit quantization and an approximation to the min* function.
Minstarapproxi8Deg1Clip
LDPC decoder arithmetic with 8-bit quantization and an approximation to the min* function.
Minstarapproxi8Jones
LDPC decoder arithmetic with 8-bit quantization and an approximation to the min* function.
Minstarapproxi8JonesDeg1Clip
LDPC decoder arithmetic with 8-bit quantization and an approximation to the min* function.
Minstarapproxi8JonesPartialHardLimit
LDPC decoder arithmetic with 8-bit quantization and an approximation to the min* function.
Minstarapproxi8JonesPartialHardLimitDeg1Clip
LDPC decoder arithmetic with 8-bit quantization and an approximation to the min* function.
Minstarapproxi8PartialHardLimit
LDPC decoder arithmetic with 8-bit quantization and an approximation to the min* function.
Minstarapproxi8PartialHardLimitDeg1Clip
LDPC decoder arithmetic with 8-bit quantization and an approximation to the min* function.
Phif32
LDPC decoder arithmetic with $f and phi(x) involution.
Phif64
LDPC decoder arithmetic with $f and phi(x) involution.
Tanhf32
LDPC decoder arithmetic with $f and 2 * atanh(\Prod tanh(x/2) rule.
Tanhf64
LDPC decoder arithmetic with $f and 2 * atanh(\Prod tanh(x/2) rule.

Traits§

DecoderArithmetic
LDPC decoder arithmetic.