CN102349109A - 存储器预取***及方法 - Google Patents
存储器预取***及方法 Download PDFInfo
- Publication number
- CN102349109A CN102349109A CN2010800120037A CN201080012003A CN102349109A CN 102349109 A CN102349109 A CN 102349109A CN 2010800120037 A CN2010800120037 A CN 2010800120037A CN 201080012003 A CN201080012003 A CN 201080012003A CN 102349109 A CN102349109 A CN 102349109A
- Authority
- CN
- China
- Prior art keywords
- prefetch
- memory
- word
- memory bank
- accumulator system
- 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
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0875—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3275—Power saving in memory, e.g. RAM, cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0862—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/6022—Using a prefetch buffer or dedicated prefetch cache
-
- 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)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Memory System (AREA)
- Advance Control (AREA)
Abstract
本文揭示***及方法,包含操作以在与堆叠式裸片存储器***中的选定存储器库相关联的管线为空时从所述选定存储器库预取可编程数目个数据字的那些***及方法。
Description
技术领域
本专利申请案主张来自2009年2月13日提出申请的第12/371,389号美国申请案的优先权权益,所述美国申请案以引用的方式并入本文中。
本文中所描述的各种实施例涉及与半导体存储器相关联的***及方法以及与存储器预取相关联的***及方法。
背景技术
微处理器技术已经以比半导体存储器技术的速率更快的速率演变。因此,现代主机处理器与半导体存储器子***之间通常存在性能上的不匹配,所述处理器配接到所述半导体存储器子***以接收指令及数据。举例来说,据估计,一些高端服务器空闲四分之三时钟来等待对存储器请求的响应。
另外,随着处理器核心及线程的数目继续增加,软件应用程序及操作***技术的演变已增加了对较高密度存储器子***的需求。然而,当前技术的存储器子***通常表示性能与密度之间的折衷。在不超过JEDEC电气规范的情形下,较高带宽可限制可连接于***中的存储器卡或模块的数目。
已提出对JEDEC接口的扩展,但关于未来所预期的存储器带宽及密度通常可发现所述扩展为不足的。缺点包含缺少存储器功率优化及主机处理器与存储器子***之间的接口的唯一性。随着处理器及/或存储器技术改变,后一种缺点可导致对重新设计所述接口的需要。
附图说明
图1是根据本发明的各种实例性实施例的存储器***的框图。
图2是根据各种实例性实施例的与逻辑裸片堆叠在一起的堆叠式裸片3D存储器阵列的剖面概念图。
图3及图4是展示根据各种实例性实施例的与实例性包相关联的字段的包图示。
图5是根据各种实例性实施例的存储器库控制器及相关联模块的框图。
图5A是根据各种实例性实施例的存储器***的框图。
图6A及图6B是图解说明根据各种实例性实施例的方法的流程图。
具体实施方式
图1是根据本发明的各种实例性实施例的存储器***100的框图。一个或一个以上实施例操作以在一个或一个以上始发装置(例如,一个或一个以上处理器)与堆叠式阵列存储器“库”集合之间大致同时传送多个命令、地址及/或数据传出流。可产生增加的存储器***密度、带宽、平行性及可缩放性。
本文中的多裸片存储器阵列实施例聚集了在先前设计中通常位于每一个别存储器阵列裸片上的控制逻辑。本文中称为“存储器库”的堆叠式裸片群组的子区段共享共用控制逻辑。存储器库架构策略性地分割存储器控制逻辑以增加能量效率同时提供已通电存储器组的较精细粒度。本文中的实施例还实现标准化主机处理器到存储器***接口。随着存储器技术演变,所述标准化接口可减少重新设计循环次数。
图2是根据各种实例性实施例的与逻辑裸片202堆叠在一起的堆叠式裸片3D存储器阵列200的剖面概念图。存储器***100并入有一个或一个以上铺砌式存储器阵列(例如,堆叠式裸片3D存储器阵列200)堆叠。多个存储器阵列(例如,存储器阵列203)被制作到多个堆叠式裸片中的每一者(例如,堆叠式裸片204)上。
所述堆叠式裸片中的每一者在逻辑上被划分成多个“瓦片”(例如,与堆叠式裸片204相关联的瓦片205A、205B及205C)。每一瓦片(例如,瓦片205C)可包含一个或一个以上存储器阵列203。在一些实施例中,每一存储器阵列203可配置为存储器***100中的一个或一个以上独立存储器组。存储器阵列203并不限于任何特定存储器技术且可包含动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、快闪存储器等。
堆叠式存储器阵列瓦片集合208可包含来自所述堆叠式裸片中的每一者的单个瓦片(例如,瓦片212B、212C及212D,其中在图1中基底瓦片被隐藏而看不到)。功率、地址及/或数据以及类似共用信号可沿“Z”维度220在例如穿晶片互连件(TWI)的传导路径(例如,传导路径224)上横过堆叠式瓦片集合208。因此,堆叠式裸片3D存储器阵列200被分割成存储器“库”(例如,存储器库230)集合。每一存储器库包含一堆叠式瓦片集合,其中从多个堆叠式裸片中的每一者出一个瓦片。所述库中的每一瓦片包含一个或一个以上存储器阵列(例如,存储器阵列240)。
图1中展示所得存储器库集合102。下文所描述的控制、切换及通信逻辑被制作到逻辑裸片202上。存储器***100包含多个存储器库控制器(MVC)104(例如,MVC106)。每一MVC以一对一关系通信地耦合到对应存储器库(例如,存储器库110)。因此,每一MVC能够独立于其它MVC与其相应存储器库之间的通信而与对应存储器库通信。
存储器***100还包含多个可配置串行化通信链路接口(SCLI)112。SCLI 112被划分成传出SCLI群组113(例如,传出SCLI 114)及传入SCLI群组115。多个SCLI 112中的每一者能够与其它SCLI 112同时操作。SCLI 112共同将多个MVC 104通信地耦合到一个或一个以上主机处理器114。存储器***100呈现主机处理器114的高度抽象多链路高吞吐量接口。
存储器***100还可包含矩阵开关116。矩阵开关116通信地耦合到多个SCLI 112且耦合到多个MVC 104。矩阵开关116能够将每一SCLI交叉连接到选定MVC。因此,主机处理器114可跨越多个SCLI 112以大致同时方式存取多个存储器库102。此架构可提供现代处理器技术(包含多核心技术)所需要的处理器到存储器带宽。
存储器***100还可包含通信地耦合到矩阵开关116的存储器组构控制寄存器117。存储器组构控制寄存器117接受来自配置源的存储器组构配置参数且将存储器***100的一个或一个以上组件配置为根据可选择模式操作。举例来说,矩阵开关116以及多个存储器库102及多个MVC 104中的每一者通常可经配置以响应于单独存储器请求而独立于彼此地操作。此配置可因SCLI 112与存储器库102之间的平行性而增强存储器***带宽。
或者,存储器***100可经由存储器组构控制寄存器117重新配置以致使多个存储器库102中的两者或两者以上的子集及对应MVC子集响应于单个请求而同步操作。后一种配置可用来存取比正常宽的数据字以降低等待时间,如下文进一步描述。可通过将选定位型式加载到存储器组构控制寄存器117中来实现其它配置。
图3及图4是展示根据各种实例性实施例的分别与实例性包300及400相关联的字段的包图示。依据图3及图4转到图1,存储器***100还可包含通信地耦合到矩阵开关116的多个包解码器118(例如,包解码器120)。主机处理器114汇编在一些实施例中可在结构上类似于实例性包300或400的传出包122。也就是说,传出包122可含有命令字段310、地址字段320及/或数据字段410。传出包122还可含有预取信息字段412以保存与存储器库中的预取操作相关联的预取信息。下文参考图5、图5A、图6A及图6B描述预取操作。转到图1,在主机处理器114汇编传出包122之后,其跨越传出SCLI(例如,传出SCLI 114)以下文进一步解释的方式将传出包122发送到包解码器120。
传出SCLI 114可包含多个传出差分对串行路径(DPSP)128。DPSP 128通信地耦合到主机处理器114且可共同地输送传出包122。也就是说,多个传出DPSP 128中的每一DPSP可以第一数据速率输送传出包122的第一数据速率传出子包部分。
传出SCLI 114还可包含通信地耦合到多个传出DPSP 128的解串行化器130。解串行化器130将传出包122的每一第一数据速率传出子包部分转换为多个第二数据速率传出子包。跨越第一多个传出单端数据路径(SEDP)134以第二数据速率发送所述多个第二数据速率传出子包。所述第二数据速率比所述第一数据速率慢。
传出SCLI 114还可包含通信地耦合到解串行化器130的多路分用器138。多路分用器138将所述多个第二数据速率传出子包中的每一者转换为多个第三数据速率传出子包。跨越第二多个传出SEDP 142以第三数据速率将所述多个第三数据速率传出子包发送到包解码器120。所述第三数据速率比所述第二数据速率慢。
包解码器120接收传出包122且提取(例如,实例性包300的)命令字段310、(例如,实例性包300的)地址字段320及/或(例如,实例性包400的)数据字段。在一些实施例中,包解码器120解码地址字段320以确定对应存储器库选择信号集合。包解码器120在接口146上将所述存储器库选择信号集合呈现给矩阵开关116。所述库选择信号致使输入数据路径148切换到对应于传出包122的MVC 106。
现在转到对传入数据路径的论述,存储器***100可包含通信地耦合到矩阵开关116的多个包编码器154(例如,包编码器158)。包编码器158可经由矩阵开关116从多个MVC 104中的一者接收传入存储器命令、传入存储器地址及/或传入存储器数据。包编码器158将传入存储器命令、地址及/或数据编码成传入包160以供跨越传入SCLI 164传输到主机处理器114。
在一些实施例中,包编码器158可将传入包160分段成多个第三数据速率传入子包。包编码器158可跨越第一多个传入单端数据路径(SEDP)166以第三数据速率发送所述多个第三数据速率传入子包。存储器***100还可包含通信地耦合到包编码器158的多路复用器168。多路复用器168可将所述第三数据速率传入子包的多个子集中的每一者多路复用成第二数据速率传入子包。多路复用器168跨越第二多个传入SEDP 170以比所述第三数据速率快的第二数据速率发送所述第二数据速率传入子包。
存储器***100可进一步包含通信地耦合到多路复用器168的串行化器172。串行化器172将所述第二数据速率传入子包的多个子集中的每一者聚集成第一数据速率传入子包。跨越多个传入差分对串行路径(DPSP)174以比所述第二数据速率快的第一数据速率将所述第一数据速率传入子包发送到主机处理器114。因此,跨越SCLI 112经由矩阵开关116在主机处理器114与MVC 104之间来回传送命令、地址及数据信息。
图5是根据各种实例性实施例的MVC(例如,MVC 106)及相关联模块的框图。MVC 106可包含可编程库控制逻辑(PVCL)组件(例如,PVCL 510)。PVCL 510将MVC 106介接到对应存储器库(例如,存储器库110)。PVCL 510产生与对应存储器库110相关联的一个或一个以上组控制信号及/或定时信号。
PVCL 510可经配置以将MVC 106调适到选定配置或选定技术的存储器库110。因此,举例来说,最初可使用当前可用的DDR2DRAM配置存储器***100。随后,可通过将PVCL 510重新配置为包含DDR3组控制及定时逻辑来调适存储器***100以适应基于DDR3的存储器库技术。
MVC 106还可包含通信地耦合到PVCL 510的存储器定序器514。存储器定序器514基于用以实施相关联存储器库110的技术执行存储器技术相依操作集合。举例来说,存储器定序器514可执行与对应存储器库110相关联的命令解码操作、存储器地址多路复用操作、存储器地址多路分用操作、存储器刷新操作、存储器库训练操作及/或存储器库预取操作。在一些实施例中,存储器定序器514可包括DRAM定序器。在一些实施例中,存储器刷新操作可始发于刷新控制器515中。
存储器定序器514可经配置以将存储器***100调适到选定配置或技术的存储器库110。举例来说,存储器定序器514可经配置以与同存储器***100相关联的其它存储器定序器同步操作。此配置可用以响应于单个高速缓冲存储器线请求而将宽数据字从多个存储器库递送到与主机处理器114相关联的高速缓冲存储器线(未展示)。
MVC 106还可包含写入缓冲器516。写入缓冲器516可通信地耦合到PVCL 510以缓冲从主机处理器114到达MVC 106的数据。MVC 106可进一步包含读取缓冲器517。读取缓冲器517可通信地耦合到PVCL 510以缓冲从对应存储器库110到达MVC 106的数据。
MVC 106还可包含无序请求队列518。无序请求队列518建立包含于存储器库110中的多个存储器组的有序读取及/或写入操作序列。选择所述有序序列以避免对任何单个存储器组的顺序操作以减少组冲突且降低读取到写入周转时间。
MVC 106还可包含存储器库修复逻辑(MVRL)组件524。MVRL 524可通信地耦合到存储器库110以使用阵列修复逻辑526执行有缺陷存储器阵列地址重新映射操作。MVRL 524还可使用TWI修复逻辑528执行与存储器库110相关联的TWI修复操作。
图5A是根据各种实例性实施例的存储器***5000的框图。存储器***5000可包含存储器库集合102(例如,存储器库110)及对应MVC集合104(例如,MVC 106)。如先前所论述,在与存储器阵列裸片(例如,图2的存储器阵列裸片204)堆叠在一起的逻辑裸片(例如,图2的逻辑裸片202)上制作MVC。
以下对图5A的论述涉及实例性存储器库110、实例性MVC 106与同存储器库预取操作相关联的各种结构元件之间的连接。然而,应注意,下文所描述及在图5A上所图解说明的连接及功能性适用于存储器库集合102中的每一者及对应MVC集合104中的每一者。
在存储器***5000的一些实施例中,存储器库102的带宽可超过将存储器库102链接到始发存储器请求的装置(例如,主机计算机)的通信通道的带宽。另外,来自所述始发装置的请求流可为不连续的。这些因素可导致存储器库102处的过量带宽。所述过量带宽可用以执行预取操作。可在存储器库空闲时(例如,当所述存储器库处未正在处理到所述存储器库的任何读取请求时)执行预取操作。或者,可在所述存储器库未空闲时执行预取操作。
存储器***5000可包含预取控制器5006。预取控制器5006执行与存储器库110相关联的预取操作。存储器***5000还可包含预取高速缓冲存储器5014中所包含的一个或一个以上预取缓冲器5010。预取缓冲器5010可通信地耦合到预取控制器5006。预取缓冲器5010集合(例如,预取缓冲器5018集合)可经分组以存储一个或一个以上高速缓冲存储器线(例如,高速缓冲存储器线5020)的读取数据。预取控制器5006可经配置以选择性地启用高速缓冲存储器线5020中的一者或一者以上。
预取控制器5006可经配置以向存储器库110发出预取读取请求,以便可在存储器库110空闲时或者在存储器库110未空闲时发出所述预取读取请求。在一些实施例中,可从对应于响应于先前读取请求而读取的数据字的存储器库地址读取预取数据字。或者(或另外),可从选自由向MVC 106发出命令的始发装置提供的地址范围的存储器库地址读取所述预取数据字。举例来说,主机计算机可规定待在预取缓冲器5010中预取及高速缓存的地址范围。
存储器***5000还可包含通信地耦合到预取控制器5006的预取写入逻辑5021。预取写入逻辑5021追踪并用写入数据更新存储器库110及预取缓冲器5010。
由存储器***5000对预取的使用在一些操作条件下可比在其它操作条件下更合意。在涉及电子存储器技术时,“局部性”是指下一个存储器请求将参考来自与先前请求相同的存储器空间区域的数据的可能性。与具有较小局部性的数据请求流相比,具有较大局部性的存储器库数据请求流可从预取操作中获益更多。而且,应注意,预取操作在存储器库110处消耗功率。因此,预取控制器5006可经配置以选择性地启用及/或停用预取操作。一些实施例可根据数据流的所预期局部性启用/停用预取操作及/或将与存储器库110相关联的选定功率预算作为目标。
存储器***5000可包含通信地耦合到预取控制器5006的预取利用逻辑5022。预取利用逻辑5022在命中测量周期期间追踪高速缓冲存储器线命中的数目。当读取请求参考存储数据字的存储器库地址且在高速缓冲存储器中发现所述数据字时,发生本申请案的上下文中的“高速缓冲存储器线命中”。预取控制器5006可经配置以在与预取高速缓冲存储器5014相关联的命中率在命中率测量周期期间低于选定阈值的情况下停用预取操作。可停用预取操作达选定时间周期或直到从始发装置(例如,主机计算机)接收到再继续预取操作的命令。在一些实施例中,可在个别高速缓冲存储器线基础上接通及关断预取。
存储器***5000还可包含分别位于存储器库110处的一个或一个以上电压及/或温度传感器5026及5028。功率监视器5032可耦合到电压传感器5026及/或耦合到温度传感器5028。功率监视器5032可将存储器库110处的功率消耗水平的指示提供到预取控制器5006。预取控制器5006可经配置以在存储器库110处的功率消耗水平高于第一选定阈值的情况下停用预取操作。可在选定时间周期期满之后重新启用预取操作。或者,当功率消耗水平降到低于第二选定阈值时或在从始发装置接收到再继续预取的命令时,可重新启用预取。
存储器***5000可进一步包含通信地耦合到预取控制器5006的预取读取逻辑5036。在MVC 106处所接收的读取请求参考一个或一个以上预取字中的一者或一者以上的情况下,预取读取逻辑5036可从预取缓冲器5010中的一者或一者以上读取所述预取字。
因此,存储器***100;存储器阵列200、203、240、527;裸片202、204;瓦片205A、205B、205C、208、212B、212C、212D;“Z”维度220;路径224、148;存储器库230、102、110;MVC 104、106;SCLI 112、113、114、115、164;处理器114;矩阵开关116;寄存器117;包300、400、122、160;包解码器118、120;字段310、320、410;DPSP 128、174;解串行化器130;SEDP 134、142、166、170;多路分用器138;接146;包编码器154、158;多路复用器168;串行化器172;PVCL 510;存储器定序器514;刷新控制器515;缓冲器516、517;无序请求队列518;MVRL 524;阵列修复逻辑526;TWI修复逻辑528;存储器***5000;预取控制器5006;预取缓冲器5010、5018;预取高速缓冲存储器5014;高速缓冲存储器线5020;预取写入逻辑5021;预取利用逻辑5022;传感器5026、5028;功率监视器5032;及预取读取逻辑5036在本文中可全部表征为“模块”。
所述模块可包含存储器***100的架构所要的且适合于各种实施例的特定实施方案的硬件电路、光学组件、单处理器或多处理器电路、存储器电路、编码于计算机可读媒体中的软件程序模块及对象(但并非软件列表)、固件及其组合。
各种实施例的设备及***可适用于除高密度多链路高吞吐量半导体存储器子***5000以外的应用。因此,本发明的各种实施例并不限于此。对存储器***5000的说明打算提供对各种实施例的结构的一般理解。所述说明并非打算充当对可使用本文中所描述结构的设备及***的所有元件及特征的完整描述。
各种实施例的新颖设备及***可包括在计算机、通信及信号处理电路、单处理器或多处理器模块、单嵌入式或多嵌入式处理器、多核心处理器、数据交换机及包含多层、多芯片模块的专用模块中使用的电子电路或并入到所述电子电路中。此些设备及***可作为子组件进一步包含于各种电子***内,例如电视、蜂窝式电话、个人计算机(例如,膝上型计算机、桌上型计算机、手持式计算机、平板计算机等)、工作站、收音机、视频播放器、音频播放器(例如,MP3(动画专家组,音频层3)播放器)、车辆、医学装置(例如,心脏监视器、血压监视器等)、机顶盒及其它电子***。一些实施例可包含若干种方法。
图6A及图6B是图解说明根据各种实例性实施例的方法6000的流程图。方法6000包含执行与堆叠式裸片存储器***中的一个或一个以上存储器库相关联的(例如,在图5A的堆叠式裸片存储器***5000中的存储器库110处)预取操作。可选择性地启用或停用预取操作且针对每一个别存储器库单独配置预取参数。在一些实施例中,可在存储器库管线为空时预取可编程数目个数据字。
方法6000可在框6002处以在MVC处(例如,在图5A的MVC 106处)从始发装置(例如,从主机计算机)接收预取配置参数而开始。所述预取配置参数可包含预取地址模态。此上下文中的“预取地址模态”意指待从存储器库预取的地址是对应于先前所存取的地址还是来自由始发装置规定的范围的地址。其它配置参数可包含高速缓冲存储器线存取参数,例如,当发生高速缓冲存储器命中时返回的高速缓冲存储器线的数目。方法6000还可包含在框6004处使用所述预取配置参数来配置存储器***。
方法6000可在框6010处继续向存储器库发出一个或一个以上预取读取请求。方法6000可在其发出预取读取请求之前确认所述存储器库是否空闲。在所述存储器库空闲的情况下(例如,当所述存储器库处未正在处理到所述存储器库的其它读取请求时),方法6000可发出预取读取请求并起始预取操作。或者,当所述存储器库未空闲时,方法6000可发出所述预取读取请求,以使得即使在所述存储器库处正在处理到所述存储器库的一个或一个以上其它读取请求,也可在接收到读取请求之后即刻自动起始预取操作。
在所述存储器库从始发装置(例如,从主机计算机)接收到指示不执行预取操作的预取信息的情况下,方法6000可跳过向存储器库发出预取读取请求(方框6010)。举例来说,当在图1的存储器***100中使用方法6000时,图1的主机处理器114可发送具有指示不执行预取操作的预取信息的传出包122。所述预取信息可含在传出包122的字段(例如,图4的预取信息字段412)中。在所述存储器库从所述始发装置接收到指示将执行(或再继续)预取操作的预取信息的情况下,其可再继续执行预取操作。所述预取信息可包含具有指示是将执行(或再继续)还是不执行(例如,跳过或暂停)预取操作的值的多个位或仅单个位。举例来说,在所述预取信息具有仅单个位的情况下且在所述单个位具有值“0”的情况下,则可跳过或暂停预取操作。在所述单个位具有值“1”的情况下,则可执行(或再继续)预取操作。
转到图6,方法6000还可包含在框6014处在对应于所述存储器库的MVC处从所述存储器库接收一个或一个以上预取数据字。方法6000可进一步包含在框6016处将所述预取数据字存储于预取高速缓冲存储器处的一个或一个以上预取缓冲器中。
方法6000可在框6020处继续在所述MVC处接收读取请求。方法6000可包含在框6024处确定所述读取请求所参考的数据当前是否在所述预取高速缓冲存储器中。如果如此,则方法6000可在框6028处继续从所述预取高速缓冲存储器服务所述读取请求,从而产生高速缓冲存储器命中。在所述读取请求所参考的数据当前不在所述预取高速缓冲存储器中(无高速缓冲存储器命中)的情况下,方法6000可在框6032处继续从选定存储器库服务所述读取请求。
方法6000还可包含在框6036处在第一时间周期内测量与预取高速缓冲存储器相关联的命中率。方法6000可进一步包含在框6040处确定高速缓冲存储器命中率是否低于选定阈值。如果如此,则方法6000可包含在框6044处停用预取操作。可停用预取操作达选定时间周期或直到经由从始发装置接收的命令重新启用预取。
在一些实施例中,方法6000可包含在框6050处监视与所述选定存储器库处的功率消耗相关联的一个或一个以上操作参数。举例来说,可从所述存储器库内的传感器接收一个或一个以上电压测量及/或温度测量。方法6000还可包含在框6054处基于所述操作参数的测量计算所述存储器库处的功率消耗。方法6000可进一步包含在框6058处确定所述功率消耗是否高于第一选定阈值。如果如此,则方法6000还可包含在框6062处停用预取操作。可停用预取操作达选定时间周期,直到功率消耗水平降到低于第二选定阈值,或直到经由从始发装置接收的命令重新启用预取。
应注意,可以不同于所描述的次序的次序执行本文中所描述的活动。还可以重复、连续及/或并行方式执行关于本文中所识别的方法所描述的各种活动。
可从基于计算机的***中的计算机可读媒体启动软件程序以执行所述软件程序中所定义的功能。可采用各种程序设计语言来形成经设计以实施及执行本文中所揭示的方法的软件程序。可使用面向对象的语言(例如,Java或C++)以面向对象的格式结构化所述程序。或者,可使用程序语言(例如,汇编语言或C语言)以面向程序的格式结构化所述程序。软件组件可使用众所周知的机制进行通信,包含应用程序接口、过程间通信技术及远程程序呼叫等。各种实施例的教示内容不限于任何特定程序设计语言或环境。
本文中所描述的设备、***及方法可操作以在与堆叠式裸片存储器***中的选定存储器库相关联的管线为空时,从所述选定存储器库预取可编程数目个数据字。可产生增加的存储器***性能水平。
通过图解说明而非限定的方式,附图展示其中可实践标的物的特定实施例。充分详细地描述所图解说明的实施例旨在使得所属领域的技术人员能够实践本文中所揭示的教示内容。可使用其它实施例及从所述实施例导出其它实施例,以使得可在不背离本发明的范围的情形下做出结构及逻辑替代及改变。因此,不应将此具体实施方式视为具有限定意义。各种实施例的广度是由所附权利要求书及授权此权利要求书的等效内容的全部范围界定。
本发明标的物的此些实施例可在本文中个别地或共同地由术语“发明”指代,此仅仅出于方便性目的且并非打算在事实上已揭示一个以上发明或发明性概念的情况下将本申请案自发地限于任一单个发明或发明性概念。因此,尽管本文中已图解说明并描述了特定实施例,但旨在实现相同目的的任何布置均可替代所示特定实施例。本发明打算涵盖各种实施例的任何及所有更改或变化形式。在审阅以上描述之后,所属领域的技术人员将即刻明了上文实施例的组合及本文中未具体描述的其它实施例。
提供本发明的摘要以符合37C.F.R.§1.72(b),其需要将允许读者快速探知所述技术性发明的本质的摘要。基于以下理解提交本发明摘要:其并非用于解释或限定权利要求书的范围或含义。在前述具体实施方式中,出于简化本发明的目的将各种特征一起集合在单个实施例中。不应将本发明的此方法解释为需要比每一权利要求中所明确陈述的特征更多的特征。而是,发明性标的物可存在于少于单个所揭示实施例的所有特征中。因此,以上权利要求书由此并入到具体实施方式中,其中每一权利要求独立地作为单独实施例。
Claims (39)
1.一种存储器***,其包括:
存储器库,其包括多个堆叠式存储器阵列,每一存储器阵列位于多个堆叠式存储器裸片中的一者上;
存储器库控制器(MVC),其位于与所述堆叠式存储器裸片堆叠在一起的逻辑裸片上且通信地耦合到所述存储器库以提供与所述存储器库相关联的控制、切换或通信逻辑中的至少一者;及
预取控制器,其用以执行与所述存储器库相关联的预取操作。
2.根据权利要求1所述的存储器***,其进一步包括:
至少一个预取缓冲器,其位于预取高速缓冲存储器处,通信地耦合到所述预取控制器以存储至少一个高速缓冲存储器线的读取数据。
3.根据权利要求2所述的存储器***,其中所述预取高速缓冲存储器包括多个预取缓冲器集合,每一预取缓冲器集合包括一高速缓冲存储器线。
4.根据权利要求3所述的存储器***,其中所述预取控制器经配置以选择性地启用至少一个高速缓冲存储器线。
5.根据权利要求1所述的存储器***,其中所述预取控制器经配置以在所述存储器库空闲时向所述存储器库发出预取读取请求。
6.根据权利要求5所述的存储器***,其中所述预取控制器经配置以从对应于响应于先前读取请求而从所述存储器库读取的数据字的存储器库地址读取至少一个预取数据字。
7.根据权利要求5所述的存储器***,其中所述预取控制器经配置以从选自由向所述MVC发出命令的始发装置提供的地址范围的存储器库地址读取所述至少一个预取数据字。
8.根据权利要求1所述的存储器***,其中所述预取控制器经配置以选择性地启用预取操作。
9.根据权利要求1所述的存储器***,其进一步包括:
预取利用逻辑,其通信地耦合到所述预取控制器以在选定时间周期期间追踪高速缓冲存储器线命中的数目。
10.根据权利要求1所述的存储器***,其中所述预取控制器经配置以在与预取高速缓冲存储器相关联的命中率低于选定阈值的情况下,停用所述预取操作达第一选定时间周期。
11.根据权利要求10所述的存储器***,其中所述预取控制器经配置以停用所述预取操作达第二选定时间周期或直到从始发装置接收到再继续所述预取操作的命令中的至少一者。
12.根据权利要求1所述的存储器***,其进一步包括:
预取写入逻辑,其通信地耦合到所述预取控制器以用写入数据更新所述存储器库及所述预取缓冲器。
13.根据权利要求1所述的存储器***,其进一步包括:
预取读取逻辑,其通信地耦合到所述预取控制器以在所述MVC处所接收的读取请求参考至少一个预取字的情况下从至少一个预取缓冲器读取所述至少一个预取字。
14.根据权利要求1所述的存储器***,其进一步包括:
电压传感器或温度传感器中的至少一者,其位于所述存储器库处;及
功率监视器,其耦合到所述电压传感器或温度传感器以向所述预取控制器提供所述存储器库处的功率消耗水平的指示。
15.根据权利要求14所述的存储器***,其中所述预取控制器经配置以在所述存储器库处的所述功率消耗水平高于第一选定阈值的情况下停用预取操作。
16.根据权利要求15所述的存储器***,其中所述预取控制器经配置以在选定时间周期、所述功率消耗水平降到低于第二选定阈值或从始发装置接收到再继续所述预取操作的命令中的至少一者之后重新启用所述预取操作。
17.根据权利要求1所述的存储器***,其中所述预取控制器经配置以根据所述存储器***中的数据流的局部性而执行启用及停用所述预取操作中的至少一者。
18.一种存储器***,其包括:
存储器库,其包括多个堆叠式存储器阵列,每一存储器阵列位于多个堆叠式存储器裸片中的一者上;
存储器库控制器(MVC),其位于与所述堆叠式存储器裸片堆叠在一起的逻辑裸片上且通信地耦合到所述存储器库以提供与所述存储器库相关联的控制、切换或通信逻辑中的至少一者;及
预取控制器,其用以向所述存储器库发出预取读取请求;及
至少一个预取缓冲器,其用以存储与所述预取读取请求相关联的至少一个预取数据字。
19.根据权利要求18所述的存储器***,其进一步包括:
预取利用逻辑,其通信地耦合到所述预取控制器以在选定时间周期期间追踪高速缓冲存储器线命中的数目。
20.根据权利要求18所述的存储器***,其中所述预取控制器经配置以在高速缓冲存储器线命中率大于选定率时执行预取操作。
21.根据权利要求18所述的存储器***,其中所述预取控制器经配置以在所述存储器库空闲时执行预取操作。
22.根据权利要求17所述的存储器***,其中所述预取控制器经配置以执行启用及停用与所述存储器库相关联的预取操作中的至少一者以将所述存储器库的选定功率预算作为目标。
23.一种方法,其包括:
执行与堆叠式裸片存储器***中的选定存储器库相关联的预取操作。
24.根据权利要求23所述的方法,其进一步包括:
向所述选定存储器库发出预取读取请求;
在对应于所述选定存储器库的存储器库控制器(MVC)处从所述选定存储器库接收预取数据字;及
将所述预取数据字存储于预取高速缓冲存储器处的预取缓冲器中。
25.根据权利要求24所述的方法,其中在所述选定存储器库未正在处理到所述选定存储器库的其它读取请求时,发出所述预取读取请求。
26.根据权利要求24所述的方法,其进一步包括:
在所述MVC处接收读取请求;
在可用的情况下,从所述预取高速缓冲存储器服务所述读取请求,从而产生高速缓冲存储器命中;及
在不存在高速缓冲存储器命中的情况下,从所述选定存储器库服务所述读取请求。
27.根据权利要求24所述的方法,其进一步包括:
在第一时间周期内测量与所述预取高速缓冲存储器相关联的命中率;
确定所述命中率是否低于阈值命中率;及
在所述命中率低于所述阈值命中率的情况下,停用所述预取操作。
28.根据权利要求27所述的方法,其中停用所述预取操作达选定时间周期或直到从始发装置接收到再继续所述预取操作的命令中的至少一者。
29.根据权利要求23所述的方法,其进一步包括:
将所述堆叠式裸片存储器***配置为多库存储器***;及
在每一存储器库处独立地执行所述预取操作。
30.根据权利要求23所述的方法,其进一步包括:
确认所述选定存储器库为空闲的。
31.根据权利要求23所述的方法,其进一步包括:
监视与所述选定存储器库处的功率消耗相关联的至少一个操作参数;
基于所述至少一个操作参数的测量而计算所述选定存储器库处的所述功率消耗;
确定所述功率消耗是否高于第一选定阈值;及
在所述选定存储器库处的所述功率消耗高于所述第一选定阈值的情况下,停用所述预取操作。
32.根据权利要求31所述的方法,其中停用所述预取操作达选定时间周期、直到所述功率消耗降到低于第二选定阈值或直到从始发装置接收到再继续所述预取操作的命令中的至少一者。
33.根据权利要求31所述的方法,其中监视所述至少一个操作参数包括从所述存储器库内的传感器接收电压电平测量或温度测量中的至少一者。
34.一种方法,其包括:
在与堆叠式裸片存储器***中的选定存储器库相关联的管线为空时,从所述选定存储器库预取可编程数目个数据字。
35.根据权利要求34所述的方法,其进一步包括:
向所述选定存储器库发出至少一个预取读取请求;
针对每一预取读取请求,在对应于所述选定存储器库的存储器库控制器(MVC)处从所述选定存储器库接收预取数据字;
将所述至少一个预取数据字存储于预取高速缓冲存储器处的至少一个预取缓冲器中;
在所述MVC处接收至少一个读取请求;
在可用的情况下,从所述预取高速缓冲存储器服务所述至少一个读取请求,从而产生至少一个高速缓冲存储器命中;及
在不存在所述至少一个高速缓冲存储器命中的情况下,从所述选定存储器库服务所述至少一个读取请求。
36.根据权利要求35所述的方法,其进一步包括:
在所述MVC处从始发装置接收预取配置参数;及
根据所述预取配置参数配置所述堆叠式裸片存储器***。
37.根据权利要求36所述的方法,其中所述预取配置参数包含响应于读取数据请求而检索的预取地址模态或高速缓冲存储器线数目中的至少一者。
38.根据权利要求35所述的方法,其进一步包括:
在第一时间周期内测量与所述预取高速缓冲存储器相关联的命中率;
确定所述命中率是否低于阈值命中率;及
在所述命中率低于所述阈值命中率的情况下,在第二时间周期期间停用所述预取操作。
39.根据权利要求34所述的方法,其进一步包括:
监视所述选定存储器库处的电压电平或温度中的至少一者;
基于所述电压及/或温度的测量而确定所述选定存储器库处的功率消耗;
在所述选定存储器库处的所述功率消耗高于第一选定阈值的情况下,停用所述预取操作;及
在所述功率消耗降到低于第二选定阈值的情况下,重新启用所述预取操作。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/371,389 | 2009-02-13 | ||
US12/371,389 US8364901B2 (en) | 2009-02-13 | 2009-02-13 | Memory prefetch systems and methods |
PCT/US2010/024101 WO2010093921A2 (en) | 2009-02-13 | 2010-02-12 | Memory prefetch systems and methods |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102349109A true CN102349109A (zh) | 2012-02-08 |
CN102349109B CN102349109B (zh) | 2015-08-26 |
Family
ID=42560878
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201080012003.7A Active CN102349109B (zh) | 2009-02-13 | 2010-02-12 | 存储器预取***及方法 |
Country Status (7)
Country | Link |
---|---|
US (3) | US8364901B2 (zh) |
EP (1) | EP2396790B1 (zh) |
JP (2) | JP2012518229A (zh) |
KR (2) | KR101865331B1 (zh) |
CN (1) | CN102349109B (zh) |
TW (1) | TWI494919B (zh) |
WO (1) | WO2010093921A2 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103915111A (zh) * | 2013-01-09 | 2014-07-09 | 华邦电子股份有限公司 | 存储器装置及其电源调整方法 |
CN109599134A (zh) * | 2013-03-15 | 2019-04-09 | 美光科技公司 | 具有控制器及存储器堆叠的灵活存储器*** |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7978721B2 (en) | 2008-07-02 | 2011-07-12 | Micron Technology Inc. | Multi-serial interface stacked-die memory architecture |
US8364901B2 (en) | 2009-02-13 | 2013-01-29 | Micron Technology, Inc. | Memory prefetch systems and methods |
US8018752B2 (en) | 2009-03-23 | 2011-09-13 | Micron Technology, Inc. | Configurable bandwidth memory devices and methods |
US9123552B2 (en) | 2010-03-30 | 2015-09-01 | Micron Technology, Inc. | Apparatuses enabling concurrent communication between an interface die and a plurality of dice stacks, interleaved conductive paths in stacked devices, and methods for forming and operating the same |
US8583894B2 (en) * | 2010-09-09 | 2013-11-12 | Advanced Micro Devices | Hybrid prefetch method and apparatus |
GB2493191A (en) * | 2011-07-28 | 2013-01-30 | St Microelectronics Res & Dev | Cache arrangement with data pre-fetching requests having different quality of services |
WO2013052056A1 (en) * | 2011-10-06 | 2013-04-11 | Intel Corporation | Apparatus and method for dynamically managing memory access bandwidth in multi-core processor |
KR20140065678A (ko) * | 2012-11-20 | 2014-05-30 | 에스케이하이닉스 주식회사 | 반도체 장치 및 이를 이용한 반도체 장치의 동작 방법 |
US20140181415A1 (en) * | 2012-12-21 | 2014-06-26 | Advanced Micro Devices, Inc. | Prefetching functionality on a logic die stacked with memory |
US9183055B2 (en) * | 2013-02-07 | 2015-11-10 | Advanced Micro Devices, Inc. | Selecting a resource from a set of resources for performing an operation |
JP2016520226A (ja) * | 2013-05-16 | 2016-07-11 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated | 領域特有のメモリアクセススケジューリングを有するメモリシステム |
US11074169B2 (en) * | 2013-07-03 | 2021-07-27 | Micron Technology, Inc. | Programmed memory controlled data movement and timing within a main memory device |
US11768689B2 (en) * | 2013-08-08 | 2023-09-26 | Movidius Limited | Apparatus, systems, and methods for low power computational imaging |
JP6287493B2 (ja) * | 2014-03-31 | 2018-03-07 | 富士通株式会社 | 情報処理装置、転送装置、および制御方法 |
US10824335B2 (en) * | 2014-07-14 | 2020-11-03 | Western Digital Technologies, Inc. | Device and method to store predicted data at a host memory |
KR102130578B1 (ko) | 2014-12-02 | 2020-07-06 | 에스케이하이닉스 주식회사 | 반도체 장치 |
US10055384B2 (en) | 2016-12-31 | 2018-08-21 | Entefy Inc. | Advanced zero-knowledge document processing and synchronization |
US10114981B2 (en) * | 2016-12-31 | 2018-10-30 | Intel Corporation | Architecture for telemetry and adaptive lifetime control of integrated circuits |
US9792958B1 (en) | 2017-02-16 | 2017-10-17 | Micron Technology, Inc. | Active boundary quilt architecture memory |
US10831391B2 (en) * | 2018-04-27 | 2020-11-10 | EMC IP Holding Company LLC | Method to serve restores from remote high-latency tiers by reading available data from a local low-latency tier in a deduplication appliance |
US10929062B2 (en) * | 2018-11-07 | 2021-02-23 | International Business Machines Corporation | Gradually throttling memory due to dynamic thermal conditions |
KR20200114481A (ko) * | 2019-03-28 | 2020-10-07 | 에스케이하이닉스 주식회사 | 메모리 시스템, 메모리 컨트롤러 및 그 동작 방법 |
WO2021133690A1 (en) * | 2019-12-26 | 2021-07-01 | Micron Technology, Inc. | Host techniques for stacked memory systems |
US11409657B2 (en) | 2020-07-14 | 2022-08-09 | Micron Technology, Inc. | Adaptive address tracking |
US11422934B2 (en) | 2020-07-14 | 2022-08-23 | Micron Technology, Inc. | Adaptive address tracking |
KR20220117747A (ko) | 2021-02-17 | 2022-08-24 | 삼성전자주식회사 | 데이터 프리페치 제어 기능을 갖는 스토리지 컨트롤러, 스토리지 컨트롤러의 동작 방법, 및 스토리지 장치의 동작 방법 |
US20230169008A1 (en) * | 2021-11-30 | 2023-06-01 | Red Hat, Inc. | Managing prefetching operations for drives in distributed storage systems |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040123043A1 (en) * | 2002-12-19 | 2004-06-24 | Intel Corporation | High performance memory device-state aware chipset prefetcher |
US20050257005A1 (en) * | 2004-05-14 | 2005-11-17 | Jeddeloh Joseph M | Memory hub and method for memory sequencing |
CN1767054A (zh) * | 2004-09-14 | 2006-05-03 | 夏普株式会社 | 存储器装置 |
US20070005902A1 (en) * | 2004-12-07 | 2007-01-04 | Ocz Technology Group, Inc. | Integrated sram cache for a memory module and method therefor |
US20070025173A1 (en) * | 2005-07-26 | 2007-02-01 | Micron Technology, Inc. | Memory device and method having multiple address, data and command buses |
US20070204106A1 (en) * | 2006-02-24 | 2007-08-30 | James Donald | Adjusting leakage power of caches |
US20070220207A1 (en) * | 2006-03-14 | 2007-09-20 | Bryan Black | Transferring data from stacked memory |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS615357A (ja) * | 1984-06-07 | 1986-01-11 | Fujitsu Ltd | デ−タ処理装置 |
JP2631603B2 (ja) | 1992-06-29 | 1997-07-16 | 川崎製鉄株式会社 | 金属ストリップの巻取装置 |
JP3548616B2 (ja) * | 1995-01-20 | 2004-07-28 | 株式会社日立製作所 | 情報処理装置 |
US5809529A (en) * | 1995-08-23 | 1998-09-15 | International Business Machines Corporation | Prefetching of committed instructions from a memory to an instruction cache |
JPH1196081A (ja) * | 1997-09-22 | 1999-04-09 | Chishiki Joho Kenkyusho:Kk | 記憶装置の制御方法および記憶装置ならびに記憶装置の製造方法 |
JP2001014840A (ja) | 1999-06-24 | 2001-01-19 | Nec Corp | 複数ラインバッファ型メモリlsi |
US6594730B1 (en) * | 1999-08-03 | 2003-07-15 | Intel Corporation | Prefetch system for memory controller |
KR100449721B1 (ko) * | 2002-05-20 | 2004-09-22 | 삼성전자주식회사 | 서로 다른 데이터 버스 폭을 갖는 장치들을 위한인터페이스 및 이를 이용한 데이터 전송방법 |
US7133972B2 (en) * | 2002-06-07 | 2006-11-07 | Micron Technology, Inc. | Memory hub with internal cache and/or memory access prediction |
US7167954B2 (en) * | 2002-09-09 | 2007-01-23 | Broadcom Corporation | System and method for caching |
JP2004118305A (ja) * | 2002-09-24 | 2004-04-15 | Sharp Corp | キャッシュメモリ制御装置 |
US7233880B2 (en) * | 2003-09-11 | 2007-06-19 | Intel Corporation | Adaptive cache algorithm for temperature sensitive memory |
US7133324B2 (en) * | 2003-12-24 | 2006-11-07 | Samsung Electronics Co., Ltd. | Synchronous dynamic random access memory devices having dual data rate 1 (DDR1) and DDR2 modes of operation and methods of operating same |
US7327600B2 (en) * | 2004-12-23 | 2008-02-05 | Unity Semiconductor Corporation | Storage controller for multiple configurations of vertical memory |
US20080126690A1 (en) * | 2006-02-09 | 2008-05-29 | Rajan Suresh N | Memory module with memory stack |
JP4600825B2 (ja) * | 2005-09-16 | 2010-12-22 | エルピーダメモリ株式会社 | 半導体記憶装置 |
WO2007095080A2 (en) * | 2006-02-09 | 2007-08-23 | Metaram, Inc. | Memory circuit system and method |
JP2008140220A (ja) * | 2006-12-04 | 2008-06-19 | Nec Corp | 半導体装置 |
US8032711B2 (en) * | 2006-12-22 | 2011-10-04 | Intel Corporation | Prefetching from dynamic random access memory to a static random access memory |
US7917702B2 (en) * | 2007-07-10 | 2011-03-29 | Qualcomm Incorporated | Data prefetch throttle |
US20100121994A1 (en) * | 2008-11-10 | 2010-05-13 | International Business Machines Corporation | Stacked memory array |
US8364901B2 (en) * | 2009-02-13 | 2013-01-29 | Micron Technology, Inc. | Memory prefetch systems and methods |
-
2009
- 2009-02-13 US US12/371,389 patent/US8364901B2/en active Active
-
2010
- 2010-02-12 JP JP2011550273A patent/JP2012518229A/ja active Pending
- 2010-02-12 CN CN201080012003.7A patent/CN102349109B/zh active Active
- 2010-02-12 TW TW099104871A patent/TWI494919B/zh active
- 2010-02-12 KR KR1020117020979A patent/KR101865331B1/ko active IP Right Grant
- 2010-02-12 EP EP10741802.2A patent/EP2396790B1/en active Active
- 2010-02-12 KR KR1020187015557A patent/KR102030946B1/ko active IP Right Grant
- 2010-02-12 WO PCT/US2010/024101 patent/WO2010093921A2/en active Application Filing
-
2013
- 2013-01-28 US US13/751,502 patent/US8607002B2/en active Active
- 2013-12-09 US US14/100,921 patent/US8990508B2/en active Active
-
2014
- 2014-12-04 JP JP2014245766A patent/JP6127038B2/ja active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040123043A1 (en) * | 2002-12-19 | 2004-06-24 | Intel Corporation | High performance memory device-state aware chipset prefetcher |
US20050257005A1 (en) * | 2004-05-14 | 2005-11-17 | Jeddeloh Joseph M | Memory hub and method for memory sequencing |
CN1767054A (zh) * | 2004-09-14 | 2006-05-03 | 夏普株式会社 | 存储器装置 |
US20070005902A1 (en) * | 2004-12-07 | 2007-01-04 | Ocz Technology Group, Inc. | Integrated sram cache for a memory module and method therefor |
US20070025173A1 (en) * | 2005-07-26 | 2007-02-01 | Micron Technology, Inc. | Memory device and method having multiple address, data and command buses |
US20070204106A1 (en) * | 2006-02-24 | 2007-08-30 | James Donald | Adjusting leakage power of caches |
US20070220207A1 (en) * | 2006-03-14 | 2007-09-20 | Bryan Black | Transferring data from stacked memory |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103915111A (zh) * | 2013-01-09 | 2014-07-09 | 华邦电子股份有限公司 | 存储器装置及其电源调整方法 |
CN103915111B (zh) * | 2013-01-09 | 2016-08-10 | 华邦电子股份有限公司 | 存储器装置及其电源调整方法 |
CN109599134A (zh) * | 2013-03-15 | 2019-04-09 | 美光科技公司 | 具有控制器及存储器堆叠的灵活存储器*** |
CN109599134B (zh) * | 2013-03-15 | 2022-12-13 | 美光科技公司 | 具有控制器及存储器堆叠的灵活存储器*** |
Also Published As
Publication number | Publication date |
---|---|
US20140156946A1 (en) | 2014-06-05 |
KR102030946B1 (ko) | 2019-10-10 |
WO2010093921A3 (en) | 2010-10-28 |
WO2010093921A2 (en) | 2010-08-19 |
KR20110127193A (ko) | 2011-11-24 |
JP2012518229A (ja) | 2012-08-09 |
JP6127038B2 (ja) | 2017-05-10 |
US8607002B2 (en) | 2013-12-10 |
EP2396790B1 (en) | 2017-08-23 |
TW201037704A (en) | 2010-10-16 |
US20130145098A1 (en) | 2013-06-06 |
KR20180063372A (ko) | 2018-06-11 |
JP2015079524A (ja) | 2015-04-23 |
TWI494919B (zh) | 2015-08-01 |
KR101865331B1 (ko) | 2018-06-08 |
CN102349109B (zh) | 2015-08-26 |
US8990508B2 (en) | 2015-03-24 |
US20100211745A1 (en) | 2010-08-19 |
EP2396790A2 (en) | 2011-12-21 |
US8364901B2 (en) | 2013-01-29 |
EP2396790A4 (en) | 2013-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102349109A (zh) | 存储器预取***及方法 | |
CN102405498B (zh) | 可配置带宽存储器装置及方法 | |
US10037818B2 (en) | Switched interface stacked-die memory architecture | |
US9524254B2 (en) | Multi-serial interface stacked-die memory architecture | |
CN102272849B (zh) | 可变存储器刷新装置和方法 | |
CN102272737A (zh) | 用于监视存储器***的***及方法 | |
CN102292715A (zh) | 存储器装置功率管理器及其方法 | |
KR20110059712A (ko) | 메모리 모듈 및 메모리 모듈 제어 방법 | |
US20120030396A1 (en) | Decoupled Memory Modules: Building High-Bandwidth Memory Systems from Low-Speed Dynamic Random Access Memory Devices | |
KR20210118727A (ko) | 행 주소 지정 및 열 주소 지정이 가능한 메모리의 동적 데이터에 대한 에러 정정 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |