CN107667403A - 长突发长度的内部连续行存取 - Google Patents
长突发长度的内部连续行存取 Download PDFInfo
- Publication number
- CN107667403A CN107667403A CN201680030494.5A CN201680030494A CN107667403A CN 107667403 A CN107667403 A CN 107667403A CN 201680030494 A CN201680030494 A CN 201680030494A CN 107667403 A CN107667403 A CN 107667403A
- Authority
- CN
- China
- Prior art keywords
- memory
- memory bank
- memory devices
- bank group
- burst
- 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.)
- Pending
Links
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/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1072—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers for memories with random access ports synchronised on clock signal pulse trains, e.g. synchronous memories, self timed memories
-
- 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
- G11C7/1015—Read-write modes for single port memories, i.e. having either a random port or a serial port
- G11C7/1018—Serial bit line access mode, e.g. using bit line address shift registers, bit line address counters, bit line burst counters
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital 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/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/4076—Timing circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital 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/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/409—Read-write [R-W] circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/06—Sense amplifiers; Associated circuits, e.g. timing or triggering circuits
- G11C7/08—Control thereof
-
- 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
- G11C7/1015—Read-write modes for single port memories, i.e. having either a random port or a serial port
- G11C7/1018—Serial bit line access mode, e.g. using bit line address shift registers, bit line address counters, bit line burst counters
- G11C7/1021—Page serial bit line access mode, i.e. using an enabled row address stroke pulse with its associated word line address and a sequence of enabled column address stroke pulses each with its associated bit line address
-
- 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
- G11C7/1015—Read-write modes for single port memories, i.e. having either a random port or a serial port
- G11C7/1045—Read-write mode select circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/12—Group selection circuits, e.g. for memory block selection, chip selection, array selection
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Dram (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
Abstract
存储器设备执行内部操作以提供可编程突发长度。存储器设备包括独立且可单独地寻址的多个存储体。存储器设备选择要在突发序列中进行操作的多个存储体,其中所有选定的存储体针对从相关联的存储器控制器发送的命令进行操作。响应于接收到存取命令,存储器设备生成多个内部操作,以使得所有选定的存储器存储体执行存取命令,而不需要来自存储器控制器的多个命令。
Description
技术领域
本发明的实施例总体上涉及存储器设备,以及更具体地涉及具有内部突发操作的存储器设备。
版权通知/许可
本专利文献的公开内容的部分可能包含受版权保护的材料。版权所有者不反对当专利文献或专利公开内容在专利商标局专利文件或记录中出现时对其进行复制,但是在其他方面保留所有版权。版权通知适用于如在下面和在附图中描述的所有数据,并且适用于下述任何软件:版权2015年,Intel公司,保留所有权利。
背景技术
存储器在计算设备(从最小的嵌入式系统到最强大的服务器)中是无处不在的。基于速度、容量、性能、以及其他因素,不同类型的存储器具有不同的应用。标准型DRAM(动态随机存取存储设备)是能够容易地从许多不同制造商中的任何制造商彼此替代的存储器设备,并且遵循操作标准或规范。标准型DRAM具有良好的存取速度、相对低的成本、以及高密度(大存储器尺寸),并且典型地用作计算系统中的主系统存储器的存储器资源。还可以制造专用DRAM并将其用于对应用进行高速缓存。
当用作计算设备的主系统存储器时,DRAM典型地被配置为取出特定量的数据以用于读取操作,并且以多个连续输出I/O(输入/输出)事务的突发来发送数据。类似地,对于写入操作,DRAM典型地被配置为接收多个连续输入I/O事务的突发以写入存储介质。“突发”操作典型地涉及对行进行激活,并且在行被激活时发送多个连续的列地址。由于较高的数据局部性,这种突发操作对于主存储器是有意义的,其中数据典型地在连续的组块中从邻近的地址空间被存取。参见下面关于图1的描述。
因此,许多DRAM应用采用打开页策略,其中页或数据行在连续事务之间保持打开。如果下一事务是针对相同的数据行,则该数据行已经打开,并且列操作(例如,CAS或列地址选通)是对下一期望的存储器段进行存取所需的全部。如果下一事务针对不同的数据行,则将出现页错误,并且先前的行需要被释放,并且在存取之前打开新行。当存在高数据局部性时,页错误较少,并且错误的性能损失不只由在没有页错误时不必对每个事务将行打开的性能效率抵消。
然而,与主存储器资源相比,倾向于对高速缓存进行更多的随机存取。因此,在DRAM作为高速缓存资源的某些应用中,与主存储器存取相比,连续事务没那么频繁地指向高速缓存中的相同行。在具有较高随机存取的应用中,典型地利用关闭页策略(也称为已关闭页策略)来管理DRAM。在关闭页策略中,行在存取后关闭。实际上,大多数现代的关闭页策略使用自定义的混合方法,其中行在一段时间内(例如,由定时器控制)保持打开,并且在阈值时间段之后关闭。出于本文的目的,可以基本上将混合方法视为关闭页策略。
在任何关闭页策略中,传统上存在对在给定事务(例如,与执行单个存取命令有关的操作)中可以写入或读取多少数据的限制。这种应用与其中存在经配置的突发长度(BL)的典型打开页策略不同。然而,即使在其中关闭页策略提供更好的整体性能的具有较高随机存取的应用中,有时能够以突发执行存取也将提供更好的性能。
现在参考图1,图100示出了现有技术的读取命令的时序图。图100示出了各种信号线的相对时序;即,时钟信号(CLK)、命令信号(CMD)、地址信号(ADDR)、数据选通和选通补码(分别为DQS和DQS#(虚线))、以及数据信号(DQ)。CLK示为从当在CMD线上发布初始读取命令的时间T0,直到当第二读取命令的数据完成发送的时间T13。第一读取命令在时间T0伴随有存储体(Bank)和列n的地址,并且第二读取命令在时间T4伴随有存储体和列b的地址。如ADDR线所示,在读取命令之间的时间是tCCD,其为最小列到列地址定时。tRPST时间用于读取后同步码。
如DQS线所示,存储器设备具有作为读取前同步码的tRPRE时间,以在第一读取命令的突发数据之前稳定选通线。在前同步码时间之后,DQ线示出了数据的八个部分(DQn到DQ(n+7))的突发。应当理解,存储器设备被配置为从存储体取出8位数据的突发并将其输出。传统上,预取和输出是基于响应于第一外部读取存储器存取命令而在存储体内进行的单个事务的。响应于第二外部读取存取命令,在列b(从而数据DQb到DQ(b+7))处开始输出8位数据的第二突发。如选通线所示,数据的最后一位也可以与读取后同步码时间tRPST一致,以在输出事务之后稳定选通线。数据突发传统上响应于命令而发生,并且基于存储器设备的内部预取机制在指定存储体上进行操作。
附图说明
以下描述包括对图的讨论,这些图具有通过本发明的实施例的实现方式的示例方式给出的图示。附图应当通过示例的方式而非通过限制的方式来理解。如本文所使用的,对一个或多个“实施例”的引用将被理解为描述包括在本发明的至少一个实现方式中的特定特征、结构、和/或特性。因此,本文出现的诸如“在一个实施例中”或“在替代实施例中”的短语描述了本发明的各种实施例和实现方式,而不一定全部指代相同的实施例。但是,这些实施例也不一定相互排斥。
图1是现有技术的读取命令的时序图。
图2是具有存储器设备的系统的实施例的框图,该存储器设备具有内部突发控制。
图3是提供内部突发控制的存储器设备的实施例的框图。
图4是具有执行内部突发控制的控制逻辑的存储器设备的实施例的框图。
图5A是存储器设备中的内部突发控制的实施例的时序图。
图5B是从具有内部突发控制的存储器设备进行读取的实施例的时序图。
图6是用于对具有内部突发控制的存储器设备进行存取的过程的实施例的流程图。
图7是其中可以实现存储器设备内部突发控制的计算系统的实施例的框图。
图8是其中可以实现存储器设备内部突发控制的移动设备的实施例的框图。
下面是对特定细节和实现方式的描述,包括对附图的描述,附图可以描绘下文描述的实施例中的一些或全部,并且对本文呈现的发明概念的其他潜在实施例或实现方式进行讨论。
具体实施方式
如本文所述,存储器设备执行内部操作以提供可编程的突发长度。存储器设备包括独立且可单独寻址的多个存储体。存储器设备选择要在突发序列中进行操作的多个存储体或存储体组,其中所有选定的存储体或存储体组基于由存储器设备生成的内部操作针对从相关联的存储器控制器发送的命令进行操作。存储体组是可以被单独地寻址和存取的一个或多个存储体;因此,不同存储体组中的存储体可以被认为是彼此独立的,并且可以并行执行针对不同存储体组中的存储体的存取命令。典型地,存储器设备包括允许对存储体和存储体组进行单独存取的逻辑。这里对选择存储体组和存取存储体组的引用将被理解为应用于可独立寻址的任何一个或多个存储体(例如,通过使不同的组具有不同的地址)。因此,“存储体组”在这里的使用不是限制性的。响应于接收到存取命令,存储器设备生成多个内部操作以使得所有选定的存储体组都执行存取命令,而不需要来自存储器控制器的多个命令。因此,即使在以关闭页策略进行操作时,存储器设备也可以提供可编程的突发操作。
对存储器设备的引用可以应用于不同的存储器类型。存储器设备一般是指易失性存储器技术。易失性存储器是如果中断到设备的电源则其状态(并且因此存储在其上的数据)不确定的存储器。非易失性存储器或存储装置即使在中断电源(在长时间段内经受退化)时也保持其状态。动态易失性存储器需要刷新存储在设备中的数据来维持状态。动态易失性存储器的一个示例包括DRAM(动态随机存取存储器)或一些变型,例如,同步DRAM(SDRAM)。如本文所述的存储器子系统可以与多种存储器技术兼容,例如,DDR3(双数据速率版本3,最初由JEDEC(联合电子设备工程委员会)于2007年6月27日发布,目前为版本21)、DDR4(DDR版本4,由JEDEC于2012年9月发布的初始规范)、LPDDR3(低功率DDR版本3,JESD209-3B,由JEDEC于2013年8月发布)、LPDDR4(低功率双重数据速率(LPDDR)版本4,JESD209-4,最初由JEDEC于2014年8月发布)、WIO2(宽I/O 2(WideIO2),JESD229-2,最初由JEDEC于2014年8月发布)、HBM DRAM(高带宽存储器,JESD235,最初由JEDEC于2013年10月发布)、和/或其他,以及基于这些规范的衍生物或扩展的技术。
除了或替代易失性存储器,在一个实施例中,对存储器设备的引用可以指代非易失性存储器设备,即使中断到设备的电源非易失性存储器设备的状态也是确定的。在一个实施例中,非易失性存储器设备是诸如NAND或NOR技术的块可寻址存储器设备。因此,存储器设备还可以包括诸如三维交叉点存储器设备的下一代非易失性设备,或其他字节可寻址非易失性存储器设备。在一个实施例中,存储器设备可以是或包括:多阈值电平NAND闪速存储器、NOR闪速存储器、单级或多级相变存储器(PCM)、电阻存储器、纳米线存储器、铁电晶体管随机存取存储器(FeTRAM)、包含忆阻器技术的磁阻随机存取存储器(MRAM)存储器、或自旋转移转矩(STT)-MRAM、或上述存储器中的任一个的组合、或者其他存储器。
本文中涉及“DRAM”的描述将被理解为应用于允许随机存取的任何存储器设备。存储器设备或DRAM可以指代管芯本身和/或指代封装的存储器产品。DRAM包括可以作为单独的存储体组进行管理的多个存储体。
在专用DRAM设计中,DRAM可以用作最后一级高速缓存或近存储器设备。在这样的设计中,与DRAM的典型主存储器应用相比,存储器子系统管理具有更短页尺寸的DRAM。另外,DRAM上的存储器阵列(存储介质)典型地具有更多的存储体组,以实现更低的功率、更短的时延、以及更高的有效带宽,由于能够对存储器设备的更多独立区域进行单独地寻址而具有更少的冲突。如上面提及的,DRAM的这种应用典型地采用关闭页策略以对随机存取具有更好的响应。
如本文描述的,DRAM内的突发控制或内部连续行存取控制可以提供突发存取,允许与由标准DRAM应用中的突发模式提供的连续存取相类似的连续存取。因此,高速缓存应用中的专用DRAM可以提供突发存取。提供突发控制可以减少命令流量,并且由于使用较少的I/O(输入/输出)而减少命令/地址功耗。在一个实施例中,标准型DRAM提供突发控制。在一个实施例中,诸如SRAM、STTM(STT-MRAM)、FeDRAM等的其他存储器技术可以类似地在存储器设备内部处应用突发控制。
在一个实施例中,存储器控制器确定何时针对存取命令应用突发存取。在一个实施例中,存储器控制器设置模式寄存器或DRAM内的其他机制,其对DRAM将如何操作的设置进行配置。突发长度(BL)可以是可调节且可动态地编程或配置的。因此,DRAM可以被动态地配置为基于BL设置来关于读取事务提供不同量的数据,或者关于写入事务接收不同量的数据。在一个实施例中,存储器控制器可以基于在协议中定义一个或多个附加命令来配置DRAM BL设置。附加命令可以是对使用模式寄存器的补充或替代。附加命令可能需要DRAM与存储器控制器之间的命令接口上的附加引脚。附加命令可以允许DRAM在针对可变突发长度的模式寄存器设置中被配置一次,并且然后利用附加命令来即时(on the fly)改变BL。
如本文描述的,在一个实施例中,存储器控制器不需要发送多个存取命令来实现更长的突发长度。而是,DRAM本身可以生成响应于来自存储器控制器的单个存取命令而执行的多个内部操作。应当理解,“单个”存取命令可以指代存取命令序列,其表示触发单个存取事务的多个不同命令的序列。例如,DRAM典型地具有激活(ACT)命令,其后为列命令(CAS-列地址选通),其中列命令可以特定于读取(RD)或写入(WR)。因此,存储器控制器可以发送ACT、并且然后RD-CAS或ACT、并且然后WR-CAS的序列,以分别执行读取事务或写入事务。响应于单个命令或命令序列,DRAM可以针对不同的存储体组生成并执行多个内部操作。这样的事务可以基于单个事务命令开销来实现更长的BL。在一个实施例中,单个命令可以是激活命令、列地址命令、以及预充电(PRE)命令。
在一个实施例中,DRAM包括内部计数器,以使得DRAM本身能够控制对存储体或存储体组的存取的次序。在一个实施例中,DRAM以固定序列(例如,以地址次序)来存取存储体组。在一个实施例中,固定序列是对存储体组进行存取的特定、预设置的次序,其不是按地址次序的。在一个实施例中,序列不是固定的,并且内部DRAM控制器基于一个或多个计数器来管理对存储体组的存取,该一个或多个计数器指示在周期内哪些存储体组已经被存取。因此,DRAM可以在内部管理对其存储体组的存取的交错。
图2是具有存储器设备的系统的实施例的框图,该存储器设备具有内部突发控制。系统200表示可以在移动设备中实现的存储器子系统。主机210表示执行操作系统(OS)和应用的主机计算平台。OS和应用执行导致存储器存取的操作。主机210包括处理器或处理单元,其可以是单核或多核处理器。系统200可以实现为SOC,或者利用独立的组件来实现。当系统200中包括多个存储器设备220时,每个存储器设备可以单独地对内部操作的生成进行管理,以执行来自存储器控制器212的命令。
存储器控制器212表示响应于由(多个)处理器执行操作而生成存储器存取命令的控制逻辑。在一个实施例中,存储器控制器212是主机210的一部分,例如,在与主机处理器相同的管芯或封装空间上实现的逻辑。在一个实施例中,存储器设备220是系统200中的DRAM最后一级高速缓存(例如,L3高速缓存)。在一个实施例中,存储器设备220实现关闭页策略。
存储器设备220表示用于系统200的存储器资源,并且可以称为DRAM。存储器设备220各自包括多个存储器存储体222。存储体222表示存储器设备220在其中存储数据的存储介质。存储体222可以被组织为存储体组。存储器的存储体是一组存储器单元,其可以独立于其他组存储器单元而被存取。存储体组是一个或多个存储体,其可以独立于其他存储体而被操作。可以并行地对来自不同存储体组的存储体进行存取。应当理解,当在存储器设备中不支持真正的并行操作时,并行存取按顺序发生。然而,当产生的存取不会导致存储体之间的存取延迟时,甚至顺序操作从外部连接也可以看起来是并行的。这里对选择存储体组和存取存储体组的引用将被理解为应用于可独立寻址的任何一个或多个存储体222(例如,通过使不同的组具有不同的地址)。
存储器设备220包括经由一个或多个总线连接到存储器控制器212的I/O(输入/输出)硬件224。I/O 224可以包括驱动器、锁存器、终端、和/或其他硬件。在一个实施例中,在存储器控制器212与I/O 224之间的接口可以包括C/A(命令/地址)总线242和数据总线244。C/A总线242使得存储器控制器212能够向存储器设备220发送命令和地址信息。数据总线244使得存储器控制器212能够发送用于写入事务的数据,并且使得存储器设备220能够发送用于读取事务的数据。
控制器226表示存储器设备220上的控制逻辑,并且可以实现为片上的微控制器或微处理器。控制器226对存储器设备220内的操作进行管理。控制器226对存储器设备220内的执行定时进行管理,以执行由存储器控制器212发送的命令。在一个实施例中,控制器226生成多个内部事务,以执行由存储器控制器212发送的单个命令事务。
在一个实施例中,系统200并入需要减少存储器命令流量的计算系统中,以减少存储器子系统功耗,和/或用简单事务来填充高速缓存行(cacheline)。通过配置存储器设备220(例如,通过配置控制器226)以用于突发操作,系统200可以提供期望的益处。即使在其中专用DRAM具有关闭页策略和小的页尺寸的应用中,也可以实现这样的益处。
在一个实施例中,存储器控制器212可以基于对寄存器228中的设置进行编程来配置存储器设备220以用于突发操作。寄存器228表示用于存储器设备220的模式寄存器或其他设置存储装置。因此,可以选择性地打开或关闭突发操作。在一个实施例中,可以将用于存储器设备220的BL编程为多个不同设置(例如,4或8个)中的一个。在一个实施例中,可以将突发操作编程为从在来自存储器控制器212的命令中标识的指定存储体组(BG)地址开始。在一个实施例中,可以将突发操作编程为总是在BG地址0或另一地址处开始。寄存器228可以存储这样的开始地址设置。控制器226基于寄存器228中的设置和/或其他设置来管理突发控制或连续行存取的实现。
在一个实施例中,存储器设备220包括计数器230。在一个实施例中,计数器230是控制器226的一部分。计数器230可以生成具有固定延迟(例如,1ns延迟)的BG地址。利用计数器230,控制器226将不需要存储器控制器212生成用于命令的存储体组地址信息。可替代地,控制器226可以忽略从存储器控制器212接收到的BG地址信息。在一个实施例中,控制器226使用计数器数据来监测存储体组操作。监测存储体组操作可以包括监测通过存储体组的操作的序列,以确保每个存储体组通过周期依次被存取。该周期可以指定在另一存储体组被第二次存取之前,每个存储体组都被存取一次。利用计数器230,控制器226可以按照存储体/存储体组的地址的次序使操作顺序通过存储体222和/或可以以交错的方式使操作顺序通过,交错的方式不是按照顺序地址次序。
在一个实施例中,存储器控制器212与存储器设备220之间的接口协议支持附加的规范命令,以即时改变BL和/或突发排序。即时操作是指改变存储器设备的操作的配置而不改变寄存器设置。寄存器设置或其他配置设置可以被设置为使能即时操作,但是即时操作可以在运行时发生,而不需要进一步调整存储器设备的配置。
在一个实施例中,存储器控制器212监测存取行为的效率。例如,存储器控制器可以对在突发模式之后有多少事务进行计数,并且因此将受益于对存储器设备220的突发存取。基于所监测到的信息,存储器控制器可以对将导致更高存取效率的BL进行计算。当存储器设备220被使能用于突发操作时,来自存储器控制器212的单个命令序列(例如,ACT、CAS、以及PRE)可能导致通过多个存储体组的相同操作的循环。
图3是提供内部突发控制的存储器设备的实施例的框图。DRAM 310示出了根据本文描述的任何DRAM的存储器设备的实施例的一个示例。DRAM 310是图2的存储器设备220的一个示例。在一个实施例中,与标准型DRAM设计相比,DRAM 310是具有附加存储体组的专用DRAM。在一个实施例中,通过包括用于对独立组内的存储器资源进行存取的附加逻辑(例如,路由、信令、接口)来提供附加存储体组。如所示出的,DRAM310包括被组织为“左”存储体组和“右”存储体组以及“上”存储体组和“下”存储体组的存储体组。应当理解,诸如左、右、上、以及下的方向标签是相对的,而不限制设备的操作。典型地,参考已封装的DRAM设备的指定引出线来制定这样的方向。参考图3的标签仅是示例性的而非限制性的。此外,图3中的DRAM 310的示例在管芯的中心具有I/O和控制逻辑,如下面更详细描述的。这样的配置仅仅是一个示例,而不是限制性的。用于执行内部操作以增加突发长度的技术也可以应用于在左管芯边缘和右管芯边缘处具有I/O的DRAM(例如,在LPDDR DRAM中)。
上存储体组包括左存储体组BG0L和BG1L以及右存储体组BG0R和BG1R。下存储体组包括左存储体组BG2L和BG3L以及右存储体组BG2R和BG3R。DRAM的中心(例如,DRAM 310的管芯实现方式的中心)可以包括I/O板和控制逻辑。在一个实施例中,I/O 314提供用于左存储体BG[0:3]L的I/O,并且I/O 316提供用于右存储体BG[0:3]R的I/O。在已封装的实现方式中,I/O 314和316将连接到接口封装上的引脚。在SoC(片上系统)实现方式中,可以存在诸如倒装芯片连接或接合线的芯片级互连。在典型的示例中,DRAM 310可以包括总共x64I/O,分为两组x32(左和右)。I/O 314和I/O 316可以包括诸如驱动器和用于连接到各种存储体组的其他接口电路的硬件。在一个实施例中,控制逻辑312包括对DRAM 310内的操作进行控制的管理逻辑。
在一个实施例中,DRAM 310是利用关闭页策略实现的,以增加随机存取灵活性的可能性。在一个实施例中,DRAM 310在每一侧提供一个通道:左侧是一个通道,而右侧是不同的通道。因此,DRAM 310可以包括各自在两个单独的通道上的4个存储体组。在一个实施例中,来自相关联的存储器控制器(未示出)的命令可以由控制逻辑312接收并处理。在一个实施例中,响应于单个RD命令,DRAM 310在内部顺序地生成多个内部操作,以执行在每个存储体组处的RD(针对接收命令的通道)。在一个实施例中,控制逻辑312包括用于生成连续的BG地址的BG计数器,以响应于命令而在内部且顺续地对每个BG进行存取。在一个实施例中,每个BG仅具有2N个预取数据(其中N是所使用的地址位的数量),并且DRAM 310可以生成等于选定的存储体组的数量乘以2N的突发。例如,DRAM 310可被配置为在突发中生成8位输出数据。在一个实施例中,DRAM 310可以以1ns的时延对每个不同的BG进行存取。因此,考虑在DRAM 310处接收到的RD命令:控制逻辑312可以以1ns命令时延连续地向不同的BG发布RD命令,并且以1GHz时钟频率无缝地生成具有DDR(双倍数据速率)的读出数据。
在一个实施例中,DRAM 310是DDR x4设备。应当理解,“x4”设备是指具有4位宽数据接口的DRAM。替代例包括x8设备(8位宽数据接口)、x16设备(16位宽数据接口)等。标准型DRAM可以具有8Kb或更大的页尺寸,其中页(存储器单元的行)与芯片接口外围电路(例如,读/写I/O缓冲器)之间的数据转移宽度仅为32位。因此,标准型实现方式中的突发操作利用大的页尺寸是合理的。在一个实施例中,DRAM 310具有比标准型DRAM小的页尺寸,例如,64B、128B、256B、或其他长度的页尺寸或行尺寸。较小的页尺寸可以降低由于激活而导致的功耗,同时由于较低的电容性负载而提高存取速度。较小的页尺寸对于更多的随机存取同样更加高效。
图4是具有执行内部突发控制的控制逻辑的存储器设备的实施例的框图。DRAM400表示根据本文描述的任何系统的可以使用具有内部突发控制的DRAM的存储器设备的一个示例。控制逻辑402表示根据本文描述的任何实施例的存储器设备内的控制器或控制逻辑。控制逻辑402接收时钟(CLK)信号、时钟使能(CKE)信号、以及命令(CMD)信号,并且根据这些信号来控制DRAM 400的操作。控制逻辑402可以基于存储在模式寄存器(MR)406中的设置来进行操作。在一个实施例中,控制逻辑402提供对不同存储体组中的存储器存储体的控制,并且响应于来自存储器控制器或主机的单个命令而生成多个内部操作。
地址寄存器404接收诸如行地址信号和存储体地址信号的地址信息(ADDR),以识别存储器中的受到特定命令影响的部分。地址寄存器404将地址信息分发给行地址复用器410、存储体控制逻辑422、列地址计数器424、以及模式寄存器406。行地址复用器410取行地址信息和来自刷新计数器412的信号作为输入,并且针对每个存储体组对行地址锁存器(RAL)和解码器进行控制。逻辑可以连接到组成存储体组的多个存储体。存储体控制逻辑422对哪个存储体组将针对所接收到的存储器存取操作(命令)被选择进行选择。列地址计数器424生成用于针对操作来选择列的信号。在一个实施例中,控制逻辑402包括计数器(未明确示出),用于内部地生成存储体组地址,并针对单个命令顺序通过选定的存储体组。因此,一个或多个选定的存储体组可以关于单个命令进行操作。
存储体组的RAL和解码器选择存储体/存储体组的(多个)存储器阵列中的地址,并且感测放大器可以取决于操作而被激活。I/O门控440可以将数据放置到感测放大器中以用于写入操作,并且可以读出数据以用于读取操作。列解码器430接收存储体控制逻辑选择和列地址计数器选择,并且针对I/O门控440进行列选择。
读取接口450被耦合,以便接收来自I/O门控440的数据位以用于读取操作。读取接口450可以包括读取锁存器和复用器,并且将选定的输出数据馈送到读取驱动器452中,读取驱动器452将数据放置在数据总线(DATA)的信号线上。由DLL 454提供用于驱动数据总线的定时,DLL由控制逻辑402进行控制。驱动器452可以基于伴随数据信号的定时来驱动数据选通线。写入接收器460接收来自数据总线的写入数据,并将其输入到写入数据接口462的输入寄存器或输入缓冲器中。数据接口462可以将数据提供给I/O门控440。
在一个实施例中,DRAM 400包括ZQCal 480,以提供关于数据总线上的数据的阻抗校准功能。在一个实施例中,DRAM 400包括ODT(片内终结电阻)控制472,以对应用于到数据总线的I/O的输入和/或输出阻抗电路进行控制。ODT 474表示可以根据DRAM 400的阻抗的配置设置来应用于给定事务的阻抗电路。
图5A是存储器设备中的内部突发控制的实施例的时序图。图502示出了时钟信号(CLK 510)、存储器控制器命令(CMD 520)、以及内部操作(INT OP 530)的信令的相对定时的示例。为了可读性的目的,图502包括网格。应当理解,信号的定时旨在以高级别示出,并且对于实际实现不一定是详细准确的。
CLK 510表示在存储器设备内使用的时钟信号。在一个实施例中,存储器设备在命令线520上接收来自相关联的存储器控制器的激活命令ACT 522。在ACT 522与读取(READ)524之间存在延迟tRCD。在一个实施例中,读取524表示RD-CAS命令,并且ACT 522和读取524的序列表示由存储器控制器发送的单个存取命令。存储器设备的内部控制器接收并处理所接收到的命令。虽然示出了读取命令,但是应当理解,写入类似于图502中所示的内容。
在一个实施例中,响应于ACT 522,存储器设备(经由其控制器)生成多个内部操作。如所示出的,存储器控制器生成四个内部操作532、534、536、以及538。基于图502可以理解,存储器设备被配置为存取四个存储体组作为突发。按顺序存取的存储体组的数量取决于实现方式和提供给存储器设备的配置而变化。因此,其他事务可以与图502中所描绘的不同。将观察到,为了说明的目的,内部操作532与ACT 522对齐。在一个实施例中,在ACT 522与内部操作532之间可能存在延迟,例如,传播延迟和/或处理延迟。其他内部操作的时序同样可以与图中所示的时序偏移。
在一个实施例中,操作532是针对存储体组0的激活命令(ACT-BG0),操作534是针对存储体组1的激活命令(ACT-BG1),操作536是针对存储体组2的激活命令(ACT-BG2),以及操作538是针对存储体组3的激活命令(ACT-BG3)。虽然所示出的内部操作是按地址次序的,但是应当理解,存储器设备可以不按照地址次序生成内部操作。响应于读取524,存储器设备还生成四个内部操作:542、544、546、以及548。应当理解,虽然内部操作530中的存储体组的次序可以与所示出的次序不同,但是响应于读取524而生成的内部操作的次序将与关于ACT 522的内部操作的次序相同。在一个实施例中,操作542是针对存储体组0的读取命令(RD-BG0),操作544是针对存储体组1的读取命令(RD-BG1),操作546是针对存储体组2的读取命令(RD-BG2),以及操作548是针对存储体组3的读取命令(RD-BG3)。
因此,在一个实施例中,ACT命令被定义为跨存储体组打开多个(例如,四个,取决于针对突发操作选择了多少个存储体组)页。在一个实施例中,在模式寄存器中定义顺序通过存储体组的次序和要顺序通过的存储体组的数量。在一个实施例中,命令编码被定义为选择存储体组的序列以给予存储器控制器更多的灵活性。在一个实施例中,预充电命令也以与顺序通过多个存储体组类似的方式来定义,以对选定数量的页进行预充电。在一个实施例中,利用自动预充电的读取或写入命令还将导致经由存储器设备内的内部控制逻辑循环通过选定数量的存储体组。
如所示出的,响应于接收到ACT 522,存储器设备生成四个内部操作532、534、536、以及538。类似地,响应于读取524,存储器设备生成四个对应的内部操作542、544、546、以及548。应当理解,在一个实施例中,存储器设备可以选择不同数量的存储体组用于后续存取事务。因此,虽然在图502的示例中选择了四个存储体组,但是可以选择不同数量的存储体组。另外,不一定选择相同数量的存储体组用于后续事务。而是,可以针对选择多少存储体组而动态地配置存储器设备。在一个实施例中,存储器控制器计算突发长度,并且针对该突发长度对存储器设备进行配置。如果存储器控制器中的活动改变,则存储器控制器可以确定不同的突发长度将提供更好的性能。在一个实施例中,存储器控制器可以改变存储器设备的突发长度,并且存储器设备将关于后续事务选择与图502所示的不同数量的存储体组(例如,两个)。
图5B是从具有内部突发控制的存储器设备进行读取的实施例的时序图。图504是根据图5A的图502的时序图的一个示例。图502和504二者都可以是根据本文描述的任何实施例的用于内部突发控制的时序序列的示例。与图502一样,图504示出了读取命令序列,但是应当理解,相同的原理可以应用于写入命令。图504示出了时钟信号CLK 510、存储器控制器命令MC CMD 550、存储器设备内部操作INT OP 560、以及数据信号DQ 570。示出了相同的时钟,并且因此图504具有与图502相同的时钟线。其他信号可以与图502中所示的信号相同或不同,并且因此在图504中不同地标记。
在一个实施例中,CMD 550接收读取命令事务,其可以包括ACT命令和RD命令,作为ACT-RD552一起示出。应当理解,ACT-RD 552表示单个读取命令事务,无论是通过单个命令还是命令的序列。ACT-RD 552表示引起激活和对存储器的读取的命令,并且包括行地址和列地址信息。在一个实施例中,读取事务包括不单独地发送的ACT命令。接收到读取命令与输出数据之间的时间是tRD。在一个实施例中,ACT和/或RD命令包括选定的存储器单元的行地址信息。该命令触发存储器设备激活由行地址指定的字线(WL)以选择存储器单元。当被选择时,单元数据可以被感测和锁存为感测放大器(SA),如图3所示出的。传统上,页尺寸是字线,其在标准型DRAM实现方式中可以是4Kb(0.5KB)、8Kb(1KB)、或16Kb(2KB)。应当理解,不同的架构是不同的,但是存取位计数页典型地是32b、64b、或128b。因此,为了填充计算系统512b高速缓存行,传统的存储器子系统使存储器控制器在突发操作中按顺序多次实现多个列操作(例如,RD-CAS、WR-CAS)。
如本文所描述的,存储器设备可以响应于单个外部事务命令而生成多个内部命令。在一个实施例中,存储器设备响应于ACT-RD 552而利用命令生成多个BG地址。因此,例如,存储器设备可以生成RD-BG0 562作为针对存储体组0的读取命令,生成RD-BG1 564作为针对存储体组1的读取命令,生成RD-BG2 566作为针对存储体组2的读取命令,并且生成RD-BG3 568作为针对存储体组3的读取命令。内部操作562、564、566、以及568表示在选定的存储体组中执行读取事务所需的任何一个或多个内部操作。响应于内部操作,每个存储体组对所请求的读取数据进行存取。如上面关于图502所提及的,例如由于传播延迟和/或处理延迟,ACT-RD 522与内部操作之间的时序可能存在偏移。
如在DQ 570处示出的,BG0可以生成数据D0和D1,BG1可以生成数据D2和D3,BG3可以生成数据D4和D5,并且BG3可以生成数据D6和D7。应当理解,取决于针对突发操作选择了多少存储体组,不同的数据输出是可能的。在一个实施例中,存储器设备生成具有1ns的命令时延的内部存储体组操作,以无缝地以1ns延迟在每个BG处生成读取操作。然后,在l/O引脚处,存储器设备可以利用DDR从不同存储体组输出连续数据。如图504所示,输出序列等价于标准型DRAM中的BL=8。
图6是用于对具有内部突发控制的存储器设备进行存取的过程600的实施例的流程图。过程600可以是根据本文描述的任何实施例的以突发模式进行存取的过程。在一个实施例中,由主机执行操作生成对存储器设备进行存取的请求,602。该执行可以是执行计算平台上的任何服务或代理,计算平台可以包括操作系统组件和/或应用组件。主机包括中央处理器或外围处理器。响应于进行主机执行所需的数据,存取可以是对高速缓存的读取或写入。
在一个实施例中,存储器子系统确定使用突发操作来对存储器设备进行存取,604。在一个实施例中,利用关闭页策略来管理存储器设备,并且不针对多个连续操作保持页打开。即使在打开页策略中,存储器设备执行内部操作的突发(例如,“突发模式”)的能力也可以阻止存储器控制器需要发送附加的命令来执行突发操作。在一个实施例中,存储器控制器基于监测存取流量来确定使用突发模式。在一个实施例中,存储器控制器发送模式寄存器设置命令或其他命令来设置存储器设备中的突发长度,606。在内部,存储器设备将基于突发长度设置来选择多个存储体组用于执行。在DDR实现方式中,要选择的存储体组的数量是突发长度设置除以二。可以动态地实现和配置突发长度(并且因此要选择的存储体组的数量)。
在一个实施例中,存储器控制器生成用于对存储器设备进行存取的命令或命令序列,608。单个命令可以包括按顺序发送的多个信号部分,或者可以是单个信号。单个命令是用于事务的命令部分的整体,其是识别所请求的命令和要存取的地址所需要的。存储器设备接收命令并对其进行解码,610。存储器设备动态地选择要在突发序列中进行存取的存储体组,612。
响应于来自存储器控制器的命令,存储器设备在内部针对选定的存储体组中的每个存储体组生成多个内部操作,614。因此,存储器设备可以选择多个存储体组以对所接收到的命令进行操作,并且使得所有选定的存储体组执行所接收到的存取命令,616。在一个实施例中,执行存取操作可以包括存储器设备针对选定的存储体组生成操作的序列。操作次序可以按照存储体组地址的次序或一些其他次序。存储器设备可以包括用于针对存储体组生成内部操作的内部计数器。
图7是其中可以实现存储器设备内部突发控制的计算系统的实施例的框图。系统700表示根据本文描述的任何实施例的计算设备,并且可以是膝上型计算机、台式计算机、服务器、游戏或娱乐控制系统、扫描仪、复印机、打印机、路由或交换设备、或其他电子设备。系统700包括处理器720,其提供系统700的处理、操作管理、以及指令执行。处理器720可以包括任何类型的微处理器、中央处理单元(CPU)、处理核心、或提供系统700的处理的其他处理硬件。处理器720控制系统700的总体操作,并且可以是或者包括:一个或多个可编程通用或专用微处理器、数字信号处理器(DSP)、可编程控制器、专用集成电路(ASlC)、可编程逻辑器件(PLD)等,或这些设备的组合。
存储器子系统730表示系统700的主存储器,并且提供针对待由处理器720执行的代码或待在执行例程时使用的数据值的临时存储。存储器子系统730可以包括一个或多个存储器设备,例如,只读存储器(ROM)、闪速存储器、一种或多种随机存取存储器(RAM)、或其他存储器设备,或这些设备的组合。存储器子系统730存储并托管(除其他之外)操作系统(OS)736以提供用于在系统700中执行指令的软件平台。另外,来自存储器子系统730的其他指令738被存储并执行以提供逻辑和系统700的处理。OS 736和指令738由处理器720执行。存储器子系统730包括在其中存储数据、指令、程序、或其他项的存储器设备732。在一个实施例中,存储器子系统包括存储器控制器734,其是用于生成并向存储器设备732发布命令的存储器控制器。应当理解,存储器控制器734可以是处理器720的物理部分。
处理器720和存储器子系统730耦合到总线/总线系统710。总线710是表示通过适当的桥接器、适配器、和/或控制器进行连接的任何一个或多个分离的物理总线、通信线路/接口、和/或点到点连接的抽象。因此,总线710可以包括例如以下中的一个或多个:系统总线、外围部件互连(PCI)总线、超传输或工业标准架构(ISA)总线、小型计算机系统接口(SCSI)总线、通用串行总线(USB)、或电气和电子工程师协会(IEEE)标准1394总线(常见地称为“火线”)。总线710的总线还可以对应于网络接口750中的接口。
系统700还包括耦合到总线710的一个或多个输入/输出(I/O)接口740、网络接口750、一个或多个内部大容量存储设备760、以及外围接口770。I/O接口740可以包括一个或多个接口组件,用户通过该一个或多个接口组件与系统700进行交互(例如,视频、音频、和/或字母数字接口)。在一个实施例中,I/O接口740可以包括向用户提供输出的高清晰度(HD)显示器。高清晰度可以指具有大约100PPI(像素每英寸)或更大的像素密度的显示,并且可以包括诸如全HD(例如,1080p)、视网膜显示、4K(超高清晰度或UHD)、或其他的格式。高清晰度还可以指具有与像素显示器相当的视觉质量的投影显示器(例如,头戴式显示器)。网络接口750向系统700提供通过一个或多个网络与远程设备(例如,服务器、其他计算设备)进行通信的能力。网络接口750可以包括以太网适配器、无线互连组件、USB(通用串行总线)、或者基于其他有线或无线标准的或专有的接口。
存储设备760可以是或者包括用于以非易失性方式存储大量数据的任何常规介质,例如,一个或多个基于磁性、固态、或光的盘,或者组合。存储设备760保持代码或指令和数据762处于持续状态(即,即使中断到系统700的电力,值仍然被保留)。存储设备760可以一般性地被认为是“存储器”,虽然存储器730是用于向处理器720提供指令的执行或操作存储器。存储设备760是非易失性的,而存储器730可以包括易失性存储器(即,如果中断到系统700的电力,则值或数据的状态是不确定的)。
外围接口770可以包括上面没有具体提及的任何硬件接口。外围设备一般指相关地连接到系统700的设备。相关连接是其中系统700提供软件和/或硬件平台的连接,操作在该软件和/或硬件平台上执行,并且用户与该软件和/或硬件平台进行交互。
在一个实施例中,系统700包括突发控制780,其可以是存储器子系统730的存储器732内的逻辑。根据本文描述的任何实施例,突发控制780使得存储器732能够响应于来自存储器控制器734的单个存储器存取命令事务而生成多个内部操作。因此,存储器732可以在内部执行操作以利用存储器控制器734来扩展I/O的突发长度,而不需要存储器控制器发送多个锁存命令。在一个实施例中,突发控制780可以包括内部存储体组计数器,以及用于控制内部操作的序列的逻辑。在一个实施例中,突发控制780对来自诸如模式寄存器的配置寄存器的设置进行存取,以确定针对每个存取事务的突发选择多少个存储体组。
图8是其中可以实现存储器设备内部突发控制的移动设备的实施例的框图。设备800表示移动计算设备,例如,计算平板计算机、移动电话或智能电话、无线支持的电子阅读器、可穿戴计算设备、或其他移动设备。应当理解,总体上示出了设备800中的组件中的某些组件,而并非示出设备800中的这种设备的所有组件。
设备800包括执行设备800的主要处理操作的处理器810。处理器810可以包括一个或多个物理设备,例如,微处理器、应用处理器、微控制器、可编程逻辑器件、或其他处理模块。由处理器810执行的处理操作包括执行操作平台或操作系统,应用和/或设备功能在该操作平台或操作系统上执行。处理操作包括与人类用户或与其他设备的I/O(输入/输出)相关的操作、与功率管理相关的操作、和/或与将设备800连接到另一设备相关的操作。处理操作还可以包括与音频I/O和/或显示I/O相关的操作。
在一个实施例中,设备800包括音频子系统820,其表示与向计算设备提供音频功能相关联的硬件(例如,音频硬件和音频电路)和软件(例如,驱动程序、编解码器)组件。音频功能可以包括扬声器和/或耳机输出,以及麦克风输入。用于这些功能的设备可以集成到设备800中,或者连接到设备800。在一个实施例中,用户通过提供由处理器810接收和处理的音频命令来与设备800交互。
显示子系统830表示提供视觉和/或触觉显示以供用户与计算设备进行交互的硬件(例如,显示设备)和软件(例如,驱动程序)组件。显示子系统830包括显示接口832,其包括用于向用户提供显示的特定屏幕或硬件设备。在一个实施例中,显示接口832包括与处理器810分离的逻辑,用于执行与显示相关的至少一些处理。在一个实施例中,显示子系统830包括向用户提供输出和输入二者的触摸屏设备。在一个实施例中,显示子系统830包括向用户提供输出的高清晰度(HD)显示器。高清晰度可以指具有大约100PPI(像素每英寸)或更大的像素密度的显示,并且可以包括诸如全HD(例如,1080p)、视网膜显示、4K(超高清晰度或UHD)、或其他的格式。
I/O控制器840表示有关与用户的交互的硬件设备和软件组件。I/O控制器840可以操作以管理作为音频子系统820和/或显示子系统830的一部分的硬件。另外,I/O控制器840示出了连接到设备800的附加设备的连接点,用户可以通过附加设备与系统进行交互。例如,可以附接到设备800的设备可以包括麦克风设备、扬声器或立体声系统、视频系统或其他显示设备、键盘或键区设备、或与特定应用(例如,读卡器或其他设备)一起使用的其他I/O设备。
如上面提及的,I/O控制器840可以与音频子系统820和/或显示子系统830进行交互。例如,通过麦克风或其他音频设备的输入可以针对设备800的一个或多个应用或功能提供输入或命令。另外,可以代替显示输出或者除显示输出之外提供音频输出。在另一示例中,如果显示子系统包括触摸屏,则显示设备还充当输入设备,其可以至少部分地由I/O控制器840管理。在设备800上还可以存在附加的按钮或开关,以提供由I/O控制器840管理的I/O功能。
在一个实施例中,I/O控制器840管理诸如加速度计、照相机、光传感器或其他环境传感器、陀螺仪、全球定位系统(GPS)、或可以包括在设备800中的其他硬件的设备。输入可以是直接用户交互的一部分,以及向系统提供环境输入以影响其操作(例如,滤除噪声、调整显示以用于亮度检测、应用照相机的闪光灯、或其他特征)。在一个实施例中,设备800包括对电池电量使用情况、电池充电、以及与节电操作相关的特征进行管理的功率管理850。
存储器子系统860包括用于在设备800中存储信息的(多个)存储器设备862。存储器子系统860可以包括非易失性(如果中断到存储器设备的电源,状态不改变)和/或易失性(如果中断到存储器设备的电源,状态不确定)存储器设备。存储器860可以存储与执行系统800的应用和功能相关的应用数据、用户数据、音乐、照片、文档、或其他数据、以及系统数据(无论是长期的还是临时的)。在一个实施例中,存储器子系统860包括存储器控制器864(其也可以被认为是系统800的控制的一部分,并且可以潜在地被认为是处理器810的一部分)。存储器控制器864包括用于生成并向存储器设备862发布命令的调度器。
连接870包括硬件设备(例如,无线和/或有线连接器和通信硬件)和软件组件(例如,驱动程序、协议栈),以使得设备800能够与外部设备进行通信。外部设备可以是分离的设备(例如,其他计算设备、无线接入点或基站)以及外围设备(例如,耳机、打印机、或其他设备)。
连接870可以包括多种不同类型的连接。概括而言,设备800被示为具有蜂窝连接872和无线连接874。蜂窝连接872一般指由无线载波提供的蜂窝网络连接,例如,经由GSM(全球移动通信系统)或其变体或衍生物、CDMA(码分多址)或其变体或衍生物、TDM(时分复用)或其变体或衍生物、LTE(长期演进,也称为“4G”)、或其他蜂窝服务标准提供的。无线连接874指不是蜂窝的无线连接,并且可以包括个人区域网(例如,蓝牙)、局域网(例如,WiFi)、和/或广域网(例如,WiMax)、或其他无线通信。无线通信指通过使用调制电磁辐射通过非固态介质来传送数据。有线通信通过固态通信介质发生。
外围连接880包括用于进行外围连接的硬件接口和连接器以及软件组件(例如,驱动程序、协议栈)。应当理解,设备800可以是其他计算设备的外围设备(“至”882),以及使外围设备(“从”884)连接到设备800。设备800通常具有连接到其他计算设备的“对接”连接器,以用于管理(例如,下载和/或上传、改变、同步)设备800上的内容的目的。另外,对接连接器可以允许设备800连接到允许设备800对内容输出进行控制的特定外围设备,例如,视听或其他系统。
除了专有对接连接器或其他专有连接硬件之外,设备800可以经由公共或基于标准的连接器来进行外围连接880。公共类型可以包括通用串行总线(USB)连接器(其可以包括多个不同硬件接口中的任一个)、包括MiniDisplayPort(MDP)的DisplayPort、高清晰度多媒体接口(HDMI)、火线、或其他类型。
在一个实施例中,系统800包括突发控制890,其可以是存储器子系统860的存储器862内的逻辑。根据本文描述的任何实施例,突发控制890使得存储器862能够响应于来自存储器控制器864的单个存储器存取命令事务而生成多个内部操作。因此,存储器862可以在内部执行操作以利用存储器控制器864来扩展I/O的突发长度,而不需要存储器控制器发送多个锁存命令。在一个实施例中,突发控制890可以包括内部存储体组计数器,以及用于控制内部操作的序列的逻辑。在一个实施例中,突发控制890对来自诸如模式寄存器的配置寄存器的设置进行存取,以确定针对每个存取事务的突发选择多少个存储体组。
在一方面,一种用于存储器设备存取的方法,包括:从能够单独地寻址的多个独立的存储体组中动态地选择要在突发序列中进行操作的多个存储体组,其中,每个选定的存储体组用于针对从相关联的存储器控制器接收到的命令进行操作;接收来自相关联的存储器控制器的单个存取命令;以及在存储器设备内生成多个内部操作,以使得所有选定的存储体组执行存取命令。
在一个实施例中,选择多个存储体组包括:响应于存储器设备的模式寄存器中的设置而选择多个存储体组。在一个实施例中,选择多个存储体组包括响应于来自存储器控制器的即时命令而选择多个存储体组,即时命令指示期望的突发长度。在一个实施例中,选择多个存储体组包括从多个可编程突发长度中进行选择。在一个实施例中,接收单个存取命令包括:接收单个激活和CAS(列地址选择)序列;并且其中,生成多个内部操作包括将激活和CAS序列应用于所有选定的存储体组。在一个实施例中,激活和CAS序列包括读取命令。在一个实施例中,激活和CAS序列包括写入命令。在一个实施例中,生成多个内部操作还包括通过存储器设备内部的存储体组计数器来监测存储体组操作。在一个实施例中,生成多个内部操作包括按照顺序存储体组地址的次序来执行操作。在一个实施例中,生成多个内部操作包括按照非顺序的次序、以交错的存储体组地址来执行操作。
在一方面,一种存储器子系统中的存储器设备,包括:存储器的多个存储体,其中,存储体能够区别于其他存储体而被单独地寻址;I/O(输入/输出)硬件,其被配置为接收存取命令,存取命令由相关联的存储器控制器生成;以及存储器设备内的控制逻辑,其用于动态地选择要在突发序列中进行操作的多个存储体,并且响应于存取命令而在存储器设备内生成多个内部操作,以使得所有选定的存储体执行存取命令。
在一个实施例中,存储器的多个存储体被组织为独立的存储体组,每个存储体组包括一个或多个存储体,其中,存储体组中的所有存储体一起被寻址。在一个实施例中,还包括模式寄存器,其用于存储对存储器设备的操作进行控制的设置,其中,控制逻辑选择多个存储体包括:读取模式寄存器中的突发模式设置,以及响应于突发模式设置而选择多个存储体。在一个实施例中,控制逻辑用于响应于来自存储器控制器的即时命令而选择多个存储体,即时命令指示期望的突发长度。在一个实施例中,控制逻辑用于基于多个可编程突发长度来选择多个存储体组。在一个实施例中,I/O硬件用于接收单个激活和CAS(列地址选择)序列;并且其中,控制逻辑用于将激活和CAS序列应用于所有选定的存储体。在一个实施例中,激活和CAS序列包括读取命令。在一个实施例中,激活和CAS序列包括写入命令。在一个实施例中,还包括在存储器设备内部的计数器,并且其中,控制逻辑用于通过计数器来监测存储体操作,包括跟踪存储体的操作的排序。在一个实施例中,控制逻辑用于按照顺序存储体组地址的次序来生成多个内部操作。在一个实施例中,控制逻辑用于按照非顺序的次序、以交错的存储体组地址来生成多个内部操作。
在一方面,一种具有存储器子系统的电子设备,包括:存储器控制器;与存储器控制器相接合的存储器设备,存储器设备包括多个存储体组,每个存储体组可单独地寻址;I/O(输入/输出)硬件,其用于接收来自存储器控制器的存取命令;存储器设备内的控制逻辑,其用于动态地选择要在突发序列中进行操作的多个存储体组,并且响应于存取命令而在存储器设备内生成多个内部操作,以使得所有选定的存储体组执行存取命令;以及触摸屏显示器,其被耦合以基于从存储器设备存取的数据来生成交互式显示。电子设备可以包括根据存储器设备的任何实施例的存储器设备。
在一方面,一种制品,包括其上存储有内容的计算机可读存储介质,内容在被存取时使得设备执行用于存储器设备存取的操作,包括:从能够单独地寻址的多个独立的存储体组中动态地选择要在突发序列中进行操作的多个存储体组,其中,每个选定的存储体组用于针对从相关联的存储器控制器接收到的命令进行操作;接收来自相关联的存储器控制器的单个存取命令;以及在存储器设备内生成多个内部操作,以使得所有选定的存储体组执行存取命令。制品可以包括用于执行根据方法的任何实施例的操作的内容。
在一方面,一种用于存储器设备存取的装置,包括:用于从能够单独地寻址的多个独立的存储体组中动态地选择要在突发序列中进行操作的多个存储体组的模块,其中,每个选定的存储体组用于针对从相关联的存储器控制器接收到的命令进行操作;用于接收来自相关联的存储器控制器的单个存取命令的模块;以及用于在存储器设备内生成多个内部操作以使得所有选定的存储体组执行存取命令的模块。装置可以包括用于执行根据方法的任何实施例的操作的模块。
如本文所示的流程图提供了各种过程动作的序列的示例。流程图可以指示要由软件或固件例程执行的操作以及物理操作。在一个实施例中,流程图可以示出可以以硬件和/或软件实现的有限状态机(FSM)的状态。虽然以特定序列或次序示出,但是除非另有说明,否则可以修改动作的次序。因此,所示出的实施例仅应当被理解为是示例,并且可以以不同的次序来执行过程,并且可以并行地执行一些动作。另外,在各种实施例中可以省略一个或多个动作;因此,不是所有的动作在每个实施例中都是必须的。其他过程流程也是可能的。
就本文描述的各种操作或功能而言,其可以被描述或定义为软件代码、指令、配置、和/或数据。内容可以直接是可执行文件(“对象”或“可执行文件”形式)、源代码、或差异代码(“增量”或“补丁”代码)。本文描述的实施例的软件内容可以经由其上存储有内容的制品来提供,或者经由操作通信接口以经由通信接口发送数据的方法来提供。机器可读存储介质可以使得机器执行所描述的功能或操作,并且包括以机器(例如,计算设备、电子系统等)可访问的形式存储信息的任何机制,例如,可记录/不可记录介质(例如,只读存储器(ROM)、随机存取存储器(RAM)、磁盘存储介质、光存储介质、闪速存储器设备等)。通信接口包括与硬连线、无线、光学等介质中的任一种相接合以与另一设备进行通信的任何机制,例如,存储器总线接口、处理器总线接口、互联网连接、磁盘控制器等。可以通过提供配置参数和/或发送信号来配置通信接口,以准备通信接口用于提供描述软件内容的数据信号。可以经由发送到通信接口的一个或多个命令或信号来访问通信接口。
本文描述的各种组件可以是用于执行所描述的操作或功能的模块。本文描述的每个组件包括软件、硬件、或这些的组合。组件可以实现为软件模块、硬件模块、特殊用途的硬件(例如,专用硬件、专用集成电路(ASIC)、数字信号处理器(DSP)等)、嵌入式控制器、硬连线电路等。
除了本文所描述的内容之外,可以在不脱离所公开的本发明的实施例和实现方式范围的情况下对这些实施例和实现方式进行各种修改。因此,本文的说明和示例应当被解释为说明意义的而非限制意义的。本发明的范围应当仅通过参考所附权利要求来测定。
Claims (24)
1.一种用于存储器设备存取的方法,包括:
从能够被单独地寻址的多个独立的存储体组中动态地选择要在突发序列中进行操作的多个存储体组,其中,每个选定的存储体组用于针对从相关联的存储器控制器接收到的命令进行操作;
接收来自所述相关联的存储器控制器的单个存取命令;以及
在存储器设备内生成多个内部操作,以使得所有选定的存储体组执行该存取命令。
2.根据权利要求1所述的方法,其中,选择所述多个存储体组包括:响应于所述存储器设备的模式寄存器中的设置而选择所述多个存储体组。
3.根据权利要求1所述的方法,其中,选择所述多个存储体组包括:响应于来自所述存储器控制器的即时命令而选择所述多个存储体组,所述即时命令指示期望的突发长度。
4.根据权利要求1所述的方法,其中,选择所述多个存储体组包括:从多个可编程突发长度中进行选择。
5.根据权利要求1所述的方法,其中,接收所述单个存取命令包括接收单个激活和CAS(列地址选择)序列;并且其中,生成所述多个内部操作包括将所述激活和CAS序列应用于所有选定的存储体组。
6.根据权利要求5所述的方法,其中,所述激活和CAS序列包括读取命令。
7.根据权利要求5所述的方法,其中,所述激活和CAS序列包括写入命令。
8.根据权利要求1所述的方法,其中,生成所述多个内部操作还包括:通过所述存储器设备内部的存储体组计数器来监测存储体组操作。
9.根据权利要求8所述的方法,其中,生成所述多个内部操作包括:按照顺序存储体组地址的次序来执行操作。
10.根据权利要求8所述的方法,其中,生成所述多个内部操作包括:按照非顺序的次序、以交错的存储体组地址来执行操作。
11.一种存储器子系统中的存储器设备,包括:
存储器的多个存储体,其中,一个存储体能够区别于其他存储体而被单独地寻址;
I/O(输入/输出)硬件,其被配置为接收存取命令,所述存取命令是由相关联的存储器控制器生成的;以及
所述存储器设备内的控制逻辑,其用于动态地选择要在突发序列中进行操作的多个存储体,并且响应于所述存取命令而在所述存储器设备内生成多个内部操作,以使得所有选定的存储体执行所述存取命令。
12.根据权利要求11所述的存储器设备,其中,所述存储器的多个存储体被组织为独立的存储体组,每个存储体组包括一个或多个存储体,其中,一个存储体组中的所有存储体一起被寻址。
13.根据权利要求11所述的存储器设备,还包括模式寄存器,其用于存储对所述存储器设备的操作进行控制的设置,其中,所述控制逻辑选择所述多个存储体包括:读取所述模式寄存器中的突发模式设置,以及响应于所述突发模式设置而选择所述多个存储体。
14.根据权利要求11所述的存储器设备,其中,所述控制逻辑用于响应于来自所述存储器控制器的即时命令而选择所述多个存储体,所述即时命令指示期望的突发长度。
15.根据权利要求11所述的存储器设备,其中,所述控制逻辑用于基于多个可编程突发长度来选择所述多个存储体组。
16.根据权利要求11所述的存储器设备,其中,所述I/O硬件用于接收单个激活和CAS(列地址选择)序列;并且其中,所述控制逻辑用于将所述激活和CAS序列应用于所有选定的存储体。
17.根据权利要求16所述的存储器设备,其中,所述激活和CAS序列包括读取命令。
18.根据权利要求16所述的存储器设备,其中,所述激活和CAS序列包括写入命令。
19.根据权利要求11所述的存储器设备,还包括在所述存储器设备内部的计数器,并且其中,所述控制逻辑用于通过所述计数器来监测存储体操作,包括跟踪所述存储体的操作的排序。
20.根据权利要求19所述的存储器设备,其中,所述控制逻辑用于按照顺序存储体组地址的次序来生成所述多个内部操作。
21.根据权利要求19所述的存储器设备,其中,所述控制逻辑用于按照非顺序的次序、以交错的存储体组地址来生成所述多个内部操作。
22.一种具有存储器子系统的电子设备,包括:
存储器控制器;
存储器设备,其与所述存储器控制器相接合,所述存储器设备是根据权利要求11至21中任一项所述的;以及
触摸屏显示器,其被耦合以基于从所述存储器设备存取的数据来生成交互式显示。
23.一种制品,包括其上存储有内容的计算机可读存储介质,所述内容在被存取时使得设备执行操作,以执行根据权利要求1至10中任一项所述的方法。
24.一种用于存储器设备存取的装置,包括用于执行操作以执行根据权利要求1至10中任一项所述的方法的模块。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/749,605 | 2015-06-24 | ||
US14/749,605 US20160378366A1 (en) | 2015-06-24 | 2015-06-24 | Internal consecutive row access for long burst length |
PCT/US2016/034863 WO2016209556A1 (en) | 2015-06-24 | 2016-05-27 | Internal consecutive row access for long burst length |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107667403A true CN107667403A (zh) | 2018-02-06 |
Family
ID=57586146
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680030494.5A Pending CN107667403A (zh) | 2015-06-24 | 2016-05-27 | 长突发长度的内部连续行存取 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20160378366A1 (zh) |
EP (1) | EP3314446A4 (zh) |
CN (1) | CN107667403A (zh) |
TW (1) | TWI758247B (zh) |
WO (1) | WO2016209556A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111240582A (zh) * | 2018-11-29 | 2020-06-05 | 长鑫存储技术有限公司 | 数据读写方法、读写装置和动态随机存储器 |
CN113270126A (zh) * | 2020-01-30 | 2021-08-17 | 意法半导体国际有限公司 | 流访问存储器设备、系统和方法 |
CN113287098A (zh) * | 2019-03-26 | 2021-08-20 | 拉姆伯斯公司 | 多精度存储器系统 |
CN113454720A (zh) * | 2021-05-21 | 2021-09-28 | 长江先进存储产业创新中心有限责任公司 | 存储设备及其控制方法 |
WO2022193484A1 (zh) * | 2021-03-19 | 2022-09-22 | 长鑫存储技术有限公司 | 数据处理电路及设备 |
CN115702417A (zh) * | 2020-06-12 | 2023-02-14 | 超威半导体公司 | 动态多存储体存储器命令合并 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10025685B2 (en) * | 2015-03-27 | 2018-07-17 | Intel Corporation | Impedance compensation based on detecting sensor data |
KR102336666B1 (ko) * | 2017-09-15 | 2021-12-07 | 삼성전자 주식회사 | 메모리 장치 및 이를 포함하는 메모리 시스템 |
US10380040B2 (en) | 2017-10-24 | 2019-08-13 | International Business Machines Corporation | Memory request scheduling to improve bank group utilization |
KR102412609B1 (ko) * | 2017-11-03 | 2022-06-23 | 삼성전자주식회사 | 내부 커맨드에 따른 어드레스에 대한 저장 및 출력 제어를 수행하는 메모리 장치 및 그 동작방법 |
KR102570454B1 (ko) * | 2018-04-06 | 2023-08-25 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 및 그의 동작 방법 |
US10534565B1 (en) * | 2018-04-11 | 2020-01-14 | Cadence Design Systems, Inc. | Programmable, area-optimized bank group rotation system for memory devices |
US10372330B1 (en) * | 2018-06-28 | 2019-08-06 | Micron Technology, Inc. | Apparatuses and methods for configurable memory array bank architectures |
JP2023150543A (ja) * | 2022-03-31 | 2023-10-16 | ソニーセミコンダクタソリューションズ株式会社 | メモリ制御装置 |
KR20240009812A (ko) * | 2022-07-14 | 2024-01-23 | 삼성전자주식회사 | 프리페치 기능을 지원하는 스토리지 모듈 및 그것의 동작 방법 |
KR20240009813A (ko) * | 2022-07-14 | 2024-01-23 | 삼성전자주식회사 | 단일 직렬 쓰기 인터페이싱 방식을 지원하는 스토리지 모듈 및 그것의 동작 방법 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7043617B2 (en) * | 1994-12-23 | 2006-05-09 | Micron Technology, Inc. | System supporting multiple memory modes including a burst extended data out mode |
US20060129752A1 (en) * | 2000-08-25 | 2006-06-15 | Micron Technology, Inc. | Burst write in a non-volatile memory device |
CN1801799A (zh) * | 2004-12-23 | 2006-07-12 | 因芬尼昂技术股份公司 | 用于数据传输突发长度控制的方法 |
CN102543162A (zh) * | 2004-11-29 | 2012-07-04 | 拉姆伯斯公司 | 微线程存储器 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5617555A (en) * | 1995-11-30 | 1997-04-01 | Alliance Semiconductor Corporation | Burst random access memory employing sequenced banks of local tri-state drivers |
US6438062B1 (en) * | 2000-07-28 | 2002-08-20 | International Business Machines Corporation | Multiple memory bank command for synchronous DRAMs |
US6965980B2 (en) * | 2002-02-14 | 2005-11-15 | Sony Corporation | Multi-sequence burst accessing for SDRAM |
US6922770B2 (en) * | 2003-05-27 | 2005-07-26 | Sony Corporation | Memory controller providing dynamic arbitration of memory commands |
US7082075B2 (en) * | 2004-03-18 | 2006-07-25 | Micron Technology, Inc. | Memory device and method having banks of different sizes |
US7822915B2 (en) * | 2007-06-30 | 2010-10-26 | Alcatel-Lucent Usa Inc. | Memory controller for packet applications |
-
2015
- 2015-06-24 US US14/749,605 patent/US20160378366A1/en not_active Abandoned
-
2016
- 2016-04-21 TW TW105112427A patent/TWI758247B/zh active
- 2016-05-27 EP EP16814998.7A patent/EP3314446A4/en not_active Withdrawn
- 2016-05-27 CN CN201680030494.5A patent/CN107667403A/zh active Pending
- 2016-05-27 WO PCT/US2016/034863 patent/WO2016209556A1/en unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7043617B2 (en) * | 1994-12-23 | 2006-05-09 | Micron Technology, Inc. | System supporting multiple memory modes including a burst extended data out mode |
US20060129752A1 (en) * | 2000-08-25 | 2006-06-15 | Micron Technology, Inc. | Burst write in a non-volatile memory device |
CN102543162A (zh) * | 2004-11-29 | 2012-07-04 | 拉姆伯斯公司 | 微线程存储器 |
CN1801799A (zh) * | 2004-12-23 | 2006-07-12 | 因芬尼昂技术股份公司 | 用于数据传输突发长度控制的方法 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111240582A (zh) * | 2018-11-29 | 2020-06-05 | 长鑫存储技术有限公司 | 数据读写方法、读写装置和动态随机存储器 |
CN111240582B (zh) * | 2018-11-29 | 2022-01-28 | 长鑫存储技术有限公司 | 数据读写方法、读写装置和动态随机存储器 |
CN113287098A (zh) * | 2019-03-26 | 2021-08-20 | 拉姆伯斯公司 | 多精度存储器系统 |
CN113270126A (zh) * | 2020-01-30 | 2021-08-17 | 意法半导体国际有限公司 | 流访问存储器设备、系统和方法 |
CN115702417A (zh) * | 2020-06-12 | 2023-02-14 | 超威半导体公司 | 动态多存储体存储器命令合并 |
WO2022193484A1 (zh) * | 2021-03-19 | 2022-09-22 | 长鑫存储技术有限公司 | 数据处理电路及设备 |
CN113454720A (zh) * | 2021-05-21 | 2021-09-28 | 长江先进存储产业创新中心有限责任公司 | 存储设备及其控制方法 |
WO2022241754A1 (en) * | 2021-05-21 | 2022-11-24 | Yangtze Advanced Memory Industrial Innovation Center Co., Ltd | Memory device and controlling method thereof |
CN113454720B (zh) * | 2021-05-21 | 2024-04-23 | 长江先进存储产业创新中心有限责任公司 | 存储设备及其控制方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2016209556A1 (en) | 2016-12-29 |
EP3314446A4 (en) | 2019-01-02 |
TW201712558A (zh) | 2017-04-01 |
EP3314446A1 (en) | 2018-05-02 |
TWI758247B (zh) | 2022-03-21 |
US20160378366A1 (en) | 2016-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107667403A (zh) | 长突发长度的内部连续行存取 | |
US11024367B2 (en) | Memory with on-die data transfer | |
CN110023914B (zh) | 用于重复写入存储器的可编程数据样式 | |
US10635586B2 (en) | Hybrid memory module with improved inter-memory data transmission path | |
US20190252009A1 (en) | Memory device with flexible internal data write control circuitry | |
CN107258000B (zh) | 用于在存储器设备内执行数据操作的方法和装置 | |
KR102511465B1 (ko) | 뱅크 그룹 아키텍처가 있는 메모리 디바이스에서의 뱅크들 프리차징 및 리프레싱 | |
CN110083555A (zh) | 具有独立接口路径的存储器设备的通用管芯实现 | |
CN109582596B (zh) | 从具有不同读取和写入定时的模式寄存器进行读取 | |
DE112016004314T5 (de) | Programmierbare zeitgebung von chipinterner terminierung in einem mehrrangigen system | |
US11675716B2 (en) | Techniques for command bus training to a memory device | |
CN107533509A (zh) | 存储器设备特定的自刷新进入和退出 | |
CN108292513A (zh) | 灵活dll(延迟锁相环)校准 | |
CN107408099A (zh) | 基于检测传感器数据的阻抗补偿 | |
JP2016527647A (ja) | ハイブリッド・メモリ・モジュール用メモリの入出力を構成するための装置および方法 | |
US20140244922A1 (en) | Multi-purpose register programming via per dram addressability mode | |
US20140237177A1 (en) | Memory module and memory system having the same | |
US20180348838A1 (en) | Techniques to change a mode of operation for a memory device | |
US10431293B1 (en) | Systems and methods for controlling data strobe signals during read operations | |
US9824743B2 (en) | Memory refresh operation with page open | |
US11042315B2 (en) | Dynamically programmable memory test traffic router | |
KR102336666B1 (ko) | 메모리 장치 및 이를 포함하는 메모리 시스템 | |
KR102506790B1 (ko) | 반도체 장치 및 이를 포함하는 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180206 |
|
RJ01 | Rejection of invention patent application after publication |