CN105786400B - 一种异构混合内存组件、***及存储方法 - Google Patents

一种异构混合内存组件、***及存储方法 Download PDF

Info

Publication number
CN105786400B
CN105786400B CN201410822643.4A CN201410822643A CN105786400B CN 105786400 B CN105786400 B CN 105786400B CN 201410822643 A CN201410822643 A CN 201410822643A CN 105786400 B CN105786400 B CN 105786400B
Authority
CN
China
Prior art keywords
data
processor
read
buffer area
buffer
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
CN201410822643.4A
Other languages
English (en)
Other versions
CN105786400A (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.)
Shenzhen Yanxiang Smart Technology Co ltd
Original Assignee
EVOC Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by EVOC Intelligent Technology Co Ltd filed Critical EVOC Intelligent Technology Co Ltd
Priority to CN201410822643.4A priority Critical patent/CN105786400B/zh
Publication of CN105786400A publication Critical patent/CN105786400A/zh
Application granted granted Critical
Publication of CN105786400B publication Critical patent/CN105786400B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明公开了一种异构混合内存组件、***及存储方法,该异构混合内存组件包括:内存控制器用于接收处理器的写/读请求,根据写/读请求中的地址信息检测处理器访问的页面所对应的单位空间,控制数据从处理器通过缓冲区写入至存储单元阵列,或控制数据从存储单元阵列通过缓冲区读出至处理器;存储单元阵列,用于按照第一存储类型并以多个页面的方式存储写入/读出的数据;缓冲区,用于按照第二存储类型并设置对应于多个页面的多个单位空间存储写入/读出的数据,第二存储方式的读写速率大于第一存储方式的读写速率。该发明的有益效果为:外部存储设备与内存共享同等的数据带宽,而不再通过IO访问,大幅度提升外存的访问效率。

Description

