Patent ID: 8514646

Claim:
A method for improving performance when a flash memory storage device works in a wide temperature range, the steps comprising: step SA 01 : received a read CMD; step SA 02 : read data from a NAND flash memory; step SA 03 : judging if the cyclic Codes match; if yes, terminates the process; if no, runs to next step; step SA 04 : checking if an ECC engine can correct; if yes, the ECC engine starts to correct; if no, runs to next step; step SA 04 ′: getting a current temperature and a programming temperature from a thermal sensor; step SA 05 : checking a Read Retry Record table; check if a physical address has ever applied a Read Retry method and has proper start test voltage record; if yes, jumps to next two step; if no, runs to next step; step SA 06 : calculating a Read Retry start test voltage according to the current temperature and the programming temperature; step SA 07 : applying the Read Retry start test voltage to a memory cell array; step SA 08 : reading data from the NAND flash memory; step SA 09 : judging if the Cyclic Codes match; if yes, saves the current test voltage to the Read Retry Record table; if no, runs to next step; step SA 10 : checking if the ECC engine can correct; if yes, runs to step SA 04 ; if no, runs to next step; and step SA 11 : checking if all available test voltages are tried; if yes, reports an uncorrectable error; if no, applying another test voltage and loops to step SA 08 .