CN107844264A - 存储器系统以及处理器系统 - Google Patents

存储器系统以及处理器系统 Download PDF

Info

Publication number
CN107844264A
CN107844264A CN201710136121.2A CN201710136121A CN107844264A CN 107844264 A CN107844264 A CN 107844264A CN 201710136121 A CN201710136121 A CN 201710136121A CN 107844264 A CN107844264 A CN 107844264A
Authority
CN
China
Prior art keywords
memory
access
data
accumulator system
accessed
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
Application number
CN201710136121.2A
Other languages
English (en)
Other versions
CN107844264B (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.)
Japanese Businessman Panjaya Co ltd
Original Assignee
Toshiba Memory Corp
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 Toshiba Memory Corp filed Critical Toshiba Memory Corp
Publication of CN107844264A publication Critical patent/CN107844264A/zh
Application granted granted Critical
Publication of CN107844264B publication Critical patent/CN107844264B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0868Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • G06F12/0897Caches characterised by their organisation or structure with two or more cache hierarchy levels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0811Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/21Employing a record carrier using a specific recording technology
    • G06F2212/214Solid state disk
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/31Providing disk cache in a specific location of a storage system
    • G06F2212/313In storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7203Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7207Details relating to flash memory management management of metadata or control data

Abstract

本发明的实施方式提供一种使用非易失性存储器并且防止存取性能的降低,还能够提高数据写入时的可靠性的存储器系统以及处理器系统。一实施方式的存储器系统具备:第1存储器,按第1数据大小被存取;第2存储器;按小于所述第1数据大小的第2数据大小被存取,能够比所述第1存储器更高速地被存取;以及第3存储器,保存地址变换信息,所述地址变换信息用于将对所述第2存储器进行存取的地址变换为对所述第1存储器进行存取的地址,所述第1存储器以及所述第3存储器是非易失性存储器。

Description

存储器系统以及处理器系统
本申请以日本专利申请2016-183344(申请日:2016年9月20日)为基础,根据该申请而享有优先权。通过参照该申请,包括该申请的全部内容。
技术领域
本发明的实施方式涉及存储器系统以及处理器系统。
背景技术
作为处理器的主存储器,以往使用有DRAM(Dynamic Random Access Memory,动态随机存取存储器)。然而,DRAM需要定期进行刷新(refresh),导致消耗电力增大。因此,提案有使用大容量的非易失性存储器作为主存储器来替代DRAM的技术。
然而,关于非易失性存储器,存在不少写入速度比DRAM慢或者重写耐用次数还不如DRAM的情况。
发明内容
一实施方式的存储器系统具备:
第1存储器,按第1数据大小被存取;
第2存储器,按小于所述第1数据大小的第2数据大小被存取,能够比所述第1存储器更高速地被存取;以及
第3存储器,保存地址变换信息,所述地址变换信息用于将对所述第2存储器进行存取的地址变换为对所述第1存储器进行存取的地址,
所述第1存储器以及所述第3存储器是非易失性存储器。
附图说明
图1是示出第1实施方式的处理器系统的概略结构的框图。
图2是示出第1实施方式的处理器系统的处理动作的流程图。
图3是示出第2实施方式的处理器系统的概略结构的框图。
图4是示出第3存储器的数据结构的图。
图5是示出第2实施方式的处理器系统的处理动作的流程图。
图6是示出第3实施方式的处理器系统的概略结构的框图。
图7是示出第3实施方式的处理器系统的处理动作的流程图。
附图标记说明
1:存储器系统;2:处理器系统;3:处理器;4:第1基板;5:第2基板;6:第3基板;7:多核部件;8:末级缓存;9:TLB;10:页表;11:DRAM控制电路;12:DRAM驱动电路;13:SCM控制电路;14:SCM驱动电路;15:核;16:分布共享部件;21:第1存储器;22:第4存储器;23:第2存储器;24:第3存储器;25:第1控制电路;26:第2控制电路;27:I/F切换电路;31:I/F控制电路。
具体实施方式
以下,一边参照附图,一边说明本发明的实施方式。
(第1实施方式)
图1是示出第1实施方式的内置有存储器系统1的处理器系统2的概略结构的框图。图1的处理器系统2具备具有处理器3的第1基板4、构成存储器系统1的第2基板5以及第3基板6。
第1基板4也可以包括一个或者多个半导体芯片。处理器3具有多个多核(Multicore)部件7、末级缓存(Last Level Cache)8、TLB(Translation LookasideBuffer,翻译后备缓冲器)9、页表(PT,Page Table)10、DRAM控制电路11、DRAM驱动电路12、SCM控制电路13以及SCM驱动电路14。此外,处理器3具备除图1图示以外的各种电路块,但在图1中省略。
各多核部件7具有多个核15以及多个核15共享的分布共享缓存16。此外,虽然在图1中省略,但各核15在其内部至少具有1层级的单独缓存(例如L1缓存)。分布共享缓存16是被对应的多核部件7内的多个核15存取的缓冲存储器(cache memory)(例如L2缓存)。
末级缓存8是层级化的缓冲存储器中的存取优先级最低的缓冲存储器。末级缓存8通过多个多核部件7被存取。
处理器3在做出存取请求的地址未命中(hit)末级缓存8的情况下,对安装有SCM(Storage Class Memory,存储级存储器:第1存储器)21的第2基板5、或者安装有第4存储器(例如DRAM)22的第3基板6进行存取。SCM 21和第4存储器22是同一层级的存储器,是所谓主存储器。处理器3对主储存映射(map)上的第1地址空间分配有SCM21,对另外的第2地址空间分配有第4存储器22。以下,对第4存储器22是DRAM的例子进行说明。
SCM控制电路13控制对安装有SCM 21(Storage Class Memory,存储级存储器)的第2基板5的存取。SCM驱动电路14依照来自SCM控制电路13的指示,执行对SCM 21的存取。
DRAM控制电路11控制对安装有DRAM 22的第3基板6的存取。DRAM驱动电路12依照来自DRAM控制电路11的指示,对DRAM 22进行驱动。
优选第2基板5和第3基板6具备拆装自如的接口功能,以能够根据需要增减存储器容量。例如,安装有DRAM 22的第3基板6也可以是依照DIMM(Dual Inline Memory Module,双列直插式存储器模块)标准的存储器模块。同样地,第2基板5也可以是标准化的存储器模块。
在本实施方式中,将安装于第2基板5的存储器的至少一部分称为SCM 21。更具体而言,第2基板5具有第1存储器21、第2存储器23、第3存储器24、第1控制电路25、第2控制电路26以及I/F切换电路27。第2基板5上的各构成组件也可以由一个或者多个半导体芯片构成。
第1存储器21按第1数据大小(data size)被存取。在本实施方式中,将第1数据大小称为段大小(segment size)。段大小的具体的值不作特别限定。
作为一个例子,段大小具有4k字节(byte)页面的1000页量的数据大小。第1存储器21假设为非易失性存储器。非易失性存储器的具体的种类不作限定。第1存储器21是大容量的非易失性存储器,例如,优选为能够大容量化的交叉点(Cross point)型的三维结构的非易失性存储器。作为具体的一个例子,第1存储器21也可以是相变存储器(PCM:PhaseChange Random Access Memory,相变随机存取存储器)、电阻变化存储器(ReRAM:Resistance Random Access Memory,电阻随机存取存储器)等,在本实施方式中称为SCM。
第2存储器23按小于第1数据大小的第2数据大小被存取,能够比第1存储器21更高速地被存取。第2数据大小例如是页面大小(page size)。1页面例如是4k字节。
在本实施方式中,第1存储器21和第2存储器23被配置于处理器3的各自不同的地址空间,根据处理器3发出的地址,决定对第1存储器21和第2存储器23中的哪个存储器进行存取。第2存储器23既可以是易失性存储器,也可以是非易失性存储器。作为一个例子,第2存储器23由能够比第1存储器21更高速地被存取的DRAM 22构成。如上所述,第3基板6上的第4存储器22也被配置于处理器3的特定的地址空间,其结果是第1实施方式的处理器3能够对第1存储器21、第2存储器23以及第4存储器22中的任意存储器指定地址而进行存取。
第3存储器24保存用于对第1存储器21进行存取的页面地址变换信息。页面地址变换信息是用于将页面地址变换成以段为单位的地址的信息。第1存储器21以段为单位保存数据,所以能够通过利用页面变换信息变换成以段为单位的地址来进行存取。这样,地址变换信息是将对第2存储器23进行访问的地址变换为对第1存储器21进行访问的地址的信息。
第3存储器24假设为非易失性存储器。在更具体的一个例子中,第3存储器24的存储器容量比第1存储器21的存储器容量小,是能够比第1存储器21更高速地被存取的非易失性存储器。用作第3存储器24的非易失性存储器是例如MRAM(Magnetic Random AccessMemory,磁随机存储器)。即使在MRAM之中,例如STT(Spin Transfer Torque,自旋转移力矩)-MRAM是利用自旋电子学(Spintronics)以TMR(Tunnel Magneto Resistance,隧道磁电阻)效应为动作原理的非易失性存储器并具有高速存取性能,所以能够成为第3存储器24的后补。
这样,在本实施方式中,第2基板5上的第1存储器21和第3存储器24是非易失性存储器,第2存储器23是易失性存储器。作为一个例子,在本实施方式中,将第1存储器21设为除MRAM以外的SCM 21,将第2存储器23设为DRAM 22,将第3存储器24设为MRAM。
根据处理器3做出存取请求的地址,决定应对第2基板5上的第1存储器(SCM)21、第2存储器(DRAM)23和第3基板6上的第4存储器(DRAM)22中的哪个存储器进行存取。在对第2基板5上的第1存储器(SCM)21或第2存储器(DRAM)23进行存取的情况下,通过来自SCM控制电路13的控制,I/F切换电路27选择第1控制电路25和第2控制电路26中的任意一方,传送来自处理器3的存取请求。第1控制电路25根据来自处理器3的存取请求,按照第3存储器24内的地址变换信息,控制对第1存储器(SCM)21的存取。第2控制电路26根据来自处理器3的存取请求,控制对第2存储器(DRAM)23的存取。
图2是示出第1实施方式的处理器系统2的处理动作的流程图。在处理器3对存储器系统1进行了存取请求(写入请求或者读出请求)的情况下开始该流程图。
首先,判定是否命中核15的单独缓存(步骤S1)。在命中单独缓存的情况下,对单独缓存进行存取而结束图2的处理。
在未命中(miss)单独缓存的情况下,判定是否命中分布共享缓存16(步骤S2)。在命中分布共享缓存16的情况下,对分布共享缓存16进行存取而结束图2的处理。在未命中分布共享缓存16的情况下,判定是否命中TLB 9(步骤S3)。在未命中TLB 9的情况下,对页表10的项(PTE:页表项)进行存取,获取页面地址(步骤S4)。在步骤S3中命中TLB 9的情况下、或者在步骤S4的处理结束的情况下,判定获取到的页面地址是否命中末级缓存(LLC)8(步骤S5)。在命中末级缓存8的情况下,进行对末级缓存8的存取,结束图2的处理。
在步骤S5中判定为未命中末级缓存8的情况下,确认处理器3做出存取请求的页面地址,判断应对第2基板5和第3基板6中的哪个基板进行存取(步骤S6)。
在判断为应对第2基板5进行存取的情况下,对第2基板5进行存取(步骤S7),按照页面地址,判断应对第1存储器21进行存取、还是应对第2存储器23进行存取(步骤S8)。在判断为应对第1存储器21进行存取的情况下,参照第3存储器24内的地址变换信息,将页面地址变换成段地址(步骤S9),使用变换后的段地址对第1存储器(SCM)21进行存取,结束图2的处理(步骤S10)。在步骤S8中判断为应对第2存储器23进行存取的情况下,按照页面地址对第2存储器(DRAM)23进行存取,结束图2的处理(步骤S11)。
在步骤S6中判断为应对第3基板6进行存取的情况下,对第3基板6内的第4存储器(DRAM)22进行存取而结束图2的处理(步骤S12)。
这样,在第1实施方式中,独立于安装有第4存储器(DRAM)22的第3基板6而设置安装有第1存储器(SCM)21和第2存储器(DRAM)23的第2基板5,处理器3能够按照各自独立的地址来对第3基板6上的第4存储器(DRAM)22、第2基板5上的第1存储器(SCM)21以及第2存储器(DRAM)23进行存取。
在第2基板5,除第1存储器(SCM)21之外,还混装有第2存储器(DRAM)23、第3存储器24(MRAM)等易失性存储器和非易失性存储器,使用这些存储器,从而能够补偿作为SCM 21的缺陷的低存取性能。
这样,在本实施方式中,由易失性存储器和非易失性存储器构成主存储器。如果仅由易失性存储器构成主存储器,则在断开(OFF)了处理器系统2的电源时,主存储器内的全部数据消失,但在本实施方式中,作为主存储器的一部分使用非易失性存储器,所以即使断开了电源,在非易失性存储器中也保存有想要保留的数据,从而当再次接通(ON)了电源时无需将数据加载到主存储器,能够使处理器系统2整体的处理高速化。
另外,在本实施方式中,对第1存储器(SCM)21以段为单位进行存取,例如,对由DRAM 22构成的第2存储器23以页面为单位进行存取,所以对存取速度慢的SCM 21以更大的数据大小进行存取,所以能够进行高速存取。这样,尽管在第1存储器21和第2存储器23存取的数据大小不同,但在第3存储器24中预先保存有地址变换信息,所以能够无特别的阻碍地对第1存储器21和第2存储器23进行存取。
(第2实施方式)
图3是示出第2实施方式的处理器系统2的概略结构的框图。在图3的处理器系统2中,第2基板5的结构的一部分与图1不同。在图3中,对与图1共同的结构部分赋予同一符号,以下以相异点为中心进行说明。
图3的处理器系统2内的第2基板5具有第1存储器21、第2存储器23、第3存储器24以及I/F控制电路31。也就是说,图3的第2基板5是将图1的第2基板5上的第1控制电路25、第2控制电路26和I/F切换电路27置换成I/F控制电路31而得到的结构。
在第1实施方式中,示出了第2基板5上的第1存储器(SCM)21和第2存储器(DRAM)23被配置于处理器3的分别不同的地址空间的例子,但在本实施方式中,将第2存储器23用作第1存储器21的缓冲存储器,第2存储器23未被配置于处理器3的地址空间。
第2基板5上的第3存储器24不仅保存有与第1实施方式相同的地址变换信息,还保存有用于将第2存储器23用作第1存储器21的缓冲存储器的缓存管理信息。
第2基板5上的I/F控制电路31按照第3存储器24内的地址变换信息和缓存管理信息,控制对第1存储器21和第2存储器23的存取。缓存管理信息包含保存于第2存储器23的数据与地址的对应关系、脏标志(dirty flag)、有效标志等各种标志信息等。
处理器3决定对具有第1存储器(SCM)21和第2存储器(DRAM)23的第2基板5与具有第4存储器(DRAM)22的第3基板6中的哪个基板进行存取。在对第2基板5进行存取的情况下,SCM控制电路13经由SCM驱动电路14对I/F控制电路31指示存取。I/F控制电路31参照第3存储器24内的地址变换信息和缓存管理信息,对第1存储器(SCM)21和第2存储器(DRAM)23中的任意存储器进行存取。在对第3基板6进行存取的情况下,DRAM控制电路11经由DRAM驱动电路12,控制对第4存储器(DRAM)22的存取。
图4是示出第3存储器24的数据结构的图。第3存储器24将有效标志信息、脏标志信息、物理页面编号(PPN:Physical Page Number)、段信息、第1标志信息(1st Flag)、第2标志信息(2nd Flag)和缓存地址关联起来而保存。这些信息相当于地址变换信息和缓存管理信息。
处理器3进行存取请求时指定的物理地址由物理页面编号和页面偏移(pageoffset)构成。第1存储器21的地址由段ID、段偏移(segment offset)和页面偏移构成。缓存地址由缓存标记(cache tag)、缓存索引(cache index)和页面偏移构成。
有效标志信息是表示对应的数据是否有效的信息。脏标志信息是表示第2存储器23内的对应的数据是否写回到了第1存储器21的信息。
第1标志信息是表示第1存储器21内的各数据是否也存在于第2存储器23的信息。第2标志信息是表示是否允许清除第2存储器23内的各数据的锁定(lock down)用信息。除此之外,也可以设置表示第2存储器23内的各数据是否是LRU(Least Recently Used,最近最少使用)数据的标志信息等。
这样,第3存储器24保存有用于对第1存储器21和第2存储器23进行存取的地址变换信息和缓存管理信息。因此,I/F控制电路31能够通过参照第3存储器24,进行对第1存储器21和第2存储器23的存取控制,能够相比于图1进一步简化第2基板5上的结构。
图5是示出第2实施方式的处理器系统2的处理动作的流程图。步骤S21~S27与图2的步骤S1~S7相同。在步骤S27中对第2基板5进行存取后,对第3存储器(MRAM)24进行存取(步骤S28)。参照第3存储器24内的缓存管理信息,确认与处理器3的存取请求对应的页面地址,判断应对第1存储器21和第2存储器23中的哪个存储器进行存取(步骤S29)。在判断为应对第1存储器21进行存取的情况下,对第1存储器(SCM)21进行存取(步骤S30),在判断为应对第2存储器23进行存取的情况下,对第2存储器(DRAM)23进行存取(步骤S31)。
在步骤S26中判断为应对第3基板6进行存取的情况下,与图2的步骤S12同样地,对第3基板6内的第4存储器(DRAM)22进行存取而结束图5的处理(步骤S32)。
这样,在第2实施方式中,将第2基板5上的第2存储器(DRAM)23用作第1存储器(SCM)21的缓冲存储器,所以能够使对第2基板5的存取高速化。因此,即使将低速的第1存储器(SCM)21安装于第2基板5,也能够通过将高速的第2存储器(DRAM)23用作缓冲存储器来补偿SCM 21的缺陷。因此,能够不降低存取性能而由易失性存储器和非易失性存储器构成主存储器。
(第3实施方式)
图6是示出第3实施方式的处理器系统2的概略结构的框图。在图6的处理器系统2中,将第2基板5内的第2存储器23设为MRAM而替代DRAM 22,除此以外,是与图3相同的结构。
第2存储器23的存储器容量比第1存储器21的存储器容量小,所以如果将第2存储器23设为非易失性存储器,则相比于同由非易失性存储器构成的第1存储器21,使存取速度高速化的可能性高。而且,MRAM具有比除MRAM以外的非易失性存储器的存取速度快这样的特征,所以只要将第2存储器23设为MRAM,将第1存储器21例如设为除MRAM以外的非易失性存储器,就能够使第2存储器23的存取速度比第1存储器21的存取速度相当高的高速,在将第2存储器23用作第1存储器21的缓冲存储器时能够实现存取速度的提高。
另外,在第2实施方式中,示出了将第2存储器23设为DRAM 22等易失性存储器的例子,但如果将第2存储器23设为易失性存储器,则电源切断时、系统复位时等,需要使第2存储器23内的所有的有效数据避让到第1存储器21的处理,有损处理的迅速性。如果将第2存储器23设为非易失性存储器,则即使断开电源,数据也不会消失,所以也无需使数据避让,能够实现处理的高速化。
图7是示出第3实施方式的处理器系统2的处理动作的流程图。在图7中,除步骤S51的处理与图5的步骤S31不同之外,与图5的处理相同。在步骤S51中,在判断为应对第2基板5上的第2存储器23进行存取的情况下,对作为第2存储器23的MRAM进行存取。
这样,在第3实施方式中,将用作第2基板5上的缓冲存储器的第2存储器23设为MRAM,所以相比于第1存储器21,能够更高速地对第2存储器23进行存取,且电源切断时等也无需使第2存储器23内的数据避让,易于进行对第2存储器23的存取控制。
此外,能够将上述实施方式总结为以下的技术方案。
技术方案1
一种存储器系统,具备:
第1存储器,按第1数据大小被存取;
第2存储器,按小于上述第1数据大小的第2数据大小被存取,能够比上述第1存储器更高速地被存取;以及
第3存储器,保存用于对上述第1存储器进行存取的地址变换信息,
上述第1存储器以及上述第3存储器是非易失性存储器。
技术方案2
根据技术方案1,具备:
接口切换电路,根据来自处理器的存取请求,切换对上述第1存储器进行存取、还是对上述第2存储器进行存取;
第1控制电路,按照上述地址变换信息,控制对上述第1存储器的存取;以及
第2控制电路,控制对上述第2存储器的存取。
技术方案3
根据技术方案1,在技术方案1中记载的上述存储器系统中,
上述第2存储器的存取优先级比上述第1存储器的存取优先级高,且上述第2存储器保存在上述第1存储器中已保存的数据或者应保存的数据,
上述第3存储器除了上述地址变换信息,还保存用于将上述第2存储器用作上述第1存储器的缓冲存储器的缓存管理信息。
技术方案4
根据技术方案3,上述缓存管理信息包含表示保存于上述第1存储器的数据是否也存在于上述第2存储器的第1标志信息。
技术方案5
根据技术方案4,上述缓存管理信息包含表示是否允许清除保存于上述第2存储器的数据的第2标志信息。
技术方案6
根据技术方案4或者5,具备接口控制电路,该接口控制电路根据来自处理器的存取请求,按照上述地址变换信息以及上述缓存管理信息,控制对上述第1存储器以及上述第2存储器的存取。
技术方案7
根据技术方案1至6中的任意一个技术方案,上述第3存储器的存储器容量比上述第1存储器的存储器容量小,上述第3存储器能够比上述第1存储器更高速地被存取。
技术方案8
根据技术方案1至7中的任意一个技术方案,上述第2存储器是易失性存储器。
技术方案9
根据技术方案1至7中的任意一个技术方案,上述第2存储器是非易失性存储器。
技术方案10
根据技术方案9,上述第2存储器是具有与上述第1存储器不同的存储单元构造的非易失性存储器。
技术方案11
根据技术方案1至10中的任意一个技术方案,具备第4存储器,该第4存储器按照与上述第1存储器不同的地址从处理器被存取,
上述第4存储器是易失性存储器。
技术方案12
根据技术方案1至11中的任意一个技术方案,上述第3存储器是MRAM(Magnetoresistive Random Access Memory,磁阻随机存取存储器)。
技术方案13
一种处理器系统,具备:
处理器;以及
存储器系统,通过处理器被存取,
上述存储器系统,
第1存储器,按第1数据大小被存取;
第2存储器,按小于上述第1数据大小的第2数据大小被存取,能够比上述第1存储器更高速地被存取;以及
第3存储器,保存用于对上述第1存储器进行存取的地址变换信息,
上述第1存储器以及上述第3存储器是非易失性存储器。
对本发明的若干实施方式进行了说明,但这些实施方式是作为例子而提示的,意图不在于限定发明的范围。这些新的实施方式能够以其它各种各样的方式来实施,在不脱离发明的主旨的范围内能够进行各种省略、置换、变更。这些实施方式、其变形被包含于发明的范围、主旨,并且被包含于权利要求书所记载的发明和其均等的范围。

