CN107544745A - 一种带有独立数据搬移通道的复合存储阵列模块及其数据调度方法 - Google Patents
一种带有独立数据搬移通道的复合存储阵列模块及其数据调度方法 Download PDFInfo
- Publication number
- CN107544745A CN107544745A CN201610490310.5A CN201610490310A CN107544745A CN 107544745 A CN107544745 A CN 107544745A CN 201610490310 A CN201610490310 A CN 201610490310A CN 107544745 A CN107544745 A CN 107544745A
- Authority
- CN
- China
- Prior art keywords
- data
- array
- module
- sram
- moving
- 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
- Static Random-Access Memory (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明涉及一种带有独立数据搬移通道的复合存储阵列模块及其数据调度方法,主要包括逻辑控制模块、地址解析模块、读写驱动感应电路、SRAM阵列、NVM阵列、数据搬移地址解析模块、数据搬移地址驱动模块;该模块具备更高的芯片集成度,降低了成本,也降低了数据搬移延时和功耗。另外,提供了一种带有独立数据搬移通道的复合存储阵列模块的数据调度方法,可随时根据其所存储的数据热度不同,选择由内部数据搬移通道将数据搬移至NVM阵列存储,并关闭完成数据搬移的SRAM单元阵列电源以降低复合模块能耗,数据搬移过程始终在后台进行,与复合模块的正常读写过程同步,通过这种数据调度的方式可以实时降低复合存储阵列模块能耗。
Description
技术领域
本发明涉及半导体存储技术领域,尤其涉及一种带有独立数据搬移通道的复合存储阵列模块及其数据调度方法。
背景技术
在物联网领域和穿戴式设备等许多应用场景中,对集成电路的功耗要求非常严格,以满足长距离微波供电或者长期难以更换电池等应用需求。因此,在集成电路设计时,除了采用更小的半导体工艺节点以降低逻辑电路的功耗外,还需要综合考虑存储器(包括运行内存和程序存储器)的读写功耗,在存储器的动态运行功耗和静态待机功耗之间做出合理优化,以降低整体能耗。这个优化的过程同时需要考虑到应用的动态/静态运行时间比,以及不同功耗模式之间转换所需的时间,以不影响系统整体性能。
目前主流的半导体存储器解决方案,普遍采用静态随机存储器(SRAM)作为系统运行内存,采用闪存存储器(FLASH memory)作为程序存储器。在系统处于运行状态时,程序和数据都存在SRAM中,逻辑处理单元与SRAM直接交互,而由于SRAM属于易失性存储器,掉电则数据丢失,因此系统无论处于运行状态,还是待机状态,SRAM存储器都处于上电工作状态,以保证数据不丢失,只有当系统确认关闭之前,才会将SRAM中的所有必要数据写回FLASH中稳定存储。因此,SRAM的动态功耗和静态功耗成为了系统运行状态时,存储器的主要能耗来源。
由于SRAM的静态功耗较大,德州仪器曾提出的方案(S.Khanna et al,Solid-State Circuits Conference(ISSCC),2013)以降低系统静态功耗:该方法利用铁电(FRAM)存储器与SRAM存储器组合,当系统处于空闲状态时,系统的逻辑处理单元负责将SRAM中的数据整体搬移到FRAM存储器中,利用FRAM的非易失性存储数据,搬移完成后关闭SRAM存储器和FRAM存储器以将系统静态功耗降到最低。但该方法的缺点是:每次搬移数据都需要将SRAM中的数据整体搬移进FRAM中,不仅搬移过程能耗大,而且对于热数据和冷数据没有区别对待,往往会由于热数据始终在被使用而导致系统无法进入空闲状态,从而未被使用的冷数据也长期无法搬入FRAM中以降低能耗,或者热数据频繁在FRAM和SRAM中来回搬移,无用能耗过多;同时,所有的搬移过程需要占用系统本身的逻辑处理单元负责,对系统运行产生中断性影响,而且FRAM存储器和SRAM存储器相互独立,均有各自的接口和读写驱动电路,从而导致该复合存储芯片面积过大,数据来回搬移的延时和功耗大。
发明内容
本发明为克服上述的不足之处,目的在于提供一种带有独立数据搬移通道的复合存储阵列模块,主要包括逻辑控制模块、地址解析模块、读写驱动感应电路、SRAM阵列、NVM阵列、数据搬移地址解析模块、数据搬移地址驱动模块;该模块具备更高的芯片集成度,降低了成本,也降低了数据搬移延时和功耗。
本发明另一目的在于提供一种带有独立数据搬移通道的复合存储阵列模块的数据调度方法,可随时根据其所存储的数据热度不同,选择由内部数据搬移通道将数据搬移至NVM阵列存储,并关闭完成数据搬移的SRAM单元阵列电源以降低复合模块能耗,数据搬移过程始终在后台进行,与复合模块的正常读写过程同步,通过这种数据调度的方式可以实时降低复合模块能耗。
本发明是通过以下技术方案达到上述目的:一种带有独立数据搬移通道的复合存储阵列模块,包括:逻辑控制模块、物理地址解析模块、读写驱动感应放大模块、SRAM阵列、NVM阵列、数据搬移地址解析模块、数据搬移地址驱动模块;逻辑控制模块分别与物理地址解析模块、读写驱动感应放大模块、数据搬移地址解析模块、数据搬移地址驱动模块连接;物理地址解析模块分别与SRAM阵列、NVM阵列相连;读写驱动感应放大模块分别与SRAM阵列、NVM阵列相连;数据搬移地址解析模块分别与SRAM阵列、NVM阵列连接;数据搬移地址驱动模块分别与SRAM阵列、NVM阵列相连。
作为优选,所述的物理地址解析模块、数据搬移地址解析模块分别在逻辑控制模块的控制下,解析物理地址并根据该地址打开SRAM阵列和NVM阵列中的物理存储单元,使SRAM阵列和NVM阵列进入可被读写的状态。
作为优选,所述的读写驱动感应放大模块、数据搬移地址驱动模块分别在逻辑控制模块的控制下,驱动SRAM阵列与NVM阵列的读和写;具备写驱动、读感应放大和数据纠错功能。
作为优选,所述SRAM阵列、NVM阵列用于存储运行数据和逻辑地址映射及数据热度表,二者共用物理地址解析模块与读写驱动感应放大模块。
作为优选,所述SRAM阵列与NVM阵列的容量可相同或者NVM阵列的容量大于SRAM阵列的容量。
作为优选,所述逻辑地址映射及数据热度表表示的是数据的逻辑地址与物理地址的映射关系以及与每一个逻辑地址对应的一个阵列标志位,并对应一个数据热度位;标志位只有0和1两种有效状态,标志位为0代表该逻辑地址对应的最新数据存储于SRAM阵列中;标志位为1代表该逻辑地址对应的最新数据存储于NVM阵列中;数据热度位表示数据的热度,变化范围可指定。
作为优选,所述的SRAM阵列由若干个相同的SRAM单元阵列组成;SRAM单元阵列的容量大小可变,所有SRAM单元阵列相互独立;所有SRAM单元阵列与物理地址解析模块与读写驱动感应放大模块连接,并统一编址。
作为优选,所述的NVM阵列为STT-MRAM、FRAM、PCRAM、RRAM中的任意一种。
一种带有独立数据搬移通道的复合存储阵列模块的数据调度方法,逻辑控制模块控制定期扫描数据热度,并根据数据热度进行实时数据搬移,实时数据搬移对应的工作流程为搬移流程,搬移流程由逻辑控制模块控制驱动数据搬移地址解析模块和数据搬移地址驱动模块完成,不占用物理地址解析模块和读写驱动感应放大模块的任何资源,其步骤如下:
1)逻辑控制模块开启计时功能,重置计时器并开始计时;
2)逻辑控制模块判断计时是否达到预设的时间节点T,若达到则前往步骤3);否则继续执行步骤2);
3)逻辑控制模块扫描逻辑地址映射及数据热度表,按照SRAM阵列的地址顺序逐一扫描所有的SRAM单元阵列,逐个查找并确定SRAM单元阵列中的所有数据热度位是否为1,若所有数据的数据热度均为1则前往步骤4);否则执行步骤7);
4)逻辑控制模块打开数据搬移地址解析模块,数据搬移地址解析模块解析扫描发现的数据热度为1的SRAM单元阵列的物理地址,数据搬移地址解析模块根据解析结果打开相应的SRAM单元阵列;
5)逻辑控制模块打开数据搬移地址驱动模块,读取步骤4)中打开的的SRAM单元阵列中的全部数据,完成纠错后写入NVM阵列中的对应位置,并向逻辑控制模块返回搬移成功信号;
6)逻辑控制模块将逻辑地址映射及数据热度表中已完成搬移的SRAM单元阵列对应的阵列标志位修改为1,关闭该SRAM单元阵列后跳往步骤8);
7)逻辑控制模块将SRAM单元阵列中的所有数据热度位的数值减1,然后继续扫描逻辑地址映射及数据热度表;
8)判断逻辑地址映射及数据热度表是否扫描完毕,若扫描完毕则准备下一次搬移过程;否则跳转执行步骤3)。
作为优选,所述数据搬移过程由复合存储阵列模块内部的独立于正常读写通道的数据搬移通道完成;当NVM阵列中的数据需要被重新取用时可快速打开NVM阵列,直接从NVM阵列读取数据后通过内部数据搬移通道,将该数据搬移到SRAM阵列中;数据在SRAM阵列和NVM阵列之间的搬移流程由复合存储阵列模块内部的独立于正常读写通道的数据搬移通道完成。
本发明的有益效果在于:1)本发明可有效解决系统静态待机能耗较大的问题,并且不会对系统运行速度产生中断性影响,保证了系统运行性能;2)相比传统的解决方案具备更高的芯片集成度,降低了成本,数据搬移延时和功耗。
附图说明
图1是本发明的基本结构示意图;
图2是本发明的逻辑地址映射及数据热度表示意图;
图3是本发明复合阵列模块工作状态及状态切换示意图;
图4是本发明的数据搬移流程框图;
图5是本发明工作状态的切换控制流程示意图;
图6是本发明工作时的读流程示意图;
图7是本发明工作时的写流程示意图;
图8是本发明工作时的休眠流程示意图。
具体实施方式
下面结合具体实施例对本发明进行进一步描述,但本发明的保护范围并不仅限于此:
实施例:如图1所示,一种带有独立数据搬移通道的复合存储阵列模块包含逻辑控制模块1(以下简称“控制模块1”),物理地址解析模块2,读写驱动感应放大模块3(以下简称“读写模块3”),SRAM阵列4,非易失性存储阵列(以下简称“NVM阵列”)5,数据搬移地址解析模块6(以下简称“搬移地址解析模块6”)和数据搬移读写驱动模块7(以下简称“搬移读写模块7”)。
控制模块1的功能是控制复合存储阵列模块内部所有模块的功能与时序,具体包括解析所有从主机端(HOST)送来的控制命令(Command Code)和逻辑地址(LogicAddress),缓存读写数据(Data Buffering),控制物理地址解析模块2以及读写模块3正常工作,将主机端送来的数据正确写入SRAM阵列4和NVM阵列5,或者将数据从这两个阵列中正确读出,同时,还负责驱动搬移地址解析模块6以及搬移读写模块7工作,负责将数据按要求在SRAM阵列和NVM阵列中搬移。
物理地址解析模块2负责解析控制单元送来的物理地址,并根据该物理地址打开SRAM阵列4和NVM阵列5中相应的物理存储单元,使其进入可被读写的状态。
读写模块3负责驱动SRAM阵列4与NVM阵列5的读和写:将控制模块1送来的数据正确写入存储阵列,或者将数据从存储阵列中读出并送给控制模块1,具体包括写驱动(WriteDriving),读感应放大(Sense Amplifier)和数据纠错(ECC)等。
SRAM阵列4由多个同一的SRAM单元阵列组成,每个单元阵列的容量大小可变,变化范围是1个字节(1Byte)到1兆字节(1MB),每个单元阵列都可单独打开工作或关闭休眠,所有单元阵列均与物理地址解析模块2以及读写模块3相连,并统一编址,因此物理地址解析模块2可以根据解析出来的地址打开相应的SRAM单元阵列,并由读写模块3进行读写操作。
NVM阵列5可以是STT-MRAM(Spin-Transfer-Torque Magnetic Random AccessMemory),FRAM(Ferroelectric Random Access Memory),也可以是PCRAM(Phase ChangeRandom Access Memory)或者RRAM(Resistance Random Access Memory)。NVM阵列5的容量与SRAM阵列4一样,两个阵列的编址方式也完全相同。
两个阵列中除了存储数据之外,还需要负责存储一张逻辑地址映射及数据热度表(Logic Address Mapping Table,LAMT),LAMT的结构如图2所示,这张表中存储的是数据的逻辑地址与物理地址的映射关系,每一个逻辑地址对应的一个阵列标志位,并对应一个数据热度位,阵列标志位只有“0”和“1”两种有效状态,当标志位为“0”时,代表该逻辑地址对应的最新数据存在于SRAM阵列中,当标志位为“1”时,代表该逻辑地址对应的最新数据存在于NVM阵列中,数据热度位负责表示该数据的热度,变化范围可以由主机端指定,为了方便叙述,在本发明以下的描述中,热度变化范围为1~10,其中10代表热度最高,即该数据刚刚被主机端读取,1代表热度最低,即该数据长时间未被读取,但本发明所保护的数据热度变化范围不限定为1~10,而由主机端指定;
当主机端将所需读写的数据的逻辑地址送入控制模块1之后,控制模块1会解析该逻辑地址,并通过查找LAMT得到该数据的物理地址,然后将物理地址送给物理地址解析模块2,由物理物理地址解析模块2解析并根据解析得到的地址打开SRAM阵列4或NVM阵列5中相应的物理存储单元;两个存储阵列共用读写驱动感应放大模块3,进行数据读写和纠错。由于本发明中的SRAM阵列和NVM阵列共用地址解析电路以及读写模块,因此比德州仪器曾提出的方案(S.Khanna et al,Solid-State Circuits Conference(ISSCC),2013)具有更小的芯片面积,增加了芯片集成度,降低了成本,数据搬移延时和功耗。而且,本发明中的SRAM单元阵列可随时根据其所存储的数据热度关闭,而无需等待整个复合模块进入休眠状态,从而比德州仪器提出的方案更有效的降低模块能耗。
搬移地址解析模块6的功能与物理地址解析模块2类似,负责在控制单元1的控制下解析物理地址,并根据该物理地址打开SRAM阵列4和NVM阵列5中相应的物理存储单元,使其进入可被读写的状态,搬移地址解析模块6与物理地址解析模块2可并行工作,因此可以保证符合模块的数据搬移过程完全在后台进行,不会对其正常的读写状态造成中断。
搬移读写模块7的功能与读写模块3功能类似,负责在控制单元1的控制下,驱动SRAM阵列4与NVM阵列5的读和写:将数据在SRAM阵列与NVM阵列之间搬移,具体包括写驱动(Write Driving),读感应放大(Sense Amplifier)和数据纠错(ECC)等,搬移读写模块7与读写模块3可并行工作,因此可以保证符合模块的数据搬移过程完全在后台进行,不会对其正常的读写状态造成中断。
复合存储阵列模块总共会处于3种不同的工作状态,分别是“读状态”,“写状态”和“休眠状态”,3种工作状态之间会由于收到的主机端控制指令不同而相互切换,复合存储阵列模块中的控制模块1主要功能之一就是随时接收主机端送过来的控制指令并解析成相应的工作状态,然后控制复合存储阵列模块进入相应的工作流程,“读状态”对应“读流程”,“写状态”对应“写流程”,“休眠状态”对应“休眠流程”,“读流程”和“写流程“在执行过程中不可被打断,“休眠流程”在执行过程中可以随时被读控制指令或者写控制指令终止,进而根据指令进入相应的读写流程。状态切换示意图如图3所示。
复合存储阵列模块除了进行正常的读写操作和休眠之外,还在后台有一个由控制模块1控制的,定期扫描数据热度,并根据数据热度进行实时数据搬移,以进一步降低系统能耗的工作,该工作对应的工作流程为“搬移流程”,“搬移流程”完全由控制单元1控制,驱动搬移地址解析模块6和搬移读写模块7完成,不占用物理地址解析模块2和读写模块3的任何资源,因此“搬移流程”可以与“读流程”,“写流程”以及“休眠流程”并行进行,相互之间不影响,充分发挥了本发明不中断主机端正常读写的优势。“搬移流程”如图4所示:
1)控制模块1开启计时功能,重置计时器,开始计时;
2)控制模块1判断计时是否达到主机端预设的时间节点T(时间节点T的计时长度完全由主机端设定,并可以改变),如果是,则前往步骤3),否则,继续停留在步骤2);
3)控制模块1扫描LAMT表格:按照SRAM阵列地址顺序逐一扫描所有的SRAM单元阵列,逐个查找并确定SRAM单元阵列中的所有数据热度位是否为“1”,如果发现某个SRAM单元阵列中所有数据的数据热度均为“1”,则前往步骤4),否则,前往步骤7);
4)控制模块1打开搬移地址解析模块6,并将扫描发现的数据热度为“1”的SRAM单元阵列物理地址发给该模块解析,搬移地址解析模块6根据解析结果打开相应的SRAM单元阵列,准备读取;
5)控制模块1打开搬移读写模块7,读取步骤4)中准备好的SRAM单元阵列中全部数据,完成纠错后写入NVM阵列5中的对应位置,然后向控制模块1返回“搬移成功”信号;
6)控制模块1将LAMT表格中已完成搬移的SRAM单元阵列对应的阵列标志位修改为“1”,然后关闭该SRAM单元阵列的电源,跳往步骤8);
7)控制模块1将SRAM单元阵列中的所有数据热度位的数值减1,然后继续扫描LAMT表格;
8)判断LAMT表格是否扫描完毕,如果扫描完毕,则重置计时器,重新开始计时,并跳回步骤2),否则,跳回步骤3)。
所有的数据搬移过程全部由复合模块内部的独立于正常读写通道的数据搬移通道完成,因此可以保证在数据搬移过程中,复合模块仍然能接受系统正常的读写指令,不影响系统运行速度;当NVM阵列中的数据需要被主机端重新取用时,可快速打开NVM阵列,直接从NVM阵列读取数据给主机端,并通过内部数据搬移通道,将该数据搬移到SRAM阵列中,以便主机端继续读写该数据,从而既及时响应了主机端的读写请求,又弥补了NVM阵列读写速度比SRAM阵列读写速度慢,且NVM阵列读写能耗较高的不足,在主机端对数据的连续读写中发挥SRAM的速度和能耗优势。数据在SRAM阵列和NVM阵列之间的搬移行为全部由复合模块内部独立的数据搬移通道完成,从而不会影响主机端的正常读写请求,不会造成因数据搬移而导致的系统运行性能降低。
复合存储阵列模块的读写与休眠工作完全受主机端指令控制,总工作流程图如图5所示,复合存储阵列模块根据所接受到的主机端控制指令进入相应的工作流程:“读流程”,“写流程”和“休眠流程”,执行流程完毕后,根据获取到的新的主机端控制指令再次进入相应的工作流程。“读流程”,“写流程”和“休眠流程”的具体细节分别如图6,图7,图8所示。
“读流程”如图6所示:
1)控制模块1持续监听主机端是否有控制指令发送过来,如果没有,则继续监听,如果有,则接收并解析该控制指令是否为“读指令”,如果是,则前往步骤(2),且一旦进入步骤(2),则必须执行完整个“读流程”之后方可执行新的控制指令;否则,则解析该指令是否为“写指令”,如果是,则跳往“写流程”,否则,则解析该指令是否为“休眠指令”,如果是,则跳往“休眠流程”,如果不是,则向主机端报错;
2)控制模块1打开自身数据缓存区,负责接收主机端发送过来的逻辑地址,并查找LAMT表格,得到与该逻辑地址对应的阵列标志位以及物理地址;
3)控制模块1将物理地址和阵列标志位均送给物理地址解析模块2解析,如果阵列标志位为“0”,则前往步骤(4),否则,跳往步骤(5);
4)物理地址解析模块2根据地址解析结果,打开SRAM阵列4中相应的物理存储单元,并由控制模块1控制读写模块3读出该物理单元中的数据,完成纠错,然后由控制模块1修改LAMT表格中该物理地址对应的数据热度位为“10”,跳往步骤(7);
5)物理地址解析模块2根据地址解析结果,打开NVM阵列5中相应的物理存储单元,然后由控制模块1控制读写模块3读出该物理单元中的数据,完成纠错;
6)由物理地址解析模块2根据地址解析结果,打开SRAM阵列4中相应的物理存储单元,读写模块3将完成纠错的数据写入SRAM中的存储单元,并将LAMT中与该地址对应的阵列标志位改为“0”,将该地址对应的数据热度位改为“10”;
7)读写模块3将完成纠错后的数据送入控制模块1中的数据缓存中,随时供主机端读取,控制模块1给主机端发送“读流程完成”信号;
8)等主机端将数据从缓存区取走之后,“读流程”结束,并跳回步骤(1)。
“写流程”如图7所示:
1)控制模块1持续监听主机端是否有控制指令发送过来,如果没有,则继续监听,如果有,则接收并解析该控制指令是否为“写指令”,如果是,则前往步骤(2),且一旦进入步骤(2),则必须执行完整个“写流程”之后方可执行新的控制指令;否则,则解析该指令是否为“读指令”,如果是,则跳往“读流程”,否则,则解析该指令是否为“休眠指令”,如果是,则跳往“休眠流程”,如果不是,则向主机端报错;
2)控制模块1打开自身数据缓存区,负责接收主机端发送过来的逻辑地址和需要写入的数据,并根据逻辑地址查找LAMT表格,得到与该逻辑地址对应的物理地址以及阵列标志位;
3)控制模块1将物理地址以及阵列标志位送给物理地址解析模块12解析,如果阵列标志位为“0”,则物理地址解析模块2根据地址解析结果,打开SRAM阵列4中相应的物理存储单元,准备接受数据写入,如果阵列标志位为“1”,则物理地址解析模块2根据地址解析结果,打开NVM阵列5中相应的物理存储单元,准备接受数据写入;
4)控制模块1将自身缓存区内待写入的数据送给读写模块3,由读写模块3对该数据完成纠错编码之后,写入SRAM阵列4或NVM阵列5中相应的物理存储单元;
5)控制模块1给主机端发送“写流程完成”信号;
6)“写流程”结束,并跳回步骤(1)。
为了降低静态待机功耗,主机端可发送“休眠指令”给复合存储阵列模块,将复合存储阵列模块从运行状态切换到休眠状态。“休眠流程”的如图8所示:
1)控制模块1持续监听主机端是否有控制指令发送过来,如果没有,则继续监听,如果有,则接收并解析该控制指令是否为“休眠指令”,如果是,则前往步骤(2),否则,则解析该指令是否为“写指令”,如果是,则随时中断“休眠流程”并跳往“写流程”,否则,则解析该指令是否为“读指令”,如果是,则随时中断“休眠流程”并跳往“读流程”,如果不是,则向主机端报错;
2)控制模块1停止后台运行的“搬移流程”,然后扫描LAMT表格,查找所有阵列标志位为“0”的数据对应的SRAM地址,并打开物理地址解析模块2和读写模块3,由物理地址解析模块2将查找到的所有SRAM存储单元依次打开,由读写模块3驱动,将这些SRAM存储单元中存储的数据依次读出,完成纠错,并写入NVM阵列5中,保持数据在SRAM阵列4中的物理地址与NVM阵列5中物理地址完全一致;
3)读写模块3将SRAM阵列4中所有的数据全部写入NVM阵列5之后,向控制模块1返回“数据搬移完成”信号;
4)控制模块1将LAMT表格中所有的阵列标志位全部修改为“1”,并关闭物理地址解析模块2,读写模块3,SRAM阵列4,以及NVM阵列5的所有电源,将复合存储阵列模块的能耗降至最低,然后向主机端返回“休眠完成”信号;
5)“休眠流程”结束。
以上的所述乃是本发明的具体实施例及所运用的技术原理,若依本发明的构想所作的改变,其所产生的功能作用仍未超出说明书及附图所涵盖的精神时,仍应属本发明的保护范围。
Claims (10)
1.一种带有独立数据搬移通道的复合存储阵列模块,其特征在于包括:逻辑控制模块(1)、物理地址解析模块(2)、读写驱动感应放大模块(3)、SRAM阵列(4)、NVM阵列(5)、数据搬移地址解析模块(6)、数据搬移地址驱动模块(7);逻辑控制模块(1)分别与物理地址解析模块(2)、读写驱动感应放大模块(3)、数据搬移地址解析模块(6)、数据搬移地址驱动模块(7)连接;物理地址解析模块(2)分别与SRAM阵列(4)、NVM阵列(5)相连;读写驱动感应放大模块(3)分别与SRAM阵列(4)、NVM阵列(5)相连;数据搬移地址解析模块(6)分别与SRAM阵列(4)、NVM阵列(5)连接;数据搬移地址驱动模块(7)分别与SRAM阵列(4)、NVM阵列(5)相连。
2.根据权利要求1所述的一种带有独立数据搬移通道的复合存储阵列模块,其特征在于:所述的物理地址解析模块(2)、数据搬移地址解析模块(6)分别在逻辑控制模块(1)的控制下,解析物理地址并根据该地址打开SRAM阵列(4)和NVM阵列(5)中的物理存储单元,使SRAM阵列(4)和NVM阵列(5)进入可被读写的状态。
3.根据权利要求1所述的一种带有独立数据搬移通道的复合存储阵列模块,其特征在于:所述的读写驱动感应放大模块(3)、数据搬移地址驱动模块(7)分别在逻辑控制模块(1)的控制下,驱动SRAM阵列(4)与NVM阵列(5)的读和写;具备写驱动、读感应放大和数据纠错功能。
4.根据权利要求1所述的一种带有独立数据搬移通道的复合存储阵列模块,其特征在于:所述SRAM阵列(4)、NVM阵列(5)用于存储运行数据和逻辑地址映射及数据热度表,二者共用物理地址解析模块(2)与读写驱动感应放大模块(3)。
5.根据权利要求4所述的一种带有独立数据搬移通道的复合存储阵列模块,其特征在于:所述SRAM阵列(4)与NVM阵列(5)的容量可相同或者NVM阵列(5)的容量大于SRAM阵列(4)的容量。
6.根据权利要求4所述的一种带有独立数据搬移通道的复合存储阵列模块,其特征在于:所述逻辑地址映射及数据热度表表示的是数据的逻辑地址与物理地址的映射关系以及与每一个逻辑地址对应的一个阵列标志位,并对应一个数据热度位;标志位只有0和1两种有效状态,标志位为0代表该逻辑地址对应的最新数据存储于SRAM阵列中;标志位为1代表该逻辑地址对应的最新数据存储于NVM阵列中;数据热度位表示数据的热度,变化范围可指定。
7.根据权利要求1所述的一种带有独立数据搬移通道的复合存储阵列模块,其特征在于:所述的SRAM阵列(4)由若干个相同的SRAM单元阵列组成;SRAM单元阵列的容量大小可变,所有SRAM单元阵列相互独立;所有SRAM单元阵列与物理地址解析模块(2)与读写驱动感应放大模块(3)连接,并统一编址。
8.根据权利要求1所述的一种带有独立数据搬移通道的复合存储阵列模块,其特征在于:所述的NVM阵列(5)为STT-MRAM、FRAM、PCRAM、RRAM中的任意一种。
9.一种带有独立数据搬移通道的复合存储阵列模块的数据调度方法,其特征在于,逻辑控制模块(1)控制定期扫描数据热度,并根据数据热度进行实时数据搬移,实时数据搬移对应的工作流程为搬移流程,搬移流程由逻辑控制模块(1)控制驱动数据搬移地址解析模块(6)和数据搬移地址驱动模块(7)完成,不占用物理地址解析模块(2)和读写驱动感应放大模块(3)的任何资源,其步骤如下:
1)逻辑控制模块(1)开启计时功能,重置计时器并开始计时;
2)逻辑控制模块(1)判断计时是否达到预设的时间节点T,若达到则前往步骤3);否则继续执行步骤2);
3)逻辑控制模块(1)扫描逻辑地址映射及数据热度表,按照SRAM阵列(4)的地址顺序逐一扫描所有的SRAM单元阵列,逐个查找并确定SRAM单元阵列中的所有数据热度位是否为1,若所有数据的数据热度均为1则前往步骤4);否则执行步骤7);
4)逻辑控制模块(1)打开数据搬移地址解析模块(6),数据搬移地址解析模块(6)解析扫描发现的数据热度为1的SRAM单元阵列的物理地址,数据搬移地址解析模块(6)根据解析结果打开相应的SRAM单元阵列;
5)逻辑控制模块(1)打开数据搬移地址驱动模块(7),读取步骤4)中打开的的SRAM单元阵列中的全部数据,完成纠错后写入NVM阵列(5)中的对应位置,并向逻辑控制模块(1)返回搬移成功信号;
6)逻辑控制模块(1)将逻辑地址映射及数据热度表中已完成搬移的SRAM单元阵列对应的阵列标志位修改为1,关闭该SRAM单元阵列后跳往步骤8);
7)逻辑控制模块(1)将SRAM单元阵列中的所有数据热度位的数值减1,然后继续扫描逻辑地址映射及数据热度表;
8)判断逻辑地址映射及数据热度表是否扫描完毕,若扫描完毕则准备下一次搬移过程;否则跳转执行步骤3)。
10.根据权利要求9所述的一种带有独立数据搬移通道的复合存储阵列模块的数据调度方法,其特征在于,所述数据搬移过程由复合存储阵列模块内部的独立于正常读写通道的数据搬移通道完成;当NVM阵列中的数据需要被重新取用时可快速打开NVM阵列,直接从NVM阵列读取数据后通过内部数据搬移通道,将该数据搬移到SRAM阵列中;数据在SRAM阵列和NVM阵列之间的搬移流程由复合存储阵列模块内部的独立于正常读写通道的数据搬移通道完成。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610490310.5A CN107544745B (zh) | 2016-06-24 | 2016-06-24 | 一种带有独立数据搬移通道的复合存储阵列及其数据调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610490310.5A CN107544745B (zh) | 2016-06-24 | 2016-06-24 | 一种带有独立数据搬移通道的复合存储阵列及其数据调度方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107544745A true CN107544745A (zh) | 2018-01-05 |
CN107544745B CN107544745B (zh) | 2020-06-30 |
Family
ID=60963066
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610490310.5A Active CN107544745B (zh) | 2016-06-24 | 2016-06-24 | 一种带有独立数据搬移通道的复合存储阵列及其数据调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107544745B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118466732A (zh) * | 2024-07-10 | 2024-08-09 | 电子科技大学 | 一种低功耗非易失存储控制方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101458613A (zh) * | 2008-12-31 | 2009-06-17 | 成都市华为赛门铁克科技有限公司 | 一种混合分级阵列的实现方法、混合分级阵列和存储系统 |
US20100332725A1 (en) * | 2009-06-24 | 2010-12-30 | Post Samual D | Pinning content in nonvolatile memory |
CN103399713A (zh) * | 2013-08-02 | 2013-11-20 | 浙江大学 | 平衡多级存储性能与固态硬盘寿命的数据缓冲方法 |
CN105550127A (zh) * | 2015-12-08 | 2016-05-04 | 中电海康集团有限公司 | 一种基于stt-mram的读写缓存分离的ssd控制器 |
-
2016
- 2016-06-24 CN CN201610490310.5A patent/CN107544745B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101458613A (zh) * | 2008-12-31 | 2009-06-17 | 成都市华为赛门铁克科技有限公司 | 一种混合分级阵列的实现方法、混合分级阵列和存储系统 |
US20100332725A1 (en) * | 2009-06-24 | 2010-12-30 | Post Samual D | Pinning content in nonvolatile memory |
CN103399713A (zh) * | 2013-08-02 | 2013-11-20 | 浙江大学 | 平衡多级存储性能与固态硬盘寿命的数据缓冲方法 |
CN105550127A (zh) * | 2015-12-08 | 2016-05-04 | 中电海康集团有限公司 | 一种基于stt-mram的读写缓存分离的ssd控制器 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118466732A (zh) * | 2024-07-10 | 2024-08-09 | 电子科技大学 | 一种低功耗非易失存储控制方法 |
CN118466732B (zh) * | 2024-07-10 | 2024-09-10 | 电子科技大学 | 一种低功耗非易失存储控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107544745B (zh) | 2020-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20160085585A1 (en) | Memory System, Method for Processing Memory Access Request and Computer System | |
CN109791519A (zh) | 具有集成计算引擎的非易失性存储系统和本地快速存储器的优化用途 | |
US8954672B2 (en) | System and method for cache organization in row-based memories | |
CN103092534A (zh) | 一种内存结构的调度方法和装置 | |
US20100153646A1 (en) | Memory hierarchy with non-volatile filter and victim caches | |
CN106066890B (zh) | 一种分布式高性能数据库一体机系统 | |
CN102214482B (zh) | 高速大容量固态电子记录器 | |
TWI506422B (zh) | 用來管理具有多通道、多途徑的記憶裝置之方法以及相關之記憶裝置及其控制器 | |
CN101127238A (zh) | 半导体存储装置 | |
CN206557758U (zh) | 一种基于fpga可扩展的nand flash存储芯片阵列控制器 | |
CN100377117C (zh) | 用于虚实地址变换及读写高速缓冲存储器的方法及装置 | |
US20110302367A1 (en) | Write Buffer for Improved DRAM Write Access Patterns | |
CN106201902A (zh) | 一种sram位元与非易失性存储位元组成的复合阵列模块及其读写控制方法 | |
US20140237190A1 (en) | Memory system and management method therof | |
JP5791529B2 (ja) | メモリ制御装置及び制御方法並びに情報処理装置 | |
US20200089426A1 (en) | Management device, information processing apparatus, and memory control method | |
CN107544745A (zh) | 一种带有独立数据搬移通道的复合存储阵列模块及其数据调度方法 | |
CN101887753B (zh) | 异构存储系统及其使用的高速缓存优化方法 | |
JP2002007373A (ja) | 半導体装置 | |
CN105677576B (zh) | 一种面向相变存储器的Bank控制器读写控制装置及方法 | |
CN101097562A (zh) | 一种突破非易失性存储器件速度瓶颈的装置 | |
Chamazcoti et al. | Exploring Pareto-Optimal Hybrid Main Memory Configurations Using Different Emerging Memories | |
CN100407693C (zh) | 基于fpga的路由查找和刷新的调度方法及其装置 | |
CN110543430A (zh) | 一种使用mram的存储装置 | |
CN100508497C (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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200611 Address after: Yuhang District, Hangzhou City, Zhejiang Province, 311121 West Sea No. 998 Park Building No. 4 room 701 Applicant after: CETHIK GROUP Co.,Ltd. Applicant after: HIKSTOR TECHNOLOGY Co.,Ltd. Address before: Yuhang District, Hangzhou City, Zhejiang Province, 311121 West Sea No. 998 Park Building No. 4 room 701 Applicant before: CETHIK GROUP Co.,Ltd. |
|
TA01 | Transfer of patent application right |