Memory management for an intelligent electronic device
First Claim
1. An intelligent electronic device comprising:
- a sensor configured for sensing an electrical parameter distributed to a load;
an analog-to-digital converter coupled to the sensor, the analog-to-digital converter configured for converting an analog signal of the electrical parameter to digital data, wherein the digital data includes at least one log of the sensed electrical parameter;
a flash memory device including a plurality of sectors, wherein the plurality of sectors are erased during manufacture of the intelligent electronic device;
a random access memory (RAM) device; and
a processing unit coupled to the analog-to-digital converter;
wherein, after the plurality of sectors of the flash memory device are erased during manufacture of the intelligent electronic device, the RAM device creates a sector header;
wherein, after creating the sector header and before the sensor is operated, the RAM device writes the sector header into each of the plurality of sectors of the flash memory device;
wherein the processing unit is configured to receive the at least one log and store the at least one log in the flash memory device;
wherein the processing unit is further configured to store the at least one log in at least one of the sectors of the flash memory device to equalize usage of each of the plurality of sectors over time;
wherein the processing unit is further configured to assign a unique sequence number to each of the sector headers associated with the sectors within which the at least one log is stored, the unique sequence numbers being assigned by the processing unit in time sequence such that sorting the unique sequence numbers allows the processing unit to arrange the sectors in correct time sequence; and
wherein the processing unit is further configured to construct a log directory for associating each of the plurality of sectors with each of the at least one log;
wherein the processing unit is further configured to determine an error count for each of the plurality of sectors and select a next sector in which to save data based on the error count.
2 Assignments
0 Petitions
Accused Products
Abstract
A device and method are provided for managing flash memory of an intelligent electronic device (IED) to maximize the IED life. The IED includes at least one sensor for sensing at least one electrical parameter distributed to a load. At least one analog-to-digital converter is coupled to the at least one sensor for converting an analog signal output from the at least one sensor to digital data. A processing unit is coupled to the at least one analog-to-digital converter to receive the digital data and store the digital data in a memory. The memory includes sectors configured to store the digital data. The processing unit stores the digital data in each of the sectors and equalizes usage of each sector over time by equalizing a number of erases for each of the sectors over time.
-
Citations
28 Claims
-
1. An intelligent electronic device comprising:
-
a sensor configured for sensing an electrical parameter distributed to a load; an analog-to-digital converter coupled to the sensor, the analog-to-digital converter configured for converting an analog signal of the electrical parameter to digital data, wherein the digital data includes at least one log of the sensed electrical parameter; a flash memory device including a plurality of sectors, wherein the plurality of sectors are erased during manufacture of the intelligent electronic device; a random access memory (RAM) device; and a processing unit coupled to the analog-to-digital converter; wherein, after the plurality of sectors of the flash memory device are erased during manufacture of the intelligent electronic device, the RAM device creates a sector header; wherein, after creating the sector header and before the sensor is operated, the RAM device writes the sector header into each of the plurality of sectors of the flash memory device; wherein the processing unit is configured to receive the at least one log and store the at least one log in the flash memory device; wherein the processing unit is further configured to store the at least one log in at least one of the sectors of the flash memory device to equalize usage of each of the plurality of sectors over time; wherein the processing unit is further configured to assign a unique sequence number to each of the sector headers associated with the sectors within which the at least one log is stored, the unique sequence numbers being assigned by the processing unit in time sequence such that sorting the unique sequence numbers allows the processing unit to arrange the sectors in correct time sequence; and wherein the processing unit is further configured to construct a log directory for associating each of the plurality of sectors with each of the at least one log; wherein the processing unit is further configured to determine an error count for each of the plurality of sectors and select a next sector in which to save data based on the error count. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A method for managing a flash memory in an intelligent electronic device, the flash memory comprising a plurality of independently-erasable sectors to be used as a set for storing data files, the method comprising the steps of:
-
erasing the plurality of independently-erasable sectors of the flash memory during manufacture of the intelligent electronic device; after erasing the plurality of independently-erasable sectors during the manufacture of the intelligent electronic device, creating a sector header; after creating the sector header, writing the sector header in each of the plurality of independently-erasable sectors of the flash memory device; after writing the sector header in each of the plurality of independently-erasable sectors, sensing a parameter of electrical power distributed to a load; converting the sensed parameter from an analog signal to digital data, the digital data including at least one data file to be stored in the flash memory; determining an erase count of at least one of the plurality of independently-erasable sectors; determining the at least one independently-erasable sector having the lowest erase count; assigning a unique sequence number to each of the sector headers associated with at least one of the plurality of independently-erasable sectors within which the at least one data file is stored, the unique sequence numbers being assigned in time sequence such that sorting the unique sequence numbers allows the independently-erasable sectors to be arranged in correct time sequence; constructing a log directory for associating each of the plurality of independently erasable sectors with each of the at least one data file; determining an error count for each of the plurality of independently-erasable sectors; and selecting a next independently-erasable sector in which to save data, the next independently-erasable sector being selected based on a group of independently-erasable sectors with the lowest error count and the independently-erasable sector of the group with the lowest erase count. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28)
-
Specification