专利名称:存储方法及存储设备的制作方法
技术领域:
本发明涉及存储技术领域,特别涉及半导体存储设备中的数据存储技术。
背景技术:
半导体存储设备,例如闪存设备,一般包含至少一个闪存存储介质。为了便于对存 储介质的数据进行管理,可将存储介质的逻辑空间划分为多个大小相等的区域,称为逻辑 块(该逻辑块有多个逻辑页)。每个区域的大小就是逻辑块的逻辑容量。通常每个逻辑块 对应一个物理块。 一逻辑块逻辑容量的大小等于一物理块的大小。但是,根据存储介质的 特性,在对存储介质进行写数据时,一个逻辑块可以对应多个物理块。其中,逻辑块与物理 块之间的对应关系是通过在逻辑块与物理块之间建立映射关系(即逻辑块的逻辑地址与 物理块的物理地址之间的映射关系)形成的。外部设备可通过该映射关系对存储介质进行 读写操作。 为提高存储介质的存取速度,在存储介质中,会保留一定数量的未记录有数据的 物理块(即空块)不建立与逻辑块的映射关系。这部分未建立映射关系的空块的信息构成 一个集合,称为空块池。空块池中包含了这些空块的数量及空块的物理地址等。半导体存 储设备在使用之前,空块池存储在存储介质中。半导体存储设备在使用时,可调用该空块池 记录的空块信息。 为使空块池中记录的空块保持预定的数量,现有的方法是在空块池中的空块不足 时将已用物理块中的内容擦除而成为空块,然后将该空块的物理地址等信息记录到空块池 中。当这些已用物理块中包含储存了有效数据的页(简称有效页)时,则需将有效页中的 数据搬迁到其它物理块,再将该已用物理块擦除成为空块,并将该空块的信息保存在空块 池中。这个过程在本申请中简称为"空块回收"。由于回收需要数据搬迁(数据搬迁占用时 间比较长),如果在数据写入过程中需要回收空块,则会造成存储介质的写入速度慢。另外, 回收次数过多也会导致存储介质的使用寿命减少。
发明内容
本发明的目的是提供一种存储方法及存储设备,以减少回收次数,并提高存储介 质的写入速度。 根据本发明的一个方面,提供一种存储方法,用于存储设备,所述存储设备包括半 导体存储介质,并设有空块池,所述方法包括如果对所述半导体存储介质写数据的操作满 足以下条件 1)从一逻辑块的起始页开始写数据,和2)要写入的数据大于或等于该逻辑块的 逻辑容量,则建立该逻辑块与所述空块池中记录的空块之间的映射关系;和根据所述映射 关系将数据写到该空块。 根据本发明的另一个方面,还提供一种存储设备,包括半导体存储介质及控制半 导体存储介质读写的控制单元,存储设备设置有空块池。控制单元包括判断模块,判断对
3半导体存储介质写数据的操作是否满足以下条件1)从一逻辑块的起始页开始写数据,以 及2)要写入的数据大于或等于该逻辑块逻辑容量,写控制模块,在判断模块确定写数据的 操作满足上述条件时,将数据写入空块池记录的空块中。 根据本发明,可以减少空块回收的频率,提高存储介质的写入速度,延长存储介质 的使用寿命。
图1是本发明一实施例数据存储系统的结构框图。
图2是图1所示系统中写数据控制模块的结构框图。
图3是图1所示系统中空块池管理模块的结构框图。
图4是本发明一实施例数据存储方法的流程示意图。 图5是图4所示方法中读取一空块的信息,建立该逻辑块与空块之间的逻辑物理 映射关系的流程示意图。
具体实施例方式
本发明目的、功能及优点将结合实施例,参照附图做进一步说明。 如图1所示, 一种存储系统,可包括存储设备2及与存储设备2连接的外部设备1 。
外部设备1可包括计算机,读卡器等。存储设备2可包括半导体存储介质21及控制半导体
存储介质21读写的控制单元20。半导体存储介质21设置有空块池211。半导体存储介质
21可包括闪存存储介质等。 控制单元20可包括判断模块201及写控制模块202。 判断模块201判断对半导体存储介质21写数据的操作是否满足以下条件
1)从一逻辑块的起始页开始写数据,以及
2)要写入的数据大于或等于该逻辑块逻辑容量。 写控制模块202,在判断模块201确定写数据的操作满足上述条件时,读取空块池 211中一空块的物理地址信息以将数据写到该空块。 在对半导体存储介质21进行写操作时,判断模块201除判断写操作是否满足以上 条件之外,还判断与逻辑块建立映射关系的物理块的至少一物理页是否已被写数据,若没 有被写数据,则可通过写控制模块202,直接向物理块写数据(这样就无需使用空块池211 中的空块,写入速度比较快)。若已被写数据,则通过写控制模块202读取空块池211中一 空块的物理地址信息以将数据写到该空块。 如图2所示,写控制模块202可包括空块池211管理模块2021和写数据模块2022。 空块池211管理模块2021在从空块池211中读取了一空块的物理地址信息后,建立该空块 与该逻辑块的逻辑物理映射关系,将数据写入该空块。写数据模块2022根据该空块与该逻 辑块的映射关系,将数据写入该空块。 如图3所示,空块池211管理模块2021可包括读取模块20211和回收模块20212。 读取模块20211在从空块池211中读取了一空块的物理地址信息后,建立该空块与该逻辑 块的逻辑物理映射关系。回收模块20212在数据写到空块以后,擦除先前与该逻辑块建立 映射关系的物理块,将擦除的物理块的物理地址信息记录到空块池211中。通过直接擦除废弃的物理块,并将擦除的物理块的物理地址信息记录到半导体存储介质21的空块池 211,可以增加空块池211中空块的个数,避免了数据的搬迁。 回收模块20212,还判断半导体存储介质21的空块池211中的空块数量是否低于 一预设值(预设值可根据实际需要进行设定)。若是,将进行空块回收,从而增加空块池211 中空块的个数。 如图4所示,一种数据存储方法的流程,可包括
步骤Sl,在进行数据写入时,判断写入操作是否满足如下条件
1)从半导体存储介质21 —逻辑块的起始页开始写数据,禾口
2)要写入的数据大于或等于该逻辑块的逻辑容量, 如果上述条件都满足,则从半导体存储介质21的空块池211中读取一空块的信
息,建立该逻辑块与空块之间的逻辑物理映射关系。 步骤S2,根据该映射关系将数据写到该空块。 步骤S3,擦除先前与该逻辑块建立映射关系的物理块,将擦除的物理块的物理地 址信息记录到空块池211。 根据以上的处理过程,在对半导体存储介质21—逻辑块写数据的过程中,实际上 是对一个物理块完整地写入(避免了在对一逻辑块写数据的过程中,需要占用多个物理块 情况的发生)。在将数据写到空块后,通过直接擦除原有的与该逻辑块建立映射关系的物理 块,并将擦除的物理块的物理地址信息记录到空块池211的方式,可以增加空块池211中空 块的个数,减少空块回收处理过程中的数据搬迁,提高半导体存储介质21的写速度和使用 寿命。 如图5所示,从半导体存储介质21的空块池211中读取一空块的信息,建立该逻 辑块与空块之间的映射关系的流程,可包括 步骤Sll,判断要写入半导体存储介质21的数据是否从一逻辑块的起始页开始写 数据,是否大于或等于该逻辑块的逻辑容量。若是,执行步骤S12 ;若否,执行步骤S13。
步骤S13,将数据写入该逻辑块对应的物理块。 步骤S14,从空块池211中读取一空块的物理地址信息,建立该逻辑块与空块之间 的映射关系。 步骤S15,根据建立的映射关系将数据写到该空块。 其中,在步骤Sll和步骤S14之间还包括步骤S12,判断该逻辑块对应的物理块是 否为空块。若是,执行步骤S13,此步骤无需使用空块池211中的空块,直接向逻辑块对应的 物理块写数据;若否,执行步骤S14。 其中,在步骤S12和步骤S14之间还可包括步骤S121,判断空块池211中的空块是 否不足。若是,则执行步骤S122,即将至少一逻辑块对应的且存在无效数据的物理块回收。 若否,则执行步骤S14。 上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的 限制,其他的任何未背离本发的精神实质与原理下所作的改变、修饰、替代、组合、简化,均 应为等效的置换方式,都包含在本发明的保护范围之内。
权利要求
一种存储方法,用于存储设备,所述存储设备包括半导体存储介质,并设有空块池,其特征在于,所述方法包括如果对所述半导体存储介质写数据的操作满足以下条件1)从一逻辑块的起始页开始写数据,和2)要写入的数据大于或等于该逻辑块的逻辑容量,则建立该逻辑块与所述空块池中记录的空块之间的映射关系;和根据所述映射关系将数据写到该空块。
2. 根据权利要求1所述的方法,其特征在于,还包括判断对所述半导体存储介质写数据的操作是否满足与所述逻辑块建立映射关系的物理块的至少一物理页已被写数据。
3. 根据权利要求1或2所述的方法,其特征在于,还包括在将数据写到所述空块后,擦除先前与该逻辑块建立映射关系的物理块,将擦除的物理块的物理地址信息记录到空块池。
4. 根据权利要求1或2所述的方法,其特征在于,还包括在所述空块池中记录的空块数量低于预设值时,进行空块回收。
5. —种存储设备,包括半导体存储介质及控制半导体存储介质读写的控制单元,所述存储设备还设有空块池,所述控制单元包括判断模块,判断对所述半导体存储介质写数据的操作是否满足以下条件1) 从一逻辑块的起始页开始写数据,以及2) 要写入的数据大于或等于该逻辑块逻辑容量,写控制模块,在所述判断模块确定所述写数据的操作满足上述条件时,将数据写到所述空块池中记录的一空块中。
6. 根据权利要求5所述的设备,其特征在于,所述判断模块还判断对所述半导体存储介质写数据的操作是否满足与所述逻辑块建立映射关系的物理块的至少一物理页已被写数据。
7. 根据权利要求5或6所述的设备,其特征在于,其中所述写控制模块包括空块池管理模块,在从所述空块池中读取了一空块的物理地址信息后,建立该空块与所述逻辑块的映射关系,以及写数据模块,根据该空块与所述逻辑块的映射关系,将数据写入该空块。
8. 根据权利要求7所述的设备,其特征在于,所述空块池管理模块包括回收模块,在数据写入所述空块后,擦除先前与所述逻辑块建立映射关系的物理块,将擦除的物理块的物理地址信息记录到所述空块池。
9. 根据权利要求8所述的设备,其特征在于当所述空块池中记录的空块数量低于预设值时,所述回收模块进行空块回收。
全文摘要
本发明提供一种存储方法,用于存储设备,所述存储设备包括半导体存储介质,并设有空块池,所述方法包括如果对所述半导体存储介质写数据的操作满足以下条件1)从一逻辑块的起始页开始写数据,和2)要写入的数据大于或等于该逻辑块的逻辑容量,则建立该逻辑块与所述空块池中记录的空块之间的映射关系;和根据所述映射关系将数据写到该空块。本发明提高了半导体存储介质的写速度和使用寿命。
文档编号G06F12/06GK101770426SQ200810187400
公开日2010年7月7日 申请日期2008年12月31日 优先权日2008年12月31日
发明者万红波, 卢赛文 申请人:深圳市朗科科技股份有限公司