CN101727395A - 闪存设备的管理系统、方法及闪存设备 - Google Patents

闪存设备的管理系统、方法及闪存设备 Download PDF

Info

Publication number
CN101727395A
CN101727395A CN200810161900A CN200810161900A CN101727395A CN 101727395 A CN101727395 A CN 101727395A CN 200810161900 A CN200810161900 A CN 200810161900A CN 200810161900 A CN200810161900 A CN 200810161900A CN 101727395 A CN101727395 A CN 101727395A
Authority
CN
China
Prior art keywords
storage medium
data
buffer unit
flash memory
memory device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN200810161900A
Other languages
English (en)
Inventor
刘一宁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netac Technology Co Ltd
Original Assignee
Netac Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Netac Technology Co Ltd filed Critical Netac Technology Co Ltd
Priority to CN200810161900A priority Critical patent/CN101727395A/zh
Publication of CN101727395A publication Critical patent/CN101727395A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明涉及半导体存储技术领域,提供了一种闪存设备的管理系统、方法及闪存设备。所述方法基于存储介质和缓存单元实现对闪存设备的管理,包括以下步骤:A.建立所述存储介质和至少一个缓存单元之间的映射关系;B.根据所述映射关系将存储介质中的待访问数据缓存至所述缓存单元,并基于所述映射关系访问缓存单元。采用本发明提供的闪存设备的管理系统、方法及闪存设备,能提高闪存设备的寿命。

Description

闪存设备的管理系统、方法及闪存设备
技术领域
本发明涉及半导体存储技术领域,更具体地说,涉及一种闪存设备的管理系统、方法及闪存设备。
背景技术
自闪存(Flash Memory)存储介质诞生以来,由于其非易失性、高存储密度、高访问速度、体积小、低功耗、噪音低、可擦写及抗震性等众多优点,已逐渐成为存储设备等嵌入式设备的主流存储介质,其被广泛应用于闪存盘、闪存卡、电子硬盘(SSD)、手机、音频媒体播放器(MP3)、数码相机、数码摄像机、便携式媒体器(PMP)、数码相框、数字电视、GPS导航仪等设备中。
虽然闪存有诸多优点,但同硬盘、同步动态随机存取存储器(SDAM)等存储介质相比,在使用寿命和访问速度上却存在着一定的不足。由于闪存的写入操作必须在空白区域进行,如果目标区域已有数据,则必须先擦除后才能写入,因此擦除是闪存的基本操作,闪存以块为单元进行擦除,而闪存的频繁擦除次数会影响闪存的寿命。例如,SLC(Single Level Cell)闪存,其擦除次数有100000次左右。
现有的闪存设备仅有单一的存储单元,并直接对闪存介质进行访问,也有带单个缓存的闪存设备,并以页为单位管理闪存介质,建立页面地址表以将另外的页面来替换闪存介质中的缺陷页面。由于访问闪存设备时占用时间最长的是在写数据时的擦除操作,而闪存的擦除操作以块为单位进行,因此以页为单位管理闪存介质并不能有效减少擦除次数,也不能有效减少闪存设备的访问速度,从而并不能有效延长闪存设备的使用寿命。
因此需要一种新的闪存设备的管理系统、方法及闪存设备,能延长闪存设备的使用寿命。
发明内容
本发明的目的之一在于提供一种闪存设备的管理系统、方法及闪存设备,旨在解决现有技术闪存设备使用寿命短的问题。
为了实现发明目的,所述方法基于存储介质和缓存单元实现对闪存设备的管理,包括以下步骤:
A.建立所述存储介质和至少一个缓存单元之间的映射关系;
B.根据所述映射关系将存储介质中的待访问数据缓存至所述缓存单元,并基于所述映射关系访问缓存单元。
优选地,所述步骤A之前还包括:对所述存储介质及缓存单元以块为单位进行空间划分,以建立存储介质和缓存单元之间块的映射关系。
优选地,所述步骤B包括:
B1.根据所述映射关系,建立所述存储介质和缓存单元之间的地址映射表;
B2.获取待访问数据的访问地址,根据地址映射表查找所述存储介质中的待访问数据是否被缓存,若是,则执行步骤B3,否则,执行步骤B4;
B3.根据地址映射表访问缓存单元;
B4.将所述存储介质中的待访问数据进行缓存,并更新所述地址映射表,以及基于更新后的地址映射表访问缓存单元。
进一步优选地,所述步骤B4中将所述存储介质中的待访问数据进行缓存,并更新地址映射表的过程包括:
B41.查找所述缓存单元中是否有空闲数据块,若是,则执行步骤B42,否则,执行步骤B43;
B42.将存储介质中的待访问数据写入缓存单元的空闲数据块,并修改地址映射表的映射记录;
B43.查找缓存单元中的替换数据块,将存储介质中的待访问数据写入所述替换数据块中,并修改地址映射表的映射记录。
进一步优选地,所述步骤B43中将存储介质中的待访问数据写入所述替换数据块的过程包括:
B431.根据地址映射表中所述替换数据块的标记位判断是否需将替换数据块中的数据写回存储介质,若是,则执行步骤B432,否则,执行步骤B433;
B432.将所述替换数据块中的数据写回存储介质,并修改地址映射表中所述替换数据块的标记位为未使用状态;
B433.修改所述地址映射表中所述替换数据块的标记位为未使用状态;
B444.将存储介质中的待访问数据写入所述替换数据块。
优选地,所述访问缓存单元的过程包括:
b1.判断数据访问请求是读数据还是写数据,若是读数据,则执行步骤b2,若是写数据,则执行步骤b3;
b2.根据地址映射表读取缓存单元中的数据,并返回读取结果;
b3.根据地址映射表将待写数据写入缓存单元,并判断是否需要写回存储介质,若是,则执行步骤b3,否则,执行步骤b5;
b4.将待写数据写回存储介质,并修改地址映射表的标记位,以及返回写操作状态;
b5.返回写操作状态。
为了更好地实现发明目的,所述系统包括主机、与主机相连并进行数据交互的闪存设备,所述闪存设备包括控制器、与控制器相连并用于存储数据的存储介质,还包括至少一个缓存单元,所述存储介质和缓存单元之间具有映射关系,所述主机及控制器根据所述映射关系将存储介质中的待访问数据缓存至所述缓存单元,并基于所述映射关系访问缓存单元。
优选地,所述缓存单元位于闪存设备内并与所述控制器相连,或位于闪存设备外、与所述主机相连或位于主机中。
优选地,所述缓存单元包括位于闪存设备内并与所述控制器相连、和位于闪存设备外并与所述主机相连或位于主机中的至少两个缓存单元。
为了更好地实现发明目的,所述设备包括控制器、与控制器相连并用于存储数据的存储介质,还包括至少一个与所述控制器相连的缓存单元,所述存储介质与所述缓存单元之间具有映射关系,所述控制器根据所述映射关系将存储介质中的待访问数据缓存至所述缓存单元,以及基于所述映射关系访问所述缓存单元。
由上可知,本发明在闪存设备的管理过程中,在闪存设备的存储介质和至少一个缓存单元之间建立了映射关系,并根据该映射关系将闪存设备的存储介质中的待访问数据缓存至缓存单元,以及基于该映射关系访问缓存单元,从而提高了闪存设备的使用寿命;另外,由于闪存设备的存储介质及缓存单元都以块为单元进行空间划分,能有效减少对闪存设备的存储介质的擦除次数,从而提高闪存设备的使用寿命。此外,本发明所提供的缓存空间替换算法和数据访问方法能有效提高对闪存设备的访问速度。
附图说明
图1是本发明其中一个实施例中闪存设备的管理系统的结构示意图;
图2是本发明其中一个实施例中闪存设备的管理系统的结构示意图;
图3是本发明其中一个实施例中闪存设备的管理系统的结构示意图;
图4是本发明其中一个实施例中闪存设备的管理系统的结构示意图;
图5是本发明其中一个实施例中存储介质与缓存单元之间的映射关系的示意图;
图6是本发明其中一个实施例中闪存设备的结构示意图;
图7是本发明其中一个实施例中闪存设备的管理方法的流程图;
图8是本发明其中一个实施例中闪存设备的管理方法的流程图;
图9是本发明其中一个实施例中地址映射表的示意图;
图10是本发明另一个实施例中地址映射表的示意图;
图11是本发明其中一个实施例中将存储介质中的待访问数据进行缓存并更新地址映射表的流程图;
图12是本发明图11所示实施例中地址映射表的示意图;
图13是本发明另一个实施例中将存储介质中的待访问数据进行缓存并更新地址映射表的流程图;
图14是本发明图13所示实施例中地址映射表的示意图;
图15是本发明其中一个实施例中访问缓存单元的方法流程图。
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。
具体实施方式
在本发明中,通过建立闪存设备的存储介质和至少一个缓存单元之间的映射关系,并根据该映射关系将存储介质中的待访问数据缓存至缓存单元,以及基于该映射关系对缓存单元进行访问。这样,提高了闪存设备的使用寿命。
图1示出了本发明的一个实施例中闪存设备的管理系统结构,该系统包括主机100、闪存设备的存储介质200、控制器300和至少一个缓存单元400,其中:
主机100上可运行操作系统,其典型可以是个人计算机。
存储介质200,与控制器300相连,是闪存设备与主机100进行数据交换的主要存储单元,其典型可以是闪存介质。
控制器300,与主机100相连并进行数据交互,用于接收主机100发送的指令,根据存储介质200与缓存单元400之间建立的映射关系将存储介质200中的待访问数据缓存至缓存单元400,并基于该映射关系控制访问缓存单元400。
各缓存单元400,与控制器300相连,是闪存设备与主机100进行数据交换的缓冲存储单元,缓存单元400的数据传输速度大于存储介质200的传输速度,其典型可以是高速高寿命存储介质。
在一个实施例中,各缓存单元400可位于闪存设备的内部并与控制器300相连,也可位于闪存设备外并与主机100相连或位于主机100中(图中未示出)。在另一个实施例中,缓存单元400包括位于闪存设备中与控制器300相连、和位于闪存设备外并与主机相连或位于主机中的至少两个缓存单元400(图中未示出)。
图2示出了本发明的一个实施例中闪存设备的管理系统结构,需说明的是,该系统仅是本发明的一个简明系统,包括主机100、存储介质200、控制器300和缓存单元400。其中:
主机100,用于发送指令给控制器300,基于存储介质200和缓存单元400之间建立的映射关系访问缓存单元400。
控制器300,与主机100相连并进行数据交互,用于接收主机100发送的指令,根据存储介质200与缓存单元400之间建立的映射关系将存储介质200中的待访问数据缓存至缓存单元400,并基于该映射关系控制访问缓存单元400。
存储介质200和缓存单元400分别与控制器300相连,存储介质200是闪存设备的主要存储单元,其典型可以是闪存介质。缓存单元400是闪存设备的缓冲存储单元,其典型可以是高速高寿命存储介质。存储介质200的数据块与缓存单元400的数据块之间具有映射关系。
该实施例中,缓存单元400位于闪存设备的内部。在另一实施例中,缓存单元400还可以位于闪存设备的外部,与主机100相连或位于主机100中(如图3所示)。在另一实施例中,如图4所示,缓存单元400具有至少两个,其中至少一个与控制器300连接,另外至少一个与主机100连接或位于主机100中。
在一个实施例中,存储介质200和缓存单元400的存储空间是块为单位进行空间划分。图5示出了本发明的一个实施例中存储介质200和缓存单元400之间块的映射关系。从图中可以看出,存储介质200按照如下公式以块为单位进行空间划分:x=r*n*i,其中,x是存储介质200的总块数,r是存储介质200的区数,n是每个区中的组数,i是每组中的块数。缓存单元400按照如下公式以块为单位进行空间划分:m=n*i,其中,m是缓存单元400的总块数,n是缓存单元400的组数,i是每组中的块数。
根据空间划分所采用的配置参数(r,n,i值等),在存储介质200中的数据块与缓存单元400中的数据块之间建立映射关系。如图5所示,对于存储介质200的第0~r-1区,其各分组固定同缓存单元400的对应编号的分组建立映射关系。例如,存储介质200中各区的第0组固定同缓存单元400的第0组具有映射关系,可进行数据交换,存储介质200中各区的第1组固定同缓存单元400的第1组具有映射关系,可进行数据交换,依此类推。
存储介质200各组内的任一可用数据块都可以映射到缓存单元400对应映射组内的任一数据块。例如,存储介质200的第0区第0组的第0块可以映射到缓存单元400的第0组的任一数据块,而闪存单元200的第1区第0组的第1块同样可以映射到缓存单元400的第0组的任一数据块。在一个实施例中,缓存单元400中的数据块仅与存储介质200中的一个数据块建立映射关系。
应当说明的是,该系统仅仅是本发明的一个简明系统,本发明的系统还可以在该基础上进行扩展。例如,控制器300还可以连接其它功能单元,如音频输入、输出及处理单元,人机界面交互单元,时钟单元等,用于实现该系统除了进行数据交换存储的其它功能。
图6示出了本发明的一个实施例中闪存设备的结构,该闪存设备包括存储介质20、控制器30和缓存单元40。其中:
控制器30基于存储介质20和缓存单元40之间建立的映射关系控制和访问缓存单元40。
存储介质20和缓存单元40分别与控制器30相连,存储介质20是闪存设备的主要存储单元,其典型可以是但不局限于DRAM、SDRAM、DDR RAM、DDR2 RAM、DDR3 RAM、SRAM、MRAM、FRAM、PCM、SLC NAND FLASH等。缓存单元40是闪存设备的缓冲存储单元,其典型可以是但不局限于DRAM、SDRAM、DDR RAM、DDR2 RAM、DDR3 RAM、SRAM、MRAM、FRAM、PCM、SLC NAND FLASH等。在一个实施例中,缓存单元40的数据传输速度大于存储介质20的传输速度,其寿命也大于存储介质20的使用寿命。
在一个实施例中,存储介质20和缓存单元40的存储空间是以块为单位进行了空间划分。如图5所示,存储介质20按照如下公式以块为单位进行空间划分:x=r*n*i,其中,x是存储介质20的总块数,r是存储介质20的区数,n是每个区中的组数,i是每组中的块数。缓存单元40按照如下公式以块为单位进行空间划分:m=n*i,其中,m是缓存单元40的总块数,n是缓存单元40的组数,i是每组中的块数。
根据空间划分所采用的配置参数(r,n,i等),在存储介质20中的数据块与缓存单元40中的数据块之间建立映射关系。如图5所示,对于存储介质20的第0~r-1区,其各分组固定同缓存单元40的对应编号的分组建立映射关系。例如,存储介质20中各区的第0组固定同缓存单元40的第0组具有映射关系,可进行数据交换,存储介质20中各区的第1组固定同缓存单元40的第1组具有映射关系,可进行数据交换,依此类推。
存储介质20各组内的任一可用数据块都可以映射到缓存单元40对应映射组内的任一数据块。例如,存储介质20的第0区第0组的第0块可以映射到缓存单元40的第0组的任一数据块,而闪存单元20的第1区第0组的第1块同样可以映射到缓存单元40的第0组的任一数据块。在一个实施例中,缓存单元40中的数据块仅与存储介质20中的一个数据块建立映射关系。
应当说明的是,该闪存设备仅仅是发明的一个最简闪存设备,本发明还可在该基础上进行扩展。例如,闪存设备具有多个与控制器30相连的缓存单元40。另外,控制器30还可以连接其它功能单元,如音频输入、输出及处理单元,人机界面交互单元,时钟单元等,用于实现闪存设备除了进行数据交换存储的其它功能。该闪存设备还可以自带电源及电源管理单元,用于为闪存设备进行供电。
图7示出了本发明的一个实施例中闪存设备的管理方法流程,该方法基于图1所示的系统结构,具体过程如下:
在步骤S701中,建立存储介质200和至少一个缓存单元400之间的映射关系。
在步骤S702中,根据所述映射关系将存储介质200中的待访问数据缓存至缓存单元400,并基于所述映射关系访问缓存单元400。
下面以本发明的一个简明系统来对本发明的闪存设备的管理方法进行详细阐述。
图8示出了本发明的一个实施例中闪存设备的管理方法流程,具体包括以下步骤:
在步骤S801中,对闪存设备的存储介质200及缓存单元400以块为单位进行空间划分。在一个实施例中,步骤S1101的具体过程为:对存储介质200和缓存单元400以块为单位进行空间划分,如图5所示,存储介质200按照如下公式以块为单位进行空间划分:x=r*n*i,其中,x是存储介质200的总块数,r是存储介质200的区数,n是每个区中的组数,i是每组中的块数。缓存单元400按照如下公式以块为单位进行空间划分:m=n*i,其中,m是缓存单元400的总块数,n是缓存单元400的组数,i是每组中的块数。
对闪存设备的存储介质200及缓存单元400以块为单位进行了空间划分后,就可建立存储介质200和缓存单元400之间块的映射关系。
应该说明的是,利用上述公式以块为单位对存储介质200及缓存单元400进行空间划分仅仅是为了说明本发明中的闪存设备的管理方法流程,并不用于限制本发明。特别地,当i=1,n=1,r=1时(即存储介质200和缓存单元400中仅有一个数据块时),则无需对存储介质200和缓存单元400以块为单位进行空间划分。
在步骤S802中,建立存储介质200和至少一个缓存单元400之间的映射关系,并根据所述映射关系建立存储介质200和缓存单元400之间的地址映射表。在一个实施例中,步骤S802的具体过程为:
根据空间划分所采用的配置参数(r,n,i值等),在存储介质200中的数据块与缓存单元400中的数据块之间建立映射关系。如图5所示,对于存储介质200的第0~r-1区,其各分组固定同缓存单元400的对应编号的分组建立映射关系。例如,存储介质200中各区的第0组固定同缓存单元400的第0组具有映射关系,可进行数据交换,存储介质200中各区的第1组固定同缓存单元400的第1组具有映射关系,可进行数据交换,依此类推。
存储介质200各组内的任一可用数据块都可以映射到缓存单元400对应映射组内的任一数据块。例如,存储介质200的第0区第0组的第0块可以映射到缓存单元400的第0组的任一数据块,而闪存单元200的第1区第0组的第1块同样可以映射到缓存单元400的第0组的任一数据块。在一个实施例中,缓存单元400中的数据块仅与存储介质200中的一个数据块建立映射关系。
根据存储介质200和缓存单元400之间的映射关系,建立地址映射表。图9示出了本发明的一个实施例中的地址映射表,该表记录的内容包括标记位、区地址、组内块地址和缓存地址。每个缓存地址对应一个缓存数据块,根据该地址映射表就可快速查找到缓存数据块。在另一实施例中,如图10所示,也可将缓存数据块的内容直接写入地址映射表内,而省略缓存地址字段。其中:
(1)标记位:长度为l。当标记位为“0”时,表示对应的缓存数据块没有被使用;当标记位为“1”时,表示对应的缓存数据自读出后没有被修改,即缓存单元400中的缓存数据块与映射到存储介质200中的数据块的内容相同;当标记位为“2”时,表示缓存数据自读出后被修改过,即缓存单元400中的缓存数据块与存储介质200中的数据块内容不同。
(2)区地址:长度为[log2(r)],其中,r是存储介质200以块为单位进行空间划分后的区数量,[X]函数为高斯函数,其运算结果为不小于数字X的最小整数。区地址用于表示与缓存地址相对应的存储介质200以块为单位进行划分的区号。
(3)组内块地址:长度为[log2(i)],其中i是存储介质200以块为单位进行空间划分后每组的块数,[X]是高斯函数,其运算结果为不小于数字X的最小整数。组内块地址用于表示与缓存地址相对应的存储介质200以块为单位进行划分的组内块编号。
(4)缓存地址:用于表示需访问的数据在缓存单元400中存在时,所存放的数据在缓存单元400中的地址。
应该说明的是,上述实施例中所建立起来的地址映射表仅仅是为了说明本发明中的闪存设备的管理方法流程,并不用于限制本发明。本发明根据存储介质200和缓存单元400之间的映射关系所建立起来的地址映射表除了具有上述形式和内容外,还可以采用其它表格形式记录。特别地,当存储介质200及缓存单元400中仅有一个数据块时(即i=1,n=1,r=1时),地址映射表可省略区地址、组内块地址。
在步骤S803中,获取待访问数据的访问地址,根据地址映射表查找存储介质200中的待访问数据是否被缓存,若是,则进入步骤S804,否则,进入步骤S805。
在一个实施例中,步骤S803的具体过程为:(1)根据存储介质200的数据访问地址,以及存储介质200的空间划分配置参数(r,n,i值),获取存储介质200的待访问数据的区号、区内组号、组内块号和块内地址;(2)根据地址映射表查找数据访问地址的内容是否被缓存,若查找到相关记录,则表示待访问数据被缓存,若查找不到,则表示待访问数据未被缓存。
在一个实施例中,查找地址映射表的过程可以由控制器300上的软件来实现,也可以由位于主机100中的软件来实现,另外还可以用专用硬件电路的方式来实现,以提高地址选择算法运行速度。由于采用了以块为单位的空间划分方式,该空间划分配置参数(r,n,i值)比固定参数的管理更为灵活,可根据存储介质200和缓存单元400的特点动态加以修改,从而提高了系统的整体性能。另外,采用区、组、块的空间管理方法,减少了遍历地址映射表的时间,并且地址映射表的存储空间小,使缓存单元400的利用率得到提升。而采用硬件电路的实现方式也相对简单,节省了成本。
在步骤S804中,根据地址映射表直接访问缓存单元400。关于访问缓存单元400的具体方法流程将在下述内容进行详细阐述。
在步骤S805中,将待访问数据进行缓存并更新地址映射表,以及基于更新后的地址映射表访问缓存单元400。关于将待访问数据进行缓存并更新地址映射表的具体方法流程将在下述内容进行详细阐述。
图11示出了本发明的一个实施例中将待访问数据进行缓存并更新地址映射表的方法流程。具体过程如下:
在步骤S1101中,查找缓存单元400中是否有空闲数据块。若有空闲数据块,则进入步骤S1102,否则进入步骤S1103。在一个实施例中,可根据地址映射表的标记位查找缓存单元400中是否有空闲数据块,例如,查找到标记位为“0”时,表示对应的缓存数据块没有被使用,是空闲数据块。
在步骤S1102中,将存储介质200中的待访问数据写入缓存单元400的空闲数据块。
在步骤S1103中,查找缓存单元400中的最近最少使用的数据块。图12示出了该实施例中的地址映射表,该地址映射表增加了一个字段来记录缓存数据块的最近未访问次数。最近未访问次数的值最大的则是最近最少使用的数据块。
在步骤S1104中,根据地址映射表判断是否需将最近最少使用的数据块中的数据写回存储介质200,若是,则进入步骤S1106,否则,进入步骤S1105。在一个实施例中,可根据地址映射表的标记位来确定最近最少使用的数据块是否需要写回存储介质200。例如当查询到最近最少使用的数据块的标记位为“1”时,则表示最近最少使用的数据块的内容在存储介质200中也存储,则无需写回存储介质200;当查询到相应标记位为“2”时,则表示该最近最少使用的数据块的内容在存储介质200中未存储,此时需将该最近最少使用的数据块中的数据写回存储介质200。
在步骤S1105中,将最近最少使用的数据块中的内容写回存储介质200。当查询到最近最少使用的数据块在存储介质200中没有存储,则将最近最少使用的数据块的内容写回存储介质200,使得其与存储介质200中的一致。
在一个实施例中,缓存单元400在闪存设备内(如图2所示),则控制器300将最近最少使用的数据块的内容写回存储介质200。在另一个实施例中,缓存单元400位于闪存设备外(如图3所示),则主机100上运行的操作系统发送写数据请求到控制器300,由控制器300将待写数据写回存储介质200中。
在步骤S1106中,修改地址映射表中最近最少使用的数据块的标记位为未使用状态。由于此时最近最少使用的数据块在存储介质200已有存储,因此可将修改其对应的标记位为“0”,表示该最近最少使用的数据块为未使用状态,则此时可以对该最近最少使用的数据块进行读写。
在步骤S1107中,将存储介质200的待访问数据写入缓存单元400的最近最少使用的数据块,使得待访问数据在缓存单元400中有缓存。
在步骤S1108中,修改地址映射表的映射记录。在一个实施例中,由于此时存储介质200的待访问数据已有缓存,并且缓存在空闲数据块或最近最少使用的数据块中,因此要进行地址换算,以修改数据的缓存地址,并对其它未访问的缓存数据块的最近未访问次数加1。
图13示出了本发明的另一个实施例中将待访问数据进行缓存并更新地址映射表的方法流程,具体过程如下:
在步骤S1301中,查找缓存单元400中是否有空闲数据块。若有空闲数据块,则进入步骤S1302,否则进入步骤S1303。在一个实施例中,可根据地址映射表的标记位查找缓存单元400中是否有空闲数据块,例如,查找到标记位为“0”时,表示对应的缓存数据块没有被使用,是空闲数据块。
在步骤S1302中,将存储介质200中的待访问数据写入缓存单元400的空闲数据块。
在步骤S1303中,查找缓存单元400中的最早使用的数据块。图14示出了该实施例中的地址映射表,该地址映射表增加了一个字段来记录缓存数据块的初始访问序号。初始访问序号最小的则为最早使用的数据块。
在步骤S1304中,根据地址映射表判断是否需将最早使用的数据块中的数据写回存储介质200,若是,则进入步骤S1306,否则,进入步骤S1305。
在一个实施例中,可根据地址映射表的标记位来确定是否需将最早使用的数据块中的数据写回存储介质200。例如,当查询到最早使用的数据块的标记位为“1”时,则表示最早使用的数据块的内容在存储介质200中也存储,则无需写回存储介质200;当查询到相应标记位为“2”时,表示该最早使用的数据块的内容在存储介质200中未存储,此时需将该最早使用的数据块中的数据写回存储介质200。
在步骤S1305中,将最早使用的数据块中的内容写回存储介质200。当查询到最早使用的数据块在存储介质200中没有存储,则将最早使用的数据块的内容写回存储介质200,使得其与存储介质200中的一致。
在一个实施例中,缓存单元400在闪存设备内(如图2所示),则控制器300将最近最少使用的数据块的内容写回存储介质200。在另一个实施例中,缓存单元400位于闪存设备外(如图3所示),则主机100上运行的操作系统发送写数据请求到控制器300,由控制器300将待写数据写回存储介质200中。
在步骤S1306中,修改地址映射表中最早使用的数据块的标记位为未使用状态。由于此时最早使用的数据块在存储介质200已有存储,因此将修改其对应的标记位为“0”,表示该最早使用的数据块为未使用状态,可对该最早使用的数据块进行读写。
在步骤S1307中,将存储介质200中的待访问数据写入缓存单元400的最早使用的数据块。使得存储介质200中的待访问数据在缓存单元400中有缓存。
在步骤S1308中,修改地址映射表的映射记录。由于此时存储介质200中的待访问数据有缓存,并缓存在空闲数据块或最早使用的数据块中,因此要进行地址换算,以修改数据的缓存地址。
应当说明的是,上述查找最近最少使用的数据块及最早使用的数据块仅仅是为了说明根据缓存单元替换算法将存储介质200中的待访问数据进行缓存并更新地址映射表的方法流程,并不用于限制本发明。除了查找最近最少使用的数据块及最早使用的数据块作为替换数据块外,还可以在缓存单元400中随机选择一个数据块作为替换数据块,而在未查询到空闲数据块时,将存储介质200中的待访问数据写入该随机选择的缓存数据块中,使得存储介质200中的待访问数据有缓存。
随机选择缓存数据块作为替换数据块不需要在地址映射表中增加字段,其方法流程与图11和图13所示方法流程类似,在此不再赘述。
图15示出了本发明的一个实施例中访问缓存单元400的方法流程,具体过程如下:
在步骤S1501中,获取数据访问请求。在一个实施例中,缓存单元400位于闪存设备中(如图2所示),数据访问请求可以是从主机100通过闪存设备内的主机访问接口转发到控制器300的数据访问请求,也可以是其它功能模块的功能需要而由控制器300发出的数据访问请求。在另一个实施例中,缓存单元400位于闪存设备外(如图3所示),则数据访问请求可以是主机100发出的访问请求。
在步骤S1502中,判断访问请求是读数据还是写数据,若是读数据,则进入步骤S1503,若是写数据,则进入步骤S1605。在一个实施例中,缓存单元400位于闪存设备中(如图2所示),则由控制器300实现判断。在另一个实施例中,缓存单元400位于闪存设备外(如图3所示),则由主机100上运行的操作系统来实现判断过程。
在步骤S1503中,根据地址映射表读取缓存单元400中的数据。在一个实施例中,在地址映射表中查找到存储介质200中的待访问数据有缓存,则根据缓存地址直接从缓存单元400读取数据。在另一个实施例中,在地址映射表中未查找到存储介质200中的待访问数据有缓存,则将所述待访问数据进行缓存并更新地址映射表,以及根据更新后的地址映射表查找待访问数据的缓存地址,并从缓存单元400中读取该数据(如图11或图13所示)。
在缓存单元400位于闪存设备内时(如图2所示),读数据操作通过控制器300实现。在缓存单元400位于闪存设备外时(如图3所示),则读数据操作通过主机100上运行的操作系统来实现。
在步骤S1504,返回读取结果。读取结果包括读取到的数据及读操作状态等信息。
在步骤S1505中,根据地址映射表将待写数据写入缓存单元400。在一个实施例中,在地址映射表中查找到存储介质200中的待访问数据有缓存,则可将数据直接写入缓存单元400的缓存地址中。在另一个实施例中,在地址映射表中查找到存储介质200中的待访问数据没有缓存,则将所述待访问数据进行缓存并更新地址映射表,以及根据更新后的地址映射表查找到待访问数据对应的缓存地址,并将数据写入该缓存地址中(如图11或图13所示)。
在缓存单元400位于闪存设备内时(如图2所示),写数据操作通过控制器300实现。缓存单元400位于闪存设备外时(如图3所示),则写数据操作通过主机100上运行的操作系统来实现。
在步骤S1506中,判断是否需要写回存储介质200。是否需要写回存储介质200可根据需要事先进行配置。当需要写回存储介质200时,则进入步骤S1507,否则进入步骤S1508。该步骤可通过控制器300(在缓存单元400位于闪存设备内时)或主机100上运行的操作系统(缓存单元400位于闪存设备外时)来实现。
在一个实施例中,当配置为此时不需要写回存储介质200时,可在系统关机,控制器300与主机100断开连接时,由控制器300将缓存单元400中所有与存储介质200不一致的缓存数据写回存储介质200,此时可由闪存设备自带的电源及电源管理模块进行供电。也可在系统在运行,控制器300与主机100连接时,由主机100上运行的操作系统的控制命令来实现缓存数据的写回。另外,还可以由控制器300判断是否与主机100断开连接而自主完成所有缓存数据的写回。
在步骤S1507中,将待写数据写回存储介质200,并修改地址映射表的标记位。在一个实施例中,缓存单元400位于闪存设备中(如图2所示),控制器300将位于缓存地址的数据内容写回存储介质200,并修改该缓存地址对应的标记位为“1”,表示该缓存数据块与映射到存储介质200中的数据块的内容相同。
在另一个实施例中,缓存单元400位于闪存设备外(如图3所示),主机100上运行的操作系统发送写数据请求到控制器300,由控制器300将待写数据写回存储介质200中,主机100上运行的操作系统同时修改地址映射表的标记位为“1”,表示该缓存数据块与映射到存储介质200中的数据块的内容相同。
在步骤S1508中,返回写操作状态。
应当说明的是,本发明所提供的闪存设备的管理方法,其典型应用但不限于仅有一个存储介质200和一个缓存单元400的系统,其还可以应用在带多个缓存单元400的系统中。
基于上述的闪存设备的管理方法,针对不同的闪存设备的管理系统,其方法还可以做一些灵活变动。例如,在具有多个缓存单元400的系统中(如图1所示),可将所有的缓存单元400作为闪存设备的缓冲存储单元,对其存储介质200中的数据进行缓存,也可以采用串联级联的方式,将其中至少一个缓存单元400作为闪存设备的缓冲存储单元,将其它至少一个缓存单元400作为该缓存单元400的缓冲存储单元,其进行数据访问时与上述方法流程原理相同,在此不再赘述。
在另一个实施例中,还可以针对不同的缓存单元400(例如,在速度和寿命上不同的缓存单元400),将其可设置为独立的读写缓存单元,即针对读操作使用读缓存单元对存储介质200中的数据进行缓存,针对写操作使用写缓存单元对存储介质200中的数据进行缓存。将读写缓存单元进行分离可减少频繁读对写操作速度的影响,也可减少频繁写对读操作速度的影响,从而能够提高系统的性能。其进行数据访问时与上述方法流程原理相同,在此也不再赘述。
另外,还可以将其中至少一个缓存单元400作为主机100运行的操作系统或某一个应用程序的单独的缓冲存储单元,将操作系统或应用程序中的数据备份到缓存单元400中,数据的读写操作均在缓存单元400中进行,从而提高系统的性能及访问速度。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种闪存设备的管理方法,所述方法基于存储介质和缓存单元实现对闪存设备的管理,其特征在于,所述方法包括以下步骤:
A.建立所述存储介质和至少一个缓存单元之间的映射关系;
B.根据所述映射关系将存储介质中的待访问数据缓存至所述缓存单元,并基于所述映射关系访问缓存单元。
2.根据权利要求1所述的闪存设备的管理方法,其特征在于,所述步骤A之前还包括:对所述存储介质及缓存单元以块为单位进行空间划分,以建立存储介质和缓存单元之间块的映射关系。
3.根据权利要求1所述的闪存设备的管理方法,其特征在于,所述步骤B包括:
B1.根据所述映射关系,建立所述存储介质和缓存单元之间的地址映射表;
B2.获取待访问数据的访问地址,根据地址映射表查找所述存储介质中的待访问数据是否被缓存,若是,则执行步骤B3,否则,执行步骤B4;
B3.根据地址映射表访问缓存单元;
B4.将所述存储介质中的待访问数据进行缓存,并更新所述地址映射表,以及基于更新后的地址映射表访问缓存单元。
4.根据权利要求3所述的闪存设备的管理方法,其特征在于,所述步骤B4中将所述存储介质中的待访问数据进行缓存,并更新地址映射表的过程包括:
B41.查找所述缓存单元中是否有空闲数据块,若是,则执行步骤B42,否则,执行步骤B43;
B42.将存储介质中的待访问数据写入缓存单元的空闲数据块,并修改地址映射表的映射记录;
B43.查找缓存单元中的替换数据块,将存储介质中的待访问数据写入所述替换数据块中,并修改地址映射表的映射记录。
5.根据权利要求4所述的闪存设备的管理方法,其特征在于,所述步骤B43中将存储介质中的待访问数据写入所述替换数据块的过程包括:
B431.根据地址映射表中所述替换数据块的标记位判断是否需将替换数据块中的数据写回存储介质,若是,则执行步骤B432,否则,执行步骤B433;
B432.将所述替换数据块中的数据写回存储介质,并修改地址映射表中所述替换数据块的标记位为未使用状态;
B433.修改所述地址映射表中所述替换数据块的标记位为未使用状态;
B444.将存储介质中的待访问数据写入所述替换数据块。
6.根据权利要求3所述的闪存设备的管理方法,其特征在于,所述访问缓存单元的过程包括:
b1.判断数据访问请求是读数据还是写数据,若是读数据,则执行步骤b2,若是写数据,则执行步骤b3;
b2.根据地址映射表读取缓存单元中的数据,并返回读取结果;
b3.根据地址映射表将待写数据写入缓存单元,并判断是否需要写回存储介质,若是,则执行步骤b3,否则,执行步骤b5;
b4.将待写数据写回存储介质,并修改地址映射表的标记位,以及返回写操作状态;
b5.返回写操作状态。
7.一种闪存设备的管理系统,包括主机、与主机相连并进行数据交互的闪存设备,所述闪存设备包括控制器、与控制器相连并用于存储数据的存储介质,其特征在于,所述系统还包括至少一个缓存单元,所述存储介质和缓存单元之间具有映射关系,所述主机及控制器根据所述映射关系将存储介质中的待访问数据缓存至所述缓存单元,并基于所述映射关系访问缓存单元。
8.根据权利要求7所述的闪存设备的管理系统,其特征在于,所述缓存单元位于闪存设备内并与所述控制器相连,或位于闪存设备外、与所述主机相连或位于主机中。
9.根据权利要求7所述的闪存设备的管理系统,其特征在于,所述缓存单元包括位于闪存设备内并与所述控制器相连、和位于闪存设备外并与所述主机相连或位于主机中的至少两个缓存单元。
10.一种闪存设备,包括控制器、与控制器相连并用于存储数据的存储介质,其特征在于,所述闪存设备还包括至少一个与所述控制器相连的缓存单元,所述存储介质与所述缓存单元之间具有映射关系,所述控制器根据所述映射关系将存储介质中的待访问数据缓存至所述缓存单元,以及基于所述映射关系访问所述缓存单元。
CN200810161900A 2008-10-17 2008-10-17 闪存设备的管理系统、方法及闪存设备 Pending CN101727395A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200810161900A CN101727395A (zh) 2008-10-17 2008-10-17 闪存设备的管理系统、方法及闪存设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200810161900A CN101727395A (zh) 2008-10-17 2008-10-17 闪存设备的管理系统、方法及闪存设备

