CN112988081B - 一种电量数据存储、抄读方法 - Google Patents
一种电量数据存储、抄读方法 Download PDFInfo
- Publication number
- CN112988081B CN112988081B CN202110531528.1A CN202110531528A CN112988081B CN 112988081 B CN112988081 B CN 112988081B CN 202110531528 A CN202110531528 A CN 202110531528A CN 112988081 B CN112988081 B CN 112988081B
- Authority
- CN
- China
- Prior art keywords
- electric quantity
- quantity data
- storage
- storage area
- correct
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 76
- 238000013500 data storage Methods 0.000 title claims description 18
- 230000005611 electricity Effects 0.000 claims description 7
- 238000012795 verification Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
Images
Classifications
-
- 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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- 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/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- 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
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- 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/068—Hybrid storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/06—Energy or water supply
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)
- Business, Economics & Management (AREA)
- Economics (AREA)
- Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Computer Security & Cryptography (AREA)
- Public Health (AREA)
- Water Supply & Treatment (AREA)
- General Health & Medical Sciences (AREA)
- Quality & Reliability (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开了一种电量数据存储、抄读方法,存储方法包括:开辟三个存储模块;第一存储模块每隔第一预设时间对电量数据进行初步存储;第二存储模块每隔第二预设时间对第一存储模块存储的电量数据进行奇偶页存储;第三存储模块每隔第二预设时间对第一存储模块存储的电量数据进行覆盖存储,从而提高了电量数据存储时的可靠性。
Description
技术领域
本发明涉及电量表技术领域,具体涉及一种电量数据存储、抄读方法。
背景技术
电量数据的可靠性是电表的最重要的功能之一。如何在各种恶劣的环境下,在每次的电量读写过程中保证数据的正确性显得尤为关键。目前单相电表采用的是外置的铁电存储器实时存储电量数据。数据可靠性采用RAM区域加三个铁电区域分别带CRC16校验存储,存储时,前一个区域电量数据存储校验正确了再存下一个区域电量数据。读取电量时前一个区域电量读出来校验正确了则返回该区域电量数据,如果校验不正确则取下一个区域的电量数据。因为存储和读取时计算的CRC16校验码是2字节的,会有65535分之一校验出错的概率;读取数据时当读到第一个区域数据校验正确时,不对比后面区域的数据,这样校验码有出错的概率,造成返回的电量数据有出错的概率;外置的存储器和单片机之间的串行信号线是PCB走线连接的,在恶劣的环境下串行信号线会出现杂波干扰,会出现数据存储和读取失败的现象;铁电存储器价格比较昂贵,存储容量小,不适合大量数据存储要求。
发明内容
因此,本发明要解决的技术问题在于克服现有技术中的电量表的读写方法出错率高的缺陷,从而提供一种电量数据存储、抄读方法。
为达到上述目的,本发明提供如下技术方案:
第一方面,本发明实施例提供一种电量数据存储方法,包括:开辟三个存储模块;第一存储模块每隔第一预设时间对电量数据进行初步存储;第二存储模块每隔第二预设时间对第一存储模块存储的电量数据进行奇偶页存储;第三存储模块每隔第二预设时间对第一存储模块存储的电量数据进行覆盖存储;第一预设时间小于第二预设时间。
在一实施例中,第一存储模块每隔第一预设时间对电量数据进行初步存储的过程,包括:第一存储模块包括多个第一存储区,每个第一存储区每隔第一预设时间均对电量数据进行一次带校验存储,得到多个第一电量数据。
在一实施例中,第二存储模块每隔第二预设时间对第一存储模块存储的电量数据分别进行奇偶页存储的过程,包括:第二存储模块包括两个地址连续的第二存储区,两个地址连续的第二存储区基于奇偶页存储的方式,每隔第二预设时间,对多个第一电量数据依次进行带校验存储,得到多个第二电量数据。
在一实施例中,两个地址连续的第二存储区基于奇偶页存储的方式,每隔第二预设时间,对多个第一电量数据依次进行带校验存储的过程,包括:定义奇偶标志位:定义两个第二存储区中的一个第二存储区为奇数第二存储区,另一个第二存储区为偶数第二存储区;奇数第二存储区和偶数第二存储区分别开辟多个子存储区;每隔第二预设时间,根据奇偶标志位,确定当前具有存储权限的第二存储区,并擦除该当前具有存储权限的第二存储区的数据;当前具有存储权限的第二存储区中的每个子存储区依次对第一电量数据进行存储;存储完成后,修改奇偶标志位,将原奇数第二存储区标记为偶数第二存储区,将原偶数第二存储区标记为奇数第二存储区。
在一实施例中,第三存储模块每隔第二预设时间对第一存储模块存储的电量数据分别进行覆盖存储的过程,包括:第三存储模块包括多个第三存储区,每个第三存储区对第一电量数据依次进行带校验存储,得到多个第三电量数据;每个第三存储区每次存储后均对其存储的第三电量数据进行读取,并将读取的电量数据与其存储的第三电量数据进行比对;根据比对结果,判断第三电量数据是否正确,当其不正确时,每个第三存储区对第一存储区存储的电量数据再次进行预设次数带校验存储。
第二方面,本发明实施例提供一种电量数据抄读方法,基于第一方面的存储方法,抄读方法包括:当接收抄读信号时,获取第一存储模块中的电量数据,判断第一存储模块中的电量数据是否正确;当第一存储模块中的至少一个第一电量数据正确时,利用多数判定原则,抄读正确的电量数据;当第一存储模块中的第一电量数据均不正确时,获取第二存储模块中的第二电量数据;判断第二存储模块中的电量数据是否正确,当第二存储模块中的至少一个第二电量数据正确时,利用多数判定原则,抄读正确的电量数据,当第二存储模块中的第二电量数据均不正确时,获取第三存储模块中的第三电量数据;判断第三存储模块中的第三电量数据是否正确,当第三存储模块中的至少一个第三电量数据正确时,利用多数判定原则,抄读正确的电量数据,当第三存储模块中的第三电量数据均不正确时,输出空值,以表示三个存储模块中数据均错误。
在一实施例中,当第一存储模块中的至少一个第一电量数据正确时,利用多数判定原则,抄读正确的电量数据的过程,包括:当至少一个第一电量数据不正确时,则剔除不正确的第一电量数据,判断剩下的第一电量数据是否有相同数值的第一电量数据;当剩下的第一电量数据有相同数值的第一电量数据时,将相同数值的第一电量数据归为同一类,并抄读数量最多的第一电量数据的一类电量数据;当剩下的第一电量数据均不相同,则抄读地址靠前的第一存储区存储的第一电量数据。
在一实施例中,当第一存储模块中的电量数据均不正确时,获取第二存储模块中的第二电量数据;判断第二存储模块中的第二电量数据是否正确,当第二存储模块中的至少一个第二电量数据正确时,利用多数判定原则,抄读正确的电量数据的过程,包括:获取奇数第二存储区存储的第二电量数据,判断奇数第二存储区中的第二电量数据是否正确;当奇数第二存储区存储中的至少一个第二电量数据正确时,利用多数判定原则,抄读正确的电量数据;当奇数第二存储区中的第二电量数据均不正确时,获取偶数第二存储区中的第二电量数据;当偶数第二存储区存储中的至少一个第二电量数据正确时,利用多数判定原则,抄读正确的电量数据;当偶数第二存储区中的第二电量数据均不正确时,获取第三存储模块中的第三电量数据。
在一实施例中,当奇数第二存储区存储中的至少一个第二电量数据正确时,利用多数判定原则,抄读正确的电量数据的过程,包括:判断奇数第二存储区的每个子存储区存储的每个第二电量数据是否都正确;当至少一个第二电量数据不正确时,则剔除不正确的第二电量数据,判断剩下的第二电量数据是否有相同数值的电量数据;当剩下的第二电量数据有相同数值的第二电量数据时,将相同的第二电量数据归为同一类,并抄读数量最多的第二电量数据的一类电量数据;当剩下的第二电量数据均不相同,则抄读奇数第二存储区中地址靠前的子存储区存储的第二电量数据。
在一实施例中,当偶数第二存储区存储中的至少一个电量数据正确时,利用多数判定原则,抄读正确的电量数据的过程,还包括:当至少一个第二电量数据不正确时,则剔除不正确的第二电量数据,判断剩下的第二电量数据是否有相同的第二电量数据;当剩下的第二电量数据有相同数值的第二电量数据时,将相同数值的第二电量数据归为同一类,并抄读数量最多的第二电量数据的一类电量数据;当剩下的第二电量数据均不相同,则抄读偶数第二存储区中地址靠前的子存储区存储的第二电量数据。
在一实施例中,当第三存储模块中的至少一个第三电量数据正确时,利用多数判定原则,抄读正确的电量数据的过程,还包括:当至少一个第三电量数据不正确时,则剔除不正确的第三电量数据,判断剩下的第三电量数据是否有相同数值的第三电量数据;当剩下的第三电量数据有相同数值的第三电量数据时,将相同的第三电量数据归为同一类,并抄读数量最多的第三电量数据的一类电量数据;当剩下的第三电量数据均不相同,则抄读地址靠前的第三电量数据。
本发明技术方案,具有如下优点:
1.本发明提供的电量数据存储方法,第一存储模块每隔第一预设时间对电量数据进行存储,第二存储模块、第三存储模块均每隔第二预设时间对第一预设时间存储的电量数据进行再次存储,从而提高了电量数据存储时的可靠性。
2.本发明提供的电量数据存储方法,第一存储模块及第二存储模块每次存储电量数据时,均带校验,从而进一步提高了电量数据存储时的可靠性。
3.本发明提供的电量数据抄读方法,当接收抄读信号时,对第一存储模块、第二存储模块以及第三存储模块,按照预设优先级原则,首先抄读优先级高的存储区的电量数据,当优先级高的存储区的电量数据均不正确时,再抄读低优先级的存储区的电量数据,从而保证抄读的电量数据的可靠性。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的电量数据存储方法的一个具体示例的流程图;
图2为本发明实施例提供的电量数据存储方法的另一个具体示例的流程图;
图3为本发明实施例提供的电量数据存储方法的另一个具体示例的流程图;
图4为本发明实施例提供的电量数据抄读方法的一个具体示例的流程图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,还可以是两个元件内部的连通,可以是无线连接,也可以是有线连接。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
实施例1
本发明实施例提供一种电量数据存储方法,应用于需要可靠存储数据的场合,如图1所示,包括:
步骤S11:开辟三个存储模块。
本发明实施例的三个存储模块的第一存储模块可以为RAM存储模块,第二存储模块可以为Flash存储模块,第三存储模块可以为EEROM存储模块,仅以此举例,但不以此为限制。
步骤S12:第一存储模块每隔第一预设时间对电量数据进行初步存储。
本发明实施例的第一存储模块中包含多个第一存储区,每个第一存储区每隔第一预设时间同时对电量数据进行初步存储。
步骤S13:第二存储模块每隔第二预设时间对第一存储模块存储的电量数据进行奇偶页存储。
本发明实施例的第二存储模块包括两个第二存储区,每个第二存储区又包含多个子存储区,每个第二存储区的子存储区的数量和第一存储区的数量相等。每隔第二预设时间,一个第二存储区的子存储区依次存储一个第一存储模块存储的第一电量数据,则再隔第二预设时间,则另一个第二存储区的子存储区依次存储一个第一存储模块存储的第一电量数据。
步骤S14:第三存储模块每隔第二预设时间对第一存储模块存储的电量数据进行覆盖存储。
本发明实施例的第三存储模块包括多个第三存储区,第三存储区的数量和第一存储区的数量相等,每隔第二预设时间,每个第三存储区依次存储一个第一存储模块存储的第一电量数据。
本发明实施例的第一预设时间小于第二预设时间,例如:第一存储模块每隔一秒存储一次电量数据,第二存储模块及第三存储模块每隔二十分钟对第一存储模块存储的电量数据进行再次存储,从而通过对电量数据进行多次存储,以提高电量数据的存储的可靠性,此外,在每次存储时,均可以带校验存储,以进一步提高电量数据的存储的可靠性。
在一具体实施例中,第一存储模块每隔第一预设时间对电量数据进行初步存储的过程,包括:第一存储模块包括多个第一存储区,每个第一存储区每隔第一预设时间均对电量数据进行一次带校验存储,得到多个第一电量数据。
具体地,本发明实施例开辟三个RAM存储区,每隔第一预设时间依次存储一次电量数据,并且每次存储时,对电量数据进行校验,其中校验方法可以为CRC32校验方法。
在一具体实施例中,第二存储模块每隔第二预设时间对第一存储模块存储的电量数据分别进行奇偶页存储的过程,包括:第二存储模块包括两个地址连续的第二存储区,两个地址连续的第二存储区基于奇偶页存储的方式,每隔第二预设时间,对多个第一电量数据依次进行带校验存储,得到多个第二电量数据。
本发明实施例的第二存储区可以为两个地址连续的Flash存储区,在此不作限制。两个Flash存储区均包含多个子存储区,每个第二存储区的子存储区的数据与第一存储区的数量相同。每隔第二预设时间,具有存储权限的第二存储区对第一存储区中的数据进行存储,当前不具有存储权限的第二存储区在下次存储时才具有存储权限,当前具有存储权限的第二存储区在下次存储时不具有存储权限。
在一具体实施例中,如图2所示,两个地址连续的第二存储区基于奇偶页存储的方式,每隔第二预设时间,对多个第一电量数据依次进行带校验存储的过程,包括:
步骤S21:定义奇偶标志位:定义两个第二存储区中的一个第二存储区为奇数第二存储区,另一个第二存储区为偶数第二存储区。
步骤S22:奇数第二存储区和偶数第二存储区分别开辟多个子存储区。
步骤S23:每隔第二预设时间,根据奇偶标志位,确定当前具有存储权限的第二存储区,并擦除该当前具有存储权限的第二存储区的数据。
步骤S24:当前具有存储权限的第二存储区中的每个子存储区依次对第一电量数据进行存储。
步骤S25:存储完成后,修改奇偶标志位,将原奇数第二存储区标记为偶数第二存储区,将原偶数第二存储区标记为奇数第二存储区。
具体地,本发明实施例可以采用单片机IAP功能开辟奇偶两个地址连续的第二存储区(Flash存储区)、三个第一存储区(RAM存储区),且每个第二存储区中含有三个子存储区。为了实现奇偶页交替存储,定义奇偶标志位,每隔第二预设时间,根据奇偶标志位的当前状态,确定当前具有存储权限的第二存储区,当前具有存储权限的第二存储区的每个子存储区对三个第一存储区里的第一电量数据按照其存储地址的先后顺序分别带CRC32校验存储,即一个子存储区对一个第一存储区存储的第一电量数据进行再次存储,并修改奇偶标志位。
具体地,每隔第二预设时间,若奇偶标志位表示奇数第二存储区具有存储权限时,则奇数第二存储区的每个子存储区对三个第一存储区里的第一电量数据按照其存储地址的先后顺序分别带CRC32校验存储,并修改奇偶标志位;再次间隔预设第二预设时间后,奇偶标志位表示偶数第二存储区具有存储权限时,则偶数第二存储区的每个子存储区对三个第一存储区里的第一电量数据按照其存储地址的先后顺序分别带CRC32校验存储,并修改奇偶标志位;再次间隔预设第二预设时间后,奇偶标志位表示奇数第二存储区具有存储权限时,则首先擦除奇数第二存储区中的电量数据,之后,奇数第二存储区的每个子存储区对三个第一存储区里的第一电量数据按照其存储地址的先后顺序分别带CRC32校验存储,并修改奇偶标志位;再次间隔预设第二预设时间后,奇偶标志位表示偶数第二存储区具有存储权限时,则首先擦除偶数第二存储区中的电量数据,之后,偶数第二存储区的每个子存储区对三个第一存储区里的第一电量数据按照其存储地址的先后顺序分别带CRC32校验存储,并修改奇偶标志位重复上述方法,从而实现奇偶页交替存储。
在一具体实施例中,如图3所示,第三存储模块每隔第二预设时间对第一存储模块存储的电量数据分别进行覆盖存储的过程,包括:
步骤S31:第三存储模块包括多个第三存储区,每个第三存储区对第一电量数据依次进行带校验存储,得到多个第三电量数据。
步骤S32:每个第三存储区每次存储后均对其存储的第三电量数据进行读取,并将读取的电量数据与其存储的第三电量数据进行比对。
步骤S33:根据比对结果,判断第三电量数据是否正确,当其不正确时,每个第三存储区对第一存储区存储的电量数据再次进行预设次数带校验存储。
具体地,本发明实施例的第三存储区可以为EEPROM存储区,且第三存储区的数据与第一存储区的数量一致,每隔第二预设时间,三个第三存储区对三个第一存储区里的第一电量数据按照其存储地址的先后顺序分别带CRC32校验存储,即一个第三存储区存储一个第一存储区里的第一电量数据,每个第三存储区存储后再读取存储值,如果读出来的值和存储的值一致,则进行下一个区域存储,如果不一致,则对第一存储区存储的电量数据再次进行预设次数带校验存储后,再进行下一个第三存储区存储。
实施例2
本发明实施例提供一种电量数据抄读方法,基于实施例1的存储方法,如图4所示,抄读方法包括:
步骤S41:当接收抄读信号时,获取第一存储模块中的电量数据,判断第一存储模块中的电量数据是否正确。
步骤S42:当第一存储模块中的至少一个第一电量数据正确时,利用多数判定原则,抄读正确的电量数据;当第一存储模块中的第一电量数据均不正确时,获取第二存储模块中的第二电量数据。
步骤S43:判断第二存储模块中的电量数据是否正确,当第二存储模块中的至少一个第二电量数据正确时,利用多数判定原则,抄读正确的电量数据,当第二存储模块中的第二电量数据均不正确时,获取第三存储模块中的第三电量数据。
步骤S44:判断第三存储模块中的第三电量数据是否正确,当第三存储模块中的至少一个第三电量数据正确时,利用多数判定原则,抄读正确的电量数据,当第三存储模块中的第三电量数据均不正确时,输出空值,以表示三个存储模块中数据均错误。
具体地,本发明实施例设置预设优先级为第一存储模块的优先级别高于第二存储模块的优先级别,第二存储模块的优先级别高于第三存储模块的优先级别,其中,奇数第二存储区的优先级别高于偶数第二存储区的优先级别,当接到抄读信号时,首先抄读优先级别高的存储模块,当优先级别高的存储模块中的数据均不正确时,则往下抄读优先级别高的存储模块,当优先级别高的存储模块中的数据至少一个为正确数据时,则采用多数判定原则抄读正确的电量数据。
在一具体实施例中,当第一存储模块中的至少一个第一电量数据正确时,利用多数判定原则,抄读正确的电量数据的过程,包括:
步骤S51:当至少一个第一电量数据不正确时,则剔除不正确的第一电量数据,判断剩下的第一电量数据是否有相同数值的第一电量数据。
步骤S52:当剩下的第一电量数据有相同数值的第一电量数据时,将相同数值的第一电量数据归为同一类,并抄读数量最多的第一电量数据的一类电量数据;当剩下的第一电量数据均不相同,则抄读地址靠前的第一存储区存储的第一电量数据。
具体地,本发明实施例按照第一存储区优先级高于第二存储区优先级,第二存储区优先级高于第三存储区优先级,首先抄读三个第一存储区的第一电量数据,由于三个第一存储区存储的第一电量数据不一定均是正确的,因此首先判断三个第一存储区的第一电量数据是否正确,当至少一个第一存储区存储的第一电量数据不正确时(此处的不正确指的是带校验存储时,校验出的不正确的数据),剔除不正确的第一电量数据,且将剩下的第一电量数据中相同的第一电量数据归为同一类,并抄读包含数量最多的第一电量数据的一类电量数据,若剩下的电量数据均不相同时,则抄读地址靠前的第一电量数据。
具体地,假设三个地址递增的第一存储区:第一存储区#A、第一存储区#B、第一存储区#C,第一存储区#A存储区的电量数据为5W,第一存储区#B的电量数据为5W、第一存储区#C存储区的电量数据为10W,若10W为校验不正确的数据(此处指每次存储时校验不正确),则首先将第一存储区#C的电量数据剔除,并抄读第一存储区#A存储区及第一存储区#B存储区存储的5W。
具体地,假设三个地址递增的第一存储区:第一存储区#A、第一存储区#B、第一存储区#C,第一存储区#A存储区的电量数据为5W,第一存储区#B的电量数据为5.1W、第一存储区#C的电量数据为5.2W,且三个第一电量数据均校验正确(此处指每次存储时校验正确),则抄读地址靠前的第一存储区#A存储区的电量数据5W。
此外,上述抄读方法同为多数判定原则,例如:假设三个地址递增的第一存储区:第一存储区#A、第一存储区#B、第一存储区#C,第一存储区#A的电量数据为5W,第一存储区#B的电量数据为5W、第一存储区#C的电量数据为10W,且三个第一电量数据均正确(此处指每次存储时校验正确),其中,第一电量数据为5W的存储区为2个,第一电量数据为10W的存储区为1个,则将第一存储区#A、第一存储区#B的电量数据作为最终的电量数据,但是需将地址靠前的第一存储区#A的电量数据返回。
在一具体实施例中,当第一存储模块中的电量数据均不正确时,获取第二存储模块中的第二电量数据;判断第二存储模块中的第二电量数据是否正确,当第二存储模块中的至少一个第二电量数据正确时,利用多数判定原则,抄读正确的电量数据的过程,包括:
步骤S61:获取奇数第二存储区存储的第二电量数据,判断奇数第二存储区中的第二电量数据是否正确。
步骤S62:当奇数第二存储区存储中的至少一个第二电量数据正确时,利用多数判定原则,抄读正确的电量数据;当奇数第二存储区中的第二电量数据均不正确时,获取偶数第二存储区中的第二电量数据。
步骤S63:当偶数第二存储区存储中的至少一个第二电量数据正确时,利用多数判定原则,抄读正确的电量数据;当偶数第二存储区中的第二电量数据均不正确时,获取第三存储模块中的第三电量数据。
具体地,当每个第一存储区中的数据均带校验校测时均不正确,则获取首先获取奇数第二存储区的每个子存储区存储的第二电量数据,并以第一存储区的抄读方法抄读奇数第二存储区的第二电量数据,若奇数第二存储区的每个子存储区存储的第二电量数据均带校验校测时均不正确,则获取偶数第二存储区的每个子存储区存储的第二电量数据,并以第一存储区的抄读方法抄读偶数第二存储区的第二电量数据,当偶数第二存储区的每个子存储区存储的第二电量数据均带校验校测时均不正确,则获取第三存储模块中的第三电量数据,并以第一存储区的抄读方法抄读第三存储区的第二电量数据。
在一具体实施例中,当奇数第二存储区存储中的至少一个第二电量数据正确时,利用多数判定原则,抄读正确的电量数据的过程,包括:
步骤71:判断奇数第二存储区的每个子存储区存储的每个第二电量数据是否都正确。
步骤72:当至少一个第二电量数据不正确时,则剔除不正确的第二电量数据,判断剩下的第二电量数据是否有相同数值的电量数据。
步骤73:当剩下的第二电量数据有相同数值的第二电量数据时,将相同的第二电量数据归为同一类,并抄读数量最多的第二电量数据的一类电量数据;当剩下的第二电量数据均不相同,则抄读奇数第二存储区中地址靠前的子存储区存储的第二电量数据。
具体地,本发明实施例在抄读奇数第二存储的第二电量数据的方法与步骤52~步骤52的抄读第一电量数据的方法相同,在此不再赘述。
在一具体实施例中,当偶数第二存储区存储中的至少一个电量数据正确时,利用多数判定原则,抄读正确的电量数据的过程,还包括:
步骤81:当至少一个第二电量数据不正确时,则剔除不正确的第二电量数据,判断剩下的第二电量数据是否有相同的第二电量数据;
步骤82:当剩下的第二电量数据有相同数值的第二电量数据时,将相同数值的第二电量数据归为同一类,并抄读数量最多的第二电量数据的一类电量数据;当剩下的第二电量数据均不相同,则抄读偶数第二存储区中地址靠前的子存储区存储的第二电量数据。
具体地,本发明实施例在抄读偶数第二存储的第二电量数据的方法与步骤52~步骤52的抄读第一电量数据的方法相同,在此不再赘述。
在一具体实施例中,当第三存储模块中的至少一个第三电量数据正确时,利用多数判定原则,抄读正确的电量数据的过程,还包括:
步骤91:当至少一个第三电量数据不正确时,则剔除不正确的第三电量数据,判断剩下的第三电量数据是否有相同数值的第三电量数据;
步骤92:当剩下的第三电量数据有相同数值的第三电量数据时,将相同的第三电量数据归为同一类,并抄读数量最多的第三电量数据的一类电量数据;当剩下的第三电量数据均不相同,则抄读地址靠前的第三电量数据。
具体地,本发明实施例在抄读第三存储的第二电量数据的方法与步骤52~步骤52的抄读第一电量数据的方法相同,在此不再赘述。
显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引申出的显而易见的变化或变动仍处于本发明创造的保护范围之中。
Claims (9)
1.一种电量数据存储方法,其特征在于,包括:
开辟三个存储模块;
第一存储模块每隔第一预设时间对电量数据进行初步存储;
第二存储模块每隔第二预设时间对第一存储模块存储的电量数据进行奇偶页存储,包括:所述第二存储模块包括两个地址连续的第二存储区,两个地址连续的第二存储区基于奇偶页存储的方式,每隔第二预设时间,对多个第一电量数据依次进行带校验存储,得到多个第二电量数据;
第三存储模块每隔第二预设时间对第一存储模块存储的电量数据进行覆盖存储,包括:所述第三存储模块包括多个第三存储区,每个第三存储区对第一电量数据依次进行带校验存储,得到多个第三电量数据;每个第三存储区每次存储后均对其存储的第三电量数据进行读取,并将读取的电量数据与其存储的第三电量数据进行比对;根据比对结果,判断第三电量数据是否正确,当其不正确时,每个第三存储区对第一存储区存储的电量数据再次进行预设次数带校验存储;
所述第一预设时间小于所述第二预设时间。
2.根据权利要求1所述的电量数据存储方法,其特征在于,所述第一存储模块每隔第一预设时间对电量数据进行初步存储的过程,包括:
所述第一存储模块包括多个第一存储区,每个第一存储区每隔第一预设时间均对电量数据进行一次带校验存储,得到多个第一电量数据。
3.根据权利要求2所述的电量数据存储方法,其特征在于,所述两个地址连续的第二存储区基于奇偶页存储的方式,每隔第二预设时间,对多个第一电量数据依次进行带校验存储的过程,包括:
定义奇偶标志位:定义两个第二存储区中的一个第二存储区为奇数第二存储区,另一个第二存储区为偶数第二存储区;
奇数第二存储区和偶数第二存储区分别开辟多个子存储区;
每隔第二预设时间,根据奇偶标志位,确定当前具有存储权限的第二存储区,并擦除该当前具有存储权限的第二存储区的数据;
当前具有存储权限的第二存储区中的每个子存储区依次对第一电量数据进行存储;
存储完成后,修改所述奇偶标志位,将原奇数第二存储区标记为偶数第二存储区,将原偶数第二存储区标记为奇数第二存储区。
4.一种电量数据抄读方法,其特征在于,基于权利要求1-3任一项所述的存储方法,所述抄读方法包括:
当接收抄读信号时,获取第一存储模块中的电量数据,判断第一存储模块中的电量数据是否正确;
当第一存储模块中的至少一个第一电量数据正确时,利用多数判定原则,抄读正确的电量数据;当第一存储模块中的第一电量数据均不正确时,获取第二存储模块中的第二电量数据;
判断第二存储模块中的电量数据是否正确,当第二存储模块中的至少一个第二电量数据正确时,利用多数判定原则,抄读正确的电量数据,当第二存储模块中的第二电量数据均不正确时,获取第三存储模块中的第三电量数据;
判断第三存储模块中的第三电量数据是否正确,当第三存储模块中的至少一个第三电量数据正确时,利用多数判定原则,抄读正确的电量数据,当第三存储模块中的第三电量数据均不正确时,输出空值,以表示三个存储模块中数据均错误。
5.根据权利要求4所述的电量数据抄读方法,其特征在于,当第一存储模块中的至少一个第一电量数据正确时,利用多数判定原则,抄读正确的电量数据的过程,包括:
当至少一个第一电量数据不正确时,则剔除不正确的第一电量数据,判断剩下的第一电量数据是否有相同数值的第一电量数据;
当剩下的第一电量数据有相同数值的第一电量数据时,将相同数值的第一电量数据归为同一类,并抄读数量最多的第一电量数据的一类电量数据;当剩下的第一电量数据均不相同,则抄读地址靠前的第一存储区存储的第一电量数据。
6.根据权利要求4所述的电量数据抄读方法,其特征在于,当第一存储模块中的电量数据均不正确时,获取第二存储模块中的第二电量数据;判断第二存储模块中的第二电量数据是否正确,当第二存储模块中的至少一个第二电量数据正确时,利用多数判定原则,抄读正确的电量数据的过程,包括:
获取奇数第二存储区存储的第二电量数据,判断奇数第二存储区中的第二电量数据是否正确;
当奇数第二存储区存储中的至少一个第二电量数据正确时,利用多数判定原则,抄读正确的电量数据;当奇数第二存储区中的第二电量数据均不正确时,获取偶数第二存储区中的第二电量数据;
当偶数第二存储区存储中的至少一个第二电量数据正确时,利用多数判定原则,抄读正确的电量数据;当偶数第二存储区中的第二电量数据均不正确时,获取第三存储模块中的第三电量数据。
7.根据权利要求6所述的电量数据抄读方法,其特征在于,当奇数第二存储区存储中的至少一个第二电量数据正确时,利用多数判定原则,抄读正确的电量数据的过程,包括:
判断奇数第二存储区的每个子存储区存储的每个第二电量数据是否都正确;
当至少一个第二电量数据不正确时,则剔除不正确的第二电量数据,判断剩下的第二电量数据是否有相同数值的电量数据;
当剩下的第二电量数据有相同数值的第二电量数据时,将相同的第二电量数据归为同一类,并抄读数量最多的第二电量数据的一类电量数据;当剩下的第二电量数据均不相同,则抄读奇数第二存储区中地址靠前的子存储区存储的第二电量数据。
8.根据权利要求6所述的电量数据抄读方法,其特征在于,当偶数第二存储区存储中的至少一个电量数据正确时,利用多数判定原则,抄读正确的电量数据的过程,还包括:
当至少一个第二电量数据不正确时,则剔除不正确的第二电量数据,判断剩下的第二电量数据是否有相同的第二电量数据;
当剩下的第二电量数据有相同数值的第二电量数据时,将相同数值的第二电量数据归为同一类,并抄读数量最多的第二电量数据的一类电量数据;当剩下的第二电量数据均不相同,则抄读偶数第二存储区中地址靠前的子存储区存储的第二电量数据。
9.根据权利要求4所述的电量数据抄读方法,其特征在于,当第三存储模块中的至少一个第三电量数据正确时,利用多数判定原则,抄读正确的电量数据的过程,还包括:
当至少一个第三电量数据不正确时,则剔除不正确的第三电量数据,判断剩下的第三电量数据是否有相同数值的第三电量数据;
当剩下的第三电量数据有相同数值的第三电量数据时,将相同的第三电量数据归为同一类,并抄读数量最多的第三电量数据的一类电量数据;当剩下的第三电量数据均不相同,则抄读地址靠前的第三电量数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110531528.1A CN112988081B (zh) | 2021-05-17 | 2021-05-17 | 一种电量数据存储、抄读方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110531528.1A CN112988081B (zh) | 2021-05-17 | 2021-05-17 | 一种电量数据存储、抄读方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112988081A CN112988081A (zh) | 2021-06-18 |
CN112988081B true CN112988081B (zh) | 2021-08-17 |
Family
ID=76336643
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110531528.1A Active CN112988081B (zh) | 2021-05-17 | 2021-05-17 | 一种电量数据存储、抄读方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112988081B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101681305A (zh) * | 2007-03-29 | 2010-03-24 | 提琴存储器公司 | 存储管理系统和方法 |
US20120323507A1 (en) * | 2010-02-26 | 2012-12-20 | Yoshiaki Hasegawa | Fault detection apparatus and fault detection method |
CN103593260A (zh) * | 2013-10-17 | 2014-02-19 | 华为技术有限公司 | 一种元数据的保护方法和装置 |
CN105009085A (zh) * | 2013-03-18 | 2015-10-28 | 株式会社东芝 | 信息处理系统、控制程序以及信息处理设备 |
-
2021
- 2021-05-17 CN CN202110531528.1A patent/CN112988081B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101681305A (zh) * | 2007-03-29 | 2010-03-24 | 提琴存储器公司 | 存储管理系统和方法 |
CN102346694A (zh) * | 2007-03-29 | 2012-02-08 | 提琴存储器公司 | 一种在存储系统中计算奇偶校验的方法 |
US20120323507A1 (en) * | 2010-02-26 | 2012-12-20 | Yoshiaki Hasegawa | Fault detection apparatus and fault detection method |
CN105009085A (zh) * | 2013-03-18 | 2015-10-28 | 株式会社东芝 | 信息处理系统、控制程序以及信息处理设备 |
CN103593260A (zh) * | 2013-10-17 | 2014-02-19 | 华为技术有限公司 | 一种元数据的保护方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112988081A (zh) | 2021-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105117236B (zh) | 一种自动校验的编程烧写方法 | |
CN102156237B (zh) | 一种汽车线束检测方法 | |
JP2003521011A (ja) | 書込みおよび読出し可能な集積電子回路、特にメモリモジュールのバス接続の検査方法 | |
CN108647111A (zh) | 用于存储器的读取控制装置、读取控制方法和存储器控制器 | |
CN101499323B (zh) | 存储模块 | |
CN108717385A (zh) | 一种用于闪存的数据恢复方法及系统 | |
KR880010362A (ko) | 어드레스 라인 오류 테스트 방법 | |
KR101373668B1 (ko) | 메모리 수리 장치 및 방법 | |
CN108228381A (zh) | 存储系统及其错误校正方法 | |
CN112988081B (zh) | 一种电量数据存储、抄读方法 | |
CN100468367C (zh) | 固态存储器的安全存储系统及方法 | |
CN100392766C (zh) | 集成电路中降低存储器失效之方法 | |
CN108121616A (zh) | 存储器电路、多端口存储器电路及其操作方法 | |
CN113051100A (zh) | 一种闪存存储器及其错误比特计数检测系统 | |
US6539338B1 (en) | Self-diagnostic testing of a network interface adapter | |
CN101763902A (zh) | 测试储存装置的方法及其系统 | |
CN109979519A (zh) | 存储器完整性的检验方法、非易失性存储器以及电子装置 | |
CN112530508B (zh) | 一种nand flash存储器并行测试及坏块回写方法 | |
CN100444286C (zh) | 存储单元信号窗测试方法和设备 | |
CN105405468B (zh) | 存储器测试方法 | |
CN114203252A (zh) | 非易失存储器的坏块检测方法、装置、设备及存储介质 | |
CN100472667C (zh) | 一种电子磁盘的测试方法 | |
US6971055B2 (en) | Method for verifying the accuracy of bit-map memory test programs | |
CN101937722B (zh) | 存储器装置及其相关测试方法 | |
CN110299184A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: Zhengtai Instrument Measurement Industrial Park, No.1 Liangce Road, Beibaixiang Town, Leqing City, Wenzhou City, Zhejiang Province, 325603 Patentee after: ZHEJIANG CHINT INSTRUMENT & METER Co.,Ltd. Address before: 325603 Wenzhou Daqiao Industrial Park, Yueqing City, Wenzhou City, Zhejiang Province Patentee before: ZHEJIANG CHINT INSTRUMENT & METER Co.,Ltd. |
|
CP03 | Change of name, title or address |