Method, electronic device and computer program product for data processing

US10642494B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10642494-B2
Application numberUS-201615395228-A
CountryUS
Kind codeB2
Filing dateDec 30, 2016
Priority dateDec 31, 2015
Publication dateMay 5, 2020
Grant dateMay 5, 2020

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method, device and computer program product are disclosed. The method includes: receiving a command that reads data; parsing the command to obtain information sets; reading data based on the information sets; and sending the data and the information sets. The device includes: a memory that stores data in physical pages; and a controller that receives a command that reads data, parses the command to obtain information sets, reads data based on the information sets, and sends the data and the information sets. The computer program product includes code to: receive a command that reads data; parse the command to obtain information sets; read data based on the information sets; and send the data and the information sets.

First claim

Opening claim text (preview).

What is claimed is: 1. A method, comprising: receiving from a host, by a processor, a first read command that reads data, the first read command comprising one or more sets of first information and second information; parsing the first read command to obtain the one or more sets of first information and second information; reading data corresponding to one or more Logical Block Addresses (LBAs) from a physical page based on the one or more sets of first information and second information; receiving, from the host, one or more write commands for writing data; storing the one or more write commands as one or more stored write commands; determining whether a quantity of the stored write commands reaches a threshold value while the stored write commands do not include any stored write commands meeting a predetermined condition; and writing data corresponding to a stored write command with a minimum distance onto a same physical page as data corresponding to one or more stored write commands meeting the predetermined condition, wherein: the first read command includes a first format, the first information comprises an identification of a second read command including a second format, and the second read command acknowledges a plurality of first read commands. 2. The method of claim 1 , wherein: the first format includes a Non-Volatile Memory Express (NVMe) read format; the second format includes a Flash read format; and the second information comprises an offset of an LBA. 3. The method of claim 2 , further comprising: receiving one or more additional first read commands including the first read format sent by the host, wherein each first read command comprises a respective second read command including the second read format and acknowledging said two or more first read commands; parsing each of the second read commands to obtain identification and LBA offsets corresponding to each of the second read commands; using the identification corresponding to each second read command as first information; using the LBA offsets corresponding to each second read command as second information; and writing each first and second information into each first read command. 4. The method of claim 1 , further comprising: selecting, from the one or more stored write commands, stored write commands meeting the predetermined condition; and writing the data corresponding to the stored write commands meeting the predetermined condition onto the same physical page as the data corresponding to the stored write command with the minimum distance. 5. The method of claim 4 , wherein selecting, from the one or more stored write commands, stored write commands meeting the predetermined condition comprises: parsing the one or more stored write commands to determine respective LBAs of the stored write commands; selecting one or more LBAs with distances therebetween no greater than a predetermined threshold based on the respective LBAs of the stored write commands; and selecting stored write commands corresponding to the selected one or more LBAs. 6. The method of claim 4 , further comprising: continuously receiving and storing the write commands sent by the host until the quantity of stored write commands reaches the threshold value. 7. The method of claim 6 , further comprising: selecting, from the stored write commands, the stored write command with the minimum distance, wherein the selected stored write command is included among the LBAs after the number of the stored write commands reaches the threshold value. 8. An electronic device, comprising: a memory that stores data in terms of physical pages; and a controller configured to: receive, from a host, a first read command that reads data, the first read command comprising one or more sets of first information and second information; parse the first read command to obtain the one or more sets of first information and second information; read data corresponding to one or more Logical Block Addresses (LBAs) from a physical page based on the one or more sets of first information and second information; send the data corresponding to the one or more LBAs; send the first information and second information; receive, from the host, one or more write commands for writing data; store the one or more write commands as one or more stored write commands; determining whether a quantity of the stored write commands reaches a threshold value while the stored write commands do not include any stored write commands meeting a predetermined condition; and writing data corresponding to a stored write command with a minimum distance onto a same physical page as data corresponding to one or more stored write commands meeting the predetermined condition, wherein: the first read command includes a first format, the first information comprises an identification of a second read command including a second format, and the second read command acknowledges a plurality of first read commands. 9. The electronic device of claim 8 , wherein: the first format includes a Non-Volatile Memory Express (NVMe) read format; the second format includes a Flash read format; and the second information comprises an offset of an LBA. 10. The electronic device of claim 9 , wherein the controller is further configured to: receive one or more additional first read commands including the first read format sent by the host, wherein each first read command comprises a respective second read command including the second read format and acknowledging said two or more first read commands; parse each of the second read commands to obtain identification and LBA offsets corresponding to each of the second read commands; utilize the identification corresponding to each second read command as first information; utilize the LBA offsets corresponding to each second read command as second information; and write the first and second information into the first command. 11. The electronic device of claim 8 , wherein the controller is further configured to: select, from the one or more stored write commands, stored write commands meeting the predetermined condition; and write data corresponding to the stored write commands meeting the predetermined condition onto the same physical page as the data corresponding to the stored write command with the minimum distance. 12. The electronic device of claim 11 , wherein the processor is further configured to: parse the one or more stored write commands to determine respective LBAs of the stored write commands; select one or more LBAs with distances therebetween no greater than a predetermined threshold according to the respective LBAs of the stored write commands; and select stored write commands corresponding to the selected one or more LBAs. 13. The electronic device of claim 11 , wherein the controller is further configured to: continuously receive and store the write commands sent by the host until the quantity of the stored write commands reaches the threshold value. 14. The electronic device of claim 11 , wherein the controller is further configured to: select, from the one or more stored write commands, the stored write command with the minimum distance, wherein the selected stored write command is included among the LBAs after the number of the stored write commands reaches the threshold value. 15. A computer program product comprising a computer readable storage medium that stores code executable by a processor, the executable code comprising code to perform: receiving, from a host, a first read command that reads

Assignees

Inventors

Classifications

  • Decentralised address translation, e.g. in distributed shared memory systems · CPC title

  • using page tables, e.g. page table structures · CPC title

  • Non-volatile semiconductor memory arrays · CPC title

  • G06F3/0608Primary

    Saving storage space on storage systems · CPC title

  • Command handling arrangements, e.g. command buffers, queues, command scheduling · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10642494B2 cover?
A method, device and computer program product are disclosed. The method includes: receiving a command that reads data; parsing the command to obtain information sets; reading data based on the information sets; and sending the data and the information sets. The device includes: a memory that stores data in physical pages; and a controller that receives a command that reads data, parses the comm…
Who is the assignee on this patent?
Lenovo Beijing Ltd
What technology area does this patent fall under?
Primary CPC classification G06F12/1009. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 05 2020 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).