Home   About Us   News   Contact Us
 

BCH1-1 Core, Parameterizable Compact BCH Codec


General Description

Targets the lower-performance error correction applications using Bose–Chaudhuri–Hocquenghem codes (BCH codes) that prioritize small size over performance.
The performance of the BCH1-1 core is approximately 1 bit of the codeword per clock (that is, the m = 9, n=511 word will be handled in slightly more than 511 clocks).
Symbol

Key Features

Highly paramterizable
Very low area(in the largest,n = 511 t = 16 configuration, the core uses just 17K gates in ASIC)
Entirely self-contained (no external RAM required)
 
Function Description
The design is configurable in terms of data size and maximum number of corrected errors. The core, during instantiation, can support one of the Bose-Chaudhuri-Hocquenghem codes BCH(n,k,t).
m (the exponent in the formula n = 2m-1 for the total number of bits in the codeword) varies between 4 and 9 2 (n is between 15 and 511)
t (the maximum number of errors that can be corrected) varies between 2 and 16
For each pair of m and t, the maximum value of k (number of data bits) is determined by (n, t). The “shortened” codes with value of k smaller than the maximum are supported
The optimal generation polynomial is selected automatically

Pin Description

Name Type Description
clk Input Core Clock Signal
cen Input Synchronous enable signal. When LOW the core ignores all its inputs and all its outputs must be ignored.
rst Input Synchronous enable signal. When LOW the core is placed into reset.
D Input Input Data. For encoder input, the data to be protected by the BCH code. For decoder input, the data to be protected followed by the “error correction” (“parity”) bits.
Q Output Output Data. For decoder output, the data to be protected by the BCH code. For encoder output, the data to be protected followed by the “error correction” (“parity”) bits.
Dvalid Input HIGH indicated to the core that the valid data is available on the D bus
Qvalid Output HIGH indicated to the external circuitry that the valid data is available on the Q bus
Dready Output HIGH indicates to the external circuitry that the core is ready for data on the D bus
Qready Input HIGH indicated to the core that the external circuitry can accept the data on the Q bus
Dstart Input A HIGH pulse indicates the start of the input data word (for the -E core) or codeword (for the -D core)
Qstart Output A HIGH pulse indicates the start of the output data word (for the -D core) or codeword (for the -E core)
strobe Output A HIGH level indicates the validity of the error flags
Cecnt Output A number if corrected errors.
NCerr Output A non-correctable error flag. HIGH level indicates that non-correctable errors were found, the decoded data shall be ignored.
 
 
Export Permits
US Bureau of Industry and Security has assigned the export control classification number 5E002 to the core. See the IP Cores, Inc. licensing basics page, http://ipcores.com/exportinformation.htm, for links to US government sites and more details.
 
Deliverables

HDL Source Licenses

Synthesizable Verilog RTL source code
Test bench (self-checking)
Test vectors
Expected results
Software Development Kit (SDK)
User Documentation
 
Contact Information
IP Cores, Inc.
3731 Middlefield Rd.
Palo Alto, CA 94303, USA
Phone: +1 (650) 815-7996
E-mail: [email protected]
www.ipcores.com