Nothing Special   »   [go: up one dir, main page]

CN103777905B - Software-defined fusion storage method for solid-state disc - Google Patents

Software-defined fusion storage method for solid-state disc Download PDF

Info

Publication number
CN103777905B
CN103777905B CN201410051045.1A CN201410051045A CN103777905B CN 103777905 B CN103777905 B CN 103777905B CN 201410051045 A CN201410051045 A CN 201410051045A CN 103777905 B CN103777905 B CN 103777905B
Authority
CN
China
Prior art keywords
request
address
pcm
solid
data
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
Application number
CN201410051045.1A
Other languages
Chinese (zh)
Other versions
CN103777905A (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.)
Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and Technology
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 Huazhong University of Science and Technology filed Critical Huazhong University of Science and Technology
Priority to CN201410051045.1A priority Critical patent/CN103777905B/en
Publication of CN103777905A publication Critical patent/CN103777905A/en
Application granted granted Critical
Publication of CN103777905B publication Critical patent/CN103777905B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention discloses a software-defined fusion storage method for a solid-state disc. An HFSL (host fusion storage layer) is added on a host, physical block characteristics of the solid-state disc and statistical information during usage are obtained directly, complex IO (input/output) scheduling and management of the solid-state disc are conducted in combination with upper-layer data access characteristics, and an address mapping method with variable allocation granularities is used for realizing persistent high performance of the solid-state disc. According to the method, performance optimization of an NAND flash and storage management fusing a PCM (phase change memory) and the NAND flash are realized on the host, and the outstanding performance of the PCM is used for making up performance defects of the NAND flash, so that the read/write performance of the solid-state disc is improved, and the service life of the solid-state disc is prolonged.

Description

一种软件定义的固态盘融合存储方法A software-defined solid-state disk fusion storage method

技术领域technical field

本发明属于计算机数据存储领域,具体涉及一种软件定义的固态盘融合存储方法。The invention belongs to the field of computer data storage, and in particular relates to a software-defined solid-state disk fusion storage method.

背景技术Background technique

近些年来,基于NAND FLASH的固态盘飞速发展,已经逐渐取代传统的机械硬盘。NAND FLASH芯片制程工艺不断提高,从2008年的25nm制程到现在的10nm制程,性能不断提高。然而NAND FLASH的磨损次数有限,小写性能差,不支持原地修改等缺陷仍然限制了它的性能。In recent years, the rapid development of NAND FLASH-based solid-state disks has gradually replaced traditional mechanical hard disks. The manufacturing process of NAND FLASH chips has been continuously improved, from the 25nm process in 2008 to the current 10nm process, the performance has been continuously improved. However, NAND FLASH has limited wear times, poor lower-write performance, and does not support in-place modification, which still limits its performance.

现有的基于NAND FLASH的固态盘,基本上都是利用固态盘中的固件程序屏蔽NANDFLASH的缺点,提供类似磁盘的块设备接口供主机端使用。主机端完全把固态盘看成一个黑盒子,不管其物理特性而直接使用。虽然这是最简单,也是最快的取代传统机械硬盘的方法,但是这存在严重的缺点。例如,在主机端针对机械磁盘设计的IO调度算法将不适用于固态盘,针对机械磁盘设计的文件系统也将不适用于固态盘;由于NAND FLASH的读写操作单位是Page(最小2KB)单位,传统以磁盘扇区大小(512B)为单位的请求发送到固态盘中,导致在固态盘中需要额外的处理请求的合并与分发,降低了存储速度;主机端无法获取固态盘的物理特性、磨损状况、使用信息,无法在文件的管理、地址空间的分配上进行性能优化。除此之外,由于固态盘的控制器需对NAND FLASH进行缺点屏蔽和性能优化,占用了大量的嵌入式系统有限的资源,这是非常不划算的,且因不知主机端数据的特点使得性能提升受限。因此需要重新考虑基于NAND FLASH的固态盘的存储结构设计,向主机暴露更多的物理特性及使用信息,使主机不能再完全把固态盘看成黑盒子,而看成一个灰盒子。The existing NAND FLASH-based solid-state disk basically uses the firmware program in the solid-state disk to shield the shortcomings of NAND FLASH, and provides a disk-like block device interface for the host to use. The host side completely regards the SSD as a black box and uses it directly regardless of its physical characteristics. While this is the easiest and fastest way to replace a traditional mechanical hard drive, it has serious drawbacks. For example, the IO scheduling algorithm designed for mechanical disks on the host side will not be applicable to solid-state disks, and the file system designed for mechanical disks will not be applicable to solid-state disks; since the read and write operation unit of NAND FLASH is Page (minimum 2KB) unit , the traditional request in the unit of disk sector size (512B) is sent to the solid-state disk, resulting in the need for additional merging and distribution of processing requests in the solid-state disk, which reduces the storage speed; the host cannot obtain the physical characteristics of the solid-state disk, Wear status and usage information, performance optimization cannot be performed on file management and address space allocation. In addition, because the controller of the solid-state disk needs to shield the shortcomings and optimize the performance of NAND FLASH, it takes up a lot of limited resources of the embedded system, which is very uneconomical, and because the characteristics of the host-side data do not know the performance Ascension is limited. Therefore, it is necessary to reconsider the storage structure design of NAND FLASH-based SSDs, and expose more physical characteristics and usage information to the host, so that the host can no longer completely regard the SSD as a black box, but as a gray box.

Fusion-io公司提出了一种VSL(Visual Storage Layer)层,同样把固态盘看成灰盒子,把FTL(Flash Translation Layer闪存转换层)放在主机端驱动程序下实现,获取了很大的性能提高。但VSL是驱动程序与FTL的结合,实际上到达驱动程序层的IO请求已经不具备那么多的数据属性,在驱动程序中不能有效的针对固态盘的物理特性做优化,并且文件系统层仍然是无法获得固态盘的物理特性及磨损状况等统计信息,限制了固态盘的性能提升。Fusion-io company proposed a VSL (Visual Storage Layer) layer, which also regards the solid-state disk as a gray box, and puts the FTL (Flash Translation Layer) under the host-side driver to achieve great performance. improve. However, VSL is a combination of driver and FTL. In fact, the IO request arriving at the driver layer does not have so many data attributes. The driver cannot effectively optimize the physical characteristics of the SSD, and the file system layer is still Statistical information such as the physical characteristics and wear status of solid-state disks cannot be obtained, which limits the performance improvement of solid-state disks.

目前除了上述的高性能的NAND FLASH存储芯片,新型的非易失存储芯片的发展也非常快,特别是PCM(Phase Change Memory,相变存储器),现在美光公司已经生产有1GB大小的PCM存储芯片。PCM相对于NAND FLASH有很多优势,最特突出的就是PCM支持以字节为单位的读写操作,读写速度相对NAND FLASH要快,同时PCM写之前不需要擦除,并且具有更多的可磨损次数。目前PCM还处于研究阶段,关于PCM的研究基本都是用仿真的方法把PCM作为内存的替代或者与内存混合使用。特别是固态盘中,很多研究把PCM作为NAND FLASH的缓存使用,但是这并不能充分发挥PCM的性能优势来弥补NAND FLASH的性能缺点。In addition to the above-mentioned high-performance NAND FLASH memory chips, the development of new non-volatile memory chips is also very fast, especially PCM (Phase Change Memory, phase change memory). Now Micron has produced PCM memory chips with a size of 1GB . Compared with NAND FLASH, PCM has many advantages. The most prominent is that PCM supports read and write operations in units of bytes. The read and write speed is faster than that of NAND FLASH. At the same time, PCM does not need to be erased before writing, and has more possibilities. Wear times. At present, PCM is still in the research stage, and the research on PCM basically uses simulation methods to use PCM as a substitute for memory or to use it in combination with memory. Especially in solid-state disks, many studies use PCM as a cache of NAND FLASH, but this cannot give full play to the performance advantages of PCM to make up for the performance shortcomings of NAND FLASH.

发明内容Contents of the invention

鉴于此,本发明的目的是在主机端实现对NAND FLASH的性能优化以及PCM与NANDFLASH融合的存储管理,来提高固态盘的整体性能;同时,利用PCM优秀的性能弥补NANDFLASH的性能缺点,提高固态盘读写性能以及使用寿命。In view of this, the purpose of the present invention is to realize the performance optimization of NAND FLASH and the storage management of PCM and NAND FLASH fusion at the host end, to improve the overall performance of the solid state disk; at the same time, use the excellent performance of PCM to make up for the performance shortcomings of NAND FLASH, improve the performance of solid state Disk read and write performance and service life.

本发明提出一种软件定义的固态盘融合存储方法,其中,在基于NAND FLASH的固态盘中融合相变存储器(PCM),所述方法包括以下步骤:The present invention proposes a software-defined solid-state disk fusion storage method, wherein phase-change memory (PCM) is fused in a NAND FLASH-based solid-state disk, and the method includes the following steps:

(1)开机时从固态盘PCM固定区域读取PCM地址映射表和FLASH地址映射表到主机内存中,同时在主机内存中开辟一段固态盘的缓存区,当主机有访问固态盘的请求Q(lsn,size,op,data)时,首先获取Q.lsn和Q.size,根据Q.lsn以及Q.size判断请求Q访问的数据是否在缓存区中,其中,lsn是逻辑地址,size是请求大小,op是读写标志,data是数据在主机内存中的地址,即主机端的数据目的地址或源地址,(1) Read the PCM address mapping table and FLASH address mapping table from the PCM fixed area of the solid-state disk to the host memory when starting up, and open up a cache area of the solid-state disk in the host memory at the same time. When the host has a request to access the solid-state disk Q( lsn, size, op, data), first obtain Q.lsn and Q.size, and judge whether the data requested by Q is in the buffer according to Q.lsn and Q.size, where lsn is the logical address and size is the request Size, op is the read and write flag, data is the address of the data in the host memory, that is, the destination address or source address of the data on the host side,

如果命中,对于读请求,把数据从缓存区中拷贝到data地址,对于写请求,把data地址数据拷贝到缓存区中,转入步骤(8);如果没命中,对于读请求,转入步骤(2),对于写请求,如果缓存区没有满,直接把data地址处的数据拷贝到缓存区中,转入步骤(8),否则进行缓存区替换更新操作,转入步骤(3);If it hits, for the read request, copy the data from the cache to the data address, and for the write request, copy the data at the data address to the cache, and go to step (8); if not, for the read request, go to step (2) For a write request, if the cache area is not full, directly copy the data at the data address to the cache area, and then go to step (8); otherwise, replace and update the cache area, and go to step (3);

(2)获取读请求的Q.lsn和Q.size,查找PCM与FLASH地址映射表进行地址转换,转入步骤(6),其中,对于访问PCM的读请求,产生以PCM最优写粒度大小(如512B)为单位的读操作请求序列;对于访问FLASH的读请求,产生以FLASH物理页大小的读操作请求序列;(2) Obtain the Q.lsn and Q.size of the read request, search the PCM and FLASH address mapping table for address translation, and turn to step (6), wherein, for the read request to access the PCM, generate the optimal write granularity size of the PCM (such as 512B) as a unit of read operation request sequence; for a read request to access FLASH, a read operation request sequence with the size of a FLASH physical page is generated;

(3)设从缓存区中替换出来的请求为q,判断q.size的大小,如果q.size<NANDPAGE SIZE,转入步骤(4),否则转入步骤(5);(3) Let the request replaced from the buffer be q, and determine the size of q.size. If q.size<NANDPAGE SIZE, go to step (4), otherwise go to step (5);

(4)根据请求q.lsn的访问次数和访问时间,判断q.lsn访问数据的冷热性:如果是热数据,给q.lsn分配PCM磨损次数较少的物理地址;否则给q.lsn分配PCM磨损次数较多的物理地址;产生以PCM最优写粒度大小(如512B)为单位的写请求序列,并转入步骤(6);(4) According to the access times and access time of the requested q.lsn, judge whether the access data of q.lsn is hot or cold: if it is hot data, allocate a physical address with less PCM wear times to q.lsn; otherwise assign q.lsn Allocate physical addresses with more PCM wear times; generate a write request sequence with the optimal PCM write granularity size (such as 512B) as the unit, and turn to step (6);

(5)根据请求q.lsn的访问次数和访问时间,判断q.lsn访问数据的冷热性:如果是热数据,给q.lsn分配FLASH磨损次数较少的物理地址;否则给q.lsn分配FLASH磨损次数较多的物理地址;产生以FLASH页大小单位的写请求序列,并转入步骤(6);(5) According to the access times and access time of the requested q.lsn, judge whether the data accessed by q.lsn is hot or cold: if it is hot data, allocate a physical address with less FLASH wear times to q.lsn; otherwise assign q.lsn Allocate physical addresses with more FLASH wear times; generate a write request sequence in units of FLASH page size, and turn to step (6);

