Expand description
CCSDS Reed-Solomon (255,223) (CCSDS 131.0-B-5). CCSDS Reed-Solomon (255,223) Forward Error Correction
Implements RS(255,223) over GF(2^8) as specified in CCSDS 131.0-B-5 (TM Synchronization and Channel Coding).
§Parameters
- Field polynomial: p(x) = x^8 + x^7 + x^2 + x + 1 (0x187)
- Primitive element α = 0x02 (the polynomial x)
- First consecutive root: α^112
- Code generator: g(x) = ∏(x - α^(112+i)) for i = 0..31
- 32 parity symbols per codeword
- Corrects up to 16 symbol errors per codeword
§Interleaving
Supports interleaving depths I = 1..5 as per CCSDS spec. With interleaving depth I, the total codeblock is I×255 symbols and can correct up to I×16 symbol errors.
Structs§
- Reed
Solomon Decoder - RS(255,223) decoder implementing
FecDecoder. - Reed
Solomon Encoder - RS(255,223) encoder implementing
FecEncoder.
Enums§
- RsError
- Errors from Reed-Solomon operations.
Constants§
- K
- Number of data symbols per codeword.
- N
- Number of symbols in a full RS codeword.
- PARITY
- Number of parity symbols (2T where T=16).
- T
- Maximum correctable symbol errors per codeword.
Functions§
- decode
- Decodes and corrects a 255-byte RS codeword in-place.
- decode_
interleaved - Decodes with interleaving depth I (1..=5).
- encode
- Encodes
data(up to 223 bytes) intooutput(255 bytes). - encode_
interleaved - Encodes with interleaving depth I (1..=5).