Claims (10)

1.一种存储器系统,具备:
第1存储器,按第1数据大小被存取;
第2存储器,按小于所述第1数据大小的第2数据大小被存取,能够比所述第1存储器更高速地被存取;以及
第3存储器,保存地址变换信息,所述地址变换信息用于将对所述第2存储器进行存取的地址变换为对所述第1存储器进行存取的地址,
所述第1存储器以及所述第3存储器是非易失性存储器。
2.根据权利要求1所述的存储器系统,其特征在于,具备:
接口切换电路,根据来自处理器的存取请求,切换对所述第1存储器进行存取、还是对所述第2存储器进行存取;
第1控制电路,按照所述地址变换信息,控制对所述第1存储器的存取;以及
第2控制电路,控制对所述第2存储器的存取。
3.根据权利要求1所述的存储器系统,其特征在于,
所述第2存储器的存取优先级比所述第1存储器的存取优先级高,且所述第2存储器保存在所述第1存储器中已保存的数据或者应保存的数据,
所述第3存储器除了所述地址变换信息,还保存用于将所述第2存储器用作所述第1存储器的缓冲存储器的缓存管理信息。
4.根据权利要求3所述的存储器系统,其特征在于,
所述缓存管理信息包含表示保存于所述第1存储器的数据是否也存在于所述第2存储器的第1标志信息。
5.根据权利要求4所述的存储器系统,其特征在于,
所述缓存管理信息包含表示是否允许清除保存于所述第2存储器的数据的第2标志信息。
6.根据权利要求4或者5所述的存储器系统,其特征在于,具备:
接口控制电路,根据来自处理器的存取请求,按照所述地址变换信息以及所述缓存管理信息,控制对所述第1存储器以及所述第2存储器的存取。
7.根据权利要求1至6中的任意一项所述的存储器系统,其特征在于,
所述第3存储器的存储器容量比所述第1存储器的存储器容量小,所述第3存储器能够比所述第1存储器更高速地被存取。
8.根据权利要求1至7中的任意一项所述的存储器系统,其特征在于,
所述第2存储器是易失性存储器。
9.根据权利要求1至7中的任意一项所述的存储器系统,其特征在于,
所述第2存储器是非易失性存储器。
10.根据权利要求9所述的存储器系统,其特征在于,
所述第2存储器是具有与所述第1存储器不同的存储单元构造的非易失性存储器。
CN201710136121.2A 2016-09-20 2017-03-09 存储器系统以及处理器系统 Active CN107844264B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016183344A JP2018049385A (ja) 2016-09-20 2016-09-20 メモリシステムおよびプロセッサシステム
JP2016-183344 2016-09-20

