IP Library Granted Patent US 10,942,811
Granted Patent B2
US 10,942,811 · App. 16/278,793 · Granted Mar 9, 2021

Data processing method for solid state drive

Inventors: Fang-Chien Chai (Taipei, TW); Ho-An Lin (Taipei, TW)
Assignee: SOLID STATE STORAGE TECHNOLOGY CORPORATION
G06F11/1441G06F3/064G06F3/0619G06F3/0659G06F3/0679G06F11/1469G06F12/0246G06F2212/7201G06F2212/7205G06F2212/7207
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 10,942,811
App. No.
16/278,793
Granted
Mar 9, 2021
Kind
B2
Abstract

A data processing method for a solid state drive includes the following steps. When a write command is received, the write command is executed to store a write data into a first number of blocks of the plural blocks, a block-closing action is performed to generate a first number of used blocks, and the logical-to-physical table is updated. When a trim command is received, the trim command is executed to change a second number of used blocks to a second number of unused blocks, a physical-to-logical data corresponding to the second number of used blocks is stored into a trim block of the non-volatile memory, and the logical-to-physical table is updated. A backup action is performed at plural time points to generate plural backup contents corresponding to the plural time points, respectively. The plural backup contents are stored into the non-volatile memory.

Claims (13)

1. A data processing method for a solid state drive, the solid state drive comprising a control circuit and a non-volatile memory, the control circuit comprising a logical-to-physical table, the non-volatile memory comprising plural blocks, the data processing method comprising steps of:

when a write command is received, executing the write command to store a write data into at least one of the plural blocks, and updating the logical-to-physical table, wherein if a data area of a first block is occupied according to the write command, a block-closing action is performed to change the first block to a first used block, wherein, according to the block-closing action performed on the first block, a first close information including a first physical-to-logical data corresponding to the first block is generated and is stored in the first used block;

when a trim command is received, executing the trim command, and updating the logical-to-physical table, wherein if the first used block is changed to a first unused block according to the trim command, the first physical-to-logical data that is stored in the first used block is stored into a trim block;

performing a backup action at plural time points, wherein when the backup action is performed at one of the plural time points, a current content of the logical-to-physical table corresponding to the one of the plural time points is stored into the non-volatile memory, wherein plural backup contents of the logical-to-physical table corresponding to the plural time points respectively are stored in the non-volatile memory after the backup action is performed at the plural time points.

2. The data processing method as claimed in claim 1 , further comprising steps of:

after a sudden power off event occurs and then the solid state drive is powered on, sequentially reading the plural backup contents of the logical-to-physical table from the non-volatile memory according to the plural time points in a reverse order until one of the plural backup contents is successfully read;

loading the successfully-read backup content into the logical-to-physical table, wherein the successfully-read backup content is corresponding to a corresponding time point of the plural time points;

searching a first number of used blocks that are generated in response to the write command after the corresponding time point, and recording a physical-to-logical relationship of the first number of used blocks into the logical-to-physical table; and

searching a second number of physical-to-logical data that is stored in the trim block in response to the trim command after the corresponding time point, and cancelling a portion of the logical-to-physical relationship in the logical-to-physical table according to the second number of physical-to-logical data that is stored in the trim block in response to the trim command after the corresponding time point.

3. The data processing method as claimed in claim 1 , further comprising steps of:

when a storage amount of the trim block reaches a threshold value, performing the backup action; and

performing an erase action on the trim block.

4. The data processing method as claimed in claim 1 , wherein at least one of the plural blocks is configured as the trim block, wherein the trim block is used for storing a close information but not for storing the write data.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2019
From: LITE-ON ELECTRONICS (GUANGZHOU) LIMITED; LITE-ON TECHNOLOGY CORPORATION
To: SOLID STATE STORAGE TECHNOLOGY CORPORATION
Reel/Frame 051213/0824 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 19, 2019
From: CHAI, FANG-CHIEN; LIN, HO-AN
To: LITE-ON ELECTRONICS (GUANGZHOU) LIMITED; LITE-ON TECHNOLOGY CORPORATION
Reel/Frame 048364/0878 →
Priority Claims (1)
CN 201811426938.4 · Nov 27, 2018 · national
Continuity (1)
Related Publication 20200167235A1 · May 28, 2020