A deinterleaver for performing high-speed multi-channel forward error correction
using external SDRAM is provided. According to one exemplary aspect, the deinterleaver
performs both read and write accesses to the SDRAM that are burst-oriented by hiding
active and precharge cycles in order to achieve high data rate operations. The
data bus length of the SDRAM is designed to be twice the deinterleaving symbol
size thereby allowing bandwidth to be increased. The deinterleaver accesses data
in the SDRAM as read blocks and write blocks. Each block includes a predetermined
number of data words to be interleaved/deinterleaved. The ACTIVE command for one
block is issued when a preceding block is being processed. Data in one read/write
block has the same row address within the same bank of the SDRAM.