Claims
- 1. A method for code group identification and frame synchronization, comprising the steps of:
(a) receiving a sequence of code word symbols; (b) generating a corrected code sequence from said sequence of code word symbols; (c) determining a frame boundary of said corrected code sequence by finding a code head index in said corrected code sequence; (d) forming a final code sequence which is a cyclic shift of said corrected code sequence starting with a code word symbol having said code head index; and (e) identifying a code group associated with said final code sequence.
- 2. The method for code group identification and frame synchronization as claimed in claim 1, wherein said step (b) further comprises the steps of:
(b1) forming a sequence of hard decision symbols from said sequence of code word symbols, each hard decision symbol having a corresponding reliability; and (b2) generating a corrected code sequence using a modified Reed-Solomon decoder based on said sequence of hard decision symbols and corresponding reliabilities.
- 3. The method for code group identification and frame synchronization as claimed in claim 2, wherein a received code word symbol is correlated with a plurality of code words to form a plurality of correlations, a hard decision symbol of said received code word symbol is determined based on said plurality of correlations, and a corresponding reliability is computed based on said plurality of correlations.
- 4. The method for code group identification and frame synchronization as claimed in claim 3, wherein a code word having a highest correlation among said plurality of correlations with a received code word symbol is selected as a hard decision symbol and a corresponding reliability is the height correlation.
- 5. The method for code group identification and frame synchronization as claimed in claim 2, wherein said step (b2) further comprises the steps of:
(i) receiving a new symbol from said sequence of hard decision symbols; (ii) declaring said new symbol as a valid symbol if the corresponding reliability of said new symbol is greater than a reliability threshold, or as an invalid symbol otherwise; (iii) recording total number of valid symbols; (iv) sending a code sequence based on valid symbols to a Reed-Solomon error-and-erasure decoder if said recorded total number of valid symbols is greater than or equal to a threshold of total number of valid symbols, or execute step (vi) otherwise; (v) generating said corrected code sequence and ending said step (b2) if said Reed-Solomon error-and-erasure decoder returns successfully; (vi) ending said step (b2) if all symbols of said sequence of hard decision symbols have been received, or returning to step (i) otherwise.
- 6. The method for code group identification and frame synchronization as claimed in claim 5, wherein said sequence of hard decision symbols has at most 15 hard decision symbols, and said threshold of total number of valid symbols is an integer number between 3 and 15 and is a function of the number of hard decision symbols received.
- 7. The method for code group identification and frame synchronization as claimed in claim 2, wherein said step (b2) further comprises the steps of:
(i) receiving a sequence of hard decision symbols including valid symbols and invalid symbols; (ii) sending a code sequence based on valid symbols to a Reed-Solomon error-and-erasure decoder if total number of invalid symbols in said sequence of hard decision symbols is not greater than a threshold of total number of invalid symbols, or ending said step (b2) otherwise; (iii) generating said corrected code sequence and ending said step (b2) if said Reed-Solomon error-and-erasure decoder returns successfully; (iv) selecting k symbols from current valid symbols of said sequence of hard decision symbols, said k symbols having lowest k reliabilities among all current valid symbols of said sequence of hard decision symbols; (v) declaring said k symbols invalid and determining total number of invalid symbols from said sequence of hard decision symbols; (vi) returning to step (ii) if total number of invalid symbols in said sequence of hard decision symbols is not greater than said threshold of total number of invalid symbols, or ending said step (b2) otherwise.
- 8. The method for code group identification and frame synchronization as claimed in claim 7, wherein said sequence of hard decision symbols has 15 hard decision symbols, and said threshold of total number of invalid symbols is an integer number between 0 and 12.
- 9. The method for code group identification and frame synchronization as claimed in claim 1, wherein said step (c) comprises the steps of:
(c1) finding two code word symbols with smallest symbol values in said corrected code sequence, said two code word symbols having indexes I and J respectively; (c2) setting said code head index to I if the code word symbol with index I has a value smaller than the code word symbol with index J, or setting said code head index to J if the code word symbol with index J has a value smaller than the code word symbol with index I, or continuing step (c3) otherwise; (c3) identifying two code word symbols with indexes I1 and J1 and executing step (c4) if the code word symbol with index I has a value equal to the code word symbol with index J, I1 being the remainder of I+1 divided by n, J1 being the remainder of J+1 divided by n and n being the number of code word symbols in said corrected code sequence; and (c4) setting said code head index to I if the code word symbol with index I1 has a value smaller than the code word symbol with index J1, or setting said code head index to J otherwise.
- 10. The method for code group identification and frame synchronization as claimed in claim 1, wherein said step (e) includes a matching method using only first three code word symbols to determine a code group associated with said final code sequence.
- 11. A method for generating a corrected code sequence, comprising the steps of:
(a) receiving a frame of code word symbols; (b) forming a sequence of hard decision symbols from said frame of code word symbols, each hard decision symbol having a corresponding reliability; and (c) sending said sequence of hard decision symbols and corresponding reliabilities to a modified Reed-Solomon decoder; (d) generating a corrected code sequence using said modified Reed-Solomon decoder and ending said method if said modified Reed-Solomon decoder returns successfully; (e) ending said method if total number of code word symbols received is greater than a limit; (f) receiving a number of additional code word symbols; (g) updating said sequence of hard decision symbols and corresponding reliabilities based on said additional code word symbols; and (h) returning to step (c).
- 12. The method for generating a corrected code sequence as claimed in claim 11, wherein an additional code word symbol with a receiving index m is used is said step (g) according to the steps of:
(g1) determining a new hard decision symbol and a new corresponding reliability for said additional code word symbol; (g2) identifying an associated hard decision symbol having a receiving index equal to the remainder of m divided by n, n being the number of symbols in said sequence of hard decision symbols; (g3) increasing the corresponding reliability of said associated hard decision symbol if said new hard decision symbol is identical to said associated hard decision symbol; (g4) decreasing the corresponding reliability of said associated hard decision symbol if said new hard decision symbol is not identical to said associated hard decision symbol and said new corresponding reliability is less than the corresponding reliability of said associated hard decision symbol; and (g5) replacing said associated hard decision symbol and corresponding reliability with said new hard decision symbol and decreased new corresponding reliability if said new hard decision symbol is not identical to said associated hard decision symbol and said new corresponding reliability is greater than the corresponding reliability of said associated hard decision symbol.
- 13. The method for generating a corrected code sequence as claimed in claim 11, wherein said modified Reed-Solomon decoder in said step (d) performs the steps of:
(i) receiving a new symbol from said sequence of hard decision symbols; (ii) declaring said new symbol as a valid symbol if the corresponding reliability of said new symbol is greater than a reliability threshold, or as an invalid symbol otherwise; (iii) recording total number of valid symbols; (iv) sending a code sequence based on valid symbols to a Reed-Solomon error-and-erasure decoder if said recorded total number of valid symbols is greater than a threshold of total number of valid symbols, or execute step (vi) otherwise; (v) generating said corrected code sequence and ending said step (d) if said Reed-Solomon error-and-erasure decoder returns successfully; (vi) ending said step (d) if all symbols of said sequence of hard decision symbols have been received, or returning to step (i) otherwise.
- 14. The method for generating a corrected code sequence as claimed in claim 13, wherein said sequence of hard decision symbols has at most 15 hard decision symbols, and said threshold of total number of valid symbols is an integer number between 3 and 15 and is a function of the number of hard decision symbols received.
- 15. The method for generating a corrected code sequence as claimed in claim 11, said modified Reed-Solomon decoder in said step (d) performs the steps of:
(i) receiving a sequence of hard decision symbols including valid symbols and invalid symbols; (ii) sending a code sequence based on valid symbols to a Reed-Solomon error-and-erasure decoder if total number of invalid symbols in said sequence of hard decision symbols is not greater than a threshold of total number of invalid symbols, or ending said step (d) otherwise; (iii) generating said corrected code sequence and ending said step (d) if said Reed-Solomon error-and-erasure decoder returns successfully; (iv) selecting k symbols from current valid symbols of said sequence of hard decision symbols, said k symbols having lowest k reliabilities among all current valid symbols of said sequence of hard decision symbols; (v) declaring said k symbols invalid and determining total number of invalid symbols from said sequence of hard decision symbols; (vi) returning to step (ii) if total number of invalid symbols in said sequence of hard decision symbols is not greater than said threshold of total number of invalid symbols, or ending said step (d) otherwise.
- 16. The method for generating a corrected code sequence as claimed in claim 15, wherein said sequence of hard decision symbols has at most 15 hard decision symbols, and said threshold of total number of invalid symbols is an integer number between 0 and 12.
- 17. A method for generating a corrected code sequence, comprising the steps of:
(a) receiving first and second frames of code word symbols; (b) forming first and second sequences of hard decision symbols from said first and second frames of code word symbols; (c) comparing each hard decision symbol in said first sequence with a corresponding hard decision symbol in said second sequence and declaring said hard decision symbol valid if corresponding hard decision symbols are identical and invalid if not identical; (d) sending a code sequence based on valid hard decision symbols determined from step (c) to a Reed-Solomon error-and-erasure decoder if total number of invalid hard decision symbols is less than a threshold of total number of invalid hard decision symbols, or ending said method otherwise; and (e) generating a corrected code sequence and ending said method if said Reed-Solomon error-and-erasure decoder returns successfully.
- 18. A method for generating a corrected code sequence, comprising the steps of:
(a) receiving a plurality of frames of code word symbols; (b) forming a plurality of sequences of hard decision symbols, each sequence corresponding to one of all received frames of code word symbols; (c) forming a new sequence of hard decision symbols, each hard decision symbol in said new sequence having a value determined by taking a majority vote of corresponding hard decision symbols in said plurality of sequences; (d) sending said new sequence to a Reed-Solomon error-and-erasure decoder; and (e) generating a corrected code sequence and ending said method if said Reed-Solomon error-and-erasure decoder returns successfully.
- 19. The method for generating a corrected code sequence as claimed in claim 18, further comprise the steps of:
(f) receiving a new frame of code word symbol if said Reed-Solomon error-and-erasure decoder fails to return a valid code sequence; and (g) returning to step (b).
- 20. An apparatus for code group identification and frame synchronization, comprising:
a plurality of correlators receiving code word symbols and generating a plurality of correlations; a hard decision and reliability measurement unit receiving said plurality of correlations and generating a sequence of hard decision symbols each having a corresponding reliability; a code sequence identifier receiving said sequence of hard decision symbols and corresponding reliabilities, and generating a corrected code sequence; a frame boundary finder receiving said corrected code sequence, cyclic shifting and determining a final code sequence; and a code group identification unit receiving said final code sequence and determining a code group of said final code sequence.
- 21. The apparatus for code group identification and frame synchronization as claimed in claim 20, wherein said code sequence identifier comprises a modified Reed-Solomon decoder for decoding said sequence of hard decision symbols.
- 22. The apparatus for code group identification and frame synchronization as claimed in claim 21, wherein said code sequence identifier further comprises a symbol and reliability update unit for updating code word symbols and corresponding reliabilities.
CROSS-REFERENCES TO RELATED APPLICATIONS
[0001] This is a non-provisional application of U.S. Provisional Application No. 60/412,532, filed Sep. 19, 2002, which is incorporated herewith by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60412532 |
Sep 2002 |
US |