IP Library Granted Patent US 6,895,546
Granted Patent B2
US 6,895,546 · App. 10/219,546 · Granted May 17, 2005

System and method for encoding and decoding data utilizing modified reed-solomon codes

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 6,895,546
App. No.
10/219,546
Granted
May 17, 2005
Kind
B2
Abstract

A system and method for coding technique which achieves a high coding gain with simple, low-price implementation. The system comprises a transmitter for transmitting encoded code words, and a receiver for receiving and decoding the code words, via a network. In one embodiment, a low complexity modified R-S coding process is used to R-S encode smaller-bit words (e.g., 7-bit words, instead of 8-bit words). In a second embodiment, a feed-back block concatenated coding process improves coding gain by utilizing concatenation and an erasure algorithm. In a third embodiment, a feed-back block concatenated coding process is designed for an Ethernet. The decoding processes utilize error-correcting capabilities built in during the three encoding processes described herein.

Claims (63)

1. A method of transmitting original (2 (n−1) −1−2t) n-bit data words in a network, in order to provide an error-correcting capability of t number of bytes, comprising:

transforming the (2 (n−1) −1−2t) n-bit words into (2 (n−1) −1−2t) (n−1)-bit words;

encoding the (2 (n−1) −1−2t) (n−1)-bit words with a Reed-Solomon encoder to create 2t (n−1)-bit redundancy words; and

transmitting the 2t (n−1)-bit redundancy words and the original (2 (n−1) −1−2t) n-bit data words to a destination, thereby allowing for decoding.

2. The method of claim 1 , wherein the decoding comprises:

transforming the decoded (2 (n−1) −1−2t) n-bit words into decoded (2 (n−1) −1−2t) (n−1)-bit words;

decoding the (2 (n−1) −1−2t) (n−1)-bit words and the 2t (n−1)-bit redundancy words with a shortened Reed-Solomon decoder to obtain decoded (2 (n−1) −1−2t) (n-1)-bit decoded words;

transforming the (2 (n−1) −1−2t) (n−1)-bit decoded words into (2 (n−1) −1−2t) n-bit transformed decoded words by a predefined code definition; and

comparing the transformed decoded (2 (n−1) −1−2t) n-bit words to the received (2 (n−1) −1−2t) n-bit words to obtain the original (2 (n−1) −1−2t) n-bit words without transmission errors.

3. The method of claim 2 , wherein transforming the (2 (n−1) −1−2t) (n−1)-bit words into (2 (n−1) −1−2t) n-bit words comprises:

adding 0 as a most significant bit (MSB) to each decoded (n−1)-bit word to obtain a transformed decoded n-bit word.

4. The method of claim 2 , wherein comparing the transformed decoded (2 (n−1) −1−2t) n-bit words to the received (2 (n−1) −1−2t) n-bit words to obtain the estimated (2 (n−) −1−2t) n-bit words without transmission errors comprises:

XOR-ing the transformed decoded (2 (n−1) −1−2t) n-bit words to the received (2 (n−1 )−1−2t) n-bit words to obtain intermediary (2 (n−1) −1−2t) n-bit words;

determining whether the number of 1s in the intermediary (2 (n−) −1−2t) n-bit words is less than ┌(n−1)/2┐;

outputting the decoded n-bit word when the determination is positive; and

outputting the complementary of the decoded n-bit word when the determination is negative.

5. A method of transmitting original (L−1−2t) n-bit data words in a network, in order to provide an error-correcting capability of t number of bytes, wherein 0<L<2 (n−1), comprising:

transforming the (L−1−2t) n-bit words into (L−1−2t) (n−1)-bit words;

encoding the (L−1−2t) (n−1)-bit words with a Reed-Solomon encoder to create 2t (n−1)-bit redundancy words; and

transmitting the 2t (n−1)-bit redundancy words and the original (L−1−2t) n-bit data words to a destination, thereby allowing for decoding.

6. A method of transmitting original (2 n −1−2t) (m+n)-bit data words, with an error-correcting capability of t words, comprising:

transforming the (2 n −1−2t) (n+m)-bit words into (2 n −1−2t) pairs of n-bit words and m-bit words;

encoding the (2 n −1−2t) n-bit words with a shortened Reed-Solomon encoder to obtain 2t n-bit redundancy words; and

encoding the (2 n −1−2t) n-bit words and the 2t n-bit redundancy words to obtain (2 n −1−2t)(n+m+k)-bit words and 2t (n+m+k)-bit redundancy words such that each n-bit word is connected to 2 m group members, thereby allowing for decoding.

7. The method of claim 6 , wherein the decoding comprises:

detecting and signing illegal words from the (2 n −1−2t)(n+m+k)-bit words and the 2t (n+m+k)-bit redundancy words;

erasure decoding the (2 n −1−2t) n-bit words and the 2t n-bit redundancy words with a Reed-Solomon decoder using the signed words to obtain decoded (2 n−1−2 t) n-bit words; and

finding among the 2 m group members the (m+n+k)-bit word which has the minimum hamming distance to the received (m+n+k) word.

8. The method of claim 7 , wherein word limitations exist comprising at least one of a group consisting of:

an allowed number of 1s and 0s in the words; and

a required minimum number of transitions in the words.

9. A method of transmitting original (L−1−2t) (m+n)-bit data words, wherein 0<1<2 n , with an error-correcting capability of t words, comprising:

transforming the (L−1−2t) (n+m)-bit words into (L−1−2t) pairs of n-bit words and m-bit words;

encoding the (L−1−2t) n-bit words with a shortened Reed-Solomon encoder to obtain 2t n-bit redundancy words; and

