IP Library › Granted Patent US 7,437,656
Granted Patent B2
US 7,437,656 · App. 10/499,236 · Granted Oct 14, 2008

Error correction of balanced codeword sequence

Assignee: Mysticom Ltd.
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 7,437,656
App. No.
10/499,236
Granted
Oct 14, 2008
Kind
B2
Abstract

A method for recoding an input sequence of words, including assigning a respective bit-grade to at least one of the bits in a first word in the input sequence, deriving candidate words from the first word in response to the respective bit-grade, and inserting one of the candidate words into each of a plurality of candidate sequences, so that each of the candidate sequences contains one of the candidate words. The method further includes adding subsequent words to the candidate sequences, the subsequent words consisting of a further candidate word derived from a further word in the input sequence, computing respective sequence parameters for the candidate sequences, based on a relation between the candidate words and the subsequent words in the candidate sequences, selecting one of the candidate sequences in response to the sequence parameters, and outputting one of the candidate words contained in the selected candidate sequence.

Claims (52)

1. A method for processing an input sequence of words received over a communication link, comprising:

assigning a respective bit-grade to at least one of the bits in a first word among the words in the input sequence;

deriving candidate words from the first word in response to the respective bit-grade;

inserting one of the candidate words into each of a plurality of candidate sequences, so that each of the candidate sequences contains one of the candidate words;

adding one or more subsequent words to each of the candidate sequences, each of the subsequent words consisting of a further candidate word derived from a further word received in the input sequence;

computing respective sequence parameters for the candidate sequences, based on a relation between the candidate words and the subsequent words in each of the candidate sequences;

selecting one of the candidate sequences in response to the sequence parameters; and

outputting the one of the candidate words contained in the selected one of the candidate sequences.

2. A method according to claim 1 , and comprising assigning a respective word-grade to the one or more subsequent words in response to the one or more subsequent words and the respective sequence parameters, and wherein adding the one or more subsequent words comprises adding the one or more subsequent words to each of the candidate sequences in response to the respective word-grade.

3. A method according to claim 2 , wherein the respective word-grade is operative as an index in a predetermined lookup table comprising entries for adding the one or more subsequent words.

4. A method according to claim 1 , and comprising assigning a respective word-grade to the one or more subsequent words in response to the one or more subsequent words and the respective sequence parameters, wherein the plurality of candidate sequences comprises a first candidate sequence and a second candidate sequence, and comprising copying the first candidate sequence to the second candidate sequence in response to the respective word-grade.

5. A method according to claim 4 , wherein the respective word-grade is operative as an index in a predetermined lookup table comprising entries for copying the first candidate sequence to the second candidate sequence.

6. A method according to claim 1 , wherein selecting the one of the candidate sequences comprises assigning the one of the candidate sequences a highest probability of containing correct words.

7. A method according to claim 1 , wherein the at least one of the bits comprises all the bits in the first word, and wherein assigning the respective bit-grade comprises determining respective higher probability values and lower probability values for all the bits, and wherein the candidate words comprise a first candidate word having all the higher probability values and a second candidate word having all the lower probability values.

8. A method according to claim 7 , wherein the first and the second candidate words comprise respective first and second disparities, wherein computing the respective sequence parameters comprises computing respective running disparities for the candidate sequences, and wherein computing the respective sequence parameters comprises comparing the first and second disparities and the running disparities.

9. A method according to claim 7 , wherein the first and the second candidate words comprise 10-bit words which are encoded from respective 8-bit words according to a predetermined standard.

10. Apparatus for processing an input sequence of words received over a communication link, comprising:

a processor which is adapted to:

assign a respective bit-grade to at least one of the bits in a first word among the words in the input sequence, and

derive candidate words from the first word in response to the respective bit-grade; and

a memory, which stores a plurality of candidate sequences, so that each of the candidate sequences contains one of the candidate words, the processor being further adapted to:

insert one of the candidate words into each of the plurality of candidate sequences,

add one or more subsequent words to each of the candidate sequences, each of the subsequent words consisting of a further candidate word derived from a further word received in the input sequence,

compute respective sequence parameters for the candidate sequences, based on a relation between the candidate words and the subsequent words in each of the candidate sequences,

