1. A method comprising: receiving a syndrome corresponding to a codeword of data; indicating that there is no error in the codeword if the syndrome is zero; indicating an error in the codeword if the syndrome is non-zero; generating an error location polynomial for the codeword based on the syndrome utilizing at least a conditional Berlekamp-Massey Algorithm (BMA); analyzing the error location polynomial to determine bit error locations; correcting bit errors in the codeword as indicated by the bit error locations; and storing the codeword with the corrected bits.