Systems and methods for an enhanced controller architecture in data storage systems
US-9021168-B1 · Apr 28, 2015 · US
US2016378352A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2016378352-A1 |
| Application number | US-201514751450-A |
| Country | US |
| Kind code | A1 |
| Filing date | Jun 26, 2015 |
| Priority date | Jun 26, 2015 |
| Publication date | Dec 29, 2016 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Methods and apparatus related to efficient Solid State Drive (SSD) data compression scheme and layout are described. In one embodiment, logic, coupled to non-volatile memory, receives data (e.g., from a host) and compresses the data to generate compressed data prior to storage of the compressed data in the non-volatile memory. The compressed data includes a compressed version of the data, size of the compressed data, common meta information, and final meta information. Other embodiments are also disclosed and claimed.
Opening claim text (preview).
1 . An apparatus comprising: logic, coupled to non-volatile memory, to receive data and compress the data to generate compressed data prior to storage of the compressed data in the non-volatile memory, wherein the compressed data is to comprise a compressed version of the data, size of the compressed data, common meta information, and final meta information. 2 . The apparatus of claim 1 , wherein the common meta information is to comprise one or more of: one or more padding bits, size of the compressed data, an offset, and a compression token. 3 . The apparatus of claim 2 , wherein the compression token is to comprise one or more bits. 4 . The apparatus of claim 2 , wherein the compression token is to be stored in a same space as Logical Block Addressing (LBA) information. 5 . The apparatus of claim 2 , wherein the compression token is to indicate whether a corresponding portion of data is compressed. 6 . The apparatus of claim 2 , wherein absence of the compression token is to indicate that the corresponding portion of the data is uncompressed. 7 . The apparatus of claim 2 , wherein decompression of the compressed data is to be performed at least partially based on a value of the compression token or absence of the compression token. 8 . The apparatus of claim 1 , wherein decompression of the compressed data is to be performed by a plurality of decompression logic. 9 . The apparatus of claim 1 , wherein the final meta information is to comprise one or more of: a compressed Cyclical Redundancy Code (CRC) and LBA information. 10 . The apparatus of claim 1 , wherein the logic is to access the common information data or the final meta information to perform context replay or context rebuilding. 11 . The apparatus of claim 1 , wherein the compressed data and the received data are to have layouts in accordance with uniform formats. 12 . The apparatus of claim 1 , wherein the logic is to compress the received data in accordance with one or more lossless compression algorithms. 13 . The apparatus of claim 1 , wherein the compressed data is to be encrypted after compression or decrypted before decompression. 14 . The apparatus of claim 13 , wherein the compressed data is to be encrypted or decrypted in accordance with Advanced Encryption Standard. 15 . The apparatus of claim 1 , wherein the one or more padding bits are to pad the compressed data to a nearest indirection granularity boundary. 16 . The apparatus of claim 1 , wherein a memory controller is to comprise the logic. 17 . The apparatus of claim 1 , wherein a solid state drive is to comprise the logic. 18 . The apparatus of claim 1 , wherein the non-volatile memory is to comprise one or more of: nanowire memory, Ferro-electric Transistor Random Access Memory (FeTRAM), Magnetoresistive Random Access Memory (MRAM), flash memory, Spin Torque Transfer Random Access Memory (STTRAM), Resistive Random Access Memory, byte addressable 3-Dimensional Cross Point Memory, PCM (Phase Change Memory), and volatile memory backed by a power reserve to retain data during power failure or power disruption. 19 . The apparatus of claim 1 , further comprising a network interface to communicate the data with a host. 20 . A method comprising: receiving data and compressing the data to generate compressed data prior to storage of the compressed data in non-volatile memory, wherein the compressed data comprises a compressed version of the data, size of the compressed data, common meta information, and final meta information. 21 . The method of claim 20 , wherein the common meta information comprises one or more of: one or more padding bits, size of the compressed data, an offset, and a compression token, and the final meta information comprises one or more of: a compressed Cyclical Redundancy Code (CRC) and LBA information. 22 . The method of claim 20 , further comprising decompressing the compressed data by a plurality of decompression logic. 23 . The method of claim 20 , further comprising access the common information data or the final meta information to perform context replay or context rebuilding. 24 . A computer-readable medium comprising one or more instructions that when executed on one or more processors configure the one or more processors to perform one or more operations to: receive data and compressing the data to generate compressed data prior to storage of the compressed data in non-volatile memory, wherein the compressed data comprises a compressed version of the data, size of the compressed data, common meta information, and final meta information. 25 . The computer-readable medium of claim 24 , further comprising one or more instructions that when executed on the processor configure the processor to perform one or more operations to cause decompressing of the compressed data by a plurality of decompression logic. 26 . The computer-readable medium of claim 24 , further comprising one or more instructions that when executed on the processor configure the processor to perform one or more operations to cause access to the common information data or the final meta information to perform context replay or context rebuilding.
Saving storage space on storage systems · CPC title
Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP] · CPC title
Format or protocol conversion arrangements · CPC title
in relation to data integrity, e.g. data losses, bit errors · CPC title
Power saving in storage systems · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.