Logical to physical address mapping in storage systems comprising solid state memory devices
First Claim
1. A storage system, comprising:
- a solid state memory device for storing user data and for storing address mapping information for mapping logical address information for identifying user data in a host accessing the storage system to physical address information for identifying user data in the solid state memory device; and
a storage controller for controlling a reading and writing of user data from/to a solid state memory device, the storage controller comprising;
a data cache for buffering user data stored in the solid state memory device, the user data being non-address mapping information and being data requested by the host;
a read cache consisting of a subset of the address mapping information stored in the solid state memory device; and
a write cache consisting of address mapping information for user data to be written to the solid state memory device, wherein neither the read cache nor the write cache store user data.
1 Assignment
0 Petitions
Accused Products
Abstract
The present idea provides a high read and write performance from/to a solid state memory device. The main memory of the controller is not blocked by a complete address mapping table covering the entire memory device. Instead such table is stored in the memory device itself, and only selected portions of address mapping information are buffered in the main memory in a read cache and a write cache. A separation of the read cache from the write cache enables an address mapping entry being evictable from the read cache without the need to update the related flash memory page storing such entry in the flash memory device. By this design, the read cache may advantageously be stored on a DRAM even without power down protection, while the write cache may preferably be implemented in nonvolatile or other fail-safe memory. This leads to a reduction of the overall provisioning of nonvolatile or fail-safe memory and to an improved scalability and performance.
28 Citations
19 Claims
-
1. A storage system, comprising:
-
a solid state memory device for storing user data and for storing address mapping information for mapping logical address information for identifying user data in a host accessing the storage system to physical address information for identifying user data in the solid state memory device; and a storage controller for controlling a reading and writing of user data from/to a solid state memory device, the storage controller comprising; a data cache for buffering user data stored in the solid state memory device, the user data being non-address mapping information and being data requested by the host; a read cache consisting of a subset of the address mapping information stored in the solid state memory device; and a write cache consisting of address mapping information for user data to be written to the solid state memory device, wherein neither the read cache nor the write cache store user data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 18, 19)
-
-
9. A method for reading data from a solid state memory device, in which memory device data and mapping information for mapping physical address information for identifying data in the solid state memory device to logical address information for identifying data in a requesting host are stored, the method comprising:
-
receiving logical address information associated with the data to be read; searching the logical address information in one of a write cache consisting of address mapping information to be written to the solid state memory device and a read cache consisting of a subset of the address mapping information stored in the solid state memory device, wherein neither the read cache nor the write cache store user data; if the logical address information is not found in the cache searched, searching the logical address information in the other cache; if the logical address information is not found in either of the write cache and the read cache, identifying and reading the physical address information associated with the logical address information by means of the mapping information stored in the solid state memory device; and issuing a data read operation for the physical address information identified. - View Dependent Claims (10, 11, 12, 16)
-
-
13. A method for writing data to a solid state memory device, in which memory device data and mapping information for mapping logical address information identifying data in a request to physical address information for identifying data in the solid state memory device are stored, the method comprising:
-
receiving the data and logical address information associated with the data identified by physical address information; searching the logical address information in a write cache consisting of address mapping information to be written to the solid state memory device, wherein neither the read cache nor the write cache store user data; if the logical address information is not found in the write cache, adding an address mapping entry to the write cache comprising a mapping of the logical address; searching the logical address information in a read cache consisting of address mapping information representing a subset of the address mapping information stored in the solid state memory device; and if the logical address information is found in the read cache, updating the corresponding address mapping entry in the read cache with the physical address information newly associated with the data. - View Dependent Claims (14, 15, 17)
-
Specification