CN104575568B - 用于混合存储器的系统、方法和装置 - Google Patents

用于混合存储器的系统、方法和装置 Download PDF

Info

Publication number
CN104575568B
CN104575568B CN201510062141.0A CN201510062141A CN104575568B CN 104575568 B CN104575568 B CN 104575568B CN 201510062141 A CN201510062141 A CN 201510062141A CN 104575568 B CN104575568 B CN 104575568B
Authority
CN
China
Prior art keywords
memory
dice
logic circuit
logic
error
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
CN201510062141.0A
Other languages
English (en)
Other versions
CN104575568A (zh
Inventor
D·邓宁
B·卡斯珀
R·穆尼
M·曼苏里
J·E·若斯
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.)
Intel Corp
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Publication of CN104575568A publication Critical patent/CN104575568A/zh
Application granted granted Critical
Publication of CN104575568B publication Critical patent/CN104575568B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • 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/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/406Management or control of the refreshing or charge-regeneration cycles
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/02Disposition of storage elements, e.g. in the form of a matrix array
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/152Bose-Chaudhuri-Hocquenghem [BCH] codes
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/01Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
    • H01L2224/10Bump connectors; Manufacturing methods related thereto
    • H01L2224/15Structure, shape, material or disposition of the bump connectors after the connecting process
    • H01L2224/16Structure, shape, material or disposition of the bump connectors after the connecting process of an individual bump connector
    • H01L2224/161Disposition
    • H01L2224/16135Disposition the bump connector connecting between different semiconductor or solid-state bodies, i.e. chip-to-chip
    • H01L2224/16145Disposition the bump connector connecting between different semiconductor or solid-state bodies, i.e. chip-to-chip the bodies being stacked
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Algebra (AREA)
  • Pure & Applied Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Dram (AREA)
  • Semiconductor Memories (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Detection And Correction Of Errors (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

本发明的实施例总体上针对一种用于混合存储器的系统、方法和装置。在一个实施例中,混合存储器可以包括封装衬底。该混合存储器还可以包括附着到封装衬底的第一侧的混合存储缓冲器芯片。高速输入/输出(HSIO)逻辑支持与处理器的HSIO接口。混合存储器还包括用于支持在HSIO接口上的分组处理协议的分组处理逻辑。另外,混合存储器还具有垂直地堆叠在混合存储缓冲器上的一个或多个存储器瓦片。

Description

用于混合存储器的系统、方法和装置
本申请是申请日为2010年12月10日、申请号为201080054325.8、发明名称为“用于混合存储器的系统、方法和装置”的中国发明专利申请的分案申请。
技术领域
本发明的实施例总体上涉及集成电路领域,并且更具体地,涉及用于混合存储器的系统、方法和装置。
背景技术
由于存储器导致了未来微处理器系统的关键瓶颈,所以对存储器带宽、功率效率和形状因数的优化变得日益重要。大部分的CPU系统利用基于动态随机存取存储器(DRAM)的大容量存储器解决方案来提供容量和带宽是常见的。然而,DRAM工艺技术主要是针对容量和成本进行优化的,却牺牲了带宽和功率效率。另一方面,通常用于CPU的逻辑工艺技术是针对逻辑密度、功率效率和带宽进行优化的,其缺陷是较高的成本以及较低的存储密度。
附图说明
在附图的图中,通过示例而非限制的方式示出了本发明的实施例,在附图中,类似的参考数字指代类似的元件。
图1是示出了实施至少一个混合存储设备的计算系统的所选择方面的高级框图。
图2示出了混合存储设备的实施例的更详细的视图。
图3A示出了包括在混合存储器封装中的层覆盖型(strata-footprint)全混合存储缓冲器的实施例的侧视图。
图3B示出了包括在混合存储器封装中的层覆盖型全混合存储缓冲器的实施例的俯视图。
图4A示出了包括在混合存储器封装中的小覆盖型(small-footprint)局部混合存储缓冲器的实施例的侧视图。
图4B示出了包括在混合存储器封装中的小覆盖型局部混合存储缓冲器的实施例的分解侧视图。
图4C示出了包括在混合存储器封装中的小覆盖型局部混合存储缓冲器的实施例的俯视图。
图5示出了混合存储器封装的可替换实施例的侧视图。
图6描述了在每个存储器层或存储器瓦片(tile)中实施的用于在初始化期间能够动态地进行独立寻址的扫描链逻辑的实施例。
图7是混合存储设备中的存储器瓦片的实施例的框图。
图8是混合存储设备中的存储缓冲器的实施例的框图。
图9示出了利用混合堆叠式存储器的两级存储系统的实施例。
图10是利用自适应功率逻辑来优化向混合存储设备输送的功率的过程的实施例的流程图。
图11是利用自适应刷新逻辑来优化向混合存储设备输送的功率的过程的实施例的流程图。
具体实施方式
实施例总体上针对用于实施混合存储器的系统、方法和装置。
图1是示出了实施至少一个混合存储设备的计算系统的所选择方面的高级框图。
示出了计算机系统100。该计算机系统可以是台式计算机、服务器、工作站、膝上型计算机、手持设备、电视机顶盒、媒体中心、游戏机、(例如车辆中的)集成系统或其他类型的计算机系统。在若干实施例中,该计算机系统100包括用于将若干部件耦合在一起的系统板102(即,母板)。例如,系统板102能够通过使用导线线路和特定的接口来耦合部件。系统板102可以向被耦合的部件输送功率。另外,系统板可以提供用于允许多个部件彼此通信的通信接口。
在耦合到系统板102的部件中有一个或多个中央处理单元(CPU)。虽然在许多实施例中可能存在许多CPU,但是在图1中所示的实施例中,为了清楚起见,仅示出了一个CPU,即CPU 104。CPU 104可以是公司的CPU或另一品牌的CPU。CPU 104包括一个或多个核。在所示的实施例中,CPU 104包括四个核:核A(106)、核B(108)、核C(110)和核D(112)。在其他实施例中,CPU 104可以具有大于或小于图1所示的四个核的多个核。在许多实施例中,每个核(诸如核A(106))包括内部功能块,诸如一个或多个执行单元、引退单元、一组通用和专用寄存器等。如果图1中所示的核是多线程的或超线程的,则每个硬件线程也可以被认为是核。
CPU 104还可以包括一个或多个高速缓存器,诸如高速缓存器114。在未示出的许多实施例中,实施了除了高速缓存器114之外的额外高速缓存器,其中在存储器与每个核中的执行单元之间存在多级高速缓存器。在不同的实施例中,可以以不同的方式来分配高速缓存器。在不同的实施例中,高速缓存器114可以具有许多不同大小中的一个大小。例如,高速缓存器114可以是8兆字节(MB)高速缓存器、16MB高速缓存器等。另外,在不同的实施例中,高速缓存器可以是直接映射高速缓存器、全关联高速缓存器、多路组关联高速缓存器、或者具有其他类型的映射的高速缓存器。每个高速缓存器可以包括在相应CPU中的所有核之间被共享的一个较大部分,或者可以被划分成若干个分离的功能片(例如,每个核具有一个片)。每个高速缓存器还可以包括在所有核之间被共享的一个部分以及作为每个核的单独功能片的若干个其他部分。
在许多实施例中,CPU 104通信地耦合到一个或多个混合存储设备,诸如116。混合存储器包括垂直堆叠并至少部分地通过附着在衬底118上的混合存储缓冲器120耦合到衬底118的多个存储器瓦片布局。在许多实施例中,给定存储器瓦片的基本结构可以是动态随机存取存储器(DRAM)的基本结构。
混合存储器116设备通过高速(HS)输入/输出链路122(即,互连、总线等)通信地耦合到CPU 104。HS链路122通过HS输入/输出(I/O)接口124通信地耦合到CPU 104。在不同的实施例中,CPU 104和混合存储器116可以通过使用PCI快速接口、全缓冲双列直插式存储器模块(DIMM)接口、可调节存储器接口(SMI)、专有点到点接口(诸如的QuickPath技术)或其他这样的高速接口进行通信。
在许多实施例中,链路122可以包括能够传输数据、地址、控制和/或时钟信息的一个或多个光学导线、金属导线或其他导线(即,线路)。在许多实施例中,所述链路是包括多条通路的高速串行接口,每条通路在CPU与混合存储器116之间传输分组化的数据。
在许多实施例中,CPU 104包括用于转换在HS链路122上发送和接收的信息的存储控制器126。存储控制器126耦合到HS I/O接口124以获得对链路122的访问。在未示出的其他实施例中,存储控制器126可以是直接耦合到系统板102或潜在地集成在耦合到系统板102的另一设备(例如,存储控制器集线器)中的分立设备。
为了清楚起见,没有示出通常存在于计算机系统100中的其他的设备。这些设备可以包括一个或多个额外的CPU、可以允许CPU 104耦合到图形和/或通信子系统的高性能集线器综合体。额外的部件可以包括容纳I/O适配器的一个或多个I/O综合体,所述I/O适配器用于转换CPU和包括I/O设备的I/O子系统(例如,大容量存储设备、通用串行总线(USB)设备等)之间的通信。一些I/O设备可以包括用于允许通过直接存储器存取(DMA)事务来从这种I/O设备直接访问混合存储器116的DMA能力。
图2示出了混合存储设备的实施例的更详细的视图。
混合存储设备200的结构可以包括许多存储器瓦片,诸如存储器瓦片202。存储器瓦片202包括至少一个存储器阵列,即瓦片中的每个阵列由比特存储单元栅格构成,每个存储单元通过列和行解码器进行寻址。存储器瓦片的详细框图在图7中示出,在下文进行描述。
返回到图2,存储器瓦片栅格构成了单个存储器层204。在图2中,存储器层204由较粗的线特别指示,从而突出了(耦合到存储器衬底208的)混合存储缓冲器206上的单个级处的所有瓦片。更具体地,存储器层可以包括3D空间(3D空间坐标参照系在图2的顶部示出)中的X和Y方向上的任意数量的存储器瓦片的栅格。例如,在图2中所示的实施例中,存储器层(诸如存储器层204)是X方向上的6个瓦片乘以Y方向上的8个瓦片,每层总共是48个瓦片。
在许多实施例中,存在着堆叠在彼此顶部的若干个存储器层。在图2中,在堆叠中总共有8层。在该堆叠的底部示出的混合存储缓冲器206可以包括若干个形状中的一个形状。图2中所示的形状是层覆盖型全混合存储缓冲器,其涵盖了与堆叠于其顶部上的存储器层相同数量的X、Y方向实际面积(real estate)。在许多其他实施例中,混合存储缓冲器包括紧凑型局部混合存储缓冲器,其在X、Y方向上利用比层覆盖型明显少的空间。局部混合存储缓冲器在图4A-4C中示出,将在下文中进行描述。
关于图2中所示的层覆盖型全混合存储缓冲器206,在瓦片的每一垂直列(诸如突出的列X0,Y7(用虚线示出))的下面,存在着存储缓冲器(MB)瓦片,诸如MB瓦片212。MB瓦片包括用于与该MB瓦片对齐的特定列中的存储器瓦片的缓冲器功能。在许多实施例中,为了访问整个存储器瓦片列(例如,列210),一组硅通孔(TSV)(诸如TSV 214)穿过该列中的每个相应层中的每个瓦片。图8示出了混合存储缓冲器功能块的详细框图,将在下面进一步详细描述该图。
在许多不同的实施例中,存储器衬底208可以由许多类型的衬底布局中的一种构成,虽然为了有助于讨论的清楚性没有描述衬底的具体示例性布局。
图3A示出了包括在混合存储器封装中的层覆盖型全混合存储缓冲器的实施例的侧视图。
在一些实施例中,全混合存储缓冲器300通过S到S EC 304耦合到封装衬底302。另外,在一些实施例中,S到S EC 304可以包括球栅阵列(BGA)。在未示出的其他实施例中,可以存在着被利用的另一种类型的耦合机制(例如,针栅阵列(PGA))。
存储器层直接堆叠在彼此的顶部。在图3A中所示的实施例中,在堆叠中存在4个存储器层:存储器层306、308、310和312。在许多实施例中,利用接合材料将每个存储器层接合到所述堆叠上的下一存储器层。全混合存储缓冲器通过使用TSV 314和316耦合到每个存储器层。TSV 314和316具有输送功率和信息的能力(即,各个TSV可以从全混合存储缓冲器向存储器层306-312输送数据、地址、时钟和控制信号,以及从存储器层306-312向全混合存储缓冲器输送数据)。
全混合存储缓冲器300可以部分地由于全混合存储缓冲器300的大小而完全控制对每个存储器层306-312的功率输送。例如,一些硅到衬底(S到S)电连接(EC)304是功率输送线。在一些实施例中,S到S EC 304包括焊接凸点,虽然在其他实施例中它们可以包括其他连接技术。由于从封装衬底302穿过S到S EC 304的每条线到达全混合存储缓冲器300,所以该存储缓冲器可以实施用于开启并给包括层堆叠在内的整个设备、给各个存储器层或者甚至可能给给定存储器层内的各个瓦片供电的功率选通方案。
在其他实施例中,全混合存储缓冲器300可以包括集成的电压调节器(VR),该电压调节器能够动态地修改供应给整个设备或者该设备的一部分的电压。通过封装衬底302输送的电压可以源自位于系统板上的功率输送子系统,该功率输送子系统可以包括若干个VR,每个VR向跨越系统板的多个部分的各个功率层输送功率。
图3B示出了包括在混合存储器封装中的层覆盖型全混合存储缓冲器的实施例的俯视图。
图3B中所示的实线栅格包括一组存储缓冲器瓦片(318)。从这个角度示出MB瓦片栅格318,以说明每个MB瓦片相对于存储器瓦片列中的底部存储器瓦片的布置。MB瓦片栅格318是对全混合存储缓冲器300的自顶向下观看,其被划分成全混合存储缓冲器300所包括的相应MB瓦片。
图3B中所示的虚线栅格包括直接位于MB瓦片栅格318顶部上的第一层(对应于存储器层306)中的一组存储器瓦片。存储器瓦片栅格320稍微偏离MB瓦片栅格318,这特别是为了能够示出位于彼此顶部的两个分离的栅格(通常这些栅格将被逐个瓦片地对齐)。
还在图3B中示出了TSV(322),如上面讨论的那样,TSV 322提供了在MB瓦片栅格318与存储器瓦片栅格320之间输送功率和数据的方式。对应于存储器层308、310和312的额外的存储器瓦片栅格将常规地存在于图3B中,但是为了图的清楚起见并没有示出。
图4A示出了包括在混合存储器封装中的小覆盖型局部混合存储缓冲器的实施例的侧视图。
局部混合存储缓冲器(HMB)400位于从封装衬底402中雕刻出的凹陷中。该凹陷可以被称为HMB插座404。在许多实施例中,存储器层(即,存储器层406、408、410和412)的堆叠直接位于HMB 400上方,虽然HMB400并没有跨越所述堆叠中的存储器瓦片列栅格的整个宽度和长度。相反地,HMB 400位于包括存储器层堆叠的存储器瓦片列栅格的中心。在这些实施例中,HMB 400可以通过再分布层(RDL)线或另一种类型的耦合机制耦合到TSV(例如,TSV414和416)。
HMB 400具有比图3A和图3B中所示的层大小型存储缓冲器更密和成本更低的可能性,这是因为HMB 400芯片封装没有宽带和长度大小的要求。另外,由于HMB 400芯片封装没有覆盖存储器层的整个宽带和长度,所以存储器层堆叠可以直接从封装衬底402接收功率。
在一些实施例中,局部HMB 400可以包括集成的VR,该VR能够动态地修改供应给整个存储器堆叠或该堆叠的一部分的电压。通过封装衬底402输送的电压可以源自位于系统板上的功率输送子系统,该功率输送子系统可以包括若干个VR,每个VR向跨越系统板的多个部分的各个功率层输送功率。
图4B示出了包括在混合存储器封装中的混合大小型存储缓冲器的实施例的分解侧视图。
图4B包括与图4A相同的部件。图4B的目的是在分解视图中示出不同部件之间的具体耦合。在许多实施例中,存在着将HMB 400耦合到TSV(例如TSV 414和416)的RDL线418。RDL线418可以被布置在存储器堆叠的整个底部,以将源自HMB 400顶部的每个数据、地址、时钟和控制引脚耦合到它们各自的TSV。在其他实施例中,将导线接合而非RDL线用于耦合机制。
在许多实施例中,额外的RDL线创建了HMB-衬底耦合420。HMB-衬底耦合420仅是用于从封装衬底420向HMB 402传递信息和功率的许多可能的耦合中的一个耦合的说明性示例。在许多实施例中,HMB 400在HS链路(图1中的122)上以分组的形式发送和接收信息。
输入分组通过HMB-衬底耦合420到达HMB 400,而输出分组通过HMB-衬底耦合420从HMB 400发送到计算机系统中的其他部件。构成HMB-衬底耦合420的某些RDL线还从封装衬底402向HMB 400输送功率。
在未示出的另一实施例中,HMB 400可以通过HMB 400的底部上的耦合点球栅阵列耦合到封装衬底。在该实施例中,HMB插座404包括该阵列的耦合球。尽管如此,该特定实施例可能需要在封装衬底402中进行非标准的电布线,这是因为该衬底在HMB插座404的基底与该衬底的底部之间更薄。
如上面参照图4A提到的,使用HMB 400允许通过存储器层-衬底耦合422将存储器层堆叠直接耦合到封装衬底。该耦合允许从封装衬底到存储器层堆叠的直接功率输送,而不是依赖于通过缓冲器安排的功率输送(如在图3A和3B中的层大小型缓冲器的情况)。功率输送存储器层-衬底耦合422将存储器层406(即所述堆叠的底部层)直接耦合到衬底。然后,通过TSV414和416将功率向上输送到所述堆叠中的所有存储器层。再次地,图4B中的存储器层-衬底耦合422是单个耦合的示例性说明,但是实际上,贯穿衬底上的BGA可能存在许多与存储器层堆叠的耦合。
图4C示出了包括在混合存储器封装中的局部混合存储缓冲器的实施例的俯视图。
图4C中所示的HMB 400位于存储器层堆叠下方的中央,以最小化RDL线418的所需要的长度。存储器层堆叠中的底部存储器层由虚线的存储器瓦片栅格424示出。所示出的存储器瓦片栅格424包括4×4的存储器瓦片426栅格。
HMB 400通过RDL线418耦合到栅格中的每个存储器瓦片。这些导线接合418耦合到耦合HMB的TSV 426。另外,栅格中的每个存储器瓦片还包括一个或多个耦合衬底的TSV428。在许多实施例中,耦合HMB的TSV426向存储器层堆叠输送信息(即,数据、地址、时钟和控制信号)。另外,在许多实施例中,耦合衬底的TSV 428向存储器层堆叠输送功率。
图5示出了混合存储器封装的可替换实施例的侧视图。
图5中的HMB 500在包括存储器层504、506、508和510的存储器层堆叠的旁边耦合到封装衬底502。存储器层堆叠中的每个存储器层具有一组焊接凸点512。每个存储器层布线的顶部上的RDL线514被布置到所述层的边缘,其中使用接合导线516将RDL线耦合到封装衬底502。
使用接合导线516在RDL与衬底之间传递功率和信息(即,数据、地址、时钟和控制信号)两者。在所示的实施例中,在存储器层堆叠中不需要TSV,这是因为功率和信息的输送由接合导线516来处理。在未示出的其他实施例中,可以在存储器层堆叠中利用TSV,而不是RDL线和接合导线。
从封装衬底502处的接合导线耦合向HMB 500布置信息输送线。在许多实施例中,封装衬底502处的接合导线耦合位置通过封装衬底迹线耦合到HMB 500。图5中的存储设备封装的优点包括更简单的封装衬底502,不需要HMB插座也不需要TSV,这可能允许每个存储器层中的存储器瓦片被更有效地设计,这是因为若干TSV否则会占据存储器瓦片中的电路之中的不必要的实际面积。图5中的存储设备封装的坏处可能包括在HMB500与存储器层堆叠之间引入更复杂或更长的时序需求,这是因为HMB 500与所述堆叠明显分开了。
在一些实施例中,HMB 500可以包括集成的VR,该VR能够动态地修改供应给整个存储器堆叠或该堆叠的一部分的电压。通过封装衬底502输送的电压可以源自位于系统板上的功率输送子系统,该功率输送子系统可以包括若干个VR,每个VR向跨越系统板的多个部分的各个功率层输送功率。
返回图2,每个存储器瓦片列(诸如存储器瓦片列210)需要允许访问特定瓦片中的特定存储单元的寻址方案。因此,存储缓冲器206用来对存储器列中的给定存储单元进行寻址的寻址方案将考虑所述列中的哪个瓦片正在被寻址。例如,在图2中,每个存储器瓦片列中有8个瓦片,3比特的地址可以在所述列中的瓦片Z0至Z7之间进行区分。
对于堆叠式配置而言,每个层将被独立地寻址。在一些实施例中,利用存储缓冲器206与每个存储器层之间的点到点连接。然而,由于需要大量的额外TSV来实施完全的点到点实现方式,所以点到点连接将导致显著的面积开销。可以用来对列中的每个存储器瓦片进行独立寻址的另一过程是通过将唯一RDL设计或顶层金属设计用于所述堆叠的每一层来独立地对每一层的唯一选择字进行硬编码。尽管如此,硬编码导致显著的成本和制造开销。
这些解决方案的替换方式是在计算机系统的初始化期间实施扫描链过程,以便能够在每一层处实现独立寻址。
图6描述了在每个存储器层或存储器瓦片中实施的用于在初始化期间能够动态地进行独立寻址的扫描链逻辑的实施例。
图6中的扫描链逻辑600表示包括在每个存储器层602层以及潜在的每个存储器瓦片中的逻辑的实施例。该逻辑利用TSV堆叠技术,在该技术中,独立于金属堆叠对硅通孔进行处理。在所述层的一侧上对扫描数据输入进行访问,而在所述层的另一侧上对扫描数据输出进行访问。然而,扫描数据输入和扫描数据输出都被物理地对齐,使得当多个层被堆叠时,对于一个层的输入耦合到另一层的输出。扫描链被初始化,使得用唯一地址码来对每一层编程,该唯一地址码之后被用作输入地址选择的比较参考。将动态地址选择与静态地址选择进行比较,以产生针对公共选通信号的选通信号。
具体地,扫描数据输入值604进入触发器链(例如,FF 606、608、610和612)。触发器链由扫描链时钟614馈送。基于输入的值604,用与所述堆叠中的唯一层相对应的唯一值来对触发器链编程。来自触发器链的输出被馈送到比较器614中,比较器614将唯一比特值与页地址选择线616中的某些比特进行比较。
使用TSV通过整个层堆叠来发送页地址选择线616。页地址选择线中的与确定地址正在引用的特定层有关的特定比特也被输入到比较器614中。如果这两个地址匹配,则比较器614的输出被驱动为高,否则输出值保持为低。比较器614的输出值被馈送到与逻辑618中。
与逻辑618的另一输入是页地址选通620。因此,如果被馈送到比较器614中的两个地址匹配,则使用TSV通过存储器层堆叠馈送的页地址选通620可以在当前层处被利用(选通622)。如果所述地址不匹配,则页地址选通620被选通,并且不能被当前层602利用。
另外,触发器链可以继续另外的触发器624、626、628和630。这些触发器也能够通过利用扫描链时钟614和来自之前触发器链中的最后一个触发器612的输出而用唯一地址被编程。在许多实施例中,这些特定的触发器存储与存储体(bank)I/O选择线632中的某些比特相对应的唯一存储体I/O地址。
来自触发器624-630链的输出被馈送到比较器634中,比较器634将唯一比特值与存储体I/O选择线632中的某些比特进行比较。使用TSV通过整个层堆叠发送存储体I/O选择线632。存储体I/O选择线632中的与确定地址正在引用的特定层有关的特定比特也被输入到比较器634中。如果这两个地址匹配,则比较器634的输出被驱动为高,否则输出值保持为低。比较器634的输出值被馈送到与逻辑636中。
与逻辑636的另一输入是存储体I/O选通638。因此,如果被馈送到比较器634中的两个地址匹配,则使用TSV通过存储器层堆叠馈送的存储体I/O选通638可以在当前层处被利用(选通640)。如果所述地址不匹配,则页地址选通640被选通,并且不能被当前层602利用。
所述链中的最后一个触发器630的输出还被馈送到扫描数据输出值642中,该值642被用作所述堆叠中的下一存储器层的扫描数据输入。因此,通过在每一层中对该扫描链逻辑进行编程,能够将唯一地址分配给每一层,所述唯一地址能够用于选通或不选通供应给整个堆叠的页地址选通和存储体I/O选通。这允许只有被地址指向的层才能够利用选通,并因此执行存储器读和写操作。
在许多实施例中,该扫描链逻辑是在计算机系统的初始化期间由存储缓冲器进行编程的。每次初始化时进行这种动态编程允许在没有任何硬编码的情况下实施均匀的存储器瓦片,其中所述硬编码是针对每个瓦片在存储器层地址中进行编程所需要的。
图7是混合存储设备中的存储器瓦片的实施例的框图。
存储器瓦片A 700被示为位于存储器层堆叠的底层中的瓦片,这是因为存储缓冲器702邻近存储器瓦片A。层堆叠中的瓦片的垂直列以存储器瓦片B 704等等继续。这些瓦片都通过使用TSV(诸如时钟和控制TSV 706以及数据和地址TSV 708)耦合到存储缓冲器702。
这些TSV的实际实现将需要许多单独的TSV来至少传输数据和地址信息,但是具体地示出了单个的TSV线以便保持图的清楚。另外,除了示出了TSV迹线向存储器瓦片A 700提供时钟信号和控制信号以外,在存储器瓦片A 700中没有具体示出时钟和控制线的布置。这特别是为了简化框图以进一步保持清楚。
如之前讨论的,堆叠中的每一层中的每个存储器瓦片可以包括一个存储器阵列或多个存储器阵列。在图7中所示的实施例中,存储器瓦片A 700包括两个分离的存储器阵列,即存储器阵列710和712。
在许多实施例中,由存储缓冲器702在构成地址TSV的地址线上供应地址。所述地址由地址逻辑714接收。地址逻辑714确定来自存储缓冲器702的地址是否正在引用存储器瓦片A 700中的一个当前存储器阵列中的存储单元。在许多实施例中,这有必要利用在存储器初始化期间建立的扫描链瓦片逻辑600。上面已经参照图6讨论了扫描链瓦片逻辑600的实现。
如果该地址与当前地址单元相匹配,则地址逻辑714供应针对每个存储器阵列的行和列解码器:针对存储器阵列710的行解码器716和列解码器718以及针对存储器阵列712的行解码器720和列解码器722。通过这些解码器访问正确存储器阵列中的地址位置,并且之后从该存储器阵列中的所述单元中读取数据或将数据写入该存储器阵列中的所述单元。
例如,当从一个存储器阵列中的位置读取数据时,读出放大器(针对存储器阵列710和712分别是724和726)用于读出每个比特单元处的电压电平,以便数据能够被取出并被锁存在数据锁存器(针对存储器阵列710和712分别是728和730)中。然后该数据被填充到TSV数据线上并被读取到存储缓冲器702中。
图8是混合存储设备中的存储缓冲器的实施例的框图。
存储缓冲器800从封装衬底接收电压供应802,该封装衬底可以从集成到计算机系统中的系统板中的功率输送层接收电压。在许多实施例中,该电压供应对整个存储缓冲器800中的电路供电。存储缓冲器800包括在高速链路(诸如图1中的链路122)上发送和接收分组化数据的高速I/O接口804。高速链路可以包括从所述链路接收的HS数据输入806和发送到所述链路的HS数据输出808。
如上所述,所述链路可以包括PCI快速接口、全缓冲双列直插式存储器模块(DIMM)接口、可调节存储器接口(SMI)、专有点到点接口(诸的QuickPath技术)或其他这样的高速接口。在许多实施例中,所述链路具有多个通路,其中每个通路是高速双向串行接口。在许多实施例中,存在着包括整个链路的许多通路(例如,32条通路、128条通路、512条通路等)。
在许多实施例中,以事务为基础来实施存储器。这样,可以从CPU(图1中的104)发送存储器读取请求,而不必关注该请求何时将被完成。这些事务可以被分组化并在高速链路上被发送。在许多实施例中,可以通过重排序过程来优化这些事务。
例如,从HS链路以某个顺序接收到三个事务。这三个事务被输入到事务输入先进先出(FIFO)缓冲器810中。如果接收到的第一和第三事务正在请求来自存储器的同一页的数据,但是第二事务却利用不同的页,则事务排序逻辑812会意识到通过翻转第二事务和第三事务的顺序将需要关闭和打开更少的存储器页。这在事务存储系统中工作得很好,其中在事务存储系统中,原子地看待每个事务而不关注其他事务。
一旦事务被接收并且可能在事务输入FIFO缓冲器810中被重新排序,之后就由分组化/解分组化(P/D)逻辑814来处理这些事务。P/D逻辑814从分组中获取特定的存储器事务,并将它们转换成由层(诸如存储器层A816)中的存储器瓦片利用的基本地址/数据格式。在未示出的其他实施例中,P/D逻辑814位于事务输入FIFO 810的HS I/O接口814侧上。在这些实施例中,更一般地将事务排序逻辑812视为存储器访问重排序逻辑,这是因为是对特定的解分组化存储器事务而非分组进行重新排序。
当D/P逻辑814对从HS链路接收到的存储器事务进行解分组化时,通过TSV将地址和数据提供给存储器堆叠。具体地,地址TSV 818和数据TSV820。在许多实施例中,数据线被组合并能够通过将来自存储缓冲器800的数据馈送给存储器层堆叠中的存储单元来执行写操作以及通过将来自存储器层堆叠中的存储单元的数据馈送给存储缓冲器800来执行读操作。
另外,存储缓冲器800还可以从在该缓冲器中示出的功能块中的一个或多个功能块生成若干控制信号822。这些控制信号通过控制TSV 824被输出给存储器层堆叠。存储缓冲器800还包括用于生成通过时钟TSV 828提供给存储器层堆叠的时钟信号的时钟生成逻辑826。
存储缓冲器800还可以包括扫描链初始化逻辑830,其用于提供由图6中描述的扫描链瓦片逻辑利用的扫描数据832和扫描时钟834。扫描链初始化逻辑830可以在计算机系统引导时执行扫描链初始化。
在许多实施例中,存储缓冲器800包括能够实现针对存储设备中出现的错误的动态变通措施(workaround)的若干部件。在最小粒度的情况下,错误包括在读取存储单元时的不正确的结果。这些错误可以是涉及存储器瓦片中的故障部件的硬件错误(例如,读出放大器的电故障)或者由导致硬件的暂时故障的宇宙射线引起的软错误。硬错误通常是在被测试时呈现重复性结果的永久性错误,而软错误通常是只有一次的错误。
在许多实施例中,存储器中的硬件部件的故障可能部分地是由向存储设备进行的功率输送的修改引起的。例如,在低功率状态中,馈送给存储器层的电压可能不足以维持每个存储单元中的电荷。如果电荷不能被维持,则将出现存储器故障。可替换地,如果存储器的刷新率在频率上被降低到超过给定存储单元中的电荷充分消失的点,则也将出现存储器故障。存储器的刷新率与供应给该存储器的功率是相关的。供应给存储器的功率量越大,存储单元需要被刷新的频率就越低,这是因为电荷花费更长的时间进行消散。相反地,供应给存储器的功率量越少,存储单元需要被刷新的频率就越大。
在许多实施例中,存储缓冲器800包括动态错误变通措施逻辑836,该动态错误变通措施逻辑836提供用于将出现在存储器中的错误的影响最小化的若干能力。错误检查和校正(ECC)逻辑838提供用于在错误出现在存储器中时对错误进行检查并尝试校正错误的码。在一些实施例中,一些错误可以允许这种形式的校正。例如,存储缓冲器800可以包括一种BCH(Bose,Ray-Chaudhuri和Hocquenghem)纠错码,该纠错码潜在地具有在128比特块边界中校正单个比特错误并检测双比特错误的能力。尽管在存在硬错误(例如,存储器瓦片中的某个列正在呈现不正确的数据)的许多实施例中,可以利用多个更稳健的变通措施。
在一些实施例中,冗余控制逻辑840可以永久地关闭存储器阵列的多个部分。例如,如果特定存储器列中的若干比特正在重复地出现坏的测试结果,则冗余控制可以永久地关闭那个特定列。具体地,存储器的行可以仅需要32个比特,但是实际的存储器阵列可以实施33个比特。这样,冗余逻辑可以查看所有的列并确定哪一列呈现最大数量的重复性错误。这个确定的列可以被永久地禁用,而其他32比特宽的列则可以用于存储器行。
冗余逻辑包括多路复用器(MUX)逻辑842,其记录针对每个阵列可以关闭哪些列或行。在初始化期间,冗余控制840可以封锁每一阵列的未被使用的列和行。在其他实施例中,MUX逻辑842可以以比每个阵列更细或更粗的粒度来存储关于存储单元的信息。
除了冗余控制逻辑840以外,动态错误变通措施逻辑还可以实施高速缓存行禁用逻辑844,该高速缓存行禁用逻辑844包括用于禁用存储器页或行的能力。为了利用高速缓存行禁用逻辑844,存储缓冲器将额外地实施标签高速缓存器846。标签高速缓存器846对于使能硬件控制器第一级存储器或最后一级高速缓存器是特别有用的。例如,当在计算机系统中实施两级存储系统时,第一级存储器是针对功率效率和带宽而被优化的,但是由于成本限制可能具有中等的容量。第二级存储器可以是针对成本和容量而不必是针对带宽和功率效率而被优化的。
两级存储方案中的存储器的不同级通常对于CPU而言是不可见的。这提供了模块性和兼容性,而且还能够实现能够与远端存储器、近端存储器或2级存储器对话的统一的存储器接口。
图9示出了利用混合堆叠式存储器的两级存储系统的实施例。
图9中的两级存储系统包括具有存储控制器900的处理器。处理器/存储控制器900用存储子系统902发送和接收数据。存储子系统包括具有标签高速缓存器846的混合存储缓冲器800。混合存储缓冲器800耦合到存储器层堆叠904和远端存储器906。在许多实施例中,包括混合存储器堆叠的存储器瓦片是基于DRAM的器件。在不同的实施例中,远端存储器可以是非易失性存储器、相变存储器或其他类型的存储器技术。
在许多实施例中,以与在混合存储缓冲器与混合存储器堆叠904之间传递的数据块相同大小的64字节块的形式在处理器/存储控制器900与混合存储缓冲器之间传输数据。在许多实施例中,64字节块是在混合存储器堆叠中存储数据的最小粒度,而对于远端存储器,可以以4千字节块的形式来存储数据,这使得在混合存储缓冲器800与远端存储器906之间传输4千字节的数据块。
标签高速缓存器846可以存储每个远端存储器块(在该示例中,其大小是4千字节)的地址标签。每个标签还将伴随有有效比特、脏比特(dirty bit)、伪LRU标签和高速缓存行禁用比特。标签命中之后,混合存储缓冲器800从混合存储器堆叠904(第一级存储器)中取出64字节块。响应于标签未命中,将从远端存储器906(第二级)中取出4千字节块并将其存储在混合存储器堆叠904中。
另外,期望的64字节块将被转发给处理器/存储控制器900,而且适当的标签方式将被替换。替换策略将对混合存储器堆叠904中的无效方式进行优先级排序,而且可以基于标准的伪最近最少使用(LRU)方法。将避免声明了高速缓存行禁用比特的方式。这样,可以在两级存储系统中以此方式来禁止进一步使用呈现硬错误的高速缓存行。
返回到图8,高速缓存行禁用逻辑844可以以上面描述的方式使用标签高速缓存器846以实施高速缓存行禁用策略。
在许多实施例中,到混合存储器堆叠的功率输送可以是可调节的,这允许基于存储器的错误率来改变供应给该存储器的电压电平。混合存储缓冲器800包括自适应功率逻辑848。自适应功率逻辑848可以与集成VR 850通信以约束(chain)供应给堆叠上的层(852)的供应电压802。在许多实施例中,自适应功率逻辑848可以逐步长地递增电压或者以同样的方式递减电压,其中每一步长是特定的增量电压值。在未示出的其他实施例中,VR没有被集成到混合存储缓冲器800中,而是位于封装衬底(图1中的118)或计算机系统的其他位置上的分立VR。
在一些实施例中,可以向混合存储设备中的每个存储器瓦片(诸如图2中的存储器瓦片202)分离地供应电压。在其他实施例中,可以向每个存储器层(诸如图2中的存储器层204)供应电压。在另一实施例中,可以向包括整个存储器层堆叠的整个存储设备(诸如图2中的存储设备200)均匀地供应电压。
混合存储缓冲器800还可以包括自适应刷新逻辑854,该自适应刷新逻辑854可操作以改变存储器的刷新率。自适应刷新逻辑854能够逐步长地增加或降低存储器的刷新率,其中每一步长是时间增量。在不同的实施例中,可以在存储器瓦片的基础上、在存储器层的基础上或在整个存储设备的基础上来实施刷新率的修改,这类似于上面针对自适应功率逻辑848所描述的不同粒度的实施例。
在许多实施例中,混合存储缓冲器中存在用于实施线性反馈移位寄存器(LFSR)的内建自测试(BIST)逻辑856。该BIST-LFSR逻辑856允许在整个堆叠中的所有存储器上写入并读回随机数据模式以进行比较。BIST-LFSR逻辑具有用于生成连续的随机数据模式的种子值输入,每个数据块能够被写入存储器堆叠中的每个高速缓存行中。之后,当对存储器进行读回以校验完整性时,可以再次输入相同的种子值来生成相同的数据。
这样,数据虽然是随机的,但是能够用相同的种子值进行重复。因此,可以逐个高速缓存行地将第二次创建的随机模式与设置在存储器中的原始数据进行比较。这允许在存储器上进行快速的错误检查。如果设置了不同的种子而且对整个存储器检查了若干次,则存储器中始终显示错误的那些比特可以被指定为具有可重复的硬错误。动态错误变通措施逻辑836可以尝试若干个可用于最小化错误的变通措施中的一个或多个。
动态错误变通措施逻辑836所具有的用于最小化有问题存储单元的影响的一些选项包括上面已经讨论的逻辑部件(诸如ECC 838、冗余控制逻辑840、高速缓存行禁用逻辑844)以及潜在地通过自适应功率逻辑848增加输送给所述存储单元的功率和/或用自适应刷新逻辑854降低存储器刷新之间的时间。
图10是利用自适应功率逻辑来优化输送给混合存储设备的功率的过程的实施例的流程图。
该过程可以由可以包括硬件(例如,电路)、软件(例如,操作系统)、固件(例如,微代码)或列出的三种处理逻辑中的任意的组合的处理逻辑来执行。
该过程通过处理逻辑设置初始功率供应水平(处理框1000)开始。在一些实施例中,初始功率供应水平可以是能够被供应的最高功率水平。在其他实施例中,初始功率供应水平可以是位于推荐供应设置的中心的标准供应水平。在另一实施例中,初始功率供应水平可以由用户在针对初始化的基本输入/输出系统(BIOS)设置中进行设置。
然后,处理逻辑将功率供应水平从当前设置降低一步长或一增量(处理框1002)。针对每个增量而供应的功率增量可以基于VR逻辑来预先确定,这是因为许多VR都具有电压供应水平表,使用输入到由VR管理的寄存器或其他存储单元中的不同值可以逐个通过这些电压供应水平。
一旦功率供应水平已经降低了所述增量,处理逻辑随后就通过向存储单元进行写入来对存储器执行测试(处理框1004)。处理逻辑可以利用BIST-LFSR或另一种测试过程。在一些实施例中,被测试的存储单元可以包括所有的存储器。虽然在其他实施例中,动态错误变通措施逻辑(图8中的836)可能已经确定了一组可能的有故障的存储单元,并且可以测试所有存储器的子集以确定针对只在有故障的单元中的错误的变通措施。
之后,处理逻辑对已经被测试的每个存储单元进行读取(处理框1006)。处理逻辑随后确定是否已经检测到错误(处理框1008)。在许多实施例中,使用ECC或其他类似的错误检测码来确定是否存在一个或多个错误。如果不存在错误,则处理逻辑返回到框1002并进一步降低功率供应水平。否则,如果已经检测到错误,则处理逻辑尝试校正该错误或者潜在地避免该错误(处理框1010)。
用于校正或避免错误的这组步骤是特定于实施的,虽然这些技术可以包括:用于错误校正的ECC、用于错误避免的冗余控制和高速缓存行禁用、以及潜在地降低存储器刷新之间的时间。另外,另一选项是如果之前的电压电平没有产生错误,则将功率往回最多增加之前的电压电平增量。
然后,处理逻辑查看错误是否被成功校正或避免(处理框1012)。如果错误被成功校正或避免,则处理逻辑返回到框1002以进一步降低功率供应水平。
在未示出的其他实施例中,所供应的初始功率可以是低功率水平,并且所述增量用于增加所供应的功率而不是用于降低所供应的功率。在这些实施例中,初始测试增量可能呈现大量的错误,并且所述供应被增加直到错误消失为止。
在一些实施例中,自适应功率逻辑(图8中的848)在初始化期间执行这些增量测试。在其他实施例中,这些测试是在操作期间被动态地执行的,以修改供应给存储器堆叠的功率。混合存储器堆叠与混合存储缓冲器之间的高带宽传输通常比刷新期间要求更高的功率,因此在刷新阶段期间,供应给存储器的功率可以被动态地降低一个或多个增量。
一旦刷新阶段完成并再次增加带宽,自适应功率逻辑848就可以将功率增加一个或多个增量。
图11是利用自适应刷新逻辑来优化输送给混合存储设备的功率的过程的实施例的流程图。在每次刷新存储器时,都需要一定量的功率来实现该刷新。因此,如果增加刷新间隔,则会降低存储器随着时间所需要的总功率。
该过程可以由可以包括硬件(例如,电路)、软件(例如,操作系统)、固件(例如,微代码)或列出的三种处理逻辑中的任意的组合的处理逻辑来执行。
该过程通过处理逻辑设置初始存储器刷新率(处理框1100)开始。在一些实施例中,初始刷新率可以在初始化期间由BIOS设置预先确定。
然后,处理逻辑将存储器刷新间隔从当前设置增加一步长或一增量(处理框1102)。刷新间隔之间的时间增量可以是预先确定的值或是由用户在BIOS中设置的值。
一旦已经将刷新率增加了所述增量,处理逻辑随后就通过向存储单元进行写入来对存储器执行测试(处理框1104)。
之后,处理逻辑对已经被测试的每个存储单元进行读取(处理框1106)。处理逻辑随后确定是否已经检测到错误(处理框1108)。在许多实施例中,使用ECC或其他类似的错误检测码来确定是否存在一个或多个错误。如果不存在错误,则处理逻辑返回到框1002并进一步增加刷新之间的间隔。否则,如果已经检测到错误,则处理逻辑尝试校正该错误或者潜在地避免该错误(处理框1110)。
再次地,用于校正或避免错误的这组步骤是特定于实施的,但是可以包括ECC、冗余控制、高速缓存行禁用、降低刷新率间隔或增加供应给存储器的功率。
然后,处理逻辑查看错误是否被成功校正或避免(处理框1112)。如果错误被成功校正或避免,则处理逻辑可以返回到框1102以进一步增加刷新率间隔。
返回到图8,混合存储缓冲器800还可以包括虚拟页缓冲器858。在许多实施例中,虚拟页缓冲器858可以存储存储器中的每个当前被打开的页的至少一部分。存储器访问模式呈现时间和空间局部性是很常见的。过去,通过在每一存储体处使存储器页保持打开以降低重新打开所需页的延迟时间和功率来利用该局部性。然而,考虑到当今CPU的多线程操作,可能会导致严重的存储体冲突。考虑到这一问题,虚拟页缓冲器959可以存储混合存储缓冲器中每个被打开的页的一部分,以降低存储体冲突的可能性,并使得该页可以通过存储器请求被访问。混合存储缓冲器800使得这种虚拟打开的页能够降低功率和延迟时间并增加设备的带宽。
本发明实施例中的元件还可以被提供为用于存储机器可执行指令的机器可读介质。机器可读介质可以包括但不局限于闪存、光盘、压缩盘-只读存储器(CD-ROM)、数字多用途/视频盘(DVD)ROM、随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、磁卡或光卡、传播介质或适用于存储电子指令的其他类型的机器可读介质。例如,本发明的实施例可以作为计算机程序而被下载,所述计算机程序可以经由通信链路(例如,调制解调器或网络连接)通过载波或其他传播介质中体现的数据信号的方式从远程计算机(例如,服务器)传输到请求计算机(例如,客户端)。
在上面的描述中,某些术语用于描述本发明的实施例。例如,术语“逻辑”表示用于执行一个或多个功能的硬件、固件、软件(或它们的任意组合)。例如,“硬件”示例包括但不局限于集成电路、有限状态机或甚至是组合逻辑。集成电路可以采用处理器(诸如微处理器)、专用集成电路、数字信号处理器、微控制器等的形式。
应当意识到,整个说明书中提及“一个实施例”或“实施例”意味着结合该实施例描述的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,应当强调并应当意识到,在本说明书的各个部分中对“实施例”或“一个实施例”或“可替换实施例”的两次或更多次提及未必都是指同一实施例。另外,在本发明的一个或多个实施例中可以使当地组合所述特定特征、结构或特性。
类似地,应当意识到,在对本发明实施例的前述描述中,为了使公开内容一体化从而有助于理解各个发明方面中的一个或多个的目的,在单个实施例、图或它们的描述中有时将各种特征组合在一起。然而,本公开内容的方法不应当被解释为反映这样的意愿,即所要求保护的主题要求比在每个权利要求中明确记载的特征更多的特征。相反地,如下面的权利要求所反映的,发明方面在于比前面公开的单个实施例的所有特征更少的特征。因此,详细描述之后的权利要求藉此被明确地包括在该详细描述中。

Claims (26)

1.一种存储器设备,包括:
逻辑管芯,所述逻辑管芯包括用于支持输入/输出接口和分组处理操作的逻辑电路;以及
堆叠在所述逻辑管芯上的多个存储器管芯,每一个所述存储器管芯包括存储器管芯部分,每一个存储器管芯部分包括存储器阵列和输入/输出逻辑电路;
其中,所述逻辑管芯还包括多个逻辑电路部分,其中每一个逻辑电路部分通过硅通孔耦合到所述存储器管芯部分中的垂直对齐的多个存储器管芯部分,每一个逻辑电路部分包括以下逻辑电路:
内建自测试逻辑电路,用于提供对所述多个存储器管芯的所述存储器阵列的测试,以及
动态错误变通措施逻辑电路,用于提供处理出现在所述多个存储器管芯的所述一个或多个存储器管芯部分的所述存储器阵列中的软错误和硬错误的能力,其中处理软错误和硬错误包括所述逻辑管芯的所述动态错误变通措施逻辑电路以第一方式处理软错误并且以第二方式处理硬错误。
2.根据权利要求1所述的存储器设备,其中,所述逻辑管芯的所述动态错误变通措施逻辑电路包括错误检查和校正逻辑电路,用于检查出现在存储器中的错误并且尝试校正检测到的软错误。
3.根据权利要求2所述的存储器设备,其中,所述错误检查和校正逻辑电路包括博斯-乔赫里-霍克文黑姆纠错码。
4.根据权利要求1所述的存储器设备,其中,所述逻辑管芯的所述动态错误变通措施逻辑电路包括冗余控制逻辑电路,用于提供资源以寻址针对所述一个或多个存储器管芯部分中的至少一个的硬错误。
5.根据权利要求4所述的存储器设备,其中,所述冗余控制逻辑电路用于响应于测试结果而关闭存储器管芯部分的存储器阵列的一个或多个部分。
6.根据权利要求5所述的存储器设备,其中,由所述冗余控制逻辑电路对存储器阵列的部分的关闭是永久的。
7.根据权利要求5所述的存储器设备,其中,由所述冗余控制逻辑电路关闭存储器阵列的一个或多个部分包括关闭存储器的列。
8.根据权利要求5所述的存储器设备,其中,所述冗余控制逻辑电路包括多路复用器逻辑电路,所述多路复用器逻辑电路用于针对所述一个或多个存储器管芯部分的存储器阵列中的关闭来跟踪存储器的部分。
9.根据权利要求1所述的存储器设备,其中,所述逻辑管芯的所述动态错误变通措施逻辑电路包括高速缓存行禁用逻辑电路,用于禁用存储器页或行。
10.根据权利要求9所述的存储器设备,其中,所述逻辑管芯还包括标签高速缓存器。
11.根据权利要求1所述的存储器设备,其中,所述逻辑管芯的所述逻辑电路包括输入/输出逻辑电路,所述输入/输出逻辑电路用于支持所述输入/输出接口和用于支持所述分组处理操作的分组处理逻辑电路。
12.根据权利要求1所述的存储器设备,其中,所述存储器设备在具有两级或者更多级存储器的计算系统中提供第一级存储器,所述计算系统包括位于所述存储器设备外部的第二级存储器,所述第二级存储器具有多个存储器块。
13.根据权利要求1所述的存储器设备,其中,所述逻辑管芯还包括下列中的一个或多个:
自适应功率逻辑电路,用于修改输送到所述存储器管芯的功率;以及
自适应刷新逻辑电路,用于修改存储器刷新之间的时间。
14.一种计算机系统,包括:
处理器;以及
经由互连与所述处理器耦合的存储器设备,所述存储器设备包括:
逻辑管芯,所述逻辑管芯包括用于支持与所述处理器的输入/输出接口和分组处理操作的逻辑电路;以及
堆叠在所述逻辑管芯上的多个存储器管芯,每一个所述存储器管芯包括存储器管芯部分,每一个存储器管芯部分包括存储器阵列和输入/输出逻辑电路;
其中,所述逻辑管芯还包括多个逻辑电路部分,其中每一个逻辑电路部分通过硅通孔耦合到所述存储器管芯部分中的垂直对齐的多个存储器管芯部分,每一个逻辑电路部分包括以下逻辑电路:
内建自测试逻辑电路,用于提供对所述存储器管芯的所述存储器阵列的测试,以及
动态错误变通措施逻辑电路,用于提供处理出现在所述多个存储器管芯的所述一个或多个存储器管芯部分的所述存储器阵列中的软错误和硬错误的能力,其中处理软错误和硬错误包括所述逻辑管芯的所述动态错误变通措施逻辑电路以第一方式处理软错误并且以第二方式处理硬错误。
15.根据权利要求14所述的计算机系统,其中,所述逻辑管芯的所述动态错误变通措施逻辑电路包括错误检查和校正逻辑电路,用于检查出现在存储器中的错误并且尝试校正检测到的软错误。
16.根据权利要求14所述的计算机系统,其中,所述逻辑管芯的所述动态错误变通措施逻辑电路包括冗余控制逻辑电路,用于提供资源以寻址针对所述一个或多个存储器管芯部分中的至少一个的硬错误。
17.根据权利要求16所述的计算机系统,其中,所述冗余控制逻辑电路用于响应于测试结果而关闭存储器管芯部分的存储器阵列的一个或多个部分。
18.根据权利要求17所述的计算机系统,其中,由所述冗余控制逻辑电路对存储器阵列的部分的关闭是永久的。
19.根据权利要求17所述的计算机系统,其中,所述冗余控制逻辑电路包括多路复用器逻辑电路,用于针对所述一个或多个存储器管芯部分的存储器阵列中的关闭来跟踪存储器的部分。
20.根据权利要求14所述的计算机系统,还包括:
通信地耦合到所述处理器的网络接口。
21.一种存储器装置,包括:
逻辑管芯,所述逻辑管芯包括用于支持输入/输出接口和分组处理操作的逻辑电路;以及
堆叠在所述逻辑管芯上的多个存储器管芯,所述多个存储器管芯中的每一个包括多个存储器瓦片,其中,所述存储器管芯中垂直对齐的存储器管芯跨所述多个存储器管芯形成存储器瓦片的相应的列,存储器瓦片的一个列的每一个存储器瓦片包括存储器阵列和输入/输出逻辑电路;
其中,所述逻辑管芯还包括多个逻辑电路部分,其中每一个逻辑电路部分通过硅通孔耦合到存储器瓦片的相应的列,每一个逻辑电路部分包括以下逻辑电路:
内建自测试逻辑电路,用于提供对所述多个存储器管芯的所述存储器阵列的测试,以及
动态错误变通措施逻辑电路,用于提供处理出现在所述多个存储器管芯的所述存储器瓦片的所述存储器阵列中的软错误和硬错误的能力,其中处理软错误和硬错误包括所述逻辑管芯的所述动态错误变通措施逻辑电路以第一方式处理软错误并且以第二方式处理硬错误。
22.根据权利要求21所述的存储器装置,其中,所述逻辑管芯的所述动态错误变通措施逻辑电路包括错误检查和校正逻辑电路,用于检查出现在存储器中的错误并且尝试校正检测到的软错误。
23.根据权利要求21所述的存储器装置,其中,所述动态错误变通措施逻辑电路包括冗余控制逻辑电路,用于提供资源以寻址针对所述存储器管芯的所述存储器瓦片中的至少一个的硬错误。
24.根据权利要求23所述的存储器装置,其中,所述逻辑管芯的所述冗余控制逻辑电路用于响应于测试结果而关闭存储器瓦片的存储器阵列的一个或多个部分。
25.根据权利要求24所述的存储器装置,其中,由所述冗余控制逻辑电路对存储器阵列的部分的关闭是永久的。
26.根据权利要求24所述的存储器装置,其中,所述冗余控制逻辑电路包括多路复用器逻辑电路,所述多路复用器逻辑电路用于针对所述存储器瓦片的存储器阵列中的关闭来跟踪存储器的部分。
CN201510062141.0A 2009-12-31 2010-12-10 用于混合存储器的系统、方法和装置 Active CN104575568B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/655,590 2009-12-31
US12/655,590 US8612809B2 (en) 2009-12-31 2009-12-31 Systems, methods, and apparatuses for stacked memory
CN201080054325.8A CN102640225B (zh) 2009-12-31 2010-12-10 用于混合存储器的系统、方法和装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201080054325.8A Division CN102640225B (zh) 2009-12-31 2010-12-10 用于混合存储器的系统、方法和装置

Publications (2)

Publication Number Publication Date
CN104575568A CN104575568A (zh) 2015-04-29
CN104575568B true CN104575568B (zh) 2018-10-26

Family

ID=44188959

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201080054325.8A Active CN102640225B (zh) 2009-12-31 2010-12-10 用于混合存储器的系统、方法和装置
CN201510062141.0A Active CN104575568B (zh) 2009-12-31 2010-12-10 用于混合存储器的系统、方法和装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201080054325.8A Active CN102640225B (zh) 2009-12-31 2010-12-10 用于混合存储器的系统、方法和装置

Country Status (7)

Country Link
US (6) US8612809B2 (zh)
EP (3) EP2519948B1 (zh)
JP (4) JP5676644B2 (zh)
KR (1) KR101454090B1 (zh)
CN (2) CN102640225B (zh)
TW (2) TWI517179B (zh)
WO (1) WO2011081846A2 (zh)

Families Citing this family (117)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5559507B2 (ja) * 2009-10-09 2014-07-23 ピーエスフォー ルクスコ エスエイアールエル 半導体装置及びこれを備える情報処理システム
US8612809B2 (en) 2009-12-31 2013-12-17 Intel Corporation Systems, methods, and apparatuses for stacked memory
US8650446B2 (en) * 2010-03-24 2014-02-11 Apple Inc. Management of a non-volatile memory based on test quality
US8582373B2 (en) * 2010-08-31 2013-11-12 Micron Technology, Inc. Buffer die in stacks of memory dies and methods
US8191034B1 (en) * 2010-09-23 2012-05-29 Cadence Design Systems, Inc. Method and system for measuring terminal compatibility and alignment
US8612676B2 (en) * 2010-12-22 2013-12-17 Intel Corporation Two-level system main memory
US8607089B2 (en) 2011-05-19 2013-12-10 Intel Corporation Interface for storage device access over memory bus
US9294224B2 (en) 2011-09-28 2016-03-22 Intel Corporation Maximum-likelihood decoder in a memory controller for synchronization
WO2013048467A1 (en) 2011-09-30 2013-04-04 Intel Corporation Generation of far memory access signals based on usage statistic tracking
EP2761469B1 (en) 2011-09-30 2019-11-13 Intel Corporation Non-volatile random access memory (nvram) as a replacement for traditional mass storage
EP2761472B1 (en) 2011-09-30 2020-04-01 Intel Corporation Memory channel that supports near memory and far memory access
CN103946826B (zh) 2011-09-30 2019-05-31 英特尔公司 用于在公共存储器通道上实现多级存储器层级的设备和方法
CN103946811B (zh) 2011-09-30 2017-08-11 英特尔公司 用于实现具有不同操作模式的多级存储器分级结构的设备和方法
EP2761476B1 (en) 2011-09-30 2017-10-25 Intel Corporation Apparatus, method and system that stores bios in non-volatile random access memory
CN103946814B (zh) 2011-09-30 2017-06-06 英特尔公司 计算机系统中的非易失性随机存取存储器的自主初始化
CN103946824B (zh) 2011-11-22 2016-08-24 英特尔公司 一种用于非易失性随机访问存储器的访问控制方法、装置及系统
WO2013089686A1 (en) 2011-12-13 2013-06-20 Intel Corporation A method and system for providing instant responses to sleep state transitions with non-volatile random access memory
WO2013089685A1 (en) 2011-12-13 2013-06-20 Intel Corporation Enhanced system sleep state support in servers using non-volatile random access memory
US9286205B2 (en) 2011-12-20 2016-03-15 Intel Corporation Apparatus and method for phase change memory drift management
KR101915073B1 (ko) 2011-12-20 2018-11-06 인텔 코포레이션 2-레벨 메모리 계층구조에서 메모리측 캐쉬의 동적인 부분적 전원 차단
US9448922B2 (en) 2011-12-21 2016-09-20 Intel Corporation High-performance storage structures and systems featuring multiple non-volatile memories
US20130166672A1 (en) * 2011-12-22 2013-06-27 International Business Machines Corporation Physically Remote Shared Computer Memory
DE112011106032B4 (de) 2011-12-22 2022-06-15 Intel Corporation Energieeinsparung durch Speicherkanal-Abschaltung
WO2013097105A1 (en) 2011-12-28 2013-07-04 Intel Corporation Efficient dynamic randomizing address remapping for pcm caching to improve endurance and anti-attack
JP5846664B2 (ja) 2011-12-28 2016-01-20 インテル・コーポレーション メモリ回路試験エンジン用の汎用アドレススクランブラ
US8645777B2 (en) 2011-12-29 2014-02-04 Intel Corporation Boundary scan chain for stacked memory
TWI602181B (zh) * 2012-02-29 2017-10-11 三星電子股份有限公司 記憶體系統以及使用測試元件傳輸失效位址至記憶體元件的操作方法
US9087613B2 (en) 2012-02-29 2015-07-21 Samsung Electronics Co., Ltd. Device and method for repairing memory cell and memory system including the device
KR102076584B1 (ko) * 2012-10-22 2020-04-07 삼성전자주식회사 메모리 셀을 리페어 하는 방법과 장치 및 이를 포함하는 메모리 시스템
US9953725B2 (en) 2012-02-29 2018-04-24 Samsung Electronics Co., Ltd. Semiconductor memory devices and methods of operating the same
US8587340B2 (en) * 2012-03-27 2013-11-19 Micron Technology, Inc. Apparatuses including scalable drivers and methods
WO2013147841A1 (en) 2012-03-30 2013-10-03 Intel Corporation Generic address scrambler for memory circuit test engine
JP5980556B2 (ja) * 2012-04-27 2016-08-31 ルネサスエレクトロニクス株式会社 半導体装置
US9252996B2 (en) 2012-06-21 2016-02-02 Micron Technology, Inc. Apparatuses and methods to change information values
US10303618B2 (en) * 2012-09-25 2019-05-28 International Business Machines Corporation Power savings via dynamic page type selection
US8830716B2 (en) * 2012-09-29 2014-09-09 Intel Corporation Intelligent far memory bandwith scaling
US9298395B2 (en) * 2012-10-22 2016-03-29 Globalfoundries Inc. Memory system connector
EP2915049B1 (en) 2012-10-30 2020-03-04 Hewlett-Packard Enterprise Development LP Smart memory buffers
US9354875B2 (en) * 2012-12-27 2016-05-31 Intel Corporation Enhanced loop streaming detector to drive logic optimization
US20140189227A1 (en) * 2012-12-28 2014-07-03 Samsung Electronics Co., Ltd. Memory device and a memory module having the same
US9679615B2 (en) 2013-03-15 2017-06-13 Micron Technology, Inc. Flexible memory system with a controller and a stack of memory
KR102029682B1 (ko) 2013-03-15 2019-10-08 삼성전자주식회사 반도체 장치 및 반도체 패키지
US11074169B2 (en) * 2013-07-03 2021-07-27 Micron Technology, Inc. Programmed memory controlled data movement and timing within a main memory device
US9338918B2 (en) 2013-07-10 2016-05-10 Samsung Electronics Co., Ltd. Socket interposer and computer system using the socket interposer
US9147438B2 (en) 2013-10-23 2015-09-29 Qualcomm Incorporated Monolithic three dimensional (3D) integrated circuits (ICs) (3DICs) with vertical memory components, related systems and methods
US9910484B2 (en) * 2013-11-26 2018-03-06 Intel Corporation Voltage regulator training
JP2015141725A (ja) * 2014-01-28 2015-08-03 マイクロン テクノロジー, インク. 半導体装置及びこれを備える情報処理システム
US9237670B2 (en) 2014-02-26 2016-01-12 Samsung Electronics Co., Ltd. Socket interposer and computer system using the socket
KR102192539B1 (ko) * 2014-05-21 2020-12-18 삼성전자주식회사 반도체 장치 및 이의 프로그램 방법
US10204047B2 (en) 2015-03-27 2019-02-12 Intel Corporation Memory controller for multi-level system memory with coherency unit
KR102296738B1 (ko) * 2015-06-01 2021-09-01 삼성전자 주식회사 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 반도체 메모리 장치의 에러 정정 방법
KR102290020B1 (ko) * 2015-06-05 2021-08-19 삼성전자주식회사 스택드 칩 구조에서 소프트 데이터 페일 분석 및 구제 기능을 제공하는 반도체 메모리 장치
US10387259B2 (en) 2015-06-26 2019-08-20 Intel Corporation Instant restart in non volatile system memory computing systems with embedded programmable data checking
US10073659B2 (en) 2015-06-26 2018-09-11 Intel Corporation Power management circuit with per activity weighting and multiple throttle down thresholds
US20170060434A1 (en) * 2015-08-27 2017-03-02 Samsung Electronics Co., Ltd. Transaction-based hybrid memory module
US10740116B2 (en) * 2015-09-01 2020-08-11 International Business Machines Corporation Three-dimensional chip-based regular expression scanner
US10108549B2 (en) 2015-09-23 2018-10-23 Intel Corporation Method and apparatus for pre-fetching data in a system having a multi-level system memory
US10185501B2 (en) 2015-09-25 2019-01-22 Intel Corporation Method and apparatus for pinning memory pages in a multi-level system memory
US10261901B2 (en) 2015-09-25 2019-04-16 Intel Corporation Method and apparatus for unneeded block prediction in a computing system having a last level cache and a multi-level system memory
WO2017058494A1 (en) 2015-10-01 2017-04-06 Rambus Inc. Memory system with cached memory module operations
US9792224B2 (en) 2015-10-23 2017-10-17 Intel Corporation Reducing latency by persisting data relationships in relation to corresponding data in persistent memory
US10033411B2 (en) 2015-11-20 2018-07-24 Intel Corporation Adjustable error protection for stored data
US10095618B2 (en) 2015-11-25 2018-10-09 Intel Corporation Memory card with volatile and non volatile memory space having multiple usage model configurations
US10275160B2 (en) 2015-12-21 2019-04-30 Intel Corporation Method and apparatus to enable individual non volatile memory express (NVME) input/output (IO) Queues on differing network addresses of an NVME controller
US9747041B2 (en) 2015-12-23 2017-08-29 Intel Corporation Apparatus and method for a non-power-of-2 size cache in a first level memory device to cache data present in a second level memory device
CN109684653B (zh) * 2017-10-19 2023-12-22 成都海存艾匹科技有限公司 含有可编程计算单元的可编程门阵列封装
US10007606B2 (en) 2016-03-30 2018-06-26 Intel Corporation Implementation of reserved cache slots in computing system having inclusive/non inclusive tracking and two level system memory
US10185619B2 (en) 2016-03-31 2019-01-22 Intel Corporation Handling of error prone cache line slots of memory side cache of multi-level system memory
US10073787B2 (en) * 2016-04-18 2018-09-11 Via Alliance Semiconductor Co., Ltd. Dynamic powering of cache memory by ways within multiple set groups based on utilization trends
KR102533236B1 (ko) 2016-06-20 2023-05-17 삼성전자주식회사 개선된 레이턴시를 갖는 메모리 장치 및 그것의 동작 방법
CN111210857B (zh) * 2016-06-27 2023-07-18 苹果公司 组合了高密度低带宽和低密度高带宽存储器的存储器系统
US10120806B2 (en) 2016-06-27 2018-11-06 Intel Corporation Multi-level system memory with near memory scrubbing based on predicted far memory idle time
KR102612003B1 (ko) 2016-07-11 2023-12-08 삼성전자주식회사 솔리드 스테이트 드라이브 장치 및 이를 포함하는 저장 시스템
US10241906B1 (en) * 2016-07-30 2019-03-26 EMC IP Holding Company LLC Memory subsystem to augment physical memory of a computing system
US10387303B2 (en) * 2016-08-16 2019-08-20 Western Digital Technologies, Inc. Non-volatile storage system with compute engine to accelerate big data applications
US10200376B2 (en) 2016-08-24 2019-02-05 Intel Corporation Computer product, method, and system to dynamically provide discovery services for host nodes of target systems and storage resources in a network
US10176116B2 (en) 2016-09-28 2019-01-08 Intel Corporation Computer product, method, and system to provide discovery services to discover target storage resources and register a configuration of virtual target storage resources mapping to the target storage resources and an access control list of host nodes allowed to access the virtual target storage resources
US9818457B1 (en) 2016-09-30 2017-11-14 Intel Corporation Extended platform with additional memory module slots per CPU socket
US10216657B2 (en) 2016-09-30 2019-02-26 Intel Corporation Extended platform with additional memory module slots per CPU socket and configured for increased performance
US10915453B2 (en) 2016-12-29 2021-02-09 Intel Corporation Multi level system memory having different caching structures and memory controller that supports concurrent look-up into the different caching structures
US10445261B2 (en) 2016-12-30 2019-10-15 Intel Corporation System memory having point-to-point link that transports compressed traffic
US10318381B2 (en) * 2017-03-29 2019-06-11 Micron Technology, Inc. Selective error rate information for multidimensional memory
US10185652B2 (en) 2017-05-26 2019-01-22 Micron Technology, Inc. Stack access control for memory device
JP6866785B2 (ja) * 2017-06-29 2021-04-28 富士通株式会社 プロセッサおよびメモリアクセス方法
US10304814B2 (en) 2017-06-30 2019-05-28 Intel Corporation I/O layout footprint for multiple 1LM/2LM configurations
KR102395463B1 (ko) * 2017-09-27 2022-05-09 삼성전자주식회사 적층형 메모리 장치, 이를 포함하는 시스템 및 그 동작 방법
US11188467B2 (en) 2017-09-28 2021-11-30 Intel Corporation Multi-level system memory with near memory capable of storing compressed cache lines
CN111433749B (zh) 2017-10-12 2023-12-08 拉姆伯斯公司 具有dram高速缓存的非易失性物理存储器
US10269445B1 (en) * 2017-10-22 2019-04-23 Nanya Technology Corporation Memory device and operating method thereof
US10297304B1 (en) * 2017-11-12 2019-05-21 Nanya Technology Corporation Memory device and operating method thereof
US10860244B2 (en) 2017-12-26 2020-12-08 Intel Corporation Method and apparatus for multi-level memory early page demotion
US10446200B2 (en) * 2018-03-19 2019-10-15 Micron Technology, Inc. Memory device with configurable input/output interface
US11099995B2 (en) 2018-03-28 2021-08-24 Intel Corporation Techniques for prefetching data to a first level of memory of a hierarchical arrangement of memory
KR102512754B1 (ko) * 2018-03-30 2023-03-23 삼성전자주식회사 관통 전극을 통해 전송되는 제어 신호를 이용하여 데이터를 샘플링하는 메모리 장치
CN109472099A (zh) * 2018-11-19 2019-03-15 郑州云海信息技术有限公司 一种服务器的印刷电路板及制作方法
KR20200081045A (ko) * 2018-12-27 2020-07-07 삼성전자주식회사 3차원 적층 메모리 장치 및 그 동작 방법
US11157374B2 (en) * 2018-12-28 2021-10-26 Intel Corporation Technologies for efficient reliable compute operations for mission critical applications
US10606775B1 (en) 2018-12-28 2020-03-31 Micron Technology, Inc. Computing tile
US10978426B2 (en) * 2018-12-31 2021-04-13 Micron Technology, Inc. Semiconductor packages with pass-through clock traces and associated systems and methods
US11055228B2 (en) 2019-01-31 2021-07-06 Intel Corporation Caching bypass mechanism for a multi-level memory
WO2020172557A1 (en) 2019-02-22 2020-08-27 Micron Technology, Inc. Memory device interface and method
US11171115B2 (en) 2019-03-18 2021-11-09 Kepler Computing Inc. Artificial intelligence processor with three-dimensional stacked memory
US11836102B1 (en) 2019-03-20 2023-12-05 Kepler Computing Inc. Low latency and high bandwidth artificial intelligence processor
KR20200138493A (ko) 2019-05-30 2020-12-10 삼성전자주식회사 반도체 패키지
US11844223B1 (en) 2019-05-31 2023-12-12 Kepler Computing Inc. Ferroelectric memory chiplet as unified memory in a multi-dimensional packaging
US11043472B1 (en) 2019-05-31 2021-06-22 Kepler Compute Inc. 3D integrated ultra high-bandwidth memory
US11144228B2 (en) * 2019-07-11 2021-10-12 Micron Technology, Inc. Circuit partitioning for a memory device
CN110968529A (zh) * 2019-11-28 2020-04-07 深圳忆联信息系统有限公司 无缓存固态硬盘的实现方法、装置、计算机设备及存储介质
KR20220119697A (ko) * 2019-12-27 2022-08-30 마이크론 테크놀로지, 인크. 뉴로모픽 메모리 장치 및 방법
KR20220116258A (ko) 2019-12-30 2022-08-22 마이크론 테크놀로지, 인크. 메모리 디바이스 인터페이스 및 방법
WO2021138408A1 (en) 2019-12-31 2021-07-08 Micron Technology, Inc. Memory module mutiple port buffer techniques
US11410737B2 (en) 2020-01-10 2022-08-09 Micron Technology, Inc. Power regulation for memory systems
KR20210093612A (ko) 2020-01-20 2021-07-28 삼성전자주식회사 차단층을 포함하는 반도체 패키지
US11954040B2 (en) * 2020-06-15 2024-04-09 Arm Limited Cache memory architecture
WO2022015741A1 (en) * 2020-07-14 2022-01-20 Micron Technology, Inc. Multiplexed memory device interface and method
US20210335393A1 (en) * 2021-07-09 2021-10-28 Intel Corporation Stacked memory chip solution with reduced package inputs/outputs (i/os)
US11791233B1 (en) 2021-08-06 2023-10-17 Kepler Computing Inc. Ferroelectric or paraelectric memory and logic chiplet with thermal management in a multi-dimensional packaging

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0644547A2 (en) * 1993-09-13 1995-03-22 International Business Machines Corporation Integrated multichip memory module, structure and fabrication
CN1845250A (zh) * 2005-04-07 2006-10-11 株式会社日立制作所 Dram叠层封装、dimm以及半导体制造方法
US7383475B1 (en) * 2007-10-29 2008-06-03 International Business Machines Corporation Design structure for memory array repair where repair logic cannot operate at same operating condition as array

Family Cites Families (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3273119A (en) * 1961-08-21 1966-09-13 Bell Telephone Labor Inc Digital error correcting systems
JPS6465650A (en) * 1987-09-04 1989-03-10 Hitachi Ltd Error detecting device for storage device
JPH0420504Y2 (zh) 1987-10-19 1992-05-11
EP1031992B1 (en) * 1989-04-13 2006-06-21 SanDisk Corporation Flash EEPROM system
JPH02302856A (ja) 1989-05-18 1990-12-14 Nec Field Service Ltd キャッシュメモリ縮退方式
JPH03273673A (ja) * 1990-03-23 1991-12-04 Matsushita Electron Corp 半導体装置
US5568437A (en) * 1995-06-20 1996-10-22 Vlsi Technology, Inc. Built-in self test for integrated circuits having read/write memory
KR100313514B1 (ko) * 1999-05-11 2001-11-17 김영환 하이브리드 메모리 장치
JP3799197B2 (ja) 1999-08-26 2006-07-19 株式会社東芝 半導体記憶装置
US7266634B2 (en) * 2000-01-05 2007-09-04 Rambus Inc. Configurable width buffered module having flyby elements
US20050066968A1 (en) * 2000-08-01 2005-03-31 Shofner Frederick M. Generation, delivery, measurement and control of aerosol boli for diagnostics and treatments of the respiratory/pulmonary tract of a patient
JP4497683B2 (ja) * 2000-09-11 2010-07-07 ローム株式会社 集積回路装置
US6483764B2 (en) * 2001-01-16 2002-11-19 International Business Machines Corporation Dynamic DRAM refresh rate adjustment based on cell leakage monitoring
US6373758B1 (en) * 2001-02-23 2002-04-16 Hewlett-Packard Company System and method of operating a programmable column fail counter for redundancy allocation
JP4262912B2 (ja) * 2001-10-16 2009-05-13 Necエレクトロニクス株式会社 半導体記憶装置
TW556961U (en) * 2002-12-31 2003-10-01 Advanced Semiconductor Eng Multi-chip stack flip-chip package
JP4137757B2 (ja) * 2003-10-01 2008-08-20 株式会社日立製作所 ネットワーク変換器及び情報処理システム
JP4272968B2 (ja) * 2003-10-16 2009-06-03 エルピーダメモリ株式会社 半導体装置および半導体チップ制御方法
JP3896112B2 (ja) * 2003-12-25 2007-03-22 エルピーダメモリ株式会社 半導体集積回路装置
US7085152B2 (en) 2003-12-29 2006-08-01 Intel Corporation Memory system segmented power supply and control
US7577859B2 (en) * 2004-02-20 2009-08-18 International Business Machines Corporation System and method of controlling power consumption in an electronic system by applying a uniquely determined minimum operating voltage to an integrated circuit rather than a predetermined nominal voltage selected for a family of integrated circuits
JP4569182B2 (ja) * 2004-03-19 2010-10-27 ソニー株式会社 半導体装置
US7557941B2 (en) * 2004-05-27 2009-07-07 Silverbrook Research Pty Ltd Use of variant and base keys with three or more entities
US7680966B1 (en) * 2004-06-29 2010-03-16 National Semiconductor Corporation Memory interface including generation of timing signals for memory operation
US7451282B2 (en) * 2005-03-09 2008-11-11 Dolphin Interconnect Solutions North America Inc. System and method for storing a sequential data stream
JP4216825B2 (ja) * 2005-03-22 2009-01-28 株式会社日立製作所 半導体パッケージ
JP4309368B2 (ja) * 2005-03-30 2009-08-05 エルピーダメモリ株式会社 半導体記憶装置
US7827345B2 (en) * 2005-08-04 2010-11-02 Joel Henry Hinrichs Serially interfaced random access memory
US7327592B2 (en) * 2005-08-30 2008-02-05 Micron Technology, Inc. Self-identifying stacked die semiconductor components
US7464225B2 (en) * 2005-09-26 2008-12-09 Rambus Inc. Memory module including a plurality of integrated circuit memory devices and a plurality of buffer devices in a matrix topology
JP2007273072A (ja) * 2006-03-09 2007-10-18 Matsushita Electric Ind Co Ltd 半導体記憶装置および半導体装置
JP2007280562A (ja) * 2006-04-11 2007-10-25 Sharp Corp リフレッシュ制御装置
US7716411B2 (en) * 2006-06-07 2010-05-11 Microsoft Corporation Hybrid memory device with single interface
JP2008140220A (ja) * 2006-12-04 2008-06-19 Nec Corp 半導体装置
US20080136002A1 (en) * 2006-12-07 2008-06-12 Advanced Chip Engineering Technology Inc. Multi-chips package and method of forming the same
JP5616636B2 (ja) * 2006-12-14 2014-10-29 ラムバス・インコーポレーテッド マルチダイメモリ素子
US7672178B2 (en) * 2006-12-29 2010-03-02 Intel Corporation Dynamic adaptive read return of DRAM data
US20090006757A1 (en) * 2007-06-29 2009-01-01 Abhishek Singhal Hierarchical cache tag architecture
US7813210B2 (en) * 2007-08-16 2010-10-12 Unity Semiconductor Corporation Multiple-type memory
US7623365B2 (en) * 2007-08-29 2009-11-24 Micron Technology, Inc. Memory device interface methods, apparatus, and systems
WO2009051917A1 (en) * 2007-10-15 2009-04-23 Joseph Schweiray Lee Providing error correction to unwritten pages and for identifying unwritten pages in flash memory
US8059443B2 (en) * 2007-10-23 2011-11-15 Hewlett-Packard Development Company, L.P. Three-dimensional memory module architectures
JP2009116978A (ja) * 2007-11-08 2009-05-28 Nec Computertechno Ltd 半導体記憶装置
KR101393311B1 (ko) * 2008-03-19 2014-05-12 삼성전자주식회사 프로세스 변화량을 보상하는 멀티 칩 패키지 메모리
US20090282308A1 (en) * 2008-05-09 2009-11-12 Jan Gutsche Memory Cell Arrangement and Method for Reading State Information From a Memory Cell Bypassing an Error Detection Circuit
US8060719B2 (en) * 2008-05-28 2011-11-15 Micron Technology, Inc. Hybrid memory management
US7979757B2 (en) * 2008-06-03 2011-07-12 Micron Technology, Inc. Method and apparatus for testing high capacity/high bandwidth memory devices
US8283771B2 (en) * 2008-06-30 2012-10-09 Intel Corporation Multi-die integrated circuit device and method
JP2010021306A (ja) * 2008-07-10 2010-01-28 Hitachi Ltd 半導体装置
US7929368B2 (en) * 2008-12-30 2011-04-19 Micron Technology, Inc. Variable memory refresh devices and methods
US9105323B2 (en) * 2009-01-23 2015-08-11 Micron Technology, Inc. Memory device power managers and methods
US8018752B2 (en) * 2009-03-23 2011-09-13 Micron Technology, Inc. Configurable bandwidth memory devices and methods
US8612809B2 (en) 2009-12-31 2013-12-17 Intel Corporation Systems, methods, and apparatuses for stacked memory

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0644547A2 (en) * 1993-09-13 1995-03-22 International Business Machines Corporation Integrated multichip memory module, structure and fabrication
CN1845250A (zh) * 2005-04-07 2006-10-11 株式会社日立制作所 Dram叠层封装、dimm以及半导体制造方法
US7383475B1 (en) * 2007-10-29 2008-06-03 International Business Machines Corporation Design structure for memory array repair where repair logic cannot operate at same operating condition as array

Also Published As

Publication number Publication date
EP3910632A1 (en) 2021-11-17
TW201604893A (zh) 2016-02-01
US20200233746A1 (en) 2020-07-23
JP2015111425A (ja) 2015-06-18
US9886343B2 (en) 2018-02-06
KR101454090B1 (ko) 2014-10-22
US20150161005A1 (en) 2015-06-11
US8984189B2 (en) 2015-03-17
CN102640225B (zh) 2015-01-28
JP2016027498A (ja) 2016-02-18
US20120284436A1 (en) 2012-11-08
KR20120097389A (ko) 2012-09-03
EP2519948B1 (en) 2016-10-26
US10621043B2 (en) 2020-04-14
JP5869097B2 (ja) 2016-02-24
TWI517179B (zh) 2016-01-11
WO2011081846A2 (en) 2011-07-07
JP5676644B2 (ja) 2015-02-25
US8612809B2 (en) 2013-12-17
US10956268B2 (en) 2021-03-23
CN102640225A (zh) 2012-08-15
EP3029679A1 (en) 2016-06-08
US20110161748A1 (en) 2011-06-30
JP2017224382A (ja) 2017-12-21
EP2519948A4 (en) 2014-01-08
JP2013516020A (ja) 2013-05-09
WO2011081846A3 (en) 2011-12-15
US20180232275A1 (en) 2018-08-16
JP6339280B2 (ja) 2018-06-06
EP2519948A2 (en) 2012-11-07
TW201135748A (en) 2011-10-16
US11003534B2 (en) 2021-05-11
US20190354437A1 (en) 2019-11-21
CN104575568A (zh) 2015-04-29
TWI587315B (zh) 2017-06-11

Similar Documents

Publication Publication Date Title
CN104575568B (zh) 用于混合存储器的系统、方法和装置
US10381067B2 (en) Memory system topologies including a buffer device and an integrated circuit memory device
KR101871545B1 (ko) 플래시 메모리 모듈 및 메모리 서브시스템
US11500576B2 (en) Apparatus and architecture of non-volatile memory module in parallel configuration
US7464225B2 (en) Memory module including a plurality of integrated circuit memory devices and a plurality of buffer devices in a matrix topology
CN104871137B (zh) 高可靠性存储器控制器
US7717752B2 (en) 276-pin buffered memory module with enhanced memory system interconnect and features
CN107924349A (zh) 存储器装置管芯上错误校验和纠正代码
KR20160143744A (ko) 로컬 메모리를 갖는 제어기를 가진 메모리 디바이스
CN101946245A (zh) 存储器装置与芯片上网络方法、设备及系统
US20220336008A1 (en) Memory System Topologies Including A Memory Die Stack
Purdy et al. Memory subsystem technology and design for the z990 eServer

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