IP Library › Granted Patent US 11,307,766
Granted Patent B2
US 11,307,766 · App. 17/026,632 · Granted Apr 19, 2022

Apparatus and method and computer program product for programming flash administration tables

Inventor: Kuan-Yu Ke (Zhubei, TW)
Assignee: SILICON MOTION, INC.
G06F3/0604G06F3/0655G06F3/0679
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,307,766
App. No.
17/026,632
Granted
Apr 19, 2022
Kind
B2
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.

Claims (31)

1. 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:

TH 2= TH 1 /n,

TH 2 represents the threshold, TH 1 represents the predefined number, and n represents an integer lower than TH 1 .

2. The non-transitory computer-readable storage medium of claim 1 , wherein the threshold is an integer lower than the predefined number.

3. The non-transitory computer-readable storage medium of claim 1 , wherein n represents an integer ranging from 2 to 5.

4. The non-transitory computer-readable storage medium of claim 1 , wherein a procedure for updating the record of the H2F sub-table comprises:

searching content of a high-level mapping table for a physical address of the H2F sub-table;

reading the H2F sub-table from the physical address of the flash module;

updating the record of the H2F sub-table according to the content of the F2H table for the current block; and

programming the updated H2F sub-table into the flash module.

5. 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:

TH 2= TH 1 /n,

TH 2 represents the threshold, TH 1 represents the predefined number, and n represents an integer lower than TH 1 .

6. The method of claim 5 , wherein the threshold is an integer lower than the predefined number.

7. 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:

TH 2= TH 1 /n,

TH 2 represents the threshold, TH 1 represents the predefined number, and n represents an integer lower than TH 1 .

8. The apparatus of claim 7 , comprising:

a random access memory (RAM), coupled to the processing unit, arranged operably to store the F2H table for the current block.

9. The apparatus of claim 7 , wherein the threshold is an integer lower than the predefined number.

10. The apparatus of claim 7 , wherein n represents an integer ranging from 2 to 5.

11. The apparatus of claim 7 , wherein the processing unit is arranged operably to search content of a high-level mapping table for a physical address of the H2F sub-table; drive the flash interface to read the H2F sub-table from the physical address of the flash module; update the record of the H2F sub-table according to the content of the F2H table for the current block; and drive the flash interface to program the updated H2F sub-table into the flash module.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 23, 2020
From: KE, KUAN-YU
To: SILICON MOTION, INC.
Reel/Frame 053859/0636 →
Priority Claims (1)
CN 202010218055.5 · Mar 25, 2020 · national
Continuity (1)
Related Publication 20210303159A1 · Sep 30, 2021