CN104575595A - 非易失性随机存取的存储装置 - Google Patents
非易失性随机存取的存储装置 Download PDFInfo
- Publication number
- CN104575595A CN104575595A CN201410766014.4A CN201410766014A CN104575595A CN 104575595 A CN104575595 A CN 104575595A CN 201410766014 A CN201410766014 A CN 201410766014A CN 104575595 A CN104575595 A CN 104575595A
- Authority
- CN
- China
- Prior art keywords
- memory
- bus
- data
- volatile
- storage
- 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.)
- Granted
Links
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开了一种存储装置,其包括与外部控制器电性相连的存储器接口、通过第一总线与所述存储器接口相连的存储控制器、易失性存储阵列和非易失性存储阵列。所述易失性存储阵列通过第二总线与所述存储控制器相连,其包括有多个易失性存储单元,每个易失性存储单元为易失性存储器。所述非易失性存储阵列通过第三总线与所述存储控制器相连,其包括有多个非易失性存储单元,每个非易失性存储单元为非易失性存储器。所述非易失性存储单元采用统一的接口标准,这样提高了该存储装置的可靠性、通用性以及可维护性。
Description
【技术领域】
本发明涉及计算机、存储领域,具体涉及一种非易失性随机存取的存储装置。
【背景技术】
NVDIMM(Non-Volatile Dual In-line Memory Module,非易失性双列直插式存储模块)是在DIMM(Dual Inline Memory Modules,即双列直插式存储模块)的基础上演化而来的,其属于一种集成了DRAM(Dynamic Random AccessMemory,即动态随机存取存储器)和非易失性内存芯片的内存条规格。NVDIMM作为一种能够兼具传统内存的高速访问带宽,同时能够在掉电时保存数据两种特性的新型存储设备,正逐渐受到云计算、数据中心以及高性能服务器等应用领域的重视。但目前的NVDIMM方案均采用NAND Flash(NAND闪存)作为非易失存储介质,但NAND Flash的种类较多,需要配备纠错引擎,以及接口界面没有统一标准,使得其可靠性和通用性较差。因此,在NVDIMM上应用NAND Flash作为非易失存储介质还存在兼容性、可靠性以及可维护性等方面的问题。
因此,本发明希望提出一种改进的技术方案来克服上述技术问题。
【发明内容】
本发明的目的在于提供一种非易失性随机存取的存储装置,用于为计算机系统提供非易失内存。
为了解决上述问题,本发明提供了一种存储装置,其包括:存储器接口,其与外部控制器电性相连;存储控制器,其通过第一总线与所述存储器接口相连;易失性存储阵列,其通过第二总线与所述存储控制器相连,其包括有多个易失性存储单元,每个易失性存储单元为易失性存储器;和非易失性存储阵列,其通过第三总线与所述存储控制器相连,其包括有多个非易失性存储单元,每个非易失性存储单元为非易失性存储器。
进一步的,所述非易失性存储单元的接口满足如下接口标准中的一个:SD卡接口标准、MMC卡接口标准、CF卡接口标准和UFS接口标准。
进一步的,所述易失性存储单元为动态随机存取存储器或静态随机存取存储器,所述第一总线为DIMM总线,所述存储器接口为DIMM接口,第二总线为易失性存储阵列总线,第三总线为非易失性存储阵列总线,所述DIMM接口插入DIMM插槽中以与所述外部控制器相连。
进一步的,所述易失性存储阵列为所述易失性存储单元形成的一维阵列,二维阵列或三维阵列,每个易失性存储单元具有独立的数据总线、地址总线、控制总线和时钟总线,各个易失性存储单元的数据总线、地址总线、控制总线和时钟总线汇集形成第二总线,所述非易失性存储阵列为所述非易失性存储单元形成的一维阵列,二维阵列或三维阵列,每个非易失性存储单元具有独立的数据总线、命令总线和时钟总线,各个非易失性存储单元的数据总线、命令总线和时钟总线汇集形成第三总线。
进一步的,每个非易失性存储单元包括与第三总线相连的主控制器以及与所述主控制器相连的闪存。
进一步的,所述存储控制器包括存储处理模块、易失性存储阵列控制模块以及非易失性存储阵列控制模块,所述存储处理模块接收第一总线的命令,接收或发送第一总线的数据,同时向易失性存储阵列控制模块或非易失性存储阵列控制模块发送相应控制指令,以及收发相应数据,所述易失性存储阵列控制模块对所述易失性存储阵列进行读写操作,所述非易失性存储阵列控制模块对所述非易失性存储阵列进行读写操作。
进一步的,所述易失性存储阵列包括有数据缓存区,所述非易失性存储阵列包括与所述数据缓存区具有对应关系的非易失性存储区,所述外部控制器能够访问所述非易失性存储区,在所述外部控制器写入数据到所述非易失性存储区时,被写入的数据先缓存至所述数据缓存区中,之后再由所述数据缓存区中被拷贝至所述非易失性存储阵列中的非易失性存储区。
进一步的,所述存储控制器中包括执行状态机、执行队列,所述存储装置中还包括位掩码表以及地址映射表,所述位掩码表包括有多个位,每个位对应所述数据缓存区中的一个存储区块,所述位掩码表中对应所述数据缓存区的一个位为有效时,则表示其对应的存储区块中有待转存数据,在该位为无效时,则表示其对应的存储区块中无待转存数据,所述地址映射表用来记录有多条地址映射记录,每条地址映射记录包括待写入的数据在数据缓存区中的临时源地址以及其在所述非易失性存储区的目标地址。
进一步的,所述存储控制器接收到写入数据到所述非易失性存储区内的命令;执行状态机在位掩码表中查找所述数据缓存区中的无待转存数据的存储区块;当找到无待转存数据的存储区块后,执行状态机在地址映射表建立一条地址映射记录,该地址映射记录中包括待写入的数据在数据缓存区的临时源地址以及在非易失性存储区内的目标地址;将数据写入数据缓存区的临时源地址对应的存储区块,并将所述位掩码表的对应位置为有效;执行状态机生成一条写命令,将写入到数据缓存区的临时源地址内的数据转存到非易失性存储区的目的地址中,并将命令压入执行队列;执行队列中的命令则由执行状态机依次执行。
进一步的,所述执行状态机每执行完一条命令,则将地址映射表中的对应地址映射记录删除,还将位掩码表中的对应位设置为无效,当第一总线收到读所述非易失性存储区的访问命令时,执行状态机根据访问命令的目标地址,查询地址映射表,若地址映射表中存在目标地址,则基于地址映射表从数据缓存区的对应存储区块中读取数据;若地址映射表中不存在该目标地址,则直接从非易失性存储区的目标地址读取数据。
进一步的,在关机或者异常掉电时,存储控制器会将数据缓存区中的有效数据一次性写入非易失性存储区的对应地址。
进一步的,所述易失性存储阵列还包括有易失性存储区,所述外部存储器通过所述存储控制器访问所述易失性存储区。
与现有技术相比,本发明中的非易失性动态随机存取的存储装置采用了标准接口的非易失性存储器,提高了该存储装置的可靠性、通用性以及可维护性。
关于本发明的其他目的,特征以及优点,下面将结合附图在具体实施方式中详细描述。
【附图说明】
结合参考附图及接下来的详细描述,本发明将更容易理解,其中同样的附图标记对应同样的结构部件,其中:
图1为本发明中的非易失性动态随机存取的存储装置在一个实施例中的结构框图;
图2为图1中的非易失性动态随机存取的存储装置中的易失性存储阵列在一个实施例中的结构框图;
图3为图1中的非易失性动态随机存取的存储装置中的非易失性存储阵列在一个实施例中的结构框图;
图4为图3中的非易失性动态随机存取的存储装置中的非易失性存储单元在一个实施例中的结构框图;
图5为图1中的非易失性动态随机存取的存储控制器在一个实施例中的结构框图;
图6为本发明中的存储装置的易失性存储阵列及非易失性存储阵列的结构原理图;
图7为本发明中的存储装置的易失性存储阵列及非易失性存储阵列的一种示例;
图8为本发明中的存储装置的易失性存储阵列及非易失性存储阵列的另一种示例;
图9为图5中的存储处理模块在一个实施例中的结构框图
图10为地址映射表的示例图;
图11本发明中的存储装置的易失性存储阵列及非易失性存储阵列的另一种结构原理图。
【具体实施方式】
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明的详细描述主要通过程序、步骤、逻辑块、过程或其他象征性的描述来呈现,其直接或间接地模拟本发明中的技术方案的运作。所属领域内的技术人员使用此处的这些描述和陈述向所属领域内的其他技术人员有效的介绍他们的工作本质。
此处所称的“一个实施例”或“实施例”是指与所述实施例相关的特定特征、结构或特性至少可包含于本发明至少一个实现方式中。在本说明书中不同地方出现的“在一个实施例中”并非必须都指同一个实施例,也不必须是与其他实施例互相排斥的单独或选择实施例。此外,表示一个或多个实施例的方法、流程图或功能框图中的模块顺序并非固定的指代任何特定顺序,也不构成对本发明的限制。
如图1所示的,其示出了本发明中的非易失性动态随机存取的存储装置的一个实施例,所述存储装置1包括存储器接口10、存储控制器12、易失性存储阵列14和非易失性存储阵列16。所述存储器接口10与外部控制器21电性相连。所述存储控制器12通过第一总线11与所述存储器接口10相连。所述易失性存储阵列14通过第二总线13与所述存储控制器12相连。所述非易失性存储阵列通过第三总线15与所述存储控制器12相连。
在一个实施例中,所述第一总线11可以为DIMM总线,所述存储器接口10为可以DIMM接口,又可以称为DIMM金手指,第二总线为易失性存储阵列总线13,第三总线15为非易失性存储阵列总线,所述存储控制器12为DIMM存储控制器,所述存储装置1可以被称为DIMM存储装置,该DIMM存储装置的DIMM接口10插入外部的存储装置插槽20中,该存储装置插槽可以为DIMM插槽,所述存储装置插槽20与所述外部控制器21相连。所述外部控制器21位于计算机系统的主板或CPU(Central Processing Unit)中,该存储装置1为该计算机系统提供系统易失性存储区以及固态非易失性存储区(比如固态硬盘)。在其他的实施例中,所述DIMM接口也可以由其他接口标准来替代,本发明对此并不限制。
图2为图1中的易失性存储阵列14在一个实施例中的结构框图。如图2所示,所述易失性存储阵列14包括有多个易失性存储单元,每个易失性存储单元为易失性存储器。所述易失性存储器可以为DRAM(动态随机存取存储器),也可以为SRAM(Static Random Access Memory,即静态随机存取存储器)。如图2所示,其是以易失性存储单元为DRAM为例进行介绍,多个易失性存储单元分别为DRAM141、DRAM142、DRAM143、DRAM144,其形成了4行1列的一维易失性存储阵列。每个DRAM有其独立的时钟总线clock、控制总线control、地址总线address以及数据总线data,各个DRAM的总线汇集在一起,构成易失性存储阵列总线13。在另一些实施例中,也可以形成3行2列,10行3列的易失性存储阵列。也可以说,所述易失性存储单元可以形成一维的易失性存储阵列,也可以形成二维(比如2行2列,再比如3行4列等)的易失性存储阵列,还可以形成三维(比如2行,2列,2纵的三维阵列)的易失性存储阵列。此外,在一些应用中,所述易失性存储单元也可以被称为内存单元,所述易失性存储阵列14也可以被称之为内存阵列。
图3为图1中的非易失性存储阵列16在一个实施例中的结构框图。如图3所示,所述非易失性存储阵列16包括有多个非易失性存储单元,每个非易失性存储单元为非易失性存储器。在一个实施例中,所述非易失性存储器可以为NAND闪存,也可以为NOR闪存,本发明对此并不做特别的限制。如图3所示,多个非易失性存储单元分别为eMMC(Embedded Multi Media Card,嵌入式多媒体卡)161、eMMC162、eMMC163、eMMC164、eMMC165、eMMC166、eMMC167和eMMC168,其形成了4行2列的二维非易失性存储阵列。每个eMMC有其独立的数据线DATA、命令总线CMD和时钟总线CLK,所述数据总线、命令总线和时钟总线汇集在一起,构成非易失性存储阵列总线15。在另一些实施例中,也可以形成3行2列,10行3列的非易失性存储阵列,也就是说,所述非易失性存储单元可以形成X行Y列的非易失性存储阵列,X、Y为自然数。所述非易失性存储单元还可以形成三维(比如X行,Y列,W纵)的非易失性存储阵列,W也为自然数。
图4为图3中的一个eMMC161在一个实施例中的结构框图。所述eMMC161包括与第三总线相连的eMMC主控制器1611以及与所述eMMC主控制器1611相连的NAND闪存1610。所述eMMC主控制器1611通过非易失性存储阵列总线15与存储控制器12通讯,并将数据写入到NAND Flash 1610,或将数据从NAND Flash 1610读出。
在图3和图4的实施例中,以eMMC为非易失性存储单元为例进行了介绍。在其他实施例中,所述非易失性存储单元还可以是SD(Security Digital)卡,CF(Compact Flash)卡、其他MMC卡、UFS(Universal Flash Storage,通用闪存)卡。换句话说,所述非易失性存储单元的接口可以是接口标准中的一个:SD卡接口标准、MMC卡接口标准、CF卡接口标准和UFS接口标准。当然,还可以是其他统一的接口标准。
图5为图1中的存储控制器12在一个实施例中的结构框图。所述存储控制器12包括存储处理模块121、易失性存储阵列控制模块122,以及非易失性存储阵列控制模块123。所述存储处理模块121接收第一总线的命令,接收或发送第一总线的数据,同时向易失性存储阵列控制模块122或非易失性存储阵列控制模块123发送相应控制指令,以及收发相应数据。所述易失性存储阵列控制模块122对所述易失性存储阵列14进行读写操作,所述非易失性存储阵列控制模块123对所述非易失性存储阵列16进行读写操作。具体的,非易失性存储阵列控制模块123通过非易失性存储阵列控制模块总线126与存储处理模块121相连,所述易失性存储阵列控制模块122通过易失性存储阵列控制模块总线125与存储处理模块121相连。所述存储控制器12还包括有数据缓冲器124,用于在易失性存储阵列14与非易失性存储阵列16进行数据交换时进行数据缓冲。
综上所述,由于采用非易失性存储阵列中的非易失性存储单元的接口满足一定的标准,从而提高了可靠性、通用性和可维护性。假如某些非易失性存储单元坏掉,则更换该非易失性存储单元非常容易,便于维护。
如图6所示,本发明中的存储装置的易失性存储阵列及非易失性存储阵列的结构原理图。如图6所示,所述易失性存储阵列14包括易失性存储区1450和数据缓存区1470。所述非易失性存储阵列16包括多个非易失性存储区1660A、1660B和1660C。
易失性存储阵列14的易失性存储区1450可以独立被应用。所述易失性存储阵列14的易失性内存区1450在功能上与普通的内存相同,因此又可以称为内存区。当外部控制器21发出的访问命令落在该易失性存储区1450时,存储控制器12直接将命令旁路给易失性存储阵列14,这样计算机系统相当于直接访问易失性存储阵列,可实现与普通内存一样的读写性能。这样的读写访问速度很快,不影响任何访问速度。
易失性存储阵列14的数据缓存区1470与非易失性存储阵列16的非易失性存储区1660A、1660B和1660C相对应,两者共同构成存储装置1的非易失性存储区。所述外部控制器21能够通过存储控制器12访问非易失性存储阵列16的非易失性存储区1660A、1660B和1660C。然而,为了保证数据的写入速度,被写入的数据需要先缓存至所述易失性存储阵列14的数据缓存区1470中,之后再由所述数据缓存区1470中被拷贝至所述非易失性存储阵列16中的非易失性存储区。这样,该存储区可以为计算机系统提供具有超大容量(可高达TB级)并且具有较高访问速度的非易失存储空间。
所述易失性存储区1450在功能上为类内存区,所述类内存区是指该区域存储的数据在掉电后消失,在功能上与普通的内存相当。所述非易失性存储区1660A、1660B和1660C在功能上为类硬盘区,该类硬盘区则可在掉电后保存数据,并在重新上电后再次正确读取。
可以看出,本发明中的存储装置1兼具了现有计算机系统的内存和硬盘的特点,即有易失性存储区1450,也有非易失性存储区1660A、1660B和1660C,他们通过同一个存储器接口访问,通过同一个存储控制器管理。换句话说,对于计算机系统来说,所述存储装置1由两部分形成,一部分是作为内存使用的易失性存储区1450,另一部分为作为固态硬盘(solid state disk,SSD)使用的多个非易失性存储区1660A、1660B和1660C。本发明中的给计算机系统提供存储装置1的方式较现有的内存加硬盘的方式,更为有效,管理更为简便。
图7为本发明中的存储装置的易失性存储阵列及非易失性存储阵列的一种示例,其中易失性存储阵列为DRAM阵列14,所述非易失性存储阵列为eMMC阵列16,所述eMMC阵列中包括多个eMMC存储区1660A、1660B、1660C。此时,对于计算机系统来说,所述存储装置1由两部分形成,一部分是作为内存使用的DRAM存储区1450,另一部分为作为固态硬盘(solid state disk,SSD)使用的多个eMMC存储区(也可以被称为SSD存储区)。
图8为本发明中的存储装置的易失性存储阵列及非易失性存储阵列的另一种示例,其中易失性存储阵列为DRAM阵列14,所述非易失性存储阵列为UFS阵列16,所述UFS阵列中包括多个UFS存储区1660。此时,对于计算机系统来说,所述存储装置1由两部分形成,一部分是作为内存使用的DRAM存储区1450,另一部分为作为固态硬盘(solid state disk,SSD)使用的多个UFS存储区(也可以被称为SSD存储区)。
图6、7、8都仅仅示意出了一个数据缓存区,实际应用中,也可以有多个数据缓存区。
图9为图5中的存储处理模块121在一个实施例中的结构框图。所述存储处理模块121包括执行状态机1211、执行队列1212、位掩码表1213以及地址映射表1214。图10为地址映射表1214的一个示例。在一个实施例中,所述位掩码表1213以及地址映射表1214可以存储在所述易失性存储阵列14或所述非易失性存储阵列16中,所述存储处理模块121在需要时可以调用位掩码表1213以及地址映射表1214。
所述位掩码表1213中包括有多个位(比特位),其中部分或全部位中的每个位对应所述数据缓存区中的一个存储区块,所述位掩码表1213中对应所述数据缓存区1470的一个位为有效时,比如1时,则表示其对应的存储区块中有待转存数据,即还未转存到非易性存储区1660(下文中用1660代表1660A、1660B和1660C中的一个或全部)内的数据,在该位为无效时,比如0时,则表示其对应的存储区块中无待转存数据,即该存储区块中的数据已经被转存到非易失性存储区1660内,或者无新数据。所述地址映射表1214用来记录有多条地址映射记录,每条地址映射记录包括待写入的数据在数据缓存区中的临时源地址以及其在非易失性存储区的目标地址。
下面介绍一下写入数据到所述非易失性存储区1660内的目标地址的过程。
步骤710,所述存储处理模块121接收到写入数据到所述非易失性存储区1660内的命令;
步骤720,执行状态机1211在位掩码表1213中查找所述数据缓存区中的空闲的存储区块。即在位掩码表1213查找对应所述数据缓存区1470的无效位。
步骤730,当找到空闲的存储区块后,执行状态机1211在地址映射表1214建立一条地址映射记录,该地址映射记录中包括待写入的数据在数据缓存区1470的临时源地址以及在非易失性存储区1660内的目标地址。
步骤740,将数据写入数据缓存区1470的临时源地址对应的空闲存储区块,并将所述位掩码表1213的对应位置为有效;
步骤750,执行状态机1212生成一条写命令,将写入到数据缓存区1470的临时源地址内的数据转存到非易失性存储区1660的目的地址中,并将命令压入执行队列。
步骤760,执行队列中的命令则由执行状态机1211依次执行,每执行完一条命令,则将地址映射表1214中的对应地址映射记录删除,还将位掩码表1213中的对应位(该命令对应的易失性存储阵列14的数据缓存区1470的存储区块对应的位)设置为无效。
这样,通过数据缓存区1470的缓存,将数据写入了非易失性存储区1660。
当第一总线收到读所述非易失性存储区1660的访问命令时,执行状态机1211根据访问命令的目标地址,查询地址映射表1214,若地址映射表1214中存在目标地址,则表明要读取的数据尚未写入非易失性存储区1660,而是还保存在数据缓存区1470中,因此基于地址映射表1214从数据缓存区1470的对应存储区块中读取数据。若地址映射表1214中不存在该目标地址,则表明数据已经写入所述非易失性存储区1660,因此直接从非易失性存储区1660的目标地址读取数据。
根据上述说明,计算机系统对于非易失性存储区1660的读写访问会首先经过数据缓存区1470,然后再写入非易失性存储区1660的目标地址。这样可以在一定程度上大幅提高非易失性存储区的读写性能。但由于数据缓存区1470的存在,使得一部有效数据仍然保存在非易失存储器中,因此在系统关机或者异常掉电时,DIMM存储控制器12会将数据缓存区1470中的有效数据一次性写入非易失性存储区1660的对应地址。
举例来讲,所述非易失性存储阵列14可以具有4G的空间,其中3G作为易失性存储区1450,1G作为数据缓存区1470,所述非易失性存储阵列16可以具有100G的空间。计算机系统的外部控制器21可以高速的访问到3G的易失性存储区1450,就像访问现有内存一样,高速快捷。另外,外部控制器21还可以访问到100G的非易失性存储区1660,这部分具有较高访问速度,且同时具有非易失性,其读的速度可能较慢。
在一个实施例中,所述易失性存储阵列14中可以只包括数据缓存区1470,而不设置易失性存储区。
图11本发明中的存储装置的易失性存储阵列及非易失性存储阵列的另一种结构原理图。在此实施例中,所述数据缓存区为多个,分别为数据缓存区1470A,1470B和1470C等,所述非易失性存储区为多个,分别为非易失性存储区1660A、1660B和1660C等,其中数据缓存区1470A与非易失性存储区1660A相对应且空间大小相同,数据缓存区1470B与非易失性存储区1660B相对应且空间大小相同,……,数据缓存区1470C与非易失性存储区1660C相对应且空间大小相同。当然,在一个实施例中,也可以只设置一个数据缓存区和一个对应的非易失性存储区。下文中用1470代表1470A、1470B和1470C中的一个、多个或全部,用1660代表1660A、1660B和1660C中的一个、多个或全部。此时,所述外部控制器21能够通过存储控制器12访问所述数据缓存区1470,所述非易失性存储区1660用于对写入所述数据缓存区1470的数据进行备份。上电后,将所述非易失性存储区1660读入所述数据缓存区1470,外部控制器21对所述数据缓存区1470中的数据进行高速的读写。对于数据缓存区1470中新写入的数据,新写入的数据在备份至所述数据缓存区1470前会被称为待备份数据,按照一定的算法(比如DRAM空闲时候或者一定的规律),把所述数据缓存区1470的待备份数据备份回到所述数据缓存区1470;断电前,将数据缓存区1470中的待备份数据备份回到所述数据缓存区1470中。这样,该存储装置1具有DRAM的访问速度,同时具有固态硬盘的非易失性。关于如何判断所述数据缓存区1470中的哪些数据是待备份数据,可以通过所述位掩码表1213中的各个位进行标记。
上文对本发明进行了足够详细的具有一定特殊性的描述。所属领域内的普通技术人员应该理解,实施例中的描述仅仅是示例性的,在不偏离本发明的真实精神和范围的前提下做出所有改变都应该属于本发明的保护范围。本发明所要求保护的范围是由所述的权利要求书进行限定的,而不是由实施例中的上述描述来限定的。
Claims (12)
1.一种存储装置,其特征在于,其包括:
存储器接口,其与外部控制器电性相连;
存储控制器,其通过第一总线与所述存储器接口相连;
易失性存储阵列,其通过第二总线与所述存储控制器相连,其包括有多个易失性存储单元,每个易失性存储单元为易失性存储器;和
非易失性存储阵列,其通过第三总线与所述存储控制器相连,其包括有多个非易失性存储单元,每个非易失性存储单元为非易失性存储器。
2.根据权利要求1所述的存储装置,其特征在于,所述非易失性存储单元的接口满足如下接口标准中的一个:SD卡接口标准、MMC卡接口标准、CF卡接口标准和UFS接口标准。
3.根据权利要求1所述的存储装置,其特征在于,
所述易失性存储单元为动态随机存取存储器或静态随机存取存储器,
所述第一总线为DIMM总线,所述存储器接口为DIMM接口,
第二总线为易失性存储阵列总线,
第三总线为非易失性存储阵列总线,
所述DIMM接口插入DIMM插槽中以与所述外部控制器相连。
4.根据权利要求1所述的存储装置,其特征在于,所述易失性存储阵列为所述易失性存储单元形成的一维阵列,二维阵列或三维阵列,每个易失性存储单元具有独立的数据总线、地址总线、控制总线和时钟总线,各个易失性存储单元的数据总线、地址总线、控制总线和时钟总线汇集形成第二总线,
所述非易失性存储阵列为所述非易失性存储单元形成的一维阵列,二维阵列或三维阵列,每个非易失性存储单元具有独立的数据总线、命令总线和时钟总线,各个非易失性存储单元的数据总线、命令总线和时钟总线汇集形成第三总线。
5.根据权利要求1所述的存储装置,其特征在于,每个非易失性存储单元包括与第三总线相连的主控制器以及与所述主控制器相连的闪存。
6.根据权利要求1所述的存储装置,其特征在于,所述存储控制器包括存储处理模块、易失性存储阵列控制模块以及非易失性存储阵列控制模块,
所述存储处理模块接收第一总线的命令,接收或发送第一总线的数据,同时向易失性存储阵列控制模块或非易失性存储阵列控制模块发送相应控制指令,以及收发相应数据,
所述易失性存储阵列控制模块对所述易失性存储阵列进行读写操作,
所述非易失性存储阵列控制模块对所述非易失性存储阵列进行读写操作。
7.根据权利要求1所述的存储装置,其特征在于,所述易失性存储阵列包括有数据缓存区,所述非易失性存储阵列包括与所述数据缓存区具有对应关系的非易失性存储区,所述外部控制器能够访问所述非易失性存储区,在所述外部控制器写入数据到所述非易失性存储区时,被写入的数据先缓存至所述数据缓存区中,之后再由所述数据缓存区中被拷贝至所述非易失性存储阵列中的非易失性存储区。
8.根据权利要求7所述的存储装置,其特征在于,所述存储控制器中包括执行状态机、执行队列,所述存储装置中还包括位掩码表以及地址映射表,
所述位掩码表包括有多个位,每个位对应所述数据缓存区中的一个存储区块,所述位掩码表中对应所述数据缓存区的一个位为有效时,则表示其对应的存储区块中有待转存数据,在该位为无效时,则表示其对应的存储区块中无待转存数据,
所述地址映射表用来记录有多条地址映射记录,每条地址映射记录包括待写入的数据在数据缓存区中的临时源地址以及其在所述非易失性存储区的目标地址。
9.根据权利要求8所述的存储装置,其特征在于,
所述存储控制器接收到写入数据到所述非易失性存储区内的命令;
执行状态机在位掩码表中查找所述数据缓存区中的无待转存数据的存储区块;
当找到无待转存数据的存储区块后,执行状态机在地址映射表建立一条地址映射记录,该地址映射记录中包括待写入的数据在数据缓存区的临时源地址以及在非易失性存储区内的目标地址;
将数据写入数据缓存区的临时源地址对应的存储区块,并将所述位掩码表的对应位置为有效;
执行状态机生成一条写命令,将写入到数据缓存区的临时源地址内的数据转存到非易失性存储区的目的地址中,并将命令压入执行队列;
执行队列中的命令则由执行状态机依次执行。
10.根据权利要求9所述的存储装置,其特征在于,
所述执行状态机每执行完一条命令,则将地址映射表中的对应地址映射记录删除,还将位掩码表中的对应位设置为无效,
当第一总线收到读所述非易失性存储区的访问命令时,执行状态机根据访问命令的目标地址,查询地址映射表,若地址映射表中存在目标地址,则基于地址映射表从数据缓存区的对应存储区块中读取数据;
若地址映射表中不存在该目标地址,则直接从非易失性存储区的目标地址读取数据。
11.根据权利要求9所述的存储装置,其特征在于,在关机或者异常掉电时,存储控制器会将数据缓存区中的有效数据一次性写入非易失性存储区的对应地址。
12.根据权利要求7所述的存储装置,其特征在于,所述易失性存储阵列还包括有易失性存储区,所述外部存储器通过所述存储控制器访问所述易失性存储区。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410766014.4A CN104575595B (zh) | 2014-12-12 | 2014-12-12 | 非易失性随机存取的存储装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410766014.4A CN104575595B (zh) | 2014-12-12 | 2014-12-12 | 非易失性随机存取的存储装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104575595A true CN104575595A (zh) | 2015-04-29 |
CN104575595B CN104575595B (zh) | 2017-07-07 |
Family
ID=53091472
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410766014.4A Active CN104575595B (zh) | 2014-12-12 | 2014-12-12 | 非易失性随机存取的存储装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104575595B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105703765A (zh) * | 2014-12-16 | 2016-06-22 | 三星电子株式会社 | 基于dram的可重构逻辑 |
WO2018059495A1 (zh) * | 2016-09-30 | 2018-04-05 | 华为技术有限公司 | 一种固态硬盘ssd、存储装置及数据存储方法 |
CN108121664A (zh) * | 2016-11-28 | 2018-06-05 | 慧荣科技股份有限公司 | 数据储存装置以及其操作方法 |
CN108604456A (zh) * | 2016-02-26 | 2018-09-28 | 英特尔公司 | 在存储器插槽中支持多个存储器类型 |
CN109144778A (zh) * | 2018-07-27 | 2019-01-04 | 郑州云海信息技术有限公司 | 一种存储服务器系统及其备份方法、系统及可读存储介质 |
CN109426453A (zh) * | 2017-08-28 | 2019-03-05 | 爱思开海力士有限公司 | 数据存储装置及其操作方法 |
CN112771515A (zh) * | 2018-07-31 | 2021-05-07 | 马维尔国际贸易有限公司 | 具有元数据计算引擎的存储边缘控制器 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0566306A2 (en) * | 1992-04-16 | 1993-10-20 | Hitachi, Ltd. | Semiconductor memory device |
CN1682199A (zh) * | 2002-09-10 | 2005-10-12 | 诺基亚有限公司 | 一种包含非易失性ram和ram的存储电路 |
US20110161569A1 (en) * | 2009-12-25 | 2011-06-30 | Montage Technology (Shanghai) Co., Ltd. | Memory module and method for exchanging data in memory module |
CN103558993A (zh) * | 2006-12-20 | 2014-02-05 | 莫塞德技术公司 | 具有易失性和非易失性存储器的混合固态存储器系统 |
CN104077246A (zh) * | 2014-07-02 | 2014-10-01 | 浪潮(北京)电子信息产业有限公司 | 一种实现易失性存储器备份的装置 |
-
2014
- 2014-12-12 CN CN201410766014.4A patent/CN104575595B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0566306A2 (en) * | 1992-04-16 | 1993-10-20 | Hitachi, Ltd. | Semiconductor memory device |
CN1682199A (zh) * | 2002-09-10 | 2005-10-12 | 诺基亚有限公司 | 一种包含非易失性ram和ram的存储电路 |
CN103558993A (zh) * | 2006-12-20 | 2014-02-05 | 莫塞德技术公司 | 具有易失性和非易失性存储器的混合固态存储器系统 |
US20110161569A1 (en) * | 2009-12-25 | 2011-06-30 | Montage Technology (Shanghai) Co., Ltd. | Memory module and method for exchanging data in memory module |
CN104077246A (zh) * | 2014-07-02 | 2014-10-01 | 浪潮(北京)电子信息产业有限公司 | 一种实现易失性存储器备份的装置 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105703765A (zh) * | 2014-12-16 | 2016-06-22 | 三星电子株式会社 | 基于dram的可重构逻辑 |
CN108604456A (zh) * | 2016-02-26 | 2018-09-28 | 英特尔公司 | 在存储器插槽中支持多个存储器类型 |
CN108604456B (zh) * | 2016-02-26 | 2023-03-07 | 英特尔公司 | 在存储器插槽中支持多个存储器类型 |
WO2018059495A1 (zh) * | 2016-09-30 | 2018-04-05 | 华为技术有限公司 | 一种固态硬盘ssd、存储装置及数据存储方法 |
CN108121664A (zh) * | 2016-11-28 | 2018-06-05 | 慧荣科技股份有限公司 | 数据储存装置以及其操作方法 |
CN109426453A (zh) * | 2017-08-28 | 2019-03-05 | 爱思开海力士有限公司 | 数据存储装置及其操作方法 |
CN109426453B (zh) * | 2017-08-28 | 2022-03-04 | 爱思开海力士有限公司 | 数据存储装置及其操作方法 |
CN109144778A (zh) * | 2018-07-27 | 2019-01-04 | 郑州云海信息技术有限公司 | 一种存储服务器系统及其备份方法、系统及可读存储介质 |
CN112771515A (zh) * | 2018-07-31 | 2021-05-07 | 马维尔国际贸易有限公司 | 具有元数据计算引擎的存储边缘控制器 |
Also Published As
Publication number | Publication date |
---|---|
CN104575595B (zh) | 2017-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104461964B (zh) | 一种存储装置 | |
US10860477B2 (en) | Apparatus and method for low power low latency high capacity storage class memory | |
CN104575595A (zh) | 非易失性随机存取的存储装置 | |
CN108804023B (zh) | 数据存储装置及其操作方法 | |
US10191822B2 (en) | High performance persistent memory | |
US9927999B1 (en) | Trim management in solid state drives | |
US20170344430A1 (en) | Method and apparatus for data checkpointing and restoration in a storage device | |
KR102585883B1 (ko) | 메모리 시스템의 동작 방법 및 메모리 시스템 | |
US11275678B2 (en) | Data storage device with spare blocks for replacing bad block in super block and operating method thereof | |
US20200218653A1 (en) | Controller, data storage device, and operating method thereof | |
US10725933B2 (en) | Method and apparatus for redirecting memory access commands sent to unusable memory partitions | |
US11775368B2 (en) | Node coherency for storage related data | |
KR102544162B1 (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
US20170038982A1 (en) | Block storage protocol to ram bypass | |
US11249917B2 (en) | Data storage device and operating method thereof | |
KR20190091035A (ko) | 메모리 시스템 및 그것의 동작 방법 | |
KR102589609B1 (ko) | 분할된 저장장치에서의 스냅샷 관리 | |
US20230126685A1 (en) | Storage device and electronic system | |
US11681638B2 (en) | Method of synchronizing time between host device and storage device and system performing the same | |
CN112083883B (zh) | 存储系统以及用于存储系统中的方法 | |
CN109840214B (zh) | 数据存储装置及其操作方法 | |
KR20210001206A (ko) | 컨트롤러, 메모리 시스템 및 그것의 동작 방법 | |
KR20210028405A (ko) | 서치 회로 및 컨트롤러 | |
US20230297520A1 (en) | Compute express link memory and storage module | |
US20230393760A1 (en) | Safe area for critical control data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C53 | Correction of patent of invention or patent application | ||
CB02 | Change of applicant information |
Address after: Hangzhou City, Zhejiang province 311200 Xiaoshan District Road No. 66 Building No. 1 building 22 layer Huarui Center Applicant after: SAGE MICROELECTRONICS CORP. Address before: Hangzhou City, Zhejiang province 311200 Xiaoshan District Road No. 66 Building No. 1 building 22 layer Huarui Center Applicant before: Hangzhou Sage Microelectronics Technology Co., Ltd. |
|
COR | Change of bibliographic data |
Free format text: CORRECT: APPLICANT; FROM: HANGZHOU SAGE MICROELECTRONICS CO., LTD. TO: HANGZHOU SAGE MICROELECTRONICS, CORP. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |