Systems and methods for constructing concatenated codes for data storage channels, such as holographic storage channels, are provided. The concatenated codes include an outer BCH code and an inner iteratively decodable code, such as an LDPC code or turbo code. The correction power and coding rate of
Systems and methods for constructing concatenated codes for data storage channels, such as holographic storage channels, are provided. The concatenated codes include an outer BCH code and an inner iteratively decodable code, such as an LDPC code or turbo code. The correction power and coding rate of one or both of the codes may be programmable based on the channel characteristics and the desired SNR coding gain. The correction power and/or coding rate of the inner and/or outer code may also be dynamically adjusted in real-time to compensate for time-varying error conditions on the channel.
대표청구항▼
1. A method for implementing a concatenated code on a data storage channel, the method comprising: selecting a correction power for an outer BCH code;selecting an inner code rate for an inner iteratively decodable code based, at least in part, on an overall system code rate;designing the inner itera
1. A method for implementing a concatenated code on a data storage channel, the method comprising: selecting a correction power for an outer BCH code;selecting an inner code rate for an inner iteratively decodable code based, at least in part, on an overall system code rate;designing the inner iteratively decodable code for the inner code rate, wherein the inner iteratively decodable code has an associated matrix representation;designing the outer BCH code for the correction power;increasing the correction power for the outer BCH code by allocating one or more bits from the matrix representation to the outer BCH code while maintaining the overall system code rate, wherein the one or more bits are allocated by reducing the number of rows in the matrix representation;encoding user information with the outer BCH code and the inner iteratively decodable code; andstoring the encoded user information on the data storage channel. 2. The method of claim 1 wherein selecting the correction power for the outer BCH code comprises receiving a user-programmable input, and wherein the user-programmable input is indicative of the correction power. 3. The method of claim 2 further comprising dynamically adjusting the correction power based on an expected inner code error rate. 4. The method of claim 1 wherein the inner iteratively decodable code is selected from the group consisting of an LDPC code and a turbo code. 5. The method of claim 1 wherein the data storage channel comprises a holographic data storage channel. 6. The method of claim 5 further comprising: interleaving the encoded user information stored on the holographic data storage channel; andgenerating a plurality of codewords from the interleaved, encoded user information. 7. The method of claim 6 wherein interleaving the encoded user information comprises interleaving encoded user information stored across more than one page of the holographic data storage channel. 8. The method of claim 1 wherein the inner iteratively decodable code comprises an LDPC code, the method further comprising: constructing a mother matrix representation of a quasi-cyclic parity check matrix for the LDPC code;reducing the number of rows in the mother matrix representation; andincreasing the correction power for the outer BCH code while maintaining a constant overall system code rate. 9. The method of claim 1 wherein the inner iteratively decodable code comprises at least two different LDPC codes. 10. The method of claim 9 further comprising: constructing at least two mother matrix representations of at least two quasi-cyclic parity check matrices for the at least two different LDPC codes, wherein the at least two different LDPC codes are associated with the same circulant size Sc, and wherein the at least two mother matrix representations have a different number of rows; andreceiving a user-programmable input that selects one of the at least two different LDPC codes. 11. The method of claim 10 further comprising dynamically selecting one of the at least two different LDPC codes based, at least in part, on error statistics associated with the data storage channel. 12. A system for implementing a concatenated code, comprising: an outer BCH code associated with a correction power;an inner iteratively decodable code associated with a matrix representation and an inner code rate, wherein the inner code rate is based, at least in part, on an overall system code rate;an encoder to encode user information using the outer BCH code and the inner iteratively decodable code, wherein the encoder is configured to increase the correction power for the outer BCH code by allocating one or more bits from the matrix representation to the outer BCH code while maintaining the overall system code rate, and wherein the one or more bits are allocated by reducing the number of rows in the matrix representation; anda data storage channel to store the encoded user information. 13. The system of claim 12 wherein the correction power for the outer BCH code is selected based on at least one user-programmable input that is indicative of the correction power. 14. The system of claim 13 wherein the encoder is configured to dynamically adjust the correction power based on an expected inner code error rate. 15. The system of claim 12 wherein the inner iteratively decodable code is selected from the group consisting of an LDPC code and a turbo code. 16. The system of claim 12 wherein the data storage channel comprises a holographic data storage channel. 17. The system of claim 16 further comprising: an interleaver configured to interleave the encoded user information stored on the holographic data storage channel, wherein the encoder generates a plurality of codewords from the interleaved, encoded user information. 18. The system of claim 17 wherein the interleaver is configured to interleave encoded user information stored across more than one page of the holographic data storage channel. 19. The system of claim 12 wherein the inner iteratively decodable code comprises an LDPC code and wherein the encoder is configured to: construct a mother matrix representation of a quasi-cyclic parity check matrix for the LDPC code;reduce the number of rows in the mother matrix representation; andincrease the correction power for the outer BCH code while maintaining a constant overall system code rate. 20. The system of claim 12 wherein the inner iteratively decodable code comprises at least two different LDPC codes. 21. The system of claim 20 wherein the encoder is configured to: construct at least two mother matrix representations of at least two quasi-cyclic parity check matrices for the at least two different LDPC codes, wherein the at least two different LDPC codes are associated with the same circulant size Sc, and wherein the at least two mother matrix representations have a different number of rows; andreceive a user-programmable input that selects one of the at least two different LDPC codes. 22. The system of claim 21 wherein the encoder is configured to dynamically select one of the at least two different LDPC codes based, at least in part, on error statistics associated with the data storage channel.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (22)
Kyung, Gyu Bum; Myung, Se Ho; Yang, Kyeong Cheol; Yang, Hyun Koo; Park, Dong Seek; Kim, Jae Yoel; Park, Sung Eun; Choi, Seung Hoon; Joo, Pan Yuh; Jeong, Hong Sil, Apparatus and method for coding/decoding block low density parity check code with variable block length.
Denissen Adrianus J. M. (Groenewoudseweg 1 5621 BA Eindhoven NLX) Zwaans Bernardus A. M. (Groenewoudseweg 1 5621 BA Eindhoven NLX), Encoding/decoding circuit, and digital video system comprising the circuit.
Zaleski, II,Kenneth G; Hebsgaard,Anders, Method and apparatus for performing trellis coded modulation of signals for transmission on a TDMA channel of a cable network.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.