CN104541257A - 利用元数据管理的堆栈存储器设备 - Google Patents
利用元数据管理的堆栈存储器设备 Download PDFInfo
- Publication number
- CN104541257A CN104541257A CN201380041807.3A CN201380041807A CN104541257A CN 104541257 A CN104541257 A CN 104541257A CN 201380041807 A CN201380041807 A CN 201380041807A CN 104541257 A CN104541257 A CN 104541257A
- Authority
- CN
- China
- Prior art keywords
- memory
- metadata
- equipment
- meta data
- data manager
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
一种处理系统(100)包括一个或多个处理器设备(104)和耦合至堆栈存储器设备(102)的其它系统组件,所述堆栈存储器设备具有一组堆栈存储器层(120)和一组一个或多个逻辑层(122)。所述组逻辑层实现元数据管理器(134),所述元数据管理器(134)将元数据管理从所述其它系统组件中卸载。所述组逻辑层还包括存储器接口(130),所述存储器接口(130)耦合至实现在所述组堆栈存储器层中的存储器单元电路(126),并且可耦合至所述堆栈存储器设备的外部的设备。所述存储器接口操作来执行对所述外部设备和所述元数据管理器的存储器访问。通过所述元数据管理器与所述堆栈存储器层的紧密集成,所述元数据管理器可比所述外部设备可执行的更有效地执行某些存储器密集型元数据管理操作。
Description
背景
公开领域
本公开大体上涉及存储器设备,并且更具体地涉及堆栈存储器设备。
相关技术描述
在许多处理系统中,存储器带宽和时延是显著性能瓶颈。这些性能因素可通过使用堆栈或三维(3D)存储器而得到一定程度改进,堆栈或3D存储器通过使用穿硅通孔(TSV)使多个堆栈存储器层互连来提供增加的带宽和减小的设备内时延。然而,系统存储器和其它大规模存储器通常被实现为与系统的其它组件分开。因此,实现3D堆栈存储器的系统可能由于将3D堆栈存储器与其它组件连接的互连的带宽而继续受带宽限制,并且由于遍历相对长的互连的信令的传播延迟和进行此类信令所需信号交换过程(handshaking process)而受时延限制。当所执行的任务需要对3D堆栈存储器进行多次访问时,设备内带宽和设备内时延对系统的处理效率和功耗具有特定影响,因为每次访问需要3D堆栈存储器之间来回通信,并且因此每次访问将会招致两次的设备内带宽和时延损失。
附图简述
本公开和它对本领域技术人员来说显而易见的众多特征和优势可通过参看附图来更好地理解。
图1是示出根据本公开的至少一个实施方案的呈垂直堆栈配置的采用元数据管理器的处理系统的分解透视图的图。
图2是示出根据本公开的至少一个实施方案的呈侧分配置的图1的处理系统的替代实现方式的截面图的图。
图3是更详细地示出根据本公开的至少一个实施方案的图1的处理系统的框图。
图4是示出根据本公开的至少一个实施方案的响应于存储器访问请求来执行元数据管理操作的示例方法的流程图。
图5是示出根据本公开的至少一个实施方案的一种响应于元数据命令来执行元数据操作的示例方法的流程图。
图6是示出根据本公开的至少一个实施方案的从堆栈存储器设备提供元数据的示例方法的流程图。
图7是示出根据本公开的至少一个实施方案的用于执行虚拟到物理地址转换的示例元数据管理操作的图。
图8是示出根据本公开的至少一个实施方案的用于存储器利用率监测的示例元数据管理操作的图。
图9是示出根据本公开的至少一个实施方案的用于存储器记录的示例元数据管理操作的图。
图10是示出根据本公开的至少一个实施方案的用于错误校正值计算的示例元数据管理操作的图。
图11是示出根据本公开的至少一个实施方案的一种用于错误检测值验证的示例元数据管理操作的图。
图12是示出根据本公开的至少一个实施方案的用于垃圾收集标记过程的示例元数据管理操作的图。
图13是示出根据本公开的至少一个实施方案的用于另一垃圾收集标记过程的示例元数据管理操作的图。
图14是示出根据本公开的至少一个实施方案的用于设计和制造实现堆栈存储器和元数据管理器的集成电路(IC)设备的方法的流程图。
在不同图中使用相同参考符号指示类似或相同的项目。
优选实施方案的详细描述
图1-14示出通过使用堆栈存储器设备来实现提高的处理效率和降低的功耗的示例技术,所述堆栈存储器设备实现集成元数据管理器以对存储在堆栈存储器设备的存储器单元电路中的操作数据卸载元数据管理。堆栈存储器设备包括一组堆栈存储器层和一组一个或多个逻辑层,其中一个或多个逻辑层实现元数据管理器和存储器接口。存储器接口耦合至存储器单元电路并且可耦合至堆栈存储器设备的外部的一个或多个设备。存储器接口操作以响应于来自元数据管理器和一个或多个外部设备的存储器访问请求来执行存储器访问。元数据管理器包括执行针对存储在堆栈存储器设备处的、与所存储的操作数据相关联的元数据的一个或多个元数据管理操作的逻辑。此类元数据管理操作的实例包括但不限于:地址转换操作、数据安全性或数据完整性操作(例如,校验和或错误校正代码计算或验证)、垃圾收集操作、存储器利用率剖析、存储器记录等。由于元数据管理器与存储器层的紧密集成,与外部设备相比,元数据管理器可以更高的带宽以及更低的时延和功耗来访问存储在存储器层中的元数据。此外,对堆栈存储器设备的元数据管理的卸载允许外部设备执行集中于操作数据的其它任务,从而增加系统的总处理吞吐量。
如本文所使用,术语“操作数据”是指由系统的设备在代表操作系统、管理程序或软件应用程序执行操作时所使用的数据。如本文所使用,术语“元数据”是指描述系统对对应操作数据的使用的特性、标识符或表示的数据。操作数据的实例包括指令数据和操作数数据。元数据的实例包括数据完整性/安全性信息,如奇偶校验位、校验和、以及错误校正代码(ECC)、地址转换信息(例如,页表条目和转换后备缓冲条目)、状态指示器(例如,脏位、有效位、可达位)等。更一般地,操作数据是提供至堆栈存储器设备以存储的数据,并且元数据是堆栈存储器设备用来访问、表征或修改所存储的操作数据的数据。
图1示出根据本公开的至少一个实施方案的处理系统100。处理系统100可包括各种计算系统中的任一种,包括笔记本或平板计算机、台式计算机、服务器、网络路由器、交换机或集线器、支持计算的蜂窝电话、个人数字助理等。在描绘的实例中,处理系统100包括堆栈存储器设备102和通过设备间互连106耦合的至少一个外部设备104。处理系统100还包括了图1未示出的各种其它组件,如一个或多个显示组件、存储设备、输入设备(例如,鼠标或键盘)等。虽然处理系统100可包括通过设备间互连106耦合至堆栈存储器设备102的多个外部设备104,但是为了便于说明,本文描述具有单个外部设备104的示例实现方式。在一个实施方案中,外部设备104被实现为集成电路(IC)封装103,并且堆栈存储器设备102被实现为IC封装105,IC封装105与实现外部设备104的IC封装103分开。在另一实施方案中,外部设备104和堆栈存储器设备102被实现为通过相同IC封装中的插入器连接的单独裸片集。在任一情况中,参照堆栈存储器设备102而言,外部设备104是“外部的”。
在示出的实例中,外部设备104是处理设备,但是外部设备104也可以是其它类型设备。在此实例中,外部设备包括一个或多个处理器核心(如处理器核心108和110)、北桥112、和外围组件114。处理器核心108和110可包括各种处理器核心中的任一种和其组合,如中央处理单元(CPU)核心、图形处理单元(GPU)、数字信号处理器(DSP)等。外围组件114可包括例如集成的南桥或输入/输出控制器、一个或多个3级(L3)高速缓冲存储器等。北桥112包括存储器控制器接口116或与存储器控制器接口116相关联,所述存储器控制器接口116包括连接至设备间互连106的导体的物理接口(PHY)。
设备间互连106可根据各种常规互连或总线架构中的任一种来实现,所述互连或总线架构如快速外围组件互连(PCI-E)架构、超传输架构、快速路径互连(QPI)架构等。可替代地,设备间互连106可根据专用总线架构来实现。设备间互连106包括多个导体,所述导体将外部设备104的存储器接口116的发射/接收电路与堆栈存储器设备102的存储器接口130的发射/接收电路耦合。导体可包括导电体(如印刷电路板(PCB)迹线或缆线)、导光体(如光纤)或其组合。
堆栈存储器设备102可实现各种存储器单元架构中的任一种,包括但不限于:易失性存储器架构(如动态随机存取存储器(DRAM)和静态随机存取存储器(SRAM))或非易失性存储器架构(如只读存储器(ROM)、闪存存储器、铁电RAM(F-RAM)、磁阻RAM等)。为了便于说明,本文在DRAM架构的示例非限制性上下文中描述堆栈存储器设备102的示例实现方式。
如分解透视图所示,堆栈存储器设备102包括一组堆栈存储器层120和一组一个或多个逻辑层122。每个存储器层120包括根据堆栈存储器设备102的存储器架构实现位单元的存储器单元电路126以及根据此存储器架构实现逻辑和其它电路以支持对位单元的访问和维护的外围逻辑电路128。为了说明,DRAM通常由许多列组(rank)组成,每个列组包括多个分块(bank),并且每个分块包括按行和列陈列的位单元矩阵。因此,在一个实施方案中,每个存储器层120可实现一个列组(并且因此实现对应列组的位单元分块)。在另一实施方案中,DRAM列组各自可在多个存储器层120上实现。例如,堆栈存储器设备102可实现四个列组,每个列组在存储器层120中的每个的对应象限处实现。在任一实现方式中,为了支持DRAM位单元的访问和维护,外围逻辑电路128可包括例如线驱动器、位线/字线预充电电路、刷新电路、行解码器、列选择逻辑、行缓冲器、读出放大器等。
一个或多个逻辑层122实现用以促进对堆栈存储器设备102的存储器的访问的逻辑。这个逻辑包括例如存储器接口130、内建自测(BIST)逻辑131等。存储器接口130可包括例如接收器和线驱动器、存储器请求缓冲器、调度逻辑、行/列解码逻辑、刷新逻辑、数据输入和数据输出缓冲器、时钟发生器等。虽然所示实施方案描绘实现在外部设备104处的存储器控制器116,但是在其它实施方案中,存储器控制器可替代地在存储器接口130处实现。存储器接口130还包括总线接口132,所述总线接口132包括可耦合至设备间互连106的导体并且因此可耦合至外部设备104的PHY。
除了实现用以促进对存储器层120所实现的存储器的访问的逻辑之外,为了处理系统102的外部设备104或其它外部组件的益处,一个或多个逻辑层122实现元数据管理器134以执行对堆栈存储器设备102处维护的、与存储在堆栈存储器设备102处的操作数据相关联的元数据的元数据管理操作。元数据管理器134被耦合至存储器接口130,并且包括用以执行对存储在堆栈存储器设备102处的、与存储在堆栈存储器设备102处的操作数据相关联的元数据的一个或多个元数据管理操作的逻辑。元数据管理器134可包括位于逻辑层122中的一个或多个处以存储元数据的存储元件(例如,寄存器、高速缓冲存储器或内容可寻址存储器),存储器单元电路126可存储元数据,或元数据的一些部分可存储在逻辑层122的存储元件中,而其它部分存储在存储器单元电路126中。对于存储在存储器单元电路126处的元数据,一些元数据可与对应操作数据存储在一起(例如,在某些情况下,校验和数据可存储在与用于存储对应操作数据的相同的存储器位置中),而在其它情况下,元数据与对应操作数据分开地存储(例如,ECC数据可存储在与存储对应操作数据的存储器位置分开的ECC阵列中)。另外,在一个实施方案中,元数据管理器134可在逻辑层122处或在存储器层120中采用非易失性存储器(NVM)、如闪存存储器,以便在断电事件后保留某些元数据。
在示出的实例中,元数据管理器134和存储器接口130在相同的逻辑层122上实现。在其它实施方案中,存储器接口130和元数据管理器134可以在不同逻辑层上实现。例如,可在一个逻辑层122处实现存储器接口130并且在另一逻辑层122处实现元数据管理器134。在另一实施方案中,存储器接口130和元数据管理器134可以在多个逻辑层上实现。为了说明,存储器接口130和元数据管理器134的逻辑电路可在一个逻辑层122处实现,并且元数据管理器134的某些存储元件(例如,高速缓冲存储器或内容可寻址存储器)可在另一逻辑层122处实现。
在图1的所描绘的实现方式中,堆栈存储器设备102以垂直堆栈布置实现,从而使得功率和信令使用密集穿硅通孔(TSV)150或其它垂直互连在逻辑层122与存储器层120之间进行发射。虽然图1以一组集中的行描绘TSV 150,但是TSV 150可替代地在层的平面布置图上更分散。注意,图1提供层120和122的分解图表示以允许示出TSV 150以及层120和122的组件。在实现方式中,所述层中的每个上覆先前的层并且所述先前的层接触。在一个实施方案中,元数据管理器134直接通过TSV 150访问实现在存储器层120处的存储器(即,元数据管理器134实现它自身的存储器控制器)。在另一实施方案中,存储器接口130控制对TSV 150的访问,并且因此元数据管理器134通过存储器接口130访问存储器层120。
堆栈存储器设备102可使用各种3D集成电路制造过程中的任一种来制造。在一个方法中,层120和122各自被实现为具有形成在有源表面处的有源设备和一个或多个金属布线层的单独衬底(例如,块状硅)(即,每层包括单独裸片或“晶圆”)。此方法可包括晶圆上晶圆过程,由此制造并减薄包括裸片矩阵的晶圆,并且通过块硅蚀刻TSV。随后,将多个晶圆堆叠以实现所示的层配置(例如,包括用于四个存储器层120的存储器电路的四个晶圆并且包括用于逻辑层122的逻辑裸片的一个晶圆的堆叠)、将所述晶圆对准并随后通过热压缩来接合。所得堆叠晶圆组被单切,以便分开随后将封装的单独3D IC设备。在裸片上裸片过程中,首先单切实现每个对应层的晶圆,并且随后分别将所述裸片堆叠并接合以制造出3D IC设备。在裸片上晶圆方法中,单切用于一个或多个层的晶圆,以便生成用于一个或多个层的裸片,并且随后将这些裸片对准并粘结至另一晶圆的对应裸片区域,所述另一晶圆随后被单切以生成单独3D IC设备。在单独晶圆上制造作为裸片的层120和122的一个益处在于,用于制造逻辑层122的制造过程可不同于用于制造存储器层120的那个制造过程。因此,提供提高的性能和减小的功耗的制造过程可被用于制造逻辑层122(并且因此提供用于元数据管理器134的更快速的和更低功率的接口逻辑和电路),而提供提高的单元密度和改进的泄漏控制的制造过程可被用于制造存储器层120(并且因此提供用于堆栈存储器的更紧密的、更低泄漏的位单元)。
在另一方法中,层120和122使用单片3D制造过程制造,由此使用单个衬底,并且使用层转移过程如离子切割过程在先前的层上形成每一个层。还可使用技术组合来制造出堆栈存储器设备102。例如,逻辑层120可使用单片3D技术制造,存储器层可使用裸片上裸片(die-on-die)或晶圆上晶圆(wafer-on-wafer)技术制造或反之亦然,并且所得逻辑层堆栈和存储器层堆栈随后可粘结以形成用于堆栈存储器设备102的3D IC设备。
图2是示出根据本公开的至少一个实施方案的堆栈存储器设备102的替代实现方式的截面图。比起实现图1所示垂直堆栈实现方式、由此将一个或多个逻辑层122与存储器层120垂直对准之外,堆栈存储器设备102可替代地实现图2的侧分布置,由此堆栈存储器层120被实现为IC设备202,并且一个或多个逻辑层122被实现为单独IC设备204,并且IC设备202和204(并且因此逻辑层122和存储器层120)通过插入器206连接。插入器可包括例如一级或多级的硅插入器、印刷电路板(PCB)或其组合。虽然图2示出一起实现为单个IC设备202的堆栈存储器层120,但是堆栈存储器层120可替代地实现为多个IC设备202,其中每个IC设备202包括一个或多个存储器层120。同样,逻辑层122可实现为单个IC设备204或多个IC设备204。一个或多个IC设备202、一个或多个IC设备204、和一体衬底206被封装为代表堆栈存储器设备102的IC封装205。
图3以框图的形式示出处理系统100,并且图4-6示出根据本公开的至少一个实施方案的处理系统100相对于图3的框图绘图的操作的各种示例方法。如上所述,处理系统100包括一个或多个外部设备104以及通过设备间互连106耦合的堆栈存储器设备102,由此堆栈存储器设备102实现存储器单元电路126的多个堆栈层所表示的堆栈存储器300并且实现用以执行关于存储在堆栈存储器设备102处的元数据301的一个或多个元数据管理操作的元数据管理器134。元数据301可存储在堆栈存储器300处、存储在逻辑层122处的寄存器文件、CAM、高速缓冲存储器或其它存储元件(图1和图2)处或存储在非易失性存储器304中或其组合。元数据管理器134包括管理逻辑302,所述管理逻辑302能对所存储的元数据301进行访问,并且所述管理逻辑被配置来执行关于所存储的元数据301的元数据管理操作。堆栈存储器设备102还包括存储器接口130以响应于来自外部设备104和元数据管理器134两者的存储器访问请求来执行存储器访问。
在操作中,堆栈存储器设备102用作用于代表其它系统组件存储操作数据的常规系统存储器。在常规存储器访问操作中,外部设备104(或其它系统组件)通过操纵其存储器接口116的PHY来发布存储器访问请求306以发射地址信令,并且如果所请求的存储器访问是写入访问,那么通过设备间互连106还将数据信令发射至堆栈存储器设备102。存储器接口130的PHY接收信令,缓冲由信令表示的存储器访问请求,并且随后访问存储器单元电路126以实现所请求的存储器访问。在存储器访问请求306是写入访问的情况下,存储器接口130将用信号发送的操作数据存储至存储器300的由用信号发送的地址指示的位置。在存储器访问请求306是读出请求的情况下,存储器接口130访问来自存储器300的对应于用信号发送的地址的位置的所请求的操作数据并且操纵存储器接口130的PHY,以便通过设备间互连106来向外部设备104发射表示所访问的操作数据308的信令。
此外,堆栈存储器设备102还用于从处理系统100的外部设备102卸载管理用于所存储的操作数据的元数据的任务。在一个实现方案中,堆栈存储器设备102的元数据管理器134响应于外部设备104对某些操作数据的存储器访问来执行与某些操作数据相关联的元数据管理操作。例如,响应于读出访问请求,管理逻辑302可访问所存储的校验和(元数据的一个实施方案)或其它错误检测代码以读出数据,通过读出数据重新计算校验和并且将所存储的校验和与重新计算的校验和进行比较,以便检验所存储的数据在存储器接口130将读出数据输出至外部设备104之前的完整性。
元数据管理器134还可响应于来自外部设备104的元数据命令310来执行元数据管理操作。例如,管理逻辑302可被配置来支持用于垃圾收集过程的标记和清扫功能,并且外部设备104可通过发布呈“MARK(X)”命令的形式的元数据命令310来引导堆栈存储器设备102将位于地址X处的对象标记为可达,响应于所述元数据命令,管理逻辑302将指定值(例如,“1”)写入与存储在地址X处的操作数据相关联的可达状态位(元数据的一个实施方案)。元数据管理器134可提供对外部设备104所发布的元数据命令310的响应312,由此响应312可包括例如对已经接收并执行元数据命令310的确认或由元数据命令310表示的元数据管理操作的执行的结果。
元数据管理器134还可独立于存储器访问请求、元数据命令或来自外部设备104的其它信令来执行元数据管理操作。某些元数据管理操作可以是独立于外部设备104运行的软件隐藏的操作或后台操作。为了说明,管理逻辑302可被配置来周期性地扫描操作数据以及对应ECC值,以识别并校正由于软错误或存储器单元电路126的故障而破坏的操作数据。
在图3的框图的上下文中,图4的方法400示出用于响应于外部设备104的存储器访问来执行元数据管理操作的堆栈存储器设备102的示例操作。方法400在框402处开始,随之,外部设备104发布对堆栈存储器设备102的存储器访问请求306(图3)。存储器访问请求306可包括读出存储在堆栈存储器设备102处的操作数据的读出访问请求或将操作数据写入至堆栈存储器设备102的写入访问请求。
在框404处,堆栈存储器设备102的存储器接口130通过将操作数据存储至存储器单元电路126(对于写入访问而言)或通过访问来自存储器单元电路126的操作数据并将所访问的操作数据提供至外部设备104(对于读出访问而言)来处理存储器访问请求306。同时,在框406处,元数据管理器134响应于存储器访问请求306来执行一个或多个元数据管理操作,并且所述元数据管理操作与存储器访问请求306相关联。例如,元数据管理器134可被配置来执行存储器利用率剖析操作,并且在框406处结合存储器访问执行的元数据管理操作可包括例如更新或以其它方式修改存储器利用率剖析信息,如与存储器地址或存储器访问所访问的存储器地址范围相关联的利用率量度(元数据的实施方案)。作为另一实例,元数据管理器134可被配置来执行存储器跟踪或其它存储器记录操作,并且在框406处执行的元数据管理操作可包括在存储器日志(元数据的实施方案)中记录由存储器访问访问的存储器地址。作为另一实例,元数据管理器134可被配置来提供关于存储在堆栈存储器设备102处的操作数据的数据完整性、安全性或可靠性功能性,并且因此在框406处执行的元数据管理操作可包括例如计算或验证与所存储的操作数据相关联的错误检测值,其中错误检测值可包括校验和、ECC值或用于与存储器访问相关联的操作数据的奇偶校验位中的一个或多个。
在图3的框图的上下文中,图5的方法500示出用于响应于来自外部设备104的元数据命令来执行元数据管理操作的堆栈存储器设备102的示例操作。方法500在框502处开始,随之,外部设备104将元数据命令310(图3)发布至堆栈存储器设备102。元数据命令310表示对元数据管理器134执行一个或多个元数据管理操作的明确指令或其它命令。响应于元数据命令310,在框504处,元数据管理器134执行由元数据命令310表示的一个或多个元数据管理操作。这些元数据管理操作可包括例如生成元数据的操作、输出指定元数据的操作、修改指定元数据的操作等。
为了说明,在一个实施方案中,元数据管理器134提供对外部设备104的地址转换支持以避免外部设备104进行多个连续的存储器访问,否则外部设备104将必须执行页表漫步以确定对应虚拟地址的合适物理地址。在这个实现方式中,外部设备104可替代地将地址转换命令发布至元数据管理器134,所述元数据管理器134随后可对整个本地存储的页表或其它地址转换信息(元数据的一个实施方案)进行页表漫步,以便确定对应于由地址转换命令供应的虚拟地址的物理地址并将其返回至外部设备104。在元数据管理器134由此提供存储器利用率剖析的情况下,元数据命令可包括例如设置用于所需剖析操作的参数的命令,如重新设置给定剖析操作的剖析量度(profilingmetric)、设置待剖析的存储器地址或存储器地址范围、设置剖析类型(例如,使用计数、访问频率等)等。元数据命令还可包括向外部设备104输出用于存储器利用率剖析操作的剖析量度(元数据的一个实施方案)或指向剖析量度的存储器地址的命令。作为另一说明,元数据命令310可包括与元数据管理器134执行的存储器记录操作有关的命令。在此上下文中,元数据命令310可包括例如设置用于存储器记录操作的准则的命令、输出用于记录操作的存储器日志信息或指向此类信息的位置的存储器地址的命令等。元数据命令310还可包括修改元数据本身的命令。例如,在元数据管理器134支持对存储在堆栈存储器300(图3)处的操作数据的垃圾收集的情况下,元数据命令310可包括修改垃圾收集属性的命令,如设置存储在堆栈存储器300中的地址X处的对应对象的“可达”位的“MARK(X)”命令。
在图3的框图的上下文中,图6的方法600示出用于将元数据提供至外部设备104的堆栈存储器设备102的示例操作。方法600在框602处开始,随之,外部设备104将向堆栈存储器设备102发布对指定的元数据的请求。作为响应,在框604处,元数据管理器134访问指定元数据并且将所访问的元数据提供至外部设备104。各种类型的元数据中的任一种可提供至外部设备104。如上所述,所提供的元数据可包括存储器利用率/性能量度、存储器日志/痕迹、地址转换信息、数据安全性/完整性信息等。
在一个实施方案中,请求通过标示符来指定待提供的元数据,并且元数据管理器134基于所述标示符来确定元数据存储的位置,访问来自这个位置的元数据、并且随后输出所访问的元数据。在另一实施方案中,请求指定元数据存储的存储器地址,并且元数据管理器134访问并输出来自指定位置的元数据。在这个情况下,响应于对存储器地址的元数据命令310(图3)或作为对响应于设置元数据的上下文的元数据命令310的确认,元数据管理器134可能先前已向外部设备104供应元数据的存储器地址。例如,响应于引导元数据管理器134设置用于指定的存储器地址范围的存储器利用率剖析操作的元数据命令310(图3),元数据管理器134可发送确认已设置存储器利用率剖析操作的响应312(图3),其中所述响应还包括将存储用于剖析操作的利用率剖析量度的起始存储器地址。
图7-13示出堆栈存储器设备102执行的元数据管理操作的实例,以便利用元数据管理器134与堆栈存储器300之间的低时延、高带宽连接或以其它方式从处理系统100的其它组件卸载元数据管理操作。
图7描绘用以代表外部设备104执行地址转换操作的元数据管理器134的示例性使用。包括x86架构的许多计算机架构使用虚拟至物理地址映射来将处理器设备使用的虚拟地址转换成系统存储器或存储器映射的外围设备使用的物理地址。通常,处理器设备高速缓存转换后备缓冲器(TLB),所述TLB缓冲最近的虚拟至物理地址转换。然而,在TLB未命中的情况下,常规地要求处理器设备遍历存储在存储器中的一个或多个页表以获得适当的虚拟至物理地址转换。当前x86架构使用多达四张页表,并且因此常规页表漫步可能需要处理器设备进行的多达四次的存储器访问(每级页表每个页表条目进行一次访问)。然而,由于元数据管理器134与堆栈存储器300紧密耦合,元数据管理器134可用于卸载存储器地址转换操作以使得外部设备104仅仅需要发起一个元数据命令来获得转换,代替另外将会需要执行常规页表漫步的多次单独的存储器访问。此外,根据这种方法,外部设备104可能不必实现它自身的页表漫步器(walker)逻辑,并且因此页表漫步器逻辑可从依赖于堆栈存储器设备102的元数据管理器134的外部设备104的设计去除,因此节省实现外部设备104的面积和成本。
在描绘的实例中,外部设备104将用于虚拟地址X的地址转换命令702(元数据的一个实施方案)发布至堆栈存储器设备102。地址转换命令702还可包括用于执行地址转换的其它信息、如x86实现方式中的CR3寄存器的值,以便识别将在地址转换中使用的页表的页目录的位置。元数据管理器134保持与页表管理相关的状态(例如,指向存储在堆栈存储器300中的页表704的基址指针)。响应于地址转换命令702,元数据管理器134通过访问一级或多级的页表704的一个或多个页表条目(图7中识别为PTE0、PTE1、……、PTEX的页表条目访问)使用这个保持状态和提供有地址转换命令702的信息来执行页表漫步,以便获得所请求的地址转换,并且随后将所请求的地址转换信息作为响应706提供至外部设备104。此外,页表管理逻辑可实现或访问高速缓存先前执行的地址转换或高速缓存来自中间页表级的条目以加速地址转换过程的高速缓冲存储器或其它存储元件。当这个过程进行时,外部设备104可在等待接收地址转换信息的过程中继续执行其它操作。
实现在元数据管理器134处的页表管理逻辑可支持其它转换相关的操作。例如,当外部设备104发起对堆栈存储器300的对应页的写入访问请求时,页表管理逻辑可将对应页表条目标记为脏,使得外部设备104的操作系统可确定页面内容最终可能需要写出至磁盘或其它非易失性存储装置。为了实现这个过程,元数据管理器134可支持由外部设备104发布的元数据命令“MARKDIRTY(X)”,响应于所述元数据命令,元数据管理器134漫步页表704以便获得对应于虚拟地址X的页表条目,并随后为页表条目设置对应脏位。类似的元数据命令可受支持以标记访问位、检查/设置许可、使页表条目无效或重新设置、分配或安装页表条目等。
图8描绘根据本公开的一个实施方案的用以为动态存储器性能/利用率剖析提供支持的元数据管理器134的示例使用。为了支持此功能性,元数据管理器134的剖析逻辑实现一个或多个剖析操作,每个剖析操作由所存储的剖析状态802和一个或多个对应剖析量度804指定。剖析状态802包括表示对应剖析操作的参数的信息。例如,剖析状态802可指定感兴趣的一个或多个存储器地址或感兴趣的一个或多个连续或不连续的存储器地址等。剖析状态802的参数中的一些或全部可由外部设备104供应、如通过设置剖析操作的元数据命令供应。剖析量度804包括根据对应剖析状态的参数由元数据管理器134所保持的量度。剖析量度可包括例如对指定的存储器地址或存储器地址范围的读出或写入的次数、访问或不访问指定的存储器地址或存储器地址范围的频率(如相对于接收到的存储器访问的总次数或相对于绝对时间/时钟周期所测量的)、在指定范围内访问的唯一存储器位置的数目等。因此,剖析量度804可使用例如计数器实现,所述计数器可存储在堆栈存储器130中或实现在逻辑层122(图1)处作为例如寄存器映射的计数器。
用于剖析操作的剖析量度804可通过例如外部设备104对存储剖析量度804的存储器位置的读出访问或以上文针对图6描述的方式来响应于对剖析量度804的请求而供应至外部设备104。虽然上文描述剖析操作和对应剖析量度的各实例,但是本公开不限于这些实例而可替代地包括各种存储器利用率或性能量度中的任一种的剖析。
为了实现由所存储的剖析状态802指定的剖析操作,元数据管理器134监听(snoop)存储器接口130与堆栈存储器300之间的地址总线ADDR。因此,来自外部设备104的对地址Y的存储器访问请求806触发元数据管理器134所监听的地址总线上的对地址Y的地址信令的生成。元数据管理器134将地址Y与剖析状态302所指定的存储器地址或存储器地址范围进行比较,并且在命中的情况下,更新对应剖析量度804。例如,如果剖析操作是对针对存储器地址范围的读出访问和写入访问次数进行计数,那么如果地址Y落在此范围内,元数据管理器134增大使用计数器以反映所述访问。类似地,如果剖析操作是对在存储器访问范围内访问的唯一位置的数目进行计数,那么如果地址Y落在指定范围内,元数据管理器134可访问存储所述范围内的一列先前访问地址的数据结构,并且如果地址Y不在此列表中,增大对应的使用计数器并将地址Y添加至列表。
图9描绘根据本公开的一个实施方案的用以为存储器记录提供支持的元数据管理器134的示例使用。为了支持此功能性,元数据管理器134的跟踪逻辑实现用于存储关于对堆栈存储器300的访问的存储器痕迹或日志信息的至少一个访问日志902。访问记录902可实现为逻辑层122(图1)中的一个处或堆栈存储器300预留用于存储器记录的区域处的存储元件(例如,高速缓冲存储器)。外部设备104可发布元数据命令以发起记录操作、终止记录操作、以及访问访问日志902的日志信息。正如上文参考图8所描述的剖析实例,为了实现存储器记录,元数据管理器134监听存储器接口130与堆栈存储器300之间的地址总线ADDR。因此,由外部设备104发布的存储器访问请求906触发地址总线ADDR上对应地址的信令,所述信令又由元数据管理器134监听并记录在访问日志902中。这种方法可显著地减小外部设备104与堆栈存储器104之间的通信量。根据常规方法,外部设备104或设备间互连106(图1)上的其它设备必须检测用于存储器访问的设备间互连106的地址总线,并且随后通过存储器接口130生成单独写入访问请求以处理来更新存储在堆栈存储器300处的日志。相比之下,上述技术不需要外部设备与堆栈存储器设备102之间的附加的通信量,因为检测和日志更新完全在堆栈存储器设备102内发生。
图10和图11描绘根据本公开的一个实施方案的用以为数据安全性/完整性/可靠性元数据管理提供支持的元数据管理器134的示例使用。奇偶校验位、校验和、以及循环冗余校验和(CRC)常被所存储的数据用来检验数据的完整性,其方法是提供计算的正确性的置信度或检测对所存储的数据的恶意、未授权或非预期的修改。像校验和以及其它错误检测元数据的错误检测代码(ECC)促进操作数据中的错误检测,同时还允许了校正一定次数的错误。为了促进此类错误检测/校正元数据的管理,元数据管理器134可包括生成或验证与所存储的操作数据相关联的此类错误检测值的逻辑。在图10的实例中,元数据管理器134包括用以生成将存储在堆栈存储器300的存储器位置X处的操作数据的校验和的逻辑。当外部设备104发布对在存储器位置X处存储操作数据的写入请求1002时,元数据管理器134接收与写入请求相关联的写入数据1004(例如,通过监听存储器接口130与堆栈存储器300之间的数据总线),并且访问存储器位置X处的未修改的操作数据的剩余部分(在存储器位置X大于写入数据1004的大小的情况下)。元数据管理器134的逻辑随后计算将要存储在存储器位置X处的操作数据(包括写入数据1004)的校验和1006,并且提供校验和1006以存储在与存储器位置X相关联的堆栈存储器300处。校验和1006可与操作数据一起存储在存储器位置X处,或存储在堆栈存储器300中的单独校验和阵列中。
在图11的实例中,元数据管理器134包括验证用于存储在堆栈存储器300的存储器位置X处的操作数据的校验和的逻辑。当外部设备104发布对从存储器位置X输出读出数据1104的读出请求1102时,元数据管理器134接收存储在存储器位置1104处的操作数据1105(包括读出数据1104)(例如,通过监听存储器接口130与堆栈存储器300之间的数据总线),并且接收用于操作数据1105的校验和1106。随后,元数据管理器134的逻辑重新计算用于操作数据105的校验和,并且将重新计算的校验和与所访问的校验和1106进行比较。在匹配的情况下,元数据管理器134断言校验和有效信号1108以指示原始校验和有效,并且因此操作数据105并未显示出被篡改或以其它方式破坏。响应于对校验和有效信号1108的断言,随后,存储器接口130可输出读出数据1104。在重新计算的校验和与所访问的校验和1106不匹配的情况下,元数据管理器134可例如向外部设备104发布异常或故障以指示操作数据1105已被破坏。
对于其它类型的错误检测元数据或错误校正元数据而言,可实现类似于上述那些的过程。例如,元数据管理器134可包括用以处理ECC元数据以更新、检查和修复存储在堆栈存储器300中的操作数据中的错误的逻辑。ECC管理操作可响应于如上所述存储器访问请求来执行。例如,ECC生成可响应于写入访问来执行,并且ECC验证(和错误校正)可响应于读出访问来执行。此外,ECC管理操作可由元数据管理134后台执行。例如,元数据管理器134可操作来周期性地或连续地漫步存储在堆栈存储器300中的操作数据和ECC值,以便识别并校正操作数据中的错误。在某些实现方式中,ECC管理操作与奇偶校验和校验和管理操作的区别在于ECC状态通常对软件而言是在架构上不可见的。因此,依赖于由堆栈存储器设备102的元数据管理器134提供的ECC管理,外部设备104处的存储器控制器可通过移除对ECC管理的支持来简化。
虽然上文已在错误校正代码的上下文中描述数据安全性/完整性/可靠性元数据管理操作,但是其它形式的错误检测和校正可受元数据管理器134支持。为了说明,堆栈存储器300可实现独立磁盘冗余阵列(RAID)样功能性,由此计算附加的奇偶校验位(元数据的一个实施方案),并将它们交错存储在堆栈存储器300的多个区域上或堆栈存储器300的单独区域中。
图12和图13描绘根据本公开的一个实施方案的用以为垃圾收集管理提供支持的元数据管理器134的示例使用。许多计算机系统实现垃圾收集过程以回收应用程序或操作系统不再使用的操作数据所占据的存储器位置。通常,垃圾收集过程实现标记和清扫方法。垃圾收集器扫描存储器以识别“可达”的那些对象,即,由正在执行的程序状态直接或间接引用的对象。识别为可达的那些对象如此识别(“标记和清扫”的“标记”部分),并且随后,垃圾收集器扫描整个存储器并使未标记为“可达”的那些对象无效(“标记和清扫”的“清扫”部分),从而释放存储无效对象的存储器位置。元数据管理器134可包括用以实现用于堆栈存储器300的此类垃圾收集操作的逻辑。
为了说明,图12描绘元数据管理器134由此支持元数据命令1202“MARK(X)”的实例,响应于所述元数据命令,元数据管理器134将与存储器位置X处的操作数据1206相关联的“可达”状态位1204设置成“可达”状态。相反,元数据管理器134可支持元数据命令“CLEAR(X)”,响应于所述元数据命令,元数据管理器134清除可达状态位1204。在常规系统中,处理器设备将会需要从存储器读出可达状态、将可达状态修改成可达,并且将可达状态写入回存储器。相比之下,上述方法仅仅需要在外部设备104与堆栈存储器102之间发布的单个命令。
元数据管理器134还可实现更复杂的标记过程。为了说明,图13描绘元数据管理器134由此支持元数据命令1302“MARKALL(X)”的实例,响应于所述元数据命令,元数据管理器134将与存储器位置X处的操作数据1206相关联的可达状态位1204设置成可达状态,并且随后递归访问操作数据1206所引用的(例如,通过指针1204或其它引用地址)任何其它对象(例如,对象1306),并且也对那些对象的可达状态位(例如,可达状态位1304)进行设置。类似地,元数据管理器134还可实现元数据命令“CLEARALL(X)”以清除所述对象和所有递归引用的对象的可达状态位。这种方法将对存储器中的对象的布局使用预确定的格式对,并且具体地说就是一种确定对象大小和哪些字段包含指针的方法。此外,这种方法通常将会需要上文参考图7所述虚拟至物理地址转换支持。
在至少一个实施方案中,上文所述的装置和技术实现于包括一个或多个集成电路(IC)设备(也被称为集成电路封装或微芯片)的系统中,如图1-13的堆栈处理器设备102。电子设计自动化(EDA)和计算机辅助设计(CAD)软件工具可被用于这些IC设备的设计和制造。这些设计工具通常表示为一个或多个软件程序。所述一个或多个软件程序包括可由计算机系统执行以操控计算机系统的代码,所述计算机系统被操控来操作表示一个或多个IC设备的电路的代码,从而进行用以设计或调整制造系统的过程的至少一部分,从而制造出所述电路。这个代码可包括指令、数据或指令和数据的组合。表示设计工具或制造工具的软件指令通常存储在能够由计算系统进行访问的计算机可读存储介质中。同样,表示IC设备的设计或制造的一个或多个阶段的代码可以存储在相同的计算机可读存储介质或不同的计算机可读存储介质中并从其中进行存取。
计算机可读存储介质可包括任何存储介质或存储介质的组合,所述存储介质在使用期间可由计算机系统访问,以便向计算机系统提供指令和/或数据。此类存储介质可包括但不限于光学介质(例如,压缩光盘(CD)、数字通用光盘(DVD)、蓝光光盘)、磁性介质(例如,软盘、磁带或磁性硬盘)、易失性存储器(例如,随机存取存储器(RAM)或高速缓冲存储器)、非易失性存储器(例如,只读存储器(ROM)或闪存存储器)或基于微机电系统(MEMS)的存储介质。计算机可读存储介质可嵌入在计算系统中(例如,系统RAM或ROM)、固定地附接至计算系统(例如,磁性硬盘)、可移除地附接至计算系统(例如,光盘或基于通用串行总线(USB)的闪存存储器),或通过有线或无线网络而耦合至计算机系统(例如,网络可访问存储器(NAS))。
图14为示出根据本公开的至少一个实施方案的示例方法1400的流程图,所述方法用于设计和制造实现本发明的一个或多个方面的IC设备。如上所述,针对以下过程中的每个过程生成的代码被存储或以其它方式体现在计算机可读存储介质中,以供对应的设计工具或制造工具存取和使用。
在框1402处,生成IC设备的功能规范。所述功能规范(常常称为微架构规范(MAS))可由各种编程语言或建模语言(包括C、C++、SystemC、Simulink或MATLAB)中的任何语言来表示。
在框1404处,功能规范用来生成表示IC设备的硬件的硬件描述代码。在至少一个实施方案中,硬件描述代码是使用至少一种硬件描述语言(HDL)来表示,所述硬件描述语言包括用于IC设备的电路的形式描述和设计的各种计算机语言、规范语言或建模语言中的任何语言。所生成的HDL代码通常表示IC设备的电路的操作、电路的设计和组织以及通过模拟来检验IC设备的正确操作的测试。HDL的实例包括模拟HDL(AHDL)、Verilog HDL、SystemVerilog HDL和VHDL。对于实现同步数字电路的IC设备而言,硬件描述符代码可包括寄存器传输级(RTL)代码,所述RTL代码用以提供同步数字电路的操作的抽象表示。对于其它类型的电路而言,硬件描述符代码可包括行为级代码,其用以提供电路的操作的抽象表示。硬件描述代码所表示的HDL模型通常经受一轮或多轮的模拟和调试以便通过设计检验。
在检验由硬件描述代码表示的设计之后,在框1406处,合成工具用来合成硬件描述代码,从而生成表示或定义IC设备电路的初始物理实现形式的代码。在一个实施方案中,合成工具生成一个或多个网表,所述一个或多个网表包括电路设备实例(例如,栅极、晶体管、电阻器、电容器、电感器、二极管等)以及电路设备实例之间的网络或连接。可替代地,可在不使用合成工具的情况下手动地生成网表的全部或一部分。使用硬件描述代码的情况下,在生成最终一组一个或多个网表之前,网表可经受一个或多个测试和检验过程。
可替代地,示意图编辑工具可用来草拟IC设备的电路的示意图,并且示意图捕获工具随后可用来捕获所产生的电路图并且生成一个或多个表示电路图的各组件和连接性的网表(存储在计算机可读介质上)。随后,所捕获的电路图可经受一轮或多轮模拟以达到测试和检验目的。
在框1408处,一个或多个EDA工具使用在框1406处产生的网表来生成表示IC设备的电路的物理布局的代码。这个过程可以例如包括安置工具,所述安置工具使用网表来确定或固定IC设备的电路的每个元件的位置。此外,布线工具根据安置过程来进行建构以便增加根据网表来连接电路元件所需要的线路和对线路进行布线。所得代码表示IC设备的三维模型。所述代码可表示为数据块文件格式,例如图形数据块系统II(GDSII)格式。呈这个格式的数据通常表示关于呈分层形式的电路布局的几何形状、文本标签和其它信息。
在框1410处,将物理布局代码(例如,GDSII代码)提供给制造设施,所述制造设施使用物理布局代码来配置或以其它方式调适制造设施的制造工具(例如,通过掩膜作业(mask work))以便制造IC设备。即,物理布局代码可编程到一个或多个计算机系统中,然后,所述计算机系统可整体地或部分地控制制造设施的工具的操作或其中所执行的制造操作。
应当注意,并不需要上文在一般描述中描述的所有活动或元件,特定活动或设备的一部分可能是不需要的,并且可进行一个或多个其它活动,或可包括除了所述那些元件外的元件。此外,对活动列出的顺序并不是它们被执行所必要的顺序。
另外,已经参考特定实施方案描述了各概念。然而,本领域的一般技术人员应当了解,在不脱离随附权利要求书中阐明的本公开的范围的情况下,可以作出各种修改和改变。因此,本说明书和附图应以说明性而非限制性意义来考虑,并且所有这些修改旨在包括在本公开的范围内。
上文已经就特定实施方案描述益处、其它优势和问题的解决方案。然而,可能使得其它任何益处、优势或解决方案发生或变得更为显著的益处、优势、问题的解决方案和任何特征,不应被解释成任何或全部权利要求的关键、必需或本质的特征。
Claims (16)
1.一种集成电路(IC)封装(105),其包括:
存储器单元电路(126);以及
一组一个或多个逻辑层(122),其电耦合至所述存储器单元电路,所述组一个或多个逻辑层包括元数据管理器(134)和存储器接口(130),所述存储器接口耦合至所述元数据管理器并且可耦合至所述IC封装的外部的设备(104),并且所述元数据管理器用以管理存储在所述IC封装处的元数据、和与存储在所述存储器单元电路处的用于所述设备的操作数据相关联的元数据。
2.根据权利要求1所述的IC封装,其还包括实现所述存储器单元电路的一组堆栈存储器层(120)。
3.根据权利要求2所述的IC封装,其中所述元数据管理器将响应于来自所述设备的存储器访问请求(306)来执行至少一个元数据管理操作。
4.根据权利要求3所述的IC封装,其中:
所述元数据包括与指定的存储器地址范围相关联的存储器利用率量度(804);以及
所述至少一个元数据管理操作包括响应于所述指定的存储器地址范围与由所述存储器访问请求识别的存储器地址之间的匹配来更新所述存储器利用率量度。
5.根据权利要求2所述的IC封装,其中所述元数据管理器将响应于来自所述设备的元数据命令(310)来执行至少一个元数据管理操作。
6.根据权利要求2所述的IC封装,其中:
所述元数据存储在所述存储器单元电路处;以及
所述存储器接口从所述存储器单元电路访问所述元数据,并且响应于来自所述设备的请求向所述设备提供所述访问的元数据。
7.根据权利要求6所述的IC封装,其中:
所述元数据管理器将向所述设备提供存储所述元数据的所述存储器单元电路的存储器地址;以及
所述请求包括所述存储器地址。
8.根据权利要求2所述的IC封装,其中所述元数据存储在所述组一个或多个逻辑层中的至少一个存储元件(304)中。
9.根据权利要求2所述的IC封装,其中所述元数据管理器将独立于来自所述设备的信令来执行至少一个元数据管理操作。
10.一种方法,其包括:
提供集成电路(IC)(105),其包括一组堆栈存储器层(120),所述存储器层包括存储器单元电路(126)并且包括一组一个或多个逻辑层(!22),所述逻辑层(!22)电耦合至所述组堆栈存储器层,所述组一个或多个逻辑层包括元数据管理器(134),所述元数据管理器(134)耦合至所述组一个或多个堆栈存储器层的所述存储器单元电路并且包括存储器接口(130),所述存储器接口(130)耦合至所述元数据管理器并耦合至所述IC的外部的设备(104);
操作所述存储器接口以执行针对所述设备的存储器访问;以及
所述元数据管理器管理存储在所述IC处的元数据。
11.根据权利要求10所述的方法,其中所述IC包括实现所述存储器单元电路的一组堆栈存储器层。
12.根据权利要求11所述的方法,其中管理元数据包括响应于来自所述设备的存储器访问请求(306)来执行至少一个元数据管理操作。
13.根据权利要求12所述的方法,其中所述至少一个元数据管理操作包括以下操作中的至少一个:
响应于指定的存储器地址范围与由所述存储器访问请求识别的存储器地址之间的匹配来更新存储在所述IC处的存储器利用率量度(804);
利用由所述存储器访问请求识别的存储器地址更新存储在所述IC处的存储器日志信息(902);以及
计算和验证与存储在由所述存储器访问请求识别的存储器地址处的操作数据(1004、1105)相关联的错误检测值(1006、1106)这两个操作中的一个,所述错误检测值包括奇偶校验值、校验和、以及错误校正代码中的至少一个。
14.根据权利要求11所述的方法,其中管理元数据包括响应于来自所述设备的元数据命令(310)来执行至少一个元数据管理操作。
15.根据权利要求14所述的方法,其中所述至少一个元数据管理操作包括以下操作中的至少一个:
访问存储在所述IC处的地址转换信息(704)以将由所述元数据命令识别的虚拟地址转换成物理地址;
配置将由所述元数据管理器执行的存储器利用率剖析操作的至少一个参数;
重新设置将由所述元数据管理器执行的存储器利用率剖析操作的至少一个剖析量度(804);
配置将由所述元数据管理器执行的存储器记录操作的至少一个参数(802);
访问存储在所述IC处的存储器日志信息(902)以输出至所述设备;以及
修改与操作数据相关联的至少一个垃圾收集属性。
16.一种系统,其包括:
堆栈存储器设备(102),其包括:
一组堆栈存储器层(120),其包括存储器单元电路(126);以及
一组一个或多个逻辑层(122),其电耦合至所述组堆栈存储器层,所述组一个或多个逻辑层包括元数据管理器(134)和存储器接口(130),所述元数据管理器管理存储在所述堆栈存储器设备处的元数据;以及
处理器设备(104),其通过所述存储器接口耦合至所述堆栈存储器设备,所述处理器设备提供操作数据(1004、1105)以存储在所述组堆栈存储器处,并且将元数据命令(310)发布至所述堆栈存储器设备以通过所述元数据管理器针对与所述操作数据相关联的元数据来发起执行少一个元数据管理操作。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/567,945 | 2012-08-06 | ||
US13/567,945 US9697147B2 (en) | 2012-08-06 | 2012-08-06 | Stacked memory device with metadata management |
PCT/US2013/053596 WO2014025676A1 (en) | 2012-08-06 | 2013-08-05 | Stacked memory device with metadata management |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104541257A true CN104541257A (zh) | 2015-04-22 |
CN104541257B CN104541257B (zh) | 2018-02-09 |
Family
ID=48998713
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380041807.3A Active CN104541257B (zh) | 2012-08-06 | 2013-08-05 | 利用元数据管理的堆栈存储器设备 |
Country Status (7)
Country | Link |
---|---|
US (1) | US9697147B2 (zh) |
EP (1) | EP2880543A1 (zh) |
JP (1) | JP2015528599A (zh) |
KR (1) | KR101931297B1 (zh) |
CN (1) | CN104541257B (zh) |
IN (1) | IN2015DN00920A (zh) |
WO (1) | WO2014025676A1 (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106814662A (zh) * | 2015-11-30 | 2017-06-09 | 三星电子株式会社 | 加速器控制器和控制加速器逻辑的方法 |
CN108241484A (zh) * | 2016-12-26 | 2018-07-03 | 上海寒武纪信息科技有限公司 | 基于高带宽存储器的神经网络计算装置和方法 |
CN108885885A (zh) * | 2016-02-12 | 2018-11-23 | 美光科技公司 | 存储器中的数据收集 |
CN110199499A (zh) * | 2017-03-17 | 2019-09-03 | 微芯片技术股份有限公司 | 统一的集中式网络堆栈 |
CN110557408A (zh) * | 2015-12-29 | 2019-12-10 | 亚马逊技术股份有限公司 | 网络技术 |
CN110675903A (zh) * | 2018-07-02 | 2020-01-10 | 上海登临科技有限公司 | 包括绕过物理层的硅通孔(tsv)的可配置随机存取存储器(ram)阵列 |
CN111446247A (zh) * | 2016-03-07 | 2020-07-24 | 杭州海存信息技术有限公司 | 兼具查毒功能的存储器 |
CN111742303A (zh) * | 2018-02-27 | 2020-10-02 | Arm有限公司 | 用于在调试设备时访问元数据的装置和方法 |
US10917344B2 (en) | 2015-12-29 | 2021-02-09 | Amazon Technologies, Inc. | Connectionless reliable transport |
CN112783871A (zh) * | 2021-03-16 | 2021-05-11 | 广东核电合营有限公司 | 标牌数据处理方法、装置、计算机设备和存储介质 |
US11343198B2 (en) | 2015-12-29 | 2022-05-24 | Amazon Technologies, Inc. | Reliable, out-of-order transmission of packets |
US11451476B2 (en) | 2015-12-28 | 2022-09-20 | Amazon Technologies, Inc. | Multi-path transport design |
CN116521576A (zh) * | 2023-05-11 | 2023-08-01 | 上海合见工业软件集团有限公司 | Eda软件数据处理系统 |
Families Citing this family (66)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9432298B1 (en) * | 2011-12-09 | 2016-08-30 | P4tents1, LLC | System, method, and computer program product for improving memory systems |
US8922243B2 (en) * | 2012-12-23 | 2014-12-30 | Advanced Micro Devices, Inc. | Die-stacked memory device with reconfigurable logic |
US9065722B2 (en) | 2012-12-23 | 2015-06-23 | Advanced Micro Devices, Inc. | Die-stacked device with partitioned multi-hop network |
US9619167B2 (en) * | 2013-11-27 | 2017-04-11 | Intel Corporation | System and method for computing message digests |
US9436823B1 (en) * | 2013-12-17 | 2016-09-06 | Google Inc. | System and method for detecting malicious code |
US20150279431A1 (en) | 2014-04-01 | 2015-10-01 | Micron Technology, Inc. | Stacked semiconductor die assemblies with partitioned logic and associated systems and methods |
US9639646B2 (en) * | 2014-07-22 | 2017-05-02 | Xilinx, Inc. | System-on-chip intellectual property block discovery |
US10353775B1 (en) * | 2014-08-06 | 2019-07-16 | SK Hynix Inc. | Accelerated data copyback |
US10002043B2 (en) | 2014-08-19 | 2018-06-19 | Samsung Electronics Co., Ltd. | Memory devices and modules |
US10002044B2 (en) | 2014-08-19 | 2018-06-19 | Samsung Electronics Co., Ltd. | Memory devices and modules |
US9984769B2 (en) * | 2014-10-30 | 2018-05-29 | Research & Business Foundation Sungkyunkwan University | 3D memory with error checking and correction function |
US10074417B2 (en) * | 2014-11-20 | 2018-09-11 | Rambus Inc. | Memory systems and methods for improved power management |
US9626311B2 (en) * | 2015-01-22 | 2017-04-18 | Qualcomm Incorporated | Memory controller placement in a three-dimensional (3D) integrated circuit (IC) (3DIC) employing distributed through-silicon-via (TSV) farms |
US9727395B2 (en) * | 2015-07-01 | 2017-08-08 | International Business Machines Corporation | Robust and adaptable management of event counters |
US9916091B2 (en) | 2015-07-13 | 2018-03-13 | Samsung Electronics Co., Ltd. | Memory system architecture |
US10121553B2 (en) | 2015-09-30 | 2018-11-06 | Sunrise Memory Corporation | Capacitive-coupled non-volatile thin-film transistor NOR strings in three-dimensional arrays |
US9842651B2 (en) | 2015-11-25 | 2017-12-12 | Sunrise Memory Corporation | Three-dimensional vertical NOR flash thin film transistor strings |
US11120884B2 (en) | 2015-09-30 | 2021-09-14 | Sunrise Memory Corporation | Implementing logic function and generating analog signals using NOR memory strings |
US9892800B2 (en) | 2015-09-30 | 2018-02-13 | Sunrise Memory Corporation | Multi-gate NOR flash thin-film transistor strings arranged in stacked horizontal active strips with vertical control gates |
JP6719950B2 (ja) | 2016-04-15 | 2020-07-08 | キヤノン株式会社 | データ送信方法、プログラム、データ送信装置、リソグラフィ装置、及び物品の製造方法 |
KR102571497B1 (ko) | 2016-05-10 | 2023-08-29 | 삼성전자주식회사 | 멀티 스택 칩 패키지를 포함하는 데이터 저장 장치 및 그것의 동작 방법 |
WO2018004756A1 (en) | 2016-06-27 | 2018-01-04 | Sukalpa Biswas | Memory system having combined high density, low bandwidth and low density, high bandwidth memories |
US10282292B2 (en) * | 2016-10-17 | 2019-05-07 | Advanced Micro Devices, Inc. | Cluster-based migration in a multi-level memory hierarchy |
KR102392844B1 (ko) | 2017-03-10 | 2022-05-03 | 삼성전자주식회사 | 메모리 컨트롤러 및 그것을 포함하는 저장 장치 |
US10692874B2 (en) | 2017-06-20 | 2020-06-23 | Sunrise Memory Corporation | 3-dimensional NOR string arrays in segmented stacks |
US10608008B2 (en) | 2017-06-20 | 2020-03-31 | Sunrise Memory Corporation | 3-dimensional nor strings with segmented shared source regions |
US10608011B2 (en) | 2017-06-20 | 2020-03-31 | Sunrise Memory Corporation | 3-dimensional NOR memory array architecture and methods for fabrication thereof |
US11180861B2 (en) | 2017-06-20 | 2021-11-23 | Sunrise Memory Corporation | 3-dimensional NOR string arrays in segmented stacks |
US10496335B2 (en) * | 2017-06-30 | 2019-12-03 | Intel Corporation | Method and apparatus for performing multi-object transformations on a storage device |
US10489244B2 (en) * | 2017-10-03 | 2019-11-26 | Microsoft Technology Licensing, Llc | Systems and methods for detecting and correcting memory corruptions in software |
US10936221B2 (en) | 2017-10-24 | 2021-03-02 | Micron Technology, Inc. | Reconfigurable memory architectures |
US11281608B2 (en) | 2017-12-11 | 2022-03-22 | Micron Technology, Inc. | Translation system for finer grain memory architectures |
US10475812B2 (en) | 2018-02-02 | 2019-11-12 | Sunrise Memory Corporation | Three-dimensional vertical NOR flash thin-film transistor strings |
CN108427728A (zh) * | 2018-02-13 | 2018-08-21 | 百度在线网络技术(北京)有限公司 | 元数据的管理方法、设备及计算机可读介质 |
CN110347527A (zh) * | 2018-04-02 | 2019-10-18 | 深信服科技股份有限公司 | 一种校验和状态的判定方法、系统、装置及可读存储介质 |
US10733046B2 (en) * | 2018-04-20 | 2020-08-04 | Micron Technology, Inc. | Transaction metadata |
SG11202011400PA (en) | 2018-05-17 | 2020-12-30 | Lightmatter Inc | Optically interfaced stacked memories and related methods and systems |
KR102067735B1 (ko) * | 2018-06-20 | 2020-01-17 | 연세대학교 산학협력단 | 가상화 시스템의 메모리 관리 장치 및 그 방법 |
US10741581B2 (en) | 2018-07-12 | 2020-08-11 | Sunrise Memory Corporation | Fabrication method for a 3-dimensional NOR memory array |
TWI713195B (zh) | 2018-09-24 | 2020-12-11 | 美商森恩萊斯記憶體公司 | 三維nor記憶電路製程中之晶圓接合及其形成之積體電路 |
US11594463B2 (en) * | 2018-10-11 | 2023-02-28 | Intel Corporation | Substrate thermal layer for heat spreader connection |
CN113169041B (zh) | 2018-12-07 | 2024-04-09 | 日升存储公司 | 形成多层垂直nor型存储器串阵列的方法 |
JP7425069B2 (ja) | 2019-01-30 | 2024-01-30 | サンライズ メモリー コーポレイション | 基板接合を用いた高帯域幅・大容量メモリ組み込み型電子デバイス |
US11398492B2 (en) | 2019-02-11 | 2022-07-26 | Sunrise Memory Corporation | Vertical thing-film transistor and application as bit-line connector for 3-dimensional memory arrays |
US11232208B2 (en) * | 2019-02-26 | 2022-01-25 | The Trustees Of The University Of Pennsylvania | Methods, systems, and computer readable media for adaptive metadata architecture |
KR20220004966A (ko) | 2019-03-06 | 2022-01-12 | 라이트매터, 인크. | 포토닉 통신 플랫폼 |
US11341046B2 (en) * | 2019-08-05 | 2022-05-24 | Micron Technology, Inc. | Layer interleaving in multi-layered memory |
US12093189B1 (en) * | 2019-09-30 | 2024-09-17 | Amazon Technologies, Inc. | Memory-side page activity recorder |
US11599299B2 (en) * | 2019-11-19 | 2023-03-07 | Invensas Llc | 3D memory circuit |
WO2021127218A1 (en) | 2019-12-19 | 2021-06-24 | Sunrise Memory Corporation | Process for preparing a channel region of a thin-film transistor |
KR20220137062A (ko) | 2020-02-03 | 2022-10-11 | 라이트매터, 인크. | 광자 웨이퍼 통신 시스템들 및 관련 패키지들 |
WO2021159028A1 (en) | 2020-02-07 | 2021-08-12 | Sunrise Memory Corporation | High capacity memory circuit with low effective latency |
US11508693B2 (en) | 2020-02-24 | 2022-11-22 | Sunrise Memory Corporation | High capacity memory module including wafer-section memory circuit |
US11507301B2 (en) | 2020-02-24 | 2022-11-22 | Sunrise Memory Corporation | Memory module implementing memory centric architecture |
US12019736B2 (en) | 2020-02-27 | 2024-06-25 | The Trustees Of The University Of Pennsylvania | Methods, systems, and computer readable media for main memory tag compression |
WO2021207050A1 (en) | 2020-04-08 | 2021-10-14 | Sunrise Memory Corporation | Charge-trapping layer with optimized number of charge-trapping sites for fast program and erase of a memory cell in a 3-dimensional nor memory string array |
JP2022010482A (ja) * | 2020-06-29 | 2022-01-17 | キオクシア株式会社 | メモリシステム |
WO2022047067A1 (en) | 2020-08-31 | 2022-03-03 | Sunrise Memory Corporation | Thin-film storage transistors in a 3-dimensional array or nor memory strings and process for fabricating the same |
US11842777B2 (en) | 2020-11-17 | 2023-12-12 | Sunrise Memory Corporation | Methods for reducing disturb errors by refreshing data alongside programming or erase operations |
US11848056B2 (en) | 2020-12-08 | 2023-12-19 | Sunrise Memory Corporation | Quasi-volatile memory with enhanced sense amplifier operation |
US20220238174A1 (en) * | 2021-01-27 | 2022-07-28 | Micron Technology, Inc. | Metadata storage at a memory device |
US20220317925A1 (en) * | 2021-03-31 | 2022-10-06 | Advanced Micro Devices, Inc. | Methods and apparatus for offloading tiered memories management |
US11947839B2 (en) * | 2021-05-10 | 2024-04-02 | Samsung Electronics Co., Ltd. | Storage device, system, and method for customizable metadata |
TW202310429A (zh) | 2021-07-16 | 2023-03-01 | 美商日升存儲公司 | 薄膜鐵電電晶體的三維記憶體串陣列 |
KR20240090419A (ko) | 2021-10-13 | 2024-06-21 | 라이트매터, 인크. | 멀티-레티클 포토닉 통신 플랫폼 상의 멀티-테넌트 격리 |
US20230297499A1 (en) * | 2022-01-21 | 2023-09-21 | Nvidia Corporation | Locating a memory unit associated with a memory address utilizing a mapper |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060164882A1 (en) * | 2004-12-23 | 2006-07-27 | Robert Norman | Storage controller using vertical memory |
US20100070696A1 (en) * | 2008-09-17 | 2010-03-18 | Dennis Blankenship | System and Method for Packaged Memory |
US20100070782A1 (en) * | 2008-09-18 | 2010-03-18 | Honeywell International Inc. | Apparatus and method for operating a computing platform without a battery pack |
US20110231739A1 (en) * | 2010-03-22 | 2011-09-22 | Jin-Ki Kim | Composite semiconductor memory device with error correction |
US20120023376A1 (en) * | 2009-01-12 | 2012-01-26 | Jeddeloh Joe M | Systems and methods for monitoring a memory system |
Family Cites Families (53)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5391917A (en) | 1993-05-10 | 1995-02-21 | International Business Machines Corporation | Multiprocessor module packaging |
US6189065B1 (en) | 1998-09-28 | 2001-02-13 | International Business Machines Corporation | Method and apparatus for interrupt load balancing for powerPC processors |
US6519674B1 (en) | 2000-02-18 | 2003-02-11 | Chameleon Systems, Inc. | Configuration bits layout |
US7308524B2 (en) | 2003-01-13 | 2007-12-11 | Silicon Pipe, Inc | Memory chain |
US20040153902A1 (en) * | 2003-01-21 | 2004-08-05 | Nexflash Technologies, Inc. | Serial flash integrated circuit having error detection and correction |
TWI242855B (en) | 2004-10-13 | 2005-11-01 | Advanced Semiconductor Eng | Chip package structure, package substrate and manufacturing method thereof |
US7477535B2 (en) | 2006-10-05 | 2009-01-13 | Nokia Corporation | 3D chip arrangement including memory manager |
GB0620043D0 (en) | 2006-10-10 | 2006-11-22 | Univ Belfast | Improvements relating to the detection of malicious content in date |
EP3540736B1 (en) | 2006-12-14 | 2023-07-26 | Rambus Inc. | Multi-die memory device |
US8423789B1 (en) | 2007-05-22 | 2013-04-16 | Marvell International Ltd. | Key generation techniques |
US7849383B2 (en) * | 2007-06-25 | 2010-12-07 | Sandisk Corporation | Systems and methods for reading nonvolatile memory using multiple reading schemes |
US8338267B2 (en) | 2007-07-11 | 2012-12-25 | Sematech, Inc. | Systems and methods for vertically integrating semiconductor devices |
US8156307B2 (en) | 2007-08-20 | 2012-04-10 | Convey Computer | Multi-processor system having at least one processor that comprises a dynamically reconfigurable instruction set |
US8356138B1 (en) | 2007-08-20 | 2013-01-15 | Xilinx, Inc. | Methods for implementing programmable memory controller for distributed DRAM system-in-package (SiP) |
US7623365B2 (en) | 2007-08-29 | 2009-11-24 | Micron Technology, Inc. | Memory device interface methods, apparatus, and systems |
JP4775969B2 (ja) * | 2007-09-03 | 2011-09-21 | ルネサスエレクトロニクス株式会社 | 不揮発性記憶装置 |
US8059443B2 (en) | 2007-10-23 | 2011-11-15 | Hewlett-Packard Development Company, L.P. | Three-dimensional memory module architectures |
US8064739B2 (en) | 2007-10-23 | 2011-11-22 | Hewlett-Packard Development Company, L.P. | Three-dimensional die stacks with inter-device and intra-device optical interconnect |
US7930446B2 (en) | 2007-12-28 | 2011-04-19 | Intel Corporation | Methods and apparatuses for wireless network communication wherein a universal serial bus request block (URB) is generated that will vary parameters that controls wireless transmission commands between devices |
US8169808B2 (en) | 2008-01-25 | 2012-05-01 | Micron Technology, Inc. | NAND flash content addressable memory |
US9229887B2 (en) | 2008-02-19 | 2016-01-05 | Micron Technology, Inc. | Memory device with network on chip methods, apparatus, and systems |
US8397084B2 (en) | 2008-06-12 | 2013-03-12 | Microsoft Corporation | Single instance storage of encrypted data |
JP2010021306A (ja) | 2008-07-10 | 2010-01-28 | Hitachi Ltd | 半導体装置 |
US7930661B1 (en) | 2008-08-04 | 2011-04-19 | Xilinx, Inc. | Software model for a hybrid stacked field programmable gate array |
US7796446B2 (en) | 2008-09-19 | 2010-09-14 | Qimonda Ag | Memory dies for flexible use and method for configuring memory dies |
US20100157644A1 (en) | 2008-12-19 | 2010-06-24 | Unity Semiconductor Corporation | Configurable memory interface to provide serial and parallel access to memories |
US20100162065A1 (en) | 2008-12-19 | 2010-06-24 | Unity Semiconductor Corporation | Protecting integrity of data in multi-layered memory with data redundancy |
US20100167100A1 (en) * | 2008-12-26 | 2010-07-01 | David Roger Moore | Composite membrane and method for making |
US8127185B2 (en) | 2009-01-23 | 2012-02-28 | Micron Technology, Inc. | Memory devices and methods for managing error regions |
US8977805B2 (en) | 2009-03-25 | 2015-03-10 | Apple Inc. | Host-assisted compaction of memory blocks |
US8451014B2 (en) | 2009-09-09 | 2013-05-28 | Advanced Micro Devices, Inc. | Die stacking, testing and packaging for yield |
US8661184B2 (en) * | 2010-01-27 | 2014-02-25 | Fusion-Io, Inc. | Managing non-volatile media |
US8519739B1 (en) | 2010-05-03 | 2013-08-27 | ISC8 Inc. | High-speed processor core comprising direct processor-to-memory connectivity |
WO2011160311A1 (en) | 2010-06-25 | 2011-12-29 | Biwin Technology Limited | Memory device |
US8105875B1 (en) | 2010-10-14 | 2012-01-31 | Taiwan Semiconductor Manufacturing Company, Ltd. | Approach for bonding dies onto interposers |
US8407245B2 (en) | 2010-11-24 | 2013-03-26 | Microsoft Corporation | Efficient string pattern matching for large pattern sets |
US9064715B2 (en) | 2010-12-09 | 2015-06-23 | Taiwan Semiconductor Manufacturing Company, Ltd. | Networking packages based on interposers |
US8615694B2 (en) | 2011-02-07 | 2013-12-24 | Texas Instruments Incorporated | Interposer TAP boundary register coupling stacked die functional input/output data |
US8700951B1 (en) * | 2011-03-09 | 2014-04-15 | Western Digital Technologies, Inc. | System and method for improving a data redundancy scheme in a solid state subsystem with additional metadata |
US9704766B2 (en) | 2011-04-28 | 2017-07-11 | Taiwan Semiconductor Manufacturing Company, Ltd. | Interposers of 3-dimensional integrated circuit package systems and methods of designing the same |
US20120290793A1 (en) | 2011-05-10 | 2012-11-15 | Jaewoong Chung | Efficient tag storage for large data caches |
US9164147B2 (en) | 2011-06-16 | 2015-10-20 | Taiwan Semiconductor Manufacturing Co., Ltd. | Method and apparatus for 3D IC test |
GB2493195A (en) | 2011-07-28 | 2013-01-30 | St Microelectronics Res & Dev | Address translation and routing between dies in a system in package. |
JP5524144B2 (ja) | 2011-08-08 | 2014-06-18 | 株式会社東芝 | key−valueストア方式を有するメモリシステム |
US8793467B2 (en) | 2011-09-30 | 2014-07-29 | Pure Storage, Inc. | Variable length encoding in a storage system |
JP5694101B2 (ja) | 2011-09-20 | 2015-04-01 | 株式会社東芝 | メモリ・デバイス、ホスト・デバイス |
US20130073755A1 (en) | 2011-09-20 | 2013-03-21 | Advanced Micro Devices, Inc. | Device protocol translator for connection of external devices to a processing unit package |
WO2013081633A1 (en) | 2011-12-02 | 2013-06-06 | Intel Corporation | Stacked memory allowing variance in device interconnects |
US8778734B2 (en) | 2012-03-28 | 2014-07-15 | Advanced Micro Devices, Inc. | Tree based adaptive die enumeration |
DE112012006172B4 (de) | 2012-03-30 | 2020-12-03 | Intel Corporation | Generischer Adressen-Scrambler für Speicherschaltungs-Testengine |
US8546955B1 (en) | 2012-08-16 | 2013-10-01 | Xilinx, Inc. | Multi-die stack package |
US8737108B2 (en) | 2012-09-25 | 2014-05-27 | Intel Corporation | 3D memory configurable for performance and power |
US9515899B2 (en) | 2012-12-19 | 2016-12-06 | Veritas Technologies Llc | Providing optimized quality of service to prioritized virtual machines and applications based on quality of shared resources |
-
2012
- 2012-08-06 US US13/567,945 patent/US9697147B2/en active Active
-
2013
- 2013-08-05 CN CN201380041807.3A patent/CN104541257B/zh active Active
- 2013-08-05 IN IN920DEN2015 patent/IN2015DN00920A/en unknown
- 2013-08-05 WO PCT/US2013/053596 patent/WO2014025676A1/en active Application Filing
- 2013-08-05 EP EP13750437.9A patent/EP2880543A1/en not_active Withdrawn
- 2013-08-05 KR KR1020157005299A patent/KR101931297B1/ko active IP Right Grant
- 2013-08-05 JP JP2015526602A patent/JP2015528599A/ja active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060164882A1 (en) * | 2004-12-23 | 2006-07-27 | Robert Norman | Storage controller using vertical memory |
US20100070696A1 (en) * | 2008-09-17 | 2010-03-18 | Dennis Blankenship | System and Method for Packaged Memory |
US20100070782A1 (en) * | 2008-09-18 | 2010-03-18 | Honeywell International Inc. | Apparatus and method for operating a computing platform without a battery pack |
US20120023376A1 (en) * | 2009-01-12 | 2012-01-26 | Jeddeloh Joe M | Systems and methods for monitoring a memory system |
US20110231739A1 (en) * | 2010-03-22 | 2011-09-22 | Jin-Ki Kim | Composite semiconductor memory device with error correction |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106814662B (zh) * | 2015-11-30 | 2019-06-25 | 三星电子株式会社 | 加速器控制器和控制加速器逻辑的方法 |
CN106814662A (zh) * | 2015-11-30 | 2017-06-09 | 三星电子株式会社 | 加速器控制器和控制加速器逻辑的方法 |
US11451476B2 (en) | 2015-12-28 | 2022-09-20 | Amazon Technologies, Inc. | Multi-path transport design |
CN110557408B (zh) * | 2015-12-29 | 2021-02-05 | 亚马逊技术股份有限公司 | 用于网络传输的计算系统和方法以及网络适配器设备 |
US11343198B2 (en) | 2015-12-29 | 2022-05-24 | Amazon Technologies, Inc. | Reliable, out-of-order transmission of packets |
CN110557408A (zh) * | 2015-12-29 | 2019-12-10 | 亚马逊技术股份有限公司 | 网络技术 |
US11770344B2 (en) | 2015-12-29 | 2023-09-26 | Amazon Technologies, Inc. | Reliable, out-of-order transmission of packets |
US10917344B2 (en) | 2015-12-29 | 2021-02-09 | Amazon Technologies, Inc. | Connectionless reliable transport |
CN108885885B (zh) * | 2016-02-12 | 2019-12-17 | 美光科技公司 | 存储器中的数据收集 |
CN108885885A (zh) * | 2016-02-12 | 2018-11-23 | 美光科技公司 | 存储器中的数据收集 |
CN111446247A (zh) * | 2016-03-07 | 2020-07-24 | 杭州海存信息技术有限公司 | 兼具查毒功能的存储器 |
CN111446247B (zh) * | 2016-03-07 | 2023-04-07 | 杭州海存信息技术有限公司 | 兼具查毒功能的存储器 |
CN108241484A (zh) * | 2016-12-26 | 2018-07-03 | 上海寒武纪信息科技有限公司 | 基于高带宽存储器的神经网络计算装置和方法 |
CN108241484B (zh) * | 2016-12-26 | 2021-10-15 | 上海寒武纪信息科技有限公司 | 基于高带宽存储器的神经网络计算装置和方法 |
CN110199499A (zh) * | 2017-03-17 | 2019-09-03 | 微芯片技术股份有限公司 | 统一的集中式网络堆栈 |
CN111742303A (zh) * | 2018-02-27 | 2020-10-02 | Arm有限公司 | 用于在调试设备时访问元数据的装置和方法 |
CN111742303B (zh) * | 2018-02-27 | 2024-04-19 | Arm有限公司 | 用于在调试设备时访问元数据的装置和方法 |
CN110675903B (zh) * | 2018-07-02 | 2022-02-25 | 上海登临科技有限公司 | 包括绕过物理层的硅通孔(tsv)的可配置随机存取存储器(ram)阵列 |
CN110675903A (zh) * | 2018-07-02 | 2020-01-10 | 上海登临科技有限公司 | 包括绕过物理层的硅通孔(tsv)的可配置随机存取存储器(ram)阵列 |
CN112783871A (zh) * | 2021-03-16 | 2021-05-11 | 广东核电合营有限公司 | 标牌数据处理方法、装置、计算机设备和存储介质 |
CN116521576A (zh) * | 2023-05-11 | 2023-08-01 | 上海合见工业软件集团有限公司 | Eda软件数据处理系统 |
CN116521576B (zh) * | 2023-05-11 | 2024-03-08 | 上海合见工业软件集团有限公司 | Eda软件数据处理系统 |
Also Published As
Publication number | Publication date |
---|---|
EP2880543A1 (en) | 2015-06-10 |
US9697147B2 (en) | 2017-07-04 |
US20140040698A1 (en) | 2014-02-06 |
CN104541257B (zh) | 2018-02-09 |
KR101931297B1 (ko) | 2018-12-20 |
KR20150042220A (ko) | 2015-04-20 |
JP2015528599A (ja) | 2015-09-28 |
WO2014025676A1 (en) | 2014-02-13 |
IN2015DN00920A (zh) | 2015-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104541257A (zh) | 利用元数据管理的堆栈存储器设备 | |
US9910605B2 (en) | Page migration in a hybrid memory device | |
US11086774B2 (en) | Address translation for storage device | |
US9170948B2 (en) | Cache coherency using die-stacked memory device with logic die | |
US11132300B2 (en) | Memory hierarchy using page-based compression | |
US9406403B2 (en) | Spare memory external to protected memory | |
US11722064B2 (en) | Address translation for storage device | |
US9262322B2 (en) | Method and apparatus for storing a processor architectural state in cache memory | |
US11513689B2 (en) | Dedicated interface for coupling flash memory and dynamic random access memory | |
CN105378642A (zh) | 用于高性能和低成本的闪存转换层的系统和方法 | |
US9477605B2 (en) | Memory hierarchy using row-based compression | |
CN109155146A (zh) | 一体式封装后修复装置 | |
CN109154907A (zh) | 在输入-输出存储器管理单元中使用多个存储器元件来执行虚拟地址到物理地址转译 | |
US20160246715A1 (en) | Memory module with volatile and non-volatile storage arrays | |
TW201107981A (en) | Method and apparatus for protecting the integrity of cached data in a direct-attached storage (DAS) system | |
WO2016116930A1 (en) | Reusable memory devices with wom codes | |
US20150106587A1 (en) | Data remapping for heterogeneous processor | |
US10331385B2 (en) | Cooperative write-back cache flushing for storage devices | |
CN115732016A (zh) | 存储器装置、存储器控制器和纠正数据错误的方法 | |
US20230325093A1 (en) | Storage device and operating method thereof | |
KR101335343B1 (ko) | 메모리 관리 장치 및 방법 | |
Wang et al. | A Fine-grained Data Reconstruction Algorithm for Solid-state Disks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |