Systems and methods capable of bypassing non-volatile memory when storing firmware in execution memory
AssigneeMicron Technology, Inc.
InventorsShalu Agrawal, Ashok Kumar Yadav, Shaileshkumar Vasu, Vismay Ajaykumar Desai
Life of this patent
Estimating the term…
Abstract
As described herein, a method performed in response to a client device undergoing an at least partial warm reset or reboot may include receiving a firmware commit request from a client device. The method may also include writing, at a first time, a firmware image associated with the client device into execution memory of volatile memory. The method may also include writing, at a second time, the firmware image associated with the client device into a memory slot of non-volatile memory.
Claims20
An apparatus, comprising:
- a volatile memory device comprising:
- an execution memory configured to store a firmware image at a first time for retrieval at a second time later than the first time;
- and
- a memory slot;
- a non-volatile memory device;
- and
- a memory controller configured to be coupled to an image buffer of a client device and configured to:
- write, at the first time, the firmware image stored within the image buffer to the execution memory;
- write, at a third time, the firmware image into the non-volatile memory device, wherein the third time is not earlier than the first time;
- verify whether the firmware image stored in the execution memory comprises valid data at least in part by performing a cyclic redundancy check (CRC) operation;
- and
- in response to verifying the firmware image comprises the valid data, writing the firmware image to the image buffer of the client device in response to receiving a notification that a warm reset of the client device has completed.
A method, comprising:
- receiving a firmware commit request from a client device;
- writing, at a first time, a firmware image defining an operation of a portion of the client device into execution memory of volatile memory;
- writing, at a second time, the firmware image into a memory slot of non-volatile memory;
- and
- writing the firmware image into the memory slot of the non-volatile memory after a first portion of the firmware image is written into the execution memory.
A system, comprising:
- processing circuitry configured to be coupled to an image buffer of an external device;
- and
- a memory comprising one or more tangible, non-transitory, machine-readable media and configured to store instructions executable by the processing circuitry, wherein upon execution of the instructions, the processing circuitry is configured to:
- receive a firmware commit request from a client device;
- write a firmware image from the client device into a memory slot of volatile memory based at least in part on the firmware commit request;
- write, at a first time, the firmware image into an execution memory separate from a non-volatile memory, wherein the firmware image is transmitted from the memory slot of the volatile memory into the execution memory;
- and
- write, at a second time, the firmware image into the non-volatile memory, wherein the second time is after the first time, wherein the second time is sufficiently after the first time such that all the firmware image is written into the execution memory before the second time.
Dependencies are inferred from the claim text.