the encoder generating a corresponding codeword for the input data, wherein the codeword comprises a plurality of b-bit portions including two or more b-bit portions that contain input data, and further including a first set of b check bits and a second set of w check bits; and wherein b is an integer greater than one, and wherein the first set of b check bits used to detect a magnitude of an erro