一种提高Flash擦写寿命的方法_2

文档序号:8942761阅读:来源:国知局
述位偏移寻址信息和擦除次数信息共同存储于Flash扇区的最后一个子块中,并进行实时更新;
[0033]所述字节偏移寻址信息占用2个字节,每个字节8位,每一位对应当前位偏移寻址信息中各个字节的状态:所述字节偏移寻址信息中,某一位的值为1,表示该位所对应位偏移寻址信息的字节为未写过或擦除后未写过数据的状态;所述字节偏移寻址信息中,某一位的值为0,表示该位所对应位偏移寻址信息的字节为已写过数据但未擦除的状态。本例中,字节偏移寻址信息中字节I的bito位对应位偏移寻址信息中字节I的状态,字节偏移寻址信息中字节I的bitl位对应位偏移寻址信息中字节2的状态,依次顺序类推,将字节偏移寻址信息中各个位分别与位偏移寻址信息中各个字节一一对应。
[0034]读/写操作时获取当前状态下字节偏移寻址信息和擦除次数信息,并根据字节偏移寻址信息中各个位的值获得其所对应位偏移寻址信息中各个字节的状态,然后结合当前操作和位偏移寻址信息中各个字节的状态,选择获取其中至少一个字节的位偏移寻址信息,最后根据选择的位偏移寻址信息进行读/写操作。写操作时,按照子块1、子块2...子块127的顺序依次进行;读操作时,则仅读取最新的数据,即若当前仅子块1-子块20为写过数据状态,则读取子块20内的数据。
[0035]具体来说,读操作时,首先获取当前状态下字节偏移寻址信息和擦除次数信息,然后获取字节偏移寻址信息中最后一个值为O的位所对应字节的位偏移寻址信息,最后对所获取的位偏移寻址信息中最后一个值为O的位所对应的子块进行读操作;写操作时,首先获取当前状态下字节偏移寻址信息和擦除次数信息,其次获取字节偏移寻址信息中最后一个值为O的位所对应字节的位偏移寻址信息,然后获取所得位偏移寻址信息中最后一个值为O的位所对应子块的地址,最后对所得地址加I后对应的子块进行写操作。读写操作时调用同一函数,程序实现起来简单,函数复用性好。
[0036]如果子块地址指向子块I一子块127中的任意一块,就对该子块进行写操作,并更新寻址信息。
[0037]如果子块地址指向子块128,存储寻址和擦除信息的子块,说明整个Flash扇区已写满。对整个Flash扇区擦除,将要写入的信息写入子块1,并更新寻址信息,更新擦除次数信息,即擦除次数+1。
【主权项】
1.一种提高Flash擦写寿命的方法,其特征在于包括: 将每个Flash扇区分为128个子块,根据当前各子块的读写状态建立对应的位偏移寻址信息和擦除次数信息,将所述位偏移寻址信息和擦除次数信息存储于任意一个子块中,并对其进行实时更新;所述位偏移寻址信息占用16个字节,每个字节8位,每一位对应当前Flash扇区的一个子块的状态;读/写操作时获取当前状态下的位偏移寻址信息和擦除次数信息,并根据该位偏移寻址信息对各子块进行读/写;读/写规则为,对于已写过数据但未擦除的子块,不再进行写操作;对于未写过或擦除后未写过数据的子块,不进行读操作。2.根据权利要求1所述的提高Flash擦写寿命的方法,其特征在于,所述位偏移寻址信息中每一位对应当前Flash扇区的一个子块的状态,具体为: 所述位偏移寻址信息中,某一位的值为I,表示该位所对应子块为未写过或擦除后未写过数据的状态; 所述位偏移寻址信息中,某一位的值为O,表示该位所对应子块为已写过数据但未擦除的状态。3.根据权利要求2所述的提高Flash擦写寿命的方法,其特征在于,所述方法还包括: 根据当前状态下的位偏移寻址信息建立对应的字节偏移寻址信息,将其与所述位偏移寻址信息和擦除次数信息共同存储于任意一个子块中,并进行实时更新;所述字节偏移寻址信息占用2个字节,每个字节8位,每一位对应当前位偏移寻址信息中各个字节的状态;读/写操作时获取当前状态下字节偏移寻址信息和擦除次数信息,并根据字节偏移寻址信息中各个位的值获得其所对应位偏移寻址信息中各个字节的状态,然后结合当前操作和位偏移寻址信息中各个字节的状态,选择获取其中至少一个字节的位偏移寻址信息,最后根据选择的位偏移寻址信息进行读/写操作。4.根据权利要求3所述的提高Flash擦写寿命的方法,其特征在于,所述字节偏移寻址信息中每一位对应当前位偏移寻址信息中各个字节的状态,具体为: 所述字节偏移寻址信息中,某一位的值为1,表示该位所对应位偏移寻址信息的字节为未写过或擦除后未写过数据的状态; 所述字节偏移寻址信息中,某一位的值为O,表示该位所对应位偏移寻址信息的字节为已写过数据但未擦除的状态。5.根据权利要求4所述的提高Flash擦写寿命的方法,其特征在于: 读操作时,首先获取当前状态下字节偏移寻址信息和擦除次数信息,然后获取字节偏移寻址信息中最后一个值为O的位所对应字节的位偏移寻址信息,最后对所获取的位偏移寻址信息中最后一个值为O的位所对应的子块进行读操作。6.根据权利要求4所述的提高Flash擦写寿命的方法,其特征在于: 写操作时,首先获取当前状态下字节偏移寻址信息和擦除次数信息,其次获取字节偏移寻址信息中最后一个值为O的位所对应字节的位偏移寻址信息,然后获取所得位偏移寻址信息中最后一个值为O的位所对应子块的地址,最后对所得地址加I后对应的子块进行写操作。7.根据权利要求3或4或5或6所述的提高Flash擦写寿命的方法,其特征在于:所述位偏移寻址信息、字节偏移寻址信息和擦除次数信息均存储于Flash扇区的最后一个子块中。8.根据权利要求1或2或3或4或5或6所述的提高Flash擦写寿命的方法,其特征在于:所述擦除次数信息为单个独立的Flash扇区的总擦除次数。
【专利摘要】发明涉及一种提高Flash擦写寿命的方法。目的在于提供一种能够提高Flash介质擦写寿命的方法。方案:将每个Flash扇区分为128个子块,根据当前各子块的读写状态建立对应的位偏移寻址信息和擦除次数信息,将位偏移寻址信息和擦除次数信息存储于任意一个子块中,并对其进行实时更新;位偏移寻址信息占用16个字节,每个字节8位,每一位对应当前Flash扇区的一个子块的状态;读/写操作时获取当前状态下的位偏移寻址信息和擦除次数信息,根据该位偏移寻址信息对各子块进行读/写;读/写规则为,对于已写过数据但未擦除的子块,不再进行写操作;对于未写过或擦除后未写过数据的子块,不进行读操作。发明主要用于智能电子产品。
【IPC分类】G06F3/06
【公开号】CN105159601
【申请号】CN201510482615
【发明人】周良璋, 汪烈华, 侯培民, 程波, 张明, 舒元康
【申请人】杭州海兴电力科技股份有限公司
【公开日】2015年12月16日
【申请日】2015年8月7日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1