CN109271329A - 一种提高重建未映射表效率的方法 - Google Patents

一种提高重建未映射表效率的方法 Download PDF

Info

Publication number
CN109271329A
CN109271329A CN201811016962.0A CN201811016962A CN109271329A CN 109271329 A CN109271329 A CN 109271329A CN 201811016962 A CN201811016962 A CN 201811016962A CN 109271329 A CN109271329 A CN 109271329A
Authority
CN
China
Prior art keywords
mapping table
hard disk
state hard
nand flash
solid
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
CN201811016962.0A
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.)
Suzhou Focus Information Technology Co Ltd
Original Assignee
Suzhou Focus Information 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 Suzhou Focus Information Technology Co Ltd filed Critical Suzhou Focus Information Technology Co Ltd
Priority to CN201811016962.0A priority Critical patent/CN109271329A/zh
Priority to PCT/CN2018/116813 priority patent/WO2020042387A1/zh
Priority to LU101617A priority patent/LU101617B1/en
Publication of CN109271329A publication Critical patent/CN109271329A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0873Mapping of cache memory to specific storage devices or parts thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7208Multiple device management, e.g. distributing data over multiple flash devices

Abstract

一种提高重建未映射表效率的方法,其特征在于在将映射表和未映射表更新到nand flash中时,先更新映射表,再写入更新,最后增加写入结束标志,固态硬盘上电时先检查结束标志,如果结束标志正确则继续从nand flash中读取未映射表数据作为在固态硬盘控制器的缓存中的未映射表的初始数据;如果结束标志异常则重新扫描映射表生成新的未映射表的初始数据,并更新nand flash中的未映射表信息。

Description

一种提高重建未映射表效率的方法
技术领域
本发明涉及固态硬盘控制技术,特别涉及一种提高重建未映射表效率的方法。
背景技术
现有固态硬盘对于逻辑地址到物理地址的映射普遍采用基于物理页的页映射、基于物理块的块映射和基于以上两者的混合映射。页映射由于映射颗粒度小,会带来映射表过大的问题;块映射一定程度缩小了映射表大小,但其受限于颗粒特性;混合映射又带来响应延迟的问题。
在固态存储设备中,主机读取数据,是按照逻辑地址(LBA)编号来标识读取哪段数据,当主机读取一个没有写过的逻辑地址(LBA)的数据时,这时固态存储设备需要返回主机一个特殊(比如全0)的数据,用以表示这段数据没有写入过,固态设备内部实现可以通过映射表来表示哪些逻辑地址(LBA)没有写入过,这些数据我们称之为no mapping data,主机读取这些no mapping data的操作我们称之为no mapping读;有的设备通过增加no mappingtable来提升提升主机no mapping read的性能。no mapping table的原理为:正常的映射表的映射颗粒读为4KB大小的单元,即该映射表每条映射信息记录的4KB数据存放的物理地址,假设主机需要读取4MB的数据,则需要范围4MB/4KB=1024个映射信息来读取全部4MB数据;而no mapping table可以将映射的颗粒度放大,例如:按照4MB的颗粒度去记录映射信息,当主机读取这4MB的映射信息时,只需要读取一条映射信息便可以得出该段数据在固态硬盘的位置;通常查找映射花费的时间的大小对读性能的影响较少,一般读写不会采用大颗粒读的映射方式,不过对no mapping读性能影响较大,这些no mapping读不需要读取nand flash的数据,只需要访问映射表即可以获取数据,因此映射表访问数据的快慢将会影响到no mapping读的性能高低。通常no mapping table的重建是在上电过程中通过扫描整个映射表来重建的,当映射表较大时,整个扫描的重建的时间较长。
发明内容
针对以上缺陷,本发明目的是如何提高重建未映射表效率。
为了解决以上问题本发明提出了一种提高重建未映射表效率的方法,其特征在于固态硬盘控制器在创建映射表时同时在固态硬盘控制器的缓存中创建未映射表,并在将映射表更新到nand flash的同时同步将未映射表更新到nand flash中,固态硬盘上电时从nand flash中读取未映射表数据作为在固态硬盘控制器的缓存中的未映射表的初始数据。
所述的提高重建未映射表效率的方法,其特征在于所述未映射表的映射单位比映射表的映射单位大。
所述的提高重建未映射表效率的方法,其特征在于还包括根据未映射表与映射表计算的校验码,所述校验码用于判断未映射表与映射表是否保持一致。
所述的提高重建未映射表效率的方法,其特征在于在将映射表和未映射表更新到nand flash中时,先更新映射表,再写入更新,最后增加写入结束标志,固态硬盘上电时先检查结束标志,如果结束标志正确则继续从nand flash中读取未映射表数据作为在固态硬盘控制器的缓存中的未映射表的初始数据;如果结束标志异常则重新扫描映射表生成新的未映射表的初始数据,并更新nand flash中的未映射表信息。
一种固态硬盘,其特征在于固态硬盘控制器在创建映射表时同时在固态硬盘控制器的缓存中创建未映射表,并在将映射表更新到nand flash的同时同步将未映射表更新到nand flash中,固态硬盘上电时从nand flash中读取未映射表数据作为在固态硬盘控制器的缓存中的未映射表的初始数据。
所述的固态硬盘,其特征在于所述未映射表的映射单位比映射表的映射单位大。
所述的固态硬盘,其特征在于还包括根据未映射表与映射表计算的校验码,所述校验码用于判断未映射表与映射表是否保持一致。
所述的固态硬盘,其特征在于在将映射表和未映射表更新到nand flash中时,先更新映射表,再写入更新,最后增加写入结束标志,固态硬盘上电时先检查结束标志,如果结束标志正确则继续从nand flash中读取未映射表数据作为在固态硬盘控制器的缓存中的未映射表的初始数据;如果结束标志异常则重新扫描映射表生成新的未映射表的初始数据,并更新nand flash中的未映射表信息。
本发明的有益效果是:通过将no mapping table写入到nand flash中,使得上电后直接从nand flash读取生成no mapping table,无须通过遍历整个映射表,加速了nomapping table生成速度。
附图说明
图1是映射表的更新刷新图示;
图2是一般no mapping table生成图;
图3是no mapping table快速重建方式图示;
图4是no mapping tableno mapping table的更新过程图示。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是映射表的更新刷新图示,一般情况下的映射表的更新以及写入nand flash的流程,主机的数据写入操作或者TRIM命令会导致映射表的更新,以128GB为例,映射表的大小为128MB。每次更新只会更新这128MB的部分数据,当更新的量达到一定阈值时(即128MB的数据有超过一定阈值的数据被修改时)就会触发映射表写入到nand flash中,保证掉电后映射表能够保存起来。
图2是一般no mapping table生成图,描述了一般情况下no mapping table的生成方式,上电后将整个映射表划分为若干个一样大小的区间,遍历这些区间里所有映射表的值,如果全部为no mapping的,则设置no mapping table对应字段为1,否则为0。
图3是no mapping table快速重建方式图示,描述了no mapping table的新的存储重建方式,整个no mapping table同映射表一同存储重建,在将映射表写入nand flash时同时将no mapping table写入nand flash,从nand flash读取映射表时同时读取nomapping table。
图4是no mapping table的更新过程图示,描述了no mapping table的更新方式,由于no mapping table需要同映射表写入nand flash,所以no mapping table必须同映射表一起更新,故在更新映射表过程中需要更新no mapping table。No mapping table的更新方式较简单,规则如下:
A)旧的映射信息为no mapping,新的映射信息为有效,则设置对应no mappingtable为false.
B)旧的映射信息为有效,新的映射信息为无效,扫描no mapping table对应整段映射信息,若全部为无效,则设置no mapping table为true,否则为false。
其它情况下不需要修改。
以上所揭露的仅为本发明一种实施例而已,当然不能以此来限定本之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于本发明所涵盖的范围。

Claims (8)

1.一种提高重建未映射表效率的方法,其特征在于固态硬盘控制器在创建映射表时同时在固态硬盘控制器的缓存中创建未映射表,并在将映射表更新到nand flash的同时同步将未映射表更新到nand flash中,固态硬盘上电时从nand flash中读取未映射表数据作为在固态硬盘控制器的缓存中的未映射表的初始数据。
2.根据权利要求1所述的提高重建未映射表效率的方法,其特征在于所述未映射表的映射单位比映射表的映射单位大。
3.根据权利要求2所述的提高重建未映射表效率的方法,其特征在于还包括根据未映射表与映射表计算的校验码,所述校验码用于判断未映射表与映射表是否保持一致。
4.根据权利要求2所述的提高重建未映射表效率的方法,其特征在于在将映射表和未映射表更新到nand flash中时,先更新映射表,再写入更新,最后增加写入结束标志,固态硬盘上电时先检查结束标志,如果结束标志正确则继续从nand flash中读取未映射表数据作为在固态硬盘控制器的缓存中的未映射表的初始数据;如果结束标志异常则重新扫描映射表生成新的未映射表的初始数据,并更新nand flash中的未映射表信息。
5.一种固态硬盘,其特征在于固态硬盘控制器在创建映射表时同时在固态硬盘控制器的缓存中创建未映射表,并在将映射表更新到nand flash的同时同步将未映射表更新到nand flash中,固态硬盘上电时从nand flash中读取未映射表数据作为在固态硬盘控制器的缓存中的未映射表的初始数据。
6.根据权利要求5所述的固态硬盘,其特征在于所述未映射表的映射单位比映射表的映射单位大。
7.根据权利要求5或6所述的固态硬盘,其特征在于还包括根据未映射表与映射表计算的校验码,所述校验码用于判断未映射表与映射表是否保持一致。
8.根据权利要求5或6所述的固态硬盘,其特征在于在将映射表和未映射表更新到nandflash中时,先更新映射表,再写入更新,最后增加写入结束标志,固态硬盘上电时先检查结束标志,如果结束标志正确则继续从nand flash中读取未映射表数据作为在固态硬盘控制器的缓存中的未映射表的初始数据;如果结束标志异常则重新扫描映射表生成新的未映射表的初始数据,并更新nand flash中的未映射表信息。
CN201811016962.0A 2018-09-01 2018-09-01 一种提高重建未映射表效率的方法 Pending CN109271329A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201811016962.0A CN109271329A (zh) 2018-09-01 2018-09-01 一种提高重建未映射表效率的方法
PCT/CN2018/116813 WO2020042387A1 (zh) 2018-09-01 2018-11-22 一种提高重建未映射表效率的方法
LU101617A LU101617B1 (en) 2018-09-01 2018-11-22 Method for improving the efficiency of reconstructing no mapping tables

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811016962.0A CN109271329A (zh) 2018-09-01 2018-09-01 一种提高重建未映射表效率的方法

