CN114253871A - 一种智能电表数据的存储管理方法、系统、装置 - Google Patents
一种智能电表数据的存储管理方法、系统、装置 Download PDFInfo
- Publication number
- CN114253871A CN114253871A CN202111565441.2A CN202111565441A CN114253871A CN 114253871 A CN114253871 A CN 114253871A CN 202111565441 A CN202111565441 A CN 202111565441A CN 114253871 A CN114253871 A CN 114253871A
- Authority
- CN
- China
- Prior art keywords
- data
- storage
- management
- code
- storage unit
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7211—Wear leveling
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
本发明属于电力设备领域,具体涉及一种智能电表数据的存储管理方法、系统、装置。该方法包括如下步骤:S1:将智能电表的EEPROM划分为若干个存储单元;并为每个存储单元分配一个管理编码。S2:获取智能电表的数据写入指令,确定数据写入指令中要求写入的数据的数据类型。S3:筛选器获取各个存储单元的管理编码的信息,然后筛选出目标存储单元。S4:将数据写入指令中包含的数据写入到上步骤确定的目标存储单元内。S5:在每次写入数据时,将写入数据的目标存储单元对应的管理编码中的擦写次数加1,然后更新可用标。本发明解决了现有智能电表的数据存储管理方法不科学,导致EEPROM中部分存储区域读写频次过高,智能电表提前报废的问题。
Description
技术领域
本发明属于电力设备领域,具体涉及一种智能电表数据的存储管理方法、系统、装置。
背景技术
智能电表是客户用电的计量终端,是智能电网数据采集环节不可或缺的重要组成部分。现有的智能电表内部存储硬件通常采用RAM(Random Access Memory,随机存取存储器)和EEPROM(Electrically Erasable Programmable Read Only Memory,带电可擦可编程只读存储器)结合的方式。存储单元中,前者是断电后数据会丢失的高速存储器,后者是断电后依然可正常存储数据的非易失性存储器。前者的可读写次数较大,后者的可读写次数相对较少。
智能电表使用过程中,通过检测到的脉冲触发个数对目标用户的用电量进行统计。再将计量得到的电量值存储到智能电表的EEPROM中,从而保存用户的用电量数据。在电能表实际运行过程中,EEPROM存储的数据类型多样,包括用电量信息和费用信息等,仅用户的电量数据就包括总电量、峰电量和谷电量等。
传统的数据存储方法并不会针对不同的数据类型对数据在RRPROM中的存储位置进行优化。虽然EEPROM的理论可擦写次数可以达到10万次,但是当EEPROM上的某些局域的读写频次高于其它区域后,容易导致EEPROM中部分区域提前达到理论上的读写次数极限。当智能电表中的某些存储区域达到擦写上限而损坏后,便可能影响电智能电表的正常运行,从而影响智能电表的使用寿命。
发明内容
为了解决现有智能电表的数据存储过程未进行科学管理,导致EEPROM中部分存储区域容易因为读写频次过高而损害,导致智能电表提前报废的问题,本发明提供了一种智能电表数据的存储管理方法、系统、装置。
本发明采用以下技术方案实现:
一种智能电表数据的存储管理方法,该方法包括如下步骤:
S1:将智能电表的EEPROM划分为若干个存储单元;并为每个存储单元分配一个管理编码。管理编码内包含的信息包括区域编号、分区编号、擦写次数和可用标记。其中,区域编号表征EEPROM的不同存储区域,各个存储区域均对应特定的数据类型。分区编号为每个存储区域内EEPROM的物理分区,根据区域编号和分区编号定位到EEPROM中各个存储单元的位置。擦写次数表征对应存储单元的数据擦写次数;可用标记表征对应存储单元是否可以继续进行执行数据写入,可以标记分为可用或不可用。
S2:获取智能电表的数据写入指令,确定数据写入指令中要求写入的数据的数据类型。
S3:在智能电表的RAM中运行一个筛选器的程序,筛选器用于获取各个存储单元的管理编码的信息,然后选择与写入的数据的数据类型相对应的存储区域,并从中筛选出擦写次数最少且可用的存储单元作为目标存储单元。
S4:将数据写入指令中包含的数据写入到上步骤确定的目标存储单元内。
S5:在智能电表的RAM中运行一个编码管理器的程序,编码管理器用于在每次写入数据时,将写入数据的目标存储单元对应的管理编码中的擦写次数加1,然后判断擦写次数是否达到上限值,是则将管理编码中的可用标记置为不可用。
作为本发明进一步地改进,步骤S3中筛选器的筛选过程如下:
S31:获取与当前写入的数据类型相匹配的存储区域中的所有存储单元的管理编码。
S32:获取各个管理编码中可用标记的值,保留可用标记的值为可用状态的所有管理编码。
S33:根据擦写次数的值对上步骤所有管理编码进行排序,保留擦写次数较小的所有管理编码。
S34:根据分区编号对上步骤的所有管理编码进行排序,得到一个存储优先级队列,并以存储优先级队列中的首个管理编码对应的存储单元作为需要写入的数据的目标存储单元。
本发明中进行存储单元筛选的原则在于:首先选择与本次写入的数据类型相对于的存储区域内的存储单元,然后选择其中属于可用状态的所有存储单元,再从可用的存储单元中选择历史擦写次数最好的存储单元,最后将剩余的存储单元按照分顺序进行依次选用。
事实上,按照相同的筛选方法,不仅可以确定每次数据存储过程中的目标存储单元,还可以建立每种不同类型数据的一个目标存储单元队列,目标存储队列中的各个存储单元按照优先级排序。然后在后续存储过程中依次采用队列中的每个存储单元进行数据存储。通过这种方法,可以降低筛选器的工作负荷,进而降低智能电表设备的运行功耗和使用寿命。
本发明中,初始状态下,各个存储单元的管理编码中的擦写次数均为0,可用标记为可用,擦写次数的上限值是一个预设值;上限值小于EEPROM理论上的最大擦写次数。
本发明中预设的擦写次数的上限值并不是EEPROM的设备擦写上限,而是本发明为了方便管理的一个预设值。当所有存储单元的擦写次数均达到该预设值时,可以对所有存储单元的管理编码进行重新的初始化,防止管理编码过于臃肿,筛选器或编码管理器需要处理的数据量太大而发生错误。
作为本发明进一步地改进,当某个区域编号内对应的所有物理分区中的存储单元的可用标记均为不可用时;编码管理器将该区域编码对应内所有物理分区中的存储单元对应的管理编码中的擦写次数全部重新归零,同时将管理编码中的可用标记全部重新置为可用。
作为本发明进一步地改进,EEPROM中,不同存储区域的容量大小,根据该存储区域对应的不同数据类型在同一个周期内的写入频率和数据量的大小确定;某类型数据在相同周期内的写入频率越高,单次写入的数据量越大,则对应的存储区域的容量越大。
作为本发明进一步地改进,智能电表中还包括固件存储区域,筛选器和编码管理器的程序代码存储在固件存储区域内。电能表第一次运行时,将固件存储区域内的程序代码写入到RAM中执行。
作为本发明进一步地改进,智能电表中还包括编码存储单元,编码存储单元用于存储EEPROM中所有存储单元更新后的管理编码。筛选器在数据写入前获取编码存储单元内的数据进行筛选。编码管理器在数据写入后对编码存储单元内的管理编码进行更新。
本发明还包括一种智能电表数据的存储管理系统,该存储管理系统采如前述的智能电表数据的存储管理方法将智能电表运行过程中产生的数据写入到EEPROM中。该存储管理系统包括:编码存储模块,指令获取模块,筛选模块,数据读写模块,以及编码管理模块。
编码存储模块内存储有EEPROM中所有存储单元对应的管理编码。每个存储单元的管理代码内包含的信息包括区域编号、分区编号、擦写次数和可用标记。区域编号表征EEPROM的不同存储区域,各个存储区域均对应特定的数据类型。分区编号为每个存储区域内EEPROM的物理分区,根据区域编号和分区编号定位到EEPROM中各个存储单元的位置。擦写次数表征对应存储单元的数据擦写次数。可用标记表征对应存储单元是否可以继续进行执行数据写入,可用标记的状态分为可用或不可用。
指令获取模块用于获取电能表运行过程中生成的数据存储指令,并解析出指令中包含的需要进行存储的数据及其对应的数据类型。
筛选模块用于根据需要存储的数据类型获取编码存储模块中对应存储区域内所有存储单元的管理编码。然后从中选出擦写次数最少且可用的管理编码,并将该管理编码对应的存储单元作为数据存储指令中包含的数据的目标存储单元。
数据读写模块用于数据存储指令中包含的待存储的数据,存储到筛选模块筛选出的目标存储单元中。
编码管理模块,其用于在数据读写模块每次完成数据写入之后,从编码存储模块中找到对应的存储单元的管理编码,并将管理编码中的擦写次数加1;同时判断擦写次数是否达到预设的上限值,是则将管理编码中的可用标记置为不可用。
作为本发明进一步地改进,编码管理模块还包括编码重置子模块,编码重置子模块用于在某个存储区域内的所有存储单元对应的可用标记均被置为不可用时,将该区域内所有存储单元对应的管理编码中的擦写次数均重置为0,同时将可用标记重置为可用状态。
本发明还包括一种智能电表数据的存储管理装置,该存储管理装置包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现如前述智能电表数据的存储管理方法的步骤。
本发明提供的技术方案,具有如下有益效果:
本发明提供的智能电能表数据的存储管理方法和系统,能够根据智能电表运行过程产生的数据类型对不同数据的存储区域进行管理,并采用均匀存储的方法将数据存到不同的存储单元中,进而保证EEPROM中不同存储区域的擦写次数保持一致。通过这种数据存储管理方式可以有效提高智能电报中的EEPROM的使用寿命,从而提高智能电表的运行稳定性和使用使用年限。
附图说明
图1为本发明实施例1中一种智能电表数据的存储管理方法的步骤流程图。
图2为本发明实施例1中筛选器的筛选过程的步骤流程图。
图3为本发明实施例1中RAM和EEPROM中存储区域分布示意图。
图4为本发明实施例2中提供的一种智能电表数据的存储管理系统的模块示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步地详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
实施例1
本实施例提供的存储管理方法主要通过如下两个方面对数据存储过程进行优化:首先是对智能电表全运行周期内需要进行读写的数据进分类,按照数据读写频率和数据量大小将数据分为高密度数据和低密度数据。高密度数据就是读写频率高,数据量大的数据类型,低密度数据就是读写频率较低,数据量较小的数据类型。并为不同读写频率的数据分配不同的存储区域。其次就是对每个存储区域内的数据存储策略进行优化。将存储区域进一步细分为存储单元,在产生数据写入需求时,按照平均读写的原则将数据写入到不同的存储单元内。保证每个存储单元的擦写频次大致保持一致。
具体地,如图1所示,本实施例提供的一种智能电表数据的存储管理方法包括如下步骤:
S1:将智能电表的EEPROM划分为若干个存储单元;并为每个存储单元分配一个管理编码。管理编码内包含的信息包括区域编号、分区编号、擦写次数和可用标记。其中,区域编号表征EEPROM的不同存储区域,各个存储区域均对应特定的数据类型。分区编号为每个存储区域内EEPROM的物理分区,根据区域编号和分区编号定位到EEPROM中各个存储单元的位置。擦写次数表征对应存储单元的数据擦写次数;可用标记表征对应存储单元是否可以继续进行执行数据写入,可以标记分为可用或不可用。
其中,管理编码的形式如表1所示:
表1:管理编码的数据形式
Lx | Nx | M | T/F |
上表中,Lx为管理编码的区域编号,用于区分EEPROM中存储不同类型数据的存储区域。
Nx为分区编号,用于区分每个存储区域内EEPROM的物理分区,通过该标记可以具体定位到EEPROM中特定的存储单元。
M为每个存储单元对应的数据擦写次数。
T/F为每个存储单元的可用标记;T表示该存储单元尚未达到最大擦写次数,可以进行数据擦写;F表示该存储单元已经达到最大擦写次数,不可以进行数据擦写。
初始状态下,各个存储单元的管理编码中的擦写次数均为0,可用标记为T,擦写次数的上限值Mn是一个预设值;上限值小于EEPROM理论上的最大擦写次数。
S2:获取智能电表的数据写入指令,确定数据写入指令中要求写入的数据的数据类型。
本实施例在方法在智能电表运行前就对不同类型的数据在EEPROM中对应的存储区域进行设定。其中,不同存储区域的容量大小,根据该存储区域对应的不同数据类型在同一个周期内的写入频率和数据量的大小确定;某类型数据在相同周期内的写入频率越高,单次写入的数据量越大,则对应的存储区域的容量越大。这样可以保证在智能电表的整个运行周期内,各个存储区域内的存储单元的擦写次数大致保持均匀。
S3:在智能电表的RAM中运行一个筛选器的程序,筛选器用于获取各个存储单元的管理编码的信息,然后选择与写入的数据的数据类型相对应的存储区域,并从中筛选出擦写次数最少且可用的存储单元作为目标存储单元。
如图2所示,步骤S3中筛选器的筛选过程如下:
S31:获取与当前写入的数据类型相匹配的存储区域中的所有存储单元的管理编码。
S32:获取各个管理编码中可用标记的值,保留可用标记的值为可用状态的所有管理编码。
S33:根据擦写次数的值对上步骤所有管理编码进行排序,保留擦写次数较小的所有管理编码。
S34:根据分区编号对上步骤的所有管理编码进行排序,得到一个存储优先级队列,并以存储优先级队列中的首个管理编码对应的存储单元作为需要写入的数据的目标存储单元。
本实施例中进行存储单元筛选的原则在于:首先选择与本次写入的数据类型相对应的存储区域内的存储单元,然后选择其中属于可用状态的所有存储单元,再从可用的存储单元中选择历史擦写次数最好的存储单元,最后将剩余的存储单元按照分顺序进行依次选用。
事实上,按照相同的筛选方法,不仅可以确定每次数据存储过程中的目标存储单元,还可以建立每种不同类型数据的一个目标存储单元队列,目标存储队列中的各个存储单元按照优先级排序。然后在后续存储过程中依次采用队列中的每个存储单元进行数据存储。通过这种方法,可以降低筛选器的工作负荷,进而降低智能电表设备的运行功耗和使用寿命。
S4:将数据写入指令中包含的数据写入到上步骤确定的目标存储单元内。
S5:在智能电表的RAM中运行一个编码管理器的程序,编码管理器用于在每次写入数据时,将写入数据的目标存储单元对应的管理编码中的擦写次数加1,然后判断擦写次数是否达到上限值,是则将管理编码中的可用标记置为不可用。
例如当设定的每个存储单元的擦写次数上限为100次时,对于区域编号为3,分区编号为105的存储单元,其擦写第99次时的管理编码如下表2:
表2:某个存储单元更新前的管理编码
L3 | N105 | 99 | T |
当该存储单元继续完成一次数据存储之后,编码管理器会对其管理编码进行更新,更新后的管理编码如表3所示:
表2:某个存储单元更新后的管理编码
L3 | N105 | 100(Mn) | F |
通过管理编码的更新,该存储单元此时的可用标记已经变更为不可用,即在下一个数据等待写入时,筛选器不会将该存储单元作为目标存储单元。
本实施例中预设的擦写次数的上限值并不是EEPROM的设备擦写上限,而是本实施例为了方便管理的一个预设值。当所有存储单元的擦写次数均达到该预设值时,可以对所有存储单元的管理编码进行重新的初始化,防止管理编码过于臃肿,筛选器或编码管理器需要处理的数据量太大而发生错误。
当某个区域编号内对应的所有物理分区中的存储单元的可用标记均为不可用时;编码管理器将该区域编码对应内所有物理分区中的存储单元对应的管理编码中的擦写次数全部重新归零,同时将管理编码中的可用标记全部重新置为可用。
此外,如图3所示,本实施例中的智能电表中还包括固件存储区域,筛选器和编码管理器的程序代码存储在固件存储区域内。电能表第一次运行时,将固件存储区域内的程序代码写入到RAM中执行。
智能电表中还包括编码存储单元,编码存储单元用于存储EEPROM中所有存储单元更新后的管理编码。筛选器在数据写入前获取编码存储单元内的数据进行筛选。编码管理器在数据写入后对编码存储单元内的管理编码进行更新。
实施例2
本实施例提供一种智能电表数据的存储管理系统,该存储管理系统采如实施例1中的智能电表数据的存储管理方法将智能电表运行过程中产生的数据写入到EEPROM中。如图4所示,该存储管理系统包括:编码存储模块,指令获取模块,筛选模块,数据读写模块,以及编码管理模块。
编码存储模块内存储有EEPROM中所有存储单元对应的管理编码。每个存储单元的管理代码内包含的信息包括区域编号、分区编号、擦写次数和可用标记。区域编号表征EEPROM的不同存储区域,各个存储区域均对应特定的数据类型。分区编号为每个存储区域内EEPROM的物理分区,根据区域编号和分区编号定位到EEPROM中各个存储单元的位置。擦写次数表征对应存储单元的数据擦写次数。可用标记表征对应存储单元是否可以继续进行执行数据写入,可用标记的状态分为可用或不可用。
指令获取模块用于获取电能表运行过程中生成的数据存储指令,并解析出指令中包含的需要进行存储的数据及其对应的数据类型。
筛选模块用于根据需要存储的数据类型获取编码存储模块中对应存储区域内所有存储单元的管理编码。然后从中选出擦写次数最少且可用的管理编码,并将该管理编码对应的存储单元作为数据存储指令中包含的数据的目标存储单元。
数据读写模块用于数据存储指令中包含的待存储的数据,存储到筛选模块筛选出的目标存储单元中。
编码管理模块,其用于在数据读写模块每次完成数据写入之后,从编码存储模块中找到对应的存储单元的管理编码,并将管理编码中的擦写次数加1;同时判断擦写次数是否达到预设的上限值,是则将管理编码中的可用标记置为不可用。
作为本发明进一步地改进,编码管理模块还包括编码重置子模块,编码重置子模块用于在某个存储区域内的所有存储单元对应的可用标记均被置为不可用时,将该区域内所有存储单元对应的管理编码中的擦写次数均重置为0,同时将可用标记重置为可用状态。
实施例3
本发明还包括一种智能电表数据的存储管理装置,该存储管理装置包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现如前述智能电表数据的存储管理方法的步骤。
该计算机设备可以是可以执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。本实施例的计算机设备至少包括但不限于:可通过系统总线相互通信连接的存储器、处理器。
本实施例中,存储器(即可读存储介质)包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器可以是计算机设备的内部存储单元,例如该计算机设备的硬盘或内存。在另一些实施例中,存储器也可以是计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)等。当然,存储器还可以既包括计算机设备的内部存储单元也包括其外部存储设备。本实施例中,存储器通常用于存储安装于计算机设备的操作系统和各类应用软件等。此外,存储器还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器通常用于控制计算机设备的总体操作。本实施例中,处理器用于运行存储器中存储的程序代码或者处理数据,以实现如实施例1中的智能电表数据的存储管理方法的处理过程,从而使得智能电表中的EEPROM各区域的擦写次数保持一致,提高智能电表的使用寿命。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种智能电表数据的存储管理方法,其特征在于,包括如下步骤:
S1:将智能电表的EEPROM划分为若干个存储单元;并为每个存储单元分配一个管理编码;所述管理编码内包含的信息包括区域编号、分区编号、擦写次数和可用标记;
所述区域编号表征EEPROM的不同存储区域,各个存储区域均对应特定的数据类型;所述分区编号为每个存储区域内EEPROM的物理分区,根据所述区域编号和分区编号定位到EEPROM中各个存储单元的位置;所述擦写次数表征对应存储单元的数据擦写次数;所述可用标记表征对应存储单元是否可以继续进行执行数据写入,可以标记的状态分为可用或不可用;
S2:获取智能电表的数据写入指令,确定所述数据写入指令中要求写入的数据的数据类型;
S3:在智能电表的RAM中运行一个筛选器的程序,所述筛选器用于获取各个存储单元的管理编码的信息,然后选择与写入的数据的数据类型相对应的存储区域,并从中筛选出擦写次数最少且可用的存储单元作为目标存储单元;
S4:将所述数据写入指令中包含的数据写入到上步骤确定的目标存储单元内;
S5:在智能电表的RAM中运行一个编码管理器的程序,所述编码管理器用于在每次写入数据时,将写入数据的目标存储单元对应的管理编码中的擦写次数加1,然后判断擦写次数是否达到上限值,是则将所述管理编码中的可用标记置为不可用。
2.如权利要求1所述的智能电表数据的存储管理方法,其特征在于:步骤S3中筛选器的筛选过程如下:
S31:获取与当前写入的数据类型相匹配的存储区域中的所有存储单元的管理编码;
S32:获取各个管理编码中可用标记的值,保留可用标记的值为可用状态的所有管理编码;
S33:根据擦写次数的值对上步骤所有管理编码进行排序,保留擦写次数较小的所有管理编码;
S34:根据分区编号对上步骤的所有管理编码进行排序,得到一个存储优先级队列,并以所述存储优先级队列中的首个管理编码对应的存储单元作为需要写入的数据的目标存储单元。
3.如权利要求2所述的智能电表数据的存储管理方法,其特征在于:初始状态下,各个存储单元的管理编码中的擦写次数均为0,可用标记为可用,擦写次数的上限值是一个预设值,所述上限值小于EEPROM理论上的最大擦写次数。
4.如权利要求1所述的智能电表数据的存储管理方法,其特征在于:当某个区域编号内对应的所有物理分区中的存储单元的可用标记均为不可用时;所述编码管理器将该区域编码对应内所有物理分区中的存储单元对应的管理编码中的擦写次数全部重新归零,同时将管理编码中的可用标记全部重新置为可用。
5.如权利要求1所述的智能电表数据的存储管理方法,其特征在于:EEPROM中,不同存储区域的容量大小,根据该存储区域对应的不同数据类型在同一个周期内的写入频率和数据量的大小确定;某类型数据在相同周期内的写入频率越高,单次写入的数据量越大,则对应的存储区域的容量越大。
6.如权利要求1所述的智能电表数据的存储管理方法,其特征在于:所述智能电表中还包括固件存储区域,所述筛选器和所述编码管理器的程序代码存储在所述固件存储区域内;电能表第一次运行时,将固件存储区域内的程序代码写入到RAM中执行。
7.如权利要求1所述的智能电表数据的存储管理方法,其特征在于:所述智能电表中还包括编码存储单元,所述编码存储单元用于存储EEPROM中所有存储单元更新后的管理编码;所述筛选器在数据写入前获取所述编码存储单元内的数据进行筛选;所述编码管理器在数据写入后对所述编码存储单元内的管理编码进行更新。
8.一种智能电表数据的存储管理系统,其特征在于:所述存储管理系统采如权利要求1-7任意一项所述的智能电表数据的存储管理方法,将智能电表运行过程中产生的数据写入到EEPROM中;所述存储管理系统包括:
编码存储模块,其内存储有EEPROM中所有存储单元对应的管理编码,每个存储单元的管理代码内包含的信息包括区域编号、分区编号、擦写次数和可用标记;所述区域编号表征EEPROM的不同存储区域,各个存储区域均对应特定的数据类型;所述分区编号为每个存储区域内EEPROM的物理分区,根据所述区域编号和分区编号定位到EEPROM中各个存储单元的位置;所述擦写次数表征对应存储单元的数据擦写次数;所述可用标记表征对应存储单元是否可以继续进行执行数据写入,可用标记的状态分为可用或不可用;
指令获取模块,其用于获取电能表运行过程中生成的数据存储指令,并解析出指令中包含的需要进行存储的数据及其对应的数据类型;
筛选模块,其用于根据需要存储的数据类型获取编码存储模块中对应存储区域内所有存储单元的管理编码;然后从中选出擦写次数最少且可用的管理编码,并将该管理编码对应的存储单元作为所述数据存储指令中包含的数据的目标存储单元;
数据读写模块,其用于数据存储指令中包含的待存储的数据,存储到所述筛选模块筛选出的目标存储单元中;以及
编码管理模块,其用于在所述数据读写模块每次完成数据写入之后,从编码存储模块中找到对应的存储单元的管理编码,并将管理编码中的擦写次数加1;同时判断擦写次数是否达到预设的上限值,是则将所述管理编码中的可用标记置为不可用。
9.如权利要求8所述的智能电表数据的存储管理系统,其特征在于:所述编码管理模块还包括编码重置子模块,所述编码重置子模块用于在某个存储区域内的所有存储单元对应的可用标记均被置为不可用时,将该区域内所有存储单元对应的管理编码中的擦写次数均重置为0,同时将可用标记重置为可用状态。
10.一种智能电表数据的存储管理装置,其特征在于:其包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于:所述处理器执行所述程序时实现如权利要求1至7中任意一项所述的智能电表数据的存储管理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111565441.2A CN114253871A (zh) | 2021-12-20 | 2021-12-20 | 一种智能电表数据的存储管理方法、系统、装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111565441.2A CN114253871A (zh) | 2021-12-20 | 2021-12-20 | 一种智能电表数据的存储管理方法、系统、装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114253871A true CN114253871A (zh) | 2022-03-29 |
Family
ID=80796180
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111565441.2A Pending CN114253871A (zh) | 2021-12-20 | 2021-12-20 | 一种智能电表数据的存储管理方法、系统、装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114253871A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115470216A (zh) * | 2022-11-01 | 2022-12-13 | 安徽南瑞中天电力电子有限公司 | 一种基于ftl的智能物联表的存储管理方法及存储介质 |
CN117668934A (zh) * | 2023-11-15 | 2024-03-08 | 江苏星期七数字科技有限公司 | 一种基于大数据的区块链数据存储方法和装置 |
CN118466863A (zh) * | 2024-07-12 | 2024-08-09 | 之江实验室 | 一种数据存储方法、装置、存储介质及电子设备 |
-
2021
- 2021-12-20 CN CN202111565441.2A patent/CN114253871A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115470216A (zh) * | 2022-11-01 | 2022-12-13 | 安徽南瑞中天电力电子有限公司 | 一种基于ftl的智能物联表的存储管理方法及存储介质 |
CN117668934A (zh) * | 2023-11-15 | 2024-03-08 | 江苏星期七数字科技有限公司 | 一种基于大数据的区块链数据存储方法和装置 |
CN118466863A (zh) * | 2024-07-12 | 2024-08-09 | 之江实验室 | 一种数据存储方法、装置、存储介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114253871A (zh) | 一种智能电表数据的存储管理方法、系统、装置 | |
CN102999436B (zh) | 在Nand闪存中生成动态分区信息的方法和装置 | |
CN103425663B (zh) | 嵌入式系统数据库创建表、存记录、删记录的方法和装置 | |
CN110673789B (zh) | 固态硬盘的元数据存储管理方法、装置、设备及存储介质 | |
EP2026355A2 (en) | System and method for implementing a memory defect map | |
CN103310842A (zh) | 烧录系统及烧录方法 | |
CN107463506B (zh) | 一种电能表的数据存储管理方法 | |
CN112965919B (zh) | 一种电能表数据分钟冻结方法、存储介质及设备 | |
CN111540400A (zh) | 一种写放大系数测试方法、装置及电子设备和存储介质 | |
CN106547472B (zh) | 存储阵列管理方法及装置 | |
CN103842974A (zh) | 管理非易失性存储器的耐久性的方法 | |
CN107608630A (zh) | 数据读写方法及装置 | |
CN108829355B (zh) | 一种垃圾回收方法及装置 | |
CN111651126B (zh) | 存储器的写操作方法、系统、电子设备和介质 | |
CN114283868A (zh) | 闪存芯片的可靠性测试方法、装置、电子设备及存储介质 | |
CN105718328B (zh) | 存储器坏区的数据备份方法及系统 | |
CN110990207B (zh) | 基于Whitley平台的BPS内存测试方法、系统、终端及存储介质 | |
CN107678977A (zh) | 一种计数器的读写方法及装置 | |
CN111131393B (zh) | 用户活跃度数据统计方法、电子装置及存储介质 | |
CN116244119A (zh) | 内存容量识别方法、装置、智能设备和存储介质 | |
CN115309344B (zh) | nor flash的全片擦除方法、装置、设备及介质 | |
CN109582230A (zh) | 一种基于矩阵式索引的数据存取方法及存取系统 | |
CN118034610B (zh) | 应用于存储器的密钥数据处理方法、存储器、装置及设备 | |
CN115309345B (zh) | nor flash的擦除方法、装置、设备及介质 | |
CN115312103B (zh) | 闪存芯片的擦除电压配置方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |