CA2629752C - Method and system for updating a stored data value in a non-volatile memory - Google Patents
Method and system for updating a stored data value in a non-volatile memory Download PDFInfo
- Publication number
- CA2629752C CA2629752C CA2629752A CA2629752A CA2629752C CA 2629752 C CA2629752 C CA 2629752C CA 2629752 A CA2629752 A CA 2629752A CA 2629752 A CA2629752 A CA 2629752A CA 2629752 C CA2629752 C CA 2629752C
- Authority
- CA
- Canada
- Prior art keywords
- volatile memory
- value
- differential value
- data value
- stored
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0069—Writing or programming circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C14/00—Digital stores characterised by arrangements of cells having volatile and non-volatile storage properties for back-up when the power is down
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0069—Writing or programming circuits or methods
- G11C2013/0076—Write operation performed depending on read result
Abstract
A method of updating a stored data value in a non-volatile memory is provided. The method comprising: reading the stored data value from the non-volatile memory; reading a stored differential value from a volatile memory; receiving an updated data value; calculating a calculated differential value from the difference between the updated data value and the sum of the stored data value and the stored differential value; comparing the calculated differential value with a threshold differential value; and writing the updated data value to the non-volatile memory if the calculated differential value exceeds the threshold differential value.
Description
METHOD AND SYSTEM FOR UPDATING A STORED DATA VALUE IN A
NON-VOLATILE MEMORY
FIELD OF INVENTION
The invention relates to a method of updating a stored data value in a non-volatile memory. The invention further relates to a system configured to update a stored data value in a non-volatile memory.
BACKGROUND TO INVENTION
Non-volatile memory technology products such as EEPROM and FLASH are relatively cheap and commonly used in embedded systems that require data to be preserved when the power is turned off.
One disadvantage of non-volatile memory is that it is relatively slow to write to. A further disadvantage is that non-volatile memory has a limited life that is defined by the number of times a non-volatile memory location can be written to.
Due to its construction, the solid state gate cells of FLASH MEMORY or EEPROM
can only tolerate a maximum number of write/erase cycles. This is typically 100,000 cycles maximum for 4k bytes of EEPROM. This predictable failure mode is a major lifetime-limiting factor for EEPROM/FLASH MEMORY used in devices that have many write/erase cycles.
Although economical and stable devices, FLASH MEMORY and EEPROM can clearly become a risk factor and be unsuitable in applications where large amounts of data are stored, or where the data is frequently updated.
It is an intended object of at least illustrative embodiments of the present invention to address the foregoing problems or at least to provide the public with a useful choice.
SUMMARY OF THE INVENTION
In broad terms in one form the invention provides a method of updating a stored data value in a non-volatile memory, the method comprising: reading the stored data value from the non-volatile memory; reading a stored differential value from a volatile memory; receiving an updated data value; calculating a calculated differential value from the difference between the updated data 1414552x1 value and the sum of the current data value and the stored differential value;
comparing the calculated differential value with a threshold differential value; and writing the updated data value to the non-volatile memory if the calculated differential value exceeds the threshold differential value.
In broad terms in a second form the invention provides a memory system comprising, a non-volatile memory in which is maintained a plurality of stored data values; a volatile memory in which is maintained a plurality of differential values; an input device configured to receive an updated data value, an I/O device configured to retrieve one of the stored data values from the non-volatile memory and to retrieve one of the differential values from the volatile memory; a calculating component configured to calculate a calculated differential value from the difference between the updated data value and the sum of the retrieved stored data value and the retrieved differential value; and a comparator configured to compare the calculated differential value with a threshold differential value; the I/O device configured to write the updated data value to the non-volatile memory if the calculated differential value exceeds the threshold differential value.
As used herein the term "(s)" following a noun means the plural and/or singular form of that noun.
As used herein the term "and/or" means "and" or "or", or where the context allows both.
To those skilled in the art to which the invention relates, many changes in construction and widely differing embodiments and applications of the invention will suggest themselves without departing from the scope of the invention as defined in the appended claims.
The disclosures and the descriptions herein are purely illustrative and are not intended to be in any sense limiting.
The invention consists in the foregoing and also envisages constructions of which the following gives examples only.
14345R2vl BRIEF DESCRIPTION OF THE FIGURES
Illustrative forms of the method and system for updating the stored data value in a non-volatile memory will now be described with reference to the accompanying figures in which:
Figure 1 shows a block diagram of the system in which one form of the invention may be implemented;
Figure 2 shows an illustrative form process for updating a data value, and Figure 3 shows an illustrative form process for preserving differential values.
DETAILED DESCRIPTION OF ILLUSTRATIVE FORMS
Figure 1 illustrates a block diagram of the preferred form system 100 in which one form of the present invention may be implemented.
System 100 includes a processor 105. The processor 105 is interfaced to volatile memory 110, non-volatile memory 115 and secondary non-volatile memory 120, An I/O
component 125 is configured to read data from and write data to volatile memory 110, non-volatile memory 115 and secondary non-volatile memory 120.
Stored in non-volatile memory 115 are a plurality of data values 130, ,,,. Non-volatile memory 115 is a typical EEPROM or FLASH MEMORY. Data values 130 stored on non-volatile memory 115 are required to be maintained when power to the system 100 is turned off.
The system 105 receives updated data values through input device 135 and optionally outputs data values through output device 140. As new data values are received through input device 135 that correspond to respective data values 130, rather than simply replace the new data value 130 in non-volatile memory, the processor instead calculates a differential value at least partly from the updated data value, and the data value stored in the non-volatile memory 115. The system then stores a plurality of differential values 150,...N in volatile memory 110. Respective differential values 150 each correspond to respective data values 130. The data values and differential values are described in more detail below.
1334582,1 Prior to power interruption to the system 100, differential values 150 stored on volatile memory 110 are written to the secondary non-volatile memory 120 as differential values 1601. N. It is envisaged that non-volatile memory 120 has a secondary power supply 170 to ensure that data in non-volatile memory 120 is not lost.
Software implemented components such as calculating component 180 and comparator 185 function in a manner more particularly described below.
Figure 2 illustrates an illustrative lbnn process 200 for updating a data value. The updated data value is first received 205, for example through input device 135.
The corresponding stored data value is read 210, from non-volatile memory 115 through I/O
device 125. If there is no corresponding stored data value, then the updated data value is simply written to non-volatile memory 115.
If there is a differential value corresponding to the stored data value, then this differential value is read 215 from volatile memory 110. Calculating component 180 adds the retrieved data value to the retrieved differential value in a random access memory or cache. This sum is then subtracted from the updated data value in order to calculate 220 a calculated differential value, Comparator 185 checks whether 225 the calculated differential value is 0, this means that the updated data value is the same as the sum of the stored data value and the stored differential value. If the calculated differential value is 0, then nothing further is needed.
If 230 the comparator 185 determines that the calculated differential value is greater than a predefined threshold differential value, then the updated data value is stored 235 in non-volatile memory 115. The new differential value is set 240 to zero and the updated differential value is stored 245 in volatile memory.
If 230 the calculated differential value is not greater than a threshold value as shown in Figure 2, the updated differential value is stored 245 in volatile memory.
Figure 3 shows an illustrative form process for preserving the differential values 150 stored in volatile memory. It is typical to receive a warning of imminent power interruption to the system.
One such warning is when the system detects a fall in voltage. This leads to an alert providing a 1434582,1 finite amount of time before power is interrupted to the system 100. As soon as the system receives the warning 305, the system completes 310 all write operations in progress. The system reads 315 all differential values from volatile memory and writes 320 the retrieved differential values to secondary non-volatile memory.
The above systems are intended to be particularly suited to maintaining data values that change frequently by single amounts. Typical applications of the above technology include utility meters and moisture measurement.
The techniques described above are intended to go some wayy, toward providing the benefit of extending the life of a FLASH MEMORY/EEPROM, thereby increasing the lifespan of the product in which the non-volatile memory is employed and reducing maintenance servicing requriements and cost. A further intended benefit is that the system is able to provide processing time benefits as non-volatile memory is typically slower to write to than volatile memory. By reducing the number of writes needed to a non-volatile memory, this has potential to speed up applications as well as extend non-volatile memory He.
Whenever a value is updated, the value stored in non-volatile memory is only updated if the difference between the currently stored value and the new value is greater than the maximum value that can be stored in any differential value. This technique is flexible in that differential values or threshold values for differential values can be defined to be any size depending on the resource and strengths of the system, the characteristics of the data that is stored and the time required or available to store differential values in secondary non-volatile memory when a power fail event occurs. The technique can also be extended to cache data values completely in volatile memory if it is available, which has the potential to offer speed improvements.
The foregoing describes the invention including illustrative forms thereof Modifications and improvements as would be obvious to those skilled in the art are intended to be incorporated within the scope hereof, as defined by the accompanying claims.
1434582v1
NON-VOLATILE MEMORY
FIELD OF INVENTION
The invention relates to a method of updating a stored data value in a non-volatile memory. The invention further relates to a system configured to update a stored data value in a non-volatile memory.
BACKGROUND TO INVENTION
Non-volatile memory technology products such as EEPROM and FLASH are relatively cheap and commonly used in embedded systems that require data to be preserved when the power is turned off.
One disadvantage of non-volatile memory is that it is relatively slow to write to. A further disadvantage is that non-volatile memory has a limited life that is defined by the number of times a non-volatile memory location can be written to.
Due to its construction, the solid state gate cells of FLASH MEMORY or EEPROM
can only tolerate a maximum number of write/erase cycles. This is typically 100,000 cycles maximum for 4k bytes of EEPROM. This predictable failure mode is a major lifetime-limiting factor for EEPROM/FLASH MEMORY used in devices that have many write/erase cycles.
Although economical and stable devices, FLASH MEMORY and EEPROM can clearly become a risk factor and be unsuitable in applications where large amounts of data are stored, or where the data is frequently updated.
It is an intended object of at least illustrative embodiments of the present invention to address the foregoing problems or at least to provide the public with a useful choice.
SUMMARY OF THE INVENTION
In broad terms in one form the invention provides a method of updating a stored data value in a non-volatile memory, the method comprising: reading the stored data value from the non-volatile memory; reading a stored differential value from a volatile memory; receiving an updated data value; calculating a calculated differential value from the difference between the updated data 1414552x1 value and the sum of the current data value and the stored differential value;
comparing the calculated differential value with a threshold differential value; and writing the updated data value to the non-volatile memory if the calculated differential value exceeds the threshold differential value.
In broad terms in a second form the invention provides a memory system comprising, a non-volatile memory in which is maintained a plurality of stored data values; a volatile memory in which is maintained a plurality of differential values; an input device configured to receive an updated data value, an I/O device configured to retrieve one of the stored data values from the non-volatile memory and to retrieve one of the differential values from the volatile memory; a calculating component configured to calculate a calculated differential value from the difference between the updated data value and the sum of the retrieved stored data value and the retrieved differential value; and a comparator configured to compare the calculated differential value with a threshold differential value; the I/O device configured to write the updated data value to the non-volatile memory if the calculated differential value exceeds the threshold differential value.
As used herein the term "(s)" following a noun means the plural and/or singular form of that noun.
As used herein the term "and/or" means "and" or "or", or where the context allows both.
To those skilled in the art to which the invention relates, many changes in construction and widely differing embodiments and applications of the invention will suggest themselves without departing from the scope of the invention as defined in the appended claims.
The disclosures and the descriptions herein are purely illustrative and are not intended to be in any sense limiting.
The invention consists in the foregoing and also envisages constructions of which the following gives examples only.
14345R2vl BRIEF DESCRIPTION OF THE FIGURES
Illustrative forms of the method and system for updating the stored data value in a non-volatile memory will now be described with reference to the accompanying figures in which:
Figure 1 shows a block diagram of the system in which one form of the invention may be implemented;
Figure 2 shows an illustrative form process for updating a data value, and Figure 3 shows an illustrative form process for preserving differential values.
DETAILED DESCRIPTION OF ILLUSTRATIVE FORMS
Figure 1 illustrates a block diagram of the preferred form system 100 in which one form of the present invention may be implemented.
System 100 includes a processor 105. The processor 105 is interfaced to volatile memory 110, non-volatile memory 115 and secondary non-volatile memory 120, An I/O
component 125 is configured to read data from and write data to volatile memory 110, non-volatile memory 115 and secondary non-volatile memory 120.
Stored in non-volatile memory 115 are a plurality of data values 130, ,,,. Non-volatile memory 115 is a typical EEPROM or FLASH MEMORY. Data values 130 stored on non-volatile memory 115 are required to be maintained when power to the system 100 is turned off.
The system 105 receives updated data values through input device 135 and optionally outputs data values through output device 140. As new data values are received through input device 135 that correspond to respective data values 130, rather than simply replace the new data value 130 in non-volatile memory, the processor instead calculates a differential value at least partly from the updated data value, and the data value stored in the non-volatile memory 115. The system then stores a plurality of differential values 150,...N in volatile memory 110. Respective differential values 150 each correspond to respective data values 130. The data values and differential values are described in more detail below.
1334582,1 Prior to power interruption to the system 100, differential values 150 stored on volatile memory 110 are written to the secondary non-volatile memory 120 as differential values 1601. N. It is envisaged that non-volatile memory 120 has a secondary power supply 170 to ensure that data in non-volatile memory 120 is not lost.
Software implemented components such as calculating component 180 and comparator 185 function in a manner more particularly described below.
Figure 2 illustrates an illustrative lbnn process 200 for updating a data value. The updated data value is first received 205, for example through input device 135.
The corresponding stored data value is read 210, from non-volatile memory 115 through I/O
device 125. If there is no corresponding stored data value, then the updated data value is simply written to non-volatile memory 115.
If there is a differential value corresponding to the stored data value, then this differential value is read 215 from volatile memory 110. Calculating component 180 adds the retrieved data value to the retrieved differential value in a random access memory or cache. This sum is then subtracted from the updated data value in order to calculate 220 a calculated differential value, Comparator 185 checks whether 225 the calculated differential value is 0, this means that the updated data value is the same as the sum of the stored data value and the stored differential value. If the calculated differential value is 0, then nothing further is needed.
If 230 the comparator 185 determines that the calculated differential value is greater than a predefined threshold differential value, then the updated data value is stored 235 in non-volatile memory 115. The new differential value is set 240 to zero and the updated differential value is stored 245 in volatile memory.
If 230 the calculated differential value is not greater than a threshold value as shown in Figure 2, the updated differential value is stored 245 in volatile memory.
Figure 3 shows an illustrative form process for preserving the differential values 150 stored in volatile memory. It is typical to receive a warning of imminent power interruption to the system.
One such warning is when the system detects a fall in voltage. This leads to an alert providing a 1434582,1 finite amount of time before power is interrupted to the system 100. As soon as the system receives the warning 305, the system completes 310 all write operations in progress. The system reads 315 all differential values from volatile memory and writes 320 the retrieved differential values to secondary non-volatile memory.
The above systems are intended to be particularly suited to maintaining data values that change frequently by single amounts. Typical applications of the above technology include utility meters and moisture measurement.
The techniques described above are intended to go some wayy, toward providing the benefit of extending the life of a FLASH MEMORY/EEPROM, thereby increasing the lifespan of the product in which the non-volatile memory is employed and reducing maintenance servicing requriements and cost. A further intended benefit is that the system is able to provide processing time benefits as non-volatile memory is typically slower to write to than volatile memory. By reducing the number of writes needed to a non-volatile memory, this has potential to speed up applications as well as extend non-volatile memory He.
Whenever a value is updated, the value stored in non-volatile memory is only updated if the difference between the currently stored value and the new value is greater than the maximum value that can be stored in any differential value. This technique is flexible in that differential values or threshold values for differential values can be defined to be any size depending on the resource and strengths of the system, the characteristics of the data that is stored and the time required or available to store differential values in secondary non-volatile memory when a power fail event occurs. The technique can also be extended to cache data values completely in volatile memory if it is available, which has the potential to offer speed improvements.
The foregoing describes the invention including illustrative forms thereof Modifications and improvements as would be obvious to those skilled in the art are intended to be incorporated within the scope hereof, as defined by the accompanying claims.
1434582v1
Claims (6)
1. A method of updating a stored data value in a non-volatile memory, the method comprising:
reading the stored data value from the non-volatile memory;
reading a stored differential value from a volatile memory;
receiving an updated data value;
calculating a calculated differential value from the difference between the updated data value and the sum of the stored data value and the stored differential value;
comparing the calculated differential value with a threshold differential value; and writing the updated data value to the non-volatile memory if the calculated differential value exceeds the threshold differential value.
reading the stored data value from the non-volatile memory;
reading a stored differential value from a volatile memory;
receiving an updated data value;
calculating a calculated differential value from the difference between the updated data value and the sum of the stored data value and the stored differential value;
comparing the calculated differential value with a threshold differential value; and writing the updated data value to the non-volatile memory if the calculated differential value exceeds the threshold differential value.
2. The method of claim 1 further comprising writing the calculated differential value to volatile memory if the calculated differential value is less than the threshold differential value.
3. The method of claim 2 further comprising:
reading one or more previously calculated differential values from the volatile memory prior to power interruption to the volatile memory; and writing the previously calculated differential values to the non-volatile memory.
reading one or more previously calculated differential values from the volatile memory prior to power interruption to the volatile memory; and writing the previously calculated differential values to the non-volatile memory.
4. The method of claim 2 further comprising:
reading one or more previously calculated differential values from the volatile memory prior to power interruption to the volatile memory; and writing the previously calculated differential values to a further non-volatile memory.
reading one or more previously calculated differential values from the volatile memory prior to power interruption to the volatile memory; and writing the previously calculated differential values to a further non-volatile memory.
5. The method of any one of claims 1 to 4 further comprising writing a value of zero for the stored differential value on the volatile memory if the calculated differential value exceeds the threshold differential value.
6. A memory system comprising:
a non-volatile memory in which is maintained a plurality of stored data values;
a volatile memory in which is maintained a plurality of differential values;
an input device configured to receive an updated data value;
an I/O device configured to retrieve one of the stored data values from the non-volatile memory and to retrieve one of the differential values from the volatile memory;
a calculating component configured to calculate a calculated differential value from the difference between the updated data value and the sum of the retrieved stored data value and the retrieved differential value; and a comparator configured to compare the calculated differential value with a threshold differential value;
the I/O device configured to write the updated data value to the non-volatile memory if the calculated differential value exceeds the threshold differential value.
a non-volatile memory in which is maintained a plurality of stored data values;
a volatile memory in which is maintained a plurality of differential values;
an input device configured to receive an updated data value;
an I/O device configured to retrieve one of the stored data values from the non-volatile memory and to retrieve one of the differential values from the volatile memory;
a calculating component configured to calculate a calculated differential value from the difference between the updated data value and the sum of the retrieved stored data value and the retrieved differential value; and a comparator configured to compare the calculated differential value with a threshold differential value;
the I/O device configured to write the updated data value to the non-volatile memory if the calculated differential value exceeds the threshold differential value.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NZ562200A NZ562200A (en) | 2007-10-04 | 2007-10-04 | Method and system for updating a stored data value in a non-volatile memory |
NZ562200 | 2007-10-04 |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2629752A1 CA2629752A1 (en) | 2009-04-04 |
CA2629752C true CA2629752C (en) | 2013-04-16 |
Family
ID=40158349
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA2629752A Expired - Fee Related CA2629752C (en) | 2007-10-04 | 2008-04-24 | Method and system for updating a stored data value in a non-volatile memory |
Country Status (5)
Country | Link |
---|---|
US (1) | US7813176B2 (en) |
AU (1) | AU2008307828A1 (en) |
CA (1) | CA2629752C (en) |
NZ (1) | NZ562200A (en) |
WO (1) | WO2009045113A1 (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102473878B (en) * | 2009-09-28 | 2014-10-15 | 株式会社日立制作所 | Battery system |
JP5661313B2 (en) * | 2010-03-30 | 2015-01-28 | キヤノン株式会社 | Storage device |
JP5139465B2 (en) * | 2010-03-31 | 2013-02-06 | 株式会社東芝 | Memory chip, information storage system, readout device |
CN103730155B (en) * | 2012-10-10 | 2018-05-29 | 华为技术有限公司 | Method for writing data and device |
US20160350734A1 (en) * | 2014-06-01 | 2016-12-01 | Gideon Samid | Versatile, Real Time, Two-Ways Payment for Power and Utilities |
DE112018004191B4 (en) * | 2017-08-17 | 2021-02-18 | Syntiant | DIGITAL ASSISTED FLASH REFRESHMENT |
WO2020113432A1 (en) * | 2018-12-04 | 2020-06-11 | 比特大陆科技有限公司 | Method and device for transmitting list information |
Family Cites Families (65)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB8828553D0 (en) * | 1988-12-07 | 1989-01-11 | Mutch A J | Electrical fault detecting device |
US5161182A (en) * | 1989-04-04 | 1992-11-03 | Sparton Corporation | Remote meter reading method and apparatus |
US5010568A (en) * | 1989-04-04 | 1991-04-23 | Sparton Corporation | Remote meter reading method and apparatus |
US5056107A (en) * | 1990-02-15 | 1991-10-08 | Iris Systems Inc. | Radio communication network for remote data generating stations |
US5179376A (en) * | 1991-02-28 | 1993-01-12 | Systems Analysis And Integration, Inc. | Substation load distribution monitor system |
US5239575A (en) * | 1991-07-09 | 1993-08-24 | Schlumberger Industries, Inc. | Telephone dial-inbound data acquisition system with demand reading capability |
US5293115A (en) * | 1991-08-06 | 1994-03-08 | Schlumberger Industries, Inc. | Method and system for sensing removal of a utility meter from its socket |
US5473322A (en) * | 1992-07-24 | 1995-12-05 | Schlumberger Industries, Inc. | Apparatus and method for sensing tampering with a utility meter |
US5469365A (en) * | 1993-01-25 | 1995-11-21 | Customs Ideas | Power monitor unit |
US5488565A (en) * | 1993-05-28 | 1996-01-30 | Abb Power T&D Company Inc. | Tamper detection methods and apparatus for load management terminals |
US5617084A (en) * | 1993-09-10 | 1997-04-01 | Sears; Lawrence M. | Apparatus for communicating utility usage-related information from a utility usage location to a utility usage registering device |
CA2134510C (en) * | 1993-11-26 | 2003-01-28 | Mark J. Plis | Method and apparatus for executing a command in a plurality of electrical metering devices |
US5467287A (en) * | 1994-02-09 | 1995-11-14 | Johnson Service Company | Enthalpy calculator |
US5493287A (en) * | 1994-03-07 | 1996-02-20 | Motorola, Inc. | Method of remotely reading a group of meters |
US5664202A (en) * | 1995-04-20 | 1997-09-02 | C & C Tech Ets | Intelligent power consumption monitoring and control system |
US6401081B1 (en) * | 1995-11-20 | 2002-06-04 | Schlumberger Resource Management Services, Inc. | Modular object-based architecture for extensible master station software |
US6900737B1 (en) * | 1997-02-12 | 2005-05-31 | Elster Electricity, Llc | Remote access to electronic meters using the short message service |
US5897607A (en) * | 1997-02-28 | 1999-04-27 | Jenney Systems Associates, Ltd. | Automatic meter reading system |
US5898387A (en) * | 1997-03-26 | 1999-04-27 | Scientific-Atlanta, Inc. | Modular meter based utility gateway enclosure |
US6118269A (en) * | 1997-03-26 | 2000-09-12 | Comverge Technologies, Inc. | Electric meter tamper detection circuit for sensing electric meter removal |
US5852658A (en) * | 1997-06-12 | 1998-12-22 | Knight; Nelson E. | Remote meter reading system |
US6538577B1 (en) * | 1997-09-05 | 2003-03-25 | Silver Springs Networks, Inc. | Electronic electric meter for networked meter reading |
US5940009A (en) * | 1997-09-08 | 1999-08-17 | Abb Power T&D Company Inc. | Apparatus and method to detect tampering with an electronic utility meter |
US6088659A (en) * | 1997-09-11 | 2000-07-11 | Abb Power T&D Company Inc. | Automated meter reading system |
US6243693B1 (en) * | 1998-02-10 | 2001-06-05 | Merlin Gerin S.A. (Proprietary) Limited | Token-operated apparatus for communal prepayment water management |
US6218953B1 (en) * | 1998-10-14 | 2001-04-17 | Statsignal Systems, Inc. | System and method for monitoring the light level around an ATM |
US6437692B1 (en) * | 1998-06-22 | 2002-08-20 | Statsignal Systems, Inc. | System and method for monitoring and controlling remote devices |
US6028522A (en) * | 1998-10-14 | 2000-02-22 | Statsignal Systems, Inc. | System for monitoring the light level around an ATM |
US6232886B1 (en) * | 1998-12-23 | 2001-05-15 | Schlumberger Resource Management Services, Inc. | Method and apparatus for indicating meter tampering |
US6351223B1 (en) * | 1999-02-01 | 2002-02-26 | Midway Services, Inc. | System and method for reading and transmitting water meter data utilizing RF signals |
FI119216B (en) * | 1999-04-07 | 2008-08-29 | Nokia Corp | Noise Filtering Unit |
US7231482B2 (en) * | 2000-06-09 | 2007-06-12 | Universal Smart Technologies, Llc. | Method and system for monitoring and transmitting utility status via universal communications interface |
US7185131B2 (en) * | 1999-06-10 | 2007-02-27 | Amron Technologies, Inc. | Host-client utility meter systems and methods for communicating with the same |
US6954814B1 (en) * | 1999-06-10 | 2005-10-11 | Amron Technologies Inc. | Method and system for monitoring and transmitting utility status via universal communications interface |
US6980973B1 (en) * | 1999-09-07 | 2005-12-27 | Visa International Service Association | Self-paying smart utility meter and payment service |
JP2001092713A (en) | 1999-09-21 | 2001-04-06 | Hitachi Kokusai Electric Inc | Device and method for writing data |
US6380852B1 (en) * | 1999-11-02 | 2002-04-30 | Quietech Llc | Power shut-off that operates in response to prespecified remote-conditions |
US8725657B2 (en) * | 2000-05-22 | 2014-05-13 | Secure Electrans Limited | Utility metering system incorporating a transaction authorisation system |
US6842706B1 (en) * | 2001-01-17 | 2005-01-11 | Smart Disaster Response Technologies, Inc. | Methods, apparatus, media, and signals for managing utility usage |
US7091878B2 (en) * | 2001-02-28 | 2006-08-15 | Landis+Gyr, Inc. | Electrical service disconnect having tamper detection |
KR100452508B1 (en) * | 2001-09-25 | 2004-10-12 | 엘지전자 주식회사 | remote detecting equipment using CO-LINE and controlling method therefore |
US20030063723A1 (en) * | 2001-09-28 | 2003-04-03 | Derek Booth | Interactive system for managing and remotely connecting customer utility loads |
US6801865B2 (en) * | 2002-03-21 | 2004-10-05 | Engage Networks, Inc. | Meter monitoring and tamper protection system and method |
US7256709B2 (en) * | 2002-04-01 | 2007-08-14 | Electro Industries/Gauge Tech | Meter with IrDA port |
US6819098B2 (en) * | 2002-10-01 | 2004-11-16 | Poweronedata, Inc. | Utility power meter database |
US7020566B2 (en) * | 2002-10-01 | 2006-03-28 | Poweronedata Corporation | Utility power meter |
US6944063B2 (en) * | 2003-01-28 | 2005-09-13 | Sandisk Corporation | Non-volatile semiconductor memory with large erase blocks storing cycle counts |
US7304587B2 (en) * | 2003-02-14 | 2007-12-04 | Energy Technology Group, Inc. | Automated meter reading system, communication and control network for automated meter reading, meter data collector program product, and associated methods |
US7146285B2 (en) * | 2003-05-19 | 2006-12-05 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Integrated circuit with parameter measurement |
US7336200B2 (en) * | 2003-09-05 | 2008-02-26 | Itron, Inc. | Data communication protocol in an automatic meter reading system |
US20060055513A1 (en) * | 2003-12-22 | 2006-03-16 | James French | Control system |
CA2453791A1 (en) * | 2003-12-22 | 2005-06-22 | Blp Components Limited | Control system |
US7088239B2 (en) * | 2004-03-02 | 2006-08-08 | Vann Basinger | Method and apparatus for all-purpose, automatic remote utility meter reading, utility shut off, and hazard warning and correction |
US7262709B2 (en) * | 2004-04-26 | 2007-08-28 | Elster Electricity, Llc | System and method for efficient configuration in a fixed network automated meter reading system |
AU2005256154B2 (en) * | 2004-06-24 | 2010-08-26 | X2M Connect Limited | A meter device |
US7379791B2 (en) * | 2004-08-03 | 2008-05-27 | Uscl Corporation | Integrated metrology systems and information and control apparatus for interaction with integrated metrology systems |
US7236897B2 (en) * | 2004-08-10 | 2007-06-26 | Analog Devices, Inc. | Group metering system for power meters |
US7228726B2 (en) * | 2004-09-23 | 2007-06-12 | Lawrence Kates | System and method for utility metering and leak detection |
US7362236B2 (en) * | 2004-12-06 | 2008-04-22 | Itron, Inc. | Mobile utility data collection system with voice technology, such as for data collection relating to an electric, gas, or water utility |
US7327998B2 (en) * | 2004-12-22 | 2008-02-05 | Elster Electricity, Llc | System and method of providing a geographic view of nodes in a wireless network |
US7184904B2 (en) * | 2005-01-20 | 2007-02-27 | Electro Industries/Gaugetech | System and method for providing universal additional functionality for power meters |
US20070103335A1 (en) * | 2005-10-20 | 2007-05-10 | Fitzgerald Aaron J | Automatic detection of unusual consumption by a utility meter |
US8970393B2 (en) * | 2006-03-31 | 2015-03-03 | Itron, Inc. | Data analysis system, such as a theft scenario analysis system for automated utility metering |
US7904619B2 (en) * | 2006-11-24 | 2011-03-08 | Sandforce, Inc. | System, method, and computer program product for reducing memory write operations using difference information |
US7649782B2 (en) * | 2007-07-31 | 2010-01-19 | Freescale Semiconductor, Inc. | Non-volatile memory having a dynamically adjustable soft program verify voltage level and method therefor |
-
2007
- 2007-10-04 NZ NZ562200A patent/NZ562200A/en not_active IP Right Cessation
-
2008
- 2008-04-24 CA CA2629752A patent/CA2629752C/en not_active Expired - Fee Related
- 2008-06-03 US US12/132,510 patent/US7813176B2/en not_active Expired - Fee Related
- 2008-09-29 AU AU2008307828A patent/AU2008307828A1/en not_active Abandoned
- 2008-09-29 WO PCT/NZ2008/000256 patent/WO2009045113A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
CA2629752A1 (en) | 2009-04-04 |
NZ562200A (en) | 2008-11-28 |
US20090091977A1 (en) | 2009-04-09 |
AU2008307828A1 (en) | 2009-04-09 |
WO2009045113A1 (en) | 2009-04-09 |
US7813176B2 (en) | 2010-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2629752C (en) | Method and system for updating a stored data value in a non-volatile memory | |
CN107850925B (en) | Thermal monitoring of memory resources | |
US7747813B2 (en) | Multi-memory device system and method for managing a lifetime thereof | |
US9170742B2 (en) | Techniques for reducing memory write operations using coalescing memory buffers and difference information | |
TWI605382B (en) | Techniques to manage multiple sequential write streams to a solid state drive | |
US7904764B2 (en) | Memory lifetime gauging system, method and computer program product | |
EP2386921B1 (en) | Method to separate and persist static and dynamic portions of a control application | |
US20080126719A1 (en) | System, method, and computer program product for delaying an operation that reduces a lifetime of memory | |
US7315951B2 (en) | High speed non-volatile electronic memory configuration | |
US8850102B2 (en) | Flash memory with small data programming capability | |
JP2008071440A (en) | Ferroelectric memory device and its control method | |
WO2008063647A2 (en) | Delaying an operation that reduces a lifetime of memory | |
CN111684422A (en) | CPU cache flush to persistent memory | |
US20080126685A1 (en) | System, method, and computer program product for reducing memory write operations using an instruction set | |
EP2063361A3 (en) | Storage apparatus, control method therefor, and storage system | |
US8412972B2 (en) | Method and apparatus for reducing power consumption for memories | |
US20130179715A1 (en) | Systems and methods for reducing energy consumption in sensor networks | |
US9513693B2 (en) | L2 cache retention mode | |
US9218294B1 (en) | Multi-level logical block address (LBA) mapping table for solid state | |
US8887005B2 (en) | Caching system with removable memory card | |
US10289578B2 (en) | Per-DRAM and per-buffer addressability shadow registers and write-back functionality | |
US10452312B2 (en) | Apparatus, system, and method to determine a demarcation voltage to use to read a non-volatile memory | |
US11302407B2 (en) | Memory proximity disturb management | |
US10847235B2 (en) | Remapping operations | |
US10068639B2 (en) | Out-of-place presetting based on indirection table |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
MKLA | Lapsed |
Effective date: 20150424 |
|
MKLA | Lapsed |
Effective date: 20150424 |