(6)获取(2)、(4)、(5)中产生的请求序列,根据请求中的物理地址将所述请求序列分别添加到固态盘对应通道上的循环请求队列尾,当定时器到来时,把当前通道上的请求发送给固态盘处理;(6) Obtain the request sequence generated in (2), (4), and (5), and add the request sequence to the end of the circular request queue on the corresponding channel of the solid state disk according to the physical address in the request. When the timer arrives , send the request on the current channel to the SSD for processing;

(7)检测是否有完成中断,如果检测到中断,表示请求已经处理完成,转入步骤(8);(7) Detect whether there is a completion interrupt, if an interruption is detected, it means that the request has been processed, and go to step (8);

(8)返回完成给请求Q。(8) Return completion to request Q.

本发明还提出一种主机融合存储层(HFSL)系统,用于对文件系统访问固态盘的请求进行管理,所述固态盘基于NAND FLASH并融合了相变存储器(PCM),所述系统包括:The present invention also proposes a host fusion storage layer (HFSL) system, which is used to manage the request of the file system to access the solid-state disk. The solid-state disk is based on NAND FLASH and incorporates phase-change memory (PCM). The system includes:

地址映射管理模块,在主机内存中维持PCM地址映射表和NAND FLASH地址映射表,采用分配粒度可变的地址映射方法把PCM与NAND FLASH的地址分配给所述请求中的写请求;The address mapping management module maintains the PCM address mapping table and the NAND FLASH address mapping table in the host memory, and assigns the addresses of the PCM and NAND FLASH to the write request in the request by adopting an address mapping method with variable allocation granularity;

IO调度管理模块,用于把所述请求分发到固态盘的各个物理通道,所述物理通道包括PCM和NAND FLASH的多个通道,其中,为固态盘的每个物理通道维持一个循环请求队列;The IO scheduling management module is used to distribute the request to each physical channel of the solid state disk, and the physical channel includes a plurality of channels of PCM and NAND FLASH, wherein a circular request queue is maintained for each physical channel of the solid state disk;

缓存区管理模块,对主机内存中开辟的固态盘的缓存区进行管理,当文件系统访问固态盘的请求到来时,判断该请求的数据是否命中,如果命中就把缓存区中的数据返回给文件系统;否则,就把请求交给地址映射管理模块处理,地址映射管理模块对请求进行地址转换获取实际的物理地址,然后IO调度管理模块把请求挂到对应通道的循环请求队列尾部。The cache area management module manages the cache area of the solid-state disk opened in the host memory. When the request of the file system to access the solid-state disk arrives, it judges whether the requested data is hit. If it is hit, the data in the cache area is returned to the file. Otherwise, the request is handed over to the address mapping management module for processing. The address mapping management module performs address translation on the request to obtain the actual physical address, and then the IO scheduling management module hangs the request to the end of the circular request queue of the corresponding channel.

相对于现有技术,本发明具有以下有益效果:Compared with the prior art, the present invention has the following beneficial effects:

(1)固态盘对于主机不再是透明的,主机能获取固态盘的物理特性及数据分布信息,针对其做性能优化;(1) The solid-state disk is no longer transparent to the host, and the host can obtain the physical characteristics and data distribution information of the solid-state disk, and optimize its performance;

(2)采用PCM与NAND FLASH的融合存储方法,PCM作为NAND FLASH同级存储器,在PCM中存放小写数据,以及地址映射表等元数据信息,或需快速访问、频繁访问的热数据等,提高了固态盘的小写性能,同时也提高固态盘的启动速度。同时PCM作为固态盘中NANDFLASH的上级缓存,提升固态盘性能。相对于传统以DRAM作为缓存的固态盘,PCM与NANDFLASH的融合存储还能保证数据的一致性,提高固态盘的可靠性;(2) Using the integrated storage method of PCM and NAND FLASH, PCM is used as the same-level memory of NAND FLASH, storing lowercase data in PCM, metadata information such as address mapping table, or hot data that needs to be accessed quickly and frequently, etc., to improve It not only improves the low-write performance of the solid-state disk, but also improves the startup speed of the solid-state disk. At the same time, PCM acts as the upper-level cache of NANDFLASH in the solid-state disk to improve the performance of the solid-state disk. Compared with traditional solid-state disks that use DRAM as a cache, the fusion storage of PCM and NANDFLASH can also ensure data consistency and improve the reliability of solid-state disks;

(3)在主机端驱动与文件系统之间实现了一层融合存储中间层——HFSL,HFSL能获取PCM与NAND FLASH的物理特性及数据分布信息,并且针对PCM与NAND FLASH融合存储的物理特性,在HFSL中实现了地址映射、IO调度策略、垃圾回收,磨损均衡等高效存储管理,提高了固态盘的整体性能;(3) Between the host driver and the file system, a layer of fusion storage middle layer——HFSL is implemented. HFSL can obtain the physical characteristics and data distribution information of PCM and NAND FLASH, and aim at the physical characteristics of PCM and NAND FLASH fusion storage. , In HFSL, address mapping, IO scheduling strategy, garbage collection, wear leveling and other efficient storage management are realized, which improves the overall performance of the solid state disk;

(4)PCM与NAND FLASH融合存储的固态盘中,只需要完成简单的读、写、擦除等简单操作而不需要在固件中实现复杂的IO调度等管理策略算法,这样能简化固态盘自身的控制管理,便于固态盘硬件体系结构快速创新,使其能集中资源专注控制并行处理PCM与NANDFLASH的基本操作,提高了固态盘的读写速度。(4) In the solid-state disk integrated storage of PCM and NAND FLASH, only simple operations such as reading, writing, and erasing need to be completed without implementing complex IO scheduling and other management strategy algorithms in the firmware, which can simplify the solid-state disk itself The control management facilitates the rapid innovation of the solid-state disk hardware architecture, enabling it to concentrate resources and focus on controlling the basic operations of parallel processing PCM and NANDFLASH, improving the read and write speed of the solid-state disk.

附图说明Description of drawings

图1为本发明实施例的系统结构示意图;Fig. 1 is a schematic diagram of the system structure of an embodiment of the present invention;

