Skip to content

Struct rs_code_t

ClassList > rs_code_t

A Reed-Solomon code over GF(2^J) .More...

  • #include <rs_core.h>

Public Attributes

Type Name
uint16_t field_poly
unsigned first_root
unsigned nroots
unsigned root_stride
unsigned symbol_bits

Detailed Description

first_root and root_stride together fix the generator's roots: g(x) = prod (x - a^(root_stride * j)) for j in [first_root, first_root + nroots). The textbook choice is a stride of 1; CCSDS 4.3.4 uses 11, which is a legitimate choice precisely because a^11 is itself primitive, and a code no receiver expecting consecutive powers of a can decode.

Public Attributes Documentation

variable field_poly

uint16_t rs_code_t::field_poly;

F(x) low J bits, x^J implicit


variable first_root

unsigned rs_code_t::first_root;

j0: the first root is a^(s*j0)


variable nroots

unsigned rs_code_t::nroots;

parity symbols 2E, 2..RS_NROOTS_MAX


variable root_stride

unsigned rs_code_t::root_stride;

s, coprime with n


variable symbol_bits

unsigned rs_code_t::symbol_bits;

J, 2..RS_SYMBOL_BITS_MAX



The documentation for this class was generated from the following file native/inc/rs/rs_core.h