Techniques are provided for improved restart of a system. In an example, a system can alternate storing a status register value or state to two or more non-volatile memory locations. Upon a power interruption and restart, the value of the status register can be restored to a state very close to or commensurate with a last occurring state even if a write operation to one of the non-volatile memory locations resulted an inaccurate saving of that state of the status register.
Legal claims defining the scope of protection, as filed with the USPTO.
2. The system of claim 1, further comprising saving a third checksum based on the second value of the status register.
3. The system of claim 2, wherein, in response to a startup of the system, the controller is configured to determine the validity of a value of the second non-volatile memory location by determining a fourth checksum based on the value of the second non-volatile memory location and comparing the third checksum to the fourth checksum.
4. The system of claim 3, wherein, in response to a determination that the value of the first non-volatile memory location and the value of the second non-volatile memory location include valid values of the status register, the controller is configured to determine whether the first non-volatile memory location or the second non-volatile memory location is a most recently saved value of the status register and the operations of resetting the value of the register comprises restoring the status register with a value corresponding to a most recently saved representation.
5. The system of claim 3, wherein, in response to a determination that only one of the first non-volatile memory location or second non-volatile memory location includes a valid value of the status register, the controller is configured to resetting the value of the register by restoring the status register with a value corresponding to an immediately sequential valid value based on the valid value.
6. The system of claim 3, wherein, in response to a determination that neither the first non-volatile memory location nor the second non-volatile memory location includes a valid value of the status register, the controller is configured to resetting the value of the register by restoring the status register with a value corresponding to predetermined default value.
7. The system of claim 1, wherein the status register is an accumulation register of a counter.
8. The system of claim 7, wherein the accumulation register tracks characteristics of the non-volatile memory.
9. The system of claim 7, wherein the accumulation register tracks a wear leveling statistic of nonvolatile memory including the first location and the second location.
10. The system of claim 1, wherein the non-volatile memory includes ferroelectric random access memory (FeRAM).
12. The method of claim 11, wherein the copying the value of the register to the first non-volatile memory location includes storing the first checksum in non-volatile memory.
13. The method of claim 11, wherein the copying the value of the register to the first non-volatile memory location includes storing the first checksum in first non-volatile memory location with the value.
14. The method of claim 11, wherein the value of the first non-volatile memory location is determined valid in response to the second checksum matching the first checksum.
18. The method of claim 11, wherein the register of the system is a fatigue threshold register for a non-volatile memory device including the first non-volatile memory location and the second non-volatile memory location.
19. The method of claim 11, wherein one of the first non-volatile memory location or the second non-volatile memory location is a ferroelectric random access memory (FeRAM) location.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
August 28, 2020
June 6, 2023
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.