掌桥专利:专业的专利平台
掌桥专利
首页

一种电子雷管芯片自动纠错数据存储方法

文献发布时间:2023-06-19 10:58:46


一种电子雷管芯片自动纠错数据存储方法

技术领域

本发明涉及电子雷管通讯技术领域,具体为一种电子雷管芯片自动纠错数据存储方法。

背景技术

目前电子雷管芯片数据存储方案,都是以存储数据的地址为起点,按顺序存储指定数量的数据。OTP存储器的特性为只能一次改写,且在产品中会有约1‰的不良率。当存储器需要在特定位置写入数据时,若存储器该位置的存储区损坏,则导致数据写入错误。当存储器的存储数据功能由于驱动能力不足而导致个别bit位的数据无法正确写入时,则导致数据写入错误。由于目前方案中无法对数据内容进行校验和纠错,导致电子雷管芯片在任何一个存在数据存储的环节都有可能出现异常。例如当电子雷管在应用现场存储延时数据时出现错误,那么该发电子雷管只能因为延时数据不满足要求而报废,造成电子雷管成本增加,还存在一定的安全隐患,可见电子雷管内部数据存储不会自动纠错是电子雷管的一个重点缺陷,随着电子雷管的使用量增加,现场的报废雷管也随之增加时,该缺陷越明显。

发明内容

本发明要解决的技术问题是克服现有的缺陷,提供一种电子雷管芯片自动纠错数据存储方法,标记存储区各个字节异常状态和异常区域自动备份,根据标记规则可计算读写指定数据的起始地址,准确跳过异常存储区将数据正确的读取和写入,可避免由于存储器个别存储区损坏从而导致雷管报废,减少损失,降低作业成本,增加数据存储读写的准确性,可以有效解决背景技术中的问题。

为实现上述目的,本发明提供如下技术方案:一种电子雷管芯片自动纠错数据存储方法,将数据存储文件系统分隔成数据区和坏块地址区,数据区内包括存储区和备用区,当存储区内存在坏块时,数据顺延存入备用区,坏块地址区内包括坏块地址及其备份,当存储区内写入数据时,如果发现写入错误,则将坏块地址对应的bit位写为1。

作为本发明的一种优选技术方案,所述数据区对应OTP地址0~23,共24byte。

作为本发明的一种优选技术方案,所述存储区的数据共17byte,备用区的数据共7byte。

作为本发明的一种优选技术方案,所述坏块地址区对应OTP地址26~31,共6byte,分别为坏块地址1、2、3及其备份。

一种电子雷管芯片自动纠错数据读取方法,包括以下步骤:

步骤一,所有寄存器载入默认值;

步骤二,读取作为坏块地址区的OTP地址26~31;

步骤三,将地址26与地址27进行或运算,作为坏块地址1,地址28与29进行或运算,作为坏块地址2,地址30与31进行或运算,作为坏块地址3;

步骤四,从地址区中,剔除坏块地址对应的数据,读取完好的连续的数据。

一种电子雷管芯片自动纠错单字节数据写入方法,首先判断即将写入数据的存储区是否被写入过,未被写入的存储区地址被设置初始写入地址,并将数据写入该地址,读取该地址并与写入值比较,若不一致,将该地址对应的坏块地址写1,表示此地址损坏,当前地址加1后再次将调整值写入,直至读取到该地址与写入值一致,完成写入操作。

一种电子雷管芯片自动纠错多字节数据写入方法,首先判断即将写入数据的存储区是否被写入过,未被写入的存储区地址被设置初始写入地址,并将高字节写入该地址,读取该地址并与写入值比较,若不一致,将该地址对应的坏块地址写1,表示此地址损坏,当前地址加1后再次将高字节写入,直至读取到该地址与写入值一致后,当前地址加1,将低字节写入该地址,读取该地址并与写入值比较,若不一致,将该地址对应的坏块地址写1,表示此地址损坏,当前地址加1后再次将低字节写入,直至读取到该地址与写入值一致,完成写入操作。