Publications (2)

Publication Number Publication Date
CN107844264A true CN107844264A (zh) 2018-03-27
CN107844264B CN107844264B (zh) 2022-07-26

Family

ID=61620571

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710136121.2A Active CN107844264B (zh) 2016-09-20 2017-03-09 存储器系统以及处理器系统

Country Status (4)

Country Link
US (1) US10423536B2 (zh)
JP (1) JP2018049385A (zh)
CN (1) CN107844264B (zh)
TW (1) TWI663542B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10956071B2 (en) 2018-10-01 2021-03-23 Western Digital Technologies, Inc. Container key value store for data storage devices
US10769062B2 (en) 2018-10-01 2020-09-08 Western Digital Technologies, Inc. Fine granularity translation layer for data storage devices
KR20200044312A (ko) 2018-10-19 2020-04-29 삼성전자주식회사 반도체 장치
US10740231B2 (en) * 2018-11-20 2020-08-11 Western Digital Technologies, Inc. Data access in data storage device including storage class memory
US11650742B2 (en) * 2019-09-17 2023-05-16 Micron Technology, Inc. Accessing stored metadata to identify memory devices in which data is stored
US11269780B2 (en) 2019-09-17 2022-03-08 Micron Technology, Inc. Mapping non-typed memory access to typed memory access
US10963396B1 (en) 2019-09-17 2021-03-30 Micron Technology, Inc. Memory system for binding data to a memory namespace
US11016905B1 (en) 2019-11-13 2021-05-25 Western Digital Technologies, Inc. Storage class memory access
US11249921B2 (en) 2020-05-06 2022-02-15 Western Digital Technologies, Inc. Page modification encoding and caching

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1391166A (zh) * 2001-06-11 2003-01-15 株式会社日立制作所 半导体存储装置
CN101673245A (zh) * 2008-09-09 2010-03-17 株式会社东芝 包括存储器管理装置的信息处理装置和存储器管理方法
US20130138894A1 (en) * 2011-11-30 2013-05-30 Gabriel H. Loh Hardware filter for tracking block presence in large caches
CN103810126A (zh) * 2014-01-27 2014-05-21 上海新储集成电路有限公司 混合dram存储器及降低该dram存储器刷新时功耗的方法
US20140189200A1 (en) * 2012-12-31 2014-07-03 Lee M. Gavens Flash Memory Using Virtual Physical Addresses
US20160196210A1 (en) * 2013-09-20 2016-07-07 Kabushiki Kaisha Toshiba Cache memory system and processor system

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6834327B2 (en) * 2002-02-08 2004-12-21 Hewlett-Packard Development Company, L.P. Multilevel cache system having unified cache tag memory
US8250282B2 (en) 2009-05-14 2012-08-21 Micron Technology, Inc. PCM memories for storage bus interfaces
TWI460588B (zh) * 2009-07-17 2014-11-11 Toshiba Kk Memory management device and memory information processing device
US8914568B2 (en) * 2009-12-23 2014-12-16 Intel Corporation Hybrid memory architectures
JP2013030552A (ja) 2011-07-27 2013-02-07 Toshiba Corp 不揮発性半導体記憶装置
CN103946811B (zh) * 2011-09-30 2017-08-11 英特尔公司 用于实现具有不同操作模式的多级存储器分级结构的设备和方法
WO2013048483A1 (en) * 2011-09-30 2013-04-04 Intel Corporation Platform storage hierarchy with non-volatile random access memory having configurable partitions
US9280497B2 (en) * 2012-12-21 2016-03-08 Dell Products Lp Systems and methods for support of non-volatile memory on a DDR memory channel
US9547594B2 (en) * 2013-03-15 2017-01-17 Intel Corporation Instructions to mark beginning and end of non transactional code region requiring write back to persistent storage
US20160253123A1 (en) * 2014-03-19 2016-09-01 Bruce Ledley Jacob NVMM: An Extremely Large, Logically Unified, Sequentially Consistent Main-Memory System

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1391166A (zh) * 2001-06-11 2003-01-15 株式会社日立制作所 半导体存储装置
CN101673245A (zh) * 2008-09-09 2010-03-17 株式会社东芝 包括存储器管理装置的信息处理装置和存储器管理方法
US20130138894A1 (en) * 2011-11-30 2013-05-30 Gabriel H. Loh Hardware filter for tracking block presence in large caches
US20140189200A1 (en) * 2012-12-31 2014-07-03 Lee M. Gavens Flash Memory Using Virtual Physical Addresses
US20160196210A1 (en) * 2013-09-20 2016-07-07 Kabushiki Kaisha Toshiba Cache memory system and processor system
CN103810126A (zh) * 2014-01-27 2014-05-21 上海新储集成电路有限公司 混合dram存储器及降低该dram存储器刷新时功耗的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
华良杰、马玉良: "《计算机组成原理》", 31 May 1995 *

