An error control decoding system operable to decode a codeword including a data word and three or more parity segments, the system comprising:na first decoder to decode the codeword by utilizing two or more first parity segments included in the codeword and two or more first data segments of the data word included the codeword, wherein:each of the two or more first parity segments is associated with a respective one of the two or more first data segments, andeach of the two or more first data segments includes a respective sequential portion of the data word;a second decoder to decode the codeword by utilizing one or more second parity segments included in the codeword and one or more second data segments of the data word in the codeword, wherein:each of the one or more second parity segments is associated with a respective one of the one or more second data segments,each of the one or more second data segments includes a sequential portion of data included in a plurality of the two or more first data segments, andthe second decoder utilizes a partial decoding result from the first decoder when available; anda controller to provide the two or more first data segments and the two or more first parity segments to the first decoder for decoding, and to provide the one or more second data segments from the data word to the second decoder for decoding.
›12.↳ 11The decoding system of claim 11, wherein the first decoder is operable to provide decoded data for each of the two or more first data segments that is…d2
The decoding system of claim 11, wherein the first decoder is operable to provide decoded data for each of the two or more first data segments that is decoded successfully independent of failing to successfully decode any of the other two or more first data segments.
›13.↳ 11The decoding system of claim 11, wherein the controller is further operable to provide decoded data from the first decoder, associated with each of th…d2
The decoding system of claim 11, wherein the controller is further operable to provide decoded data from the first decoder, associated with each of the successfully decoded two or more first data segments, to the second decoder when at least one of the two or more first data segments is not successfully decoded.
›14.↳ 11The decoding system of claim 11, further comprising a soft information generation module to convert a decoding result produced by the first decoder in…d2+1
The decoding system of claim 11, further comprising a soft information generation module to convert a decoding result produced by the first decoder into soft information, the soft information comprising at least a portion of the decoding result.
›15.↳ 14The decoding system of claim 14, wherein the soft information includes at least one of conditional probabilities associated with the codeword and log-…d3
The decoding system of claim 14, wherein the soft information includes at least one of conditional probabilities associated with the codeword and log-likelihood ratios associated with the codeword.
›16.↳ 11The decoding system of claim 11, wherein the first decoder is operable to utilize a partial decoding result from the second decoder when available.d2+1
The decoding system of claim 11, wherein the first decoder is operable to utilize a partial decoding result from the second decoder when available.
›17.↳ 16The decoding system of claim 16, wherein the partial decoding result from the second decoder includes soft information produced by the second decoder.d3
The decoding system of claim 16, wherein the partial decoding result from the second decoder includes soft information produced by the second decoder.
›18.↳ 11The decoding system of claim 11, further comprising:na decoding verification module to evaluate decoding results of the first decoder and the second d…d2
The decoding system of claim 11, further comprising:na decoding verification module to evaluate decoding results of the first decoder and the second decoder, and signal the controller when one or more decoding flaws are detected in the decoding result of at least one of the first decoder and second decoder, andwherein the controller is further operable to:pass a partial decoding result from the first decoder to the second decoder when a first respective decoding flaw is detected in the decoding result of the first decoder, andpass a partial decoding result from the second decoder to the first decoder when a second respective decoding flaw is detected in the decoding result of the second decoder.
›19.↳ 11The decoding system of claim 11, further comprising:na decoding verification module to evaluate a decoding result produced by one of the first decoder…d2
The decoding system of claim 11, further comprising:na decoding verification module to evaluate a decoding result produced by one of the first decoder and the second decoder, and signal the controller when a decoding flaw is detected in the decoding result, andwherein the controller is further operable to:pass a partial decoding result from the first decoder to the second decoder when the decoding flaw is detected in the decoding result of the first decoder, andpass a partial decoding result from the second decoder to the first decoder when the decoding flaw is detected in the decoding result of the second decoder.
›20.↳ 11The decoding system of claim 11, further comprising:na storage medium interface operable to read the codeword from a storage medium; anda buffer to st…d2+1
The decoding system of claim 11, further comprising:na storage medium interface operable to read the codeword from a storage medium; anda buffer to store the codeword read from the storage medium.
›21.↳ 20The decoding system of claim 20, wherein the storage medium is flash memory.d3
The decoding system of claim 20, wherein the storage medium is flash memory.
›22.↳ 11The decoding system of claim 11, further comprising a third decoder to decode a plurality of codewords, wherein the plurality of codewords includes at…d2
The decoding system of claim 11, further comprising a third decoder to decode a plurality of codewords, wherein the plurality of codewords includes at least the data word of the codeword decoded by the first decoder and second decoder.
›23.↳ 11The decoding system of claim 11, wherein the first decoder comprises a Bose Chaudhuri Hocquenghem (BCH) code decoder.d2
The decoding system of claim 11, wherein the first decoder comprises a Bose Chaudhuri Hocquenghem (BCH) code decoder.
›24.↳ 11The decoding system of claim 11, wherein the second decoder comprises a low density parity check (LDPC) code decoder.d2
The decoding system of claim 11, wherein the second decoder comprises a low density parity check (LDPC) code decoder.
›25.↳ 11The decoding system of claim 11 comprising a portion of a memory controller.d2
The decoding system of claim 11 comprising a portion of a memory controller.
›26.↳ 11The decoding system of claim 11, further operable to select one of the first decoder or the second decoder to start decoding the codeword.d2+1
The decoding system of claim 11, further operable to select one of the first decoder or the second decoder to start decoding the codeword.
›27.↳ 26The decoding system of claims 26, further comprising an error estimation module comprising:nan encoder, corresponding to the second decoder, to produc…d3
The decoding system of claims 26, further comprising an error estimation module comprising:nan encoder, corresponding to the second decoder, to produce one or more third parity segments from the one or more second data segments in the codeword;a comparator module to estimate the number of errors in the data word of the codeword by evaluating the one or more second parity segments and the one or more third parity segments; anda decision module to select which of the first decoder and second decoder to start decoding the codeword with, wherein the selection is at least based on the estimated number of errors.