Publications (1)

Publication Number Publication Date
CN109271329A true CN109271329A (zh) 2019-01-25

Family

ID=65187680

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811016962.0A Pending CN109271329A (zh) 2018-09-01 2018-09-01 一种提高重建未映射表效率的方法

Country Status (3)

Country Link
CN (1) CN109271329A (zh)
LU (1) LU101617B1 (zh)
WO (1) WO2020042387A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112885397A (zh) * 2019-11-29 2021-06-01 慧荣科技股份有限公司 数据储存装置以及非挥发式存储器控制方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102043727A (zh) * 2009-10-10 2011-05-04 成都市华为赛门铁克科技有限公司 恢复固态硬盘映射表的方法及其装置
CN107193758A (zh) * 2017-05-19 2017-09-22 记忆科技(深圳)有限公司 一种固态硬盘的映射表管理方法及固态硬盘
CN107832237A (zh) * 2017-11-22 2018-03-23 深圳忆联信息系统有限公司 一种快速重建未映射表的方法及固态硬盘

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7058784B2 (en) * 2003-07-04 2006-06-06 Solid State System Co., Ltd. Method for managing access operation on nonvolatile memory and block structure thereof
CN104461387B (zh) * 2014-12-02 2018-04-27 记忆科技(深圳)有限公司 一种提高固态硬盘对未映射区域的读性能的方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102043727A (zh) * 2009-10-10 2011-05-04 成都市华为赛门铁克科技有限公司 恢复固态硬盘映射表的方法及其装置
CN107193758A (zh) * 2017-05-19 2017-09-22 记忆科技(深圳)有限公司 一种固态硬盘的映射表管理方法及固态硬盘
CN107832237A (zh) * 2017-11-22 2018-03-23 深圳忆联信息系统有限公司 一种快速重建未映射表的方法及固态硬盘

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112885397A (zh) * 2019-11-29 2021-06-01 慧荣科技股份有限公司 数据储存装置以及非挥发式存储器控制方法
CN112885397B (zh) * 2019-11-29 2024-04-02 慧荣科技股份有限公司 数据储存装置以及非挥发式存储器控制方法

Also Published As

Publication number Publication date
WO2020042387A1 (zh) 2020-03-05
LU101617B1 (en) 2020-05-25

Similar Documents

Publication Publication Date Title
JP4372134B2 (ja) データ比較機能を有するストレージシステム
CN107832237B (zh) 一种快速重建未映射表的方法及固态硬盘
US8725936B2 (en) Storage system with flash memory, and storage control method
US9317436B2 (en) Cache node processing
KR100697761B1 (ko) 디스크 어레이 장치와 그 데이터의 리커버리 방법 및 데이터 리커버리 프로그램을 기록한 기록 매체
KR101870521B1 (ko) 스토리지 저널링을 개선하는 방법 및 시스템
EP1804169A1 (en) Storage apparatus
TWI531963B (zh) Data storage systems and their specific instruction enforcement methods
US20100205354A1 (en) Storage device using flash memory
US8825946B2 (en) Memory system and data writing method
TW201411343A (zh) 資料儲存裝置與快閃記憶體控制方法
JP2006252530A (ja) ディスクライト抜け検出装置およびディスクライト抜け検出方法
US20180188981A1 (en) Methods and apparatus for read disturb detection based on logical domain
EP3346387B1 (en) Storage system and system garbage collection method
TW201931366A (zh) 資料儲存裝置以及非揮發式記憶體操作方法
JP2013239099A (ja) 制御装置、記憶装置、記憶制御方法
US9710375B2 (en) Writing an address conversion table for nonvolatile memory wear leveling
TWI459198B (zh) 記憶體儲存裝置、其記憶體控制器與有效資料識別方法
JP4922433B2 (ja) 磁気ディスク装置及びデータブロックの書き換え方法
TW201007740A (en) Method for managing data and storage apparatus thereof and controller thereof
CN109271329A (zh) 一种提高重建未映射表效率的方法
JP6052288B2 (ja) ディスクアレイ制御装置、ディスクアレイ制御方法及びディスクアレイ制御プログラム
JP4837121B1 (ja) データ記憶装置及びデータ書き込み方法
JPWO2016001962A1 (ja) ストレージシステム及び記憶制御方法
JP2013061814A (ja) データ記憶装置、メモリ制御装置及び方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20190125

WD01 Invention patent application deemed withdrawn after publication