1. A method for implementing a plurality of error correction algorithms operable on a memory, the method comprising: providing the plurality of error correction algorithms; selecting at least one of the plurality of error correction algorithms based on an organization of the memory; and correcting at least one error in the memory using the at least one of the plurality of error correction algorithms.