《数据处理系统及方法.pdf》由会员分享,可在线阅读,更多相关《数据处理系统及方法.pdf(10页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103077119 A(43)申请公布日 2013.05.01CN103077119A*CN103077119A*(21)申请号 201210589905.8(22)申请日 2012.12.31G06F 12/02(2006.01)(71)申请人记忆科技(深圳)有限公司地址 518000 广东省深圳市南山区蛇口后海大道东角头东南工贸大厦5楼(72)发明人袁芳(74)专利代理机构北京律诚同业知识产权代理有限公司 11006代理人刘健 黄韧敏(54) 发明名称数据处理系统及方法(57) 摘要本发明适用于存储技术领域,提供了一种数据处理方法,所述方法包括:在系统内存中建立命。
2、中页映射表及全局字典表;接收到逻辑页处理请求命令时,从所述命中页映射表查找与所述处理请求命令匹配的逻辑页;若所述命中页映射表没有与所述处理请求匹配的所述逻辑页,则根据所述全局字典表获取所述逻辑页对应的映射信息。本发明还相应的提供一种数据处理系统。借此,本发明可以实现页映射的同时大大减少内存占用量。(51)Int.Cl.权利要求书2页 说明书4页 附图3页(19)中华人民共和国国家知识产权局(12)发明专利申请权利要求书2页 说明书4页 附图3页(10)申请公布号 CN 103077119 ACN 103077119 A1/2页21.一种数据处理方法,其特征在于,所述方法包括:在内存中建立命中页。
3、映射表及全局字典表;接收到逻辑页处理请求命令时,从所述命中页映射表查找与所述处理请求命令匹配的逻辑页;若所述命中页映射表没有与所述处理请求匹配的所述逻辑页,则根据所述全局字典表从数据存储区获取所述逻辑页对应的映射信息。2.根据权利要求1所述的数据处理方法,其特征在于,所述根据所述全局字典表从数据存储区获取所述逻辑页对应的映射信息步骤之后进一步包括:判断所述命中页映射表是否为已满状态;若所述命中页映射表是已满状态,则根据预设算法删除所述命中页映射表中的一页映射信息项,并将所述获取到的逻辑页对应的页映射信息写入到所述命中映射表;若所述命中页映射表是未满状态,则直接将所述获取的逻辑页对应的页映射信息。
4、写入到所述命中映射表。3.根据权利要求1所述的数据处理方法,其特征在于,设置一缓存区,所述缓存区用于存储所述逻辑页处理请求命令。4.根据权利要求3所述的数据处理方法,其特征在于,所述根据预设算法删除所述命中页映射表中的一页映射信息项步骤包括:通过LRU替换算法,并分析所述缓存区中逻辑页处理请求命令即将访问的队列,获取需要删除的所述页映射信息项。5.根据权利要求14任一项所述的数据处理方法,其特征在于,所述数据的所有页映射信息储存在所述数据存储区。6.一种数据处理系统,其特征在于,包括:建立模块,用于在系统内存中建立命中页映射表及全局字典表;查找模块,用于接收到逻辑页处理请求命令时,从所述命中页。
5、映射表查找与所述处理请求命令匹配的逻辑页;获取模块,用于所述命中页映射表没有与所述处理请求匹配的所述逻辑页时,根据所述全局字典表获取所述逻辑页对应的映射信息。7.根据权利要求6所述的数据处理系统,其特征在于,所述系统还包括:判断模块,用于判断所述命中页映射表是否为已满状态;第一写入模块,用于所述命中页映射表是已满状态时,根据预设算法删除所述命中页映射表中的一页映射信息项,并将所述获取到的逻辑页对应的页映射信息写入到所述命中映射表;第二写入模块,用于所述命中页映射表是未满状态时,直接将所述获取的逻辑页对应的页映射信息写入到所述命中映射表。8.根据权利要求7所述的数据处理系统,其特征在于,还包括设。
6、置模块,用于设置一缓存区,所述缓存区用于存储所述逻辑页处理请求命令。9.根据权利要求68任一项所述的数据处理系统,其特征在于,所述数据处理系统为基于固态硬盘的数据处理系统。10.根据权利要求9所述的数据处理系统,其特征在于,所述固态硬盘的所有页映射信权 利 要 求 书CN 103077119 A2/2页3息储存在所述固态硬盘的闪存中。权 利 要 求 书CN 103077119 A1/4页4数据处理系统及方法技术领域0001 本发明涉及存储技术领域,尤其涉及一种数据处理系统及方法。背景技术0002 在基于NAND的固态存储中,HOST(主机)和NAND端的地址转换方式有很多种,主要有页映射、块映。
7、射以及两者结合的混合映射方法。因为NAND读,写操作的单元是页,其中应用最广泛的是基于页映射的地址转换方式。将HOST端请求的逻辑页地址和NAND中的物理页地址的对应关系全部存放在内存中。如此每次HOST端有请求时只需用请求的逻辑页地址来检索内存中的映射表,查找出它对应的物理逻辑页地址,直接到对应的NAND物理页中读写相应的页。另外,基于块的映射方式中,每个逻辑块对应一个物理块,对于host端的给出的逻辑块号,查询内存中的块映射表,找到相应的物理块,写到其空闲页中。在页映射和块映射的基础上,提出的混合映射的方法,以块映射方法建立逻辑块和物理块的映射关系,同时对块内数据采用页映射方法组织,主要有。
8、FAST和BAST算法。0003 因为NAND flash的读写单元是页,页映射方法具有很高的灵活性,可以很好的处理随机读写请求,但是需要占用大量的内存空间,对于一个32GB大小的硬盘,就需要64MB的内存大小,随着硬盘容量的增大,所需内存会更大。块映射方法是以块为单位进行地址映射,该方法仅需要在内存中保留快映射表,建立从逻辑块到物理块的映射关系,它最大的优点是内存占有量少,不受闪存容量增大的影响,缺点是在处理小数据更新上性能较差,一小块数据的更新会引起对整个块内容的复制。混合映射方法结合了块映射和页映射的优点,内存占有量小,同时对小数据更新比块映射算法更加灵活,代价少,但在垃圾回收时比较费时。
9、,需要频繁的merge原数据和更新数据所占的block,这样会大大增大垃圾回收的操作,造成较低的效率。0004 综上可知,现有的数据处理系统及方法,在实际使用上显然存在不便与缺陷,所以有必要加以改进。发明内容0005 针对上述的缺陷,本发明的目的在于提供一种数据处理系统及方法,其可以在实现页映射的同时大大减少内存占用量。0006 为了实现上述目的,本发明提供一种数据处理方法,所述方法包括:0007 在内存中建立命中页映射表及全局字典表;0008 接收到逻辑页处理请求命令时,从所述命中页映射表查找与所述处理请求命令匹配的逻辑页;0009 若所述命中页映射表没有与所述处理请求匹配的所述逻辑页,则根。
10、据所述全局字典表从数据存储区获取所述逻辑页对应的映射信息。0010 根据本发明的数据处理方法,所述根据所述全局字典表从数据存储区获取所述逻辑页对应的映射信息步骤之后进一步包括:说 明 书CN 103077119 A2/4页50011 判断所述命中页映射表是否为已满状态;0012 若所述命中页映射表是已满状态,则根据预设算法删除所述命中页映射表中的一页映射信息项,并将所述获取到的逻辑页对应的页映射信息写入到所述命中映射表;0013 若所述命中页映射表是未满状态,则直接将所述获取的逻辑页对应的页映射信息写入到所述命中映射表。0014 根据本发明的数据处理方法,设置一缓存区,所述缓存区用于存储所述逻。
11、辑页处理请求命令。0015 根据本发明的数据处理方法,所述根据预设算法删除所述命中页映射表中的一页映射信息项步骤包括:0016 通过LRU替换算法,并分析所述缓存区中逻辑页处理请求命令即将访问的队列,获取需要删除的所述页映射信息项。0017 根据本发明的数据处理方法,所述数据的所有页映射信息储存在所述数据存储区。0018 本发明还提供一种数据处理系统,包括:0019 建立模块,用于在系统内存中建立命中页映射表及全局字典表;0020 查找模块,用于接收到逻辑页处理请求命令时,从所述命中页映射表查找与所述处理请求命令匹配的逻辑页;0021 获取模块,用于所述命中页映射表没有与所述处理请求匹配的所述。
12、逻辑页时,根据所述全局字典表获取所述逻辑页对应的映射信息。0022 根据本发明的数据处理系统,所述系统还包括:0023 判断模块,用于判断所述命中页映射表是否为已满状态;0024 第一写入模块,用于所述命中页映射表是已满状态时,根据预设算法删除所述命中页映射表中的一页映射信息项,并将所述获取到的逻辑页对应的页映射信息写入到所述命中映射表;0025 第二写入模块,用于所述命中页映射表是未满状态时,直接将所述获取的逻辑页对应的页映射信息写入到所述命中映射表。0026 根据本发明的数据处理系统,还包括设置模块,用于设置一缓存区,所述缓存区用于存储所述逻辑页处理请求命令。0027 根据本发明的数据处理。
13、系统,所述数据处理系统为基于固态硬盘的数据处理系统。0028 根据本发明的数据处理系统,所述固态硬盘的所有页映射信息储存在所述固态硬盘的闪存中。0029 本发明通过将数据的所有页映射信息储存在所述数据存储区,并在内存中建立命中页映射表及全局字典表,当接收到逻辑页处理请求命令时,从所述命中页映射表查找与所述处理请求命令匹配的逻辑页,若所述命中页映射表没有与所述处理请求匹配的所述逻辑页,则根据所述全局字典表从数据存储区获取所述逻辑页对应的映射信息。借此,本发明可以在实现页映射的同时大大减少内存占用量。附图说明说 明 书CN 103077119 A3/4页60030 图1是本发明的数据处理系统的结构。
14、示意图;0031 图2是本发明优选实施例的数据处理系统的结构示意图;0032 图3是本发明一实施例的数据处理系统的逻辑结构示意图;0033 图4是本发明的数据处理方法流程图。具体实施方式0034 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。0035 参见图1,本发明提供了一种数据处理系统,该处理系统100可以为基于固态硬盘的系统。该系统100连接主机端,用于响应主机端的请求,对数据存储区的数据进行读或写操作,其包括建立模块10、查找模块20及获取模块30,具体的:003。
15、6 建立模块10,用于在系统内存中建立命中页映射表及全局字典表。命中页映射表相当于内存中的缓存结构,其储存了主机端命令最常用的页映射信息。全局字典表用于查询所有的页映射信息,优选的,数据的所有页映射信息储存在系统的数据存储区。以固态硬盘为例,所有的页映射信息可储存在其flash介质中。0037 查找模块20,用于接收到逻辑页(LPA)处理请求命令时,从所述命中页映射表查找与所述处理请求命令匹配的逻辑页。若查找到匹配的逻辑页,则直接通过该逻辑页的映射信息查找对应的物理页,并响应主机端的读/写请求,否则交由获取模块30处理。0038 获取模块30,用于所述命中页映射表没有与所述处理请求匹配的所述逻。
16、辑页时,根据所述全局字典表获取所述逻辑页对应的映射信息。获取到相应的逻辑页映射信息后即可对应查找物理页响应主机的命令。0039 本发明通过将数据的页映射信息保存在数据存储区,内存中仅建立命中页映射表及全局字典表,借此大大减少内存的使用量。0040 再参见图2所示的实施例中,该实施例与图1相同部分不再赘述,下面仅就不同之处加以说明。0041 该实施例中,系统100还包括:0042 设置模块40,用于设置一缓存区,所述缓存区用于缓存主机端发送的逻辑页处理请求命令。通过该缓存区,可以预测主机端即将访问的队列。0043 判断模块50,用于判断所述命中页映射表是否为已满状态,若已满则交由第一写入模块60。
17、处理,否则交由第二写入模块70处理。0044 第一写入模块60,用于所述命中页映射表是已满状态时,根据预设算法删除所述命中页映射表中的一页映射信息项,并将所述获取到的逻辑页对应的页映射信息写入到所述命中映射表。具体应用中,系统100通过LRU替换算法,并分析所述缓存区中逻辑页处理请求命令即将访问的队列,获取需要删除的所述页映射信息项。0045 第二写入模块70,用于所述命中页映射表是未满状态时,直接将所述获取的逻辑页对应的页映射信息写入到所述命中映射表。借此能有效的避免内存中LPA映射信息的频繁置换。0046 图3是本发明数据处理系统一具体处理过程的实施例,以固态硬盘为例,该实施说 明 书CN。
18、 103077119 A4/4页7例中,Host(主机)端有LPA的W/R(写/读)请求时,查询cached mappingtable(命中页映射表),若在表中有此LPA项,则根据其对应的PPA(物理页地址)项去FLASH介质中进行W/R响应(如表中的lpa1、lpa6、lpa11及lpa17);若cachedmapping table中没有相应的LPA项的信息,且该表中已满,则首先根据LRU算法找到当前表中需要替换出的项(如本图中lpa1为最近最久未被使用的),然后再结合data cache(缓存区)中host端的请求队列(如图3中即将继续有lpa1的请求),综合分析选出要被删除出去的项(本。
19、图中最终选择为lpa11项)victim LPA(替换项)。如果victim lpa在cached mapping table中已被修改,则查询global translationtable(全局字典表),找到它所在FLASH中的被存储的位置,复写相应的page。0047 查询global translation table,找到LPA项的映射信息在FLASH中被存储的位置,读取它的映射信息,写入cached mapping table中victim LPA腾出的空间,方便响应后续的操作命令。0048 参见图4,本发明提供了一种数据处理方法,其可以通过如图1或图2所示的系统100实现,该方法包。
20、括:0049 步骤S401,在内存中建立命中页映射表及全局字典表。0050 命中页映射表相当于内存中的缓存结构,其储存了主机端命令最常用的页映射信息。全局字典表用于查询所有的页映射信息,优选的,数据的所有页映射信息储存在系统的数据存储区。以固态硬盘为例,所有的页映射信息可储存在其flash介质中。0051 步骤S402,接收到逻辑页处理请求命令时,从所述命中页映射表查找与所述处理请求命令匹配的逻辑页。0052 具体应用中,若查找到匹配的逻辑页,则直接通过该逻辑页的映射信息查找对应的物理页,并响应主机端的读/写请求,否则执行步骤S403。0053 步骤S403,若所述命中页映射表没有与所述处理请。
21、求匹配的所述逻辑页,则根据所述全局字典表从数据存储区获取所述逻辑页对应的映射信息。0054 优选的是,本发明的另一实施例中,步骤S403之后进一步包括:0055 判断所述命中页映射表是否为已满状态;若所述命中页映射表是已满状态,则通过LRU替换算法,并分析所述缓存区中逻辑页处理请求命令即将访问的队列,获取需要删除的所述页映射信息项,并将所述获取到的逻辑页对应的页映射信息写入到所述命中映射表;若所述命中页映射表是未满状态,则直接将所述获取的逻辑页对应的页映射信息写入到所述命中映射表。0056 综上所述,本发明通过将数据的所有页映射信息储存在所述数据存储区,并在内存中建立命中页映射表及全局字典表,。
22、当接收到逻辑页处理请求命令时,从所述命中页映射表查找与所述处理请求命令匹配的逻辑页,若所述命中页映射表没有与所述处理请求匹配的所述逻辑页,则根据所述全局字典表从数据存储区获取所述逻辑页对应的映射信息。借此,本发明可以在实现页映射的同时大大减少内存占用量。0057 当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。说 明 书CN 103077119 A1/3页8图1图2说 明 书 附 图CN 103077119 A2/3页9图3说 明 书 附 图CN 103077119 A3/3页10图4说 明 书 附 图CN 103077119 A10。