主权项 |
一种非易失性存储器意外掉电线性累计数据突变的防避方法,其特征在于包括如下步骤:为防止意外掉电引起线性累计数据突变和避免累计数据精度损失和频繁操作非易失性存储器,在划分有主存储区、第一备存储区和第二备存储区,即划分有三级存储区的非易失性存储器中,线性累计数据更新由数据读取判决模块和线性累计数据更新存储模块两个模块协同完成,而线性累计数据结果读取由数据读取判决模块和三级存储区同步模块两个模块协同完成;数据读取判决模块获取三级存储区中的最终结果数据,按下述数据判定原则判定最终结果数据:当三个存储区上的数据都相同时,将三个相同的数据判定为最终结果数据;当只有主存储区与第一备存储区或第二备存储区与主存储区上的数据相同时,数据读取判决模块将主存储区上的数据判定为最终结果数据;当第一备存储区和第二备存储区的数据相同,而与主存储区的数据不同时,有效数据为第一备存储区的数据加上一个线性累计数据的最小单位,以避免该情况下线性累计数据的精度损失;当三存储区的数据都不相同时,数据读取判决模块选取先更新的存储区存储的数据为有效数据,即选取主存储区上的数据为有效数据,以保证该情况下有效数据是最新的数据;线性累计数据更新存储模块将最终结果数据增加一个最小单位,然后将累加后的数据按照先主存储区,再第一备存储区,最后第二备存储区的顺序依次写入三级存储区;三级存储区同步模块将最终结果数据同步到三级存储区,使三级存储区中的数据都等于最终结果数据。 |