IP Library Granted Patent US 8,151,174
Granted Patent B2
US 8,151,174 · App. 12/030,416 · Granted Apr 3, 2012

Block modulus coding (BMC) systems and methods for block coding with non-binary modulus

Assignee: Sunrise IP, LLC
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,151,174
App. No.
12/030,416
Granted
Apr 3, 2012
Kind
B2
Abstract

Block modulus coding (BMC) systems implement block coding on non-binary modulus m symbols, where m is greater than 2. BMC systems can be used for, among other things, forward error correction (FEC) of source data in communication systems or parity backup for error correction of source data in storage systems where the source data is represented by non-binary symbols that may be corrupted by burst errors. The block coding is preferably performed using a distributed arrangement of block encoders or decoders. A distributed block modulus encoder (DBME) encodes sequential source data symbols of modulus m with a plurality of sequential block encoders to produce interleaved parity codewords. The codewords utilize modulus m symbols where the medium can reliably resolve m symbol states. The interleaved parity codewords enable decoding of error-corrected source data symbols of modulus m with a distributed block modulus decoder (DBMD).

Claims (67)

1. An encoding method, comprising:

producing source data symbols of modulus m where m is greater than 2;

encoding the source data symbols with a plurality of block encoders to produce interleaved parity codewords of modulus m, the interleaved parity codewords of modulus m for enabling decoding of error-corrected data symbols of the modulus m;

wherein the interleaved parity codewords comprise a plurality of parity symbols, each of the parity symbols having the modulus m; and

wherein adjacent sequential parity symbols within each of the interleaved parity codewords are encoded by different block encoders.

2. The method of claim 1 , further comprising the step of:

producing an output stream by alternating blocks of the source data symbols and blocks of the interleaved parity codewords.

3. The method of claim 2 , further comprising the step of:

modulating and communicating the output stream to a propagation or storage medium.

4. The method of claim 3 , wherein the medium is an electrical, mechanical, molecular, or light means that is capable of storing or transmitting an electrical, mechanical, molecular, or light signal, respectively.

5. The method of claim 2 , further comprising the step of:

transmitting the source data symbols and the interleaved parity codewords alternately in separate packets where sequential packets have source data symbols and interleaved parity codewords respectively that correspond with each other or in a single packet where the source data symbols correspond to the interleaved parity codewords in the single packet.

6. The method of claim 2 , further comprising the step of:

trellis encoding the output stream prior to modulating and transmitting the output stream.

7. The method of claim 1 , wherein the modulus m is not a power of 2.

8. The method of claim 1 , wherein the interleaved parity codewords of modulus m consist of multiple coded symbols of modulus m.

9. The method of claim 1 , further comprising the step of:

modulating separately the source data symbols and the interleaved parity codewords; and transmitting the modulated source data symbols and the modulated interleaved parity codewords along different channels of a medium.

10. The method of claim 1 , wherein the block encoders are a different type or are of the same type.

11. The method of claim 1 , wherein each of the source data symbols is one or more bits.

12. The method of claim 1 , wherein the block encoders implement one or more of the following: Hamming, BCH, or Reed-Solomon encoding.

13. The method of claim 1 , further comprising the step of:

randomizing the source data symbols prior to the encoding step.

14. The method of claim 1 , wherein the block encoders are implemented in a single block encoder by:

associating a plurality of registers with the single block encoder;

producing the interleaved parity codewords by:

performing logical operations upon the source data symbols to produce combinations; and

accumulating the combinations with the registers;

wherein each register contains one interleaved parity codeword that comprises a plurality of parity symbols of the modulus m;

wherein each of the parity symbols is associated with a different one of the plurality of the block encoders; and

wherein each of the plurality of block encoders operates on one parity symbol from each interleaved parity codeword.

15. An encoding method, comprising:

providing a stream of source data symbols, each symbol having a binary modulus;

converting the binary modulus of the source data symbols to a modulus m, where m is greater than 2; and

encoding the source data symbols of modulus m with a plurality of block encoders respectively, to produce interleaved parity codewords of modulus m, the interleaved parity codewords of modulus m for enabling decoding of error-corrected source data symbols.

