Method and system for integrity protection for accelerator device firmware using virtualization-based security
US-2024354415-A1 · Oct 24, 2024 · US
US10642494B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10642494-B2 |
| Application number | US-201615395228-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 30, 2016 |
| Priority date | Dec 31, 2015 |
| Publication date | May 5, 2020 |
| Grant date | May 5, 2020 |
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.
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.
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
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
Saving storage space on storage systems · CPC title
Command handling arrangements, e.g. command buffers, queues, command scheduling · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.