图2为本发明实施例的方法流程示意图。Fig. 2 is a schematic flow chart of the method of the embodiment of the present invention.

具体实施方式detailed description

下面结合附图对本发明实施例进一步详细说明。The embodiments of the present invention will be further described in detail below in conjunction with the accompanying drawings.

总体而言,本发明主要基于两点:一是在主机端实现融合存储层——HFSL(HostFusion Storage Layer),实现对固态盘灵活的IO调度及管理策略以及性能优化,简化固态盘体系结构;二是在基于NAND FLASH的固态盘中融合PCM存储,其中,PCM既可以作为NANDFLASH的同级存储器用于存放固态盘的元数据信息,也可以用于存放小写数据、或访问频繁的热数据等,同时PCM还可以作为NAND FLASH的上级缓存使用,提升固态盘性能。Generally speaking, the present invention is mainly based on two points: one is to implement the fusion storage layer——HFSL (HostFusion Storage Layer) on the host side, realize flexible IO scheduling and management strategies and performance optimization for solid state disks, and simplify the structure of solid state disks; The second is to integrate PCM storage in NAND FLASH-based solid-state disks. Among them, PCM can be used as the same-level memory of NAND FLASH to store metadata information of solid-state disks, and can also be used to store lowercase data or frequently accessed hot data. At the same time, PCM can also be used as the upper-level cache of NAND FLASH to improve the performance of solid-state disks.

进一步地,本发明基于以下原理:在主机驱动程序与文件系统之间实现HFSL中间层,主机访问固态盘的请求需要经过HFSL的处理,转换成读、写、擦除等简单操作发送给固态盘;在固态盘内部只处理读、写、擦除等简单请求,不需要进行过多的地址转换、垃圾回收、磨损均衡、IO请求的重新分发与组合等复杂的调度及管理算法。针对PCM与NANDFLASH融合存储的物理特性,在HFSL中设计了融合管理的地址映射以及IO调度算法。除此之外,HFSL还具有类似传统固态盘中基本的缓存管理、垃圾回收、磨损均衡等复杂的IO调度功能。Further, the present invention is based on the following principles: the HFSL intermediate layer is implemented between the host driver and the file system, and the request of the host to access the solid-state disk needs to be processed by HFSL, converted into simple operations such as reading, writing, and erasing, and sent to the solid-state disk ; Inside the SSD, only simple requests such as read, write, and erase are processed, and complex scheduling and management algorithms such as excessive address conversion, garbage collection, wear leveling, and redistribution and combination of IO requests are not required. According to the physical characteristics of PCM and NANDFLASH fusion storage, the address mapping and IO scheduling algorithm of fusion management are designed in HFSL. In addition, HFSL also has complex IO scheduling functions such as basic cache management, garbage collection, and wear leveling in traditional SSDs.

图1为本发明实施例的系统结构示意图。其中,主机融合存储层(HFSL)包括三个模块:地址映射管理模块、IO调度管理模块和缓存区管理模块。FIG. 1 is a schematic diagram of the system structure of an embodiment of the present invention. Among them, the host converged storage layer (HFSL) includes three modules: an address mapping management module, an IO scheduling management module and a cache area management module.

地址映射管理模块的功能主要是合理地把PCM与NAND FLASH的地址分配给写请求。其中,由于读请求已经有固态盘的物理地址,所以无需分配,而写请求只知道固态盘的逻辑地址,具体的物理地址需要由地址映射模块分配。PCM地址映射表和NAND FLASH地址映射表存放在固态盘的PCM中的固定区域,地址映射管理模块在主机内存中维持上述地址映射表。开机时从PCM固定区域读取地址映射表到主机内存中,关机时把内存中地址映射表中修改了的地址映射条目写回到固态盘PCM固定区域中。除一部分地址物理空间用于存放上述地址映射表以及访问的元数据信息(它们在主机端融合存储层中对主机透明)以外,PCM的其余物理地址与NAND FLASH地址统一编址。在特定实施例中,采用分配粒度可变的地址映射方法进行地址分配:NAND FLASH地址段采用粗粒度的地址映射,以NAND FLASH的物理页大小为地址映射单位;PCM地址段采用以PCM最优写粒度大小为单位的细粒度的地址映射,即以小于页的单位(如512B)为地址映射单位。The function of the address mapping management module is mainly to reasonably allocate the addresses of PCM and NAND FLASH to write requests. Among them, since the read request already has the physical address of the solid-state disk, it does not need to be allocated, while the write request only knows the logical address of the solid-state disk, and the specific physical address needs to be allocated by the address mapping module. The PCM address mapping table and the NAND FLASH address mapping table are stored in a fixed area in the PCM of the solid state disk, and the address mapping management module maintains the above address mapping table in the host memory. Read the address mapping table from the PCM fixed area to the host memory when starting up, and write the modified address mapping entry in the address mapping table in the memory back to the PCM fixed area of the solid state disk when shutting down. Except a part of the address physical space is used to store the above-mentioned address mapping table and the accessed metadata information (they are transparent to the host in the host-side converged storage layer), the remaining physical addresses of PCM and NAND FLASH address are uniformly addressed. In a specific embodiment, address allocation is carried out by adopting an address mapping method with a variable distribution granularity: the NAND FLASH address section adopts coarse-grained address mapping, and the physical page size of NAND FLASH is used as the address mapping unit; the PCM address section adopts PCM optimal Fine-grained address mapping with write granularity as the unit, that is, the address mapping unit is smaller than the page (such as 512B).

在进行地址映射时主要考虑三个方面的因素:There are three main factors to consider when performing address mapping:

(1)当接收到文件系统访问固态盘的请求时,判断请求访问数据的大小是否小于阈值,如果小于阈值则该请求为小写请求,否则该请求为大写请求,对于小写请求,分配PCM的物理地址,对于大写请求分配NAND FLASH的物理地址;(1) When receiving a request from the file system to access the SSD, determine whether the size of the requested data is smaller than the threshold. If it is smaller than the threshold, the request is a lowercase request; otherwise, the request is an uppercase request. For a lowercase request, allocate PCM physical Address, assign the physical address of NAND FLASH to the uppercase request;

(2)统计PCM与NADN FLASH的磨损次数,在进行地址分配时,判断数据的冷热性,如果是冷数据就分配到磨损次数较多的物理块地址,否则就分配到磨损次数较少的物理块地址;(2) Count the wear times of PCM and NADN FLASH. When assigning addresses, judge whether the data is hot or cold. If it is cold data, it will be allocated to the physical block address with more wear times, otherwise it will be allocated to the physical block address with less wear times. physical block address;

(3)在进行地址分配时,以条带的方式分配,把连续的逻辑地址分配到固态盘的不同物理通道上。(3) When address allocation is performed, it is allocated in stripes, and continuous logical addresses are allocated to different physical channels of the solid state disk.

此外,还可以在地址映射管理模块中融入磨损均衡以及垃圾回收操作。In addition, wear leveling and garbage collection operations can also be integrated into the address mapping management module.

IO调度管理模块的主要功能是把请求分发到固态盘的各个物理通道。物理通道包括多个PCM通道和多个NAND FLASH通道。IO调度管理模块为固态盘的每个物理通道维持一个循环请求队列。请求经过地址映射之后,对于PCM的请求都是以PCM最优写粒度大小(如512B)为单位的请求序列,对于NAND FLASH的请求都是以NAND FLASH的物理页大小为单位的请求序列。对于IO调度管理模块,根据物理地址计算出通道号,并把请求添加到对应的PCM和NAND FLASH通道循环队列尾部。IO调度管理模块中设置定时器,当定时器到来时把循环请求队列上的请求发送给固态盘。当检测到固态盘有完成中断时,就会查询循环请求队列上请求的完成状态,如果完成了,就从循环请求队列上删除该请求。The main function of the IO scheduling management module is to distribute requests to each physical channel of the solid state disk. Physical channels include multiple PCM channels and multiple NAND FLASH channels. The IO scheduling management module maintains a circular request queue for each physical channel of the solid state disk. After the request is mapped, the request for PCM is a request sequence in the unit of PCM optimal write granularity size (such as 512B), and the request for NAND FLASH is a request sequence in the unit of the physical page size of NAND FLASH. For the IO scheduling management module, the channel number is calculated according to the physical address, and the request is added to the tail of the corresponding PCM and NAND FLASH channel circular queue. A timer is set in the IO scheduling management module, and when the timer arrives, the request on the circular request queue is sent to the solid state disk. When it is detected that the solid state disk has a completion interrupt, it will query the completion status of the request on the cyclic request queue, and if it is completed, the request will be deleted from the cyclic request queue.

缓存区管理模块用于对主机内存中开辟的固态盘缓存区进行管理。因为PCM与NAND FLASH的读速度比较快,在特定实施例中,可以设计只写缓存区,即只缓存那些经常被写的数据。当文件系统访问固态盘的请求到来时,可以根据逻辑地址查找平衡二叉树或其它方法判断该请求的数据是否命中,如果命中就把缓存中的数据返回给文件系统。如果在缓存区中没有找到数据,就把请求交给地址映射模块处理,地址映射模块对请求进行地址转换获取实际的物理地址,然后IO调度管理模块把请求挂到对应通道的循环队列尾部。其中,可以采用平衡二叉树来管理缓存数据。另外,在特定实施例中,与传统固态盘内部缓存区不同,HFSL缓冲区采用512B粒度大小管理,而不是传统的以NAND FLASH的物理页大小来管理。同时,因为主机内存资源丰富,可以把缓存区容量尽量设置大些,以能够缓存更多的写数据。The cache area management module is used to manage the solid state disk cache area opened in the host memory. Because the reading speed of PCM and NAND FLASH is relatively fast, in a specific embodiment, a write-only cache area can be designed, that is, only those data that are often written are cached. When the request of the file system to access the solid-state disk comes, it can check the balanced binary tree or other methods according to the logical address to determine whether the requested data hits, and if it hits, the data in the cache is returned to the file system. If no data is found in the cache, the request is handed over to the address mapping module for processing. The address mapping module converts the address of the request to obtain the actual physical address, and then the IO scheduling management module hangs the request to the end of the circular queue of the corresponding channel. Wherein, a balanced binary tree may be used to manage cached data. In addition, in a specific embodiment, unlike the internal cache area of traditional solid state disks, the HFSL buffer is managed with a granular size of 512B instead of the traditional physical page size of NAND FLASH. At the same time, because the host has abundant memory resources, the capacity of the cache area can be set as large as possible to be able to cache more write data.

图2为本发明实施例的方法流程图。开机时主机融合存储层(HFSL)从固态盘PCM固定区域读取PCM地址映射表和FLASH地址映射表到主机内存中,同时在主机内存中开辟一段固态盘的缓存区。Fig. 2 is a flow chart of the method of the embodiment of the present invention. When starting up, the host fusion storage layer (HFSL) reads the PCM address mapping table and the FLASH address mapping table from the PCM fixed area of the solid state disk into the host memory, and at the same time opens up a cache area of the solid state disk in the host memory.

假设主机访问固态盘的请求Q(lsn,size,op,data),lsn是逻辑地址,size是请求大小,op是读写标志,例如为0表示写,为1表示读,data是数据在主机内存中的地址即主机端的数据目的地址或源地址。针对请求Q,具体处理过程如下所示:Assume that the host requests Q(lsn, size, op, data) to access the solid state disk, lsn is the logical address, size is the request size, op is the read and write flag, for example, 0 means write, 1 means read, data means data in the host The address in the memory is the data destination or source address of the host. For request Q, the specific processing process is as follows:

(1)当接收到主机访问固态盘的请求Q时,首先获取Q.lsn和Q.size,根据Q.lsn以及Q.size判断请求Q访问的数据是否在缓存区中。如果命中,对于读请求,把数据从缓存区中拷贝到data地址,对于写请求,把data地址数据拷贝到缓存区中,转入步骤(8)。如果没命中,对于读请求,转入步骤(2),对于写请求,如果缓存区没有满,直接把data地址处的数据拷贝到缓存中,转入步骤(8),否则进行缓存区替换更新操作,转入步骤(3)。其中,可以利用查找平衡二叉树或其它方法判断该请求的数据是否命中。(1) When receiving a request Q from the host to access the solid state disk, first obtain Q.lsn and Q.size, and judge whether the data accessed by request Q is in the cache according to Q.lsn and Q.size. If it hits, for a read request, copy the data from the cache to the data address, and for a write request, copy the data at the data address to the cache, and go to step (8). If there is no hit, for a read request, go to step (2). For a write request, if the cache is not full, directly copy the data at the data address to the cache, and go to step (8), otherwise, replace and update the cache Operation, go to step (3). Wherein, it may be judged whether the requested data is hit by using a search for a balanced binary tree or other methods.

