Error correcting codes are used to automatically detect and correct errors in a received data signal.  Generally, a data signal transmitter applies a selected encoding algorithm to a transmitted data signal.  A receiver applies an appropriate decoder to determine whether the received signal was corrupted after transmission and to correct any errors detected.  Low density parity check (“LDPC”) codes are one of a variety of error correcting codes. 
LDPC decoders operate near the Shannon limit.  When compared to the decoding of turbo codes, low density parity check decoders require simpler computational processing, and they are more suitable for parallelization and low complexity implementation.  Low density parity check decoders are applicable for error correction coding in a variety of next generation communication and data storage systems. 
LDPC decoders require simpler computational processing than other error coding schemes.  While some parallel low density parity check decoder designs for randomly constructed low density parity check codes suffer from complex interconnect issues, various semi-parallel and parallel implementations, based on structured low density parity check codes, alleviate the interconnect complexity. 
Because of their superior performance and suitability for hardware implementation, LDPC codes are considered to be a promising alternative to other coding schemes in telecommunication, magnetic storage, and other applications requiring forward error correction.