Reed-Solomon Encoder DVBT: Difference between revisions
Jump to navigation
Jump to search
(Created page with "Category:Block Docs Reed Solomon encoder ETSI EN 300 744 Clause 4.3.2 RS(N=204,K=239,T=8). == Parameters == ; p : characteristic of GF(p^m). ; m : we use GF(p^m). ;...") |
No edit summary |
||
(8 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
[[Category:Block Docs]] | [[Category:Block Docs]] | ||
Reed Solomon | [https://www.cs.cmu.edu/~guyb/realworld/reedsolomon/reed_solomon_codes.html Reed Solomon Encoder] | ||
A Reed-Solomon code is specified as RS(N, K) with s-bit symbols. Here symbol size (s) = 8, since the input and output type is in bytes. | |||
ETSI EN 300 744 Clause 4.3.2 | ETSI EN 300 744 Clause 4.3.2 | ||
This block supports an input and output as vector bytes (instead of streamed bytes) where input size = (Blocks * (K - S)) and output size = (Blocks * (N - S)). S is the shortening size. | |||
== Parameters == | == Parameters == | ||
; p | ; p | ||
: characteristic of GF(p^m) | : Default value = 2 | ||
: characteristic of GF(p^m) | |||
; m | ; m | ||
: Default value = 8 | |||
: we use GF(p^m). | : we use GF(p^m). | ||
; GF polynomial | ; GF polynomial | ||
: Generator Polynomial | : Default value = 0x11d | ||
: Generator Polynomial | |||
; N | ; N | ||
: length of codeword | : Default value = 255 | ||
: Total length of a Reed Solomon Codeword. It contains data symbols (K) and parity symbols (2t). | |||
: N = K + 2t | |||
: The maximum codeword length can be N(max) = 2^s - 1 | |||
; K | ; K | ||
: | : Default value = 239 | ||
: Length of data symbols in a Reed Solomon Codeword | |||
; t | ; t | ||
: | : Default value = 8 | ||
: Number of error-containing symbols whose errors can be corrected by a Reed-Solomon decoder i.e. i.e. errors in up to t bytes anywhere in the codeword can be automatically corrected. The parity bits in a RS codeword are 2t where 2t = N - K. | |||
; Shortening size | ; Shortening size (S) | ||
: | : Default value = 51 | ||
: The number of zeroes that are added to the RS codeword to get the required codeword length. The actual transmitted data bytes are K - S. | |||
; Blocks | ; Blocks | ||
: Default value = 8 | |||
: number of blocks to process at once. | : number of blocks to process at once. | ||
== Example Flowgraph == | == Example Flowgraph == | ||
This flowgraph can be found at [https://github.com/gnuradio/gnuradio/blob/master/gr-dtv/examples/dvbt_tx_8k.grc]. | |||
[[File:Dvbt_tx_8k_fg.png|800px]] | |||
== Source Files == | == Source Files == | ||
; C++ files | ; C++ files | ||
: [https://github.com/gnuradio/gnuradio/blob/ | : [https://github.com/gnuradio/gnuradio/blob/main/gr-dtv/lib/dvbt/dvbt_reed_solomon_enc_impl.cc dvbt_reed_solomon_enc_impl.cc] | ||
; Header files | ; Header files | ||
: [https://github.com/gnuradio/gnuradio/blob/ | : [https://github.com/gnuradio/gnuradio/blob/main/gr-dtv/lib/dvbt/dvbt_reed_solomon_enc_impl.h dvbt_reed_solomon_enc_impl.h] | ||
; Public header files | ; Public header files | ||
: [https://github.com/gnuradio/gnuradio/blob/ | : [https://github.com/gnuradio/gnuradio/blob/main/gr-dtv/include/gnuradio/dtv/dvbt_reed_solomon_enc.h dvbt_reed_solomon_enc.h] | ||
; Block definition | ; Block definition | ||
: [https://github.com/gnuradio/gnuradio/blob/ | : [https://github.com/gnuradio/gnuradio/blob/main/gr-dtv/grc/dtv_dvbt_reed_solomon_enc.block.yml dtv_dvbt_reed_solomon_enc.block.yml] |
Latest revision as of 07:09, 31 May 2022
A Reed-Solomon code is specified as RS(N, K) with s-bit symbols. Here symbol size (s) = 8, since the input and output type is in bytes.
ETSI EN 300 744 Clause 4.3.2
This block supports an input and output as vector bytes (instead of streamed bytes) where input size = (Blocks * (K - S)) and output size = (Blocks * (N - S)). S is the shortening size.
Parameters
- p
- Default value = 2
- characteristic of GF(p^m)
- m
- Default value = 8
- we use GF(p^m).
- GF polynomial
- Default value = 0x11d
- Generator Polynomial
- N
- Default value = 255
- Total length of a Reed Solomon Codeword. It contains data symbols (K) and parity symbols (2t).
- N = K + 2t
- The maximum codeword length can be N(max) = 2^s - 1
- K
- Default value = 239
- Length of data symbols in a Reed Solomon Codeword
- t
- Default value = 8
- Number of error-containing symbols whose errors can be corrected by a Reed-Solomon decoder i.e. i.e. errors in up to t bytes anywhere in the codeword can be automatically corrected. The parity bits in a RS codeword are 2t where 2t = N - K.
- Shortening size (S)
- Default value = 51
- The number of zeroes that are added to the RS codeword to get the required codeword length. The actual transmitted data bytes are K - S.
- Blocks
- Default value = 8
- number of blocks to process at once.
Example Flowgraph
This flowgraph can be found at [1].
Source Files
- C++ files
- dvbt_reed_solomon_enc_impl.cc
- Header files
- dvbt_reed_solomon_enc_impl.h
- Public header files
- dvbt_reed_solomon_enc.h
- Block definition
- dtv_dvbt_reed_solomon_enc.block.yml