Server system and update method thereof
US-2015149989-A1 · May 28, 2015 · US
US9817652B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9817652-B2 |
| Application number | US-201514865415-A |
| Country | US |
| Kind code | B2 |
| Filing date | Sep 25, 2015 |
| Priority date | Oct 30, 2014 |
| Publication date | Nov 14, 2017 |
| Grant date | Nov 14, 2017 |
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 data storage device for reducing a firmware update time includes a non-volatile memory configured to store a firmware update image which will replace a current firmware image, a first volatile memory, and a processor configured to control an operation of the non-volatile memory and an operation of the first volatile memory. When a first code included in the current firmware image is executed by the processor, the first code generates data necessary for an operation of the data storage device and stores the data in the first volatile memory. When a second code included in the firmware update image is executed by the first code, the second code accesses and uses the data that has been stored in the first volatile memory.
Opening claim text (preview).
What is claimed is: 1. A data storage device comprising: a non-volatile memory configured to store a firmware update image which will replace a current firmware image; a first volatile memory; and a processor configured to control an operation of the non-volatile memory and an operation of the first volatile memory, wherein: when a first code included in the current firmware image is executed by the processor, the first code generates data for an operation of the data storage device and then directly stores the data generated by the first code in the first volatile memory; when a second code included in the firmware update image is executed by the first code, the second code accesses the data that has been stored in the first volatile memory and controls the operation of the data storage device using the data; and the data comprises mapping data for mapping a logical address to a physical address or data about an error occurring during an access operation on the non-volatile memory. 2. The data storage device of claim 1 , wherein the first code transmits the data stored in the first volatile memory to the non-volatile memory. 3. The data storage device of claim 1 , wherein the first code does not transmit the data stored in the first volatile memory to the non-volatile memory. 4. The data storage device of claim 1 , wherein the first code stores the firmware update image in the non-volatile memory to update the current firmware image with the firmware update image. 5. The data storage device of claim 1 , wherein: the first code stores the firmware update image in a second volatile memory; and when the second code stored in the second volatile memory is executed by the first code, the second code stores the firmware update image, which has been stored in the second volatile memory, in the non-volatile memory to update the current firmware image with the firmware update image. 6. The data storage device of claim 1 , wherein: when the firmware update image is received, the first code generates context information and stores the context information in the first volatile memory and the second code accesses the data stored in the first volatile memory using the context information stored in the first volatile memory and uses the data, and the context information comprises a first meta version of the current firmware image; and a physical address of a memory region storing the data in the first volatile memory is included in one among the context information, the second code, and second data accessed by the second code. 7. The data storage device of claim 6 , wherein: the second code compares the first meta version of the current firmware image with a second meta version of the firmware update image; and when the first meta version agrees with the second meta version, the second code accesses the data stored in the memory region using the physical address and uses the data. 8. The data storage device of claim 1 , wherein: when the firmware update image is received, the first code generates context information and stores the context information in the non-volatile memory and the second code loads the context information from the non-volatile memory to the first volatile memory, accesses the data using the context information, and uses the data, the context information comprises a first meta version of the current firmware image; and a physical address of a memory region storing the data in the first volatile memory is included in one among the context information, the second code, and second data accessed by the second code. 9. The data storage device of claim 1 , wherein the first volatile memory is random access memory (RAM) and the non-volatile memory is flash-based memory. 10. A method of updating firmware in a data storage device, the method comprising: generating data for an operation of the data storage device and then directly storing the generated data in a first volatile memory, using a first code included in a current firmware image being executed in the data storage device; receiving a firmware update image; updating the current firmware image with the firmware update image; accessing the data stored in the first volatile memory using a second code included in the firmware update image when the second code is executed by the first code; and controlling the operation of the data storage device using the second code and the data accessed by the second code, wherein the data maps a logical memory address to a physical memory address or is information of an error occurring in a non-volatile memory access. 11. The method of claim 10 , wherein the updating comprises storing the firmware update image, which has been received, in a non-volatile memory using the first code to enable the current firmware image to be updated with the firmware update image. 12. The method of claim 10 , wherein the updating comprises: storing the firmware update image in a second volatile memory using the first code; and storing the firmware update image, which has been stored in the second volatile memory, in a non-volatile memory using the second code executed by the first code. 13. A method, executed by a processor, of updating firmware in a data storage device, the method comprising: generating, by execution of a first program instruction of a current firmware image, data for operation of the data storage device and then directly storing the data generated in a volatile memory; updating the current firmware image with an update firmware image; accessing, by execution of a second program instruction of the update firmware image, the data stored in the volatile memory; and controlling, by the execution of second program instruction of the update firmware image, the operation of the data storage device using the data accessed, wherein: the execution of the second program instruction is performed by the execution of the first program instruction, and the data maps a logical memory address to a physical memory address or is information of an error occurring in a non-volatile memory access by the processor. 14. The method of claim 13 , further comprising: generating, by execution of the first program instruction, a first meta version of the current firmware image, and determining whether the second program instruction may access the data based upon an outcome of comparing the first meta version and a second meta version of the update firmware image. 15. The method of claim 14 , wherein the processor acquires the first meta version from the volatile memory by execution of the second program instruction. 16. The method of claim 14 , wherein the second program instruction causes the processor to acquire the first meta version from a nonvolatile memory. 17. The method of claim 13 , further comprising accessing the data while updating the current firmware image with the update firmware image.
Related publications grouped by family.
Answers are generated from the same data shown on this page.