Apparatus and method and computer program product for programming flash administration tables
AssigneeSilicon Motion, Inc.
InventorKuan-Yu Ke
Life of this patent
Estimating the term…
Abstract
The invention relates to an apparatus, a method, and a non-transitory computer program product for programming flash administration tables. The non-transitory computer program product includes program code to: periodically determine whether user data that has been programmed into a current block of a flash module satisfies a random-write condition; and update a record of a host-to-flash (H2F) sub-table according to content of a flash-to-host (F2H) table for the current block when user data that has been programmed into the current block of the flash module satisfies the random-write condition.
Claims11
A non-transitory computer-readable storage medium for programming flash administration tables when executed by a processing unit of a flash controller, the non-transitory computer-readable storage medium comprising program code to:
- determine whether user data that has been programmed into a current block of a flash module satisfies a random-write condition each time a predefined number of host pages of user data that has been programmed into the current block;
- and
- update a record of a host-to-flash (H2F) sub-table according to content of a flash-to-host (F2H) table for the current block when user data that has been programmed into the current block of the flash module satisfies the random-write condition,
- wherein the random-write condition means that a quantity of to-be-updated H2F sub-tables associated with user data that has been programmed into the current block of the flash module exceeds a threshold, and the threshold is set by an equation:
- TH2=TH1/n,
- TH2 represents the threshold, TH1 represents the predefined number, and n represents an integer lower than TH1.
A method for programming flash administration tables, performed by a flash controller, comprising:
- determining whether user data that has been programmed into a current block of a flash module satisfies a random-write condition each time a predefined number of host pages of user data that has been programmed into the current block;
- and
- updating a record of a host-to-flash (H2F) sub-table according to content of a flash-to-host (F2H) table for the current block when user data that has been programmed into the current block of the flash module satisfies the random-write condition,
- wherein the random-write condition means that a quantity of to-be-updated H2F sub-tables associated with user data that has been programmed into the current block of the flash module exceeds a threshold, and the threshold is set by an equation:
- TH2=TH1/n,
- TH2 represents the threshold, TH1 represents the predefined number, and n represents an integer lower than TH1.
An apparatus for programming flash administration tables, comprising:
- a flash interface, coupled to a flash module;
- and
- a processing unit, coupled to the flash interface, arranged operably to determine whether user data that has been programmed into a current block of the flash module satisfies a random-write condition each time a predefined number of host pages of user data that has been programmed into the current block;
- and drive the flash interface to update a record of a host-to-flash (H2F) sub-table according to content of a flash-to-host (F2H) table for the current block when user data that has been programmed into the current block of the flash module satisfies the random-write condition,
- wherein the random-write condition means that a quantity of to-be-updated H2F sub-tables associated with user data that has been programmed into the current block of the flash module exceeds a threshold, and the threshold is set by an equation:
- TH2=TH1/n,
- TH2 represents the threshold, TH1 represents the predefined number, and n represents an integer lower than TH1.
Dependencies are inferred from the claim text.