select one of the candidate sequences responsively to the sequence parameters, and

output the one of the candidate words contained in the selected one of the candidate sequences.

11. Apparatus according to claim 10 , wherein the processor is further adapted to assign a respective word-grade to the one or more subsequent words responsively to the one or more subsequent words and the respective sequence parameters, and to add the one or more subsequent words to each of the candidate sequences responsively to the respective word-grade.

12. Apparatus according to claim 11 , wherein the respective word-grade is operative as an index in a predetermined lookup table comprising entries for adding the one or more subsequent words, and wherein the memory stores the lookup table.

13. Apparatus according to claim 12 , wherein the processor is further adapted to assign a respective word-grade to the one or more subsequent words responsively to the one or more subsequent words and the respective sequence parameters, wherein the plurality of candidate sequences comprises a first candidate sequence and a second candidate sequence, and wherein the processor is further adapted to copy the first candidate sequence to the second candidate sequence responsively to the respective word-grade.

14. Apparatus according to claim 13 , wherein the respective word-grade is operative as an index in a predetermined lookup table comprising entries for copying the first candidate sequence to the second candidate sequence, and wherein the memory stores the lookup table.

15. Apparatus according to claim 10 , wherein the processor is adapted to assign the one of the candidate sequences a highest probability of containing correct words.

16. Apparatus according to claim 10 , wherein the at least one of the bits comprises all the bits in the first word, and wherein the processor is adapted to determine respective higher probability values and lower probability values for all the bits, and wherein the candidate words comprise a first candidate word having all the higher probability values and a second candidate word having all the lower probability values.

17. Apparatus according to claim 16 , wherein the first and the second candidate words comprise respective first and second disparities, and wherein the processor is adapted to compute respective running disparities for the candidate sequences and to compare the first and second disparities and the running disparities.

18. Apparatus according to claim 16 , wherein the first and the second candidate words comprise 10-bit words which are encoded from respective 8-bit words according to a predetermined standard.

19. A method for processing an input sequence of words received over a communication link, comprising:

identifying a possible bit error in a first word among the words in the input sequence;

deriving candidate words from the first word responsively to the possible bit error;

inserting one of the candidate words into each of a plurality of candidate sequences, so that each of the candidate sequences contains one of the candidate words;

adding one or more subsequent words to each of the candidate sequences, each of the subsequent words consisting of either a further word received in the input sequence subsequent to the first word, or a further candidate word derived from the further word received in the input sequence;

computing respective sequence parameters for the candidate sequences, based on a relation between the candidate words and the subsequent words in each of the candidate sequences;

selecting one of the candidate sequences responsively to the sequence parameters; and

outputting the one of the candidate words contained in the selected one of the candidate sequences.

20. Apparatus for processing an input sequence of words received over a communication link, comprising:

a processor which is adapted to:

assign a respective quality-measure to at least one of the bits in a first word among the words in the input sequence, and

derive candidate words from the first word in response to the respective quality-measure; and

a memory, which stores a plurality of candidate sequences, so that each of the candidate sequences contains one of the candidate words, the processor being further adapted to:

insert one of the candidate words into each of the plurality of candidate sequences,

add one or more subsequent words to each of the candidate sequences, each of the subsequent words consisting of a further candidate word derived from a further word received in the input either a further word received in the input sequence subsequent to the first word, or a further candidate word derived from the further word received in the input sequence,

compute respective sequence parameters for the candidate sequences, based on a relation between the candidate words and the subsequent words in each of the candidate sequences,

select one of the candidate sequences responsively to the sequence parameters, and

output the one of the candidate words contained in the selected one of the candidate sequences.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 21, 2014
From: MYSTICOM LTD.
To: CADENCE DESIGN SYSTEMS INC.
Reel/Frame 034429/0757 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 6, 2006
From: LIDA, EYRAN; SHAHAR, BOAZ
To: MYSTICOM LTD.
Reel/Frame 017652/0100 →
Continuity (3)
Provisional Application 6034548300 · Jan 3, 2002
Provisional Application 6034152500 · Dec 17, 2001
Related Publication 20060153116A1 · Jul 13, 2006