CN109947678B - 一种存储装置、电子设备及数据交互方法 - Google Patents

一种存储装置、电子设备及数据交互方法 Download PDF

Info

Publication number
CN109947678B
CN109947678B CN201910233451.2A CN201910233451A CN109947678B CN 109947678 B CN109947678 B CN 109947678B CN 201910233451 A CN201910233451 A CN 201910233451A CN 109947678 B CN109947678 B CN 109947678B
Authority
CN
China
Prior art keywords
data
solid state
state disk
storage
module
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
CN201910233451.2A
Other languages
English (en)
Other versions
CN109947678A (zh
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.)
Lenovo Beijing Ltd
Original Assignee
Lenovo Beijing 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 Lenovo Beijing Ltd filed Critical Lenovo Beijing Ltd
Priority to CN201910233451.2A priority Critical patent/CN109947678B/zh
Publication of CN109947678A publication Critical patent/CN109947678A/zh
Application granted granted Critical
Publication of CN109947678B publication Critical patent/CN109947678B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明实施例提供一种存储装置、电子设备及数据交互方法,其中:所述存储装置具有以逐比特访问方式进行数据交互的非易失性存储模块;所述非易失性存储模块与固态硬盘的控制模块形成数据连接。本发明提供的实施例,通过在存储装置中设置具有以逐比特访问方式进行数据交互的非易失性存储模块,以实现对存储装置中的固态硬盘的架构进行调整,从而使得该存储装置对于不同块大小的数据能够表现出大概一致的性能。

Description

一种存储装置、电子设备及数据交互方法
技术领域
本发明属于电子计算机领域,具体涉及一种存储装置、电子设备及数据交互方法。
背景技术
对于固态硬盘而言,由于内置于固态硬盘内的闪存器件NandFlash的物理块大小(Sector Sizes)为4096Byte,其为一固定数值,因此,对于4K的块大小的数据可以直接填满NandFlash的物理块,而无需经历当NandFlash的物理块未被填满时,将NandFlash的未被填满的物理块中的数据导出与新预存储的数据进行拼接组合形成4K的块大小的数据再次填满NandFlash的物理块等过程;所以对于4K的块大小的数据,固态硬盘表现出较好的性能,而对于其他块大小的数据表现出的性能则不如4K的块大小的数据好。但是在实际应用中,各种客户各种APP产生的数据块大小是参差不齐的,比如7K大小的数据块的时候,性能就表现很差;这样就导致了固态硬盘对于不同块大小的数据所表现出不同的性能。而对于纯NandFlash架构的固态硬盘而言这个问题是底层架构问题,是不能跨越的鸿沟。
因此,亟需对固态硬盘的架构进行调整,以使固态硬盘对于不同块大小的数据所表现出大概一致的性能。
发明内容
本发明提供了一种存储装置、电子设备及数据交互方法。本发明实施例中通过对存储装置中的固态硬盘的架构进行调整,从而使得该存储装置对于不同块大小的数据能够表现出大概一致的性能。
为了解决上述技术问题,本发明实施例提供了如下的技术方案:
本发明第一方面提供一种存储装置,
所述存储装置具有以逐比特访问方式进行数据交互的非易失性存储模块;
所述非易失性存储模块与固态硬盘的控制模块形成数据连接。
作为优选,所述存储装置还具有N个存储单元;其中:
N个所述存储单元和所述非易失性存储模块以并行方式与所述固态硬盘的控制模块数据连接。
作为优选,所述存储单元的能够访问的最小数据单元大于所述非易失性存储模块的能够访问的最小数据单元。
作为优选,所述非易失性存储模块的数据容量大于所述存储单元的数据容量。
作为优选,所述非易失性存储模块为相变存储器件。
作为优选,所述存储单元为闪存阵列。
本发明第二方面提供一种电子设备,所述电子设备包括如上所述的任意一种存储装置。
本发明第三方面提供一种数据交互方法,所述数据交互方法应用于如上所述的任意一种存储装置中,所述方法包括:
非易失性存储模块与所述固态硬盘的控制模块形成数据连接;
所述非易失性存储模块以逐比特访问方式与固态硬盘的控制模块进行数据交互。
作为优选,所述存储装置中的N个所述存储单元分别与所述固态硬盘的控制模块形成数据连接。
作为优选,所述存储单元与所述控制模块进行交互的最小数据单元大于所述非易失性存储模块与所述控制模块进行交互的最小数据单元。
基于上述实施例的公开可以获知,本发明实施例具备如下的有益效果:本发明提供的实施例,通过在存储装置中设置具有以逐比特访问方式进行数据交互的非易失性存储模块,以实现对存储装置中的固态硬盘的架构进行调整,从而使得该存储装置对于不同块大小的数据能够表现出大概一致的性能。
附图说明
图1为本发明实施例提供的一个存储装置的示意图;
图2为现有技术中的固态硬盘的结构示意图;
图3为本发明实施例提供的另一个存储装置的示意图;
图4为本发明实施例提供的包含NandFlash和DRAM的固态硬盘和只包含3D Xpoint的固态硬盘的对于不同块大小的数据的随机读的测试结果图;
图5为本发明实施例提供的包含NandFlash和DRAM的固态硬盘和只包含3D Xpoint的固态硬盘的对于不同块大小的数据的随机写的测试结果图;
图6为本发明实施例提供的数据交互方法的逻辑框图。
具体实施方式
下面,结合附图对本发明的具体实施例进行详细的描述,但不作为本发明的限定。
应理解的是,可以对此处公开的实施例做出各种修改。因此,上述说明书不应该视为限制,而仅是作为实施例的范例。本领域的技术人员将想到在本公开的范围和精神内的其他修改。
包含在说明书中并构成说明书的一部分的附图示出了本公开的实施例,并且与上面给出的对本公开的大致描述以及下面给出的对实施例的详细描述一起用于解释本公开的原理。
通过下面参照附图对给定为非限制性实例的实施例的优选形式的描述,本发明的这些和其它特性将会变得显而易见。
还应当理解,尽管已经参照一些具体实例对本发明进行了描述,但本领域技术人员能够确定地实现本发明的很多其它等效形式,它们具有如权利要求所述的特征并因此都位于借此所限定的保护范围内。
当结合附图时,鉴于以下详细说明,本公开的上述和其他方面、特征和优势将变得更为显而易见。
此后参照附图描述本公开的具体实施例;然而,应当理解,所公开的实施例仅仅是本公开的实例,其可采用多种方式实施。熟知和/或重复的功能和结构并未详细描述以避免不必要或多余的细节使得本公开模糊不清。因此,本文所公开的具体的结构性和功能性细节并非意在限定,而是仅仅作为权利要求的基础和代表性基础用于教导本领域技术人员以实质上任意合适的详细结构多样地使用本公开。
本说明书可使用词组“在一种实施例中”、“在另一个实施例中”、“在又一实施例中”或“在其他实施例中”,其均可指代根据本公开的相同或不同实施例中的一个或多个。
下面,结合附图详细的说明本发明实施例,
如图1所示,本发明第一个实施例提供一种存储装置,
所述存储装置具有以逐比特访问方式进行数据交互的非易失性存储模块;
所述非易失性存储模块与固态硬盘的控制模块形成数据连接。
在本实施例中,对于所述存储装置没有限制,其可以为固态硬盘,也可以为一种包括固态硬盘的存储装置,只要具有存储功能即可。
如图2所示,在现有技术中,固态硬盘通常包括控制模块、多个闪存器件NandFlash和DRAM,多个并列的闪存器件NandFlash与所述固态硬盘的控制模块连接,DRAM与所述固态硬盘的控制模块连接;其中,所述闪存器件NandFlash为一种非易失性存储器件,每一个闪存器件NandFlash的物理块大小(Sector Sizes)为4096Byte,也就是说,每一个闪存器件NandFlash的容量为4096Byte,并且存储方式是,当前的闪存器件NandFlash存满时,才会存储下一个闪存器件NandFlash;所述闪存器件NandFlash与所述固态硬盘的控制模块的数据交互的最小单位为4096Byte。
继续如图2所示的现有技术中,DRAM可以以逐比特的访问方式与所述固态硬盘的控制模块进行数据交互,但是DRAM是一种易失性存储器件,也就是说,在突然掉电或者电气状态异常情况下,DRAM中的数据会丢失。
现有技术中,继续结合图2所示,数据的存储过程一般为,预存储的数据在固态硬盘的控制模块的控制下先进入DRAM,然后由于闪存器件NandFlash与所述固态硬盘的控制模块的数据交互的最小单位为4096Byte,所述DRAM每写入4096Byte的数据,固态硬盘的控制模块就控制将上述4096Byte的数据写入一个闪存器件NandFlash中,由于DRAM具有一定的存储空间,最大可以为16G,所以,DRAM能够同时并列地写入多个4096Byte的数据,此时,固态硬盘的控制模块可以将上述多个4096Byte的数据同时存入多个闪存器件NandFlash中。
如图3所示,在本发明提供的存储装置中,所述存储装置中具有以逐比特访问方式进行数据交互的非易失性存储模块,使得所述非易失性存储模块与固态硬盘的控制模块形成数据连接。本实施例中,采用非易失性存储模块来替代原来的易失性存储器件DRAM,从而使得即使系统在掉电时,也能保证数据不会丢失,完整地存储于非易失性存储模块中。
同时,由于现有技术中采用DRAM来缓存数据,DRAM为一种易失性模块,一方面,在系统没有掉电或发生电气异常时,其要时刻为有可能发生的掉电或电气异常做准备;另一方面,在系统发生掉电或电气异常时,其要停止目前的一切操作,而最重要的操作就是将DRAM中的数据写入闪存器件NandFlash中,而上述操作都会影响写入效率,使得固态硬盘的写入效率降低。
而在本发明中,由于采用了非易失性存储模块代替了DRAM,因此在写入过程中,不必为了可能发生的掉电或者电气异常而时刻做准备工作,也不必在发生掉电或电气异常时,立刻把非易失性内存中的数据存入闪存器件NandFlash中,因为及时突然发生掉电或者电气异常,非易失性内存中的数据也不会丢失,因此,将非易失性模块代替DRAM,可极大地提高固态硬盘的写入效率。
在本发明提供的其中一个实施例中,所述非易失性存储模块例如可以为3DXpoint,3D Xpoint具有很多优异的性能,例如,(1)比NAND Flash快1000倍;(2)成本只有DRAM的一半;(3)使用寿命是NAND的1000倍;(4)密度是传统存储的10倍;在3D Xpoint的众多优势中,其最有力的优势还是3D Xpoint具有巨大的存储空间,其存储空间可以达到128G,而DRAM的存储空间最大也就能够达到16G,可以看出,3D Xpoint的存储空间远远高于DRAM的存储空间,这也将进一步提升本发明所提供的存储装置的写入效率。例如,无论是DRAM还是3D Xpoint都能够同时并列地写入多个4096Byte的数据,然后,固态硬盘的控制模块可以将上述多个4096Byte的数据同时存入多个闪存器件NandFlash中,但是由于3DXpoint的存储空间远远大于DRAM的存储空间,因此,3D Xpoint同时并列地写入4096Byte的数据的个数要远远大于DRAM同时并列地写入4096Byte的数据的个数,例如,3D Xpoint同时并列地写入4096Byte的数据的个数为10000个,而DRAM由于内存空间的限制,其一次性处理的数据量远远小于3D Xpoint一次性处理的数据量,最终,DRAM同时并列地写入4096Byte的数据的个数很可能也就只有100个。由此,可以看出,由于3D Xpoint具有巨大的存储空间,因此,可以显著地提升固态硬盘的写入效率。
在本发明提供的另一个实施例中,所述存储装置还具有N个存储单元;其中:
N个所述存储单元和所述非易失性存储模块以并行方式与所述固态硬盘的控制模块数据连接。
在本实施例中,所述存储装置还具有N个存储单元,所述存储单元例如为闪存器件NandFlash,多个闪存器件NandFlash与所述固态硬盘的控制模块连接,所述非易失性存储模块也与所述固态硬盘的控制模块连接,也就是说,N个所述存储单元和所述非易失性存储模块以并行方式与所述固态硬盘的控制模块数据连接。
本发明提供的实施例中,继续结合图3所示,数据的存储过程一般为,预存储的数据在固态硬盘的控制模块的控制下先进入3D Xpoint,然后由于闪存器件NandFlash与所述固态硬盘的控制模块的数据交互的最小单位为4096Byte,所述3D Xpoint每写入4096Byte的数据,固态硬盘的控制模块就控制将上述4096Byte的数据写入一个闪存器件NandFlash中,由于3D Xpoint具有巨大的存储空间,最大可以为128G,所以,3D Xpoint能够同时并列地写入大量的4096Byte的数据,此时,固态硬盘的控制模块可以将上述大量的4096Byte的数据同时存入多个闪存器件NandFlash中。因此,由于3D Xpoint具有巨大的存储空间,可以提升固态硬盘的写入效率。
进一步地,由于3D Xpoint为一种非易失性存储模块,因此,在掉电或发生电气异常时也不必立刻将3D Xpoint中的数据存入闪存器件NandFlash中,这也进一步地提升了固态硬盘的写入效率。
还例如,在现有技术中,当DRAM在短时间内读入大量数据时,由于DRAM的存储空间有限,其最大只能为16G,也就是说,DRAM的容纳数据的容量有限,同时处理数据的能力也有限,此时就需要对在短时间内进入DRAM的大量数据做应急处理,其应急处理办法为,先不对数据进行处理,也就是说,对进入DRAM的数据先不将其拼接整理成一个个的4096Byte的数据,而是将进入DRAM的数据直接经过固态硬盘的控制模块的控制进入多个闪存器件NandFlash中,而由于DRAM没有进行处理,因此,进入数据的多个闪存器件NandFlash中,有的闪存器件NandFlash被填满了,而有的闪存器件NandFlash没有被填满;待DRAM有处理能力时,再经过固态硬盘的控制模块的控制作用将闪存器件NandFlash中的数据导出到DRAM中进行处理,经DRAM进行拼接整理成一个个的4096Byte的数据后,再存入多个闪存器件NandFlash中,因此,如果在短时间内,将大量的4K块大小的数据写入DRAM中,DRAM由于存储空间的限制会不经过处理步骤而直接将其中的数据经固态硬盘的控制模块的控制而写入多个闪存器件NandFlash中,同时又由于4K的块大小的数据可以直接填满闪存器件NandFlash,因此,对于在短时间内存入大量4K块大小的数据的情况,不存在闪存器件NandFlash没有被填满的情况,也就是说,所有的闪存器件NandFlash都处于填满状态,因此,无需再经过固态硬盘的控制模块的控制作用将闪存器件NandFlash中的数据导出到DRAM中进行处理,经DRAM进行拼接整理成一个个的4096Byte的数据后,再存入多个闪存器件NandFlash中这样的过程,因此,对于4K块大小的数据,固态硬盘表现出非常好的写入性能。
而对于其他块大小的数据表现出的性能则不如4K的块大小的数据好。例如,在短时间内连接大量地写入7K块大小的数据,此时,由于DRAM的存储空间有限,需要做应急处理,需要将连续进入DRAM的7K块大小的数据不经过拼接整理,而直接通过固态硬盘的控制模块的控制作用进入多个闪存器件NandFlash中,此时一个7K块大小的数据就分别进入2个闪存器件NandFlash中,一个闪存器件NandFlash中存储有4K块大小的数据,即,此时该闪存器件NandFlash已经被填满,而另一个闪存器件NandFlash中只存储有3K块大小的数据,还未被填满;待DRAM有处理能力时,再经过固态硬盘的控制模块的控制作用将闪存器件NandFlash中存储的3K块大小的数据导出到DRAM中进行处理,待DRAM与其他写入的数据进行拼接整理成4K块大小的数据后,再存入该闪存器件NandFlash中。由此可见,相较于连续写入4K块大小的数据而言,在连续写入其他块大小的数据时,由于应急处理时,DRAM直接存入闪存器件NandFlash中的数据不能够直接将一个个的闪存器件NandFlash填满,因此,多了将闪存器件NandFlash中的未被填满的数据再读入DRAM中被重新拼接,并将拼接完成的4K块大小的数据重新写入闪存器件NandFlash中过程,因此,这就造成了固态硬盘对于其他块大小的数据表现出的写入性能不如4K的块大小的数据好的情况。
而对于本申请而言,由于3D Xpoint具有巨大的存储空间,当在短时间内读入大量数据时,也几乎不会存在不能进行存储或者不能进行处理的问题,也就是说,当使用3DXpoint后,即使在短时间内读入大量数据也不需要做应急处理,也就省去了将3D Xpoint中的数据直接存入多个闪存器件NandFlash中,然后再将未被填满的闪存器件NandFlash的数据再导入到3DXpoint中与其他数据进行拼接形成4K块大小的数据后再填满该闪存器件NandFlash的步骤,因此,本发明中通过使用具有巨大存储空间的3D Xpoint,不仅使得固态硬盘的写入效率显著提升,还使得固态硬盘对于不同块大小的数据所表现出大概一致的写入性能。
在本发明提供的另一个实施例中,所述存储单元的能够访问的最小数据单元大于所述非易失性存储模块的能够访问的最小数据单元。在本实施例中,所述存储单元可以为闪存器件NandFlash,所述闪存器件NandFlash与固态硬盘的控制模块进行数据交互的最小数据单元为4096Byte,也就是说,固态硬盘的控制单元每次都以4096Byte为一个单位写入闪存器件NandFlash;而本发明实施例提供的非易失性存储模块是以逐比特的形式与固态硬盘的控制模块进行数据交互的,因此,预存入所述固态硬盘中的数据会现在控制模块的控制作用下进入非易失性存储模块,由于所述非易失性存储模块可以逐比特的对数据进行访问,因此,可以对数据进行处理,即对进入的数据进行拼接处理,使之拼接成一个个的4096Byte,然后控制模块将上述拼接好的一个个的4096Byte存入多个闪存器件NandFlash中,由此可以看出,本发明实施例所提供的存储单元的能够访问的最小数据单元大于所述非易失性存储模块的能够访问的最小数据单元。
在本发明提供的其他实施例中,所述非易失性存储模块的数据容量大于所述存储单元的数据容量。在本实施例中,所述非易失性存储模块例如可以为3D Xpoint,所述3DXpoint的数据容量具有巨大的存储空间,最高可达128G;而本发明实施例提供的存储单元例如可以为闪存器件NandFlash,本发明提供的存储装置具有多个并列的闪存器件NandFlash,每个闪存器件NandFlash的存储空间为4096Byte,由此可以看出,所述非易失性存储模块的数据容量大于所述存储单元的数据容量,并且远远大于所述存储单元的数据容量,正是由于非易失性存储模块具有巨大的数据容量,才使得其可以对短时间内进入的大量数据进行同时处理,使之同时拼接成多个4096Byte的数据,并在固态硬盘的控制模块的控制作用下同时存入并列的多个闪存器件NandFlash中,极大地提高了固态硬盘的写入效率。
在本发明提供的其他实施例中,所述非易失性存储模块为相变存储器件。所述相变存储器件就是利用特殊材料在晶态和非晶态之间相互转化时所表现出来的导电性差异来存储数据的,通常是利用硫族化合物在晶态和非晶态巨大的导电性差异来存储数据的一种信息存储装置。本发明实施例所提供的非易失性存储模块例如可以为3D Xpoint。
在本发明提供的另一个实施例中,所述存储单元为闪存阵列。在本实施例中,所述存储单元可以为闪存器件NandFlash,其为一种闪存器件,本发明所提供的存储装置具有多个并列设置的闪存器件NandFlash,且所述闪存器件NandFlash为一种非易失性存储器件,即使在断电的情况下,数据也可以完好地存储在其中。
本发明中为了进一步说明,在固态硬盘中加入非易失性存储模块使得固态硬盘的效率变好,本发明中对包含闪存器件NandFlash和DRAM的传统的固态硬盘和只包含非易失性存储模块的本发明提供的固态硬盘分别进行随机读和随机写的效率测试,测试结果分别如图4和图5所示,其中,本发明实施例提供的非易失性存储模块以3D Xpoint为例进行测试与说明。
如图4所示,表示包含NandFlash和DRAM的固态硬盘和只包含3D Xpoint的固态硬盘的随机读的测试结果图,其中分别测试了上述两种不同的固态硬盘的对于1K-9K不同数据的随机读的效率,也就是说,在一段时间内,连续向上述两个不同的固态硬盘中读取1K数据进行测试,然后再连续向上述两个不同的固态硬盘中读取2K数据进行测试……依次类推,直到完成两个固态硬盘对于9K数据的读取效率的测试,其中,读取效率为每秒钟的处理次数(IOPS)。从图中可以看出,整体来看,包含NandFlash和DRAM的固态硬盘与包含3DXpoint的固态硬盘对于不同块大小的数据具有大致相同的读取效率,例如对于1K,2K和4K的数据,上述两种不同的硬盘具有大致相同的读取效率,对于3K的数据,上述两种不同的硬盘具有大致相同的读取效率,对于5K,6K和8K的数据,上述两种不同的固态硬盘具有大致相同的读取效率……而对于不同块大小的数据的读取效率还是有一定差异,例如,上述两种固态硬盘都对于1K,2K和4K的读取效率明显好于7K或9K数据的读取效率。
如图5所示,表示包含NandFlash和DRAM的固态硬盘和只包含3D Xpoint的固态硬盘的随机写的测试结果图,其中分别测试了上述两种不同的固态硬盘的对于1K-9K不同数据的随机读的效率,也就是说,在一段时间内,连续向上述两个不同的固态硬盘中写入1K数据进行测试,然后再连续向上述两个不同的固态硬盘中写入2K数据进行测试……依次类推,直到完成两个固态硬盘对于9K数据的写入效率的测试,其中,写入效率为每秒钟的处理次数(IOPS)。从图中可以看出,整体来看,包含3D Xpoint的固态硬盘的写入效率明显优于包含NandFlash和DRAM的固态硬盘,无论对于任何块大小的数据,包含3D Xpoint的固态硬盘的写入效率都明显优于包含NandFlash和DRAM的固态硬盘的写入效率,例如对于1K,2K和4K的数据,包含3D Xpoint的固态硬盘的写入效率都明显优于包含NandFlash和DRAM的固态硬盘的写入效率,对于3K的数据,包含3D Xpoint的固态硬盘的写入效率都明显优于包含NandFlash和DRAM的固态硬盘的写入效率,对于5K,6K和8K的数据,包含3D Xpoint的固态硬盘的写入效率都明显优于包含NandFlash和DRAM的固态硬盘的写入效率……同样的,类似于固态硬盘的读取效率,对于不同块大小的数据的写入效率还是有一定差异,例如,上述两种固态硬盘都对于1K,2K和4K的写入效率明显好于7K或9K数据的写入效率。因此,从上述测试结果可以看出,将本发明实施例提供的具有巨大容量空间的非易失性存储模块应用于固态硬盘后,可以明显提升固态硬盘的写入效率。
本发明第二个实施例提供一种电子设备,所述电子设备包括如上所述的任意一种存储装置。通过上如上所述的任意一种存储装置应用于电子设备中,可以明显提升所述电子设备的性能。
基于与所述存储装置相同的发明构思,如图6所示,本发明第三个实施例提供一种数据交互方法,所述数据交互方法应用于如上所述的任意一种存储装置中,所述方法包括:
非易失性存储模块与所述固态硬盘的控制模块形成数据连接;
所述非易失性存储模块以逐比特访问方式与固态硬盘的控制模块进行数据交互。
所述存储装置中具有以逐比特访问方式进行数据交互的非易失性存储模块,使得所述非易失性存储模块与固态硬盘的控制模块形成数据连接。本实施例中,采用非易失性存储模块来替代原来的易失性存储器件DRAM,从而使得即使系统在掉电时,也能保证数据不会丢失,完整地存储于非易失性存储模块中。
同时,由于现有技术中采用DRAM来缓存数据,DRAM为一种易失性模块,一方面,在系统没有掉电或发生电气异常时,其要时刻为有可能发生的掉电或电气异常做准备;另一方面,在系统发生掉电或电气异常时,其要停止目前的一切操作,而最重要的操作就是将DRAM中的数据写入闪存器件NandFlash中,而上述操作都会影响写入效率,使得固态硬盘的写入效率降低。
而在本发明中,由于采用了非易失性存储模块代替了DRAM,因此在写入过程中,不必为了可能发生的掉电或者电气异常而时刻做准备工作,也不必在发生掉电或电气异常时,立刻把非易失性内存中的数据存入闪存器件NandFlash中,因为及时突然发生掉电或者电气异常,非易失性内存中的数据也不会丢失,因此,将非易失性模块代替DRAM,可极大地提高固态硬盘的写入效率。
在本发明提供的其中一个实施例中,所述非易失性存储模块例如可以为3DXpoint,3D Xpoint具有很多优异的性能,例如,(1)比NAND Flash快1000倍;(2)成本只有DRAM的一半;(3)使用寿命是NAND的1000倍;(4)密度是传统存储的10倍;在3D Xpoint的众多优势中,其最有力的优势还是3D Xpoint具有巨大的存储空间,其存储空间可以达到128G,而DRAM的存储空间最大也就能够达到16G,可以看出,3D Xpoint的存储空间远远高于DRAM的存储空间,这也将进一步提升本发明所提供的存储装置的写入效率。例如,无论是DRAM还是3D Xpoint都能够同时并列地写入多个4096Byte的数据,然后,固态硬盘的控制模块可以将上述多个4096Byte的数据同时存入多个闪存器件NandFlash中,但是由于3DXpoint的存储空间远远大于DRAM的存储空间,因此,3D Xpoint同时并列地写入4096Byte的数据的个数要远远大于DRAM同时并列地写入4096Byte的数据的个数,例如,3D Xpoint同时并列地写入4096Byte的数据的个数为10000个,而DRAM由于内存空间的限制,其一次性处理的数据量远远小于3D Xpoint一次性处理的数据量,最终,DRAM同时并列地写入4096Byte的数据的个数很可能也就只有100个。由此,可以看出,由于3D Xpoint具有巨大的存储空间,因此,可以显著地提升固态硬盘的写入效率。
在本发明提供的另一个实施例中,所述存储装置中的N个所述存储单元分别与所述固态硬盘的控制模块形成数据连接。
在本实施例中,所述存储装置还具有N个存储单元,所述存储单元例如为闪存器件NandFlash,多个闪存器件NandFlash与所述固态硬盘的控制模块连接,所述非易失性存储模块也与所述固态硬盘的控制模块连接,也就是说,N个所述存储单元和所述非易失性存储模块以并行方式与所述固态硬盘的控制模块数据连接。
本发明提供的实施例中,继续结合图3所示,数据的存储过程一般为,预存储的数据在固态硬盘的控制模块的控制下先进入3D Xpoint,然后由于闪存器件NandFlash与所述固态硬盘的控制模块的数据交互的最小单位为4096Byte,所述3D Xpoint每写入4096Byte的数据,固态硬盘的控制模块就控制将上述4096Byte的数据写入一个闪存器件NandFlash中,由于3D Xpoint具有巨大的存储空间,最大可以为128G,所以,3D Xpoint能够同时并列地写入大量的4096Byte的数据,此时,固态硬盘的控制模块可以将上述大量的4096Byte的数据同时存入多个闪存器件NandFlash中。因此,由于3D Xpoint具有巨大的存储空间,可以提升固态硬盘的写入效率。
进一步地,由于3D Xpoint为一种非易失性存储模块,因此,在掉电或发生电气异常时也不必立刻将3D Xpoint中的数据存入闪存器件NandFlash中,这也进一步地提升了固态硬盘的写入效率。
还例如,在现有技术中,当DRAM在短时间内读入大量数据时,由于DRAM的存储空间有限,其最大只能为16G,也就是说,DRAM的容纳数据的容量有限,同时处理数据的能力也有限,此时就需要对在短时间内进入DRAM的大量数据做应急处理,其应急处理办法为,先不对数据进行处理,也就是说,对进入DRAM的数据先不将其拼接整理成一个个的4096Byte的数据,而是将进入DRAM的数据直接经过固态硬盘的控制模块的控制进入多个闪存器件NandFlash中,而由于DRAM没有进行处理,因此,进入数据的多个闪存器件NandFlash中,有的闪存器件NandFlash被填满了,而有的闪存器件NandFlash没有被填满;待DRAM有处理能力时,再经过固态硬盘的控制模块的控制作用将闪存器件NandFlash中的数据导出到DRAM中进行处理,经DRAM进行拼接整理成一个个的4096Byte的数据后,再存入多个闪存器件NandFlash中,因此,如果在短时间内,将大量的4K块大小的数据写入DRAM中,DRAM由于存储空间的限制会不经过处理步骤而直接将其中的数据经固态硬盘的控制模块的控制而写入多个闪存器件NandFlash中,同时又由于4K的块大小的数据可以直接填满闪存器件NandFlash,因此,对于在短时间内存入大量4K块大小的数据的情况,不存在闪存器件NandFlash没有被填满的情况,也就是说,所有的闪存器件NandFlash都处于填满状态,因此,无需再经过固态硬盘的控制模块的控制作用将闪存器件NandFlash中的数据导出到DRAM中进行处理,经DRAM进行拼接整理成一个个的4096Byte的数据后,再存入多个闪存器件NandFlash中这样的过程,因此,对于4K块大小的数据,固态硬盘表现出非常好的写入性能。
而对于其他块大小的数据表现出的性能则不如4K的块大小的数据好。例如,在短时间内连接大量地写入7K块大小的数据,此时,由于DRAM的存储空间有限,需要做应急处理,需要将连续进入DRAM的7K块大小的数据不经过拼接整理,而直接通过固态硬盘的控制模块的控制作用进入多个闪存器件NandFlash中,此时一个7K块大小的数据就分别进入2个闪存器件NandFlash中,一个闪存器件NandFlash中存储有4K块大小的数据,即,此时该闪存器件NandFlash已经被填满,而另一个闪存器件NandFlash中只存储有3K块大小的数据,还未被填满;待DRAM有处理能力时,再经过固态硬盘的控制模块的控制作用将闪存器件NandFlash中存储的3K块大小的数据导出到DRAM中进行处理,待DRAM与其他写入的数据进行拼接整理成4K块大小的数据后,再存入该闪存器件NandFlash中。由此可见,相较于连续写入4K块大小的数据而言,在连续写入其他块大小的数据时,由于应急处理时,DRAM直接存入闪存器件NandFlash中的数据不能够直接将一个个的闪存器件NandFlash填满,因此,多了将闪存器件NandFlash中的未被填满的数据再读入DRAM中被重新拼接,并将拼接完成的4K块大小的数据重新写入闪存器件NandFlash中过程,因此,这就造成了固态硬盘对于其他块大小的数据表现出的写入性能不如4K的块大小的数据好的情况。
而对于本申请而言,由于3D Xpoint具有巨大的存储空间,当在短时间内读入大量数据时,也几乎不会存在不能进行存储或者不能进行处理的问题,也就是说,当使用3DXpoint后,即使在短时间内读入大量数据也不需要做应急处理,也就省去了将3D Xpoint中的数据直接存入多个闪存器件NandFlash中,然后再将未被填满的闪存器件NandFlash的数据再导入到3D Xpoint中与其他数据进行拼接形成4K块大小的数据后再填满该闪存器件NandFlash的步骤,因此,本发明中通过使用具有巨大存储空间的3D Xpoint,不仅使得固态硬盘的写入效率显著提升,还使得固态硬盘对于不同块大小的数据所表现出大概一致的写入性能。
在本发明的其他实施例中,所述存储单元与所述控制模块进行交互的最小数据单元大于所述非易失性存储模块与所述控制模块进行交互的最小数据单元。在本实施例中,所述存储单元可以为闪存器件NandFlash,所述闪存器件NandFlash与固态硬盘的控制模块进行数据交互的最小数据单元为4096Byte,也就是说,固态硬盘的控制单元每次都以4096Byte为一个单位写入闪存器件NandFlash;而本发明实施例提供的非易失性存储模块是以逐比特的形式与固态硬盘的控制模块进行数据交互的,因此,预存入所述固态硬盘中的数据会现在控制模块的控制作用下进入非易失性存储模块,由于所述非易失性存储模块可以逐比特的对数据进行访问,因此,可以对数据进行处理,即对进入的数据进行拼接处理,使之拼接成一个个的4096Byte,然后控制模块将上述拼接好的一个个的4096Byte存入多个闪存器件NandFlash中,由此可以看出,本发明实施例所提供的存储单元的能够访问的最小数据单元大于所述非易失性存储模块的能够访问的最小数据单元。
以上实施例仅为本发明的示例性实施例,不用于限制本发明,本发明的保护范围由权利要求书限定。本领域技术人员可以在本发明的实质和保护范围内,对本发明做出各种修改或等同替换,这种修改或等同替换也应视为落在本发明的保护范围内。

Claims (8)

1.一种存储装置,其中:
所述存储装置具有以逐比特访问方式进行数据交互的非易失性存储模块;
所述非易失性存储模块与固态硬盘的控制模块形成数据连接;
所述存储装置还具有N个存储单元;其中:
N个所述存储单元和所述非易失性存储模块以并行方式与所述固态硬盘的控制模块数据连接。
2.根据权利要求1所述的存储装置,其中,所述存储单元的能够访问的最小数据单元大于所述非易失性存储模块的能够访问的最小数据单元。
3.根据权利要求1所述的存储装置,其中,所述非易失性存储模块的数据容量大于所述存储单元的数据容量。
4.根据权利要求1所述的存储装置,其中,所述非易失性存储模块为相变存储器件。
5.根据权利要求1所述的存储装置,其中,所述存储单元为闪存阵列。
6.一种电子设备,其中,所述电子设备包括如权利要求1-5中任一项所述的存储装置。
7.一种数据交互方法,应用于如权利要求1-5任一项所述的存储装置中,所述方法包括:
非易失性存储模块与所述固态硬盘的控制模块形成数据连接;
所述非易失性存储模块以逐比特访问方式与固态硬盘的控制模块进行数据交互;
所述存储装置中的N个所述存储单元分别与所述固态硬盘的控制模块形成数据连接。
8.根据权利要求7所述的数据交互方法,其中,所述存储单元与所述控制模块进行交互的最小数据单元大于所述非易失性存储模块与所述控制模块进行交互的最小数据单元。
CN201910233451.2A 2019-03-26 2019-03-26 一种存储装置、电子设备及数据交互方法 Active CN109947678B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910233451.2A CN109947678B (zh) 2019-03-26 2019-03-26 一种存储装置、电子设备及数据交互方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910233451.2A CN109947678B (zh) 2019-03-26 2019-03-26 一种存储装置、电子设备及数据交互方法

Publications (2)

Publication Number Publication Date
CN109947678A CN109947678A (zh) 2019-06-28
CN109947678B true CN109947678B (zh) 2021-07-16

Family

ID=67010918

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910233451.2A Active CN109947678B (zh) 2019-03-26 2019-03-26 一种存储装置、电子设备及数据交互方法

Country Status (1)

Country Link
CN (1) CN109947678B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101256535A (zh) * 2007-03-01 2008-09-03 创惟科技股份有限公司 硬盘资料读写快取装置及方法
CN101299207A (zh) * 2008-06-17 2008-11-05 北京星网锐捷网络技术有限公司 微处理器系统总线与微处理器接口总线转换装置及方法
CN102662856A (zh) * 2012-04-27 2012-09-12 中国科学院计算技术研究所 一种固态硬盘及其存取方法
CN103577119A (zh) * 2012-06-19 2014-02-12 马维尔国际贸易有限公司 用于下一代固态硬盘控制器中乱序传输数据的系统和方法
CN104303161A (zh) * 2012-05-07 2015-01-21 巴法络记忆体股份有限公司 Ssd(固态硬盘)装置
CN104866246A (zh) * 2015-06-05 2015-08-26 上海新储集成电路有限公司 一种混合固态硬盘

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101192195B (zh) * 2006-11-22 2011-08-03 北京华旗资讯数码科技有限公司 电子硬盘的存储空间的分组管理方法
CN101667157A (zh) * 2008-09-04 2010-03-10 群联电子股份有限公司 闪存数据传输方法、闪存储存系统及控制器
CN102214143A (zh) * 2010-04-06 2011-10-12 深圳市江波龙电子有限公司 一种多层单元闪存的管理方法、装置及存储设备
US8782370B2 (en) * 2011-05-15 2014-07-15 Apple Inc. Selective data storage in LSB and MSB pages
CN103544115B (zh) * 2012-07-10 2016-08-03 群联电子股份有限公司 数据写入方法、存储器控制器与存储器存储装置
CN103164344B (zh) * 2013-03-12 2015-09-16 深圳市江波龙电子有限公司 一种闪存存储设备中数据管理的方法及装置
US9454428B2 (en) * 2013-11-26 2016-09-27 Agency For Science, Technology And Research Error correction method and module for non-volatile memory
CN104572518B (zh) * 2014-12-30 2018-06-26 杭州华为数字技术有限公司 一种存储装置
JP6517684B2 (ja) * 2015-12-22 2019-05-22 東芝メモリ株式会社 メモリシステムおよび制御方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101256535A (zh) * 2007-03-01 2008-09-03 创惟科技股份有限公司 硬盘资料读写快取装置及方法
CN101299207A (zh) * 2008-06-17 2008-11-05 北京星网锐捷网络技术有限公司 微处理器系统总线与微处理器接口总线转换装置及方法
CN102662856A (zh) * 2012-04-27 2012-09-12 中国科学院计算技术研究所 一种固态硬盘及其存取方法
CN104303161A (zh) * 2012-05-07 2015-01-21 巴法络记忆体股份有限公司 Ssd(固态硬盘)装置
CN103577119A (zh) * 2012-06-19 2014-02-12 马维尔国际贸易有限公司 用于下一代固态硬盘控制器中乱序传输数据的系统和方法
CN104866246A (zh) * 2015-06-05 2015-08-26 上海新储集成电路有限公司 一种混合固态硬盘

Also Published As

Publication number Publication date
CN109947678A (zh) 2019-06-28

Similar Documents

Publication Publication Date Title
CN105637591B (zh) 用于nand闪速存储器的缺陷管理策略
KR20210001898A (ko) 존 네임스페이스에 대한 존 형성
US9489148B2 (en) Selecting between non-volatile memory units having different minimum addressable data unit sizes
US11003361B2 (en) Wear leveling
US9971515B2 (en) Incremental background media scan
US20220406395A1 (en) Defective memory unit screening in a memory system
CN113921063A (zh) 热区标签和热区离群值检测
CN111443866A (zh) 能从非正常关机迅速恢复的非易失性存储系统
JP2012243338A (ja) 不揮発性半導体記憶装置
US10747660B2 (en) Method and system for forming and using memory superblocks based on performance grades
CN109947678B (zh) 一种存储装置、电子设备及数据交互方法
US9653180B1 (en) System method and apparatus for screening a memory system
KR20100105127A (ko) Ssd 컨트롤러 및 ssd 컨트롤러의 동작 방법
US10553276B2 (en) Semiconductor memory device
CN108363548B (zh) 交叉点非易失性存储器装置的块擦除方案
Riggs et al. Survey of solid state drives, characteristics, technology, and applications
US11507508B2 (en) Prediction-based selective flushing of data to memory
US20220050747A1 (en) Using over provisioning space for selectively storing block parity
CN114446379A (zh) 基于各种定时容限参数设定的性能度量来对存储器装置进行评级
WO2023047149A1 (en) Improved ecc configuration in memories
Swami et al. E3R: Energy efficient error recovery for multi/triple-level cell non-volatile memories
US11599272B2 (en) Deck based media management operations in memory devices
US20230350606A1 (en) Command and address sequencing in parallel with data operations
US11853607B2 (en) Optimizing flash memory utilization for NVMe KV pair storage
CN113261060B (zh) 功率管理机制和具有所述功率管理机制的存储器件

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