Home   About Us   News   Contact Us
 

BCH10 Core, Parameterizable Compact BCH Codec


General Description

Targets the high-performance very-low-latency error correction ASIC applications with high k (about 500) and small t (3-5) using Bose–Chaudhuri–Hocquenghem codes (BCH codes) that prioritize latency over size.
The latency of the encoder core is 2 clocks. The decoder latency is 5-7 clocks input-to-output data.
Symbol

Key Features

High performance, low latency
Small size (75K gates for k=298, t=4) configuration, the core uses just 17K gates in ASIC)
Entirely self-contained (no external RAM required)
Data inputs and outputs have flip-flops attached to the pins
 

Encoder Core Interface Signals (BCH10-E)

Name Direction Width Description
clk Input 1 Clock signal
cen Input 1 Clock enable signal. When driven low, it pauses the operation of the core
reset Input 1 Active HIGH asynchronous reset signal. Drives internal registers to their default state independent of the clock.
D_in Input Data to be encoded
Q_out Output k Codeword

Decoder Core Interface Signals (BCH10-D)

Name Direction Width Description
clk Input 1 Clock signal
cen Input 1 Clock enable signal. When driven low, it pauses the core and pipeline state.
reset Input 1 Active HIGH asynchronous reset signal.
D_in Input k Received codeword
Q_out Output Corrected data payload. Parity bits are stripped.
Emask Output k Errors mask indicating the exact locations of detected errors
Ecnt Output Number of errors detected, in the range 0-t. If the number of errors in the input word is greater than t, the core is unable to correct the errors and Q_out and Emask shall not be relied upon
cff Output 1 Correction Failed Flag: Asserts if there are too many errors. All other outputs in this case are most likely invalid.
 
 
 
Deliverables

HDL Source Licenses

Synthesizable Verilog RTL source code
Test bench (self-checking)
Test vectors
Expected results
Software Development Kit (SDK)
User Documentation