1. A method for error correction using low density parity check (LDPC) codes, comprising: initializing extrinsic probability information between variable nodes and check nodes in a bipartite graph including generating a Bernoulli sequence according to a probability of a bit having a value one; checking parity in accordance with a parity check equation; if the parity check equation is not satisfied, then: updating extrinsic information in check nodes from variable nodes using a parity node update logic circuit in a first half iteration; updating extrinsic information in variable nodes from check nodes using a variable node update logic circuit in a second half iteration; and updating the variable nodes with a probability based upon the extrinsic information passed between check nodes and variable nodes of wherein the probability represents a likelihood that an ith bit is a one; and passing information bits when the parity check equation is satisfied.