一种异构混合内存组件、***及存储方法
技术领域
本发明涉及计算机技术领域,尤其涉及一种异构混合内存组件、***及存储方法。
背景技术
传统的服务器采用两级存储机制,CPU首先从内部存储存单元中寻找所需的数据,当数据不在内存中时再从外部存储(硬盘)中调取数据。CPU和内存之间的速度差别通过多级缓存得到了解决,但内存与外存之间的速度差距越来越大,达到了10万倍。在大数据处理场合,频繁地访问外存会导致整个***性能大幅度下降,成为***性能的瓶颈,制约了数据的访问速度。
现有的技术采用RAID 0(RAID 0又称为Stripe或Striping,代表了所有RAID级别中最高的存储性能。)方式来提升外部存储(硬盘)的读写速率,也就是通过多个外部存储设备并行读写的方式来提升整体速率,但服务器的基本数据存取架构并没有改变。比如,用两块硬盘来组成RAID 0,那么理论速率能够提升到单块硬盘的两倍,但实际速率会低于这个数值。这是因为,采用RAID0方式来提升外部存储(硬盘)的读写速率的方式并没有改变传统服务器平台的存取架构,在这种方式下IO访问瓶颈仍然存在,CPU仍然要通过速率相对较低的IO总线来访问外部存储设备,这就决定了采用这种方式对速率的提升是有条件的,会受到IO访问速率的限制。
现有技术中采用NVDIMM(NVDIMM是在一种集成了DRAM+非易失性内存芯片的内存条规格,能够在完全断电的时候依然保存完整内存数据)方式提高数据的安全性,即在服务器普通内存的基础上加上等容量或更大容量的Flash,平时正常工作时服务器只能访问普通内存(DRAM)的部分,在服务器掉电瞬间NVDIMM会将DRM数据备份到Flash中,下次恢复供电时,***又会从Flash中将数据恢复到DRAM里,整个***恢复到断电前的状态。NVDIMM的方式虽然提高了数据的安全性,但是需要与DRAM同等容量的Flash做备份,Flash在***下不可见,仅在掉电和恢复时才可以使用,导致存储空间利用率很低。同时,从DRAM复制数据到Flash需要一定的时间,DRAM容量越大,复制时间会越长,为完成复制所需要的备用电源也就越大,这就决定了采用NVDIMM的方式内存容量无法做到很大,限制了这一技术不适合在大数据服务器的推广应用。
发明内容
本发明要解决的技术问题在于,针对上述现有技术中传统服务器架构对外部存储大数据访问的瓶颈,以及在异常断电、死机情况下,无法有效地保护内存数据的问题,提供一种异构混合内存组件、***及存储方法。
本发明解决其技术问题所采用的技术方案是:一方面,构造一种异构混合内存组件,包括连接于处理器的内存控制器、存储单元阵列及缓冲区;其中,
所述内存控制器,用于接收所述处理器的写/读请求,根据所述写/读请求中的地址信息检测所述处理器访问的页面所对应的单位空间,控制数据从所述处理器通过所述缓冲区写入至所述存储单元阵列,或控制数据从所述存储单元阵列通过所述缓冲区读出至所述处理器;
所述存储单元阵列,用于按照第一存储类型并以多个页面的方式存储写入/读出的数据;
所述缓冲区,用于按照第二存储类型并设置对应于所述多个页面的多个单位空间存储写入/读出的数据,所述第二存储方式的读写速率大于所述第一存储方式的读写速率。
在本发明所述的异构混合内存组件中,所述内存控制器包括数据通道、处理器接口、地址存储模块、缓存模块、控制接口以及管理接口;其中,
所述数据通道,用于控制所述地址信息和所述数据的存储、所述数据的写入和/或读出;
所述处理器接口,连接于所述处理器,用于接收所述处理器的写/读请求,从所述处理器写入数据,读出数据至所述处理器;
所述地址存储模块,用于存储所述写/读请求中的地址信息;
所述缓存模块,用于依据所述地址信息判断自身的空闲状态,并存储所写入/读出的数据;
所述控制接口,连接于所述缓冲区,用于检测所述处理器访问的页面对应的单位空间是否存在于所述缓冲区中,若是,将所述数据写入/读出所述缓冲区,若否,则依据所访问的页面于所述缓冲区中调入对应的单位空间,并将所述数据写入/读出所述缓冲区;
所述管理接口,连接于所述存储单元阵列,用于将所述数据写入/读出所述存储单元阵列。
在本发明所述的异构混合内存组件中,所述内存控制器还包括缓冲区页面状态存储模块及写/读缓冲模块;其中,
所述缓冲区页面状态存储模块,用于存储所述缓冲区的所述页面对应的单位空间的使用情况;
所述写/读缓冲模块,用于在所述控制接口与所述管理接口之间缓冲所读入/写出的数据。
在本发明所述的异构混合内存组件中,所述缓冲区还用于在所述单位空间全部被使用时,根据所述使用情况调出使用频率最低的单位空间至所述存储单元阵列对应的页面中,在从所述存储单元阵列的页面中调入对应的单位空间。
在本发明所述的异构混合内存组件中,所述管理接口采用多个数据通道连接至所述存储单元阵列。
在本发明所述的异构混合内存组件中,所述内存控制器还用于将所述缓冲区的单位空间的修改信息存入所述存储单元阵列中。
一方面,提供一种异构混合内存***,包括处理器以及如上述的异构混合内存组件。
一方面,提供一种异构混合内存存储方法,该方法采用上述异构混合内存***,包括写入数据及读出数据的步骤;
其中,写入数据的步骤包括:
所述内存控制器接收所述处理器的写请求,根据所述写请求中的地址信息检测所述处理器访问的页面所对应的单位空间,控制数据从所述处理器通过所述缓冲区写入至所述存储单元阵列;
读出数据的步骤包括:
所述内存控制器接收所述处理器的读请求,根据所述读请求中的地址信息检测所述处理器访问的页面所对应的单位空间,控制数据从所述存储单元阵列通过所述缓冲区读出至所述处理器;
所述存储单元阵列按照第一存储类型并以多个页面的方式存储写入/读出的数据;所述缓冲区按照第二存储类型并设置对应于所述多个页面的多个单位空间存储写入/读出的数据;所述第二存储方式的读写速率大于所述第一存储方式的读写速率。
在本发明所述的异构混合内存存储方法中,所述写入数据的步骤包括以下子步骤:
S11、所述处理器向所述异构混合内存组件发出写入数据的请求。
S12、所述异构混合内存组件根据所述地址信息连接至所述处理器的寄存器中。
S13、检测所述处理器访问的页面对应的单位空间是否存在于所述缓冲区中,若是,将所述数据写入所述缓冲区中对应的单位空间,若否,则依据所访问的页面于所述缓冲区中分配另一单位空间,并调入到对应的所述另一单位空间,并将所述数据写入所述另一单位空间。
在本发明所述的异构混合内存存储方法中,所述读出数据的步骤包括以下子步骤:
S21、所述处理器向所述异构混合内存组件发出读出数据的请求。
S22、所述异构混合内存组件根据所述地址信息连接至所述处理器的寄存器中。
S23、检测所述处理器访问的页面对应的单位空间是否存在于所述缓冲区中,若是,将所述数据读出所述缓冲区,若否,则依据所访问的页面于所述缓冲区中调入对应的单位空间,并将所述数据读出所述缓冲区。
上述公开的一种异构混合内存组件、***及存储方法具有以下有益效果:改变传统服务器的数据存取架构,将外部存储设备提升到与内部存储平级的层面,外部存储设备与内存共享同等的数据带宽,而不再通过IO访问,大幅度提升外存的访问效率,借助外部存储设备的非易失性的特点,对CPU数据进行保护,即断电不会丢失,断电恢复后可接续工作。
附图说明
图1为本发明一实施例提供的一种异构混合内存组件的结构框图;
图2为本发明另一实施例提供的一种异构混合内存组件的结构框图;
图3为本发明提供的内存控制器的结构框图;
图4为本发明提供的一种异构混合内存***的结构框图;
图5为本发明提供的一种异构混合内存存储方法的流程图;
图6为本发明提供的写入数据的流程图;
图7为本发明提供的读出数据的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明提供了一种异构混合内存组件、***及存储方法,其中,该***包含了CPU、***的扩展总线、IO接口以及各种异构的内存模块(也称“内存组件”),该***的核心在于NVM(Non-Volatile RandomAccess Memory,非易失性随机访问存储器)内存模块的设计和NVM/DRAM(Dynamic Random Access Memory,动态随机访问存储器)内存模块的混合管理。而NVM内存模块的核心在于设计一个专用的NVM控制器来连接和管理CPU的接口通信和NVM的接口通信。本发明所提出的异构混合内存组件、***及存储方法可应用于工业服务器***中。
参见图1,图1为本发明一实施例提供的一种异构混合内存组件100的结构框图,该异构混合内存组件100包括连接于处理器的内存控制器1、存储单元阵列2及缓冲区3。
所述内存控制器1用于接收所述处理器的写/读请求,根据所述写/读请求中的地址信息检测所述处理器访问的页面所对应的单位空间,控制数据从所述处理器通过所述缓冲区3写入至所述存储单元阵列2,或控制数据从所述存储单元阵列2通过所述缓冲区3读出至所述处理器。
所述存储单元阵列2用于按照第一存储类型并以多个页面的方式存储写入/读出的数据。存储单元阵列2优选为NVM阵列2,那么相应的内存控制器1则为NVM控制器。
所述缓冲区3,用于按照第二存储类型并设置对应于所述多个页面的多个单位空间存储写入/读出的数据,所述第二存储方式的读写速率大于所述第一存储方式的读写速率。由于CPU中集成的内存控制器1只能支持DRAM的传输协议,故缓冲区3优选由DDR3DRAM颗粒构成。而目前的技术条件下,NVM的读写速率仍然低于DRAM,即第二存储方式(对应于DRAM)的读写速率大于所述第一存储方式(对应于NVM)的读写速率,因此,在NVM内存模块中需要设计一套完整的子***使NVM的读写符合CPU内存控制器1的要求。
参见图2,图2为本发明另一实施例提供的一种异构混合内存组件100的结构框图,该实施例不同于上一实施例之处在于,该实施例具体化了异构混合内存组件100的各组成部分。
该实施例中,所述内存控制器1为NVM控制器,所述存储单元阵列2为NVM阵列2,所述缓冲区3为NVM缓冲区3,并优选由DDR3DRAM颗粒构成,所述内存控制器1连接到CPU的DDR3DIMM接口,同时,提供后备电源为NVM控制器供电,以及提供SPD(Serial PresenceDetect),即内存模组的配置信息。
参见图3,图3为本发明提供的内存控制器1的结构框图,该内存控制器1采用如图2所示的NVM控制器,NVM控制器包括了与CPU连接的DRAM内存接口(即处理器接口12),与NVM缓冲区3连接的缓冲区3控制接口15(即控制接口15),与NVM阵列2连接的NVM管理接口16(即管理接口16),以及在相互之间起到连接关系的数据通道及控制逻辑模块。NVM控制器以“页”的方式读写和缓冲数据,NVM缓冲区3被划分出若干个虚拟的单位空间,每个单位空间存储一页数据。
综合上述内存控制器1的结构,内存控制器1包括数据通道11、处理器接口12、地址存储模块13、缓存模块14、控制接口15、管理接口16、缓冲区页面状态存储模块17及写/读缓冲模块18。
所述数据通道11,用于控制所述地址信息和所述数据的存储、所述数据的写入和/或读出。
所述处理器接口12,连接于所述处理器,用于接收所述处理器的写/读请求,从所述处理器写入数据,读出数据至所述处理器;即图3中的DRAM内存接口。
所述地址存储模块13,用于存储所述写/读请求中的地址信息;即图3中的地址/读写状态信息框。
所述缓存模块14,用于依据所述地址信息判断自身的空闲状态,并存储所写入/读出的数据;即图3中的Cache框。
所述控制接口15,连接于所述缓冲区3,用于对缓冲区3的数据读写进行管理,具体的,用于检测所述处理器访问的页面对应的单位空间是否存在于所述缓冲区3中,若是,将所述数据写入/读出所述缓冲区3中对应的单位空间,若否,则依据所访问的页面于所述缓冲区3中分配新的单位空间(即另一单位空间),并调入到这个新的单位空间,并将所述数据写入/读出所述缓冲区3;即图3中的缓冲区3控制接口15。此处的控制接口15设计为一个双通道向的控制器接口,既可以与前端的DRAM内存数据通信,又可以与后端NVM数据(即存储单元阵列2)通信,起到桥梁的作用。NVM缓冲区3的工作效率则影响着整个***的性能,前端的地址/读写状态信息寄存器、Cache、缓冲区3页面状态表都是采用控制器内部的高速静态RAM,对NVM缓冲区3的占用时间较少,但是后端的NVM相对读写速度就低了很多,为此在中间设计了NVM的写缓冲和读缓冲。当需要写NVM时,缓冲区3控制接口15只需要把页数据放到NVM写缓冲区18,后续的工作由NVM管理接口16完成,不会占用缓冲区3控制接口15的时间。当需要读NVM时,控制器通知NVM管理接口16预读取,NVM管理接口16完成读取后先把数据放在NVM读缓冲区18中,并通知缓冲区3控制接口15来取页数据。
所述管理接口16,连接于所述存储单元阵列2,用于将所述数据写入/读出所述存储单元阵列2。即图3中的NVM管理接口16。所述管理接口16采用多个数据通道连接至所述存储单元阵列2。NVM管理接口16的另一项任务就是提升NVM模块的读写速率。这里,NVM泛指所有类型的非易失性随机访问存储器,目前主流的NVM器件包括:相变存储器(PCM)、电阻存储器(RRAM)、铁电存储器(FRAM)等,本应用中采用了技术相对成熟的相变存储器(PCM),但其读写速度仍然远低于目前通用的DDR3DRAM存储器件。因为,提升NVM内存模块整体的读写速度成为整个异构混合内存存储方式的工业服务器性能的关键,除了前面提到的采用DRAM进行缓冲外,NVM管理接口16对NVM阵列2的管理方法也是非常关键的环节。在本设计案例中,NVM管理接口16对NVM阵列2采用多通道并行传输的管理方式,把页数据分布到多个独立的通道读写。比如,本案例中用4个通道同时读写NVM阵列2,与1个通道相比读写速率可以提升4倍。
所述缓冲区页面状态存储模块17,用于数据通道存储所述缓冲区3的所述页面对应的单位空间的使用情况;缓冲区页面状态存储模块17即图3中的缓冲区页面状态表的方框。缓冲区页面状态存储模块17可以将缓冲区3的存储情况列为表,该表为一个特殊的存储空间,用于记录NVM缓冲区3的页面使用情况,配合控制器管理页面的调入和调出。
所述写/读缓冲模块18,用于在所述控制接口15与所述管理接口16之间缓冲所读入/写出的数据。即图3中的NVM写缓冲以及NVM读缓冲。
此外,所述缓冲区3还用于在所述单位空间全部被使用时,根据所述使用情况调出使用频率最低的单位空间至所述存储单元阵列2对应的页面中,在从所述存储单元阵列2的页面中调入对应的单位空间。即内存控制器1将数据从NVM调入NVM缓冲区3遵循以下原则:当NVM缓冲区3有空闲的空间时,占用空闲的空间;当NVM缓冲区3全部被使用时,控制器先将使用频率最低的页调出(存入NVM中),再调入对应的页。
所述内存控制器1还用于将所述缓冲区3的单位空间的修改信息存入所述存储单元阵列2中。为了保证NVM内存模块数据的安全性,在异构混合内存存储方式的工业服务器中做了以下两项数据安全性设计。一是设计了一条数据保存指令,通过该指令将NVM内存模块中NVM缓冲区3做过修改的页主动写入NVM中。二是断电时,截获断电信息,在NVM控制器的控制下自动将NVM内存模块中NVM缓冲区3做过修改的页写入NVM中,以做到对重要数据的实时保护。
参见图4,图4为本发明提供的一种异构混合内存***200的结构框图,本发明的另一方面还提供一种异构混合内存***200,包括处理器以及如上述的异构混合内存组件100。图4中,除了包括异构混合内存组件(对应于NVM内存模块)以及处理器(对应于CPU0-CPU3)以外,还包括DRAM内存模块、扩展总线以及IO接口。
参见图5,图5为本发明提供的一种异构混合内存存储方法的流程图,本发明的再一方面还提供一种异构混合内存存储方法,该方法采用上述异构混合内存***200,包括写入数据及读出数据的步骤;
其中,写入数据的步骤包括:
所述内存控制器1接收所述处理器的写请求,根据所述写请求中的地址信息检测所述处理器访问的页面所对应的单位空间,控制数据从所述处理器通过所述缓冲区3写入至所述存储单元阵列2。
读出数据的步骤包括:
所述内存控制器1接收所述处理器的读请求,根据所述读请求中的地址信息检测所述处理器访问的页面所对应的单位空间,控制数据从所述存储单元阵列2通过所述缓冲区3读出至所述处理器。
所述存储单元阵列2按照第一存储类型并以多个页面的方式存储写入/读出的数据;所述缓冲区3按照第二存储类型并设置对应于所述多个页面的多个单位空间存储写入/读出的数据;所述第二存储方式的读写速率大于所述第一存储方式的读写速率。
参见图6,图6为本发明提供的写入数据的流程图,所述写入数据的步骤包括以下子步骤:
其中,步骤S101-S103为处理器的执行流程,步骤S111-S118为异构混合内存组件100的执行流程。
S101、CPU的应用层提出写NVM数据的请求,转至步骤S111;
S102、CPU的驱动层向NVM内存模块写数据,转至步骤S112;
S103、完成写入数据的步骤;
S111、Cache是否空闲,若是,转至步骤S102,若否,转至步骤S101。
S112、NVM内存模块接收地址/读写信息。
S113、数据保存到Cache中。
S114、判断数据所在页是否在缓冲区3中,若是,转至步骤S118,若否,转至步骤S115。
S115、缓冲区3是否空闲,若是,转至步骤S118,若否,转至步骤S116。
S116、调出缓冲区3中不常用的页面。通过存储所述缓冲区3的所述页面对应的单位空间的使用情况;所述缓冲区3在所述单位空间全部被使用时,根据所述使用情况调出使用频率最低的单位空间至所述存储单元阵列2对应的页面中,在从所述存储单元阵列2的页面中调入对应的单位空间。
S117、从NVM调入数据所在的页面。
S118、数据写入缓冲区3,转至步骤S103。
综合上述写入数据的步骤,写入数据的步骤可以总结为以下子步骤:
S11、处理器向所述异构混合内存组件100发出写入数据的请求。
S12、异构混合内存组件100判断Cache(即缓存)是否空闲,在缓存空闲情况下控制器将DDR3周期信息放在地址/读写状态信息相关寄存器中。
S13、判断所访问的页面是否在缓冲区3当中,如果在缓冲区3中就直接写入对应的数据;如果不在缓冲区3且写入数据是非整页数据则命令控制接口15将对应的页面从NVM调入缓冲区3,然后再写入对应的数据;如果不在缓冲区3且写入数据是整页数据则写入缓冲区3的空闲单位空间,并更新“缓冲区页面状态表”。
参见图7,图7为本发明提供的读出数据的流程图,所述读出数据的步骤包括以下子步骤:
读出数据的流程中,S201-S205为处理器的执行流程,步骤S211-S216为异构混合内存组件100的执行流程。
S201、应用层提出读NVM数据请求,即异构混合内存组件100执行步骤S211-S216,处理器执行步骤S202-S205。
S202、驱动层从NVM内存模块读数据。
S203、判断数据是否有效,若是,转至步骤S204,若否,转至步骤S202。
S204、屏蔽数据标志的附加信息。
S205、完成读出数据的步骤。
S211、NVM内存模块接收地址/读写信息。
S212、返回数据标志置为无效。
S213、判断访问页面是否在缓冲区3,若是,转至步骤S215,若否,转至步骤S214。
S214、从NVM调入所在页面的数据。
S215、缓冲区3数据调入Cache中。
S216、返回数据标志置为有效。
综合上述读出数据的步骤,读出数据的步骤可以总结为以下子步骤:
S21、处理器向所述异构混合内存组件100发出读出数据的请求。
S22、内存控制器1将DDR3周期信息放在地址/读写状态信息相关寄存器中。
S23、判断所访问单元所在页面是否在缓冲区3当中,如果在缓冲区3中就从Cache中将数据返回给CPU,完成此次操作;如果不在缓冲区3中则命令控制接口15将对应的页面从NVM调入缓冲区3,在下次CPU访问时提供所需要的数据。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。

Claims (9)

1.一种异构混合内存组件,其特征在于,包括连接于处理器的内存控制器、存储单元阵列及缓冲区;其中,
所述内存控制器,用于接收所述处理器的写/读请求,根据所述写/读请求中的地址信息检测所述处理器访问的页面所对应的单位空间,控制数据从所述处理器通过所述缓冲区写入至所述存储单元阵列,或控制数据从所述存储单元阵列通过所述缓冲区读出至所述处理器;
所述存储单元阵列,用于按照第一存储类型并以多个页面的方式存储写入/读出的数据;
所述缓冲区,用于按照第二存储类型并设置对应于所述多个页面的多个单位空间存储写入/读出的数据,所述第二存储方式的读写速率大于所述第一存储方式的读写速率;
所述内存控制器包括数据通道、处理器接口、地址存储模块、缓存模块、控制接口以及管理接口;其中,
所述数据通道,用于传输所述地址信息和所述数据的存储、所述数据的写入和/或读出;
所述处理器接口,连接于所述处理器,用于接收所述处理器的写/读请求,从所述处理器写入数据,读出数据至所述处理器;
所述地址存储模块,用于存储所述写/读请求中的地址信息;
所述缓存模块,用于依据所述地址信息判断自身的空闲状态,并存储所写入/读出的数据;
所述控制接口,连接于所述缓冲区,用于检测所述处理器访问的页面对应的单位空间是否存在于所述缓冲区中,若是,将所述数据写入/读出所述缓冲区,若否,则依据所访问的页面于所述缓冲区中调入对应的单位空间,并将所述数据写入/读出所述缓冲区;
所述管理接口,连接于所述存储单元阵列,用于将所述数据写入/读出所述存储单元阵列。
2.根据权利要求1所述的异构混合内存组件,其特征在于,所述内存控制器还包括缓冲区页面状态存储模块及写/读缓冲模块;其中,
所述缓冲区页面状态存储模块,用于存储所述缓冲区的所述页面对应的单位空间的使用情况;
所述写/读缓冲模块,用于在所述控制接口与所述管理接口之间缓冲所读入/写出的数据。
3.根据权利要求2所述的异构混合内存组件,其特征在于,所述缓冲区还用于在所述单位空间全部被使用时,根据所述使用情况调出使用频率最低的单位空间至所述存储单元阵列对应的页面中,在从所述存储单元阵列的页面中调入对应的单位空间。
4.根据权利要求1所述的异构混合内存组件,其特征在于,所述管理接口采用多个数据通道连接至所述存储单元阵列。
5.根据权利要求1所述的异构混合内存组件,其特征在于,所述内存控制器还用于将所述缓冲区的单位空间的修改信息存入所述存储单元阵列中。
6.一种异构混合内存***,包括处理器,其特征在于,还包括如权利要求1-5任一项所述的异构混合内存组件。
7.一种异构混合内存存储方法,提供如权利要求6所述的异构混合内存***,其特征在于,包括写入数据及读出数据的步骤;
其中,写入数据的步骤包括:
所述内存控制器接收所述处理器的写请求,根据所述写请求中的地址信息检测所述处理器访问的页面所对应的单位空间,控制数据从所述处理器通过所述缓冲区写入至所述存储单元阵列;
读出数据的步骤包括:
所述内存控制器接收所述处理器的读请求,根据所述读请求中的地址信息检测所述处理器访问的页面所对应的单位空间,控制数据从所述存储单元阵列通过所述缓冲区读出至所述处理器;
所述存储单元阵列按照第一存储类型并以多个页面的方式存储写入/读出的数据;所述缓冲区按照第二存储类型并设置对应于所述多个页面的多个单位空间存储写入/读出的数据;所述第二存储方式的读写速率大于所述第一存储方式的读写速率。
8.根据权利要求7所述的异构混合内存存储方法,其特征在于,所述写入数据的步骤包括以下子步骤:
S11、所述处理器向所述异构混合内存组件发出写入数据的请求;
S12、所述异构混合内存组件根据所述地址信息连接至所述处理器的寄存器中;
S13、检测所述处理器访问的页面对应的单位空间是否存在于所述缓冲区中,若是,将所述数据写入所述缓冲区中对应的单位空间,若否,则依据所访问的页面于所述缓冲区中分配另一单位空间,并调入到对应的所述另一单位空间,并将所述数据写入所述另一单位空间。
9.根据权利要求7所述的异构混合内存存储方法,其特征在于,所述读出数据的步骤包括以下子步骤:
S21、所述处理器向所述异构混合内存组件发出读出数据的请求;
S22、所述异构混合内存组件根据所述地址信息连接至所述处理器的寄存器中;
S23、检测所述处理器访问的页面对应的单位空间是否存在于所述缓冲区中,若是,将所述数据读出所述缓冲区,若否,则依据所访问的页面于所述缓冲区中调入对应的单位空间,并将所述数据读出所述缓冲区。
CN201410822643.4A 2014-12-25 2014-12-25 一种异构混合内存组件、***及存储方法 Active CN105786400B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410822643.4A CN105786400B (zh) 2014-12-25 2014-12-25 一种异构混合内存组件、***及存储方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410822643.4A CN105786400B (zh) 2014-12-25 2014-12-25 一种异构混合内存组件、***及存储方法

