Module p25::coding::trellis [] [src]

Implements encoding and decoding of the "trellis" convolutional error correcting code specified by P25.

Encoding is done with a state machine and decoding is done with the Viterbi algorithm, adapted from Coding Theory and Cryptography: The Essentials, Hankerson, Hoffman, et al, 2000.

Structs

DibitHistory
DibitStates

Half-rate state machine (dibit input).

DibitWalks
TrellisFSM

Convolutional code finite state machine with the given transition table. Each fed-in symbol is used as the next state.

TribitHistory
TribitStates

3/4-rate state machine (tribit input).

TribitWalks
ViterbiDecoder

Decodes a received convolutional code dibit stream to a nearby codeword using the truncated Viterbi algorithm.

Walk

Traits

States
WalkHistory
Walks

Type Definitions

DibitDecoder

Half-rate convolution ("trellis") code decoder.

DibitFSM

Half-rate convolutional ("trellis") code state machine.

TribitDecoder

3/4-rate convolution ("trellis") code decoder.

TribitFSM

3/4-rate convolutional ("trellis") code state machine.