Patent ID: 8413025

Claim:
A method of digital signal error correction with block rearrangement and error correcting code, comprising the steps of: (a) dividing a first data stream into a first row of blocks, wherein the first row contains N blocks and each block contains M code words; (b) applying a first error correction code coding on each block of the first row to transform the first row into a second row, wherein the second row contains N blocks and each block contains L code words; (c) applying block rearrangement on the second row to become a third row, wherein the 1 st code word of each block in the second row are placed into the 1st block of the third row in sequence, then the 2nd code word of each block in the second row are placed into the 2nd block of the third row in sequence, then the X th code word of each block in the second row is placed into the X th block of the third row in sequence, respectively, until the L th code word of each block in the second row is placed into the L th block of the third row in sequence, respectively, the 3rd row contains L blocks and each block contains N code words, L, X and N are integers, and 2<X<L; (d) adding each block of the third row with a header to become a 4th row, wherein the 4th row contains L blocks and each block contains P code words; (e) applying a second error correction code coding on each block of the 4th row to transform the 4th row into a 5th row, wherein the 5th row contains L blocks and each block contains R code words; (f) transmitting the 5th row via a channel; (g) receiving the 5th row and applying the second error correction code decoding on each block of the 5th row to transform the 5th row into a 6th row, wherein the 6th row contains I blocks, each block contains P code words, the number of lost block is J and I=L−J; (h) removing the header of each block of the 6th row to become the 7th row, wherein the 7th row contains I blocks and each block contains N code words; (i) applying reverse block rearrangement on the 7th row to become an 8th row, wherein the 1st code word of each block in the 7th row is placed into the 1st block of the 8th row in sequence, then the 2nd code word of each block in the 7th row is placed into the 2nd block of the 8th row in sequence, then the K th code word of each block in the 7th row is placed into the K th block of the 8th row in sequence, respectively, until the L th code word of each block in the 7th row is placed into the L th block of the 8th row in sequence, the 8th row contains L blocks and each block contains N code words, L, K and N are integers, and 2<K<L; (j) applying the first error correction code decoding on each block of the 8th row to transform the 8th row into a 9th row, wherein the second row contains N blocks and each block contains M code words; and (k) combining the blocks of the 9th row to become a second data stream.