Publications (2)

Publication Number Publication Date
CN105786400A CN105786400A (zh) 2016-07-20
CN105786400B true CN105786400B (zh) 2020-01-31

Family

ID=56388496

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410822643.4A Active CN105786400B (zh) 2014-12-25 2014-12-25 一种异构混合内存组件、***及存储方法

Country Status (1)

Country Link
CN (1) CN105786400B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3534265A4 (en) 2016-11-16 2019-10-30 Huawei Technologies Co., Ltd. MEMORY ACCESS TECHNIQUE
CN109086231B (zh) * 2017-06-14 2020-07-07 龙芯中科技术有限公司 输入输出设备的访问方法及装置
CN110096452B (zh) * 2018-01-31 2024-05-28 北京忆恒创源科技股份有限公司 非易失随机访问存储器及其提供方法
CN109753246B (zh) * 2019-01-14 2021-08-27 南京航空航天大学 面向混合异构内存的标签化数据与作业调度方法及***
CN109753248B (zh) * 2019-01-22 2022-05-13 上海微小卫星工程中心 存储访问控制器和访问存储器的方法
JP2021034082A (ja) * 2019-08-26 2021-03-01 株式会社東芝 磁気ディスク装置
CN110837444B (zh) * 2019-09-30 2022-10-18 超聚变数字技术有限公司 一种存储器故障处理方法及装置
CN111258923B (zh) * 2020-01-16 2023-03-14 重庆邮电大学 一种基于异构混合内存***的页面分配方法
CN114691557A (zh) * 2020-12-31 2022-07-01 华为云计算技术有限公司 异构计算***以及相关设备
CN114038491A (zh) * 2021-10-14 2022-02-11 西安紫光国芯半导体有限公司 3d动态存储装置及读数据方法、写数据方法、内存设备
CN114153402B (zh) * 2022-02-09 2022-05-03 阿里云计算有限公司 存储器及其数据读写方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN200976137Y (zh) * 2006-11-24 2007-11-14 华中科技大学 一种异构双***总线的对象存储控制器
US8521951B2 (en) * 2008-01-16 2013-08-27 S. Aqua Semiconductor Llc Content addressable memory augmented memory
CN101727395A (zh) * 2008-10-17 2010-06-09 深圳市朗科科技股份有限公司 闪存设备的管理***、方法及闪存设备
CN101702326B (zh) * 2009-10-30 2012-08-29 曙光信息产业(北京)有限公司 内存控制器
US8694721B2 (en) * 2011-04-11 2014-04-08 Inphi Corporation Memory buffer with one or more auxiliary interfaces
JP5853973B2 (ja) * 2013-03-07 2016-02-09 ソニー株式会社 記憶制御装置、記憶装置、情報処理システムおよび記憶制御方法
CN103810113B (zh) * 2014-01-28 2016-07-06 华中科技大学 一种非易失存储器和动态随机存取存储器的融合内存***

