[发明专利]利用有限Flash空间实现百万级别的计数的方法在审
申请号: | 202310171937.4 | 申请日: | 2023-02-20 |
公开(公告)号: | CN116301608A | 公开(公告)日: | 2023-06-23 |
发明(设计)人: | 方海林 | 申请(专利权)人: | 深圳市迈斯威志科技有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06;G11C16/34 |
代理公司: | 深圳市正德知识产权代理事务所(特殊普通合伙) 44548 | 代理人: | 杨佳龙 |
地址: | 518000 广东省深圳市龙岗区坂田街道岗头社*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 利用 有限 flash 空间 实现 百万 级别 计数 方法 | ||
1.利用有限Flash空间实现百万级别的计数的方法,其特征在于,包括以下步骤:
S1:设定大小为256字节的Flash计数块,标识为A,设定一个大小为n字节的数据块,标识为B,用于存储A的擦除的次数;
S2:先从A的0偏移地址开始,记为:A[0],每计数一次,对A[0]的Bit0~Bit7依次写0;
S3:依次从Flash的第二个单元开始执行和第一个字节的同样操作,直至最后一个地址单元的Flash的数据,记该数据为A[i],i=1~255;
S4:对A进行擦除,并将该擦除的次数记录到B-Flash数据块中,记录的方式和A的类似,也是从B[i](i=0~n-1)的Bit0~Bit7依次设置0;
S5:任何时候,可通过下式来获取当前的计数值:
EX=∑(0of B[i])*2048+∑(0of A[j]),i=0~n,j=0~255。
2.根据权利要求1所述的利用有限Flash空间实现百万级别的计数的方法,其特征在于,所述步骤S3中A[i],i=1~255;当A[255]的8位数据为0后;Flash块的一次完整计数完成,总计数值是:256*8=2048;计数值为2048次,而Flash块只擦除了一次。
3.根据权利要求1所述的利用有限Flash空间实现百万级别的计数的方法,其特征在于,所述步骤S2中A的偏移地址为KP,则A的第一个单元地址为0x00(0),A的最后一个单元地址为0xFF(255)。
4.根据权利要求1所述的利用有限Flash空间实现百万级别的计数的方法,其特征在于,根据所述步骤S5中Flash块的擦除次数的计数值EX,得到当前计数总数,当前字节数据为0xFF,则当前计数总数=EX*2048+KP*8,当前字节数据为0x00,则当前计数总数=EX*2048+KP*8+当前自己的计数(1~7)。
5.根据权利要求1所述的利用有限Flash空间实现百万级别的计数的方法,其特征在于,所述步骤S2中把0地址的数据的Bit到Bit7写成0:对应的数据就是0对应0xFF,1对应0xFE,2对应0xFC,3对应0xF8,4对应0xF0,5对应0xE0,6对应0xC0,7对应0x80,8对应0x00,表示该字节数据以用完,每计数一次,对A[0]的Bit0~Bit7依次写0,这样,一个字节(8位)可以计8个数,当A[0]字节全0后,实际计数值是8。
6.根据权利要求1所述的利用有限Flash空间实现百万级别的计数的方法,其特征在于,所述步骤S4中需要对A进行擦除方可进行下一轮的计数;为了知道A的Flash块进行了多少次的擦除,也就是计了多少个2048的数值,我们将该擦除的次数记录到B-Flash数据块中,记录的方式和A的类似,也是从B[i](i=0~n-1)的Bit0~Bit7依次设置0,这样,B数据块有多少个0,则表示A擦除了多少次。
7.根据权利要求1所述的利用有限Flash空间实现百万级别的计数的方法,其特征在于,所述步骤S1中设定一个大小为n字节的数据块,n的大小可以根据实际需要的最大计数值来决定。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市迈斯威志科技有限公司,未经深圳市迈斯威志科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310171937.4/1.html,转载请声明来源钻瓜专利网。