Also Published As

Publication number Publication date
US10423536B2 (en) 2019-09-24
JP2018049385A (ja) 2018-03-29
US20180081820A1 (en) 2018-03-22
TWI663542B (zh) 2019-06-21
CN107844264B (zh) 2022-07-26
TW201814493A (zh) 2018-04-16

Similar Documents

Publication Publication Date Title
CN107844264A (zh) 存储器系统以及处理器系统
US8954672B2 (en) System and method for cache organization in row-based memories
US10379746B2 (en) Information processing apparatus, storage device, and computer program product
CN103425600B (zh) 一种固态盘闪存转换层中的地址映射方法
US20160378652A1 (en) Cache memory system and processor system
US7962695B2 (en) Method and system for integrating SRAM and DRAM architecture in set associative cache
US11580029B2 (en) Memory system, computing system, and methods thereof for cache invalidation with dummy address space
US6178479B1 (en) Cycle-skipping DRAM for power saving
US10031854B2 (en) Memory system
US20080229026A1 (en) System and method for concurrently checking availability of data in extending memories
CN105550125A (zh) 混合式存储器架构
CN109815167A (zh) 用于高效虚拟标记的高速缓存实现的系统和方法
TW200915179A (en) Memory device and method with on-board cache system for facilitating interface with multiple processors, and computer system using same
WO2015041151A1 (ja) キャッシュメモリシステムおよびプロセッサシステム
CN111433749B (zh) 具有dram高速缓存的非易失性物理存储器
Quan et al. Prediction table based management policy for STT-RAM and SRAM hybrid cache
CN107369464A (zh) 存储模块及包括其的系统
TW507124B (en) Status bits for cache memory
EP3382558A1 (en) Apparatus, method and system for just-in-time cache associativity
US20200089426A1 (en) Management device, information processing apparatus, and memory control method
US9128850B2 (en) Multi-ported memory with multiple access support
KR101546707B1 (ko) 하이브리드 메인 메모리 기반의 메모리 접근 관리방법
US6751707B2 (en) Methods and apparatus for controlling a cache memory
JP6039772B1 (ja) メモリシステム
KR101831226B1 (ko) 차세대 메모리로 구성된 캐시의 제어 장치 및 그 방법

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
CB02 Change of applicant information

Address after: Tokyo

Applicant after: TOSHIBA MEMORY Corp.

Address before: Tokyo

Applicant before: Japanese businessman Panjaya Co.,Ltd.

Address after: Tokyo

Applicant after: Kaixia Co.,Ltd.

Address before: Tokyo

Applicant before: TOSHIBA MEMORY Corp.

CB02 Change of applicant information
TA01 Transfer of patent application right

Effective date of registration: 20220712

Address after: Tokyo

Applicant after: Japanese businessman Panjaya Co.,Ltd.

Address before: Tokyo

Applicant before: TOSHIBA MEMORY Corp.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant