CN105339916A - 用于具有可变等待时间的存储器操作的设备及方法 - Google Patents
用于具有可变等待时间的存储器操作的设备及方法 Download PDFInfo
- Publication number
- CN105339916A CN105339916A CN201380055960.1A CN201380055960A CN105339916A CN 105339916 A CN105339916 A CN 105339916A CN 201380055960 A CN201380055960 A CN 201380055960A CN 105339916 A CN105339916 A CN 105339916A
- Authority
- CN
- China
- Prior art keywords
- storer
- time
- instruction
- cycle
- write
- 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
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
- G06F9/30047—Prefetch instructions; cache control instructions
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0069—Writing or programming circuits or methods
-
- 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/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/161—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
-
- 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
- G06F13/1689—Synchronisation and timing concerns
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0004—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising amorphous/crystalline phase transition cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/004—Reading or sensing circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0061—Timing circuits or methods
-
- 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/1051—Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
- G11C7/1063—Control signal output circuits, e.g. status or busy flags, feedback command 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/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/22—Control and timing of internal memory operations
- G11C2207/2272—Latency related aspects
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Chemical & Material Sciences (AREA)
- Crystallography & Structural Chemistry (AREA)
- Memory System (AREA)
Abstract
本发明描述用于执行存储器操作的设备及方法。一种实例性设备包含存储器操作控制器。所述存储器操作控制器经配置以接收存储器指令并解码所述存储器指令以提供用于执行所述存储器指令的存储器操作的内部信号。所述存储器操作控制器进一步经配置以在存储器指令的可变等待时间周期期间提供指示所述可变等待时间周期的时间的信息。在一种实例性方法中,在存储器处接收写入指令及写入数据将被写入到的地址,且提供指示所述写入指令的可变等待时间周期的结束的确认。在所述确认之后等待可变总线周转后,接收用于所述写入指令的写入数据。
Description
相关申请案的交叉参考
本申请案主张对2012年10月26提出申请的第61/719,321号美国临时专利申请案的优先权。此申请案以全文引用方式且出于所有目的并入本文中。
技术领域
本发明的实施例大体来说涉及存储器,且包含可与具有相变存储器的存储器一起使用的具有可变等待时间的写入及读取操作的实例。
背景技术
存储器装置可提供于例如计算机或其它电子装置等设备中,所述其它电子装置包含但不限于便携式存储器装置、固态驱动器、个人数字助理、音乐播放器、相机、电话、无线装置、显示器、芯片集、机顶盒、游戏系统、车辆及电器。存在许多不同类型的存储器,包含随机存取存储器(RAM)、只读存储器(ROM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(SDRAM)、快闪存储器及电阻可变存储器以及其它。
例如电阻可变存储器装置等设备可用作用于宽广范围的电子装置的非易失性存储器。举例来说,电阻可变存储器装置可包含相变存储器(PCM)或电阻性存储器(RR)以及其它存储器。PCM装置的物理布局可类似于DRAM装置的物理布局,其中DRAM单元的电容器由相变材料(例如,碲化锗锑(GST)或其它硫属化物)替换。也就是说,例如二极管或金属氧化物半导体场效应晶体管(MOSFET)等存取装置可与相变材料串联连接。硫属化物材料可包含硫化物、硒化物或碲化物以及其它材料的复合物。GST已用于可重写光盘中,例如可重写紧致磁盘(CD-RW)及可重写数字多功能盘(DVD-RW)。
与非易失性存储器一样,PCM可经写入以从第一状态(例如,逻辑“0”)改变为第二状态(例如,逻辑“1”)。PCM还可经写入以从第二状态改变为第一状态。对PCM的常规读取操作也类似于RAM。如此,PCM可用于随机存取存储器中。然而,关于PCM的写入操作比常规RAM的写入操作相对慢。也就是说,可能需要时间来管理及完成写入操作,例如准备待写入到存储器的数据,在出现读取存取请求的情况下暂停写入操作以及监视写入操作的进展。读取操作可比对常规RAM的读取操作慢,且无法对在同时写入操作中所涉及的存储器位置执行读取操作。
由于使用PCM作为RAM替换品的局限性,存储器系统中的PCM的操作在数个方面受到限制。举例来说,可能不能在任何时间对任何存储器位置执行写入及读取操作。可定期地对用于监视写入操作的进展的状态寄存器进行轮询以在开始新的写入操作之前确定写入操作完成。另外,在一些应用中,为进行读取操作,有必要将写入操作暂停,且在所述读取操作完成后即刻恢复所述写入操作。
发明内容
本发明描述用于执行存储器操作的设备及方法。一种实例性设备包含存储器操作控制器。所述存储器操作控制器经配置以接收存储器指令并解码所述存储器指令以提供用于执行所述存储器指令的存储器操作的内部信号。所述存储器操作控制器进一步经配置以在存储器指令的可变等待时间周期期间提供指示所述可变等待时间周期的时间的信息。
另一实例性设备包含耦合到存储器控制器的存储器。所述存储器经配置以从所述存储器控制器接收写入指令并响应于所述写入指令而执行存储器操作。所述存储器进一步经配置以提供指示所述写入指令的可变等待时间周期的结束的确认且在所述确认之后在接收写入数据之前等待可变总线周转时间。
在一种实例性方法中,将存储器指令及地址提供到存储器,且接收指示所述存储器指令的可变等待时间周期的剩余时间的信息。
另一实例性方法包含在存储器处接收写入指令及写入数据将被写入到的地址。提供指示所述写入指令的可变等待时间周期的结束的确认。在所述确认之后等待可变总线周转后,接收用于所述写入指令的写入数据。
附图说明
图1是根据本发明的实施例的设备的框图。
图2A是根据本发明的实施例用于写入操作的各种信号的时序图。图2B是根据本发明的另一实施例用于写入操作的各种信号的时序图。
图3是根据本发明的实施例用于读取操作的各种信号的时序图。
图4A是根据本发明的实施例的等待状态的表。图4B是根据本发明的实施例用于存储器操作的各种信号的时序图。
图5是根据本发明的实施例由确认提供的信息的表。
图6是根据本发明的实施例的读取及写入指令序列,其图解说明实例性操作。
图7是根据本发明的实施例的读取及写入指令序列,其图解说明实例性操作。
图8是根据本发明的实施例的设备的框图。
具体实施方式
以下将陈述某些细节以提供对本发明的实施例的充分理解。然而,所属领域的技术人员将明了,可在没有这些特定细节的情况下实践本发明的实施例。此外,本文中所描述的本发明的特定实施例是以实例方式提供且应不用于将本发明的范围限制于这些特定实施例。在其它情况中,未详细展示众所周知的电路、控制信号、定时协议及软件操作以避免不必要地使本发明模糊。
图1图解说明根据本发明的实施例的设备。所述设备可包括电路、一或多个半导体裸片、封装式半导体、包含此种电路、裸片或封装的装置及/或包含此种装置的系统,且可包含耦合到存储器100的存储器控制器10。存储器控制器10还耦合到系统总线20。存储器控制器10在总线110上为存储器100提供存储器指令及存储器地址。存储器100包含具有用于存储数据的存储器单元的存储器阵列170,且进一步包含经配置以接收存储器指令并控制存储器100的存储器操作的存储器操作控制器140。存储器100中所包含的写入缓冲器150可用于存储写入指令及数据,且寄存器160可用于存储与存储器100的配置及操作相关的值,如下文将更详细地描述。虽然在图1中展示为分开的元件,但存储器操作控制器140、写入缓冲器150及寄存器160可以包含存储器操作控制器140、写入缓冲器150及寄存器160中的一或多者的各种不同布置而组合。举例来说,在一些实施例中,存储器操作控制器140可包含寄存器160。
存储器100响应于存储器指令及地址而执行存储器操作。存储器100在总线120上将各种信息提供到存储器控制器10。如下文将更详细地描述,由存储器100提供的信息可包含与针对存储器指令执行的存储器操作相关的信息、可变等待时间周期的剩余时间、指示可变等待时间周期的结束的确认以及可与存储器100相关的其它信息。可经由总线130与存储器100交换数据,举例来说,针对读取指令由存储器100将读取数据提供到存储器控制器10,且在另一实例中,针对写入指令由存储器控制器10将写入数据提供到存储器100。
可使用由存储器100提供的信息来管理存储器控制器10与存储器100之间的操作。举例来说,可使用确认作为保持繁忙直到存储器操作结束的系统总线20的等待信号。另一实例是使用确认来确定将使系统总线20保持繁忙直到存储器操作完成或还是将中止一操作(举例来说,将存储器100取消选择)以便空出系统总线20(针对用于其它操作的同一主控装置或针对其它主控装置/外围装置,例如帧缓冲器等)且在稍后时间重试。还可提供与可变等待时间周期的剩余时间相关的信息以辅助确定将使系统总线20保持繁忙还是中止操作且在稍后时间重试。
在操作中,由存储器100例如从存储器控制器10接收存储器指令及存储器地址,且执行存储器操作。在接收到存储器指令及存储器地址之后是可变等待时间周期tLAT。等待时间周期的结束由存储器100所提供的确认ACKNOWLEDGE指示,此后可与存储器交换数据(例如,在ACKNOWLEDGE之后将数据提供到存储器控制器10,在ACKNOWLEDGE之后从存储器控制器10接收数据,或在ACKNOWLEDGE之后既提供/又接收数据)。在tLAT周期期间,存储器100可管理存储器操作。举例来说,在tLAT周期期间,存储器可使自身为存储器操作而做准备(例如,例如使存储器电路为执行存储器操作而做准备)、完成进展中的存储器操作、暂停进展中的操作以开始执行存储器操作,或管理其它存储器操作。存储器100还可在tLAT周期期间(举例来说,在执行所接收的存储器指令的存储器操作之前)完成进展中的操作。如此,tLAT周期可在从相对短到相对长的一时间范围内变化,其中ACKNOWLEDGE指示tLAT周期的结束。还可使用ACKNOWLEDGE来告知主机:tLAT周期是正在进行还是已结束。在一些实施例中,存储器100可在tLAT周期期间提供与tLAT周期的时间相关的信息。在一实例中,存储器100提供与tLAT周期的时间相关的信息,且可进一步提供与tLAT周期的时间相关的经更新信息。所述经更新信息可反映tLAT周期可能还有多长时间。
在一些实施例中,存储器中的存储器操作控制器(例如,存储器100的存储器操作控制器140)可解码存储器指令且提供内部信号来管理所得存储器操作以允许将数据写入到存储器的存储器阵列(例如,存储器100的存储器阵列170)且允许从所述存储器阵列读取数据,而不会有与常规相变存储器(PCM)相同的时序局限性。举例来说,在一些实施例中,即使存储器阵列中的位置当前涉及了写入操作,也可从所述位置读取数据。在一些实施例中,内部存储器操作(例如,写入及读取操作)的暂停及恢复与常规PCM相比可较不受约束,且因此提供存储器的较大操作灵活性。举例来说,可能不必为了支持读取操作而将写入操作暂停,且可根据较灵活时序条件而恢复经暂停写入操作。
总之,在tLAT周期期间,存储器正为操作做准备或将完成操作。举例来说,在此时间期间,存储器确定先前操作是否正在进展中;如果否,那么可在相对短的tLAT周期之后立即执行当前操作。如果先前操作已在进展中,那么存储器将决定如何管理当前操作及先前操作。可能暂停先前操作以允许执行当前操作。在此情况中,tLAT周期可为相对短的。然而,如果存储器决定在执行当前操作之前完成先前操作,那么LAT周期可为相对长的。
本发明的实施例可与各种存储器接口一起使用。举例来说,一些实施例可与串行存储器接口一起使用。本发明的一些实施例也可与存储器映射接口(包含LPDDR2-N、NOR以及其它存储器接口)一起使用。
存储器指令的实例为写入指令及读取指令。写入指令致使由存储器100执行写入操作,其中由存储器接收的写入数据被写入到对应于存储器地址的存储器位置。读取指令致使由存储器100执行读取操作,其中由存储器从对应于存储器地址的存储器位置提供读取数据。
根据本发明的实施例,写入指令由存储器接收以执行写入操作。一般来说,在此类实施例中,写入指令及存储器地址由存储器接收,且在接收到指令及地址之后是可变等待时间周期。等待时间周期的结束由存储器所提供的确认ACKNOWLEDGE指示,此后可由存储器接收写入指令的写入数据。如下文将更详细地描述,在一些实施例中,举例来说,可通过编程包含最大tLAT的值的寄存器来界定tLAT周期的最大时间。图2A图解说明根据本发明的实施例的写入操作的时序。
在时间T0之前,存储器选择信号S/(低态有效)及模式信号MODE变为有效的,从而致使存储器变为作用的。在时间T0与T1之间,由存储器在所述存储器的输入/输出DQ0-DQ3上接收写入指令。在时间T1与T2之间,接收对应于写入指令的位置的地址。在时间T2之后是等待时间周期tLAT。tLAT周期可为可变的,其中tLAT周期的结束由存储器所提供的确认ACKNOWLEDGE指示。在时间T2与T3之间是总线周转周期以允许DQ0-DQ3在需要的情况下改变信息交换的方向。在总线周转时间期间,DQ0-DQ3可处于高阻抗“Hi-Z”状态,如图2A中所展示。如先前所论述,存储器提供ACKNOWLEDGE以指示tLAT周期的结束。存储器可使用DQ0-DQ3中的一或多者来提供ACKNOWLEDGE。在图2A的实施例中,存储器针对ACKNOWLEDGE使用DQ1。在时间T3之后,存储器在DQ1上提供逻辑“0”,且DQ0、DQ2及DQ3可为任何逻辑状态(即,“无关态”)。
在时间T4,存储器提供ACKNOWLEDGE。ACKNOWLEDGE在图2A中表示为存储器将DQ1的逻辑状态从逻辑“0”改变为逻辑“1”。ACKNOWLEDGE可由存储器在一时间周期(例如,若干个时钟循环)内提供,此后可由存储器接收写入数据。在图2A中,举例来说,由存储器在从时间T4到时间T5的两个时钟循环内在DQ1上提供ACKNOWLEDGE。虽然在图2A中图解说明为在DQ1上从“0”到“1”的逻辑状态改变,但可在另一DQ或一个以上DQ上提供ACKNOWLEDGE。可通过除从“0”改变为“1”以外的方式(举例来说,从“1”改变为“0”、Hi-Z到逻辑状态或其它表示)来表示ACKNOWLEDGE。另外,ACKNOWLEDGE可由存储器在比图2A中所具体图解说明的时间短或长的时间内提供。在时间T4与T5之间的ACKNOWLEDGE之后可为总线周转时间tBT。可提供tBT以便避免在存储器提供ACKNOWLEDGE与接收写入数据之间的总线争用。由存储器在tBT之后的时间T6接收写入数据。
所述tBT可为相对于ACKNOWLEDGE测量的特定数目个时钟循环tCK。在图2A的实例中,将tBT展示为从ACKNOWLEDGE之后的第一上升边缘测量的1tCK。在一些实施例中,举例来说,可通过编程包含tBT设定的寄存器来编程tBT。tBT可编程为各种可配置时间或可变时间。当tBT被编程为可配置时间时,可选择数个时钟循环选项中的一者,例如相对于ACKNOWLEDGE所测量的1tCK、2tCK或3tCK的tBT。在其中tBT被编程为1tCK的可配置时间的实例中,图2A还图解说明所得tBT。对于2tCK的可配置tBT,T5与T6之间的时间将加长一个时钟循环,且对于3tCK的可配置tBT,T5与T6之间的时间将加长两个时钟循环。
可变tBT实现由存储器在相对于ACKNOWLEDGE的可变时间接收写入数据。图2B图解说明根据本发明的实施例具有可变tBT的写入操作的时序。与图2A一样,存储器选择信号S/及模式信号MODE在时间T0之前为有效的。在时间T0,由存储器接收写入指令,且在时间T1接收地址。在T2之后是tLAT周期,如先前所论述,其可为可变的且具有由ACKNOWLEDGE指示的结束。在时间T2与T3之间针对DQ1-DQ3将总线周转周期展示为Hi-Z状态。存储器在DQ0上接收逻辑“0”。DQ0用于指示可变tBT的结束,如下文将更详细地描述。在时间T3,存储器在DQ1上提供用于提供指示tLAT周期的结束的ACKNOWLEDGE的逻辑“0”,且DQ2及DQ3为无关态。由存储器在时间T4与T5之间在DQ1上提供ACKNOWLEDGE,如通过将逻辑状态从“0”改变为“1”所表示。在ACKNOWLEDGE之后是可变tBT。
在图2B中,存储器可使用输入/输出DQ0来接收指示可变tBT的结束的tBT结束指示符(BT)。在图2B的实施例中,tBT结束指示符由存储器在时间T6在DQ0上接收且在由存储器在T7接收的写入数据之前。DQ1-DQ3为无关态。tBT结束指示符将通知存储器:可变tBT结束,且写入数据将紧随其后。以此方式,tBT的长度可由主机确定(其中结束由BT指示),而非具有可配置tBT(例如,1tCK、2tCK、3tCK等)且不针对tBT结束指示符使用单独专用信号线。在其它实施例中,可在不同DQ上或在一个以上DQ上提供tBT结束指示符。另外,tBT结束指示符可比图2B中所展示的tBT结束指示符长或短。
如先前所描述,在tLAT周期期间,存储器可管理存储器操作。举例来说,在tLAT周期期间,存储器可使自身为写入操作而做准备,例如使存储器电路为执行写入操作而做准备,暂停进展中的操作以开始执行写入操作或管理其它存储器操作。存储器还可在tLAT周期期间(举例来说,在执行写入指令的写入操作之前)完成进展中的操作。tLAT周期可在一时间范围内变化。在一些实施例中,可在从相对短到相对长的范围内表征tLAT周期的时间,其中ACKNOWLEDGE指示tLAT周期的结束。
应了解,本发明并不限于参考图2A及2B所描述的特定实施例。举例来说,在本发明的实施例中,写入指令是8个位(1个字节),且地址是在多个时钟循环内接收的24个位(3个字节)。然而,也可使用不同长度的指令及地址,且所述指令及地址是在与图2A及2B中所图解说明的时钟循环数目不同的数目个时钟循环内接收的。另外,指令及地址由存储器接收的次序可为不同的,此并不背离本发明的范围。图2A及2B图解说明其中针对指令、地址及数据共享输入/输出DQ0-DQ3的实施例。然而,在一些实施例中,可在专用输入上接收存储器指令,且地址与数据共享另一输入/输出。在一些实施例中,可在共享输入上接收存储器指令及地址,且在专用输入/输出上接收/提供数据。在图2A及2B中将ACKNOWLEDGE展示为在两个时钟循环内提供,但在其它实施例中,可在不同数目个时钟循环内提供ACKNOWLEDGE。可接收写入数据的时间可跟在ACKNOWLEDGE后的特定数目个时钟循环之后,或在一些实施例中,可在继ACKNOWLEDGE之后的时间(举例来说,如先前所论述,在可配置或可变总线周转时间之后)接收写入数据。
在一些实施例中,缓冲器可包含于存储器(例如,图1的存储器100)中且用于存储写入数据及对应写入指令,直到积累了特定数目个写入指令/数据为止,此时,执行经缓冲写入指令的写入操作。因此,数个写入指令可具有相对短的tLAT周期(经缓冲的写入指令),之后是具有比所述相对短的tLAT周期长的tLAT周期的写入指令。在较长的tLAT周期期间执行经缓冲写入指令的写入操作。缓冲器可为可存取的,使得如果经缓冲写入数据将被读取,那么经缓冲写入数据对于读取操作为可存取的,以便保持经高速缓存数据一致性。
根据本发明的实施例,由存储器接收读取指令以执行读取操作。一般来说,在此类实施例中,读取指令及存储器地址由存储器接收,且在接收到指令及地址之后是可变等待时间周期。等待时间周期的结束由存储器所提供的确认ACKNOWLEDGE指示,此后由存储器提供用于读取指令的读取数据。如下文将更详细地描述,在一些实施例中,举例来说,可通过编程包含最大tLAT的值的寄存器来界定tLAT周期的最大时间。图3图解说明根据本发明的实施例的读取操作的时序。
在时间T0之前,存储器选择信号S/(低态有效)及模式信号MODE为有效的,从而致使存储器变为作用的。在时间T0与T1之间,由存储器接收读取指令。在时间T1与T2之间,接收对应于读取指令的位置的地址。在时间T2之后是等待时间周期tLAT。tLAT周期可为可变的,其中tLAT周期的结束由存储器所提供的确认ACKNOWLEDGE指示,此后可由存储器提供读取数据。在时间T2与T3之间针对DQ0-DQ3将总线周转周期展示为Hi-Z状态。在时间T3,存储器在DQ1上提供用于提供指示tLAT周期的结束的ACKNOWLEDGE的逻辑“0”,且DQ0、DQ2及DQ3为无关态。由存储器在时间T4与T5之间在DQ1上提供ACKNOWLEDGE,如通过将逻辑状态从“0”改变为“1”所表示。由存储器在时间T5提供读取数据。
如先前所描述,在tLAT周期期间,存储器可管理存储器操作。举例来说,在tLAT周期期间,存储器可使自身为读取操作而做准备,例如使存储器电路为执行读取操作而做准备,暂停进展中的操作以开始执行读取操作或管理其它存储器操作。存储器还可在tLAT周期期间(举例来说,在执行读取指令的读取操作之前)完成进展中的操作。tLAT周期可在一时间范围内变化,其中ACKNOWLEDGE指示tLAT周期的结束。
应了解,本发明并不限于参考图3所描述的特定实施例。举例来说,在本发明的实施例中,读取指令是8个位(1个字节),且地址是在多个时钟循环内接收的24个位(3个字节)。然而,也可使用不同长度的指令及地址,且所述指令及地址是在与图3中所图解说明的时钟循环数目不同的数目个时钟循环内接收的。另外,指令及地址由存储器接收的次序可为不同的,此并不背离本发明的范围。图3图解说明其中针对指令、地址及数据共享输入/输出DQ0-DQ3的实施例。然而,在一些实施例中,可在专用输入上接收存储器指令,且地址与数据共享另一输入/输出。在一些实施例中,可在共享输入上接收存储器指令及地址,且在专用输入/输出上接收/提供数据。在图3中将ACKNOWLEDGE展示为在两个时钟循环内提供,但在其它实施例中,可在不同数目个时钟循环内提供ACKNOWLEDGE。
如先前所描述,在tLAT周期期间,存储器可管理存储器操作。tLAT周期的时间可受存储器管理存储器操作的方式影响。如先前所描述,由存储器提供ACKNOWLEDGE以指示tLAT周期的结束,此后将交换数据(例如,针对写入操作将写入数据提供到存储器,且针对读取操作由存储器提供读取数据)。在参考图2A、2B及3所图解说明的实施例中,tLAT周期的结束与ACKNOWLEDGE的开始重合。在其它实施例中,tLAT周期的结束可包含ACKNOWLEDGE,且与ACKNOWLEDGE重合地结束,或在ACKNOWLEDGE之后延长数个时钟循环但在与存储器交换数据之前结束。
在一些实施例中,可使用ACKNOWLEDGE来告知主机:tLAT周期正在进行或已结束。举例来说,如先前所描述,存储器可在DQ上提供具有指示tLAT周期正在进行还是已结束的逻辑状态的信号,从而在tLAT周期结束的时间从一个逻辑状态改变为另一逻辑状态(例如,作为指示tLAT周期的结束的ACKNOWLEDGE的部分)。当tLAT周期为正在进行时,其它DQ上的信号可为无关态,及/或至少一个DQ被用于从主机接收信号。
在一些实施例中,可由存储器在tLAT周期期间提供例如与存储器指令的操作相关的信息。如先前所论述,存储器可提供与tLAT周期的时间相关的信息,且可在tLAT周期期间进一步提供与tLAT周期的剩余时间相关的经更新信息。可提供的实例性信息包含与tLAT可能还有多长时间相关的等待状态。所述信息可由一或多个信号表示,其中所述信号的逻辑状态的组合指示在tLAT期间传达的信息。举例来说,第一信号(例如,第一DQ信号)可具有指示tLAT周期正在进行还是已结束的逻辑状态,从而在tLAT周期结束的时间从一个逻辑状态改变为另一逻辑状态(例如,作为指示tLAT周期的结束的ACKNOWLEDGE的部分)。当tLAT周期正在进行时,第二及第三信号(例如,第二及第三DQ信号)可具有指示等待状态的逻辑状态组合。
图4A图解说明由存储器在输入/输出DQ2及DQ3上提供的等待状态的表。所述等待状态中的每一者由在DQ2-DQ3上提供的相应逻辑组合指示。举例来说,“正常”等待状态由在DQ2-DQ3上提供的“10”组合提供,且“短”及“长”等待状态是分别通过在DQ2-DQ3上提供“00”及“01”组合指示。在一些实施例中,如先前所论述,存储器可使用DQ1来提供指示tLAT周期正在进行(例如,DQ1=“0”)还是结束(例如,DQ1=“1”)的ACKNOWLEDGE。逻辑“0”可由存储器在tLAT周期期间在DQ1上提供,其中存储器在DQ1上提供逻辑“1”以指示tLAT周期的结束。可包含DQ1上的逻辑状态改变来作为指示tLAT周期的结束的ACKNOWLEDGE的部分。
短、正常及长的等待状态为相对的,且在一些实施例中,可基于时间的度量。举例来说,可使用时间增量作为正常等待状态及长等待状态的度量。实例性时间增量可为20us。也就是说,当tLAT周期的剩余时间大于时间增量(例如,大于20us)时,由存储器在DQ2及DQ3上提供“01”组合以指示等待状态为长的。当tLAT周期的剩余时间小于时间增量(例如,小于20us)时,由存储器在DQ2及DQ3上提供“10”组合以指示等待状态为正常的。当tLAT周期的剩余时间小于比用作正常等待状态及长等待状态的度量的时间增量短的另一时间增量时,存储器可在DQ2及DQ3上提供指示短等待状态的“00”组合。举例来说,当tLAT周期的剩余时间小于1us时,可提供短等待状态。可使用除先前所描述的时间增量之外的时间增量,此并不背离本发明的范围。此外,可在tLAT周期期间以及使用用以指示额外或替代等待状态或其它信息的其它逻辑状态组合来传达所述等待状态或其它信息。
图4B图解说明根据本发明的实施例的存储器操作的一部分的时序,其中所述存储器提供与tLAT周期的剩余时间相关的信息。到时间T0,存储器已接收到用于存储器操作的存储器指令(图4B中未展示),且在时间T0与T1之间接收与所述存储器指令相关联的地址。在时间T1与T2之间是总线周转时间以避免在存储器接收地址与提供和tLAT周期的剩余时间相关的信息之间的总线争用。在图4B中将在地址之后的总线周转时间展示为两个tCK长,然而,总线周转时间也可为其它时间,而无论长度为可配置还是可变的。在图4B的实施例中,由存储器使用DQ2及Q3提供与tLAT周期的剩余时间相关的信息。举例来说,由存储器在DQ2及DQ3上提供的逻辑状态组合指示tLAT周期的剩余时间是“长”、“正常”还是“短”的。由存储器提供的信息可在tLAT周期内更新,其中DQ2及DQ3的逻辑状态由存储器相应地更新。
可在tLAT周期期间使用DQ0及DQ1的逻辑状态来进行除提供与tLAT周期的剩余时间相关的信息之外的操作。在图4B中将DQ0及DQ1展示为被驱动到“0”逻辑状态。然而,DQ0及DQ1可为其它逻辑状态,此并不背离本发明的范围。如先前所论述,可由存储器在tLAT周期期间使用DQ0来接收tBT结束指示符BT(针对可变tBT),且可由存储器使用DQ1来通过将逻辑状态从逻辑“0”改变为逻辑“1”(未展示)而提供ACKNOWLEDGE。在其它实施例中,存储器不在DQ0及DQ1中的任一者或两者上提供任何信息,及/或提供除图4B中所具体图解说明的逻辑状态之外的逻辑状态。
如先前所论述,ACKNOWLEDGE指示tLAT周期的结束,且在本发明的一些实施例中也可包含信息。举例来说,ACKNOWLEDGE也可包含与存储器指令是被接受还是被拒绝相关的信息。如果被接受,那么将执行所接受存储器指令的存储器操作。与对存储器指令的接受相关的信息可包含进一步限定条件,例如所述指令已被接受但在先前指令的操作期间存在错误,或所述操作已被接受但由于内部管理操作(例如,磨损均衡、刷新等)的需要而存在报警。相比来说,如果被拒绝,那么将不执行所拒绝存储器指令的存储器操作。举例来说,可由于存储器中的错误条件或出于阻止存储器执行存储器操作的其它原因而拒绝存储器指令。
ACKNOWLEDGE可由一或多个信号表示,其中所述信号的逻辑状态组合指示由ACKNOWLEDGE传达的信息。举例来说,第一信号(例如,第一数据信号)可改变逻辑状态以表示tLAT周期的结束,且在第一信号已改变逻辑状态时第二与第三信号(例如,第二与第三数据信号)的逻辑状态组合可指示额外信息,例如对存储器指令的接受或拒绝。
图5图解说明根据本发明的实施例由ACKNOWLEDGE提供的信息的表。在所述实施例中使用DQ1、DQ2及DQ3,且由存储器在DQ1-DQ3上提供的逻辑状态组合指示ACKNOWLEDGE信息。如所展示,ACKNOWLEDGE可指示tLAT周期的结束且可进一步包含与指令被接受、被有限定条件地接受还是由于错误而被拒绝相关的信息。
可在ACKNOWLEDGE中以及使用用以指示额外或替代信息的其它逻辑状态组合来包含所述信息,此并不背离本发明的范围。
可变等待时间周期的时间可基于各种因素。举例来说,可变等待时间周期的时间可至少部分地基于当前存储器操作。可变等待时间周期的时间可进一步至少部分地基于所接收到的存储器指令。举例来说,在当接收到存储器指令时存储器为闲置的情况下,存储器可尽快地执行存储器操作,从而导致相对短的tLAT周期。举例来说,在存储器闲置时接收到读取指令或写入指令导致存储器准备好执行存储器操作且在相对短的时间内开始操作,因此tLAT周期可为相对短的,且可在分别接收到读取或写入指令之后相对不久,由存储器提供读取数据或将写入数据提供到存储器。
相比来说,如果在接收到存储器指令的时间存储器操作正在进展中,那么存储器可在完成进展中的操作之后才开始执行所接收存储器指令的存储器操作。因此,tLAT周期可比相对短的tLAT周期长,且可由于完成进展中的操作所需要的时间而为相对长的tLAT周期。举例来说,当由存储器接收到读取指令时,写入操作可能正在进展中。存储器可在完成写入操作之后才开始读取指令的操作,因此,读取指令的tLAT周期可比相对短的tLAT周期长。在正执行一个以上写入指令(例如,执行经缓冲写入指令)的情况下,读取指令的tLAT周期可为相对长的。
在一些实施例中,存储器可暂停进展中的操作以开始执行所接收存储器指令的操作。可在不必等待被暂停的操作完成的情况下完成所接收存储器指令的存储器操作。因此,所接收存储器指令的tLAT周期比相对短的tLAT周期短,且可为相对短的tLAT周期。当所接收指令的操作完成时,存储器可恢复执行经暂停操作。举例来说,当由存储器接收到读取指令时,写入指令的操作可能正在进展中。存储器可暂停写入指令的操作且开始执行所接收读取指令的操作。由于并非在等待写入指令的操作完成之后才开始读取指令的操作,因此读取指令的tLAT将为相对长的tLAT周期。
如果在执行所接收存储器指令期间接收到额外存储器指令或在一些实施例中,如果在释抑周期tHOLDOFF内接收到额外存储器指令,那么存储器可继续暂停曾正在进展中的操作。在一些实施例中,从完成额外存储器指令时起测量tHOLDOFF周期。在一些实施例中,举例来说,tHOLDOFF周期是从接收到额外存储器指令或与额外存储器指令相关的不同事件时起测量的。在tHOLDOFF周期内接收到存储器指令会在完成存储器操作时重新开始tHOLDOFF周期,使得在新tHOLDOFF周期中接收到的其它存储器指令将继续引起经暂停操作的暂停。所述tHOLDOFF周期允许在不过早地恢复经暂停操作的情况下执行在tHOLDOFF周期内接收的额外存储器指令,因此所述额外存储器指令可具有可为相对短tLAT周期的tLAT周期。还可使用tHOLDOFF周期来使存储器内的后台操作(例如磨损均衡、合并存储器中的经分段数据块、执行装置评估及调整以及其它后台操作)的开始延迟。也就是说,直到tHOLDOFF周期结束之后才开始后台操作以便避免任何额外存储器指令的相对长的tLAT周期。
举例来说,如同在先前实例中,暂停进展中的写入操作以开始执行读取指令的操作。tHOLDOFF周期(即,第一tHOLDOFF周期)可在读取指令的完成之后开始,在此期间接收到额外读取指令。因此,经暂停写入操作保持被暂停且所述额外读取指令的读取操作开始。由于写入操作继续被暂停,因此额外读取指令的tLAT周期可为相对短的tLAT周期。在完成所述额外读取指令后,另一tHOLDOFF周期(即,第二tHOLDOFF周期)即刻开始,在此期间,接收到其它额外读取指令将致使写入操作被进一步暂停。所述其它额外读取指令也可具有可为相对短tLAT周期的tLAT周期。然而,在于第二tHOLDOFF周期期间未接收到其它读取指令的情况下,可恢复并完成经暂停写入操作。
在一些实施例中,接收到一或若干特定类型的存储器指令将导致恢复经暂停存储器操作。举例来说,再次假定在接收到读取指令后即刻暂停写入操作。指令的读取操作开始且完成,此时tHOLDOFF周期开始。如先前所描述,在tHOLDOFF周期期间接收到读取指令可致使经暂停写入操作保持被暂停。然而,如果在tHOLDOFF周期期间接收到写入指令,那么此类型的存储器指令可致使经暂停写入操作立即恢复以被完成。新写入指令的写入操作可在先前经暂停的写入操作的完成之后执行,或在一些实施例中,例如由于在接收到新写入指令之后但在完成经恢复的写入操作之前接收到读取指令而被排队以稍后执行。
虽然先前在经暂停存储器操作的情景中进行描述,但tHOLDOFF周期甚至在不存在任何经暂停存储器操作时也为可用的。也就是说,tHOLDOFF周期可跟在存储器操作之后,举例来说,读取指令的存储器操作,在此时间期间,未起始其它存储器操作。假定无其它存储器操作正在进展中,则在tHOLDOFF周期期间接收的指令的存储器操作可因此具有相对短的tLAT。在一些实施例中,在tHOLDOFF周期期间接收到写入指令可迫使tHOLDOFF周期立即期满且不重新开始。tHOLDOFF周期可与经暂停操作一起使用或在无其它存储器操作正待处理时使用以允许存储器保持准备好执行在tHOLDOFF周期期间接收的指令的存储器操作,从而导致相对短的tLAT周期。
在本发明的一些实施例中,tLAT的最大时间及tHOLDOFF周期的时间可为可编程的。举例来说,可在存储器中包含寄存器(例如,图1的寄存器160),所述寄存器用于存储指示最大tLAT的值且存储指示tHOLDOFF周期的时间的值。tLAT的最大时间可设定存储器操作的最大tLAT时间且可由存储器用来(例如)确定将暂停进展中的当前存储器操作还是允许在完成当前存储器操作之后才转到所述存储器操作。在一些实施例中,可针对读取及写入操作设定单独的最大tLAT。在一些实施例中,最大tLAT值及/或tHOLDOFF周期可由主机编程且可基于(例如)促进伪代码的高效执行。在一些实施例中,为tLAT编程的值可识别数个预定义最大值中的一者。在一些实施例中,可将指示可在tLAT周期期间执行的最大操作数目的值存储于寄存器中,从而确立最大tLAT周期。
图6图解说明根据一实施例的读取及写入指令序列以图解说明存储器的实例性操作。
在时间T0,由存储器接收写入指令604及地址606。假定存储器在时间T0之前为闲置的,则写入指令604的写入操作将具有相对短的tLAT608。举例来说,如先前所描述,可使用缓冲器来存储指令、地址及写入数据以提供相对短的tLAT周期。因此,可在于时间T0接收到写入指令604之后相对不久的时间T1接收用于写入指令604的写入数据612。在于时间T1接收到写入数据612之后,针对所述写入操作执行内部存储器操作。如图6的实例中所图解说明,在时间T2,由存储器接收读取指令616及地址618。假定将在时间T0的写入指令604的写入操作被完成或暂停之后才执行读取指令616的读取操作,则所述读取操作将具有相对长的tLAT620。在tLAT620之后,在时间T3,使得用于读取指令616的读取数据624可供存储器获得。tHOLDOFF周期626在提供读取数据624之后的时间T4开始。时间T4可表示读取指令616的读取操作的完成。在时间T5,由存储器接收读取指令628及地址630。如图6中所图解说明,读取指令628是在tHOLDOFF周期626内接收的。因此,读取指令628的读取操作可立即开始且将具有相对短的tLAT632。由存储器在tLAT632之后的时间T6且一直到时间T7提供读取数据636,时间T7表示读取指令628的读取操作的结束。
相比之下,tLAT632比tLAT620短。如先前所描述,tLAT620可能是由于等待写入指令604的写入操作被完成或暂停之后才执行读取指令616的读取操作而产生的。相比来说,读取指令628的读取操作的tLAT632为较短的,因为存储器在等待tHOLDOFF周期626之后才转到其它存储器操作。如此,存储器能够在tHOLDOFF周期626内于时间T5接收到读取指令628时就开始执行读取指令628的读取操作。虽然图6中未展示,但如果读取指令是在tHOLDOFF周期内接收的,那么随后接收的读取操作的读取操作也将具有相对短的tLAT。
如图6所图解说明,在完成或暂停首先接收的写入指令的写入操作之后才起始在时间T2接收的读取指令616的读取操作。因此,读取指令616的tLAT将为相对长的以允许写入操作完成或被暂停。然而,在时间T5接收的读取指令628的读取操作由于是在tHOLDOFF周期626内接收到所述读取指令而具有相对短的tLAT。如先前所论述,在tHOLDOFF周期626期间接收的指令的存储器操作可因为存储器在tHOLDOFF周期内保持闲置而具有相对短的tLAT,此后其可恢复经暂停存储器操作。因此,在tHOLDOFF周期626期间接收的指令的操作可在不等待另一存储器操作完成或被暂停的情况下执行且因此具有相对短的tLAT。
图7图解说明根据一实施例的读取及写入指令序列以图解说明存储器的实例性操作。
在时间T0,由存储器接收写入指令704及地址706。假定存储器在时间T0之前为闲置的,则写入指令704的写入操作将具有相对短的tLAT708。因此,可在于时间T0接收到写入指令704之后相对不久的时间T1接收用于写入指令704的写入数据712。在于时间T1接收到写入数据712之后,发生内部存储器操作以执行写入操作。所述内部存储器操作可包含将写入数据712写入到写入数据缓冲器,写入数据712可在被写入到存储器之前存储于所述写入数据缓冲器中。如先前所论述,写入数据缓冲器的使用可允许相对快速地完成写入操作,因为将写入数据写入到所述写入数据缓冲器可比将写入数据写入到存储器花费更少的时间。然而,在稍后时间,在写入数据缓冲器中积累的写入数据将被写入到存储器,这可花费相对长的时间且可导致随后接收的指令的存储器操作具有相对长的tLAT。然而,在图7的实例中,将tLAT708图解说明为相对短的。
如在图7的实例中所图解说明,在时间T2,由存储器接收读取指令716及地址718。图7中图解说明读取指令716的读取操作具有相对短的tLAT720。假定到时间T2可完成写入指令704的写入操作,则tLAT720可为相对短的。在tLAT720之后,从时间T3到T4,使得读取指令716的读取数据724可供存储器获得。tHOLDOFF周期726在完成读取操作之后的时间T4开始。如先前所论述,在tHOLDOFF周期期间,存储器不起始或恢复任何存储器操作。
在时间T5,由存储器接收写入指令728及地址730。在读取指令716的读取操作到时间T4完成且tHOLDOFF周期726仍在流逝的情况下,写入指令728的写入操作可通过迫使tHOLDOFF周期期满且在相对短的tLAT732内立即开始。此后,可由存储器在时间T6接收写入数据736。在时间T7,完成对写入数据736的接收。在图7的实例中,虽然tLAT732为相对短的,但写入指令728的写入操作可开始内部存储器操作以将在写入数据缓冲器中积累的写入数据写入到存储器阵列。举例来说,在一些实施例中,在tHOLDOFF周期期间接收的写入指令可致使写入操作开始,或在先前存储器操作已被暂停的情况下致使经暂停操作恢复。因此,随后接收的存储器指令的写入操作可具有比相对短tLAT732长的tLAT。举例来说,在时间T8,由存储器接收写入指令740及地址742。虽然接收用于写入指令728的写入数据是到在时间T8接收到写入指令740时完成的,但图7中将写入指令740的写入操作图解说明为具有比相对短tLAT732长的tLAT744。较长的tLAT744可能是由于针对先前写入指令(例如,写入指令704及728)执行内部存储器操作而产生的。也就是说,如先前所论述,写入指令704及728的写入操作可具有相对短的tLAT708及732,但写入指令728的写入操作可包含将经缓冲写入数据写入到存储器阵列。写入指令728的写入操作可能到时间T8在存储器接收到写入指令740时才完成,从而引起较长的tLAT744。在所述较长tLAT744之后,由存储器在时间T9与T10之间接收用于写入指令740的写入数据。
如图7所图解说明,首先接收的写入指令704的写入操作具有短tLAT708。所述写入操作也是在相对短的时间内完成的,举例来说,通过在接收于时间T2接收的读取指令716之前使用写入数据缓冲器。因此,读取指令716的tLAT720将为相对短的。在时间T5接收的写入指令728的写入操作也具有相对短的tLAT732。相对短的tLAT可能是由于以下事实所致:不存在需要恢复及完成的经暂停操作,举例来说,相对短的tLAT732可能至少部分地由于使用写入数据缓冲器来存储写入数据而非存储到存储器阵列(这通常花费比写入到写入数据缓冲器更多的时间)所致。举例来说,短tLAT732可能是由于在tHOLDOFF周期726内在于时间T4完成读取指令716的读取操作之后接收到写入指令728所致。相比来说,在时间T8接收的写入指令740的写入操作具有比tLAT732长的tLAT744。如先前所论述,较长tLAT744可能是由于(例如)在于时间T9与T10之间接收写入数据748之前执行将存储于写入数据缓冲器中的写入数据写入到存储器阵列的操作所致。
图8是根据本发明的实施例的设备(例如,例如存储器模块的存储器装置,或例如固态驱动器的存储器系统)800的一部分的示意性图解。设备800包含存储器单元阵列802,举例来说,所述存储器单元可为电阻可变存储器单元,包含相变存储器单元、电阻可变随机存取存储器单元或其它类型的存储器单元。设备800还包含根据本发明的实施例的存储器操作控制器806,存储器操作控制器806可通过指令总线808接收存储器指令并在设备800内产生对应控制信号以致使执行各种存储器操作。举例来说,存储器操作控制器806可产生用于根据本发明的实施例执行读取操作及写入操作的控制信号。存储器操作控制器806包含可用于存储与设备800的配置及操作相关的值的寄存器812。在一些实施例中,寄存器812可存储指示最大tLAT的值,且存储指示tHOLDOFF周期的时间的值以及其它值。寄存器812并不限于包含在存储器操作控制器806中且可与存储器操作控制器分开及/或包含于设备800的另一元件中。
可通过地址总线820将行及列地址信号提供到设备800的地址锁存器810。在一些实施例中,地址总线820可与指令总线808组合,且在一些实施例中,地址总线820可与数据总线组合。地址锁存器810可接着输出单独列地址及单独行地址。可由地址锁存器810将行及列地址分别提供到行地址解码器822及列地址解码器828。行地址解码器828可选择延伸穿过对应于相应列地址的阵列802的位线。行地址解码器822可连接到字线驱动器824,字线驱动器824可激活阵列802中的对应于所接收行地址的相应存储器单元行。对应于所接收列地址的选定数据线(例如,一或若干位线)可耦合到读取/写入电路830以经由输入-输出数据总线840将读取数据提供到数据输出缓冲器834。可通过数据输入缓冲器844及存储器阵列读取/写入电路830将写入数据提供到存储器阵列802。可使用设备800的缓冲器846来存储待执行的写入数据及/或写入指令,如先前所论述。
根据上文应了解,虽然本文已出于图解目的描述了本发明的特定实施例,但可在不背离本发明的精神及范围的情况下做出各种修改。因此,本发明不受除所附权利要求书以外的任何限制。
Claims (25)
1.一种设备,其包括:
存储器操作控制器,其经配置以接收存储器指令并解码所述存储器指令以提供用于执行所述存储器指令的存储器操作的内部信号,所述存储器操作控制器进一步经配置以在存储器指令的可变等待时间周期期间提供指示所述可变等待时间周期的时间的信息。
2.根据权利要求1所述的设备,其中与所述可变等待时间周期的所述时间相关的所述信息选自所述可变等待时间周期的多个剩余时间。
3.根据权利要求2所述的设备,其中所述可变等待时间周期的所述多个剩余时间包括短时间、正常时间及长时间。
4.根据权利要求1所述的设备,其中与所述可变等待时间周期的所述时间相关的所述信息是从存储器输入/输出提供的。
5.根据权利要求1所述的设备,其中与所述可变等待时间周期的所述时间相关的所述信息是由所述存储器所提供的信号的逻辑状态的组合指示。
6.根据权利要求1所述的设备,其中所述存储器经配置以在所述可变等待时间周期期间提供经更新信息。
7.一种设备,其包括:
存储器控制器,其经配置以提供存储器指令;
存储器,其耦合到所述存储器控制器,且经配置以从所述存储器控制器接收写入指令并响应于所述写入指令而执行存储器操作,所述存储器进一步经配置以提供指示所述写入指令的可变等待时间周期的结束的确认,且在所述确认之后在接收写入数据之前等待可变总线周转时间。
8.根据权利要求7所述的设备,其中所述存储器控制器经配置以在将写入数据提供到所述存储器之前等待总线周转时间,所述总线周转时间选自多个总线周转时间。
9.根据权利要求7所述的设备,其中所述存储器控制器经配置以在将写入数据提供到所述存储器之前提供总线周转时间结束指示符。
10.根据权利要求7所述的设备,其中所述存储器控制器经配置以在将写入数据提供到所述存储器之前在输入/输出上将总线周转时间结束指示符提供到所述存储器。
11.根据权利要求10所述的设备,其中所述存储器控制器经配置以在所述可变等待时间周期期间维持对所述输入/输出的控制。
12.根据权利要求7所述的设备,其中所述存储器经配置以在输入/输出上将所述确认提供到所述存储器控制器。
13.一种方法,其包括:
将存储器指令及地址提供到存储器;
接收指示所述存储器指令的可变等待时间周期的剩余时间的信息。
14.根据权利要求13所述的方法,其中指示所述可变等待时间周期的所述剩余时间的所述信息包含相对短的时间、正常时间或相对长的时间。
15.根据权利要求13所述的方法,其进一步包括:
在所述可变等待时间周期期间接收指示所述可变等待时间周期的所述剩余时间的经更新信息。
16.根据权利要求13所述的方法,其进一步包括:
至少部分地基于指示所述存储器指令的所述可变等待时间周期的所述剩余时间的所述信息而管理对所述存储器的操作。
17.根据权利要求16所述的方法,其中管理对所述存储器的操作包括至少部分地基于指示所述可变等待时间周期的所述剩余时间的所述信息而中止操作。
18.根据权利要求16所述的方法,其中管理对所述存储器的操作包括至少部分地基于指示所述可变等待时间周期的所述剩余时间的所述信息而使系统总线保持繁忙直到完成存储器操作为止。
19.一种方法,其包括:
在存储器处接收写入指令及写入数据将被写入到的地址;
提供指示所述写入指令的可变等待时间周期的结束的确认;以及
在所述确认之后等待可编程总线周转时间,其中所述可编程总线周转时间被编程于所述存储器中;以及
在所述可编程总线周转时间之后接收用于所述写入指令的所述写入数据。
20.根据权利要求19所述的方法,其中所述可编程总线周转时间为可配置总线周转时间。
21.根据权利要求19所述的方法,其中所述可编程总线周转时间为可变总线周转时间。
22.根据权利要求19所述的方法,其中所述可编程总线周转时间选自多个总线周转时间中的一者。
23.根据权利要求19所述的方法,其中所述可编程总线周转时间的结束由总线周转时间结束指示符指示。
24.根据权利要求19所述的方法,其进一步包括:
在接收所述写入数据之前接收总线周转时间结束指示符。
25.根据权利要求24所述的方法,其中在输入/输出上将所述总线周转时间结束指示符提供到所述存储器。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261719321P | 2012-10-26 | 2012-10-26 | |
US61/719,321 | 2012-10-26 | ||
US13/840,929 | 2013-03-15 | ||
US13/840,929 US9740485B2 (en) | 2012-10-26 | 2013-03-15 | Apparatuses and methods for memory operations having variable latencies |
PCT/US2013/066947 WO2014066843A1 (en) | 2012-10-26 | 2013-10-25 | Apparatuses and methods for memory operations having variable latencies |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105339916A true CN105339916A (zh) | 2016-02-17 |
CN105339916B CN105339916B (zh) | 2019-05-17 |
Family
ID=50545361
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380055960.1A Active CN105339916B (zh) | 2012-10-26 | 2013-10-25 | 用于具有可变等待时间的存储器操作的设备及方法 |
Country Status (7)
Country | Link |
---|---|
US (3) | US9740485B2 (zh) |
EP (1) | EP2912557B1 (zh) |
JP (1) | JP5952974B2 (zh) |
KR (1) | KR101693131B1 (zh) |
CN (1) | CN105339916B (zh) |
SG (1) | SG11201503219VA (zh) |
WO (1) | WO2014066843A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110809799A (zh) * | 2017-08-31 | 2020-02-18 | 美光科技公司 | 用于频率模式检测和实施的系统和方法 |
CN113867640A (zh) * | 2021-09-28 | 2021-12-31 | 合肥兆芯电子有限公司 | 存储器轮询方法、存储器存储装置及存储器控制电路单元 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9740485B2 (en) | 2012-10-26 | 2017-08-22 | Micron Technology, Inc. | Apparatuses and methods for memory operations having variable latencies |
US9754648B2 (en) | 2012-10-26 | 2017-09-05 | Micron Technology, Inc. | Apparatuses and methods for memory operations having variable latencies |
US9734097B2 (en) | 2013-03-15 | 2017-08-15 | Micron Technology, Inc. | Apparatuses and methods for variable latency memory operations |
US9727493B2 (en) | 2013-08-14 | 2017-08-08 | Micron Technology, Inc. | Apparatuses and methods for providing data to a configurable storage area |
US9304709B2 (en) | 2013-09-06 | 2016-04-05 | Western Digital Technologies, Inc. | High performance system providing selective merging of dataframe segments in hardware |
US9423961B2 (en) * | 2014-09-08 | 2016-08-23 | Apple Inc. | Method to enhance programming performance in multilevel NVM devices |
JP6711281B2 (ja) * | 2015-01-22 | 2020-06-17 | ソニー株式会社 | メモリコントローラ、記憶装置、情報処理システムおよびメモリの制御方法 |
KR20180070743A (ko) | 2016-12-16 | 2018-06-27 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 이의 동작 방법 |
US10497438B2 (en) * | 2017-04-14 | 2019-12-03 | Sandisk Technologies Llc | Cross-point memory array addressing |
US10534731B2 (en) | 2018-03-19 | 2020-01-14 | Micron Technology, Inc. | Interface for memory having a cache and multiple independent arrays |
US10936046B2 (en) * | 2018-06-11 | 2021-03-02 | Silicon Motion, Inc. | Method for performing power saving control in a memory device, associated memory device and memory controller thereof, and associated electronic device |
US11243804B2 (en) * | 2019-11-19 | 2022-02-08 | Micron Technology, Inc. | Time to live for memory access by processors |
US11199995B2 (en) | 2019-11-19 | 2021-12-14 | Micron Technology, Inc. | Time to live for load commands |
US11720352B2 (en) | 2019-12-10 | 2023-08-08 | Micron Technology, Inc. | Flexible command pointers to microcode operations |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7219251B2 (en) * | 2003-05-09 | 2007-05-15 | Hewlett-Packard Development Company, L.P. | Programmable clock synchronizer |
CN101256539A (zh) * | 2007-03-01 | 2008-09-03 | 国际商业机器公司 | 用于调度数据请求的服务的存储器控制器、方法和系统 |
US20090024778A1 (en) * | 2007-07-17 | 2009-01-22 | Nec Electronics Corporation | Memory controller, bus system, integrated circuit, and control method of integrated circuit |
US7624209B1 (en) * | 2004-09-15 | 2009-11-24 | Xilinx, Inc. | Method of and circuit for enabling variable latency data transfers |
US7643334B1 (en) * | 2007-04-26 | 2010-01-05 | Super Talent Electronics, Inc. | High-speed controller for phase-change memory peripheral device |
CN101820450A (zh) * | 2009-01-13 | 2010-09-01 | 三星电子株式会社 | 并行接口连接的方法和使用该方法的装置 |
US20110238866A1 (en) * | 2010-03-23 | 2011-09-29 | Spansion Llc | Variable read latency on a serial memory bus |
US20110314324A1 (en) * | 2010-06-17 | 2011-12-22 | Stmicroelectronics, Inc. | Variable latency interface for read/write channels |
Family Cites Families (62)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE68913695T2 (de) * | 1988-12-27 | 1994-10-20 | Nippon Electric Co | Mikrorechner mit einem elektrisch löschbaren und programmierbaren nichtflüchtigen Speicher. |
US5369616A (en) * | 1992-10-30 | 1994-11-29 | Intel Corporation | Method for assuring that an erase process for a memory array has been properly completed |
US5546344A (en) * | 1995-06-06 | 1996-08-13 | Cirrus Logic, Inc. | Extended data output DRAM interface |
US6201739B1 (en) * | 1996-09-20 | 2001-03-13 | Intel Corporation | Nonvolatile writeable memory with preemption pin |
JPH10312684A (ja) * | 1997-05-13 | 1998-11-24 | Fujitsu Ltd | 半導体集積回路 |
US5822244A (en) * | 1997-09-24 | 1998-10-13 | Motorola, Inc. | Method and apparatus for suspending a program/erase operation in a flash memory |
JP4034923B2 (ja) * | 1999-05-07 | 2008-01-16 | 富士通株式会社 | 半導体記憶装置の動作制御方法および半導体記憶装置 |
US6314049B1 (en) * | 2000-03-30 | 2001-11-06 | Micron Technology, Inc. | Elimination of precharge operation in synchronous flash memory |
JP4762435B2 (ja) | 2001-05-09 | 2011-08-31 | 富士通セミコンダクター株式会社 | 内部カウンタを複数備えた不揮発性半導体記憶装置 |
US20040098549A1 (en) * | 2001-10-04 | 2004-05-20 | Dorst Jeffrey R. | Apparatus and methods for programmable interfaces in memory controllers |
JP4077295B2 (ja) | 2002-10-23 | 2008-04-16 | 株式会社東芝 | 同期型半導体記憶装置及びその動作方法 |
JP2004171678A (ja) * | 2002-11-20 | 2004-06-17 | Sony Corp | 情報記憶装置、情報記憶方法、及び情報記憶プログラム |
JP4540352B2 (ja) | 2003-09-12 | 2010-09-08 | ルネサスエレクトロニクス株式会社 | 記憶装置 |
US6996016B2 (en) * | 2003-09-30 | 2006-02-07 | Infineon Technologies Ag | Echo clock on memory system having wait information |
US7774508B2 (en) | 2003-12-09 | 2010-08-10 | Panasonic Corporation | Electronic apparatus, control method thereof, host device, and control method thereof |
US7680966B1 (en) | 2004-06-29 | 2010-03-16 | National Semiconductor Corporation | Memory interface including generation of timing signals for memory operation |
US20060069812A1 (en) | 2004-09-30 | 2006-03-30 | Osborne Randy B | Method to mitigate performance turnaround in a bidirectional interconnect |
US7139673B1 (en) * | 2004-11-05 | 2006-11-21 | Xilinx, Inc. | Method of and circuit for verifying a data transfer protocol |
JP2006139556A (ja) | 2004-11-12 | 2006-06-01 | Toshiba Corp | メモリカード及びそのカードコントローラ |
JP4734033B2 (ja) | 2005-05-30 | 2011-07-27 | 株式会社東芝 | 記憶装置 |
US7200043B2 (en) * | 2005-05-31 | 2007-04-03 | Elite Semiconductor Memory Technology, Inc. | Nonvolatile memory using a two-step cell verification process |
US20070005922A1 (en) | 2005-06-30 | 2007-01-04 | Swaminathan Muthukumar P | Fully buffered DIMM variable read latency |
US7673111B2 (en) | 2005-12-23 | 2010-03-02 | Intel Corporation | Memory system with both single and consolidated commands |
US7571297B2 (en) * | 2005-12-30 | 2009-08-04 | Intel Corporation | Data invalid signal for non-deterministic latency in a memory system |
KR100816748B1 (ko) * | 2006-03-16 | 2008-03-27 | 삼성전자주식회사 | 프로그램 서스펜드/리줌 모드를 지원하는 상 변화 메모리장치 및 그것의 프로그램 방법 |
KR100746229B1 (ko) | 2006-07-07 | 2007-08-03 | 삼성전자주식회사 | 반도체 메모리 장치 |
US20080082707A1 (en) | 2006-09-29 | 2008-04-03 | Synfora, Inc. | Non-blocking bus controller for a pipelined, variable latency, hierarchical bus with point-to-point first-in first-out ordering |
KR100843546B1 (ko) * | 2006-11-21 | 2008-07-04 | 삼성전자주식회사 | 멀티 칩 패키지 플래시 메모리 장치 및 그것의 상태 신호독출 방법 |
US20080270811A1 (en) | 2007-04-26 | 2008-10-30 | Super Talent Electronics Inc. | Fast Suspend-Resume of Computer Motherboard Using Phase-Change Memory |
US7962670B2 (en) * | 2007-06-06 | 2011-06-14 | Lantiq Deutschland Gmbh | Pin multiplexing |
US8046524B2 (en) * | 2007-08-08 | 2011-10-25 | Sandisk Technologies Inc. | Managing processing delays in an isochronous system |
JP2009086988A (ja) | 2007-09-28 | 2009-04-23 | Toshiba Corp | メモリカード |
JP2011503753A (ja) * | 2007-11-19 | 2011-01-27 | ラムバス・インコーポレーテッド | ターンアラウンドイベントに基づくスケジューリング |
US7865658B2 (en) * | 2007-12-31 | 2011-01-04 | Sandisk Il Ltd. | Method and system for balancing host write operations and cache flushing |
US8001331B2 (en) | 2008-04-17 | 2011-08-16 | Arm Limited | Efficiency of cache memory operations |
US7929356B2 (en) | 2008-09-05 | 2011-04-19 | Atmel Corporation | Method and system to access memory |
KR20100055105A (ko) | 2008-11-17 | 2010-05-26 | 삼성전자주식회사 | 상 변화 메모리 장치 |
JP2010123164A (ja) | 2008-11-18 | 2010-06-03 | Elpida Memory Inc | 半導体記憶装置及びその制御方法 |
US8064250B2 (en) | 2008-12-16 | 2011-11-22 | Micron Technology, Inc. | Providing a ready-busy signal from a non-volatile memory device to a memory controller |
KR100985410B1 (ko) | 2008-12-30 | 2010-10-06 | 주식회사 하이닉스반도체 | 반도체 장치 |
US7979759B2 (en) | 2009-01-08 | 2011-07-12 | International Business Machines Corporation | Test and bring-up of an enhanced cascade interconnect memory system |
US8387065B2 (en) | 2009-04-16 | 2013-02-26 | International Business Machines Corporation | Speculative popcount data creation |
JP2012529692A (ja) | 2009-06-10 | 2012-11-22 | マイクロン テクノロジー, インク. | メモリアレイにおける読み出し待ち時間を短縮するためのメモリ操作の一時停止 |
US8004884B2 (en) | 2009-07-31 | 2011-08-23 | International Business Machines Corporation | Iterative write pausing techniques to improve read latency of memory systems |
US8850103B2 (en) * | 2009-08-28 | 2014-09-30 | Microsoft Corporation | Interruptible NAND flash memory |
US8327092B2 (en) * | 2009-09-21 | 2012-12-04 | Freescale Semiconductor, Inc. | Memory device configurable as interleaved or non-interleaved memory |
US8327052B2 (en) * | 2009-12-23 | 2012-12-04 | Spansion Llc | Variable read latency on a serial memory bus |
US8539129B2 (en) | 2010-04-14 | 2013-09-17 | Qualcomm Incorporated | Bus arbitration techniques to reduce access latency |
US9104546B2 (en) | 2010-05-24 | 2015-08-11 | Silicon Motion Inc. | Method for performing block management using dynamic threshold, and associated memory device and controller thereof |
US9355051B2 (en) * | 2010-09-10 | 2016-05-31 | Cypress Semiconductor Corporation | Apparatus, method, and manufacture for using a read preamble to optimize data capture |
US8135881B1 (en) * | 2010-09-27 | 2012-03-13 | Skyworks Solutions, Inc. | Dynamically configurable serial data communication interface |
US8645637B2 (en) | 2010-11-16 | 2014-02-04 | Micron Technology, Inc. | Interruption of write memory operations to provide faster read access in a serial interface memory |
US8649210B2 (en) * | 2011-09-06 | 2014-02-11 | Mediatek Inc. | DDR PSRAM and data writing and reading methods thereof |
KR101804521B1 (ko) | 2011-08-16 | 2017-12-07 | 에스케이하이닉스 주식회사 | 집적회로 칩, 이를 포함하는 시스템 및 동작방법, 메모리 및 메모리 시스템 |
JP5642649B2 (ja) | 2011-10-07 | 2014-12-17 | シャープ株式会社 | 半導体記憶装置及び半導体装置 |
US9515204B2 (en) * | 2012-08-07 | 2016-12-06 | Rambus Inc. | Synchronous wired-or ACK status for memory with variable write latency |
US20140089562A1 (en) | 2012-09-27 | 2014-03-27 | Hitachi, Ltd. | Efficient i/o processing in storage system |
US9754648B2 (en) | 2012-10-26 | 2017-09-05 | Micron Technology, Inc. | Apparatuses and methods for memory operations having variable latencies |
US9740485B2 (en) | 2012-10-26 | 2017-08-22 | Micron Technology, Inc. | Apparatuses and methods for memory operations having variable latencies |
US9734097B2 (en) | 2013-03-15 | 2017-08-15 | Micron Technology, Inc. | Apparatuses and methods for variable latency memory operations |
US20150095551A1 (en) | 2013-09-30 | 2015-04-02 | Micron Technology, Inc. | Volatile memory architecutre in non-volatile memory devices and related controllers |
US9824004B2 (en) | 2013-10-04 | 2017-11-21 | Micron Technology, Inc. | Methods and apparatuses for requesting ready status information from a memory |
-
2013
- 2013-03-15 US US13/840,929 patent/US9740485B2/en active Active
- 2013-10-25 KR KR1020157012546A patent/KR101693131B1/ko active IP Right Grant
- 2013-10-25 CN CN201380055960.1A patent/CN105339916B/zh active Active
- 2013-10-25 EP EP13849330.9A patent/EP2912557B1/en active Active
- 2013-10-25 WO PCT/US2013/066947 patent/WO2014066843A1/en active Application Filing
- 2013-10-25 JP JP2015539870A patent/JP5952974B2/ja active Active
- 2013-10-25 SG SG11201503219VA patent/SG11201503219VA/en unknown
-
2017
- 2017-07-11 US US15/646,874 patent/US10067764B2/en active Active
-
2018
- 2018-08-20 US US16/105,846 patent/US10915321B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7219251B2 (en) * | 2003-05-09 | 2007-05-15 | Hewlett-Packard Development Company, L.P. | Programmable clock synchronizer |
US7624209B1 (en) * | 2004-09-15 | 2009-11-24 | Xilinx, Inc. | Method of and circuit for enabling variable latency data transfers |
CN101256539A (zh) * | 2007-03-01 | 2008-09-03 | 国际商业机器公司 | 用于调度数据请求的服务的存储器控制器、方法和系统 |
US7643334B1 (en) * | 2007-04-26 | 2010-01-05 | Super Talent Electronics, Inc. | High-speed controller for phase-change memory peripheral device |
US20090024778A1 (en) * | 2007-07-17 | 2009-01-22 | Nec Electronics Corporation | Memory controller, bus system, integrated circuit, and control method of integrated circuit |
CN101820450A (zh) * | 2009-01-13 | 2010-09-01 | 三星电子株式会社 | 并行接口连接的方法和使用该方法的装置 |
US20110238866A1 (en) * | 2010-03-23 | 2011-09-29 | Spansion Llc | Variable read latency on a serial memory bus |
US20110314324A1 (en) * | 2010-06-17 | 2011-12-22 | Stmicroelectronics, Inc. | Variable latency interface for read/write channels |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110809799A (zh) * | 2017-08-31 | 2020-02-18 | 美光科技公司 | 用于频率模式检测和实施的系统和方法 |
CN110809799B (zh) * | 2017-08-31 | 2021-03-02 | 美光科技公司 | 用于频率模式检测和实施的系统和方法 |
US11003240B2 (en) | 2017-08-31 | 2021-05-11 | Micron Technology, Inc. | Systems and methods for frequency mode detection and implementation |
CN113867640A (zh) * | 2021-09-28 | 2021-12-31 | 合肥兆芯电子有限公司 | 存储器轮询方法、存储器存储装置及存储器控制电路单元 |
Also Published As
Publication number | Publication date |
---|---|
KR20160009523A (ko) | 2016-01-26 |
CN105339916B (zh) | 2019-05-17 |
EP2912557A4 (en) | 2016-10-05 |
SG11201503219VA (en) | 2015-05-28 |
US9740485B2 (en) | 2017-08-22 |
JP2015533005A (ja) | 2015-11-16 |
US20170308382A1 (en) | 2017-10-26 |
US10915321B2 (en) | 2021-02-09 |
US10067764B2 (en) | 2018-09-04 |
EP2912557B1 (en) | 2020-08-26 |
KR101693131B1 (ko) | 2017-01-04 |
WO2014066843A1 (en) | 2014-05-01 |
US20140122814A1 (en) | 2014-05-01 |
EP2912557A1 (en) | 2015-09-02 |
JP5952974B2 (ja) | 2016-07-13 |
US20190012173A1 (en) | 2019-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105264505A (zh) | 用于具有可变等待时间的存储器操作的设备及方法 | |
CN105339916A (zh) | 用于具有可变等待时间的存储器操作的设备及方法 | |
USRE48431E1 (en) | Nonvolatile memory device, read method for nonvolatile memory device, and memory system incorporating nonvolatile memory device | |
US11023167B2 (en) | Methods and apparatuses for executing a plurality of queued tasks in a memory | |
US10067890B2 (en) | Apparatuses and methods for variable latency memory operations | |
US10275378B2 (en) | Data buffer pointer fetching for direct memory access | |
KR101529291B1 (ko) | 플래시 메모리 장치 및 그것을 포함한 플래시 메모리시스템 | |
US20150213871A1 (en) | Semiconductor memory device and method for refreshing memory cells | |
CN103366794B (zh) | 用于减少接脚数内存总线接口的装置及方法 | |
CN110083555A (zh) | 具有独立接口路径的存储器设备的通用管芯实现 | |
US11360711B2 (en) | Storage device temporarily suspending internal operation to provide short read response time for read request from host | |
JP2007286813A (ja) | メモリ制御装置、メモリ制御方法 | |
CN114253462A (zh) | 提供混合通道存储设备的方法 | |
CN114253461A (zh) | 混合通道存储设备 | |
US20180129621A1 (en) | Apparatus and method for accessing data in memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |