Firmware updating method
AssigneeSilicon Motion, Inc.
InventorChien-Ting Lin
Life of this patent
Estimating the term…
Abstract
A firmware updating method is provided. The firmware updating method is adapted to a data storage device, and it can generate a new parameter table according to a conversion formula segment in an update image file required for updating the data storage device. Therefore, even if in a condition where there is a parameter change between a code segment of an old version firmware and a code segment of a new version firmware, the updated or upgraded data storage device can still operate normally.
Claims9
A firmware updating method, adapted to a data storage device, the data storage device comprising a non-volatile memory and a controller, the non-volatile memory comprising a plurality of blocks, and both a first block and a second block in the blocks storing a code segment of an old version firmware, the firmware updating method comprising following steps of:
- receiving an update image file required for updating the data storage device by the controller, and writing the update image file to a third block in the blocks, wherein the update image file comprises the code segment of a new version firmware and a conversion formula segment related to the code segment of the old version firmware;
- obtaining the conversion formula segment from the update image file by the controller, and generating a second parameter table according to the conversion formula segment and a first parameter table, wherein the first parameter table stores the parameters required for the operation of the code segment of the old version firmware, and the second parameter table stores the parameters required for the operation of the code segment of the new version firmware;
- obtaining the code segment of the new version firmware from the update image file by the controller, and copying the code segment of the new version firmware to a fourth block in the blocks;
- and
- copying the fourth block to a first spare block to replace the second block by the controller, copying the fourth block to a second spare block to replace the first block by the controller, and erasing the first block and the second block by the controller.
Dependencies are inferred from the claim text.