闪存数据的存取方法及其储存系统与控制系统技术方案

技术编号:3777399 阅读:147 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种闪存数据的存取方法及其储存系统与控制系统,用以在闪存芯片的多个实体区块的多个实体页地址中写入数据。此数据存取方法包括提供主机系统多个逻辑页地址,建立逻辑页转实体页对映表与实体页转逻辑页对映表以记录逻辑页地址与实体页地址的对映。此数据存取方法也包括当主机系统写入数据至逻辑页地址时,在实体页地址中写入数据,并且更新逻辑页转实体页对映表与实体页转逻辑页对映表。此数据存取方法亦包括比对逻辑页转实体页对映表与实体页转逻辑页对映表来判断已写入数据的实体页地址之中无效的实体页地址与有效的实体页地址。

【技术实现步骤摘要】

本专利技术是有关于一种用于闪存的数据存取方法及使用此方法的闪存储存系统与闪存控制器。
技术介绍
数字相机、手机相机与MP3在这几年来的成长十分迅速,使得消费者对储存媒体的需求也急速增加。由于闪存(Flash Memory)具有数据非易失性、省电、体积小与无机械结构等的特性,适合可携式应用,最适合使用于这类可携式由电池供电的产品上。固态硬盘就是一种以NAND闪存作为储存媒体的储存装置。 —般来说,闪存储存系统的闪存芯片(chip)会划分为多个实体区块,其中实体区块更划分为多个页,而实体区块是闪存的抹除单位并且页是闪存的写入单位。由于在程序化闪存的记忆单元时,仅能执行单向的程序化(即,仅能将记忆单元的值由1程序化为0),因此无法对已程序化的页(B卩,存有旧数据的页)直接进行写入,而是必须先将此页抹除后方可重新程序化。特别是,由于闪存的抹除是以实体区块为单位,因此当欲将存有旧数据的页执行抹除运作时,必须对此页所属的整个实体区块进行抹除。因此,传统上闪存的写入机制会以实体区块为基础来进行。例如,在传统写入方法中会将此些实体区块会界定为数据区(data area)与备用区(spare area),其中归类为数据区的实体区块中会储存由写入指令所写入的有效数据,而备用区中的实体区块是用以在执行写入指令时替换数据区中的实体区块。具体来说,当闪存储存系统接受到主机系统的写入指令而欲对数据区的实体区块进行写入时,闪存储存系统会从备用区中提取实体区块并且将在数据区中欲更新的实体区块中的有效旧数据与欲写入的新数据写入至从备用区中提取的实体区块并且将已写入新数据的实体区块关联为数据区,并且将原本数据区的实体区块进行抹除并关联为备用区。为了能够让主机系统能够顺利地存取以轮替方式储存数据的实体区块,闪存储存系统会配置逻辑区块以供主机系统进行存取,其中逻辑区块是根据实体区块以一个或多个实体区块的大小来配置。也就是说,闪存储存系统会建立逻辑区块-实体区块对映表(logicalblock-physical block mapping table),并且在此表中记录与更新逻辑区块与数据区的实体区块之间的对映关系来反映实体区块的轮替,所以主机系统仅需要针对所提供逻辑区块进行存取而闪存储存系统会依据逻辑区块_实体区块对映表来对所对映的实体区块进行实际地读取或写入数据。 因此当主机系统仅更新一个逻辑区块中的一部分数据时,上述数据存取方法除了写入新数据的动作之外还必须包括搬移实体区块内的有效旧数据的动作。特别是,当更新的数据量越小,致使所需要搬移的有效旧数据量越多时,完成上述写入动作的所需时间会大幅的增加。特别是,目前计算机发展的趋势已逐渐将闪存(即,固态硬盘)作为计算机系统的主硬盘,同时计算机操作系统具有频繁地更新少量数据的特性,因此闪存芯片的写入速度将严重影响整体计算机系统的运作效率。因此,有需要发展一套可减少数据搬移的数据存取方法,以提升写入数据至闪存的速度。
技术实现思路
本专利技术提供一种数据存取方法,其能够在写入数据至闪存芯片时减少数据搬移动 作,进而提升闪存的数据写入速度。 本专利技术提供一种控制器系统,其能够在写入数据至闪存芯片时减少数据搬移动 作,进而提升闪存的数据写入速度。 本专利技术提供一种闪存储存系统,其在写入数据时可减少数据搬移动作,进而提升 闪存的数据写入速度。 本专利技术提出一种数据存取方法,其是由一闪存控制器执行以在至少一闪存芯片的 多个实体区块的多个实体页地址(physical page address)中写入数据。此数据存取方 法包括提供主机系统多个逻辑页地址(logical page address),建立逻辑页转实体页对映 表(logical page to physical page mapping table)以分另U土也记录逻车茸页t也址所X寸映的 实体页地址,以及建立实体页转逻辑页对映表(physicalpage to logical page m即ping table)以分别地记录实体页地址所对映的逻辑页地址。此数据存取方法也包括从此主机 系统接收一欲写入数据及一欲写入逻辑页地址;写入此欲写入数据于一实体页地址;在上 述逻辑页转实体页对映表中更新此欲写入逻辑页地址是对映写入此数据的实体页地址;并 且在上述实体页转逻辑页对映表中更新写入此欲写入数据的实体页地址是对映此欲写入 逻辑页地址。此数据存取方法亦包括比对逻辑页转实体页对映表与实体页转逻辑页对映表 来判断已写入数据的实体页地址之中无效的实体页地址与有效的实体页地址。 在本专利技术的一实施例中,上述的数据存取方法更包括建立实体区块无效页地址计 数表以记录每一实体区块中无效的实体页地址的数目,以及在此实体区块无效页地址计数 表中更新在上述欲写入逻辑页地址原始对映的实体页地址中无效的实体页地址的数目。 在本专利技术的一实施例中,上述的数据存取方法更包括建立实体区块有效页地址计 数表以记录每一实体区块中有效的实体页地址的数目,以及在此实体区块有效页地址计数 表中更新在上述欲写入逻辑页地址原始对映的实体页地址中有效的实体页地址的数目。 在本专利技术的一实施例中,上述的数据存取方法更包括判断未写入数据的该些实体 区块的数目是否少于一无数据实体区块数门槛值,其中当未写入数据的实体区块的数目少 于此无数据实体区块数门槛值时,则执行一无效数据抹除程序,其中此无效数据抹除程序 包括依据上述实体区块无效页地址计数表从已写入数据的实体区块之中选择至少一第一 实体区块;从未写入数据的实体区块之中选择至少一第二实体区块;将此第一实体区块中 有效的实体页地址中的数据复制至属于第二实体区块的实体页地址中;更新上述逻辑页转 实体页对映表、实体页转逻辑页对映表与实体区块无效页地址计数表;以及抹除此第一实 体区块。 在本专利技术的一实施例中,其中在已写入数据的实体区块之中上述第一实体区块存 有最少数目的有效的实体页地址。 在本专利技术的一实施例中,上述的数据存取方法更包括建立一无数据实体区块管理 表,以记录未写入数据的实体区块。 在本专利技术的一实施例中,上述的比对该逻辑页转实体页对映表与该实体页转逻辑 页对映表判断已写入数据的该些实体页地址之中无效的该些实体页地址与有效的该些实体页地址的步骤包括从实体页面地址之中选择一待判断实体页地址;依据实体页转逻辑 页对映表查询待判断实体页地址对映的逻辑页地址;依据逻辑页转实体页对映表查询所 对映的逻辑页地址对映的实体页地址;判断所查询的实体页地址是否相同于待测实体页地 址。在此判断中倘若所查询的实体页地址相同于待测实体页地址,则待判断实体页地址为 有效,并且倘若所查询的实体页地址不同于待测实体页地址,则待判断实体页地址为无效。 在本专利技术的一实施例中,上述的数据存取方法更包括依据上述实体区块无效页地 址计数表判断在已写入数据的实体区块之中至少一第一实体区块内无效的实体页地址占 其所有实体页地址的比例是否超过一无效实体页地址门槛值,其中当此第一实体区块内无 效的实体页地址占其所有实体页地址的比例超过此无效实体页地址门槛值时,则执行一无 效数据抹除程序,其中此无效数据抹除程序包括从未写入数据的实体区块之中选择至少 一第二实体区块;将此第一实体区块中有效的该些实体页地址本文档来自技高网
...

【技术保护点】
一种数据存取方法,其由一闪存控制器执行以在至少一闪存芯片的多个实体区块的多个实体页地址中存取数据,该数据存取方法包括:提供多个逻辑页地址,以供一主机系统存取;建立一逻辑页转实体页对映表以分别地记录该些逻辑页地址所对映的该些实体页地址;建立一实体页转逻辑页对映表以分别地记录该些实体页地址所对映的该些逻辑页地址;从该主机系统接收一欲写入数据及一欲写入逻辑页地址,写入该欲写入数据于一实体页地址,并在该逻辑页转实体页对映表中更新该欲写入逻辑页地址是对映写入该数据的实体页地址,并且在该实体页转逻辑页对映表中更新写入该欲写入数据的实体页地址是对映该欲写入逻辑页地址;以及比对该逻辑页转实体页对映表与该实体页转逻辑页对映表判断已写入数据的该些实体页地址之中无效的该些实体页地址与有效的该些实体页地址。

【技术特征摘要】

【专利技术属性】
技术研发人员:朱健华
申请(专利权)人:群联电子股份有限公司
类型:发明
国别省市:71[中国|台湾]

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

1