Also Published As

Publication number Publication date
CN105786400A (zh) 2016-07-20

Similar Documents

Publication Publication Date Title
CN105786400B (zh) 一种异构混合内存组件、***及存储方法
US10860477B2 (en) Apparatus and method for low power low latency high capacity storage class memory
US7302534B2 (en) Dual media storage device
US20170336990A1 (en) Multi-tier scheme for logical storage management
US20160342193A1 (en) Power management
US8195971B2 (en) Solid state disk and method of managing power supply thereof and terminal including the same
US9229816B2 (en) Hybrid system architecture for random access memory
US8850128B2 (en) Implementing data storage and dual port, dual-element storage device
KR102585883B1 (ko) 메모리 시스템의 동작 방법 및 메모리 시스템
US9323657B1 (en) Memory system and method for improving read latency of a high-priority partition
US20230244394A1 (en) Gradually Reclaim Storage Space Occupied by a Proof of Space Plot in a Solid State Drive
US11960756B2 (en) Management of storage space in solid state drives to support proof of space activities
US11775188B2 (en) Communications to reclaim storage space occupied by proof of space plots in solid state drives
US11204833B1 (en) NVM endurance group controller using shared resource architecture
WO2017107162A1 (zh) 一种异构混合内存组件、***及存储方法
US11372543B2 (en) Zone-append command scheduling based on zone state
WO2023045483A1 (zh) 一种存储设备、数据存储方法及存储***
KR102544162B1 (ko) 데이터 저장 장치 및 그것의 동작 방법
CN102362263A (zh) Ssd控制器与ssd控制器的操作方法
US20230126685A1 (en) Storage device and electronic system
US11748027B2 (en) Storage system and method for avoiding clustering of reads during a program suspend
US9996456B2 (en) Solid-state disk, and user system comprising same
US20210382649A1 (en) Storage System and Method for Using Proactive Device Timeout information
US11604592B2 (en) Data management for efficient low power mode handling in a storage device
US11194482B1 (en) Storage system and method for segregating outliers in a virtualization system

Legal Events

Date Code Title Description
C06 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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230706

Address after: 518000 1701, Yanxiang Science and Technology Building, No. 31, High-tech Middle 4th Road, Maling Community, Yuehai Street, Nanshan District, Shenzhen, Guangdong Province

Patentee after: Shenzhen Yanxiang Smart Technology Co.,Ltd.

Address before: 518057 Guangdong city of Shenzhen province Nanshan District high in the four EVOC Technology Building No. 31

Patentee before: EVOC INTELLIGENT TECHNOLOGY Co.,Ltd.