IP Library Granted Patent US 8,261,167
Granted Patent B1
US 8,261,167 · App. 12/720,487 · Granted Sep 4, 2012

Cyclically interleaved dual BCH, with simultaneous decode and per-codeword maximum likelihood reconciliation

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,261,167
App. No.
12/720,487
Granted
Sep 4, 2012
Kind
B1
Abstract

A method and system are provided for forward error correction. Embodiments of the present disclosure provide a strong FEC algorithm that performs similarly to RS(255,239) when a simple decoder is used, and scales up linearly to a full-scale decoder that outperforms all 7% algorithms currently in G.975.1. The Forward Error Correction code is suitable for use in optical transport networks (OTN) and other applications requiring high decode performance and high code rate. Embodiments of the present disclosure provide an FEC code that is a cyclically interleaved dual BCH, with simultaneous decode and per-codeword maximum likelihood reconciliation.

Claims (35)

1. A method of assembling a codeword in a forward error correction system having K information bits in a total of N bits, the method comprising:

obtaining K/2 home column information bits from a home column of an information bit array;

obtaining K/2 away column information bits from a selected number of away columns of the information bit array, the selected number of away columns consisting of information bit array columns other than the home column;

combining the K/2 home column information bits with the K/2 away column information bits to assemble K information bits;

calculating N−K redundant parity bits associated with the assembled K information bits according to an error control code; and

appending the N−K redundant parity bits to the assembled K information bits to assemble the codeword valid under the error control code.

2. The method of claim 1 , further comprising prepending padding bits to the assembled K information bits.

3. The method of claim 1 , wherein the K/2 home column information bits and the K/2 away column information bits are combined in an alternating manner to assemble the K information bits.

4. The method of claim 1 wherein obtaining the K/2 away column information bits comprises following a diagonal progression through the selected number of away columns that skips the home column.

5. The method of claim 1 wherein obtaining the K/2 away column information bits comprises following a diagonal progression through the selected number of away columns that skips the home column and one or more columns adjacent to the home column.

6. The method of claim 1 wherein obtaining the K/2 away column information bits begins at a first away column adjacent the home column.

7. The method of claim 1 wherein combining the K/2 home column information bits and the K/2 away column information bits comprises interleaving the K/2 home column information bits and the K/2 away column information bits to assemble the K information bits.

8. The method of claim 1 wherein the error control code is a BCH (Bose, Chaudhuri, and Hocquenghem) code.

9. An encoder comprising:

an information bit array assembly module for assembling information bits into an information bit array; and

a codeword assembly module for assembling a codeword in a forward error correction system having K information bits in a total on N bits by:

obtaining K/2 home column information bits form a home column of the information bit array;

obtaining K/2 away column information bits from a selected number of away columns of the information bit array, the away columns consisting of information bit array columns other than the home column; and,

combining the K/2 home column information bits with the K/2 away column information bits to assemble K information bits;

calculating N−K redundant parity bits associated with the assembled K information bits according to an error control code; and

appending the N−K redundant parity bits to the assembled K information bits to assemble the codeword valid under the error control code.

10. The encoder of claim 9 , wherein the codeword assembly module prepends padding bits to the assembled K information bits.

11. The encoder of claim 9 , wherein the Error Control Code is a BCH (Bose, Chaudhuri, and Hocquenghem) code.

12. The encoder of claim 9 , wherein the K/2 home column information bits and the K/2 away column information bits are combined in an alternating manner to assemble the K information bits.

13. The encoder of claim 9 , wherein the codeword assembly module comprises a plurality of programmable shift registers to store the information bits during assembly of the codeword.

14. The encoder of claim 13 , wherein the plurality of programmable shift registers interleave the K/2 home column information bits and the K/2 away column information bits to assemble the K information bits.

15. The encoder of claim 9 , further comprising:

a codeword array assembly module for assembling a plurality of codewords associated with the information bits into an information codeword array.

16. The encoder of claim 15 , further comprising:

a parity bit array assembly module for assembling the N−K redundant parity bits into a parity bit array; and

a parity codeword array assembly module for assembling a plurality of parity codewords associated with the information bits into a parity codeword array.

17. The encoder of claim 16 , further comprising:

a parity on parity array assembly module for assembling parity on parity bits into a parity on parity bit array, the parity on parity bits being associated with the N−K redundant parity bits.

18. The encoder of claim 17 , further comprising:

a framing module for combing the information codeword array, the parity codeword array, and the parity on parity array into an encoded message block.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded May 29, 2018
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: MICROSEMI STORAGE SOLUTIONS, INC.; MICROSEMI STORAGE SOLUTIONS (U.S.), INC.
Reel/Frame 046251/0271 →
CHANGE OF NAME Recorded Jun 16, 2017
From: MICROSEMI STORAGE SOLUTIONS (U.S.), INC.
To: MICROSEMI SOLUTIONS (U.S.), INC.
Reel/Frame 042836/0046 →
CHANGE OF NAME Recorded Mar 22, 2016
From: PMC-SIERRA US, INC.
To: MICROSEMI STORAGE SOLUTIONS (U.S.), INC.
Reel/Frame 038213/0291 →
PATENT SECURITY AGREEMENT Recorded Feb 3, 2016
From: MICROSEMI STORAGE SOLUTIONS, INC. (F/K/A PMC-SIERRA, INC.); MICROSEMI STORAGE SOLUTIONS (U.S.), INC. (F/K/A PMC-SIERRA US, INC.)
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037689/0719 →
RELEASE OF SECURITY INTEREST Recorded Feb 1, 2016
From: BANK OF AMERICA, N.A.
To: PMC-SIERRA, INC.; PMC-SIERRA US, INC.; WINTEGRA, INC.
Reel/Frame 037675/0129 →
SECURITY INTEREST IN PATENTS Recorded Aug 6, 2013
From: PMC-SIERRA, INC.; PMC-SIERRA US, INC.; WINTEGRA, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 030947/0710 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 16, 2010
From: NORTHCOTT, PHIL, MR.
To: PMC-SIERRA US, INC.
Reel/Frame 024998/0135 →