CN110287129B - 基于固态硬盘的l2p表更新及写入管理方法和装置 - Google Patents
基于固态硬盘的l2p表更新及写入管理方法和装置 Download PDFInfo
- Publication number
- CN110287129B CN110287129B CN201910568298.9A CN201910568298A CN110287129B CN 110287129 B CN110287129 B CN 110287129B CN 201910568298 A CN201910568298 A CN 201910568298A CN 110287129 B CN110287129 B CN 110287129B
- Authority
- CN
- China
- Prior art keywords
- writing
- management
- mng
- solid state
- updating
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System (AREA)
Abstract
本申请涉及一种基于固态硬盘的L2P表更新及写入管理方法、装置、计算机设备和存储介质,其中该方法包括:获取基于固态硬盘的L2P表更新及写入管理请求;根据所述管理请求为对应的L2P表分配两个管理结构体进行管理;在写入的过程中锁定第一管理结构体,开启写入NAND的流程;同时通过第二管理结构体管理被标记的L2P表,从而在L2P表写入NAND的时间不必阻塞FTL处理其他控制节点以实现提升SSD的效率。本发明提出一种固态存储设备l2p表更新及写入的管理方法,在L2P表写入的时间不必阻塞FTL处理其他控制节点,提升SSD的效率。
Description
技术领域
本发明涉及固态硬盘技术领域,特别是涉及一种基于固态硬盘的L2P表更新及写入管理方法、装置、计算机设备和存储介质。
背景技术
目前,SSD(Solid State Disk固态硬盘)已经被广泛应用于各种场合,由于其在性能、功耗、环境适应性等方面的优秀指标,正逐步替换传统的硬盘。FTL(Flash TranslationLayer)算法是SSD(Solid State Disk)固件的核心部分,由于NAND不允许page上重复写入,FTL需要维护逻辑到物理的地址映射。
在传统技术中,目前SSD固件大都采用页映射的方式,地址映射表即L2P表在DDR中加载或者修改,然后FTL会管理这些被修改的L2P表,在某个时候触发一个L2P表写入的任务将这些“脏”的表格写入NAND。通常这样的处理机制,在映射表写入NAND的时间中,FTL需要停止处理可能更改地址映射表的操作节点,而这样会影响SSD的效率。
发明内容
基于此,有必要针对上述技术问题,提供一种可以提升SSD效率的基于固态硬盘的L2P表更新及写入管理方法、装置、计算机设备和存储介质。
一种基于固态硬盘的L2P表更新及写入管理方法,所述方法包括:
获取基于固态硬盘的L2P表更新及写入管理请求;
根据所述管理请求为对应的L2P表分配两个管理结构体进行管理;
在写入的过程中锁定第一管理结构体,开启写入NAND的流程;
同时通过第二管理结构体管理被标记的L2P表,从而在L2P表写入NAND的时间不必阻塞FTL处理其他控制节点以实现提升SSD的效率。
在其中一个实施例中,所述方法还包括:
获取基于固态硬盘的L2P表更新请求;
根据所述更新请求在DDR中修改对应的L2P表,其中,所述L2P表按照一定的颗粒度切分成多个mp,所述mp对应的映射表会在NAND中保存;
根据mp的颗粒度计算修改位置所在mp,并检查所述mp对应的bmp中的位是否已经置上;
若所述mp对应的bmp中的位没有置上,则将对应的位置上并更新dirty_cnt;
当所述dirty_cnt的大小大于预设的刷新阈值时,触发L2P写入任务。
在其中一个实施例中,在所述检查所述mp对应的bmp中的位是否已经置上的步骤之后还包括:
若所述mp对应的bmp中的位已经置上,则直接跳出。
在其中一个实施例中,所述方法还包括:
获取基于固态硬盘的L2P表写入请求;
根据所述写入请求将flush_mng指向active_mng的对象,将active_mng指向的对象交换成另一个mng;
将任务中被标记的L2P表写入NAND,并更新M2P表。
一种基于固态硬盘的L2P表更新及写入管理装置,所述装置包括:
获取模块,所述获取模块用于获取基于固态硬盘的L2P表更新及写入管理请求;
分配管理模块,所述分配管理模块用于根据所述管理请求为对应的L2P表分配两个管理结构体进行管理;
第一管理模块,所述第一管理模块用于在写入的过程中锁定第一管理结构体,开启写入NAND的流程;
第二管理模块,所述第二管理模块用于同时通过第二管理结构体管理被标记的L2P表,从而在L2P表写入NAND的时间不必阻塞FTL处理其他控制节点以实现提升SSD的效率。
在其中一个实施例中,所述装置还包括L2P表更新模块,所述L2P表更新模块用于:
获取基于固态硬盘的L2P表更新请求;
根据所述更新请求在DDR中修改对应的L2P表,其中,所述L2P表按照一定的颗粒度切分成多个mp,所述mp对应的映射表会在NAND中保存;
根据mp的颗粒度计算修改位置所在mp,并检查所述mp对应的bmp中的位是否已经置上;
若所述mp对应的bmp中的位没有置上,则将对应的位置上并更新dirty_cnt;
当所述dirty_cnt的大小大于预设的刷新阈值时,触发L2P写入任务。
在其中一个实施例中,所述L2P表更新模块还用于:
若所述mp对应的bmp中的位已经置上,则直接跳出。
在其中一个实施例中,所述装置还包括L2P表写入模块,所述L2P表写入模块用于:
获取基于固态硬盘的L2P表写入请求;
根据所述写入请求将flush_mng指向active_mng的对象,将active_mng指向的对象交换成另一个mng;
将任务中被标记的L2P表写入NAND,并更新M2P表。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任意一项方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项方法的步骤。
上述基于固态硬盘的L2P表更新及写入管理方法、装置、计算机设备和存储介质,通过获取基于固态硬盘的L2P表更新及写入管理请求;根据管理请求为对应的L2P表分配双Cache进行管理。通过双Cache的管理方法,在写入的过程中锁定一个Cache,开启写入NAND的流程,同时用另一个Cache管理新的标记为“脏”的映射表,从而在地址映射表写入的时间不必阻塞FTL处理其他控制节点,提升SSD的效率。
附图说明
图1为传统技术中逻辑页物理映射表的示意图;
图2为传统技术中映射表写入过程中的管理结构体的示意图;
图3为一个实施例中基于固态硬盘的L2P表更新及写入管理方法的流程示意图;
图4为另一个实施例中基于固态硬盘的L2P表更新及写入管理方法的流程示意图;
图5为再一个实施例中基于固态硬盘的L2P表更新及写入管理方法的流程示意图;
图6为一个实施例中映射表写入过程中的双管理结构体的示意图;
图7为一个实施例中更新L2P表步骤的流程示意图;
图8为一个实施例中L2P表写入步骤的流程示意图;
图9为一个实施例中基于固态硬盘的L2P表更新及写入管理装置的结构框图;
图10为另一个实施例中基于固态硬盘的L2P表更新及写入管理装置的结构框图;
图11为再一个实施例中基于固态硬盘的L2P表更新及写入管理装置的结构框图;
图12为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
现有的SSD***中通常会在DDR中更新L2P表然后触发写入任务后台写入NAND;可能会采用下面介绍的方式。
如图1所示,左边的L2P table为逻辑页物理地址映射表,表格以逻辑页地址索引,表格中为逻辑页对应的物理地址,这份表格在DDR中保存,将这份表格按照一定的颗粒度切分,本例中这个切割为每64个表项组成一个mp,mp对应的映射表会在NAND中保存,图1右的M2P table以mp编号索引,记录mp对应的映射表在NAND中保存的地址。
如图2所示,为映射表写入的管理结构体,dirty_bmp[]为数组,每一个bit位被置上代表对应的mp的内容被修改了(标记为“脏”,未被写入NAND),dirty_cnt记录“脏”的mp的个数,当大于某个阈值,则触发一次写入任务,将DDR中“脏”的映射表写入NAND中,再将这个结构体清零;写入某段mp的L2P表需要分配一个新的页,并将这段数据复制到一段缓冲区与其他的“脏”的L2P表凑成一个页,如果在写入过程中,这段表格已经被复制,其他的任务对这段表格修改,那么写入NAND中数据将会是旧的数据,而该“脏”的mp将在写入完成后对应的bit位被清除,这样后果就是表格被修改而这次更新不是最新的数据;而如果写入任务中不断有新的“脏”mp被标记则当前写入任务状态机会无法跳出;所以通常做法是在进入映射表写入任务时候锁定L2P表,禁止修改该表格的任务;这样会在一定程度上影响SSD的效率。
本发明基于上述技术问题提出了一种优化的SSD坏块管理方法,提出一种固态存储设备L2P表更新及写入的管理方法,在L2P表写入的时间不必阻塞FTL处理其他控制节点,提升SSD的效率。
在一个实施例中,如图3所示,提供了一种基于固态硬盘的L2P表更新及写入管理方法,该方法包括:
步骤302,获取基于固态硬盘的L2P表更新及写入管理请求;
步骤304,根据管理请求为对应的L2P表分配两个管理结构体进行管理;
步骤306,在写入的过程中锁定第一管理结构体,开启写入NAND的流程;
步骤308,同时通过第二管理结构体管理被标记的L2P表,从而在L2P表写入NAND的时间不必阻塞FTL处理其他控制节点以实现提升SSD的效率。
具体地,参考图6所示,有两个负责L2P表更新及写入的管理结构体mng[0]和mng[1],以及两个指针active_mng和flush_mng指向上述两个管理结构体之一。active_mng指向的结构体负责管理固件运行中L2P表修改的标记,当其中的dirty_cnt大于某个阈值,则触发L2P表写入任务。在L2P表写入任务的开始,将flush_mng指向active_mng的对象,将active_mng的对象交换成另一个mng。在本次L2P写入任务中将处理flush_mng管理的L2P表的写入,在写入完成后该管理结构体清零,同时在写入过程中,对L2P表的修改将在active_mng中被标记。这样,实现了在L2P表写入的时间不必阻塞FTL处理其他控制节点,提升SSD的效率。
在本实施例中,通过获取基于固态硬盘的L2P表更新及写入管理请求;管理请求为对应的L2P表分配双Cache进行管理。通过双Cache的管理方法,在写入的过程中锁定一个Cache,开启写入NAND的流程,同时用另一个Cache管理新的标记为“脏”的映射表,从而在地址映射表写入的时间不必阻塞FTL处理其他控制节点,实现了提升SSD的效率。
在一个实施例中,如图4所示,提供了一种基于固态硬盘的L2P表更新及写入管理方法,该方法还包括:
步骤402,获取基于固态硬盘的L2P表更新请求;
步骤404,根据更新请求在DDR中修改对应的L2P表,其中,L2P表按照一定的颗粒度切分成多个mp,mp对应的映射表会在NAND中保存;
步骤406,根据mp的颗粒度计算修改位置所在mp,并检查mp对应的bmp中的位是否已经置上;
步骤408,若mp对应的bmp中的位没有置上,则将对应的位置上并更新dirty_cnt;
步骤410,当dirty_cnt的大小大于预设的刷新阈值时,触发L2P写入任务。
在一个实施例中,在检查mp对应的bmp中的位是否已经置上的步骤之后还包括:
若mp对应的bmp中的位已经置上,则直接跳出。
具体地,参考图7所示,在本实施例中更新L2P表的流程包括:
更新L2P表首先在DDR中修改,然后根据mp的颗粒度计算修改的位置所在mp,检查active_mng结构体中mp对应的bmp中的bit位是否已经置上(代表标记为“脏”),如果已经置上则跳出,否则置上对应的位,更新dirty_cnt,如果大于L2P表写入任务的阈值则触发该任务,否则跳出。
在本实施例中,在L2P表写入的时间不必阻塞FTL处理其他控制节点,提升了SSD的效率。
在一个实施例中,如图5所示,提供了一种基于固态硬盘的L2P表更新及写入管理方法,该方法还包括:
步骤502,获取基于固态硬盘的L2P表写入请求;
步骤504,根据写入请求将flush_mng指向active_mng的对象,将active_mng指向的对象交换成另一个mng;
步骤506,将任务中被标记的L2P表写入NAND,并更新M2P表。
具体地,参考图8所示,在本实施例中L2P表写入任务的流程包括:
在L2P写入任务的开始,首先将flush_mng指向active_mng的对象,将active_mng的对象交换成另一个mng,任务中将flush_mng管理的标记为“脏”的L2P表写入NAND,更新M2P表。
应该理解的是,虽然图3-8的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图3-8中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图9所示,提供了一种基于固态硬盘的L2P表更新及写入管理装置900,该装置包括:
获取模块901,用于获取基于固态硬盘的L2P表更新及写入管理请求;
分配管理模块902,用于根据所述管理请求为对应的L2P表分配两个管理结构体进行管理;
第一管理模块903,用于在写入的过程中锁定第一管理结构体,开启写入NAND的流程;
第二管理模块904,用于同时通过第二管理结构体管理被标记的L2P表,从而在L2P表写入NAND的时间不必阻塞FTL处理其他控制节点以实现提升SSD的效率。
在一个实施例中,如图10所示,提供了一种基于固态硬盘的L2P表更新及写入管理装置900,该装置还包括L2P表更新模块905,用于:
获取基于固态硬盘的L2P表更新请求;
根据更新请求在DDR中修改对应的L2P表,其中,L2P表按照一定的颗粒度切分成多个mp,mp对应的映射表会在NAND中保存;
根据mp的颗粒度计算修改位置所在mp,并检查mp对应的bmp中的位是否已经置上;
若mp对应的bmp中的位没有置上,则将对应的位置上并更新dirty_cnt;
当dirty_cnt的大小大于预设的刷新阈值时,触发L2P写入任务。
在一个实施例中,L2P表更新模块905还用于:
若mp对应的bmp中的位已经置上,则直接跳出。
在一个实施例中,如图11所示,提供了一种基于固态硬盘的L2P表更新及写入管理装置900,该装置还包括L2P表写入模块906,用于:
获取基于固态硬盘的L2P表写入请求;
根据写入请求将flush_mng指向active_mng的对象,将active_mng指向的对象交换成另一个mng;
将任务中被标记的L2P表写入NAND,并更新M2P表。
关于基于固态硬盘的L2P表更新及写入管理装置的具体限定可以参见上文中对于基于固态硬盘的L2P表更新及写入管理方法的限定,在此不再赘述。
在一个实施例中,提供了一种计算机设备,其内部结构图可以如图12所示。该计算机设备包括通过装置总线连接的处理器、存储器以及网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作装置、计算机程序和数据库。该内存储器为非易失性存储介质中的操作装置和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于固态硬盘的L2P表更新及写入管理方法。
本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以上各个方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以上各个方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (4)
1.一种基于固态硬盘的L2P表更新及写入管理方法,所述方法包括:
获取基于固态硬盘的L2P表更新及写入管理请求;
根据所述管理请求为对应的L2P表分配两个管理结构体进行管理;
在写入的过程中锁定第一管理结构体,开启写入NAND的流程;
同时通过第二管理结构体管理被标记的L2P表,从而在L2P表写入NAND的时间不必阻塞FTL处理其他控制节点以实现提升SSD的效率;
所述方法还包括:获取基于固态硬盘的L2P表更新请求;
根据所述更新请求在DDR中修改对应的L2P表,其中,所述L2P表按照一定的颗粒度切分成多个mp,所述mp对应的映射表会在NAND中保存;
根据mp的颗粒度计算修改位置所在mp,并检查所述mp对应的bmp中的位是否已经置上;若所述mp对应的bmp中的位没有置上,则将对应的位置上并更新dirty_cnt; bmp为数组,每一个bit位被置上代表对应mp的内容被修改了,dirty_cnt用于记录被修改的mp的个数;
当所述dirty_cnt的大小大于预设的刷新阈值时,触发L2P写入任务;
获取基于固态硬盘的L2P表写入请求;
根据所述写入请求将flush_mng指向active_mng的对象,将active_mng指向的对象交换成另一个管理结构体;其中,两个指针active_mng和flush_mng分别指向两个管理结构体; active_mng指向的管理结构体负责管理固件运行中L2P表修改的标记;在L2P写入过程中将处理flush_mng管理的L2P表的写入,在写入完成后该管理结构体清零,同时在写入过程中,对L2P表的修改将在active_mng中被标记;
将任务中被标记的L2P表写入NAND,并更新M2P表,所述M2P表以mp编号索引,记录mp对应的映射表在NAND中保存的地址。
2.根据权利要求1所述的基于固态硬盘的L2P表更新及写入管理方法,其特征在于,在所述检查所述mp对应的bmp中的位是否已经置上的步骤之后还包括:
若所述mp对应的bmp中的位已经置上,则直接跳出。
3.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1或2所述方法的步骤。
4.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1或2所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910568298.9A CN110287129B (zh) | 2019-06-27 | 2019-06-27 | 基于固态硬盘的l2p表更新及写入管理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910568298.9A CN110287129B (zh) | 2019-06-27 | 2019-06-27 | 基于固态硬盘的l2p表更新及写入管理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110287129A CN110287129A (zh) | 2019-09-27 |
CN110287129B true CN110287129B (zh) | 2021-07-13 |
Family
ID=68019252
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910568298.9A Active CN110287129B (zh) | 2019-06-27 | 2019-06-27 | 基于固态硬盘的l2p表更新及写入管理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110287129B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111045956B (zh) * | 2019-12-22 | 2021-10-22 | 北京浪潮数据技术有限公司 | 一种基于多核cpu的固态硬盘垃圾回收方法以及装置 |
CN114201331B (zh) * | 2022-02-17 | 2022-05-31 | 深圳佰维存储科技股份有限公司 | 固态硬盘的指令冲突检测方法、装置、设备和存储介质 |
CN117149091A (zh) * | 2023-10-23 | 2023-12-01 | 四川云海芯科微电子科技有限公司 | 一种固态硬盘数据保存方法及相关装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101382918A (zh) * | 2008-07-26 | 2009-03-11 | 深圳市硅格半导体有限公司 | 一种基于数据交换区的NAND Flash闪存优化管理方法 |
CN102043727A (zh) * | 2009-10-10 | 2011-05-04 | 成都市华为赛门铁克科技有限公司 | 恢复固态硬盘映射表的方法及其装置 |
CN102662849A (zh) * | 2012-03-07 | 2012-09-12 | 忆正科技(武汉)有限公司 | 多通道闪存的区块管理方法 |
CN103425600A (zh) * | 2013-08-23 | 2013-12-04 | 中国人民解放军国防科学技术大学 | 一种固态盘闪存转换层中的地址映射方法 |
US8645664B1 (en) * | 2011-08-11 | 2014-02-04 | Pure Storage, Inc. | Logical sector mapping in a flash storage array |
CN103999038A (zh) * | 2011-12-28 | 2014-08-20 | 英特尔公司 | 用于在易失性存储器与非易失性存储器之间分布代码和数据存储的方法和设备 |
CN107943719A (zh) * | 2017-11-28 | 2018-04-20 | 杭州电子科技大学 | 一种基于请求分类的闪存转换层控制方法 |
CN109918316A (zh) * | 2019-02-26 | 2019-06-21 | 深圳忆联信息***有限公司 | 一种减少ftl地址映射空间的方法及其*** |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008191808A (ja) * | 2007-02-02 | 2008-08-21 | Hitachi Ltd | ストレージシステム |
US7809891B2 (en) * | 2007-04-09 | 2010-10-05 | Sap Ag | Wait-free parallel data cache |
US20150378886A1 (en) * | 2013-04-08 | 2015-12-31 | Avalanche Technology, Inc. | Software-defined ssd and system using the same |
CN109783411B (zh) * | 2018-12-20 | 2022-05-17 | 成都旋极历通信息技术有限公司 | 一种基于fpga的flash阵列控制方法及控制器 |
-
2019
- 2019-06-27 CN CN201910568298.9A patent/CN110287129B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101382918A (zh) * | 2008-07-26 | 2009-03-11 | 深圳市硅格半导体有限公司 | 一种基于数据交换区的NAND Flash闪存优化管理方法 |
CN102043727A (zh) * | 2009-10-10 | 2011-05-04 | 成都市华为赛门铁克科技有限公司 | 恢复固态硬盘映射表的方法及其装置 |
US8645664B1 (en) * | 2011-08-11 | 2014-02-04 | Pure Storage, Inc. | Logical sector mapping in a flash storage array |
CN103999038A (zh) * | 2011-12-28 | 2014-08-20 | 英特尔公司 | 用于在易失性存储器与非易失性存储器之间分布代码和数据存储的方法和设备 |
CN102662849A (zh) * | 2012-03-07 | 2012-09-12 | 忆正科技(武汉)有限公司 | 多通道闪存的区块管理方法 |
CN103425600A (zh) * | 2013-08-23 | 2013-12-04 | 中国人民解放军国防科学技术大学 | 一种固态盘闪存转换层中的地址映射方法 |
CN107943719A (zh) * | 2017-11-28 | 2018-04-20 | 杭州电子科技大学 | 一种基于请求分类的闪存转换层控制方法 |
CN109918316A (zh) * | 2019-02-26 | 2019-06-21 | 深圳忆联信息***有限公司 | 一种减少ftl地址映射空间的方法及其*** |
Non-Patent Citations (1)
Title |
---|
Flash存储器混合型地址映射算法研究;高源;《中国优秀硕士学位论文全文数据库·信息科技辑》;20150215;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110287129A (zh) | 2019-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8307149B2 (en) | Nonvolatile memory device including a logical-to-physical logig-to-physical address conversion table, a temporary block and a temporary table | |
US7594067B2 (en) | Enhanced data access in a storage device | |
CN110287129B (zh) | 基于固态硬盘的l2p表更新及写入管理方法和装置 | |
US10936207B2 (en) | Linked lists in flash memory | |
US8914570B2 (en) | Selective write-once-memory encoding in a flash based disk cache memory | |
CN110297603B (zh) | 基于固态硬盘的随机写性能提升方法、装置和计算机设备 | |
CN107066498B (zh) | 键值kv存储方法和装置 | |
US11347417B2 (en) | Locking structures in flash memory | |
US20150193339A1 (en) | System and method for efficient address translation of flash memory device | |
US11106362B2 (en) | Additive library for data structures in a flash memory | |
US20180150390A1 (en) | Data Storage Device and Operating Method Therefor | |
US20140223072A1 (en) | Tiered Caching Using Single Level Cell and Multi-Level Cell Flash Technology | |
CN114840449B (zh) | 基于MCU片内flash的数据存储方法、装置、设备及存储介质 | |
US10942811B2 (en) | Data processing method for solid state drive | |
CN110569000A (zh) | 基于固态硬盘阵列的主机端raid管理方法和装置 | |
CN114253483A (zh) | 基于命令的写缓存管理方法、装置、计算机设备及存储介质 | |
US20140195571A1 (en) | Fast new file creation cache | |
CN114168225B (zh) | 固态硬盘映射表延迟更新方法、装置、计算机设备及存储介质 | |
KR20150139383A (ko) | 반도체 장치 | |
CN107562654B (zh) | Io命令处理方法与装置 | |
CN111625477A (zh) | 访问擦除块的读请求的处理方法与装置 | |
CN110737405A (zh) | 基于固态硬盘的wordline数据存储实现方法和装置 | |
CN113703671B (zh) | 一种数据块擦除方法及相关装置 | |
US11321243B2 (en) | Data storage device including a semiconductor device managing address mapping of a semiconductor memory device | |
CN115220661A (zh) | DRAM-less固态硬盘的映射表管理方法、装置和计算机设备 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |