Patent ID: 9454420
Filing Date: 2016-09-27
CPC Classification: G06F,G11C

Claim Text:
1. A method, performed by a flash memory controller, for adjusting a reading threshold voltage of a flash memory cell, the method comprising: in response to one or more host read commands received from a host device, reading data from a set of flash memory cells in a flash memory array in accordance with the one or more host read commands and at least a first reading threshold voltage of one or more reading threshold voltages, and performing an error correction process on the read data to produce error correction information; determining, based on the error correction information and satisfaction of first criteria with respect to outcomes from performing the error correction process on the read data produced by reading data in response to the one or more host read commands, whether to adjust at least the first reading threshold voltage; upon determining to adjust the first reading threshold voltage, performing a reading threshold voltage refinement operation that includes setting the value of the first reading threshold voltage to a value greater or less than a current value of the first reading threshold voltage; and initiating a recalibration of at least the first reading threshold voltage of the one or more reading threshold voltages, wherein the recalibration is an operation distinct from the threshold voltage refinement operation, and the initiating is triggered by outcomes from performing the error correction process on the read data produced by reading data in response to the one or more host read commands, wherein the recalibration is triggered in accordance with a determination that the controller performed at least a predefined threshold number of correction cycles while performing the error correction process on the read data.