Publications (1)

Publication Number Publication Date
CN101727395A true CN101727395A (zh) 2010-06-09

Family

ID=42448313

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810161900A Pending CN101727395A (zh) 2008-10-17 2008-10-17 闪存设备的管理系统、方法及闪存设备

Country Status (1)

Country Link
CN (1) CN101727395A (zh)

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102469357A (zh) * 2010-11-18 2012-05-23 深圳创维数字技术股份有限公司 一种用户操作数据的保存方法、系统及数字电视接收终端
CN103064692A (zh) * 2011-10-19 2013-04-24 北京市三希电子科技开发公司 一种固件的更新方法及装置
CN103150122A (zh) * 2011-12-07 2013-06-12 华为技术有限公司 一种磁盘缓存空间管理方法和装置
CN103414938A (zh) * 2013-08-01 2013-11-27 深圳Tcl新技术有限公司 数字电视一体机内部通讯的控制方法及数字电视一体机
CN103577346A (zh) * 2012-07-19 2014-02-12 智微科技股份有限公司 存储器控制方法及存储器控制电路
CN104965671A (zh) * 2015-05-06 2015-10-07 深圳市金立通信设备有限公司 一种数据处理方法
CN104965796A (zh) * 2015-05-06 2015-10-07 深圳市金立通信设备有限公司 一种终端
CN105094691A (zh) * 2014-05-21 2015-11-25 华为技术有限公司 一种数据操作的方法、设备和系统
CN105183397A (zh) * 2015-09-22 2015-12-23 Tcl移动通信科技(宁波)有限公司 一种emmc读写控制方法及控制系统
CN105786400A (zh) * 2014-12-25 2016-07-20 研祥智能科技股份有限公司 一种异构混合内存组件、系统及存储方法
CN105786721A (zh) * 2014-12-25 2016-07-20 研祥智能科技股份有限公司 一种内存地址映射管理方法及处理器
WO2016123748A1 (zh) * 2015-02-03 2016-08-11 北京麓柏科技有限公司 一种闪存存储系统及其读写、删除方法
CN106201911A (zh) * 2015-05-05 2016-12-07 苏州携云信息科技有限公司 一种基于固态硬盘的缓存加速方法
CN106354664A (zh) * 2016-08-22 2017-01-25 浪潮(北京)电子信息产业有限公司 一种固态硬盘数据传输方法及装置
CN106776373A (zh) * 2017-01-12 2017-05-31 合肥杰美电子科技有限公司 一种面向移动设备的基于闪存的高速缓存系统及方法
CN107562379A (zh) * 2017-08-28 2018-01-09 东莞记忆存储科技有限公司 一种提升固态存储设备读性能的方法
CN108563400A (zh) * 2018-03-14 2018-09-21 上海卫星工程研究所 减少闪存0号块磨损的方法及系统
WO2019001296A1 (zh) * 2017-06-29 2019-01-03 中兴通讯股份有限公司 一种存储记录方法及装置
WO2019048933A1 (en) * 2017-09-11 2019-03-14 C-Sky Microsystems Co., Ltd. METHOD AND APPARATUS FOR DELETING OR WRITING FLASH DATA
CN111210858A (zh) * 2019-12-24 2020-05-29 山东大学 一种缓解相变存储器写干扰的方法及系统
CN111562883A (zh) * 2020-04-26 2020-08-21 北京泽石科技有限公司 固态硬盘的缓存管理系统、方法、装置
CN112463487A (zh) * 2020-11-25 2021-03-09 苏州浪潮智能科技有限公司 一种全闪存阵列的连接错误检测方法、系统及相关组件
CN112799595A (zh) * 2021-02-02 2021-05-14 联想(北京)有限公司 数据处理方法、设备及存储介质

