Systems and methods for identifying storage resources that are not in use
First Claim
Patent Images
1. A method for managing data in a NAND flash storage system, the method comprising:
- sending, by a host processor, an empty-block directive including a logical identifier comprising data deleted by the host processor;
receiving, at a solid-state storage controller maintaining a block mapping table between logical identifiers and physical storage locations of the NAND flash memory, the empty block directive including the logical identifier, wherein the logical identifier is associated, in the block mapping table, with a physical storage location comprising data deleted by the host processor;
updating, by the solid state storage controller, the block mapping table to indicate that the physical storage location associated with the logical identifier comprises data deleted by the host;
sending, by the host processor, a read command requesting to read data associated with the logical identifier included in the empty block directive; and
returning, from the solid-state storage controller to the host processor, a data string comprising data of a predetermined logic level, based on the updated block mapping table, in response to the read command requesting to read data associated with the logical identifier included in the empty block directive, wherein the data of the predetermined logic level indicates that the data associated with the logical block identifier is deleted.
8 Assignments
0 Petitions
Accused Products
Abstract
An apparatus, system, and method are disclosed for managing a non-volatile storage medium. A storage controller receives a message that identifies data that no longer needs to be retained on the non-volatile storage medium. The data may be identified using a logical identifier. The message may comprise a hint, directive, or other indication that the data has been erased and/or deleted. In response to the message, the storage controller records an indication that the contents of a physical storage location and/or physical address associated with the logical identifier do not need to be preserved on the non-volatile storage medium.
68 Citations
20 Claims
-
1. A method for managing data in a NAND flash storage system, the method comprising:
-
sending, by a host processor, an empty-block directive including a logical identifier comprising data deleted by the host processor; receiving, at a solid-state storage controller maintaining a block mapping table between logical identifiers and physical storage locations of the NAND flash memory, the empty block directive including the logical identifier, wherein the logical identifier is associated, in the block mapping table, with a physical storage location comprising data deleted by the host processor; updating, by the solid state storage controller, the block mapping table to indicate that the physical storage location associated with the logical identifier comprises data deleted by the host; sending, by the host processor, a read command requesting to read data associated with the logical identifier included in the empty block directive; and returning, from the solid-state storage controller to the host processor, a data string comprising data of a predetermined logic level, based on the updated block mapping table, in response to the read command requesting to read data associated with the logical identifier included in the empty block directive, wherein the data of the predetermined logic level indicates that the data associated with the logical block identifier is deleted. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A system, comprising:
-
a host processor configured to; send an empty block directive, wherein the empty block directive includes a logical identifier for data to be deleted; and send a read command requesting to read data associated with a logical identifier; a NAND flash memory; and a solid-state storage controller configured to; maintain a block mapping table between logical identifiers and physical storage locations of the NAND flash memory; receive an empty-block directive from the host processor, the empty block directive including a logical block identifier associated, in the block mapping table, with one or more physical storage locations of the NAND flash memory; update the block mapping table to indicate that the one or more locations comprise data deleted by the host; return, from the solid-state storage controller to the host processor, a data string comprising data of a predetermined logic level, based on the updated block mapping table, in response to a read command requesting to read data associated with the logical block identifier, wherein the data of the predetermined logic level indicates that the data associated with the logical block identifier is deleted. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20)
-
Specification