与现有技术相比,本发明的有益效果是:本电子雷管芯片自动纠错数据存储方法,可避免由于存储器个别存储区损坏从而导致雷管报废,减少损失,降低作业成本,增加数据存储读写的准确性。

附图说明

图1为本发明数据读取流程图;

图2为本发明单字节数据写入流程图;

图3为本发明多字节数据写入流程图;

图4为本发明Otp存储坏块地址区定义表。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参阅图1-4,本发明提供一种技术方案:一种电子雷管芯片自动纠错数据存储方法,将数据存储文件系统分隔成数据区和坏块地址区,所述数据区对应OTP地址0~23,共24byte,数据区内包括存储区和备用区,当存储区内存在坏块时,数据顺延存入备用区,存储区的数据共17byte,备用区的数据共7byte,在所有数据能够正常存储的情况下,文件系统最多允许7个byte损坏,坏块地址区内包括坏块地址及其备份,坏块地址区对应OTP地址26~31,共6byte,分别为坏块地址1、2、3及其备份,每个坏块地址中的每个bit表示前面存储区数据是否损坏,当存储区内写入数据时,如果发现写入错误,则将坏块地址对应的bit位写为1,例如第26byte的bit7为1则表示数据区地址7损坏;

对于电子雷管芯片自动纠错数据读取方法,首先所有寄存器载入默认值,读取作为坏块地址区的OTP地址26~31,将地址26与地址27进行或运算,作为坏块地址1,地址28与29进行或运算,作为坏块地址2,地址30与31进行或运算,作为坏块地址3,从地址区中,剔除坏块地址对应的数据,读取完好的连续的17字节数据,并将第1字节数据写入trim_osc_bg寄存器,第2~3字节数据写入chip_id寄存器,第4~11字节数据写入UID_Address寄存器,第12~15字节数据写入Password寄存器,第16~17字节数据写入DelayTime寄存器;

对于电子雷管芯片自动纠错单字节数据写入方法,首先判断即将写入数据的存储区是否被写入过,未被写入的存储区地址被设置初始写入地址,并将数据写入该地址,读取该地址并与写入值比较,若不一致,将该地址对应的坏块地址写1,表示此地址损坏,当前地址加1后再次将调整值写入,直至读取到该地址与写入值一致,完成写入操作;

对于电子雷管芯片自动纠错多字节数据写入方法,首先判断即将写入数据的存储区是否被写入过,未被写入的存储区地址被设置初始写入地址,并将高字节写入该地址,读取该地址并与写入值比较,若不一致,将该地址对应的坏块地址写1,表示此地址损坏,当前地址加1后再次将高字节写入,直至读取到该地址与写入值一致后,当前地址加1,将低字节写入该地址,读取该地址并与写入值比较,若不一致,将该地址对应的坏块地址写1,表示此地址损坏,当前地址加1后再次将低字节写入,直至读取到该地址与写入值一致,完成写入操作。

一般情况下,OTP的数据是按照表格顺序写入的,如果有坏块,则需要跳过相应的地址;如果有数据未写入,也需要跳过相应的地址;

例如,正常情况下,第1字节数据从地址0开始写入,如果未写第1字节数据,而直接写了第2~3字节数据,那么写第2~3字节数据的初始地址不应是0,而是1,需要跳过第1字节数据的地址,以备后续再次写入第1字节数据;

再如,第1字节数据已经写入地址0,第2~3字节数据写入了地址1和地址3(地址2为坏块),第4~11字节数据未写入,先写第12~15字节数据,那么第12~15字节数据的起始写入地址应为12,即跳过第4~11字节数据的8字节,以便后续可以再次写入第4~11字节数据。

相关技术
  • 一种电子雷管芯片自动纠错数据存储方法
  • 一种包含时标容错与纠错机制的嵌入式数据存储方法
技术分类

06120112756145