Cited By (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102469357B (zh) * 2010-11-18 2013-09-04 深圳创维数字技术股份有限公司 一种用户操作数据的保存方法、系统及数字电视接收终端
CN102469357A (zh) * 2010-11-18 2012-05-23 深圳创维数字技术股份有限公司 一种用户操作数据的保存方法、系统及数字电视接收终端
CN103064692A (zh) * 2011-10-19 2013-04-24 北京市三希电子科技开发公司 一种固件的更新方法及装置
CN103150122B (zh) * 2011-12-07 2016-05-25 华为技术有限公司 一种磁盘缓存空间管理方法和装置
CN103150122A (zh) * 2011-12-07 2013-06-12 华为技术有限公司 一种磁盘缓存空间管理方法和装置
CN103577346A (zh) * 2012-07-19 2014-02-12 智微科技股份有限公司 存储器控制方法及存储器控制电路
CN103414938B (zh) * 2013-08-01 2017-09-05 深圳Tcl新技术有限公司 数字电视一体机内部通讯的控制方法及数字电视一体机
CN103414938A (zh) * 2013-08-01 2013-11-27 深圳Tcl新技术有限公司 数字电视一体机内部通讯的控制方法及数字电视一体机
US11010056B2 (en) 2014-05-21 2021-05-18 Huawei Technologies Co., Ltd. Data operating method, device, and system
CN110187832A (zh) * 2014-05-21 2019-08-30 华为技术有限公司 一种数据操作的方法、设备和系统
CN105094691B (zh) * 2014-05-21 2019-05-21 华为技术有限公司 一种数据操作的方法、设备和系统
US10318165B2 (en) 2014-05-21 2019-06-11 Huawei Technologies Co., Ltd. Data operating method, device, and system
CN110187832B (zh) * 2014-05-21 2023-08-22 华为技术有限公司 一种数据操作的方法、设备和系统
CN105094691A (zh) * 2014-05-21 2015-11-25 华为技术有限公司 一种数据操作的方法、设备和系统
CN105786400A (zh) * 2014-12-25 2016-07-20 研祥智能科技股份有限公司 一种异构混合内存组件、系统及存储方法
CN105786721A (zh) * 2014-12-25 2016-07-20 研祥智能科技股份有限公司 一种内存地址映射管理方法及处理器
WO2016123748A1 (zh) * 2015-02-03 2016-08-11 北京麓柏科技有限公司 一种闪存存储系统及其读写、删除方法
CN106201911A (zh) * 2015-05-05 2016-12-07 苏州携云信息科技有限公司 一种基于固态硬盘的缓存加速方法
CN104965671A (zh) * 2015-05-06 2015-10-07 深圳市金立通信设备有限公司 一种数据处理方法
CN104965796A (zh) * 2015-05-06 2015-10-07 深圳市金立通信设备有限公司 一种终端
CN105183397A (zh) * 2015-09-22 2015-12-23 Tcl移动通信科技(宁波)有限公司 一种emmc读写控制方法及控制系统
CN106354664A (zh) * 2016-08-22 2017-01-25 浪潮(北京)电子信息产业有限公司 一种固态硬盘数据传输方法及装置
CN106776373B (zh) * 2017-01-12 2020-10-16 合肥速显微电子科技有限公司 一种面向移动设备的基于闪存的高速缓存系统及方法
CN106776373A (zh) * 2017-01-12 2017-05-31 合肥杰美电子科技有限公司 一种面向移动设备的基于闪存的高速缓存系统及方法
WO2019001296A1 (zh) * 2017-06-29 2019-01-03 中兴通讯股份有限公司 一种存储记录方法及装置
CN107562379A (zh) * 2017-08-28 2018-01-09 东莞记忆存储科技有限公司 一种提升固态存储设备读性能的方法
WO2019048933A1 (en) * 2017-09-11 2019-03-14 C-Sky Microsystems Co., Ltd. METHOD AND APPARATUS FOR DELETING OR WRITING FLASH DATA
US11249677B2 (en) 2017-09-11 2022-02-15 C-Sky Microsystems Co., Ltd. Method and apparatus for erasing or writing flash data
CN108563400A (zh) * 2018-03-14 2018-09-21 上海卫星工程研究所 减少闪存0号块磨损的方法及系统
CN108563400B (zh) * 2018-03-14 2021-05-11 上海卫星工程研究所 减少闪存0号块磨损的方法及系统
CN111210858B (zh) * 2019-12-24 2021-11-09 山东大学 一种缓解相变存储器写干扰的方法及系统
CN111210858A (zh) * 2019-12-24 2020-05-29 山东大学 一种缓解相变存储器写干扰的方法及系统
CN111562883A (zh) * 2020-04-26 2020-08-21 北京泽石科技有限公司 固态硬盘的缓存管理系统、方法、装置
CN111562883B (zh) * 2020-04-26 2021-09-07 北京泽石科技有限公司 固态硬盘的缓存管理系统、方法、装置
CN112463487A (zh) * 2020-11-25 2021-03-09 苏州浪潮智能科技有限公司 一种全闪存阵列的连接错误检测方法、系统及相关组件
CN112799595A (zh) * 2021-02-02 2021-05-14 联想(北京)有限公司 数据处理方法、设备及存储介质

Similar Documents

Publication Publication Date Title
CN101727395A (zh) 闪存设备的管理系统、方法及闪存设备
CN107844431B (zh) 映射表更新方法、存储器控制电路单元与存储器存储装置
US8386698B2 (en) Data accessing method for flash memory and storage system and controller using the same
US8606987B2 (en) Data writing method for flash memory and controller using the same
US9298384B2 (en) Method and device for storing data in a flash memory using address mapping for supporting various block sizes
CN108121503B (zh) 一种NandFlash地址映射及块管理方法
US8332573B2 (en) Method and apparatus for performing address mapping in virtual file system of storage unit having a plurality of non-volatile data storage media
TWI385519B (zh) 資料寫入方法及使用此方法的快閃儲存系統與其控制器
US8055873B2 (en) Data writing method for flash memory, and controller and system using the same
JP4415356B2 (ja) 二重ジャーナリングの保存方法及びその記憶媒体
CN102662856B (zh) 一种固态硬盘及其存取方法
CN101369451A (zh) 固态存储器、包含其的计算机系统和操作其的方法
KR102585883B1 (ko) 메모리 시스템의 동작 방법 및 메모리 시스템
CN104794070A (zh) 基于动态非覆盖raid技术的固态闪存写缓存系统及方法
CN103246609B (zh) 一种闪存存储设备中冷热数据区分管理的方法及装置
CN103324578A (zh) 一种nand闪存设备及其随机写入方法
KR20110006607A (ko) 메모리 시스템 및 정보 처리 장치
CN103150258A (zh) 一种固态存储系统的写入、读取及垃圾收集方法
TW201917581A (zh) 管理快閃記憶體模組的方法及相關的快閃記憶體控制器
KR101374065B1 (ko) 칩 레벨 평행 플래시 메모리를 위한 정보 분별 방법 및 장치
WO2021035555A1 (zh) 一种固态硬盘的数据存储方法、装置及固态硬盘ssd
CN103246615B (zh) 一种闪存存储设备中数据管理的方法及装置
KR20200114212A (ko) 데이터 저장 장치 및 그것의 동작 방법
CN105607862A (zh) 一种dram与mram结合具有备份电源的固态硬盘
CN101324899B (zh) 一种快速写nand型flash的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20100609