1. A semiconductor memory device comprising: an encoder configured to generate an error correction code with respect to data; a first processor configured to perform interleaving with respect to the data from the encoder after the generation of the error correction code; a memory configured to store a process result from the first processor; a detector configured to detect a credibility value indicative of credibility of the data read from the memory; and a controller configured to determine whether or not the credibility value of the data read from a predetermined area of the memory is equal to or greater than a predetermined value based on a detection result from the detector, the controller configured to perform the interleaving with respect to the data read from the predetermined area if the credibility value is equal to or greater than the predetermined value and to withhold the interleaving with respect to the data read from the predetermined area if the credibility value is less than the predetermined value.