与非闪存单元的数据处理方法技术

技术编号:8452756 阅读:168 留言:0更新日期:2013-03-21 13:03
本发明专利技术公开了一种与非闪存单元的数据处理方法,其包括:请求将所述存储阵列中的一个源页内的数据拷贝至一个目的页内;获取记录的源页内的数据的内拷贝次数;根据所述源页内的数据的内拷贝次数判断是采用内拷贝方式还是采用读/写方式将所述源页内的数据拷贝至所述目的页内;如果采用内拷贝方式将所述源页内的数据拷贝至所述目的页内,那么将所述目的页内的数据的内拷贝次数记录为所述源页的数据的内拷贝次数加一步长值,如果采用读/写方式将所述源页内的数据拷贝至所述目的页内,那么将所述目的页内的数据的内拷贝次数记录为一初始值。这样,既可以发挥内拷贝方式的速度快的优势,又能及时采用读/写方式打断误码的累积。

【技术实现步骤摘要】

本专利技术涉及存储器领域,尤其涉及一种。
技术介绍
Nand Flash(与非闪存)在存储器领域已经得到了广泛应用。与非闪存的存储阵列中通常包括若干个块(block),比如1024、2048、4096或其他数目个block,每个block包括有若干个页(Page),比·如128、256、512或其他数目个Page,每个page具有一定的字节数,比如256、512、1024或其他数目的字节数。与非闪存的读/写操作的最小单位是page,擦除(Erage)操作的最小单位为 block。此外,与非闪存的另一个特性为同一个page如需重复写,贝U必须擦除该page所在的整个块。需要注意的是,此处的擦除操作不同于普通应用中的删除操作,删除操作只是删除了文件链表,实际在相应的页中的数据还是存在的,这里的擦除是指将整个块的数据完全清除。在对与非闪存的实际写的过程中,为了提高速度以及有些小文件,导致不是每次都把一个块里面的所有页全写满的,这样过一段时间后,所有的块都有数据了,其实可能每个块里面还有很多的“空页”,这样形成了很多“碎片”,特别是对数据删除的操作多了之后“碎片”更容易出现。由于与非闪存采用的是块擦除操作,因此需要经常对与非闪存中的存储空间进行整理,即需要对与非闪存进行“Merge (合并)”操作。所述合并操作的一个关键步骤就是将一个源页(source page)中的数据搬运至一个目的页(destination page)中。这样,经过多次操作,可以将不同块(block)中分布的多页(page)零散有效数据,搬运到同一个块 (block)中的不同页(page)中,从而使这几个不同的块空间可以被释放。现有技术中有两种方式可以执行实现上述数据转移的操作,第一种是读/写 (Read/Write,简称R/W)方式,第二种是内拷贝(Copyback)方式。所述R/W方式就是先将与非闪存单元中的源页中的数据读取至闪存控制器中,随后利用闪存控制器中的错误校正码(Error Correcting Code,简称ECC)处理电路对读出的数据进行校正,随后所述闪存控制器再将校正后的数据写入与非闪存单元中的目的页中。很显然,这种R/W方式由于需要将数据搬移至闪存控制器而操作时间较长,效率较低。所述Copyback方式就是将与非闪存单元中的源页中的数据读入与非闪存单元中的页缓存(page register),之后再将页缓存内的数据写入与非闪存单元中的目的页内,这样相对于R/W方式,其去掉了数据读出至闪存控制器,再由闪存控制器写入的时间,因此操作时间较短,效率较高。但是,用CopyBack 方式搬移数据由于没有经过ECC处理电路的校正,因此会累积误码,数据在多次CopyBack 操作后,可能会累积更多错误而最终出错。因此,本专利技术希望提出一种改进的技术方案来克服上述技术问题。
技术实现思路
本专利技术要解决的技术问题在于提供一种,其可以发挥内拷贝方式的速度快的优势,又能及时打断误码的累积以避免错误。为了解决上述问题,根据本专利技术的一个方面,本专利技术提供了一种,该与非闪存单元内记录有其存储阵列中的各个页内的数据的内拷贝次数, 其包括请求将所述存储阵列中的一个源页内的数据拷贝至一个目的页内;获取记录的源页内的数据的内拷贝次数;根据所述源页内的数据的内拷贝次数判断是采用内拷贝方式还是采用读/写方式将所述源页内的数据拷贝至所述目的页内;如果采用内拷贝方式将所述源页内的数据拷贝至所述目的页内,那么将所述目的页内的数据的内拷贝次数记录为所述源页的数据的内拷贝次数加一步长值,如果采用读/写方式将所述源页内的数据拷贝至所述目的页内,那么将所述目的页内的数据的内拷贝次数记录为一初始值。与现有技术相比,在本专利技术中,其可以根据源页内的数据经过内拷贝次数来选择读/写方式或内拷贝方式中的一种对源页内的数据进行操作,可以发挥内拷贝方式的速度快的优势,又能及时采用读/写方式打断误码的累积。关于本专利技术的其他目的,特征以及优点,下面将结合附图在具体实施方式中详细描述。附图说明结合参考附图及接下来的详细描述,本专利技术将更容易理解,其中同样的附图标记对应同样的结构部件,其中图1为本专利技术中的与非闪存装置在一个实施例中的结构框图2为本专利技术中的存储阵列中的一个页的存储结构示例图; 图3为本专利技术中的存储有各个页内的数据的内拷贝次数的页表的示例图4为本专利技术中的在一个实施例中的流程示意图5为图4中的内拷贝步骤在一个实施例中的流程示意图;和图6为图4中的读/写步骤在一个实施例中的流程示意图。具体实施方式为使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本专利技术作进一步详细的说明。本专利技术的详细描述主要通过程序、步骤、逻辑块、过程或其他象征性的描述来呈现,其直接或间接地模拟本专利技术中的技术方案的运作。所属领域内的技术人员使用此处的这些描述和陈述向所属领域内的其他技术人员有效的介绍他们的工作本质。此处所称的“一个实施例”或“实施例”是指与所述实施例相关的特定特征、结构或特性至少可包含于本专利技术至少一个实现方式中。在本说明书中不同地方出现的“在一个实施例中”并非必须都指同一个实施例,也不必须是与其他实施例互相排斥的单独或选择实施例。此外,表示一个或多个实施例的方法、流程图或功能框图中的模块顺序并非固定的指代任何特定顺序,也不构成对本专利技术的限制。本专利技术既要利用内拷贝(Copyback)方式的速度优势,又要及时利用读/写(R/W) 方式打断误码的累积,从而可以提高与非闪存(NADN)装置中合并(Merge)操作的效率,提升整体系统的性能。图1为本专利技术中的与非闪存(NADN FLASH)装置I 00在一个实施例中的结构框图。 如图1所示,所述与非闪存装置100包括闪存控制器110和与非闪存单元120。所述闪存控制器110可以与主机进行交互,并对所述与非闪存单元120进行管理控制,所述闪存控制器110包括有错误校正码(Error Correcting Code)处理电路111。所述与非闪存单元120包括有存储阵列121和页缓存122 (pageregister)。所述存储阵列121 通常包括若干个块(block),比如1024、2048、4096或其他数目个block,每个block包括有若干个页(Page),比如128、256、512或其他数目个Page,每个page具有一定的字节数,比如256、512、1024或其他数目的字节数。图4为本专利技术中的400在一个实施例中的流程示意图。所述数据处理方法400主要用于与非闪存单元120的合并(merge)操作中,其可以将存储阵列121中的一个源页(source page)内的数据拷贝(copy)至一个目的页(destination page)内。在进行数据搬运时,需要搬出数据的页被称为源页,需要搬入数据的页被称为目的页,对于每次数据搬运,其都对应有自己的源页和目的页。如图4所示,所述数据处理方法400包括如下操作。步骤410,请求将所述存储阵列121中的一个源页内的数据拷贝至一个目的页内。所述与非闪存装置100通常与主机(比如计算机或智能手机等设备)配合使用。 在使用过程中,需要进行合并操作或其它需要将一个页内的数据搬运至另一个页的操作时本文档来自技高网
...

【技术保护点】
一种与非闪存单元的数据处理方法,其特征在于,该与非闪存单元内记录有其存储阵列中的各个页内的数据的内拷贝次数,其包括:请求将所述存储阵列中的一个源页内的数据拷贝至一个目的页内;获取记录的源页内的数据的内拷贝次数;根据所述源页内的数据的内拷贝次数判断是采用内拷贝方式还是采用读/写方式将所述源页内的数据拷贝至所述目的页内;如果采用内拷贝方式将所述源页内的数据拷贝至所述目的页内,那么将所述目的页内的数据的内拷贝次数记录为所述源页的数据的内拷贝次数加一步长值,如果采用读/写方式将所述源页内的数据拷贝至所述目的页内,那么将所述目的页内的数据的内拷贝次数记录为一初始值。

【技术特征摘要】

【专利技术属性】
技术研发人员:付建云奚靖卢丹华徐建辉麻伟建
申请(专利权)人:杭州华澜微科技有限公司
类型:发明
国别省市:

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

1