CN1296832C - 用破坏读取高速缓冲存储器来缓冲的破坏读取随机访问存储器系统 - Google Patents

用破坏读取高速缓冲存储器来缓冲的破坏读取随机访问存储器系统 Download PDF

Info

Publication number
CN1296832C
CN1296832C CNB038092697A CN03809269A CN1296832C CN 1296832 C CN1296832 C CN 1296832C CN B038092697 A CNB038092697 A CN B038092697A CN 03809269 A CN03809269 A CN 03809269A CN 1296832 C CN1296832 C CN 1296832C
Authority
CN
China
Prior art keywords
bunch
data
dram
cache memory
storage
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.)
Expired - Fee Related
Application number
CNB038092697A
Other languages
English (en)
Other versions
CN1650270A (zh
Inventor
布赖恩·L·吉
黄重礼
切幡年明
宗藤正治
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1650270A publication Critical patent/CN1650270A/zh
Application granted granted Critical
Publication of CN1296832C publication Critical patent/CN1296832C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/12Group selection circuits, e.g. for memory block selection, chip selection, array selection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • G06F12/0897Caches characterised by their organisation or structure with two or more cache hierarchy levels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • G11C11/4093Input/output [I/O] data interface arrangements, e.g. data buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1039Read-write modes for single port memories, i.e. having either a random port or a serial port using pipelining techniques, i.e. using latches between functional memory parts, e.g. row/column decoders, I/O buffers, sense amplifiers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/106Data output latches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/30Providing cache or TLB in specific location of a processing system
    • G06F2212/304In main memory subsystem
    • G06F2212/3042In main memory subsystem being part of a memory device, e.g. cache DRAM
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/22Control and timing of internal memory operations
    • G11C2207/2245Memory devices with an internal cache buffer

Abstract

公开了一种存储器存储系统(10)。示范实施例中,存储器存储系统包括多个存储器存储簇(12)以及与其通信的高速缓冲存储器(14)。多个存储器存储簇(12)以及高速缓冲存储器(14)还包括破坏读取存储器存储元件。

Description

用破坏读取高速缓冲存储器来缓冲的 破坏读取随机访问存储器系统
技术领域
本发明一般涉及集成电路存储器装置,并尤其涉及被破坏读取存储器(destructive-read memory)所高速高速缓冲存储器的破坏读取存储器的随机访问存储器系统。
背景技术
亚微米(sub-micron)CMOS技术的发展已促成了微处理器速度的显著增加。(增加速度)约每三年四倍,微处理器速度已超过了1Ghz。连同微处理器技术中的这些进步,已带来更先进的软件和多媒体应用程序,其随之需要更大的存储器,用于其中的应用程序。因此,存在对具有更高密度和性能的更大的动态随机访问存储器(DRAM)的日益增加的要求。
这些年中,受到需要更大存储器容量的系统需求的驱使,DRAM结构已经得到了发展。然而,以其随机访问时间(tRAC)和其随机访问周期时间(tRC)为特征的DRAM的速度没有以类似方式提高。因此,由于CPU的时钟速度随着时间而稳定增长,所以,在DRAM和CPU之间,有不断加大的速度差距。
通常,DRAM阵列的随机访问周期时间(tRC)由阵列时间常数来确定,该常数表示完成全部随机访问操作的时间量。这样的操作包括:字线激活、位线上的信号发展、位线检测、信号写回、字线去激活(deactivation)和位线预充电。由于在传统DRAM结构中顺序执行这些操作,所以,增加DRAM的传输速度(或带宽)成为问题。
为某些应用改进DRAM系统的行访问周期时间的一种方法是:实现存储在DRAM单元中的数据的破坏读取,并随后将破坏读取的数据暂时存储到与同一本地存储器阵列的读出放大器相连接的缓冲单元中。(例如,参看授予Wakayama等人的美国专利第6205076和6333883号)此方法中,连接到普通读出放大器块的本地存储器阵列中的不同字线可被顺序地破坏读取多次,该次数被设置为1加上每个读出放大器的缓冲单元的数目。然而,由于用于每个本地DRAM阵列的缓冲单元和相关控制逻辑需要较大的面积,因而此方法中可实际实现的缓冲单元的数目较小。此外,只要缓冲单元的数目小于原始单元阵列中的字线的数目,此系统仅为有限数目的数据访问情况改进访问周期时间,而不是总的应用中所需要的随机访问周期时间。
改进DRAM系统的随机访问周期时间的更实用的方法是:实现存储在DRAM单元中的数据的破坏读取,并随后将破坏读取的数据暂时存储到主存储器阵列之外的基于SRAM的高速缓冲存储器中。基于SRAM的高速缓冲存储器具有至少与一个单簇(bank)DRAM阵列相同数目的字线(这里叙述的术语“簇”表示共享相同的读出放大器的存储器单元的阵列)。在2001年4月26日提交、并共同转让给了本申请的受让人的美国专利申请第09/843504号、标题为“A Destructive Read Architecture for Dynamic Random Access Memories(用于动态随机访问存储器的破坏读取结构)”的文献中描述了此技术。此技术中,随后调度延迟写回操作,用于在后面时间将数据恢复到适当的DRAM存储器位置。延迟写回操作的调度取决于基于SRAM的高速缓冲存储器内的空间的可用性。尽管这样的方法对于减少随机访问周期时间有效,但基于SRAM的高速缓冲存储器的使用可能占用不理想数量的芯片固定资源(real estate),并导致为在DRAM和高速缓冲存储器之间传输数据的更复杂的互连线路。因此,在尤其关心芯片面积的场合,期望减少随机访问周期时间,而不会由使用基于SRAM的高速缓冲存储器而占用相对较大的装置面积。
发明内容
通过一种存储器存储系统,可克服或减小现有技术的上面讨论的和其它缺点和缺陷。在示范实施例中,存储器存储系统包括多个存储器存储簇和与其通信的高速缓冲存储器。多个存储器存储簇以及高速缓冲存储器均还包括破坏读取存储器存储元件。
在优选实施例中,破坏读取存储器存储元件是动态随机访问存储器(DRAM)存储单元。另外,该系统还包括与多个存储器存储簇和高速缓冲存储器通信的线缓冲器结构。缓冲器标记与线缓冲器结构相关,而高速缓冲存储器标记与高速缓冲存储器相关。线缓冲器结构包括一对寄存器阵列,其每一个能够存储整页字线数据,如同在DRAM阵列中。换句话说,线缓冲器结构按照数据I/O包括两个寄存器。
多个存储器存储簇还包括数目为n的DRAM存储簇,其每一个具有与其相关的数目为m的字线。高速缓冲存储器还包括一对DRAM高速缓冲存储器簇,其每一个具有与其相关的相同数目m的字线。此外,每个缓冲其均能够在其中存储数据页,数据页包括从选择的DRAM存储簇的所选字线、或选择的DRAM高速缓冲存储器簇的所选字线破坏地读取的数据位。可将原始包含在DRAM存储簇中的一个内的数据存储在DRAM高速缓冲存储器簇中的一个中。将与DRAM存储簇原始相关的、包含在所述一对DRAM高速缓冲存储器簇中的任意数据通过直接映射方案存储在其中,其中将与DRAM存储簇中的一个之内的给定字线地址相关的数据存储在DRAM高速缓冲存储器簇中的一个之内的那个字线地址内。
另一方面,是一种用于控制数据在动态随机访问存储器(DRAM)系统内移动的方法,该系统具有数目n的DRAM存储簇、线缓冲器结构和高速缓冲存储器。在示范实施例中,该方法包括:为存在于存储簇、缓冲器结构、以及高速缓冲存储器内的有效数据定义一组可允许的状态。在对存储于DRAM存储簇内的数据的第一次随机访问请求之前初始化DRAM系统,其中该初始化遵循定义的一组可允许状态。在对数据的第一次随机访问请求之后,以及在其后对数据的任意随后的随机访问请求之后,在缓冲器结构中使请求的数据可用,并且维持所述一组可允许状态。
附图说明
参照示范附图,其中在几幅图中,相同的元素被相同地标记。
图1为根据本发明的实施例的破坏读取动态随机访问存储器(DRAM)的示意方框图;
图2为图示包括在DRAM系统中的高速缓冲存储器标记的结构的表;
图3为图示包括在DRAM系统中的缓冲器标记的结构的表格;
图4(a)为图示包括在DRAM系统中的缓冲器结构的一个实施例的示意图;
图4(b)为图示用于图4(a)中示出的数据线的示范连接的示意图;
图5(a)为图示DRAM系统配置下允许的可能的数据传输操作的例子的表;
图5(b)为图示图4中示出的缓冲器结构的操作的时序图;
图5(c)为图4中示出的缓冲器结构的替换实施例的示意图;
图5(d)为图示与图5(c)的缓冲器结构相关的流水线(pipeline)方案的表;
图6(a)到6(f)为与DRAM系统相结合使用的强读式(strong form)算法下,表示各种数据传输操作的状态图。
图7为图示强读式算法中使用的初始化程序的状态图;
图8为图示强读式算法中的可选数据传输操作的状态图;
图9为图示强读式算法下可允许状态的状态表;
图10(a)到10(d)为图示替换地可与DRAM系统相结合使用的普通式(general form)算法下的可允许状态的状态表;以及
图11(a)到11(f)为在与DRAM系统相结合使用的普通式算法下,表示各种数据传输操作的状态图。
具体实施方式
这里公开了一种基于也被破坏读取存储器所高速缓冲存储的破坏读取存储器的随机访问存储器系统。破坏读取存储器描述一种存储器结构,其在执行读操作之后,丢失其数据,并由此,执行随后的写回操作,以将该数据恢复到存储器单元中。如果读取DRAM内的数据而没有紧接着写回到其中,那么该数据之后将不再驻留在该单元中。如上所述,改进随机访问周期时间的一个方法为:以破坏读取模式操作存储器阵列,所述破坏读取模式与使用SRAM数据高速缓冲存储器的延迟写回的调度相结合。而且如前所述,然而,现有SRAM装置占用更多的装置固有资源,并且,与具有单个访问晶体管和存储电容器的DRAM单元相比,每单元通常包括四个或更多晶体管。因此,本发明的实施例允许相同的破坏读取DRAM簇也起到高速缓冲存储器的作用,由此在将要讨论的其它优点中节省装置固有资源。
简要地说,在当前实施例中,通过从多个DRAM簇读取而破坏的数据现在被也以破坏读取模式工作的双簇DRAM数据高速缓冲存储器所高速缓冲存储(例如,写入)。除了DRAM簇和双簇(dual-bank)高速缓冲存储器之外,还包括一对寄存器线缓冲器,每个用于单页数据的存储。高速缓冲存储器标记为高速缓冲存储器的每个字线存储簇信息,以及标志,以指明双簇高速缓冲存储器中的特定簇当前是否具有有效数据。还有缓冲器标记,对于每个缓冲器来说,包含指明其中是否存在有效数据的标志,以及与该数据相关的簇和行信息。指明两个缓冲器中的哪一个的另一个标志可包含从先前周期随机请求的数据。
作为将更详细描述的,基于“可允许状态的规则”的概念,可设计一个或更多路径无关算法,用来确定将在对下一个时钟周期的准备中实现的数据传输操作。数据传输操作(即移动)将仅取决于DRAM簇、高速缓冲存储器和缓冲器中的数据的当前状态,而不是当前状态之前的历史。为了便于理解,将下面的详细描述组织为两个主要部分:(1)系统架构;以及(2)为该架构实现的调度算法。
I.系统架构
首先参照图1,其中示出了破坏读取动态随机访问存储器(DRAM)系统10的示意方框图。DRAM系统10包括:n个DRAM存储簇12(分别指定为BANK0到BANKn-1);破坏读取DRAM高速缓冲存储器14,其包括双高速缓冲存储器簇16;高速缓冲存储器标记18;一对寄存器线缓冲器20(分别指定为缓冲器0和缓冲器1);缓冲器标记22;以及相关逻辑电路24。应当注意,这里使用的术语“簇(bank)”或“BANK”表示共享一组普通的读出放大器的存储器单元阵列。
相关逻辑电路24还可包括:元件中的接收器/数据、元件外的OCD/数据、以及其它逻辑元件。不象现有的高速缓冲存储器,两个DRAM高速缓冲存储器簇16可与n个正常DRAM簇12相同(在配置以及性能上)。因此,还可将所述系统10视为具有n+2簇架构,其中,n个DRAM簇用于传统的存储器存储,而2个DRAM簇用作高速缓冲存储器。下文中,用于高速缓冲存储器14的两个DRAM簇16将被称为“高速缓冲存储器簇”,其分别被指定为CBANKA和CBANKB。
每个DRAM簇12(BANK0到n-1)和高速缓冲存储器簇16(CBANKA、B)有相同数目的字线和位线。优选实施例中,相同的阵列支持电路(例如,字线驱动器和读出放大器配置)可支持DRAM簇12和高速缓冲存储器簇16。另一方面,只要每个高速缓冲存储器簇16(CBANKA、B)包含至少与DRAM簇12(BANK0到n-1)相同数目的字线和位线,便可为每个DRAM簇12(BANK0到n-1)和每个高速缓冲存储器簇16(CBANKA、B)使用不同的阵列配置。
两个高速缓冲存储器簇16均共享直接映射高速缓冲存储器方案中的高速缓冲存储器标记18。可将与DRAM簇12中的一个的具体字线地址(例如,字线0)相关的数据存储在两个高速缓冲存储器簇16中的一个(A或B,但不是所有两个)的那个具体字线中。这允许高速缓冲存储器14在将新数据写入到另一个DRAM簇12时,从DRAM簇中的一个读取数据。图2中示出了高速缓冲存储器标记18的结构。可以看出,对于每个字线(编号0到m),高速缓冲存储器标记18存储DRAM簇地址信息(此例子中示出为3位编码的簇地址),以及在高速缓冲存储器簇CBANKA和CBANKB的字线中存在数据的指示。“A”和“B”标志指明CBANKA、CBANKB中是否存在有效数据,或者都不存在。图示的例子中,CBANKA的字线0包含来自(DRAM)BANK0、字线0的有效数据。而且,CBANKB的字线2包含来自BANK7、字线2的有效数据,而CBANKA的字线3包含来自BANK3、字线3的有效数据。
两个线缓冲器20中的每个均能够存储单页数据(即字)。线缓冲器20可由寄存器阵列形成,并分别具有独立输入和输出端口。图3图示了缓冲器标记22的结构,其包括每个缓冲器20的簇地址、行地址(此例子中的8位编码的地址)、有效标志和请求标志。然而,如后面将描述的,在优选实施例中,与每个缓冲器20相关的行地址应当相同,因此,其在两个缓冲器之间共享。有效标志指明缓冲器中的数据是否有效。请求标志指明缓冲器20(缓冲器0或缓冲器1)是否包含先前为具体簇所请求的数据、以及用于读取到data_out(数据输出)(OCD)或从data_in(数据输入)(接收器)写入的行地址。
现在参照图4,其中示出了图示用于每个data_in/out引脚的两个缓冲器20(缓冲器0和缓冲器1)的结构的示意图。缓冲器20用于处理DRAM簇(BANK0到n-1)和高速缓冲存储器14(CBANKA、B)之间的数据传输的流量,同时避免数据线上任何潜在的数据争用。将data_in/data_out总线30(包括data_in线30a和data_out线30b)通过由read(读)/write(写)信号gw0/gr0以及gw1/gr1控制的多个对应传输门32分别连接到缓冲器0和缓冲器1。data_in/data_out总线30提供DRAM系统10和从该系统读取或写入到该系统的任意外部装置(用户)之间的外部接口。
读取二级数据线(RSDL)34为单向信号总线,其将DRAM簇阵列中的读出放大器(SA)或二级读出放大器(SSA)(未示出)的输出通过由信号r0控制的传输门36连接到缓冲器0。换句话说,将从DRAM簇12中的一个读取到缓冲器20的数据通过RSDL34发送到缓冲器0。类似地,CRSDL(高速缓冲存储器读取二级数据线)38为单向信号总线,其将与高速缓冲存储器14相关的读出放大器(SA)或二级读出放大器(SSA)(未示出)的输出通过由信号r1控制的传输门40连接到缓冲器1。换句话说,将从高速缓冲存储器簇16中的一个读取到缓冲器20的数据通过CRSDL38发送到缓冲器1。
另外,写入二级数据线(WSDL)42为单向信号总线,其将来自缓冲器0或缓冲器1的输出数据连接回到DRAM簇12。这通过由信号w00和w10控制的多路复用传输门44来完成。对应地,高速缓冲存储器写入二级数据线(CWSDL)46为单向信号总线,其将来自缓冲器0或缓冲器1的输出数据连接到高速缓冲存储器簇16。这通过由信号w01和w11控制的多路复用传输门48来完成。
图4(b)为图示用于n个DRAM簇、两个DRAM高速缓冲存储器簇和两个缓冲器之间的数据线WSDL、RSDL、CWSDL和CRSDL的示范连接的示意图。通过例子的方式,假定数据线的宽度为128位。
尽管通过使用图4(a)中示出的电平敏感锁存器来实现缓冲器结构,但也可实现基于边缘触发锁存器和流水线标记比较的替换方案,如后面将描述的。此外,应当注意,当前实施例下,定义图4(a)的缓冲器结构,使得:总是将从DRAM簇12输入的数据存储在缓冲器0中;总是将从高速缓冲存储器簇16输入的数据存储在缓冲器1中;以及从缓冲器0和缓冲器1输出的数据可转到DRAM簇12或高速缓冲存储器簇16。然而,应当理解,可反转该结构,以便可将从DRAM簇12或高速缓冲存储器簇16输入到缓冲器中的数据存储在任一缓冲器中,而在具体缓冲之外写入的数据将仅转到DRAM簇或高速缓冲存储器簇16。
为了对DRAM系统10的操作的理解,下面,通过假定将命令和地址信号的1/4时钟建立时间用于标记比较,来讨论单时钟周期操作。单周期操作意味着,每个DRAM簇(包括高速缓冲存储器簇)可在一个时钟周期内完成读或写操作。每个时钟周期中,将会有不多于一个的来自DRAM簇的读操作、不多于一个的来自高速缓冲存储器簇的读操作、不多于一个的到DRAM簇的写操作、不多于一个的到高速缓冲存储器簇的写操作。因此,每个周期期间可在DRAM簇和高速缓冲存储器簇之间最多发生四个独立的读或写操作,同时仍允许与两个缓冲器成功通信。通过每个数据传输操作,能够通过两个缓冲器中的一个进行通信。
图5(a)为图示当前系统配置下允许的四个可能数据传输操作中的每个的例子的表格。例如,在对存储在BANK2、字线4(缩写为bank2_wl4)中的数据的随机访问请求期间,可发生下面的操作:
(1)将先前在缓冲器0(例如,来自bank0_wl2)中的数据移回到BANK0;
(2)将该数据从bank2_wl4移出到缓冲器0;
(3)将先前在缓冲器1(例如,来自bank3_wl2)中的数据移到高速缓冲存储器簇(例如,CBANKA);以及
(4)将数据从CBANKB中的字线4(例如,bank0_wl4)移到缓冲器1。
由于至少有两个DRAM簇、两个缓冲器、以及两个高速缓冲存储器簇,所以能够使所有四个上面的数据传输操作同步。
如将在后面更详细说明的,通常,基于请求的命令(如果有的话)和数据的现有状态,来确定上面的时钟周期期间的系列操作。将定义一系列允许状态,并且,将实现支持允许状态的规则的算法。上面图5(a)中的例子的上下文中,在紧挨在bank2_wl4中的数据请求之前,缓冲器0最初包含:先前从与DRAM簇0中的第二字线(bank0_wl2)相关的单元读取的数据位。另外,缓冲器1最初包含:先前从与DRAM簇3中的第二字线(bank3_wl2)相关的单元读取的数据位。高速缓冲存储器标记18保持与高速缓冲存储器簇中的每个字线相关的簇地址信息,以及A或B簇中是否有任何有效数据。具体地,上面例子假定高速缓冲存储器B最初包含:先前从DRAM簇0中的第四字线(bank0_wl4)读取的数据位。从先前时钟周期获知所有这些初始状态。
当在建立时间期间接收了新命令(请求bank2_wl4)时,完成标记比较。标记比较确定请求的数据是否为缓冲器命中(hit)、高速缓冲存储器命中、或缓冲器及高速缓冲存储器未中(miss)(即DRAM簇命中)。此例子中,请求的数据既不在缓冲器中也不在高速缓冲存储器中,并由此,比较结果被视为DRAM簇命中。换句话说,请求的数据实际在其指定的DRAM簇位置中。除了定位请求的数据之外,标记比较还检查看:在与请求中相同的字线地址(例如,wl4)的任一高速缓冲存储器簇中是否有任何有效数据。此例子的结果是来自DRAM簇0、字线4(bank0_wl4)的有效数据,其被发现在高速缓冲存储器簇B中。
由于当前系统使用直接映射调度,所以,为了将来的调度,不应将来自bank0_wl4的数据位存储在任一高速缓冲存储器簇中。因此,来自bank0_wl4的数据位将被传送到存储器1。同时,请求的数据bank2_wl4需要被传送到缓冲器0,以随后被用户检索。然而,必须首先将最初在缓冲器0(bank0_wl2)中的数据返回到其在DRAM簇中的位置(即BANK0,字线2),其中DRAM簇与请求中的簇不同。由于两个缓冲器均包含有效数据,它们中的一个将与DRAM簇号码相关,其中所述DRAM簇号码不是与请求的DRAM簇相同的号码。首先检查缓冲器0,并且通过标记比较确定其与和请求中相同的DRAM簇号码不相关,于是将缓冲器0中的数据送回DRAM簇0。其它缓冲器中的数据,即来自缓冲器1中的bank3_wl2的数据位将被传送到高速缓冲存储器簇A。
当前系统的基本数据传送原则为:将具有相同字线号码的最多两个数据页存储在两个缓冲器中,作为一对。一个用于请求的数据页,如果有必要的话,另一个用于传送高速缓冲存储器之外的有效数据页(具有对应于与请求的数据相同的字线地址的具体字线地址),以便避免将来周期中的数据溢出。只要遵循此配对规则,便可完全保持数据传输的完整性,而不丢失任何簇数据。
现在参照图5(b),其中示出了图示图4(a)中示出的缓冲器结构的操作的时序图。再次,有假定的对应于新请求的命令、地址和数据的建立时间。由于相关逻辑相对简单,所以少量时间(例如,0.13微米技术中大约0.5ns)可能就足够了。另外,可为内部DRAM操作实现延迟时钟。在建立时间期间,将地址信息(add)用于标记比较,而将命令(cmd)用于查看是否存在对数据传送的请求。命令还被流水线输送到下一个时钟,使得随后如同在读(写)等待时间1操作中一样,执行从(或到)数据缓冲器的读(或写)命令。此电平敏感锁存器方案中,图4(a)中的“w”门44在时钟周期的前一半期间接通,而在时钟周期的后一半期间关断,由此,允许数据被发送到WSDL42,并被锁存一个时钟。“r”门36、40在时钟周期的后半段接通,由于假定宏读取等待时间(macro readlatency)小于一个时钟周期,所以允许来自DRAM簇的有效数据进入。随后,数据在下一个周期的上升沿被锁存到寄存器缓冲器中。如果接收了读命令,则将数据从缓冲器(与请求的地址相关)读取到data_out线30b。如果接收了写命令,则将数据从data_in线30a写入到与请求的地址相关的缓冲器中。
应当注意,无论请求为读、写、或带有位屏蔽的写,对于提出的随机访问存储器系统来说,内部操作将首先把与请求的字线相关的数据页带到缓冲器中的一个中,其中执行读(将数据向外拷贝到data_out30b)或写(将数据页更新为data_in30a上的输入)。除了data_in和data_out线以及控制门gw0、gw1、gr0、gr1上的操作,用于DRAM簇、高速缓冲存储器、以及缓冲器的调度算法和数据移动对于读和写请求来说是等同的。
图5(c)中示出了基于正时钟边缘触发锁存器52的替换的缓冲器方案50。这里,将一个时钟周期用于标记读取和比较,以和ASIC方法更为一致。使用一个时钟标记比较,图5(d)图示了与图5(c)的时钟边缘触发设计相一致的时序流程。此实施例中的读取等待时间为两个时钟。应当注意,如图5所示,两个连续的命令(请求1和请求2)顺序堆积并以无缝流水线形式运行。在说明书的下个部分将示出:通过实现为DRAM系统10特别设计的路径无关算法,用于任意随机顺序的无缝堆积成为可能。
II.调度算法
为了成功地使用具有破坏读取高速缓冲存储器的破坏读取DRAM阵列的上面描述的架构,适当的调度方案应当在适当位置,以便将系统维持在跟随任意新随机访问请求之后的可允许状态。一般方法是,首先定义可允许状态,初始化该系统以遵循可允许状态(即初始化),并随后确保在任意给出的数据传送操作之后,保持可允许状态(即系统连续性)。
可允许状态的规则(强读式)
优选实施例中,定义了以在所有两个缓冲器中保持有效数据的对称算法为特征的可允许状态的“强读式”规则,其中所述数据具有相同的字线地址,但来自不同的DRAM簇。因此,在每个时钟周期的上升沿,将满足下面的规则:
规则#1-具有存储在两个缓冲器中的每个的数据字,其具有彼此共同的字线地址。缓冲器中的两个数据字的一个为对应于来自先前的随机访问请求的簇地址和字线地址的特定数据。
此规则的例子可为:缓冲器0包含从DRAM簇2、字线3(如同从先前周期请求)读取的数据,而缓冲器1包含先前从高速缓冲存储器(高速缓冲存储器簇A或高速缓冲存储器簇B)的字线3读取、并与簇4、字线3相关的数据。
规则#2-高速缓冲存储器中没有与上面的字线地址(即,与缓冲器中的数据相关的具体字线地址)当前相关的有效数据。
继续上面的例子,高速缓冲存储器簇A或高速缓冲存储器簇B均不会有存储在字线地址3上的有效数据。也就是说,在高速缓冲存储器标记的字线3上,A=0且B=0。
规则#3-对于除了对应于缓冲器的字线地址的字线地址之外的每个字线地址,具有存储在一个且仅有一个的高速缓冲存储器簇中的一个且仅有一个有效数据字。
因此,上面的例子中,对于除了字线地址3之外的每个字线地址,(A=1且B=0)或(A=0且B=1)。
应当注意,在规则#1下,与请求的簇和字线地址(用于读或写)相关的数据页将在下一个时钟周期到达缓冲器,用于适当的读和写操作。给定上面概述的可允许状态的规则,对于任意随机访问请求(读/写),有可能运行预定的程序,其中借助该程序,提出的系统将被初始化,并随后在可允许状态保持任意时钟周期。
初始化
强读式算法的第一部分通过初始化程序开始。随着系统启动,缓冲器标记22(来自先前讨论的图3)如下设置:(1)将用于缓冲器0和缓冲器1的有效标志设为“1”;(2)行地址对应于字线0;(3)用于缓冲器0的簇地址为簇1;(4)用于缓冲器1的簇地址为簇0;以及(5)由于没有先前请求,所以用于所述两个缓冲器的请求标志为0。
另外,随着系统启动,除了字线0,用于高速缓冲存储器标记18的高速缓冲存储器簇A的每个标志被初始化为A=1,而高速缓冲存储器标记18中的所有簇地址都被设置到簇0。将用于高速缓冲存储器簇B的每个标志初始化为B=0。如上所述,通过设置缓冲器和高速缓冲存储器标记,缓冲器0对应于与bank(簇)1_woedline(字线)0相关的有效数据字,而缓冲器1对应于与bank0_wordline0相关的有效数据字。最后,除了字线0不对应有效数据,双簇高速缓冲存储器中的所有其它字线具有与高速缓冲存储器簇A中的簇0相关的有效数据。因此,初始满足了上面陈述的强读式规则。
连续性
跟随初始化之后,将假定紧挨在时钟周期的上升沿稍前,作出随机读或写请求。在时钟周期的上升沿,随机访问请求(读或写)将被表示为Xj,其中“X”为簇地址,而“j”为字线号码(地址)。术语Di将表示最初存储在缓冲器0中的数据页,其中“D”为簇地址,而“i”为字线号码。术语Qi将表示最初存储在缓冲器1中的数据页,其中“Q”为簇地址,而“i”为字线号码。应当注意,根据上述规则#1,所有情况中D≠Q,并且字线号码(i)对于缓冲器0和缓冲器1是相同的。
而且,在规则#2和规则#3的情况下,对于任意给定的字线号码k≠i,有且仅有一个与存储在高速缓冲存储器中的字线k相关的有效数据页。由此,术语C(k)被表示为用于高速缓冲存储器标记中的字线k的对应簇地址。因此,对于任意给定的请求Xj,将在相关的DRAM簇、两个缓冲器中的一个、或高速缓冲存储器中找到数据。下面,示出为三个一般可能情况而运行的结果数据传送操作:
情况1-缓冲器命中
此情况中,j=i,且X=D或X=Q。也就是说,请求的数据已经存储在缓冲器0或缓冲器1中。由于已经满足可允许状态的规则,此时钟周期中不实现进一步的数据传送。由图6(a)的状态图表中缺少变化可反映出此情况。
情况2-高速缓冲存储器命中
如果请求的数据Xj被包含在高速缓冲存储器中,则j≠i(在规则#2下)。也就是说,请求的数据的字线号码不对应于缓冲器中的数据的字线。此外,由于单页数据不能对应于两个簇地址,因而X≠D或X≠Q,或者X≠D且X≠Q。
如果X≠D,则用于Dj的数据既不在缓冲器中(从上面段落可知)也不在高速缓冲存储器中(在规则#3下),因此,用于Dj的数据在对应的DRAM簇中。随后实现下面的步骤,以遵循上面用于可允许状态的规则:
Xj从一个高速缓冲存储器簇(A或B)移到缓冲器1;
Di从缓冲器0移到另一个高速缓冲存储器簇(B或A);
Qi从缓冲器1移到DRAM簇Q;
Dj从DRAM簇D移到缓冲器0。
图6(b)中演示了此系列数据移动。另一方面,如果X=D,则X≠Q必定为真,并且在对应的DRAM簇中找到用于Qj的数据。因此,随后实现下面的步骤:
Xj从一个高速缓冲存储器簇(A或B)移到缓冲器1;
Qi从缓冲器1移到另一个高速缓冲存储器簇(B或A);
Di从缓冲器0移到DRAM簇D;
Qj从DRAM簇Q移到缓冲器0。
图6(c)中演示了此系列数据移动。
情况3a-缓冲器未中,高速缓冲存储器未中,j=i
如果请求的数据Xj既不在缓冲器中也不在高速缓冲存储器中,则其(Xj)在对应的DRAM簇中。由于j=i,则X≠Q也为真。因此,可在两个步骤中执行遵循的操作,如图6(d)所示:
Xj从DRAM簇X移到缓冲器0;
Di从缓冲器0移到DRAM簇D。
情况3b-缓冲器未中,高速缓冲存储器未中,j≠i,X≠D
此情况中,请求的数据再次位于对应的DRAM簇中。然而,请求的数据的字线地址不同于缓冲器中的数据的字线地址。在可允许状态的规则下,存在存储于一个高速缓冲存储器簇中的用于行地址j的有效的Cj。由于X≠D,则请求的数据的簇地址不同于缓冲器0中的数据的簇地址,并实现下面的步骤:
Xj从一个DRAM簇X移到缓冲器0;
Cj从一个高速缓冲存储器簇(A或B)移到缓冲器1;
Qi从缓冲器1移到另一个高速缓冲存储器簇(B或A);
Di从缓冲器0移到DRAM簇D。
图6(e)中演示了此系列数据移动。
情况3c-缓冲器未中,高速缓冲存储器未中,j≠i,X=D,X≠Q
此情况与上面的情况3b的唯一不同在于:请求的数据的簇地址现在和包含在缓冲器0中的数据的簇地址相同(即X=D)。然而,请求的数据的簇地址不同于包含在缓冲器1中的数据的簇地址(即X≠D)必定为真。因此,如图6(f)所示,实现下面的步骤:
Xj从一个DRAM簇X移到缓冲器0;
Cj从一个高速缓冲存储器簇(A或B)移到缓冲器1;
Di从缓冲器0移到另一个高速缓冲存储器簇(B或A);
Qi从缓冲器1移到DRAM簇Q。
初始化程序的替换实施例通过不将任何数据长时间存储在缓冲器中,可对帮助系统减少软错误率(SER)起到作用。这样的实施例中,随着系统启动,用于高速缓冲存储器标记18的高速缓冲存储器簇A的每个标志被初始化为A=1,同时高速缓冲存储器标记18中的所有簇地址被设为相同的地址(例如000),并且用于标记缓冲器22的有效标志均被设为“0”。
现在,参照图7,其中也示出了用于上述初始化程序的状态图,其中,对于第一请求的高速缓冲存储器命中(Ci),将数据从高速缓冲存储器移到缓冲器1;对于高速缓冲存储器和缓冲器未中(Di),将数据从DRAM簇D移到缓冲器0。
最后,图8为可选数据移动操作的状态图,其中如果在给定时钟周期期间没有接收请求,可执行该操作。由于软错误率(SER)的可能性的缘故,如果没有来自用户(外部装置)的请求,可能不期望保留存储在缓冲中的数据。此情况中,缓冲器0中的数据Di返回到DRAM簇D,而将缓冲器1中的数据Qi发送到高速缓冲存储器簇中的一个。
上述可允许状态的“强读式”规则下的数据移动算法的优点在于,通过总是使两个缓冲器均包含有效数据,可在一个时钟周期期间将请求的数据传送到缓冲器中的一个,同时仍将系统保持在可允许状态。如可从上面概述的各种可能性看出,最多仅有四个数据传送操作,并且数据传送逻辑相对容易实现。然而,可将强读式规则概括为其系统实现中的性能、功率以及逻辑门的数目之间的折衷。因此,还提出了“普通式”算法。
简单地说,“普通式”允许缓冲器中有更多可允许状态,由此减少需要的数据传送操作的数目。接下来,这使得装置中的功率耗散较少。另一方面,折衷为:将额外的逻辑用于处理可允许状态中的增加。通过比较的方式,图9为图示强读式算法下可允许状态的表格,而图10(a)-(d)图示了普通式算法下的可允许状态。可以看出,除了包含有效数据的缓冲器0和1之外,任一缓冲器或两者也可以为空。可将用于普通式的可允许状态的规则总结如下:
可允许状态的规则(普通式)
规则#1-可将两个或更少的数据页置于两个缓冲器中。如果每个缓冲碰巧包含有效数据,则每个缓冲器中的数据具有相同的字线地址。然而,如果在先前周期期间做出随机访问请求,则缓冲器中的一个必须包含对应于先前随机访问请求的数据。
规则#2-如果任一缓冲器或所有两个缓冲器其中包含任何有效数据页(与具体字线地址相关),则不存在具有存储在高速缓冲存储器中的相同字线地址的有效数据。
规则#3-对于除了规则#2中描述的一个具体字线地址之外的所有字线地址,最多有一个与存储在一个且仅为一个的高速缓冲存储器簇中的字线地址相关的有效数据字。也就是说,对于除了和有效标志一起存储在缓冲器标记(图3)中的字线地址之外的每个字线地址,A和B(图2)不能同时等于1。
在上述普通式规则下,实现了低功率方法,以与强读式方法相比减少需要的移动数目。例如,在早先讨论的高速缓冲存储器命中情况中(情况2),在可允许状态的强读式规则下从DRAM簇到缓冲器的数据传送在可允许状态的普通式规则下是不必要的。另外,可允许状态的普通式规则下,某些有效数据字(例如,Di、Qi以及Cj),即早先描述的一些数据移动的开始点,在随机访问请求期间可能不以初始系统状态出现。因此,不再需要到其它缓冲器、和从其它缓冲器的对称移动。
通过普通式规则,为每个特定周期确定需要的数据移动的最小数目。应当注意,在最初仅有一个缓冲器包含有效数据页的情况中,可将该页发送到高速缓冲存储器或DRAM簇。然而,在优选实施例中,选择的操作是将数据移到DRAM簇。如果改为将数据移到高速缓冲存储器,则随后的具有相同字线地址的DRAM簇命中将导致该数据必须从高速缓冲存储器移回到缓冲器。由于DRAM簇命中(缓冲器和高速缓冲存储器未中)为基于随机访问请求的统计上的最可能事件,所以其遵循:只要有可能减少移动操作的数目,就应当将数据从缓冲器移到DRAM簇。如果n表示系统中的DRAM簇的总数,而m表示每个DRAM簇的字线数目,则请求期间的缓冲命中的可能性小于2/(n*m),而高速缓冲存储器命中的可能性小于1/n。相反地,DRAM簇命中(缓冲器和高速缓冲存储器未中)的可能性约为(n-1)/n。因此,对于随机访问操作,n和m的值越大,则DRAM簇命中的可能性越大。可实现普通式下的初始化程序,作为更传统的系统。例如,可通过将用于高速缓冲存储器和缓冲器的所有有效标志设为“0”,而将所有有效数据置入常规的DRAM簇。
下面的方法概述了由普通式规则管理的数据传送操作。如果没有接收到随机访问请求,则将Di或Qi中的一个(如果缓冲器0或缓冲器1中存在其中的任一个)移回到各自的DRAM簇(DRAM簇D或DRAM簇Q)。如果接收了随机访问请求Xj,则最初在缓冲器0中可能有有效Di、在缓冲器1中可能有有效Qi、以及在高速缓冲存储器中可能有有效Cj,或所述三者的任意组合,如普通式规则中所概述的。可能的情况如下:
情况1-缓冲器命中
如同通过强读式规则,j=i,以及X=D或X=Q。也就是说,请求的数据已经通过限定存储在缓冲器0或缓冲器1中。由于已经满足用于可允许状态的普通式规则,此时钟周期中不实现进一步的数据传送。由图11(a)的状态图表中缺少变化可反映出此情况。
情况2-高速缓冲存储器命中
期望将请求的数据Xj从一个高速缓冲存储器簇中的其当前位置移到缓冲器1。如果在任一或全部两个缓冲器中的有任何有效数据,则只要可能,数据便将被优选地移出到对应的DRAM簇。和两个缓冲器的状态无关:
Xj从一个高速缓冲存储器簇(A或B)移到缓冲器1;
现在,如果两个缓冲器均包含有效数据,则进一步的操作为:
Di从缓冲器0移到另一个高速缓冲存储器簇(B或A);以及
Qi从缓冲器1移到DRAM簇Q。
另外,如果两个缓冲器中仅有一个包含有效数据,那么:
Di从缓冲器0移到另一个高速缓冲存储器簇(A或B);或者
Qi从缓冲器1移到另一个高速缓冲存储器簇(B或A)。
本质上,如果两个缓冲器最初均不包含有效数据,则除了将Xj从高速缓冲存储器移到缓冲器1之外,不执行附加操作。图11(b)和11(c)演示了上面的系列数据移动。
情况3a-缓冲未中,高速缓冲存储器未中,j=i,至少一个缓冲器具有有效数据
如果请求的数据既不在缓冲器中也不在高速缓冲存储器中,则其(Xj)在对应的DRAM簇中。假定最初至少一个缓冲器具有有效数据,并进一步假定j=i,如果存在Di或Qi,则X≠D及X≠Q也为真。因此,可在两个移动中执行遵循的操作,如图11(d)所示,其中假定存在Di:
Xj从DRAM簇X移到缓冲器0;
Di从缓冲器0移到DRAM簇D。
情况3b-缓冲器未中,高速缓冲存储器未中,j≠i,至少一个缓冲器具有有效数据
在此情况中,请求的数据再次位于对应的DRAM簇中。然而,请求的数据的字线地址不同于一个或所有两个缓冲器中的数据的字线地址。在可允许状态的普通规则下,可能存在存储于一个高速缓冲存储器簇中的用于行地址j的有效Cj。将首先假定最初Cj、Di和Qi每个都存在。同样,X≠D或X≠Q,或者X≠D且X≠Q必定为真。如果X≠D,则实现下面的步骤:
Xj从DRAM簇X移到缓冲器0;
Cj从一个高速缓冲存储器簇(A或B)移到缓冲器1;
Qi从缓冲器1移到另一个高速缓冲存储器簇(B或A);
Di从缓冲器0移到DRAM簇D。
然而,如果X=D,则X≠Q,则实现下面的步骤:
Xj从DRAM簇X移到缓冲器0;
Cj从一个高速缓冲存储器簇(A或B)移到缓冲器1;
Di从缓冲器0移到另一个高速缓冲存储器簇(B或A);
Qi从缓冲器1移到DRAM簇Q。
如果Cj存在,并且Di和Qi中仅有一个存在,则由于不存在对应的移动,所以不将这样的移动作为开始点。最终结果仍将遵循普通式规则。
接下来,将假定Cj不存在,但Di和Qi均存在。那么,如果X≠D,则实现下面的步骤:
Xj从DRAM簇X移到缓冲器0;
Qi从缓冲器1移到任一高速缓冲存储器簇(A或B);
Di从缓冲器0移到DRAM簇D。
另外,如果X=D,则X≠Q,则实现下面的步骤:
Xj从DRAM簇X移到缓冲器0;
Di从缓冲器0移到任一高速缓冲存储器簇(A或B);
Qi从缓冲器1移到DRAM簇Q。
现在,如果Cj不存在,并且,缓冲器中仅有一个有效数据页(Di存在或Qi存在,但不都存在),并且如果X不对应于缓冲器数据(X≠D或X≠Q),则实现下面的步骤:
Xj从DRAM簇移到缓冲器0;
有效缓冲器数据移到对应的DRAM簇。
否则,如果缓冲器中的一个有效数据页对应于X(X=D或X=Q),则实现下面的步骤:
Xj从DRAM簇移到缓冲器0;
有效缓冲器数据移到高速缓冲存储器簇(B或A)。
最后,如果Cj、Di或Qi均不存在,则执行的操作仅为:将Xj移入缓冲器0。
图11(e)和11(f)演示了该系列数据移动。
因此,已经示出了如何将破坏读取的、基于DRAM的高速缓冲存储器与破坏读取DRAM阵列相结合使用,以减少对该阵列的随机访问周期时间。在其它优点中,本系统提供了可观的面积节约、处理集成中的兼容、以及与诸如使用基于SRAM的高速缓冲存储器的系统的其它系统相比减少的软错误。
系统架构的一个具体的关键点包括双簇高速缓冲存储器结构,其中可运行同步的读和写访问操作。另外,该架构还包括两个缓冲器,其被用于对数据传送重定向。高速缓冲存储器标记和缓冲器标记包含与以当前状态存储的数据页的相关的所有信息,由此代表足够的信息,以此做出对下一个时钟周期的数据移动的确定性判定。因此,不需要将历史数据存储在任何标记中。
通过定义可允许状态的概念(如通过强读式规则和普通式规则所示例的),可设计路径无关算法,以便所有未来的数据移动仅取决于当前状态,而不是当前状态之前的历史。可将任意顺序的连续操作堆积在一起,并由此可无缝地执行所有随机访问。此外,请求的数据在有限数目周期内到达最终状态(也就是说,如果使用建立时间,则请求的数据在一个时钟周期内到达缓冲器,或者如果将一个时钟进程(pipe)用于标记比较,则请求的数据在两个时钟周期内到达缓冲器)。给定路径无关的属性,以及在有限周期期间完成随机存储请求的事实,则仅存在有限数目的测试情况。因此,DRAM高速缓冲存储器系统可通过测试台(test bench)设计来完整地校验。
如前所述,强读式规则下的可允许状态为普通式规则下的可允许状态的子集。因此,与强读式规则相结合使用的“对称算法”将通常包括较简单的逻辑,但导致更高的功率消耗。“低功率”算法具有较小的功率耗散,但通常具有更多的逻辑组件,同时有更多与其相关的标记比较时间。然而,应当注意,只要保持路径无关,本发明的实施例还可考虑可允许状态的其它可能规则和相关算法。
进一步考虑到,对于由破坏读取存储器高速缓冲的当前的破坏读取随机访问存储器系统,用作高速缓冲存储器的DRAM簇的数目可多于两个。缓冲器数目也可为多于两个。任意附加的高速缓冲存储器簇和缓冲器可与替换架构相结合、或以与核心不同的诸如多循环等待时间的操作配置来使用。对于使用两倍快速的周期时间的高速缓冲存储器的系统,高速缓冲存储器簇的数目还可减少到一个。如果在其它地方,如在本地DRAM阵列中或在全局数据再驱动器(re-driver)提供了锁存功能,则缓冲器可被替换为多路复用器。在不太关心芯片面积的场合,也可将上面的架构和/或算法应用到基于SRAM高速缓冲存储器的系统。为使操作在高速缓冲存储器等待时间上有更多余量(margin)、或为了可能的更好的冗余处理、或为了其它性能或定时问题,还可将上面的架构和/或算法应用到基于单端口或双端口SRAM高速缓冲存储器的系统。
尽管已通过参照优选实施例描述了本发明,但本领域的技术人员应当理解,可做出各种变化,并且可将其中的元件替换为等价物,而不背离本发明的范围。另外,可做出许多修改,以使具体情况或材料适合于本发明的教导,而不背离其本质范围。因此,有意使本发明不限于作为考虑到实现本发明的最佳模式而公开的具体的实施例,而本发明将包括所有落入所附权利要求的范围中的实施例。

Claims (32)

1、一种存储器存储系统,包括:
多个存储器存储簇;以及
与所述多个存储器存储簇通信的高速缓冲存储器;
其中所述多个存储器存储簇以及所述高速缓冲存储器还包括破坏读取存储器存储元件;
与所述多个存储器存储簇和所述高速缓冲存储器通信的线缓冲器结构。
2、如权利要求1所述的存储器存储系统,其中,所述破坏读取存储器存储元件包括动态随机访问存储器存储单元。
3、如权利要求1所述的存储器存储系统,其中,所述高速缓冲存储器包括所述多个存储器存储簇的一部分。
4、如权利要求1所述的存储器存储系统,还包括:
与所述线缓冲器结构相关的缓冲器标记;以及
与所述高速缓冲存储器相关的高速缓冲存储器标记。
5、如权利要求4所述的存储器存储系统,其中,所述线缓冲器结构包括一对缓冲器。
6、如权利要求5所述的存储器存储系统,其中:
所述多个存储器存储簇还包括数目为n的DRAM存储簇,所述n个DRAM存储簇的每一个具有与其相关的数目为m的字线;以及
所述高速缓冲存储器还包括一对DRAM高速缓冲存储器簇,所述一对DRAM高速缓冲存储器簇的每一个具有与其相关的所述数目为m的字线。
7、如权利要求6所述的存储器存储系统,其中,所述一对缓冲器中的每个均能够在其中存储数据页,所述数据页包括从选择的DRAM存储簇的所选字线、或选择的DRAM高速缓冲存储器簇的所选字线破坏读取的数据位。
8、如权利要求7所述的存储器存储系统,其中,可将原始包含在所述数目的DRAM存储簇的一个中的数据存储在所述一对DRAM高速缓冲存储器簇的一个中。
9、如权利要求8所述的存储器存储系统,其中,将与所述数目的DRAM存储簇原始相关的所述一对DRAM高速缓冲存储器簇中包含的任意数据通过直接映射方案存储在其中;
其中,将与所述数目的DRAM存储簇中的一个之内的给定字线地址相关的数据存储在所述一对DRAM高速缓冲存储器簇的一个之内的所述给定字线地址内。
10、如权利要求7所述的存储器存储系统,其中,所述一对缓冲器中的每个包括电平敏感锁存器。
11、一种动态随机访问存储器DRAM系统,包括:
n个DRAM存储簇,所述n个DRAM存储簇的每一个具有与其相关的m个字线;
高速缓冲存储器,所述高速缓冲存储器包括第一DRAM高速缓冲存储器簇和第二DRAM高速缓冲存储器簇,所述第一DRAM高速缓冲存储器簇和所述第二DRAM高速缓冲存储器簇均具有与其相关的所述数目m的字线;
线缓冲器结构,所述线缓冲器结构包括能够存储从所述DRAM存储簇和所述第一和第二DRAM高速缓冲存储器簇读取的数据的一对缓冲器;和
控制算法,用于控制在所述DRAM存储簇、所述一对缓冲器和所述DRAM高速缓冲存储器簇之间传送数据;
其中从所述DRAM存储簇和所述DRAM高速缓冲存储器簇读取的数据被破坏地读取。
12、如权利要求11所述的DRAM系统,还包括:
高速缓冲存储器标记,用于存储包含在所述DRAM高速缓冲存储器簇的给定字线内的数据的DRAM存储簇地址信息;以及
缓冲器标记,用于存储包含在所述一对缓冲器内的数据的DRAM存储簇地址信息。
13、如权利要求12所述的DRAM系统,其中所述缓冲器标记还包括:
第一标志,其指明所述一对缓冲器内是否存在有效数据;以及
第二标志,其指明随机请求的数据是否包含在所述一对缓冲器中的任一个中。
14、如权利要求11所述的DRAM系统,还包括:
数据输入总线,所述数据输入总线用于通过所述缓冲器结构,将外部始发数据接收到DRAM系统;
数据输出总线,所述数据输出总线用于将内部存储的数据传送出DRAM系统;
读取二级数据线,用于将来自所述DRAM存储簇的数据传送到所述一对缓冲器中的一个;
高速缓冲存储器读取二级数据线,用于将来自所述DRAM高速缓冲存储器簇的数据传送到所述一对缓冲器中的另一个;
写入二级数据线,用于将来自所述一对缓冲器中的任一个的数据传送到所述DRAM存储簇;以及
高速缓冲存储器写入二级数据线,用于将来自所述一对缓冲器中的任一个的数据传送到所述DRAM高速缓冲存储器簇。
15、如权利要求14所述的DRAM系统,其中,所述一对缓冲器还包括电平敏感存储锁存器。
16、如权利要求14所述的DRAM系统,其中,所述一对缓冲器还包括边缘触发锁存器。
17、如权利要求14所述的DRAM系统,其中,所述系统的控制算法包括:
定义的一组可允许状态,用于存在于所述DRAM存储簇、所述一对缓冲器、以及所述DRAM高速缓冲存储器簇内的有效数据;
用于在对存储于所述DRAM存储簇内的数据的第一次随机访问请求之前初始化DRAM系统的步骤,其中所述用于初始化的步骤遵循所述定义的一组可允许状态;以及
在所述对数据的第一次随机访问请求之后、以及在其后对数据的任意随后的随机访问请求之后,用于确保请求的数据在所述线缓冲器结构中成为可用的步骤,所述用于确保的步骤也遵循所述定义的一组可允许状态。
18、如权利要求17所述的DRAM系统,其中:
所述用于确保请求的数据在所述缓冲器结构中成为可用的步骤还包括:在所述DRAM存储簇和线缓冲器结构之间、以及在所述DRAM高速缓冲存储器簇和所述线缓冲器结构之间运行的、确定的一系列数据传送操作;
其中,所述确定的一系列数据传送操作为路径无关的,其特征在于,所述确定的一系列数据传送操作不取决于存储在所述DRAM存储簇、所述线缓冲器结构、以及所述高速缓冲存储器中的数据的先前位置。
19、一种用于控制数据在动态随机访问存储器DRAM系统内的移动的方法,所述系统具有数目为n的DRAM存储簇、线缓冲器结构以及高速缓冲存储器,所述方法包括:
定义的一组可允许状态,用于存在于存储簇、缓冲器结构、以及高速缓冲存储器内的有效数据;
在对存储于DRAM存储簇内的数据的第一次随机访问请求之前,初始化DRAM系统,其中所述初始化遵循所述定义的一组可允许状态;以及
在对数据的所述第一次随机访问请求之后、以及在其后对数据的任意随后的随机访问请求之后,确保请求的数据在所述缓冲器结构中成为可用;
其中,在所述确保请求的数据在所述缓冲器结构中成为可用之后,支持所述一组可允许状态。
20、如权利要求19所述的方法,其中:
所述确保请求的数据在所述缓冲器结构中成为可用还包括:在DRAM存储簇和缓冲器之间、以及在高速缓冲存储器和缓冲器之间运行确定的一系列数据传送操作;
其中,所述确定的一系列数据传送操作是路径无关的,其特征在于,所述确定的一系列数据传送操作不取决于存储在DRAM存储簇、缓冲器结构、以及高速缓冲存储器中的数据的先前位置。
21、如权利要求20所述的方法,其中:
n个DRAM存储簇中的每一个具有数目m的与其相关的字线以及与其相关的存储簇地址;
高速缓冲存储器包括第一高速缓冲存储器簇和第二高速缓冲存储器簇,所述第一和第二高速缓冲存储器簇也具有与其相关的m个字线;以及
缓冲器结构包括:第一缓冲器和第二缓冲器,所述第一和第二缓冲器每一个都能够在其中存储数据字,所述数据字包括来自于特定字线、从DRAM存储簇中的一个、或所述第一和第二高速缓冲存储器簇中的一个读取的数据。
22、如权利要求20所述的方法,其中所述定义的一组可允许状态还包括在给定的时钟周期的开始确保:
所述缓冲器结构包括第一和第二缓冲器,所述第一和第二缓冲器的每一个在其中包含有效数据,所述第一缓冲器中的所述有效数据具有与所述第二缓冲器中的所述有效数据相同的字线地址i,其中i为0和m之间的任意数;
在具有等于i的字线地址的所述第一或第二高速缓冲存储器簇中,没有有效数据;以及
对于除了i之外的所有其它字线地址,有一个数据字存储在所述第一高速缓冲存储器簇或所述第二高速缓冲存储器簇中的对应字线中。
23、如权利要求22所述的方法,其中所述确保请求的数据在所述缓冲器结构中成为可用包括:直到所述给定的时钟周期的结束,确保:
对应于存储簇地址X、以及字线地址j的请求的数据被包含于所述第一和第二缓冲器中的一个中,其中X为0和n-1之间的任意数,j为0和m之间的任意数;
所述第一和第二缓冲器中的另一个包含:具有字线地址j、但不同于X的存储簇地址的数据;
在具有等于j的字线地址的所述第一或第二高速缓冲存储器簇中,没有有效数据;以及
对于除了j之外的所有其它字线地址,有一个数据字存储在所述第一高速缓冲存储器簇或所述第二高速缓冲存储器簇中的对应字线中。
24、如权利要求23所述的方法,其中所述确保请求的数据在所述缓冲器结构中成为可用还包括:
确定是否最初在对应的DRAM簇、所述第一和第二缓冲器中的一个、或所述第一和第二高速缓冲存储器簇中的一个中找到请求的数据;
其中所述运行确定的一系列数据传送操作取决于请求的数据的初始位置。
25、一种用于控制数据在破坏读取动态随机访问存储器DRAM系统内移动的方法,所述系统具有数目n的DRAM存储簇、线缓冲器结构以及破坏读取DRAM高速缓冲存储器,所述方法包括:
定义的一组可允许状态,用于存在于存储簇、缓冲器结构、以及高速缓冲存储器内的有效数据;
在对存储于DRAM存储簇内的数据的第一次随机访问请求之前,初始化DRAM系统,其中所述初始化遵循所述定义的一组可允许状态;以及
在对数据的所述第一次随机访问请求之后、以及在其后对数据的任意随后的随机访问请求之后,确保请求的数据在所述缓冲器结构中成为可用;
其中在所述确保请求的数据在所述缓冲器结构中成为可用之后,支持所述一组可允许状态。
26、如权利要求25所述的方法,其中:
所述确保请求的数据在所述缓冲器结构中成为可用还包括:在DRAM存储簇和缓冲之间、以及在高速缓冲存储器和缓冲器之间运行确定的一系列数据传送操作;
其中所述确定的一系列数据传送操作与路径无关,其特征在于,所述确定的一系列数据传送操作不取决于存储在DRAM存储簇、缓冲器结构、以及高速缓冲存储器中的数据的先前位置。
27、如权利要求26所述的方法,其中:
n个DRAM存储簇中的每一个具有数目m的与其相关的字线以及与其相关的存储簇地址;
高速缓冲存储器包括第一高速缓冲存储器簇和第二高速缓冲存储器簇,所述第一和第二高速缓冲存储器簇还具有与其相关的m个字线;以及
缓冲器结构包括:第一缓冲器和第二缓冲器,所述第一和第二缓冲器中的每一个能够在其中存储数据字,所述数据字包括来自于特定字线、从DRAM存储簇中的一个或所述第一和第二高速缓冲存储器簇中的一个读取的数据。
28、如权利要求27所述的方法,其中所述定义的一组可允许状态还包括在给定的时钟周期的开始确保:
所述第一和第二缓冲器中的每一个在其中包含有效数据,所述第一缓冲器中的所述有效数据具有与所述第二缓冲器中的所述有效数据相同的字线地址i,其中i为0和m之间的任意数;
在具有等于i的字线地址的所述第一或第二高速缓冲存储器簇中没有有效数据;以及
对于除了i之外的所有其它字线地址,有一个数据字存储在所述第一高速缓冲存储器簇或所述第二高速缓冲存储器簇中的对应字线中。
29、如权利要求28所述的方法,其中所述确保请求的数据在所述缓冲器结构中成为可用包括:直到所述给定的时钟周期的结束,确保:
对应于存储簇地址X以及字线地址j的请求的数据被包含于所述第一和第二缓冲器中的一个中,其中X为0和n-1之间的任意数,j为0和m之间的任意数;
所述第一和第二缓冲器中的另一个包含:具有字线地址j、但不同于X的存储簇地址的数据;
在具有等于j的字线地址的所述第一或所述第二高速缓冲存储器簇中没有有效数据;以及
对于除了j之外的所有其它字线地址,有一个数据字存储在所述第一高速缓冲存储器簇或所述第二高速缓冲存储器簇中的对应字线中。
30、如权利要求29所述的方法,其中所述确保请求的数据在所述缓冲器结构中成为可用还包括:
确定是否最初在对应的DRAM簇、所述第一和第二缓冲器中的一个、或所述第一和第二高速缓冲存储器簇中的一个中找到请求的数据;
其中所述运行确定的一系列数据传送操作取决于请求数据的初始位置。
31、如权利要求27所述的方法,其中所述定义的一组可允许状态还包括:在给定的时钟周期的开始确保:
如果所述第一和第二缓冲器的每一个在其中包含有效数据,则所述第一缓冲器中的所述有效数据与所述第二缓冲器中的所述有效数据有相同的字线地址i,其中i为0到m之间的任意数;
如果所述第一和第二缓冲器在其中均包含有效数据、或者如果所述第一和第二缓冲器中的一个在其中包含字线地址为i的有效数据,则在具有等于i的字线地址的所述第一或所述第二高速缓冲存储器簇中没有有效数据;和
如果所述第一和第二缓冲器的任一个或两个缓冲器均包含字线地址为i的有效数据,则对于除了i之外的所有其它字线地址,有一个数据字存储在所述第一高速缓冲存储器簇或所述第二高速缓冲存储器簇中的对应字线中。
32、如权利要求31所述的方法,其中所述确保请求的数据在所述缓冲器结构中成为可用包括:直到所述给定的时钟周期的结束,确保:
对应于存储簇地址X以及字线地址j的请求的数据被包含于所述第一和第二缓冲器中的一个中,其中X为0和n-1之间的任意数,j为0和m之间的任意数;
在具有等于j的字线地址的所述第一或所述第二高速缓冲存储器簇中没有有效数据;以及
对于除了j之外的所有其它字线地址,有一个数据字存储在所述第一高速缓冲存储器簇或所述第二高速缓冲存储器簇中的对应字线中。
CNB038092697A 2002-04-25 2003-04-07 用破坏读取高速缓冲存储器来缓冲的破坏读取随机访问存储器系统 Expired - Fee Related CN1296832C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/063,466 2002-04-25
US10/063,466 US6801980B2 (en) 2002-04-25 2002-04-25 Destructive-read random access memory system buffered with destructive-read memory cache

Publications (2)

Publication Number Publication Date
CN1650270A CN1650270A (zh) 2005-08-03
CN1296832C true CN1296832C (zh) 2007-01-24

Family

ID=29248086

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB038092697A Expired - Fee Related CN1296832C (zh) 2002-04-25 2003-04-07 用破坏读取高速缓冲存储器来缓冲的破坏读取随机访问存储器系统

Country Status (10)

Country Link
US (3) US6801980B2 (zh)
EP (1) EP1497733B1 (zh)
JP (1) JP4150718B2 (zh)
KR (1) KR100772998B1 (zh)
CN (1) CN1296832C (zh)
AT (1) ATE513264T1 (zh)
AU (1) AU2003234695A1 (zh)
IL (1) IL164726A0 (zh)
TW (1) TW594740B (zh)
WO (1) WO2003091883A1 (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100541366B1 (ko) * 2002-07-19 2006-01-16 주식회사 하이닉스반도체 고속 데이터 억세스를 위한 디램
DE10317162B4 (de) * 2003-04-14 2010-02-11 Qimonda Ag Speichervorrichtung mit kurzer Wortleitungszykluszeit und Leseverfahren hierzu
US20040221117A1 (en) * 2003-05-02 2004-11-04 Shelor Charles F. Logic and method for reading data from cache
US20050114588A1 (en) * 2003-11-26 2005-05-26 Lucker Jonathan C. Method and apparatus to improve memory performance
JP2006190402A (ja) * 2005-01-07 2006-07-20 Renesas Technology Corp 半導体装置
KR100672029B1 (ko) * 2005-05-27 2007-01-19 삼성전자주식회사 Dram히든 리프레쉬 동작 시 발생되는 동작 시간 지연을감소시킬 수 있는 장치와 방법
KR100970946B1 (ko) 2008-02-05 2010-07-20 부경대학교 산학협력단 플래시 메모리 기반 임베디드 데이터베이스 시스템의지연쓰기 방법 및 그를 위한 시스템
US9442846B2 (en) * 2009-03-17 2016-09-13 Cisco Technology, Inc. High speed memory systems and methods for designing hierarchical memory systems
US8266408B2 (en) * 2009-03-17 2012-09-11 Memoir Systems, Inc. System and method for storing data in a virtualized high speed memory system
US8433880B2 (en) 2009-03-17 2013-04-30 Memoir Systems, Inc. System and method for storing data in a virtualized high speed memory system
WO2011075167A1 (en) * 2009-12-15 2011-06-23 Memoir Systems,Inc. System and method for reduced latency caching
CN102939590B (zh) * 2010-06-11 2016-09-14 飞思卡尔半导体公司 为在存储器元件内存储的数据提供数据保护的方法及其集成电路器件
EP3188188B1 (en) 2011-01-31 2021-09-01 Everspin Technologies, Inc. Self-refrence read method of a spin torque magnetic random access memory
US8675442B2 (en) 2011-10-04 2014-03-18 Qualcomm Incorporated Energy efficient memory with reconfigurable decoding
CN104484239B (zh) * 2014-12-05 2019-02-26 深圳市华宝电子科技有限公司 一种车载视频文件修复方法及装置
US10866897B2 (en) * 2016-09-26 2020-12-15 Samsung Electronics Co., Ltd. Byte-addressable flash-based memory module with prefetch mode that is adjusted based on feedback from prefetch accuracy that is calculated by comparing first decoded address and second decoded address, where the first decoded address is sent to memory controller, and the second decoded address is sent to prefetch buffer
US10650899B2 (en) * 2017-04-27 2020-05-12 Everspin Technologies, Inc. Delayed write-back in memory with calibration support
JP2019079377A (ja) 2017-10-26 2019-05-23 東芝メモリ株式会社 半導体記憶装置
KR20200091184A (ko) 2019-01-22 2020-07-30 에스케이하이닉스 주식회사 반도체 메모리 장치
US11899590B2 (en) * 2021-06-18 2024-02-13 Seagate Technology Llc Intelligent cache with read destructive memory cells

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4725945A (en) * 1984-09-18 1988-02-16 International Business Machines Corp. Distributed cache in dynamic rams
US5544306A (en) * 1994-05-03 1996-08-06 Sun Microsystems, Inc. Flexible dram access in a frame buffer memory and system
CN1206150A (zh) * 1996-12-24 1999-01-27 国际商业机器公司 改良的高速缓存系统
US6018763A (en) * 1997-05-28 2000-01-25 3Com Corporation High performance shared memory for a bridge router supporting cache coherency
US6081872A (en) * 1997-07-07 2000-06-27 International Business Machines Corporation Cache reloading performance improvement through the use of early select techniques with and without pipelining
US6161208A (en) * 1994-05-06 2000-12-12 International Business Machines Corporation Storage subsystem including an error correcting cache and means for performing memory to memory transfers
US6178479B1 (en) * 1999-02-22 2001-01-23 Nband Communications Cycle-skipping DRAM for power saving
US6205076B1 (en) * 1998-03-27 2001-03-20 Fujitsu Limited Destructive read type memory circuit, restoring circuit for the same and sense amplifier

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5434530A (en) * 1990-05-02 1995-07-18 Microelectronics & Computer Technology Corporation Superconducting semiconducting cross-bar circuit
JPH08278916A (ja) * 1994-11-30 1996-10-22 Hitachi Ltd マルチチャネルメモリシステム、転送情報同期化方法及び信号転送回路
US5629889A (en) * 1995-12-14 1997-05-13 Nec Research Institute, Inc. Superconducting fault-tolerant programmable memory cell incorporating Josephson junctions
US5838943A (en) * 1996-03-26 1998-11-17 Advanced Micro Devices, Inc. Apparatus for speculatively storing and restoring data to a cache memory
EP1020868A4 (en) 1997-02-17 2006-10-04 Hitachi Ltd INTEGRATED SEMICONDUCTOR CIRCUIT ARRANGEMENT
US5801996A (en) * 1997-02-26 1998-09-01 Micron Technology, Inc. Data path for high speed high bandwidth DRAM
US6378110B1 (en) * 1998-03-31 2002-04-23 Synopsys, Inc. Layer-based rule checking for an integrated circuit layout
JP3786521B2 (ja) * 1998-07-01 2006-06-14 株式会社日立製作所 半導体集積回路及びデータ処理システム
JP3374967B2 (ja) 1998-10-26 2003-02-10 日本電気株式会社 半導体集積回路
KR100326939B1 (ko) 1999-09-02 2002-03-13 윤덕용 고속 열 사이클이 가능한 메모리의 파이프라인 구조
JP3863330B2 (ja) 1999-09-28 2006-12-27 株式会社東芝 不揮発性半導体メモリ
JP4427847B2 (ja) * 1999-11-04 2010-03-10 エルピーダメモリ株式会社 ダイナミック型ramと半導体装置
JP4535563B2 (ja) 2000-04-28 2010-09-01 ルネサスエレクトロニクス株式会社 半導体記憶装置
US6697909B1 (en) * 2000-09-12 2004-02-24 International Business Machines Corporation Method and apparatus for performing data access and refresh operations in different sub-arrays of a DRAM cache memory
DE60132382T2 (de) * 2000-12-20 2008-07-24 Fujitsu Ltd., Kawasaki Multiportspeicher auf Basis von DRAM
US6829682B2 (en) * 2001-04-26 2004-12-07 International Business Machines Corporation Destructive read architecture for dynamic random access memories
US6587388B2 (en) * 2001-04-27 2003-07-01 International Business Machines Corporation Method and apparatus for reducing write operation time in dynamic random access memories
US6711078B2 (en) * 2002-07-01 2004-03-23 International Business Machines Corporation Writeback and refresh circuitry for direct sensed DRAM macro

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4725945A (en) * 1984-09-18 1988-02-16 International Business Machines Corp. Distributed cache in dynamic rams
US5544306A (en) * 1994-05-03 1996-08-06 Sun Microsystems, Inc. Flexible dram access in a frame buffer memory and system
US6161208A (en) * 1994-05-06 2000-12-12 International Business Machines Corporation Storage subsystem including an error correcting cache and means for performing memory to memory transfers
CN1206150A (zh) * 1996-12-24 1999-01-27 国际商业机器公司 改良的高速缓存系统
US6018763A (en) * 1997-05-28 2000-01-25 3Com Corporation High performance shared memory for a bridge router supporting cache coherency
US6081872A (en) * 1997-07-07 2000-06-27 International Business Machines Corporation Cache reloading performance improvement through the use of early select techniques with and without pipelining
US6205076B1 (en) * 1998-03-27 2001-03-20 Fujitsu Limited Destructive read type memory circuit, restoring circuit for the same and sense amplifier
US6178479B1 (en) * 1999-02-22 2001-01-23 Nband Communications Cycle-skipping DRAM for power saving

Also Published As

Publication number Publication date
JP4150718B2 (ja) 2008-09-17
US20050226083A1 (en) 2005-10-13
EP1497733B1 (en) 2011-06-15
TW594740B (en) 2004-06-21
WO2003091883A1 (en) 2003-11-06
US6801980B2 (en) 2004-10-05
US7203794B2 (en) 2007-04-10
JP2005524146A (ja) 2005-08-11
KR20040105805A (ko) 2004-12-16
IL164726A0 (en) 2005-12-18
US20030204667A1 (en) 2003-10-30
KR100772998B1 (ko) 2007-11-05
AU2003234695A1 (en) 2003-11-10
CN1650270A (zh) 2005-08-03
TW200305882A (en) 2003-11-01
EP1497733A4 (en) 2008-04-30
US20040221097A1 (en) 2004-11-04
EP1497733A1 (en) 2005-01-19
US6948028B2 (en) 2005-09-20
ATE513264T1 (de) 2011-07-15

Similar Documents

Publication Publication Date Title
CN1296832C (zh) 用破坏读取高速缓冲存储器来缓冲的破坏读取随机访问存储器系统
TW201117019A (en) Switched interface stacked-die memory architecture
CN1677565A (zh) 进行高速缓存读取的方法和器件
CN1770320A (zh) 控制存储器的存取和刷新的系统和方法
CN1934541A (zh) 采用压缩的缓存线的信息价值的多处理器计算系统以及能够在所述系统中使用的处理器
CN1241753A (zh) 半导体集成电路和数据处理系统
US11347665B2 (en) Memory module threading with staggered data transfers
US20060271755A1 (en) Memory module, cache system and address conversion method
US6990043B2 (en) Semiconductor integrated circuit device having a common DRAM block accessed by a plurality of logic circuits
CN1885277A (zh) Dram芯片设备以及包括该设备的多芯片封装
CN1716453A (zh) 在主机和非易失性存储设备间进行缓冲的多端口存储设备
KR100613941B1 (ko) 커맨드당 포스트된 라이트를 갖는 메모리 장치
US20050259479A1 (en) Semiconductor memory device and signal processing system
JP2010157130A (ja) メモリシステム
US11561715B2 (en) Method and apparatus for presearching stored data
CN1992075A (zh) 地址转换器半导体器件和具有它的半导体存储器件
JP2018163434A (ja) メモリシステム
CN1512509A (zh) 应用非易失性铁电存储器的交错控制装置
JP2016181025A (ja) メモリデバイスおよび情報処理装置
WO1998036419A1 (fr) Dispositif circuit integre a semi-conducteur
US6769047B2 (en) Method and system for maximizing DRAM memory bandwidth through storing memory bank indexes in associated buffers
EP1408508A1 (en) Storage device
CN1702771A (zh) 半导体存储器件及其操作方法
US11894096B2 (en) Memory systems for high speed scheduling
CN1377040A (zh) 半导体存储器装置及信息处理系统

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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070124

Termination date: 20120407