encoding the (L−1−2t) n-bit words and the 2t n-bit redundancy words to obtain (L−1−2t)(n+m+k)-bit words and 2t (n+m+k)-bit redundancy words such that each n-bit word is connected to 2 m group members, thereby allowing for decoding.

10. A computer program product comprising a computer usable medium having control logic stored therein for causing a computer to transmit original (2 (n−1) −1−2t) n-bit data words, with an error-correcting capability of t number of bytes, comprising encode transmission words, comprising:

first computer readable program code means for transforming the (2 (n−1) −1−2t) n-bit words into (2 (n−1) −1−2t) (n−1)-bit words;

second computer readable program code means for encoding the (2 (n−1) −1−2t) (n−1)-bit words with a Reed-Solomon encoder to create 2t (n−1)-bit redundancy words;

third computer readable program code means for transmitting the 2t (n−1)-bit redundancy words and the original (2 (n−1) −1−2t) n-bit data words to a destination;

fourth computer readable program code means for transforming the (2 (n−1) −1−2t) n-bit words into (2 (n−1) −1−2t) (n−1)-bit words;

fifth computer readable program code means for decoding the (2 (n−1) −1−2t) (n−1)-bit words and the 2t (n−1)-bit redundancy words with a Reed-Solomon decoder to obtain decoded (2 (n−1) −1−2t) (n−1)-bit words;

sixth computer readable program code means for transforming the decoded (2 (n−1) −1−2t) (n−1)-bit words into transformed decoded (2 (n−1) −1−2t) n-bit words; and

seventh computer readable program code means for comparing the transformed decoded (2 (n−1) −1−2t) n-bit words to the received (2 (n−1) −1−2t) n-bit words to obtain the estimated (2 (n−1) −1−2t) n-bit words without transmission errors.

11. The computer program product of claim 10 , wherein the sixth computer readable program code means comprises:

adding 0 as a most significant bit (MSB) to each (n−1)-bit non-transformed word to obtain a n-bit transformed word.

12. The computer program product of claim 11 , wherein the seventh computer readable program code means comprises:

XOR-ing the transformed decoded (2 (n−1) −1−2t) n-bit words to the received (2 (n−1) −1−2t) n-bit words to obtain intermediary (2 (n−1) −1−2t) n-bit words;

determining if the number of 1s in the intermediary (2 (n−) −1−2t) n-bit words is less than ┌(n−1)/2┐;

outputting the transformed n-bit word when the number of 1s in the intermediary n-bit word is less than ┌(n−1)/2┐; and

outputting the complement of the transformed decoded n-bit word when the number of 1s in the intermediary word is not less than ┌(n−1)/2┐.

13. A computer program product comprising a computer usable medium having control logic stored therein for causing a computer to transmit original (2 n −1−2t) (n+m)-bit data words, with an error-correcting capability of t number of bytes, comprising:

first computer readable program code means for causing the computer to transform the (2 n −1−2t) (n+m)-bit words into (2 n −1−2t) (n+m)-bit words;

second computer readable program code means for dividing the (2 n −1−2t) (n+m)-bit words into (2 n −1−2t) n-bit words and (2 n −1−2t) m-bit words;

third computer readable program code means for encoding the (2 n −1−2t) (m+n)-bit words with a Reed-Solomon encoder to obtain 2t n-bit redundancy words;

fourth computer readable program code means for encoding the (2 n −1−2t) n-bit words and the 2t n-bit redundancy words to obtain (2 n −1−2t)(n+m+k)-bit words and 2t (n+m+k)-bit redundancy words;

fifth computer readable program code means for transmitting the (2 n −1−2t)(n+m+k)-bit words and the 2t (n+m+k)-bit redundancy words;

sixth computer readable program code means for checking and signing the (2 n −1−2t)(n+m+k)-bit words and the 2t (n+m+k)-bit redundancy words for illegal words;

seventh computer readable program code means for transforming the (2 n −1−2t) (n+m+k)-bit words into n-bit words;

eighth computer readable program code means for decoding the (2 n −1−2t) n-bit words and the 2t n-bit redundancy words with a Reed-Solomon decoder to obtain decoded (2 n −1−2t) n-bit words; and

ninth computer readable program code means for choosing group member words from the 2 m groups that have the smallest hamming distance to the receive (n+m+k)-bit received words to obtain the original (2 n −1−2t) n-bit words without transmission errors.

14. The computer program product of claim 13 , wherein word limitations exist comprising at least one of a group consisting of:

an allowed number of 1s and 0s in the words; and

a required minimum number of transitions in the words.

Assignments (9)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 7, 2012
From: BROADCOM BROADBAND ACESS LTD.
To: BROADCOM INTERNATIONAL LIMITED
Reel/Frame 029256/0895 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 7, 2012
From: BROADCOM INTERNATIONAL LIMITED
To: BROADCOM CORPORATION
Reel/Frame 029256/0939 →
CHANGE OF NAME Recorded Nov 7, 2012
From: BROADLIGHT LTD.
To: BROADCOM BROADBAND ACCESS LTD.
Reel/Frame 029259/0975 →
RELEASE OF SECURITY INTEREST Recorded Jan 7, 2010
From: PLENUS II, LIMITED PARTNERSHIP; PLENUS II (D.C.M.), LIMITED PARTNERSHIP
To: BROADLIGHT LTD.
Reel/Frame 023741/0609 →
SECURITY AGREEMENT Recorded Mar 8, 2007
From: BROADLIGHT LTD.
To: PLENUS II, LIMITED PARTNERSHIP; PLENUS II (D.C.M.), LIMITED PARTNERSHIP
Reel/Frame 018981/0325 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 12, 2002
From: IVRY, RAANAN
To: BROAD-LIGHT LTD.
Reel/Frame 013567/0603 →