CN105009095A - 混合存储器类型混合高速缓存 - Google Patents

混合存储器类型混合高速缓存 Download PDF

Info

Publication number
CN105009095A
CN105009095A CN201480013145.3A CN201480013145A CN105009095A CN 105009095 A CN105009095 A CN 105009095A CN 201480013145 A CN201480013145 A CN 201480013145A CN 105009095 A CN105009095 A CN 105009095A
Authority
CN
China
Prior art keywords
cache
storer
access
cached
information
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
CN201480013145.3A
Other languages
English (en)
Other versions
CN105009095B (zh
Inventor
X·董
J·徐
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN105009095A publication Critical patent/CN105009095A/zh
Application granted granted Critical
Publication of CN105009095B publication Critical patent/CN105009095B/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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0846Cache with multiple tag or data arrays being simultaneously accessible
    • G06F12/0851Cache with interleaved addressing
    • 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/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0846Cache with multiple tag or data arrays being simultaneously accessible
    • 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
    • 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
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1045Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/005Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor comprising combined but independently operative RAM-ROM, RAM-PROM, RAM-EPROM cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1659Cell access
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/004Reading or sensing circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C14/00Digital stores characterised by arrangements of cells having volatile and non-volatile storage properties for back-up when the power is down
    • G11C14/0054Digital stores characterised by arrangements of cells having volatile and non-volatile storage properties for back-up when the power is down in which the volatile element is a SRAM cell
    • G11C14/0081Digital stores characterised by arrangements of cells having volatile and non-volatile storage properties for back-up when the power is down in which the volatile element is a SRAM cell and the nonvolatile element is a magnetic RAM [MRAM] element or ferromagnetic cell
    • 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/1028Power efficiency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/202Non-volatile memory
    • G06F2212/2024Rewritable memory not requiring erasing, e.g. resistive or ferroelectric RAM
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/205Hybrid memory, e.g. using both volatile and non-volatile memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/22Employing cache memory using specific memory technology
    • G06F2212/225Hybrid cache memory, e.g. having both volatile and non-volatile portions
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/22Control and timing of internal memory operations
    • G11C2207/2245Memory devices with an internal cache buffer
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Hall/Mr Elements (AREA)
  • Mram Or Spin Memory Techniques (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

混合高速缓存包括静态随机存取存储器(SRAM)部分和电阻性随机存取存储器部分。混合高速缓存的高速缓存线被配置成包括SRAM宏和电阻性随机存取存储器宏两者。混合高速缓存被配置成使得在每个高速缓存访问循环中SRAM宏在电阻性随机存储器宏之前被访问。在SRAM宏被访问时,较慢的电阻性随机存取存储器达到数据访问就绪状态。

Description

混合存储器类型混合高速缓存
技术领域
本公开一般涉及存储器高速缓存。更具体地,本公开涉及使用不同类型的存储器操作的存储器高速缓存线。
背景
与常规的随机存取存储器(RAM)芯片技术不同,在磁性RAM(MRAM)中,数据不是作为电荷来存储的,而是取而代之通过存储元件的磁极化来存储。这些存储元件是从由隧道层分开的两个铁磁层形成的。两个铁磁层中的一个(被称为固定层或者钉扎层)具有固定在特定方向的磁化。另一铁磁层(被称为自由层)具有可以被更改为当自由层的磁化与固定层磁化反向平行时表示“1”或者当自由层的磁化与固定层的磁化平行时表示“0”或者反之亦然的磁化方向。具有固定层、隧道层和自由层的一种此类器件是磁性隧道结(MTJ)。MTJ的电阻取决于自由层磁化和固定层磁化是彼此平行还是彼此反向平行。存储器设备(诸如MRAM)是从可个体寻址的MTJ的阵列构造的。
为了将数据写入常规MRAM,通过MTJ来施加超过临界切换电流的写电流。超过临界切换电流的写电流足以改变自由层的磁化方向。当写电流在第一方向上流动时,MTJ可被置于或者保持在第一状态,其中其自由层磁化方向和固定层磁化方向在平行取向上对齐。当写电流在与第一方向相反的第二方向上流动时,MTJ可被置于或者保持在第二状态,其中其自由层磁化和固定层磁化呈反向平行取向。
为了读取常规MRAM中的数据,读电流经由与用于将数据写入MTJ的电流路径相同的电流路径来流经该MTJ。如果MTJ的自由层和固定层的磁化彼此平行地取向,则MTJ所呈现的电阻不同于在自由层和固定层的磁化呈反向平行取向的情况下该MTJ所将呈现的电阻。在常规MRAM中,由MRAM的位单元中的MTJ的两个不同电阻定义两种相异的状态。这两个不同的电阻表示由该MTJ存储的逻辑“0”值和逻辑“1”值。
简要概述
根据本公开的一方面的混合高速缓存装置包括第一类型的存储器和第二类型的存储器。该混合高速缓存装置的第一高速缓存线包括第一类型的存储器中的第一存储器位置以及第二类型的存储器中的第二存储器位置。第一高速缓存线被配置成用于在高速缓存访问操作期间在访问第二存储器位置之前访问第一存储器位置。
本公开的另一方面包括一种用于访问混合高速缓存装置的方法。该方法包括:在第一高速缓存线的第一类型的存储器中存储被高速缓存的信息的第一部分,以及在第一高速缓存线的第二类型的存储器中存储被高速缓存的信息的第二部分。该方法还包括在高速缓存访问操作期间在访问被高速缓存的信息的第二部分之前访问被高速缓存的信息的第一部分。
根据本公开的另一方面的混合高速缓存设备包括用于在第一高速缓存线的静态随机存取存储器(SRAM)位置中存储被高速缓存的信息的第一部分的装置,以及用于在第一高速缓存线的电阻性随机存取存储器部分中存储被高速缓存的信息的第二部分的装置。该混合高速缓存设备还包括用于在高速缓存访问操作期间在访问被高速缓存的信息的第二部分之前访问被高速缓存的信息的第一部分的装置。
这已较宽泛地勾勒出本公开的特征和技术优势以便下面的详细描述可以被更好地理解。本公开的其他特征和优点将在下文描述。本领域技术人员应该领会,本公开可容易地被用作修改或设计用于实施与本公开相同的目的的其他结构的基础。本领域技术人员还应认识到,这样的等效构造并不脱离所附权利要求中所阐述的本公开的教导。被认为是本公开的特性的新颖特征在其组织和操作方法两方面连同进一步的目的和优点在结合附图来考虑以下描述时将被更好地理解。然而,要清楚理解的是,提供每一幅附图均仅用于解说和描述目的,且无意作为对本公开的限定的定义。
附图简述
为了更全面地理解本公开,现在结合附图参阅以下描述。
图1是电阻性存储器元件的示图。
图2是电阻性存储器设备以及用于编程和读取该电阻性设备的电路系统的示图。
图3是存储器宏的示图。
图4是现有技术SRAM高速缓存的示图。
图5A是SRAM高速缓存流水线时序图。
图5B是MRAM高速缓存流水线时序图。
图6是根据本公开的一方面的混合SRAM-MRAM高速缓存的示图。
图7是解说根据本公开的一方面的用于混合SRAM-MRAM高速缓存的高速缓存流水线时序图。
图8是根据本公开的一方面的混合SRAM-MRAM高速缓存的示图。
图9是解说根据本公开的一方面的用于混合SRAM-MRAM高速缓存的高速缓存流水线时序图。
图10是解说根据本公开的一方面的用于访问混合SRAM-MRAM高速缓存的方法的过程流程图。
图11是示出其中可有利地采用本公开的配置的示例性无线通信系统的框图。
图12是解说根据一种配置的用于半导体组件的电路、布局、以及逻辑设计的设计工作站的框图。
详细描述
图1解说了电阻性存储器元件100,其包括耦合至存取晶体管104的磁性隧道结(MTJ)102。MTJ 102的自由层110耦合到位线112。存取晶体管104耦合在MTJ 102的固定层106与固定电势节点122之间。隧道势垒层114耦合在固定层106与自由层110之间。存取晶体管104包括耦合到字线118的栅极116。
可以使用合成反铁磁材料来形成固定层106和自由层110。例如,固定层106可以包括多个材料层,包括CoFeB,以及Ru层和CoFe层。举例而言,自由层110可以是反铁磁材料(诸如CoFeB),并且隧道势垒层114可以是MgO。
图2是解说常规磁性随机存取存储器(MRAM)200的一部分的电路图。MRAM 200被划分成数据电路260和基准电路240、210,每个电路210、240、260包括多个位单元212、226(仅解说单个位单元以促进理解)。在对数据电路260的位单元的读出期间,磁性隧道结的电阻与并联连接的两个基准MTJ的有效电阻相比较,其中一个基准MTJ是基准电路210的基准平行MTJ,并且另一个基准MTJ是电路240的基准反向平行MTJ。位单位的电阻通过应用源电压并确定流经位单元的电流量来测量。例如,在平行基准电路210的位单元中,电流源220通过读选择晶体管222、224和字线选择晶体管226被应用到磁性隧道结(MTJ)212。MTJ 212包括固定层214、隧道层216、以及自由层218。当自由层218和固定层214具有基本平行对齐的磁化时,MTJ 212的电阻以及由此位单元210的电阻较低。当自由层218和固定层214具有基本反向平行对齐的磁化时,MTJ 212的电阻以及由此位单元210的电阻较高。
磁性随机存取存储器(MRAM)的位单元可被布置成包括存储器元件(例如,MRAM情形中的MTJ)模式的一个或多个阵列。自旋转移矩磁性随机存取存储器(STT-MRAM)是新兴的非易失性存储器,并且其非易失性、与动态随机存取存储器(DRAM)相当的速度、与静态随机存取存储器(SRAM)相比较小的芯片尺寸、不受限制的耐读/写性、以及低阵列漏电流的优点已向自旋转移矩磁性随机存取存储器(STT-MRAM)开放了巨大的机会作为片上系统(SoC)设计中的通用工作存储器。
在电阻性存储器阵列中,在通过断言读使能信号来激活字线(WL)之际,生成用于读感测的基准电平。在电阻性存储器中生成基准电平导致更长的存储器访问循环。例如,在MRAM阵列中,在激活WL之后,在MRAM位单元可达到数据出就绪状态之前可消逝五个时钟循环以容纳供数据电路260和基准电路240、210稳定的时间。作为比较,SRAM存储器单元可在三个时钟循环里被访问。
图3解说了存储器宏300。宏300可以包括本地数据路径(LDP)302、全局数据路径(GDP)304、单元阵列306、解码器308、以及全局控制单元310。LDP 302包括一个或多个感测放大器以及编程写驱动器(未示出)。GDP 304包括用于输入和输出信号线或引脚(诸如D IN(入)312和D OUT(出)314)的电路系统。
单元阵列306包括对应于字线(例如WL 316)的多个行、以及对应于位线(例如位线318)的多个列。例如,单元阵列306可以具有用于字线的64行和用于位线的256位。单元阵列306包括众多单位单元,诸如耦合到字线316和位线318的单位单元320。存储器宏300可使用各种存储器单元技术来实现,其中存储器宏300中的每个单位单元包括相似构造的存储器元件。例如,在电阻性存储器宏中,每个单位单元320包括电阻性存储器元件100,如参照图1描述的。
高速缓存存储器可包括耦合至高速缓存接口的数个宏。MRAM高速缓存包括耦合至高速缓存接口的数排MRAM宏。SRAM高速缓存包括耦合至高速缓存接口的数排SRAM宏。SRAM宏具有比电阻性存储器宏(诸如MRAM宏)快的优点。电阻性存储器宏(诸如MRAM宏)展现出因困难的位单元感测而导致的比SRAM长的读等待时间以及因困难的状态切换而导致的较长写等待时间。然而,SRAM宏是易失性的、消耗更多泄漏能量并且比MRAM宏大许多。例如,SRAM位单元的大小约为200F2,其中F是芯片的最小特征大小。SRAM最后一级高速缓存可消耗约50%的现代中央处理单元(CPU)面积。作为对比,MRAM宏是非易失性的并且在空闲时是能量高效的。MRAM位单元的大小仅为约4F2。由于其较小的大小,MRAM宏适用于较大的级2和级3(L2/L3)片上高速缓存集成。
SRAM高速缓存架构的示例参照图4来描述。SRAM高速缓存400包括耦合至高速缓存接口404的四排402。每一排402包括数个SRAM宏406。在此示例中,高速缓存接口404宽16字节,并且由此能够一次访问存储器的一个四倍长字(QW)408,其中每个QW 408是SRAM宏406中的存储器中的16字节。在高速缓存访问期间,向高速缓存写或者从高速缓存读固定量的数据。与高速缓存线的该固定量的数据相关联的存储器在本文中被称为高速缓存线。64字节高速缓存线包括排402中的四个QW 408,其中每个QW 408在相应的SRAM宏406中。64字节高速缓存访问被划分成四个QW访问,其中每个QW访问向或从高速缓存线上的SRAM宏406之一读或写。
SRAM高速缓存线访问的定时参照图5A中的SRAM高速缓存线访问示图500来描述。在此示例中,SRAM宏读访问或写访问使用三个时钟循环,包括一使能循环和两个阵列访问循环。因此,在每个SRAM宏能达到数据出就绪状态之前,循环1-循环3消逝。另一循环被用来将每个QW时钟控制到数据总线或从数据总线时钟控制每个QW,由此SRAM高速缓存线的四个QW(QW0-QW3)在循环5-循环8中到达数据总线。
MRAM高速缓存线访问的较慢操作参照图5B中的MRAM高速缓存线访问示图500来描述。在此示例中,MRAM宏读访问或写访问使用五个时钟循环,包括一使能循环和四个阵列访问循环。因此,在每个MRAM宏能达到数据出就绪状态之前,循环1-循环5消逝。另一时钟循环被用来将每个QW时钟控制到数据上,由此MRAM高速缓存线的四个QW(QW0-QW3)在循环7-循环10中到达数据总线。
根据本公开的各方面,MRAM宏可被用于存储非关键QW,其中可容忍允许两个或更多个时钟循环的访问延迟。较大、能量较低效的SRAM宏的使用可被保留用于其中此类延迟不可容忍的情景。参照图5A和5B,根据本公开的各方面,SRAM宏可被配置在高速缓存线上以在存储器访问的循环5和循环6中提供QW并且MRAM宏可被配置成在存储器访问的循环7和循环8中提供QW。
进一步,高速缓存线的第一个QW往往包括存储器访问的最关键数据,而其余QW可包括较不关键的信息。在此类配置中,期望提供对高速缓存线的第一个QW的快速访问,而对高速缓存线的其余QW的较慢访问可以是可容忍的。根据本公开的各方面,高速缓存线的第一个QW可被存储在SRAM宏中,并且其余QW中的一个或多个可被存储在MRAM宏中。根据本公开的另一方面,高速缓存线的第一个QW可被配置成用于存储经高速缓存的信息的关键字。
根据本公开的一方面的包括SRAM宏和MRAM宏两者的混合SRAM-MRAM高速缓存线参照图6描述。混合SRAM-MRAM高速缓存600包括耦合至高速缓存接口604的四排602。每一排602包括耦合至高速缓存接口604的数个SRAM宏606以及数个MRAM宏607。在此示例中,高速缓存接口604宽16字节,并且由此能够一次访问存储器的一个16字节的四倍长字(QW)608。64字节高速缓存线包括排602的SRAM宏606中的两个QW 608、以及该排的MRAM宏607中的两个QW 608。64字节高速缓存访问被划分成四个QW访问,其中前两个QW访问在高速缓存线上向SRAM宏606读写并且后两个QW访问在高速缓存线上向MRAM宏607读写。
图6中所示的实现中的混合SRAM-MRAM高速缓存线访问的定时参照图7中的高速缓存线访问示图700来描述。在此实现中,每个SRAM宏读访问或写访问使用三个时钟循环,包括使能循环和两个阵列访问循环。每个MRAM宏读访问或写访问使用五个时钟循环,包括使能循环和四个阵列访问循环。SRAM宏读访问或写访问被用来访问高速缓存线的前两个QW(QW0和QW1)。在SRAM宏能达到数据出就绪状态之前,时钟循环1-循环3消逝。下一个时钟循环(循环4)被用来将高速缓存线的第一个QW(QW0)时钟控制到数据总线或从数据总线时钟控制。后续时钟循环(循环5)随后被用来将高速缓存线的第二个QW(QW1)时钟控制到数据总线或从数据总线时钟控制。MRAM宏读访问或写访问被用来访问高速缓存线的接下来两个QW(QW2和QW3)。MRAM宏在时钟循环6中达到数据出就绪状态。时钟循环6和7被用来将高速缓存线的第三个QW(QW2)和高速缓存线的第四个QW(QW3)时钟控制到数据总线或从数据总线时钟控制。
在图6中所示的混合SRAM-MRAM高速缓存的实现中,高速缓存线中SRAM宏和MRAM宏的数目被选择为使得高速缓存访问流水线被匹配到三个时钟循环的SRAM宏访问时间与五个时钟循环的MRAM宏访问时间之差。在另一实现中,根据本公开的一方面,高速缓存线访问流水线可以不被完全匹配到SRAM宏访问时间与MRAM宏访问时间之差对多于一个高速缓存线的访问可被交织以便于容适可在MRAM宏处于数据访问就绪状态之前消逝的附加时钟循环。根据本公开的一方面的一对交织式混合SRAM-MRAM高速缓存线的实现参照图8描述。
根据本公开的一方面的包括SRAM宏和MRAM宏两者的混合SRAM-MRAM高速缓存线参照图8描述。混合SRAM-MRAM高速缓存800包括耦合至高速缓存接口806的四排801-804。每一排801-804包括耦合至高速缓存接口806的数个SRAM宏808以及数个MRAM宏809。在此示例中,高速缓存接口806宽16字节,并且由此能够一次访问存储器的一个16字节的四倍长字(QW)810。第一个64字节高速缓存线包括第一排803的SRAM宏808中的两个QW 810、以及第一排803的MRAM宏809中的两个QW 810。第二个64位高速缓存线包括第二排804的SRAM宏808中的两个QW 810、以及第二排804的MRAM宏809中的两个QW 810。
第一个64字节高速缓存访问被划分成四个QW访问,其中前两个QW(QW0和QW1)在第一高速缓存线上向SRAM宏808读或写并且后两个QW(QW2和QW3)在第一高速缓存线上向MRAM宏809读或写。第二个64字节高速缓存访问被划分成四个QW访问,其中前两个QW(QW4和QW5)在第二高速缓存线上向SRAM宏808读或写并且后两个QW(QW6和QW7)在第二高速缓存线上向MRAM宏809读或写。
图8中所示的实现中的混合SRAM-MRAM高速缓存线访问的定时参照图9中的高速缓存线访问示图900来描述。在此实现中,每个SRAM宏读访问或写访问使用三个时钟循环,包括使能循环和两个阵列访问循环。每个MRAM宏读访问或写访问使用七个时钟循环,包括使能循环和六个阵列访问循环。第一个SRAM宏读访问或写访问被用来访问第一高速缓存线的前两个QW(QW0和QW1)。在SRAM宏能达到数据出就绪状态之前,时钟循环1-循环3消逝。下一个时钟循环(循环4)被用来将第一高速缓存线的第一个QW(QW0)时钟控制到数据总线或从数据总线时钟控制。后续时钟循环(循环5)随后被用来将第一高速缓存线的第二个QW(QW1)时钟控制到数据总线或从数据总线时钟控制。
在此实现中,由于MRAM宏访问花费七个时钟循环,因此它们直至时钟循环8才达到数据访问就绪状态。为了避免高速缓存接口806上的空闲循环,第二高速缓存线访问在等待第一高速缓存线上的MRAM宏达到数据出就绪状态时开始。时钟循环(循环6)被用来将第二高速缓存线的第一个QW(QW4)时钟控制到数据总线或从数据总线时钟控制。后续时钟循环(循环7)随后被用来将第二高速缓存线的第二个QW(QW5)时钟控制到数据总线或从数据总线时钟控制。
MRAM宏读访问或写访问被用来访问第一高速缓存线的接下来两个QW(QW2和QW3)。第一高速缓存线上的MRAM宏在时钟循环8中达到数据出就绪状态。时钟循环8和9被用来将第一高速缓存线的第三个QW(QW2)和第一高速缓存线的第四个QW(QW3)时钟控制到数据总线或从数据总线时钟控制。第二高速缓存线上的MRAM宏在时钟循环10中达到数据出就绪状态。时钟循环10和11被用来将第二高速缓存线的第三个QW(QW6)和第二高速缓存线的第四个QW(QW7)时钟控制到数据总线或从数据总线时钟控制。
图10是解说根据本公开的一方面的一种用于访问高速缓存存储器的方法的过程流图。方法1000包括在框1002在高速缓存线的静态随机存取存储器(SRAM)位置中存储被高速缓存的信息的第一部分,以及在框1004在高速缓存线的电阻性随机存取存储器位置中存储被高速缓存的信息的第二部分。该方法还包括在框1006在高速缓存访问操作期间在访问信息的第二部分之前访问信息的第一部分。
根据本公开的另一方面的混合SRAM-MRAM高速缓存包括用于在高速缓存线的SRAM位置中存储被高速缓存的信息的第一部分的装置,以及用于在高速缓存线的电阻性存储器位置中存储被高速缓存的信息的第二部分的装置。该高速缓存还具有用于在访问第二部分之前访问信息的第一部分的装置。例如,存储被高速缓存的信息的第一部分的装置可包括如图6所示的SRAM宏606。例如,用于存储被高速缓存的信息的第二部分的装置可包括如图6所示的MRAM宏607。例如,用于访问的装置可包括如图6所示的高速缓存接口604、SRAM宏606和MRAM宏608。
在另一配置中,前述装置可以是被配置成执行由前述装置所叙述的功能的任何模块或任何设备。尽管已阐述了特定装置,但是本领域技术人员将可领会,并非所有所公开的装置都是实践所公开的配置所必需的。此外,某些众所周知的装置未被描述,以便保持专注于本公开。
图11是示出其中可有利地采用本公开的一方面的示例性无线通信系统1100的框图。出于解说目的,图11示出了三个远程单元1120、1130和1150以及两个基站1140。将认识到,无线通信系统可具有多得多的远程单元和基站。远程单元1120、1130和1150包括IC器件1125A、1125C和1125B,这些IC器件包括所公开的混合高速缓存装置。将认识到,其他设备也可包括所公开的混合高速缓存装置,诸如基站、交换设备、和网络装备。图11示出从基站1140到远程单元1120、1130和1150的前向链路信号1180,以及从远程单元1120、1130和1150到基站1140的反向链路信号1190。
在图11中,远程单元1120被示为移动电话,远程单元1130被示为便携式计算机,而远程单元1150被示为无线本地环路系统中的位置固定的远程单元。例如,这些远程单元可以是移动电话、手持式个人通信系统(PCS)单元、便携式数据单元(诸如个人数据助理)、启用GPS的设备、导航设备、机顶盒、音乐播放器、视频播放器、娱乐单元、位置固定的数据单元(诸如仪表读数装置)、或者存储或取回数据或计算机指令的其他设备、或者其组合。尽管图11解说了根据本公开的教导的远程单元,但本公开并不限于所解说的这些示例性单元。本公开的各方面可以合适地在包括所公开的混合高速缓存装置的许多设备中使用。
图12是解说用于半导体组件(诸如以上公开的混合高速缓存装置)的电路、布局以及逻辑设计的设计工作站的框图。设计工作站1200包括硬盘1201,该硬盘1201包含操作系统软件、支持文件、以及设计软件(诸如Cadence或OrCAD)。设计工作站1200还包括促成对电路设计1210或半导体组件1212(诸如混合高速缓存装置)的设计的显示器1202。提供存储介质1204以用于有形地存储电路设计1210或半导体组件1212。电路设计1210或半导体组件1212可以文件格式(诸如GDSII或GERBER)存储在存储介质1204上。存储介质1204可以是CD-ROM、DVD、硬盘、闪存、或者其他合适的设备。此外,设计工作站1200包括用于从存储介质1204接受输入或者将输出写入存储介质1204的驱动装置1203。
存储介质1204上记录的数据可指定逻辑电路配置、用于光刻掩模的图案数据、或者用于串写工具(诸如电子束光刻)的掩模图案数据。该数据可进一步包括与逻辑仿真相关联的逻辑验证数据,诸如时序图或网电路。在存储介质1204上提供数据通过减少用于设计半导体晶片的工艺数目来促成电路设计1210或半导体组件1212的设计。
对于固件和/或软件实现,这些方法体系可以用执行本文所描述功能的模块(例如,规程、函数等等)来实现。有形地体现指令的机器可读介质可被用来实现本文所述的方法体系。例如,软件代码可被存储在存储器中并由处理器单元来执行。存储器可以在处理器单元内或在处理器单元外部实现。如本文所用的,术语“存储器”是指多种类型的长期、短期、易失性、非易失性、或者其他存储器,而并不限于特定类型的存储器或特定数目的存储器、或者记忆存储在其上的类型的介质。
如果以固件和/或软件实现,则功能可作为一条或多条指令或代码存储在计算机可读介质上。示例包括编码有数据结构的计算机可读介质和编码有计算机程序的计算机可读介质。计算机可读介质包括物理计算机存储介质。存储介质可以是能被计算机访问的可用介质。作为示例而非限定,此类计算机可读介质可包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储或其他磁存储设备、或者能被用来存储指令或数据结构形式的合意程序代码且能被计算机访问的其他介质;如本文中所使用的盘(disk)和碟(disc)包括压缩碟(CD)、激光碟、光碟、数字多用碟(DVD)、软盘、以及蓝光碟,其中盘常常磁性地再现数据,而碟用激光光学地再现数据。上述的组合应当也被包括在计算机可读介质的范围内。
除了存储在计算机可读介质上,指令和/或数据还可作为包括在通信装置中的传输介质上的信号来提供。例如,通信装置可包括具有指示指令和数据的信号的收发机。这些指令和数据被配置成使一个或多个处理器实现权利要求中叙述的功能。
尽管已详细描述了本公开及其优势,但是应当理解,可在本文中作出各种改变、替代和变更而不会脱离如由所附权利要求所定义的本公开的技术。例如,尽管SRAM和MRAM作为存储器类型来描述,但其他存储器类型也被构想到,诸如DRAM、PCRAM等。而且,本申请的范围并非旨在被限定于说明书中所描述的过程、机器、制造、物质组成、装置、方法和步骤的特定配置。如本领域的普通技术人员将容易从本公开领会到的,根据本公开,可以利用现存或今后开发的与本文所描述的相应配置执行基本相同的功能或实现基本相同结果的过程、机器、制造、物质组成、装置、方法或步骤。因此,所附权利要求旨在将这样的过程、机器、制造、物质组成、装置、方法或步骤包括在其范围内。

Claims (20)

1.一种混合高速缓存装置,包括:
第一类型的存储器;
第二类型的存储器;以及
第一高速缓存线,其包括所述第一类型的存储器中的第一存储器位置以及所述第二类型的存储器中的第二存储器位置,所述第一高速缓存线被配置成用于在高速缓存访问操作期间在访问所述第二存储器位置之前访问所述第一存储器位置。
2.如权利要求1所述的混合高速缓存装置,其特征在于,所述第一存储器位置包括所述第一高速缓存线的第一字位置。
3.如权利要求1所述的混合高速缓存装置,其特征在于,所述混合高速缓存装置被配置成用于在所述第一存储器位置中存储被高速缓存的信息的关键字。
4.如权利要求1所述的混合高速缓存装置,其特征在于,所述第二类型的存储器包括电阻性存储器。
5.如权利要求1所述的混合高速缓存装置,其特征在于,所述第一类型的存储器包括静态随机存取存储器(SRAM),并且所述第二类型的存储器包括磁性随机存取存储器(MRAM)。
6.如权利要求1所述的混合高速缓存装置,其特征在于,进一步包括:
第一存储器排,其包括所述第一类型的存储器和所述第二类型的存储器;以及
第二存储器排,其包括所述第一类型的存储器和所述第二类型的存储器。
7.如权利要求1所述的混合高速缓存装置,其特征在于,进一步包括:
第二高速缓存线,其包括所述第一类型的存储器中的第三存储器位置以及所述第二类型的存储器中的第四存储器位置,所述第二高速缓存线被配置成用于在所述高速缓存访问操作期间在访问所述第二存储器位置之前访问所述第三存储器位置。
8.如权利要求1所述的混合高速缓存装置,其特征在于,所述混合高速缓存装置被集成在移动电话、机顶盒、音乐播放器、视频播放器、娱乐单元、导航设备、计算机、手持式个人通信系统(PCS)单元、便携式数据单元、和/或位置固定的数据单元中。
9.一种用于访问混合高速缓存装置的方法,包括:
在第一高速缓存线的第一类型的存储器中存储被高速缓存的信息的第一部分;
在所述第一高速缓存线的第二类型的存储器中存储所述被高速缓存的信息的第二部分;以及
在高速缓存访问操作期间在访问所述被高速缓存的信息的第二部分之前访问所述被高速缓存的信息的第一部分。
10.如权利要求9所述的方法,其特征在于,所述第二类型的存储器包括电阻性存储器。
11.如权利要求9所述的方法,其特征在于,所述第一类型的存储器包括静态随机存取存储器(SRAM),并且所述第二类型的存储器包括磁性随机存取存储器(MRAM)。
12.如权利要求11所述的方法,其特征在于,进一步包括,在所述第一高速缓存线的所述SRAM中存储所述被高速缓存的信息的关键字。
13.如权利要求9所述的方法,其特征在于,访问所述第一部分发生在所述第二类型的存储器达到就绪状态之前。
14.如权利要求9所述的方法,其特征在于,进一步包括:
在第二高速缓存线的第一类型的存储器中存储被高速缓存的信息的第三部分;
在所述第二高速缓存线的第二类型的存储器中存储所述被高速缓存的信息的第四部分;以及
在所述高速缓存访问操作期间在访问所述被高速缓存的信息的第二部分之前访问所述被高速缓存的信息的第三部分。
15.如权利要求9所述的方法,其特征在于,进一步包括:将所述混合高速缓存装置集成到移动电话、机顶盒、音乐播放器、视频播放器、娱乐单元、导航设备、计算机、手持式个人通信系统(PCS)单元、便携式数据单元、和/或位置固定的数据单元中。
16.一种混合高速缓存设备,包括:
用于在第一高速缓存线的静态随机存取存储器(SRAM)位置中存储被高速缓存的信息的第一部分的装置;
用于在所述第一高速缓存线的电阻性随机存取存储器部分中存储所述被高速缓存的信息的第二部分的装置;以及
用于在高速缓存访问操作期间在访问所述被高速缓存的信息的第二部分之前访问所述被高速缓存的信息的第一部分的装置。
17.如权利要求16所述的混合高速缓存设备,其特征在于,进一步包括:
用于在所述第一高速缓存线的SRAM位置中存储所述被高速缓存的信息的关键字的装置。
18.如权利要求16所述的混合高速缓存设备,其特征在于,进一步包括:
第一存储器排,其包括用于存储所述第一部分的装置以及用于存储所述第二部分的装置;以及
第二存储器排,其包括所述用于存储所述第一部分的装置以及所述用于存储所述第二部分的装置。
19.如权利要求16所述的混合高速缓存设备,其特征在于,进一步包括:
用于在第二高速缓存线的静态随机存取存储器(SRAM)位置中存储被高速缓存的信息的第三部分的装置;
用于在所述第二高速缓存线的电阻性随机存取存储器部分中存储所述被高速缓存的信息的第四部分的装置;以及
用于在所述高速缓存访问操作期间在访问所述被高速缓存的信息的第二部分之前访问所述被高速缓存的信息的第三部分的装置。
20.如权利要求16所述的混合高速缓存设备,其特征在于,所述混合高速缓存设备被集成在移动电话、机顶盒、音乐播放器、视频播放器、娱乐单元、导航设备、计算机、手持式个人通信系统(PCS)单元、便携式数据单元、和/或位置固定的数据单元中。
CN201480013145.3A 2013-03-15 2014-03-13 混合存储器类型混合高速缓存 Active CN105009095B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/843,190 US9304913B2 (en) 2013-03-15 2013-03-15 Mixed memory type hybrid cache
US13/843,190 2013-03-15
PCT/US2014/025971 WO2014151548A1 (en) 2013-03-15 2014-03-13 Mixed memory type hybrid cache

Publications (2)

Publication Number Publication Date
CN105009095A true CN105009095A (zh) 2015-10-28
CN105009095B CN105009095B (zh) 2017-12-05

Family

ID=50628954

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480013145.3A Active CN105009095B (zh) 2013-03-15 2014-03-13 混合存储器类型混合高速缓存

Country Status (6)

Country Link
US (1) US9304913B2 (zh)
EP (1) EP2972892B1 (zh)
JP (1) JP6154060B2 (zh)
KR (1) KR20150132360A (zh)
CN (1) CN105009095B (zh)
WO (1) WO2014151548A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111326189A (zh) * 2018-12-17 2020-06-23 Arm 有限公司 读取和/或写入存储器操作期间的选择性时钟调整

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5520747B2 (ja) * 2010-08-25 2014-06-11 株式会社日立製作所 キャッシュを搭載した情報装置及びコンピュータ読み取り可能な記憶媒体
CN107533459B (zh) 2016-03-31 2020-11-20 慧与发展有限责任合伙企业 使用电阻存储器阵列的数据处理方法和单元
US10437798B2 (en) 2016-07-19 2019-10-08 Sap Se Full system simulator and memory-aware splay tree for in-memory databases in hybrid memory systems
US11977484B2 (en) 2016-07-19 2024-05-07 Sap Se Adapting in-memory database in hybrid memory systems and operating system interface
US10540098B2 (en) 2016-07-19 2020-01-21 Sap Se Workload-aware page management for in-memory databases in hybrid main memory systems
US10783146B2 (en) 2016-07-19 2020-09-22 Sap Se Join operations in hybrid main memory systems
US10698732B2 (en) 2016-07-19 2020-06-30 Sap Se Page ranking in operating system virtual pages in hybrid memory systems
US10474557B2 (en) 2016-07-19 2019-11-12 Sap Se Source code profiling for line-level latency and energy consumption estimation
US10387127B2 (en) * 2016-07-19 2019-08-20 Sap Se Detecting sequential access data and random access data for placement on hybrid main memory for in-memory databases
US10452539B2 (en) 2016-07-19 2019-10-22 Sap Se Simulator for enterprise-scale simulations on hybrid main memory systems
US10235299B2 (en) 2016-11-07 2019-03-19 Samsung Electronics Co., Ltd. Method and device for processing data
US20180374893A1 (en) * 2017-06-22 2018-12-27 Globalfoundries Singapore Pte. Ltd. Differential sensing cell design for stt mram
US11010379B2 (en) 2017-08-15 2021-05-18 Sap Se Increasing performance of in-memory databases using re-ordered query execution plans
WO2019212466A1 (en) * 2018-04-30 2019-11-07 Hewlett Packard Enterprise Development Lp Resistive and digital processing cores

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1211798A (zh) * 1997-09-16 1999-03-24 日本电气株式会社 半导体集成电路器件
US6292426B1 (en) * 1999-05-31 2001-09-18 Fujitsu Limited Semiconductor memory device having an SRAM and a DRAM on a single chip
US20090144503A1 (en) * 2007-12-04 2009-06-04 Faucher Marc R Method and system for integrating sram and dram architecture in set associative cache
CN101174245B (zh) * 2006-11-02 2010-06-09 国际商业机器公司 混合数据存储的方法和装置及混合存储设备
US20120233377A1 (en) * 2011-03-11 2012-09-13 Kumiko Nomura Cache System and Processing Apparatus

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08328949A (ja) * 1995-06-06 1996-12-13 Mitsubishi Electric Corp 記憶装置
JP3604296B2 (ja) * 1998-01-22 2004-12-22 松下電器産業株式会社 半導体メモリおよびメモリシステム
JP2002351741A (ja) * 2001-05-30 2002-12-06 Matsushita Electric Ind Co Ltd 半導体集積回路装置
US7293141B1 (en) * 2005-02-01 2007-11-06 Advanced Micro Devices, Inc. Cache word of interest latency organization
JP4437489B2 (ja) 2006-10-25 2010-03-24 株式会社日立製作所 揮発性キャッシュメモリと不揮発性メモリとを備えたストレージシステム
US7568068B2 (en) 2006-11-13 2009-07-28 Hitachi Global Storage Technologies Netherlands B. V. Disk drive with cache having volatile and nonvolatile memory
WO2010148359A1 (en) * 2009-06-18 2010-12-23 Cypress Semiconductor Corporation Memory devices and systems including multi-speed access of memory modules
US8914568B2 (en) 2009-12-23 2014-12-16 Intel Corporation Hybrid memory architectures
JP5627521B2 (ja) 2011-03-24 2014-11-19 株式会社東芝 キャッシュシステムおよび処理装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1211798A (zh) * 1997-09-16 1999-03-24 日本电气株式会社 半导体集成电路器件
US6292426B1 (en) * 1999-05-31 2001-09-18 Fujitsu Limited Semiconductor memory device having an SRAM and a DRAM on a single chip
CN101174245B (zh) * 2006-11-02 2010-06-09 国际商业机器公司 混合数据存储的方法和装置及混合存储设备
US20090144503A1 (en) * 2007-12-04 2009-06-04 Faucher Marc R Method and system for integrating sram and dram architecture in set associative cache
US20120233377A1 (en) * 2011-03-11 2012-09-13 Kumiko Nomura Cache System and Processing Apparatus

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
余新: "基于页面分类与放置策略的混合缓存管理机制研究", 《万方学术论文数据库》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111326189A (zh) * 2018-12-17 2020-06-23 Arm 有限公司 读取和/或写入存储器操作期间的选择性时钟调整
CN111326189B (zh) * 2018-12-17 2023-10-03 Arm 有限公司 读取和/或写入存储器操作期间的选择性时钟调整

Also Published As

Publication number Publication date
WO2014151548A1 (en) 2014-09-25
JP2016515274A (ja) 2016-05-26
US9304913B2 (en) 2016-04-05
JP6154060B2 (ja) 2017-06-28
EP2972892B1 (en) 2021-04-14
KR20150132360A (ko) 2015-11-25
EP2972892A1 (en) 2016-01-20
CN105009095B (zh) 2017-12-05
US20140281184A1 (en) 2014-09-18

Similar Documents

Publication Publication Date Title
CN105009095A (zh) 混合存储器类型混合高速缓存
JP5940195B2 (ja) 複数命令ストリームメモリシステム
JP5672514B2 (ja) 抵抗性記憶素子を含むマルチポート不揮発性メモリ
CN104620319A (zh) 在单元中具有多个磁隧道结器件的otp方案
CN105745716B (zh) 偏移消除双阶段感测电路、感测方法及感测装置
CN104620320A (zh) 具有反向mtj连接的otp单元
US8929167B2 (en) MRAM self-repair with BIST logic
US9411727B2 (en) Split write operation for resistive memory cache
CN104620318A (zh) 具有由数据单元和参考单元共享的写驱动器的mram
KR20170133072A (ko) 저항성 메모리 장치 및 이를 포함하는 집적 회로
US10311931B2 (en) Semiconductor memory device
CN104520934A (zh) 单片多通道可自适应stt-mram
Fong et al. Non-volatile complementary polarizer spin-transfer torque on-chip caches: A device/circuit/systems perspective
US20120218815A1 (en) Magnetic Random Access Memory (MRAM) Read With Reduced Disburb Failure
Bishnoi et al. Low-power multi-port memory architecture based on spin orbit torque magnetic devices
US8593173B2 (en) Programmable logic sensing in magnetic random access memory
JP6557488B2 (ja) 不揮発性メモリ装置及びそれを含む格納装置、それの書込み方法及び読出し方法
Oboril et al. Spin Orbit Torque memory for non-volatile microprocessor caches

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant