一种操作Flash的方法和装置制造方法及图纸

技术编号:5166465 阅读:195 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及数据存储技术领域,公开了一种操作Flash的方法和装置,该方法包括:接收到写操作指令时确定写操作指向的逻辑页;查找该逻辑页在映射表中的第一映射页,该映射表用于建立逻辑页与映射页的映射关系;根据第一映射页中数据组织要写入的数据;从对映射区划分得到的页中,选取除指定页外的空闲页作为第二映射页,并在第二映射页上写入要写入的数据;将映射表中写操作指向的逻辑页的第一映射页修改为第二映射页。本发明专利技术优化了现有智能卡对扇区划分较大、用户区较小的片内Flash操作,减少了擦除操作次数,提高了Flash寿命及读取速度。

【技术实现步骤摘要】

本专利技术涉及数据存储
,尤其涉及一种操作Flash的方法和装置。
技术介绍
闪存Flash在没有电流供应的条件下也能够长久地保存数据,其存储特性相当于 硬盘,这项特性使得Flash成为各类便携型数字设备使用的存储介质。闪存Flash通常情况下被划分为多个扇区,多个字节为一页,因此每个扇区包括 多个页。对Flash进行读写时,以页为单位进行操作。在要写入数据的页为不可用状态如 被其它文件数据占用时,对该页执行擦除操作,在Flash中无空闲页或空闲页不够时,以扇 区为单位执行擦除操作,因此是以扇区为单位的回收机制。通常情况下便携型数字设备使用的Flash容量比较小,因此扇区也比较小。如智 能卡芯片内部的Flash大小一般在256k以内,其扇区均在512字节以内,有64字节/128 字节/256字节/512字节四种。对于这种小容量Flash的操作方式都是直接对其物理地址 进行操作,具体为在执行写操作时,根据维护的页信息表,获取要写入数据的页是否为空闲页,其中 要写入数据的页是由操作系统根据特定规则确定的;在要写入数据的页为空闲页时,根据该页物理地址将要写入的数据写入;在要写 入本文档来自技高网...

【技术保护点】
一种操作Flash的方法,其特征在于,该方法包括:  接收到写操作指令时确定写操作指向的逻辑页;  查找所述写操作指向的逻辑页在映射表中的第一映射页,所述映射表用于建立逻辑页与映射页的映射关系;  根据写操作指令及查找到的第一映射页中的数据组织要写入的数据;  从对映射区划分得到的页中,选取除指定页外的空闲页作为第二映射页,并在所述第二映射页上写入要写入的数据,所述指定页为在映射区中指定的一个空闲页;  将映射表中写操作指向的逻辑页的第一映射页,修改为所述第二映射页。

【技术特征摘要】
一种操作Flash的方法,其特征在于,该方法包括接收到写操作指令时确定写操作指向的逻辑页;查找所述写操作指向的逻辑页在映射表中的第一映射页,所述映射表用于建立逻辑页与映射页的映射关系;根据写操作指令及查找到的第一映射页中的数据组织要写入的数据;从对映射区划分得到的页中,选取除指定页外的空闲页作为第二映射页,并在所述第二映射页上写入要写入的数据,所述指定页为在映射区中指定的一个空闲页;将映射表中写操作指向的逻辑页的第一映射页,修改为所述第二映射页。2.如权利要求1所述的方法,其特征在于,该方法还包括在初始化时,所有用户区逻 辑页映射到映射区空闲页中同一指定页。3.如权利要求1所述的方法,其特征在于,所述映射表还包括第一字段和第二字段,所 述第一字段用于标识无效或有效,所述第二字段用于标识映射表的流水号,写操作时使用 的映射表为第一字段标识为有效的映射表,在所述第二映射页上写入要写入的数据时,还 包括新建一映射表,将第一字段标识为有效的映射表中除第一字段以外内容复制到新建映 射表中,并将新建映射表中第二字段加一;将映射表中写操作指向的逻辑页的第一映射页,修改为第二映射页,包括 在所述第二映射页上写入要写入的数据之后,将新建映射表中写操作指向的逻辑页的 第一映射页,修改为所述第二映射页;在新建映射表中写入标识为有效的第一字段,依据流水号将前一映射表中的第一字段 标识修改为无效。4.如权利要求3所述的方法,其特征在于,在断电再次上电后接收到写操作指令时,还 包括确定写操作中使用的映射表的步骤,具体包括依据流水号查找两个最新建立的映射表;在这两个映射表中 较老的映射表中第一字段标识为无效,且较新的映射表中第一字段标识为有效时,确 定较新的映射表为写操作使用的映射表;两个映射表中第一字段均标识为有效,确定较新的映射表为写操作使用的映射表,并 将较老的映射表第一字段修改为无效;较老的映射表中第一字段标识为有效,且较新的映射表中第一字段未填写时,确定较 老的映射表为写操作使用的映射表。5.如权利要求1所述的方法,其特征在于,所述映射区中空闲页的确定包括将映射区中在页信息表中标识为空闲页,且未在映射表中作为映射页的页,确定为映 射区中的空闲页,所述页信息表用于标识页的使用信息,所标识的页的使用信息通过上电 时遍历映射区获得,随着页的使用及而更新。6.如权利要求1所述的方法,其特征在于,所述映射表还包括第三字段,所述第三字段 用于记录初始化时所有逻辑页映射到的指定页,还包括接收到删除操作指令时,确定删除操作指向的逻辑页; 查找删除操作指向的逻辑页在映射表中的第一映射页; 在查找到的第一映射页中写入使该第一映射页视为空闲页的数据;将映射表中删除操作指向的逻辑页的第一映射页,修改为所述映射表中第三字段记录 的指定页。7.如权利要求1 6任一所述的方法,其特征在于,所述写操作指令中包括至少一次写 操作,上述确定写操作指向的逻辑页到组织要写入的数据的步骤完成一次写操作;执行完写操作指令中的所有写操作后,从对所述映射区划分得到的页中,选取除指定 页外的空闲页作为第二映射页。8.如权利要求7所述的方法,其特征在于,每次执行写操作时,确定RAM中是否记录有此次写操作指向的逻辑页,若未记录,则查 找此次写操作指向的逻辑页在RAM中缓存的映射表中的第一映射页,根据第一映射页中数 据及写操作指令,在RAM中组织此次写操作要写入的数据,并在RAM中记录此次写操作指向 的逻辑页;确定RAM中记录有此次写操作指向的逻辑页时,根据在RAM中查找到的记录该逻辑页 时所缓存的要写入的数据,重新组织此次写操作写入的数据;执行完写操作指令中的所有写操作后,根据所记录的不同逻辑页的数目,从映射区中 选取不同逻辑页的数目个除指定页外的空闲页作为第二映射页;将每次写操作在RAM中缓存的组织好数据写入一个空闲的第二映射页,并在映射表区 的新建映射表及RAM中缓存的映射表中,将此次写操作指向的逻辑页的第一映射页,修改 为写入此次写操作要写入的数据的第二映射页;清空执行所述写操作指令中写操作时在RAM中缓存的要写入的数据和记录的逻辑页, 发送指令返回码指示写操作指令执行完毕。9.如权利要求2所述的方法,其特征在于,初始化时所有逻辑页映射的同一指定页为 对Flash中用户区划分得到的第一个扇区的第一页。10.如权利要求1 6任一所述的方法,其特征在于,还包括 接收到读操作指令时确定读操作指向的逻辑页;查找读操作指向的逻辑页在映射表中的第一映射页; 根据所述读操作指令在所述第一映射页的相应位置读取数据。11.一种操作Flash的装置,其特征在于,包括写逻辑页确定单元,用于接收到写操作指令时确定写操作指向的逻...

【专利技术属性】
技术研发人员:孙婉丽张楠粟超
申请(专利权)人:北京握奇数据系统有限公司
类型:发明
国别省市:11[]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1