Variable T BCH encoding
First Claim
1. A method comprising:
- receiving a message polynomial comprising data bits as coefficients;
multiplying, using a polynomial multiplier/divider module, said message polynomial by a difference polynomial to achieve a first value, wherein said difference polynomial comprises minimal polynomials that are present in a T error correcting BCH code and are absent from a T−
Δ
T error correcting BCH code;
multiplying, using a shifter/zero-padder, said first value by xN-{tilde over (K)} to achieve a second value;
dividing said second value by a generator polynomial of said T error correcting BCH code and calculating a remainder based on said dividing to achieve a third value, said dividing and calculating performed by a BCH encoder circuit;
dividing, using said polynomial multiplier/divider module, said third value by said difference polynomial to achieve a fourth value comprising parity of said T−
Δ
T error correcting BCH code, the dividing of said third by value by said difference polynomial performed after said multiplying by said multiplier/divider module is complete; and
outputting from said memory controller said fourth value.
3 Assignments
0 Petitions
Accused Products
Abstract
A system for implementing variable T BCH encoders includes: a polynomial multiplier for multiplying a message polynomial by a difference polynomial to achieve a first value, wherein the message polynomial comprises data bits as coefficients and the difference polynomial comprises minimal polynomials that are present in a T error correcting code and are absent from a T−ΔT error correcting BCH code; a shifter/zero-padder coupled with the BCH encoder, the shifter/zero-padder for multiplying the first value by xN-{tilde over (K)} to achieve a second value; a BCH encoder coupled with the polynomial multiplier, the BCH encoder for dividing the second value by a generator polynomial of the T error correcting BCH code and calculating a remainder based on the dividing to achieve a third value; and a polynomial divider for dividing the third value by the difference polynomial to achieve a fourth value comprising parity of the T−ΔT error correcting BCH code.
289 Citations
25 Claims
-
1. A method comprising:
-
receiving a message polynomial comprising data bits as coefficients; multiplying, using a polynomial multiplier/divider module, said message polynomial by a difference polynomial to achieve a first value, wherein said difference polynomial comprises minimal polynomials that are present in a T error correcting BCH code and are absent from a T−
Δ
T error correcting BCH code;multiplying, using a shifter/zero-padder, said first value by xN-{tilde over (K)} to achieve a second value; dividing said second value by a generator polynomial of said T error correcting BCH code and calculating a remainder based on said dividing to achieve a third value, said dividing and calculating performed by a BCH encoder circuit; dividing, using said polynomial multiplier/divider module, said third value by said difference polynomial to achieve a fourth value comprising parity of said T−
Δ
T error correcting BCH code, the dividing of said third by value by said difference polynomial performed after said multiplying by said multiplier/divider module is complete; andoutputting from said memory controller said fourth value. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system comprising:
-
a polynomial multiplier/divider module for multiplying a message polynomial by a difference polynomial to achieve a first value, wherein said message polynomial comprises user data bits as coefficients and said difference polynomial comprises minimal polynomials that are present in a T error correcting code and are absent from a T−
Δ
T error correcting BCH code;a shifter/zero-padder coupled with said polynomial multiplier/divider module, said shifter/zero-padder for multiplying said first value by xN-{tilde over (K)} to achieve a second value; a BCH encoder circuit coupled with said shifter/zero-padder, said BCH encoder circuit for dividing said second value by a generator polynomial of said T error correcting BCH code and calculating a remainder based on said dividing to achieve a third value; said polynomial multiplier/divider module further for dividing said third value by said difference polynomial to achieve a fourth value comprising parity of said T−
Δ
T error correcting BCH code after said multiplying said message polynomial by said difference polynomial; anda parity output module for outputting said fourth value. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14)
-
-
15. A method comprising:
-
receiving a message polynomial comprising data bits as coefficients; multiplying, using a polynomial multiplier circuit, said message polynomial by a difference polynomial to achieve a first value, wherein said difference polynomial comprises minimal polynomials that are present in a T error correcting BCH code and are absent from a T−
Δ
T error correcting BCH code;multiplying, using a shifter/zero-padder, said first value by xN-{tilde over (K)} to achieve a second value; dividing said second value by a generator polynomial of said T error correcting BCH code and calculating a remainder based on said dividing to achieve a third value, said dividing said second value and said calculating performed by a BCH encoder circuit; dividing, using a polynomial divider circuit, said third value by said difference polynomial to achieve a fourth value comprising parity of said T−
Δ
T error correcting BCH code, the dividing said third value performed after said multiplying by said polynomial multiplier circuit is complete; andoutputting from said memory controller said fourth value. - View Dependent Claims (16, 17)
-
-
18. A memory controller comprising:
-
a polynomial multiplier circuit for multiplying a message polynomial by a difference polynomial to achieve a first value, wherein said message polynomial comprises user data bits as coefficients and said difference polynomial comprises minimal polynomials that are present in a T error correcting code and are absent from a T−
Δ
T error correcting BCH code;a shifter/zero-padder circuit coupled to said polynomial multiplier circuit, said shifter/zero-padder circuit for multiplying said first value by xN-{tilde over (K)} to achieve a second value; a BCH encoder circuit coupled with said shifter/zero-padder circuit, said BCH encoder circuit for dividing said second value by a generator polynomial of said T error correcting BCH code and calculating a remainder based on said dividing to achieve a third value; a polynomial divider circuit coupled to said BCH encoder circuit for dividing said third value by said difference polynomial, after said multiplying said message polynomial by said difference polynomial, to achieve a fourth value comprising parity of said T−
Δ
T error correcting BCH code; anda parity output module coupled to said polynomial output circuit, said parity output module for outputting said fourth value. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25)
-
Specification