(2)获取读请求的Q.lsn和Q.size,查找PCM与FLASH地址映射表进行地址转换。对于访问PCM的读请求产生以PCM最优写粒度大小(如512B)为单位的读操作请求序列;对于访问FLASH的读请求产生以FLASH物理页大小的读操作请求序列,转入步骤(6)。(2) Obtain the Q.lsn and Q.size of the read request, and search the PCM and FLASH address mapping table for address conversion. For a read request to access PCM, generate a read operation request sequence in the unit of PCM optimal write granularity size (such as 512B); for a read request to access FLASH, generate a read operation request sequence in FLASH physical page size, and go to step (6) .

(3)设从缓存区中替换出来的请求为q,判断q.size的大小,如果q.size<NANDPAGE SIZE,转入步骤(4),否则转入步骤(5)。(3) Let the request replaced from the buffer be q, judge the size of q.size, if q.size<NANDPAGE SIZE, go to step (4), otherwise go to step (5).

(4)根据请求q.lsn的访问次数frequency和访问时间recency,判断q.lsn访问数据的冷热性。如果是热数据,给q.lsn分配PCM磨损次数较少的物理地址;否则给q.lsn分配PCM磨损次数较多的物理地址。产生以PCM最优写粒度大小(如512B)为单位的写请求序列,转入步骤(6)。其中,如果PCM没有足够的物理空间,则把PCM中的数据复制到NANDFLASH中,并且修改对应的地址映射条目。(4) According to the access frequency and access time recency of the request q.lsn, judge the hotness of the q.lsn access data. If it is hot data, allocate a physical address with less PCM wear times to q.lsn; otherwise, assign a physical address with more PCM wear times to q.lsn. Generate a write request sequence in units of PCM optimal write granularity size (such as 512B), and turn to step (6). Among them, if the PCM does not have enough physical space, copy the data in the PCM to the NANDFLASH, and modify the corresponding address mapping entry.

(5)根据请求q.lsn的访问次数frequency和访问时间recency,判断q.lsn访问数据的冷热性。如果是热数据,给q.lsn分配FLASH磨损次数较少的物理地址;否则给q.lsn分配FLASH磨损次数较多的物理地址。产生以FLASH页大小单位的写请求序列,转入步骤(6)。(5) According to the access frequency and access time recency of the request q.lsn, judge the hotness of the q.lsn access data. If it is hot data, allocate a physical address with less FLASH wear times to q.lsn; otherwise, allocate a physical address with more FLASH wear times to q.lsn. Generate a write request sequence in units of FLASH page size, and turn to step (6).

(6)获取(2)、(4)、(5)中产生的请求序列,根据请求中的物理地址分别添加到固态盘对应通道上的循环请求队列尾。当定时器到来时,把当前通道上的请求发送给固态盘处理。(6) Obtain the request sequences generated in (2), (4), and (5), and add them to the end of the circular request queue on the corresponding channel of the solid state disk according to the physical address in the request. When the timer arrives, the request on the current channel is sent to the solid state disk for processing.

(7)检测是否有完成中断,如果检测到中断,表示请求已经处理完成,转入步骤(8)。(7) Check whether there is a completion interrupt, if an interrupt is detected, it means that the request has been processed, and then go to step (8).

(8)返回完成给请求Q。(8) Return completion to request Q.

最后,关机时把缓存区中的数据以及内存中PCM地址映射表和FLASH地址映射表中修改了的地址映射条目写回到固态盘的相应区域中。Finally, write the data in the cache area and the modified address mapping entries in the PCM address mapping table and the FLASH address mapping table in the memory back to the corresponding area of the solid state disk when shutting down.

由此可见,本发明提出的方法中,PCM与NAND FLASH融合存储,PCM不仅可以用于NAND FLASH同级存储器,存放访问固态盘的小写数据以及固态盘的元数据信息,或访问频繁的热数据等,亦可以作为固态盘中NAND FLASH的上级缓存使用,从而提升固态盘整体性能。同时,在主机端融合存储层HFSL针对PCM与NAND FLASH的物理特性,结合数据请求特点进行数据布局与性能优化,简化固态盘自身的控制管理,便于固态盘硬件体系结构快速创新,实现PCM与NAND FLASH融合的灵活、高效、可靠存储。It can be seen that in the method proposed by the present invention, PCM and NAND FLASH are fused for storage, and PCM can not only be used for storage at the same level as NAND FLASH, but also store lowercase data for accessing solid-state disks and metadata information of solid-state disks, or frequently accessed hot data etc. It can also be used as the upper-level cache of NAND FLASH in the solid-state disk, thereby improving the overall performance of the solid-state disk. At the same time, the fusion of storage layer HFSL on the host side aims at the physical characteristics of PCM and NAND FLASH, and optimizes data layout and performance in combination with data request characteristics, simplifies the control and management of SSD itself, facilitates rapid innovation of SSD hardware architecture, and realizes PCM and NAND Flexible, efficient and reliable storage integrated with FLASH.

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。The above descriptions are only preferred embodiments of the present invention, and are not intended to limit the present invention. Any modifications, equivalent replacements and improvements made within the spirit and principles of the present invention should be included in the protection of the present invention. within range.

Claims (10)

1. a kind of solid-state disk of software definition merges storage method, wherein, merge phase in the solid-state disk based on NAND FLASH Transition storage (PCM), and one layer of fusion storage intermediate layer (HFSL), its energy are realized between host side driving and file system The physical characteristic and Data distribution information of PCM and NAND FLASH are obtained, and merges storage for PCM and NAND FLASH Physical characteristic, in fusion storage intermediate layer address of cache, I O scheduling strategy, garbage reclamation, abrasion equilibrium, methods described are realized Comprise the following steps:
(1) PCM address mapping table and FLASH address mapping table are read to host memory from solid-state disk PCM FX when starting shooting In, while open up the buffer area of one section of solid-state disk in host memory, when main frame have access solid-state disk request Q (lsn, size, Op, data) when, Q.lsn and Q.size is obtained first, judged to ask the data of Q access whether to exist according to Q.lsn and Q.size In buffer area, wherein, lsn is logical address, and size is request size, and op is read-write mark, and data is data in host memory In address, i.e. the data destination address or source address of host side,
If hit, for read request, data data addresses is copied to, for write request, data addresses from buffer area Data copy proceeds to step (8) in buffer area;If in recklessly, for read request, proceeding to step (2), for write request, If buffer area is not full, directly step (8) in the data copy at data addresses to buffer area, is proceeded to, otherwise delayed Deposit area and replace and update operation, proceed to step (3);
(2) Q.lsn and Q.size of read request are obtained, search PCM carries out address conversion with FLASH address mapping table, proceeds to step Suddenly (6), wherein, for access PCM read request, produce by PCM optimums write granule size in units of read operation request sequence; For the read request for accessing FLASH, produce with the read operation request sequence of FLASH physical page sizes;
(3) request for replacing out from buffer area is set as q, the size of q.size is judged, if q.size<NAND PAGE SIZE, proceeds to step (4), otherwise proceeds to step (5);
(4) according to the access times and access time of request q.lsn, judge that q.lsn accesses the cold and hot property of data:If hot number According to giving the q.lsn distribution PCM abrasion less physical address of number of times;Otherwise distribute PCM abrasion number of times more physics to q.lsn Address;Produce by PCM optimums write granule size in units of write request sequence, and proceed to step (6);
(5) according to the access times and access time of request q.lsn, judge that q.lsn accesses the cold and hot property of data:If hot number According to giving the q.lsn distribution FLASH abrasion less physical address of number of times;It is otherwise more to q.lsn distribution FLASH abrasion number of times Physical address;Produce with the write request sequence of FLASH page of size unit, and proceed to step (6);
(6) request sequence produced in (2), (4), (5) is obtained, the physical address in request distinguishes the request sequence The cycle request rear of queue being added in solid-state disk respective channel, when timer arrives, sends the request on current channel Give solid-state disk process;
(7) detected whether to complete to interrupt, if detecting interruption, represented that request has been processed and complete, proceeded to step (8);
(8) return and complete to give request Q.
2. method according to claim 1, in step (4), if PCM does not have enough physical spaces, in PCM Data duplication changes corresponding address of cache entry in NAND FLASH.
3. method according to claim 1 and 2, also includes after step (8):During shutdown the data in buffer area with And the address of cache entry that have modified in PCM address mapping table and FLASH address mapping table in internal memory writes back to the phase of solid-state disk In answering region.
4. a kind of main frame merges accumulation layer (HFSL) system, for being managed to the request of file system access solid-state disk, institute Solid-state disk is stated based on NAND FLASH and has merged phase transition storage (PCM), and driven in host side real and file system between Show one layer of fusion storage intermediate layer (HFSL), it can obtain the physical characteristic and Data distribution information of PCM and NAND FLASH, And merge the physical characteristic of storage for PCM and NAND FLASH, realize that address of cache, IO are adjusted in fusion storage intermediate layer Degree strategy, garbage reclamation, abrasion equilibrium, the system includes:
Address of cache management module, maintains PCM address mapping table and NAND FLASH address mapping table in host memory, adopts The variable address mapping method of partition size distributes to the address of PCM and NAND FLASH the write request in the request;
I O scheduling management module, for described each physical channel for asking to be distributed to solid-state disk, the physical channel to include Multiple passages of PCM and NAND FLASH, wherein, it is that each physical channel of solid-state disk maintains a cycle request queue;
Buffer queue management module, the buffer area of the solid-state disk to opening up in host memory is managed, when file system access is consolidated When the request of state disk arrives, whether the data for judging the request hit, and the data in buffer area are returned to text if hit Part system;Otherwise, just give address of cache management module request to process, address of cache management module is to asking into row address to turn Change and obtain actual physical address, then I O scheduling management module is suspended to request the cycle request queue tail of respective channel.
5. system according to claim 4, wherein, the address of cache management module is solid from solid-state disk PCM in start Determine region and read PCM address mapping table and NAND FLASH address mapping table in host memory, address in internal memory during shutdown The address of cache entry that have modified in mapping table is write back in the respective regions of solid-state disk PCM.
6. system according to claim 4, wherein, when the request of file system access solid-state disk is received, describedly Whether location mapping management module judges to ask the size for accessing data less than threshold value, and if less than threshold value, then the request please for small letter Ask, the otherwise request is big write request, for the physical address that little write request distributes PCM, for big write request distributes NAND The physical address of FLASH.
7. system according to claim 4, wherein, the address of cache management module statistics PCM and NADN FLASH's Abrasion number of times, when row address distribution is entered, judges the cold and hot property of data, if cold data is just assigned to abrasion, number of times is more Physical block address, is otherwise just assigned to the less physical block address of abrasion number of times.
8. system according to claim 4, wherein, when the address of cache management module is entered row address and distributed, with band Mode distribute, continuous logical address is assigned on the different physical channels of solid-state disk.
9. system according to claim 4, wherein, for I O scheduling management module, passage is calculated according to physical address Number, and request is added to corresponding PCM and NAND FLASH channel cycle queue tails.
10. system according to claim 4, wherein, timer is set in the I O scheduling management module, when timer is arrived The request in cycle request queue is sent to solid-state disk when coming;When detect solid-state disk complete interrupt when, inquiry circulation please The completion status asked in queue is sought, if it is complete, just deleting the request from cycle request queue.
CN201410051045.1A 2014-02-14 2014-02-14 Software-defined fusion storage method for solid-state disc Active CN103777905B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410051045.1A CN103777905B (en) 2014-02-14 2014-02-14 Software-defined fusion storage method for solid-state disc

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410051045.1A CN103777905B (en) 2014-02-14 2014-02-14 Software-defined fusion storage method for solid-state disc

Publications (2)

Publication Number Publication Date
CN103777905A CN103777905A (en) 2014-05-07
CN103777905B true CN103777905B (en) 2017-04-12

Family

ID=50570199

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410051045.1A Active CN103777905B (en) 2014-02-14 2014-02-14 Software-defined fusion storage method for solid-state disc

Country Status (1)

