Patent ID: 6934901

Claim:
A method for interleaving blocks of data, comprising: partitioning an input bitstream into at least two bitstreams; interleaving the at least two bitstreams to produce a first bitstream, corresponding bits of each of the at least two bitstreams being alternately placed in the first bitstream; and partitioning the first bitstream into at least two different bitstreams, a predetermined number of consecutive bits in the first bitstream being partitioned into each of the at least two different bitstreams. wherein interleaving the at least two bitstreams comprises: if the number of the at least two bitstreams is between 2 n and 2 n+1 , where n is an integer, interleaving 2 n of the at least two bitstreams to produce the first bitstream, corresponding bits of each of the 2 n bitstreams being alternatively placed in the first bitstream; and setting aside a remaining of the at least two bitstreams.