Robust power-on meter and method using a limited-write memory
AssigneeMicrel, Inc.
InventorPeter Chambers
Life of this patent
Estimating the term…
Abstract
A data word is used to represent the total amount of time duration or predefined events a device has experienced during its lifetime. The data word is incremented count by count while the device is powered on and each updated data word is backed up to a non-volatile memory. A two-version redundancy scheme is employed to ensure failsafe backup and restoration of the data word. At any time at least one valid version of the data word exists in the non-volatile memory. In another aspect, a partitioned memory configuration is implemented to backup the data word and its associated error correction code to the non-volatile memory. In this way the non-volatile memory is able to store a range of counts whose maximum number far exceeds the memory's endurance limit.
Claims13
A power-on meter for a device, comprising:
- a data word having multiple bits in order of significance representing a count of events;
- a non-volatile memory for storing said data word and an associated error correction code (“ECC”), said non-volatile memory having a predetermined maximum permissible number of writes to each of its addressable locations;
- said data word being partitioned into at least a first subword having a group of less significant bits and a second subword having a remaining group of more significant bits, wherein said first and second subwords have permutations not exceeding the predetermined maximum permissible number of writes of said non-volatile memory and each subword is independently writable to and readable from said non-volatile memory;
- a count updating agent responsive to whenever said device is powered on for reading said data word from said non-volatile memory;
- said count updating agent incrementing said read data word by one count at predetermined events while said device is powered on;
- and
- whenever said read data word is incremented with a change in its first subword but not in its second subword, said count updating agent updating the first subword and the associated ECC in the non-volatile memory at their existing location;
- and
- whenever said data word is incremented with a change in both its first and second subwords, said count updating agent updating the second subword in the non-volatile memory at its existing location and also storing the changed first subword and the associated ECC in a location different from their existing ones in the non-volatile memory, the different location having an address dependent on the second subword.
A method of counting power-on duration of a device, comprising:
- providing a data word a data word having multiple bits in order of significance representing a count of events;
- computing an error correction code (“ECC”) associated with said data word, said ECC serving to validate said data word;
- providing a non-volatile memory for storing said data word;
- partitioning said data word into a first subword having a group of more significant bits and a second subword having a remaining group of less significant bits, wherein each subword is independently writable to said non-volatile memory and represents a number of permutations not exceeding a predetermined maximum permissible number of writes to said non-volatile memory;
- reading said data word from said non-volatile memory whenever said device is just powered on;
- incrementing said data word by one time unit at predetermined times while said device is powered on;
- and
- when the incremented data word does not result in a change in any of its more significant bits, only updating the second subword in its existing location in the non-volatile memory;
- and
- when the incremented data word results in a change in any of its more significant bits, updating the first subword in its existing location in the non-volatile memory and also updating the second subword in a different location from its existing location in the non-volatile memory, the different location having an address dependent on the first subword.
Dependencies are inferred from the claim text.