一种基于crc校验方式的配电安全芯片掉电保护方法
【专利摘要】本发明公开了一种基于CRC校验方式的配电安全芯片掉电保护方法,包括写保护数据步骤和恢复保护数据步骤。本发明每次恢复保护数据操作都需要做CRC校验值的比对检查,相比于传统的TAG值比较机制,有如下优点:1、写保护数据时减少操作数据区次数,仅操作数据区二次,恢复保护数据时减少擦写数据区次数,仅操作数据区1次;2、由于减少一次擦写数据区的次数,可有效延长安全芯片的使用寿命;3、减少安全芯片掉电时保护数据恢复的时间,有效提升安全芯片执行效率;4、可采用安全芯片自有的CRC算法来计算CRC校验值,其校验方式可灵活配置,掉电方式具有可扩展性。
【专利说明】
一种基于CRC校验方式的配电安全芯片掉电保护方法
技术领域
[0001]本发明属于芯片数据的掉电保护方法,具体涉及一种基于CRC校验(循环冗余码校验)方式的配电安全芯片掉电保护方法。
【背景技术】
[0002]随着科技的不断进步,智能卡已经广泛应用到各个领域,如:银行、交通、社保、用电、配电等多个行业。每个行业对智能卡的交易时间、交易速度、数据恢复都有不同的要求。如:金融I3BOC应用要求交易时间小于500ms,这就要智能卡应用提供安全、快速的交易方式。配电安全芯片主要用于配网自动化终端实时状态数据和控制数据的信息安全防护,要求能够快速处理,并在有故障重启后能够快速恢复掉电前的应用数据,确保业务数据的及时更新。同时,配电安全芯片要求寿命达到10年以上,这也对数据写入机制提出了要求。而数据写入时,都需要同时考虑芯片掉电时,如何进行数据保护,即掉电保护机制。所以如何满足配电网络快速写入、快速恢复、芯片寿命时间长的要求,是比较关键的问题,这就不得不去研究配电安全芯片的掉电保护机制。
[0003]目前,一般芯片应用开发商,都采用置掉电标志TAG机制。在保护数据写入时:首先将待保护数据写入备份区,再将掉电标志TAG置位,之后将备份区保护数据根据情况分别写入相应的数据区,最后将掉电标志TAG清O。在保护数据恢复时:先判断芯片的掉电标志TAG是否置位,如果置位,则说明需要进行保护数据恢复。于是,芯片将备份区保护数据根据情况分别写入相应的数据区,之后将掉电标志TAG清O。
[0004]传统的掉电保护机制完成一次写保护数据操作,擦写E2至少需要4次;完成一次保护数据恢复,擦写E2至少需要2次。写入时擦写E2次数较多,延长了应用处理的时间,也降低了芯片的使用寿命。
【发明内容】
[0005]本发明的目的是提供一种可提高写保护数据、保护数据恢复速度,延长芯片使用寿命的基于CRC校验方式的配电安全芯片掉电保护方法。
[0006]实现本发明目的采用的技术方案如下:
基于CRC校验方式的配电安全芯片掉电保护方法,包括写保护数据步骤和恢复保护数据步骤;
所述写保护数据步骤为:
1)将CRC校验值、写保护数据操作次数N、保护数据长度清O;
2)根据应用执行情况,修改写保护数据操作次数N,N>=1;
3)根据保护数据长度及保护数据计算CRC校验值;
4)将CRC校验值、写保护数据操作次数N、保护数据长度、及保护数据一次性写入备份区;
5)将保护数据分N次写入相应的数据区; 所述恢复保护数据步骤为:
1)读出备份区的CRC校验值、写保护数据操作次数N、保护数据长度、及保护数据,根据芯片CRC算法计算出CRC校验值;
2)比较计算出来的CRC校验值与备份区中的CRC校验值,如果两者一致,则将备份区中的保护数据分N次写入相应的数据区。
[0007]本发明的有益效果:
本发明每次恢复保护数据操作都需要做CRC校验值的比对检查,相比于传统的TAG值比较机制,有如下优点:
1、写保护数据时减少操作数据区2次。传统置掉电标志TAG机制,一次掉电会操作数据区4次,而本发明方法仅操作数据区二次。
[0008]2、恢复保护数据时减少擦写数据区I次。传统置掉电标志TAG机制,保护数据恢复时会擦写数据区2次,而本发明方法仅操作数据区I次。
[0009]3、本发明方法由于减少一次擦写数据区的次数,可有效延长安全芯片的使用寿命O
[0010]4、减少安全芯片掉电时保护数据恢复的时间,有效提升安全芯片执行效率。
[0011 ] 5、不同的安全芯片,其硬件支持不同的CRC算法,如:CRC16、CRC32等算法,本发明可采用安全芯片自有的CRC算法来计算CRC校验值,其校验方式可灵活配置,掉电方式具有可扩展性。
[0012]本发明方法的提出,为解决配电安全芯片掉电时保护数据恢复的时效性,延长寿命提供了很好的解决途径。
[0013]下面结合附图进一步说明本发明的技术方案。
【附图说明】
[0014]图1是本发明中写保护数据方法的流程图。
[0015]图2是本发明中恢复保护数据方法的流程图。
【具体实施方式】
[0016]本发明方法通过下面写入和恢复两组保护数据112233,4455667788的实例进行说明。
[0017]写保护数据步骤(参见图1)为:
I)首先,在执行写保护数据前,将CRC校验值、写保护数据操作次数、及保护数据长度清O。
[0018]2)组织保护数据长度及保护内容,置写保护数据操作次数为2。
[0019]3)将写保护数据操作次数2、保护数据长度及保护数据,采用芯片指定的CRC算法,计算出相应的CRC校验值;
4)将CRC校验值、写保护数据操作次数2、保护数据长度、及保护数据一次性写入备份区;
5)最后,将保护数据112233,4455667788分2次写入相应的数据区;
当在执行写保护数据的过程掉电,就需要进行保护数据恢复,恢复保护数据步骤(参见图2)为:
I)首先,读出备份区的CRC校验值、写保护数据操作次数2、保护数据长度、及保护数据。
[0020] 2)将读出的写保护数据操作次数2、保护数据长度、及保护数据,根据芯片指定的CRC算法,计算出相应的CRC校验值;
3)比较计算出来的CRC校验值与备份区中的CRC校验值;
4)如果两者一致,则将备份区中的保护数据112233,4455667788分2次写入相应的数据区;
5)否则,不进行恢复保护数据的操作。
【主权项】
1.一种基于CRC校验方式的配电安全芯片掉电保护方法,其特征是包括写保护数据步骤和恢复保护数据步骤; 所述写保护数据步骤为: .1)将CRC校验值、写保护数据操作次数N、保护数据长度清O; .2)根据应用执行情况,修改写保护数据操作次数N,N>=1; .3 )根据保护数据长度及保护数据计算CRC校验值; .4)将CRC校验值、写保护数据操作次数N、保护数据长度、及保护数据一次性写入备份区; .5)将保护数据分N次写入相应的数据区; 所述恢复保护数据步骤为: .1)读出备份区的CRC校验值、写保护数据操作次数N、保护数据长度、及保护数据,根据芯片CRC算法计算出CRC校验值; . 2)比较计算出来的CRC校验值与备份区中的CRC校验值,如果两者一致,则将备份区中的保护数据分N次写入相应的数据区。
【文档编号】G06F11/10GK105912418SQ201610259273
【公开日】2016年8月31日
【申请日】2016年4月25日
【发明人】冷华, 唐海国, 朱吉然, 龚汉阳, 张志丹
【申请人】湖南省湘电试验研究院有限公司