16. A decoding method, comprising:

(a) receiving source data symbols of modulus m, where m is greater than 2, and interleaved parity codewords;

(b) decoding error-corrected source data symbols based upon the source data symbols and interleaved parity codewords by:

(1) communicating the source data symbols to a plurality of block decoders, respectively; wherein each block decoder operates on a different set of source data symbols; and

(2) communicating the interleaved parity codewords to the plurality of block decoders, respectively.

(c) converting the modulus m of the data symbols to a binary modulus, before and/or after the decoding step (b); and

wherein the interleaved parity codewords comprise a plurality of parity symbols each of the parity symbols having the modulus m;

wherein adjacent sequential parity symbols within each of the interleaved parity codewords are encoded by different block encoders; and

wherein each of the block decoders operates on a different parity symbol from each interleaved parity codeword.

17. A system, comprising:

a transmitter having a distributed block modulus encoder (DBME), the transmitter transmitting a data stream having original source data and interleaved parity codewords to a medium;

a first receiver without a distributed block modulus decoder (DBMD), that receives the data stream from the medium and that identifies first source data in the data stream without benefit of the interleaved parity codewords;

a second receiver with the DBMD, that receives the data stream from the medium and that identifies second source data in the data stream with the DBMD utilizing the interleaved parity codewords, the second source data corresponding more accurately to the original source data as compared to the first source data; and

wherein the interleaved parity codewords comprise a plurality of parity symbols, each of the parity symbols having the modulus m; and

wherein adjacent sequential parity symbols within each of the interleaved parity codewords are encoded by different block encoders.

18. A distributed block modulus encoder (DBME), comprising:

a plurality of block encoders that encode sequential source data symbols of modulus m where m is greater than 2 to produce interleaved parity codewords, the interleaved parity codewords for enabling decoding of the source data symbols; and a modulus converter designed to convert the modulus of the source data symbols; wherein the interleaved parity codewords comprise a plurality of parity symbols, each of the parity symbols having the modulus m; and

wherein adjacent sequential parity symbols within each of the interleaved parity codewords are encoded by different block encoders.

19. A distributed block modulus decoder (DBMD), comprising:

a plurality of block decoders that decode sequential source data symbols from sequential source data symbols and interleaved parity codewords stored in a memory, the source data symbols having a modulus m where m is greater than 2; and

a modulus converter designed to convert the modulus of the source data symbols;

wherein the interleaved parity codewords comprise a plurality of parity symbols, each of the parity symbols having the modulus m; and

wherein adjacent sequential parity symbols within each of the interleaved parity codewords are encoded by different block encoders.

20. An encoding system, comprising:

means for producing source data symbols of modulus m where m is greater than 2;

means for encoding the source data symbols with a plurality of block encoders to produce interleaved parity codewords of modulus m, the interleaved parity codewords of modulus m for enabling decoding of error-corrected data symbols of the modulus m;

wherein the interleaved parity codewords comprise a plurality of parity symbols, each of the parity symbols having the modulus m; and

wherein adjacent sequential parity symbols within each of the interleaved parity codewords are encoded by different block encoders.

21. An encoding system, comprising:

one or more processors or circuits designed to produce source data symbols of modulus m where m is greater than 2 and to encode the source data symbols with a plurality of block encoders to produce interleaved parity codewords of modulus m, the interleaved parity codewords of modulus m for enabling decoding of error-corrected data symbols of the modulus m;

wherein the interleaved parity codewords comprise a plurality of parity symbols, each of the parity symbols having the modulus m; and

wherein adjacent sequential parity symbols within each of the interleaved parity codewords are encoded by different block encoders.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 7, 2011
From: INNOVATION SPECIALISTS, LLC
To: SUNRISE IP, LLC
Reel/Frame 026863/0362 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 13, 2008
From: BETTS, WILLIAM L.
To: INNOVATION SPECIALISTS, LLC
Reel/Frame 020503/0346 →
Continuity (1)
Related Publication 20090204877A1 · Aug 13, 2009