Country Link
CN (1) CN103777905B (en)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104123238A (en) * 2014-06-30 2014-10-29 海视云(北京)科技有限公司 Data storage method and device
CN105786724B (en) * 2014-12-24 2018-12-25 华为技术有限公司 Space management and device
CN104503707B (en) 2014-12-24 2018-03-06 华为技术有限公司 Read the method and device of data
CN105589912B (en) * 2015-03-27 2019-09-03 上海磁宇信息科技有限公司 A kind of method and storage organization using MRAM processing frequency written document
CN105630405B (en) * 2015-04-29 2018-09-14 上海磁宇信息科技有限公司 A kind of storage system and the reading/writing method using the storage system
CN105630691A (en) * 2015-04-29 2016-06-01 上海磁宇信息科技有限公司 MRAM-using solid state hard disk and physical address-using reading/writing method
US11461010B2 (en) 2015-07-13 2022-10-04 Samsung Electronics Co., Ltd. Data property-based data placement in a nonvolatile memory device
CN105608021B (en) * 2015-08-17 2019-03-19 上海磁宇信息科技有限公司 It is a kind of to utilize content addressed MRAM memory device and method
CN105677245B (en) * 2015-12-31 2018-11-20 记忆科技(深圳)有限公司 A method of SSD service life is improved based on service life equilibrium WL multithreading
CN105975215B (en) * 2016-05-25 2019-03-08 深圳大学 A method for managing translation layer mapping table of shingled magnetic storage based on Ondemand algorithm
CN107506135B (en) * 2016-06-14 2022-05-06 杭州海康威视数字技术股份有限公司 Data processing method, device and system
US10289544B2 (en) 2016-07-19 2019-05-14 Western Digital Technologies, Inc. Mapping tables for storage devices
WO2018103010A1 (en) * 2016-12-07 2018-06-14 华为技术有限公司 Memory management method and user terminal
CN106681660B (en) * 2016-12-17 2020-02-07 郑州云海信息技术有限公司 IO scheduling method and IO scheduling device
US10691368B2 (en) * 2017-03-31 2020-06-23 Samsung Electronics Co., Ltd. System and method for providing data replication in NVMe-oF ethernet SSD
CN107728951B (en) * 2017-10-24 2019-12-20 华中科技大学 Wear leveling method and system based on PCM
KR20190067540A (en) * 2017-12-07 2019-06-17 에스케이하이닉스 주식회사 Storage system and operating method thereof
CN109144894B (en) * 2018-08-01 2023-04-07 浙江大学 Memory access mode protection method based on data redundancy
CN109491601B (en) * 2018-10-26 2021-11-26 深圳市硅格半导体有限公司 Parallel processing method and device for solid state disk data and readable storage medium
CN110413228B (en) * 2019-07-09 2022-10-14 江苏芯盛智能科技有限公司 Mapping table management method and system, electronic equipment and storage medium
CN110471861B (en) * 2019-07-10 2022-02-11 华为技术有限公司 Data storage method in flash memory device and flash memory device
CN112148221B (en) * 2020-09-18 2024-02-13 北京浪潮数据技术有限公司 Method, device, equipment and storage medium for inspecting redundant array of inexpensive disks
CN112486420A (en) * 2020-12-17 2021-03-12 湖南师范大学 Multi-medium fusion data storage method and system for mobile sensor
CN115878051B (en) * 2023-03-03 2023-06-09 浪潮电子信息产业股份有限公司 Data synchronization method, data synchronization system, storage medium and electronic equipment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101558392A (en) * 2006-12-11 2009-10-14 马维尔国际贸易有限公司 Hybrid non-volatile solid state memory system
CN102567257A (en) * 2011-12-26 2012-07-11 华中科技大学 Method for controlling data reading and writing of multi-channel solid-state disc
CN103455283A (en) * 2013-08-19 2013-12-18 华中科技大学 Hybrid storage system
CN103544110A (en) * 2013-10-08 2014-01-29 华中科技大学 Block-level continuous data protection method based on solid-state disc

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8635514B2 (en) * 2011-02-28 2014-01-21 Micron Technology, Inc. Error control in memory storage systems

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101558392A (en) * 2006-12-11 2009-10-14 马维尔国际贸易有限公司 Hybrid non-volatile solid state memory system
CN102567257A (en) * 2011-12-26 2012-07-11 华中科技大学 Method for controlling data reading and writing of multi-channel solid-state disc
CN103455283A (en) * 2013-08-19 2013-12-18 华中科技大学 Hybrid storage system
CN103544110A (en) * 2013-10-08 2014-01-29 华中科技大学 Block-level continuous data protection method based on solid-state disc

Also Published As

Publication number Publication date
CN103777905A (en) 2014-05-07

Similar Documents

Publication Publication Date Title
CN103777905B (en) Software-defined fusion storage method for solid-state disc
CN103049397B (en) A kind of solid state hard disc inner buffer management method based on phase transition storage and system
US11263149B2 (en) Cache management of logical-physical translation metadata
US20190065121A1 (en) Tiered storage using storage class memory
JP6266019B2 (en) Priority-based garbage collection for data storage systems
CN103019958B (en) Method for managing data in solid-state memory using data attributes
CN108121503B (en) NandFlash address mapping and block management method
US10936203B2 (en) Memory storage device and system employing nonvolatile read/write buffers
KR100974215B1 (en) Semiconductor storage system and its control method
JP7513356B2 (en) Wear-Aware Block Mode Conversion in Non-Volatile Memories
CN102981963B (en) A kind of implementation method of flash translation layer (FTL) of solid-state disk
WO2017000658A1 (en) Storage system, storage management device, storage device, hybrid storage device, and storage management method
CN103257935B (en) A cache management method and its application
CN105930282B (en) A kind of data cache method for NAND FLASH
KR20170008153A (en) A heuristic interface for enabling a computer device to utilize data property-based data placement inside a nonvolatile memory device
CN104166634A (en) Management method of mapping table caches in solid-state disk system
CN104834607A (en) Method for improving distributed cache hit rate and reducing solid state disk wear
CN102163175A (en) Hybrid address mapping method based on locality analysis
TW201941061A (en) Electronic device, computer system, and control method
CN103902475B (en) Solid state disk concurrent access method and device based on queue management mechanism
KR101374065B1 (en) Data Distinguish Method and Apparatus Using Algorithm for Chip-Level-Parallel Flash Memory
CN112835534B (en) A method and device for optimizing garbage collection based on storage array data access
CN112805692A (en) Cache operations in a hybrid dual in-line memory module
CN115203079A (en) Method for writing data into solid state disk
Huang et al. Exploiting page correlations for write buffering in page-mapping multichannel SSDs

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant