Reed-Solomon Encoder

Reed-Solomon codes are used to perform Forward Error Correction (FEC). FEC introduces redundancy in the data before it is transmitted. The redundant data (check symbols) are transmitted with the original data to the receiver. For example, a Reed-Solomon decoder is used to help recover any erred data. This type of error correction is widely used in data communications applications such as Digital Video Broadcast (DVB) and Optical Carriers (i.e. OC-192).

The codes are referred to in the format RS(n,k) where k is the number of s-bit wide information (data) symbols and n is the total number of s-bit wide symbols in a codeword. The Reed-Solomon encoder generates a code such that the first k symbols output from the encoder are the information symbols and the next n-k symbols from the encoder are the check symbols added for error correction. When the data output is in the same order as the input it is referred to as a systematic encoder.

Features

  • 3- to 12-Bit Symbol Width
  • Configurable Polynomials
    • Field polynomial
    • Generator polynomial
      • Starting root
      • Root spacing
  • User-defined Codewords
    • Maximum of 4095 symbols
    • Maximum of 256 check symbols
    • Shortened codes
  • Selectable Reed-Solomon Standards
    • OC-192
    • DVB
    • CCSDS
    • ATSC
  • Fully Synchronous
    • User-configured latency2
    • Registered input selection
  • Systematic Encoder
  • Full Handshaking Capability

Jump to

Block Diagram

Reed-Solomon Encoder Block Diagram

Performance and Size

Evaluation Configurations Available for Reed-Solomon Encoder for ORCA41
Parameter File Mode PFUs LUTs Registers PIO EBR fMAX (MHz)
reeds_enco_o4_1_001.lpc OC192 58 210 194 22 N/A 168
reeds_enco_o4_1_002.lpc CCSDS 88 327 323 22 N/A 156
reeds_enco_o4_1_003.lpc DVB 58 201 194 22 N/A 167
reeds_enco_o4_1_004.lpc ATSC 71 233 226 22 N/A 166

1 Performance and utilization characteristics for OR4E02-2BA352. When using other devices performance may vary.

Evaluation Configurations Available for Reed-Solomon Encoder for XPGA1
Parameter File Mode PFUs LUTs Registers External Pins EBRs fMAX (MHz)
reeds_enco_xp_1_001.lpc OC192 86 273 248 24 N/A 166
reeds_enco_xp_1_002.lpc CCSDS 161 504 457 22 N/A 149
reeds_enco_xp_1_003.lpc DVB 84 273 240 22 N/A 155
reeds_enco_xp_1_004.lpc ATSC 130 417 307 22 N/A 157

1 Performance and utilization characteristics for LFX125B-04F256C. When using other devices, performance may vary.

Evaluation Configurations Available for Reed-Solomon Encoder for LatticeECP and LatticeEC1
Parameter File Mode SLICEs LUTs Registers I/Os sysMEM EBRs fMAX (MHz)
reeds_enco_e2_1_001.lpc OC192 147 252 217 24 N/A 206
reeds_enco_e2_1_002.lpc CCSDS 280 460 413 24 N/A 194
reeds_enco_e2_1_003.lpc DVB 149 253 220 24 N/A 205
reeds_enco_e2_1_004.lpc ATSC 196 320 279 24 N/A 201

1 Performance and utilization characteristics are generated using LFEC20E-5F672C in Lattice’s ispLEVER v.4.1 software. When using this IP core in a different device, density, package, or speed grade, performance may vary.

Ordering Information

  • Part Numbers:
    • For ORCA4: REEDS-ENCO-O4-N1
    • For XPGA: REEDS-ENCO-XP-N1
    • For LatticeECP/EC:REEDS-ENCO-E2-N1

To find out how to purchase the Reed-Solomon Encoder IP Core, please contact your local Lattice Sales Office.

Documentation

*By clicking on the "Notify Me of Changes" button, you agree to receive notifications on changes to the document(s) you selected.