CN1308841C - 进行循环和锁存高速缓冲存储器替换方案的方法和设备 - Google Patents

进行循环和锁存高速缓冲存储器替换方案的方法和设备 Download PDF

Info

Publication number
CN1308841C
CN1308841C CNB008180415A CN00818041A CN1308841C CN 1308841 C CN1308841 C CN 1308841C CN B008180415 A CNB008180415 A CN B008180415A CN 00818041 A CN00818041 A CN 00818041A CN 1308841 C CN1308841 C CN 1308841C
Authority
CN
China
Prior art keywords
latch
equipment
group
locking
shift register
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 - Lifetime
Application number
CNB008180415A
Other languages
English (en)
Other versions
CN1415093A (zh
Inventor
L·T·克拉克
M·M·克拉克
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.)
Kaiwei International Co
Marvell International Ltd
Marvell Asia Pte Ltd
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Publication of CN1415093A publication Critical patent/CN1415093A/zh
Application granted granted Critical
Publication of CN1308841C publication Critical patent/CN1308841C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime 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
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • 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/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/126Replacement control using replacement algorithms with special data handling, e.g. priority of data or instructions, handling errors or pinning
    • 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/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]

Abstract

第一组寄存器以菊花链在一起,其中每个寄存器与高速缓冲存储器的一个特定行相关联;同样,第二组也以菊花链在一起,每个寄存器也与高速缓冲存储器的一行相关联。第一菊花链决定填充高速缓冲存储器行的顺序,第二菊花链决定锁定高速缓冲存储器行的顺序。

Description

进行循环和锁存高速缓冲存储 器替换方案的方法和设备
技术领域
本发明涉及高速缓冲存储器(cache)替换的方案,更具体的说是关于组合的循环高速缓冲存储器替换和高速缓冲存储器行锁定的方案。
背景技术
当有新数据集载入到高速缓冲存储器中时,决定具体哪一部分数据被替换的方案有很多。在直接映射高速缓冲存储器的方案中最受欢迎的是最近最少使用算法(LRU)。顾名思义,在LRU方案中,最近最少被使用的数据将被新进的数据替换。考虑到普遍存在的软件执行和数据使用的局域性,这个方案是相当有效的。然而,当集合结合性的增加时,由于LRU的复杂性和总开销其对硬件的要求也增加了,所以使这个方案变得不那么吸引人了。
另外,在没有独立解码器的基于内容可寻址存储器(CAM)的高速缓冲存储器中虽然实现了高集合结合性,但确定把数据写到哪里却变得更困难。已被采用的一种可行的办法是循环替换方案,这种方案中循环移位寄存器通过标识要加载的行进行循环。这样做对于丢弃高速缓冲存储器里最老的信息很有效,但是这种替换完全不依赖使用频率。这样就会导致大量的高速缓冲存储器重复移动。
其它的一些现有的防止数据被过早替换掉的方法就是允许通路锁定。这些系统没有提供大的粒度。例如一个两路高速缓冲存储器,即使只有很小一部分的数据需要保持,也会有一半的高速缓冲存储器被锁定。这就会导致高速缓冲存储器得不到有效的利用。
发明内容
第一组锁存器(latch)以菊花链在一起形成一个寄存器,其中每个锁存器与一特定高速缓冲存储器行相关联;类似的,第二组锁存器(latch)也以菊花链在一起形成一个寄存器,其中每个锁存器与一高速缓冲存储器行相关联。第一个寄存器决定填充高速缓冲存储器行的顺序,第二个寄存器决定锁定高速缓冲存储器行的顺序。
根据本发明的一个方面,一种用于进行循环和锁存高速缓冲存储器替换的设备,它包含:
第一移位寄存器里的相互连接在一起的第一组锁存器,所述第一组锁存器中的每个锁存器与高速缓冲存储器的一行相关联,该寄存器决定高速缓冲存储器行的填充顺序;和
第二移位寄存器里的相互连接在一起的第二组锁存器,所述第二组锁存器中的每个锁存器与一高速缓冲存储器行相关联,该寄存器决定高速缓冲存储器行的锁定顺序。
根据本发明的另一个方面,一种用于进行循环和锁存高速缓冲存储器替换的系统,其包含:
一个内容可寻址存储器阵列(CAM);
一个与内容可寻址存储器阵列相连的随机存取存储器(RAM);和
一个与内容可寻址存储器阵列相连的控制逻辑装置,对随机存取存储器里没有被锁定的行执行循环替换方案,同时使内容可寻址存储器阵列锁定随机存取存储器中的指定行。
根据本发明的再一个方面,一种用于进行循环和锁存高速缓冲存储器替换的方法,其包含:
定义一锁定起始行;
定义与锁定起始行隔一定距离的一填充起始行;和
每次加载一个锁定的时候,将填充指针重置到填充起始行。
附图说明
图1是该发明的一个实施例的方框图。
图2是该发明的一个实施例中的循环锁定逻辑的方框图。
图3是在八个循环周期内的一系列加载的范例。
图4是该发明的一个实施例中的一个信号子集的时序图。
具体实施方式
图1是该发明的一个实施例的方框图。通过内容可寻址存储器阵列(CAM)102来寻址访问随机存储器(RAM)104。CAM 102和RAM 104组合在一起可以是例如一个高速缓冲存储器、在一个实施例中可以更具体的为一个零级高速缓冲存储器,或者另一个实施例中也可以是一个翻译后援缓冲器(TLB)。在这两种例子中,CAM 102都含有相应的项的地址,该项可以是前一种情况中的一行代码或者数据,和后一种情况中的页面表项。两个例子中CAM项所包含的数据都被称为“标记”项。控制逻辑单元,例如循环和锁定逻辑模块100同CAM 102连接。当数据要被写到CAM 102和RAM 104时,控制逻辑单元负责控制CAM寻址的高速缓冲存储器所采用的替换方案,例如将对哪一行进行高速缓冲存储器的填充操作。CAM 102和RAM 104两个电路都采用专家们所熟知的方法写入。可以通过CAM 102内容可寻址的特性来访问CAM 102确定匹配项(如果对应的项存在的话)。如果找到对应项,就通过与RAM 104相连的读出放大器106从RAM 104读出数据,或者通过使用与在上述的填充操作期间对RAM 104进行写操作使用的相同电路对RAM 104执行写操作。一般来说,这种高速缓冲存储器电路结构比用RAM单元存储标记数据的典型结构具有消耗功率低的更可用特性。
循环和锁定逻辑模块100除了要接收加载请求外,还接收一些控制信号,包括锁定时钟,锁定选择,锁定清除和循环清除信号。当锁定时钟时表示此时的加载请求是锁定。当锁定时钟没有被确立时表示此时的加载请求是填充。在这里,锁定表示载入一个将要被锁定的行,而并不是由随后的加载把这一行覆盖掉。填充表示可以作为通常的高速缓冲存储器替换方案部分任意覆盖的加载,锁定清除用于清空锁定寄存器(将在后面进行深入讨论)以便允许随后的原来加载的锁定的再写入。循环清除将重新给循环寄存器(也将在后面进行深入讨论)设定一个预定值。锁定选择信号被用作对一组多路复用器进行模式选择,其中复用器在循环寄存器和锁定寄存器之中选择信号使字线使能。
图2是该发明的一个实施例的循环锁定逻辑方框图。一组循环锁存器212,214,216,210中的每一个都与高速缓冲存储器的一行相关联。这个实施例中,可以假设排列中有32行。但更多或更少的行(并且因此这些锁存器)都在这个发明的范畴和考虑之中。因此,这32个循环锁存器就组成了循环寄存器200。第二组锁存器230,232,234组成锁定寄存器202,每个锁存器关联一组高速缓冲存储器行的一行。在这个示出的实施例中,共有31个锁定锁存器可以允许锁定高速缓冲存储器的32行中的31行。通过防止一行或更多的行被锁死,该系统避免了有新数据需要加载进来时所有行都被锁定的死锁情况。这些锁定锁存器同循环锁存器一样以菊花链在一起。因此,锁定寄存器响应锁定时钟从阵列的顶部到底部强制规定了一个排序后的锁定序列。循环寄存器200使循环填充从阵列底部行开始,由阵列的最高未锁定行跟随,然后向下到底部填充并如此循环。可合并逻辑204保证填充不会覆盖被锁定的行。在一个实施例中,寄存器200和202是脉冲控制的锁存器,在另一个实施例中,他们是主从触发器。脉冲控制的锁存器是大范围有效的,但当如失真控制时间不够时会变得非常不稳定。
锁定寄存器包括相应于操作阵列中的字线31的起始锁存器230,它将输入连接到一个正电源上。这样,当锁定时钟被确立时,锁存器230的输出成为一个高电位,同样在图中被菊花链连接的锁存器232的输入也呈现一个高电位。采用脉冲控制的锁存器而非主从触发器出现在一个实施例中的一个问题是:为防止当锁定时钟被确立时锁存器230和232(或链中更多锁存器)被设置就必须在电路中设计足够的延迟。为了解决这个问题,在本发明的脉冲锁存器实施例中,锁定时钟为短的脉冲,它的时间足够一个锁定寄存器中的锁存器接收输入值,但时间短到足够可以避免使得连接到目标锁存器输出口的锁存器接收到相同的数据。这样,当锁定时钟下一次被确立时,锁存器232和230会在其输出口出现一个高电位。用这种方法,这个高值通过锁定寄存器202循环往下传,直到通过对锁定时钟进行31次确立后到达锁定锁存器234。此时,锁定寄存器202中所有31个锁存器都会存有逻辑1。
循环寄存器200的锁存器耦合在一块,这样在循环复位信号被确立后,除了锁存器210以外所有其它锁存器都被清除了。锁存器210是循环起始位,并被设置为对循环清除信号作出响应。当进行整个芯片的重新设置来初始化高速缓冲存储器时这个信号也会被确立。当锁存器210被设置时,填充必须从字线0开始。除了启动,循环复位信号被确立来响应锁定发生。这可以确保一个锁定位不会与循环位设成一致,否则将会造成逻辑非法,也就是选择一个已经被锁定的行作为下一个将要被填充的目标行。这个在进行锁定操作时设置底部不能被锁的替换位置的方案需要最少的逻辑。这个方案在高速缓冲存储器效率方面的含义将在后面讲到。
因此,在填充完字线0后,在合并逻辑204的帮助下,下一次填充的行被确定为没被锁定的最高行。如果字线31此时还没被锁定,锁存器230的输出将是“0”,它将被倒相器310倒相,并使得与门312将输出变为“1”,这也使得与门314向或门316的输出也为“1”,或门316驱使锁存器212使其输出一个高电位从而选择字线31。多路复用器208使用锁定选择信号来确定到底是循环寄存器还是锁定寄存器选择了字线。这样,在一个锁定操作中,通过多路复用器208和209从门312的输出中来选择字线(WL)。因此要确立的WL表示要被填充的锁定的行是基于先前的锁定锁存器被设定为逻辑1而现在的被设定为逻辑0的一致,从逻辑关系中可以看出,在对每个WL确立进行锁定操作之后会对锁定时钟进行确立。对于一个(非锁定)行填充,多路复用器208通过经由多路复用器209传递对应循环锁存器里的逻辑1到WL选择节点来确立WL。高电位的信号将作为一个指示下一填充行位置的指针在循环锁存器中传播。多路复用器209在多路复用器208的输出和CAM匹配信号之间进行选择,CAM匹配信号允许CAM在高速缓冲存储器使用CAM寻址做读写操作时确立WL选择。在另一个实施例中,解码器的输出将代替匹配信号来提供第二输入到多路复用器209。
值得一提的是,起始锁存器210是循环锁存器中唯一一个带高扇出的锁存器。在这里,“高”扇出被认为是将由具有扇出的装置的输出驱动的三个以上的输入。由于锁存器210必须为其它每个循环锁存器驱动一个输入信号,因此缓冲区206被用来对这些信号进行缓冲以容纳扇出。相反,其它循环锁存器只需向其最近的锁存器传送驱动信号。这样的结果就是它们可以保持的非常小。这正是我们想要的,因为高速缓冲存储器的每行有两个锁存器(在脉冲锁存器实施例中),TLB中为32个,但如果有很多高速缓冲存储器编号就会编到数千。体积小这一点正是我们采用具有锁存器存储元件作为脉冲锁存器而不用主从触发器的实施例的主要原因。在控制扇出的时候,装置的大小和相应电路的能耗都减小了。因为起始寄存器在底部,阵列的边缘是可以利用的,所以缓冲区的设计被简化了,这相应于CAM和RAM电路的读写电路区域。
图3是在八个循环周期内的一系列加载的范例。在第一周期里,填充一被加载到字线0中,填充指针被预先指到字线31。在第二周期里,填充二被加载到字线31中,填充指针被预先指到字线30。在第三周期里,填充三被加载到字线30中。接着在第四周期,锁定一被加载在锁定起始行(字线31),清除填充二并把填充指针重新指向字线0。在第五周期,锁定二被加载在下一个锁定行(字线30),清除填充三并再次把填充指针重新指向字线0。在第六周期,加载填充四,清除填充一,填充指针指向最高没被锁的行,即这个例子中的字线29。在第七周期,填充五填充字线29。在第八周期,锁定三踢开填充五,填充指针被重新指向字线0。以上仅是一个填充和锁定的例式。换句话说,如果锁定一、锁定二和锁定三在前三个周期里完成并且填充一到填充五在接着的五个周期里完成,则没有数据需要被清除出高速缓冲存储器。由此可见,适宜的软件设计可以去除每次锁定后重新开始填充所带来的潜在的不利之处。例如,软件可以在向高速缓冲存储器行填充之前将初始化时需要锁定的代码或数据事先锁定。事先锁定就缓解了锁定已预先加载到高速缓冲存储器中的代码行带来的潜在的负面影响。一个需要锁定的代码的例子就是进行紧急中断处理代码或者与此类似的那些需要快速响应的代码。但是,以上的描述仅仅是说明了这个发明的一个
实施例所进行的操作。
图4是该发明的一个实施例中的一个信号子集的时序图。脉冲时钟信号410被用在前面描述过的脉冲锁存器实施例中。该脉冲必须足够短使它落下的时候是在来自临近锁存器的信号传播到它附近之前。这样,循环锁存器(图2中的212)的输出如信号412所示。这个输出因响应脉冲时钟410而变高。必须在由信号414代表的或门(图1的336)的输出被确立成高之前根据信号412作用到或门使脉冲时钟410是低的。
在一个实施例中,一些都与循环和锁定逻辑单元相关的CAM被用来组成一个具有多个聚合体的高速缓冲存储器。每个聚合体各自独立,只在自己内部实现循环和锁定方案。
在前面这个说明中,本发明是参照它的具体实施例来描述的。然而,只要不脱离权利要求里列出的本发明的总的精神和范畴,还可以做很多修改和变动。这个说明和里面的图表因此只是说明性的而不是限制性的。

Claims (12)

1.一种用于进行循环和锁存高速缓冲存储器替换的设备,它包含:
第一移位寄存器里的相互连接在一起的第一组锁存器,所述第一组锁存器中的每个锁存器与高速缓冲存储器的一行相关联,该寄存器决定高速缓冲存储器行的填充顺序;和
第二移位寄存器中的相互连接在一起的第二组锁存器,所述第二组锁存器中的每个锁存器与一高速缓冲存储器行相关联,该寄存器决定高速缓冲存储器行的锁定顺序。
2.如权利要求1所述的设备,还包括:
一个对第一组锁存器中第一起始锁存器的输出进行放大的缓冲器,以驱动所述第一组锁存器里的每一其它锁存器的输入。
3.如权利要求2所述的设备,其中该第一组锁存器里的每一其它锁存器只驱动该锁存器组里它的后继者的输入。
4.如权利要求1所述的设备,其中第一组锁存器的数量和第二组锁存器的数量是不同的。
5.如权利要求1所述的设备,其中同第一组锁存器里的第一起始锁存器相关的高速缓冲存储器行的地址,与同第二组锁存器的第二起始锁存器相关的第二高速缓冲存储器行的地址差别最大。
6.如权利要求5所述的设备,还包括:
可将第一和第二组锁存器耦合在一块的一个组合逻辑设备,使得第二填充行可以与下一锁定行共同扩张。
7.如权利要求1所述的设备,其中第一组锁存器中只有一个锁存器有大于3的扇出。
8.如权利要求1所述的设备,其中高速缓冲存储器是一个翻译后援缓存器。
9.如权利要求1所述的设备,其中将要被锁定的行在所述第二移位寄存器的先前的锁定锁存器位为逻辑1而且当前位为逻辑0这两个条件都满足的情况下就能被确定。
10.如权利要求1所述的设备,其中第一移位寄存器被设置为循环缓存器。
11.如权利要求10所述的设备,其中第一移位寄存器里循环移位的长度通过对第二移位寄存器里的位进行设置来确定。
12.如权利要求1所述的设备,其中,每个锁存器都包括一个主从触发器。
CNB008180415A 1999-12-30 2000-11-27 进行循环和锁存高速缓冲存储器替换方案的方法和设备 Expired - Lifetime CN1308841C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/476,444 US6516384B1 (en) 1999-12-30 1999-12-30 Method and apparatus to perform a round robin and locking cache replacement scheme
US09/476,444 1999-12-30

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN200710084018.4A Division CN101008924B (zh) 1999-12-30 2000-11-27 进行循环和锁存高速缓冲存储器替换方案的方法和设备

Publications (2)

Publication Number Publication Date
CN1415093A CN1415093A (zh) 2003-04-30
CN1308841C true CN1308841C (zh) 2007-04-04

Family

ID=23891874

Family Applications (2)

Application Number Title Priority Date Filing Date
CN200710084018.4A Expired - Lifetime CN101008924B (zh) 1999-12-30 2000-11-27 进行循环和锁存高速缓冲存储器替换方案的方法和设备
CNB008180415A Expired - Lifetime CN1308841C (zh) 1999-12-30 2000-11-27 进行循环和锁存高速缓冲存储器替换方案的方法和设备

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN200710084018.4A Expired - Lifetime CN101008924B (zh) 1999-12-30 2000-11-27 进行循环和锁存高速缓冲存储器替换方案的方法和设备

Country Status (8)

Country Link
US (1) US6516384B1 (zh)
JP (1) JP2004538536A (zh)
KR (1) KR100476446B1 (zh)
CN (2) CN101008924B (zh)
AU (1) AU3793601A (zh)
GB (1) GB2374178B (zh)
TW (1) TW518464B (zh)
WO (1) WO2001050269A2 (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6694408B1 (en) * 2000-05-01 2004-02-17 Javier Villagomez Scalable replacement method and system in a cache memory
US6772199B1 (en) * 2000-09-14 2004-08-03 International Business Machines Corporation Method and system for enhanced cache efficiency utilizing selective replacement exemption
US6889349B2 (en) * 2001-08-22 2005-05-03 Hewlett-Packard Development Company, L.P. Digital event sampling circuit and method
JP4008946B2 (ja) * 2003-11-18 2007-11-14 松下電器産業株式会社 キャッシュメモリ及びその制御方法
US7650466B2 (en) * 2005-09-21 2010-01-19 Qualcomm Incorporated Method and apparatus for managing cache partitioning using a dynamic boundary
US7523260B2 (en) 2005-12-22 2009-04-21 International Business Machines Corporation Propagating data using mirrored lock caches
WO2007099616A1 (ja) * 2006-02-28 2007-09-07 Fujitsu Limited アドレス排他制御システムおよびアドレス排他制御方法
US8694737B2 (en) 2010-06-09 2014-04-08 Micron Technology, Inc. Persistent memory for processor main memory
US9448938B2 (en) 2010-06-09 2016-09-20 Micron Technology, Inc. Cache coherence protocol for persistent memories
US8613074B2 (en) 2010-09-30 2013-12-17 Micron Technology, Inc. Security protection for memory content of processor main memory
US9081514B2 (en) * 2010-12-14 2015-07-14 Stmicroelectronics S.R.L. Method for controlling operation of a memory using a single write location and an associated memory
TWI489344B (zh) * 2013-02-25 2015-06-21 Pixart Imaging Inc 觸控方法以及觸控裝置
CN105515565B (zh) * 2015-12-14 2018-07-13 天津光电通信技术有限公司 一种硬件逻辑资源复用模块及复用实现的方法
US9933947B1 (en) * 2015-12-30 2018-04-03 EMC IP Holding Company LLC Maintaining write consistency on distributed multiple page writes
FR3086409A1 (fr) * 2018-09-26 2020-03-27 Stmicroelectronics (Grenoble 2) Sas Procede de gestion de la fourniture d'informations, en particulier des instructions, a un microprocesseur et systeme correspondant
CN110727463B (zh) * 2019-09-12 2021-08-10 无锡江南计算技术研究所 一种基于动态信用的零级指令循环缓冲预取方法及装置
US11030104B1 (en) * 2020-01-21 2021-06-08 International Business Machines Corporation Picket fence staging in a multi-tier cache

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5029072A (en) * 1985-12-23 1991-07-02 Motorola, Inc. Lock warning mechanism for a cache
GB2284911A (en) * 1993-12-16 1995-06-21 Plessey Semiconductors Ltd Flexible lock-down cache.
US5928352A (en) * 1996-09-16 1999-07-27 Intel Corporation Method and apparatus for implementing a fully-associative translation look-aside buffer having a variable numbers of bits representing a virtual address entry
US5937429A (en) * 1997-04-21 1999-08-10 International Business Machines Corporation Cache memory having a selectable cache-line replacement scheme using cache-line registers in a ring configuration with a token indicator
CN1227932A (zh) * 1997-12-19 1999-09-08 日本电气株式会社 通过流水线控制访问的高速缓冲存储器系统及其访问方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4783735A (en) * 1985-12-19 1988-11-08 Honeywell Bull Inc. Least recently used replacement level generating apparatus
IL96808A (en) * 1990-04-18 1996-03-31 Rambus Inc Introductory / Origin Circuit Agreed Using High-Performance Brokerage
US5353425A (en) * 1992-04-29 1994-10-04 Sun Microsystems, Inc. Methods and apparatus for implementing a pseudo-LRU cache memory replacement scheme with a locking feature
US5408629A (en) * 1992-08-13 1995-04-18 Unisys Corporation Apparatus and method for controlling exclusive access to portions of addressable memory in a multiprocessor system
US5761712A (en) * 1995-06-07 1998-06-02 Advanced Micro Devices Data memory unit and method for storing data into a lockable cache in one clock cycle by previewing the tag array
US5787431A (en) * 1996-12-16 1998-07-28 Borland International, Inc. Database development system with methods for java-string reference lookups of column names
US5913224A (en) * 1997-02-26 1999-06-15 Advanced Micro Devices, Inc. Programmable cache including a non-lockable data way and a lockable data way configured to lock real-time data
US6044478A (en) * 1997-05-30 2000-03-28 National Semiconductor Corporation Cache with finely granular locked-down regions
US6098152A (en) * 1997-10-17 2000-08-01 International Business Machines Corporation Method and apparatus for miss sequence cache block replacement utilizing a most recently used state
US6151655A (en) * 1998-04-30 2000-11-21 International Business Machines Corporation Computer system deadlock request resolution using timed pulses
US6073182A (en) * 1998-04-30 2000-06-06 International Business Machines Corporation Method of resolving deadlocks between competing requests in a multiprocessor using global hang pulse logic
US6240489B1 (en) * 1999-02-24 2001-05-29 International Business Machines Corporation Method for implementing a pseudo least recent used (LRU) mechanism in a four-way cache memory within a data processing system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5029072A (en) * 1985-12-23 1991-07-02 Motorola, Inc. Lock warning mechanism for a cache
GB2284911A (en) * 1993-12-16 1995-06-21 Plessey Semiconductors Ltd Flexible lock-down cache.
US5928352A (en) * 1996-09-16 1999-07-27 Intel Corporation Method and apparatus for implementing a fully-associative translation look-aside buffer having a variable numbers of bits representing a virtual address entry
US5937429A (en) * 1997-04-21 1999-08-10 International Business Machines Corporation Cache memory having a selectable cache-line replacement scheme using cache-line registers in a ring configuration with a token indicator
CN1227932A (zh) * 1997-12-19 1999-09-08 日本电气株式会社 通过流水线控制访问的高速缓冲存储器系统及其访问方法

Also Published As

Publication number Publication date
GB2374178A (en) 2002-10-09
CN1415093A (zh) 2003-04-30
WO2001050269A3 (en) 2001-12-13
TW518464B (en) 2003-01-21
CN101008924A (zh) 2007-08-01
GB0215661D0 (en) 2002-08-14
KR100476446B1 (ko) 2005-03-16
WO2001050269A2 (en) 2001-07-12
AU3793601A (en) 2001-07-16
US6516384B1 (en) 2003-02-04
JP2004538536A (ja) 2004-12-24
CN101008924B (zh) 2015-05-13
KR20020097145A (ko) 2002-12-31
GB2374178B (en) 2004-08-25

Similar Documents

Publication Publication Date Title
CN1308841C (zh) 进行循环和锁存高速缓冲存储器替换方案的方法和设备
KR100244841B1 (ko) 캐쉬 메모리 및 그 동작 방법
US5339268A (en) Content addressable memory cell and content addressable memory circuit for implementing a least recently used algorithm
CN1120430C (zh) 具有可编程等待状态的微处理设备
US4008460A (en) Circuit for implementing a modified LRU replacement algorithm for a cache
US6496906B1 (en) Queue based memory controller
EP0817091B1 (en) System and method for parallelizing execution of memory transactions using multiple memory models
US5831931A (en) Address strobe recognition in a memory device
US4712190A (en) Self-timed random access memory chip
CN1118757C (zh) 同步流水线串存储器及其操作方法
US7617383B2 (en) Circular register arrays of a computer
CA2018065C (en) Data processing system with means to convert burst operations into pipelined operations
JP4298800B2 (ja) キャッシュメモリにおけるプリフェッチ管理
JPH06208503A (ja) メモリ制御装置及びメモリアレイに対してアクセスを実行する方法
US5329489A (en) DRAM having exclusively enabled column buffer blocks
US5729712A (en) Smart fill system for multiple cache network
JPS6230665B2 (zh)
EP0564813A1 (en) Bit line switch array for electronic computer memory
EP0166309A2 (en) Memory chip for a hierarchical memory system
US4796222A (en) Memory structure for nonsequential storage of block bytes in multi-bit chips
US5333291A (en) Stride enhancer for high speed memory accesses with line fetching mode and normal mode employing boundary crossing determination
GB2350910A (en) Status bits for cache memory
EP0337385B1 (en) Cache memory controller associated with a microprocessor
US4992979A (en) Memory structure for nonsequential storage of block bytes in multi bit chips
US6961280B1 (en) Techniques for implementing address recycling in memory circuits

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
ASS Succession or assignment of patent right

Owner name: MARVELL WORLD TRADING COMPANY LTD.

Free format text: FORMER OWNER: MIVEL INTERNATIONAL CO., LTD.

Effective date: 20071130

Owner name: MIVEL INTERNATIONAL CO., LTD.

Free format text: FORMER OWNER: INTEL CORP

Effective date: 20071130

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20071130

Address after: Babado J San Michael

Patentee after: INTEL Corp.

Address before: Bermuda Hamill

Patentee before: Marvell International Ltd.

Effective date of registration: 20071130

Address after: Bermuda Hamill

Patentee after: Marvell International Ltd.

Address before: California, USA

Patentee before: INTEL Corp.

C56 Change in the name or address of the patentee
CP01 Change in the name or title of a patent holder

Address after: Babado J San Michael

Patentee after: MARVELL WORLD TRADE Ltd.

Address before: Babado J San Michael

Patentee before: INTEL Corp.

C56 Change in the name or address of the patentee

Owner name: MARVELL INTERNATIONAL TRADING CO., LTD.

Free format text: FORMER NAME: MARVELL WORLD TRADING COMPANY LTD.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200424

Address after: Singapore City

Patentee after: Marvell Asia Pte. Ltd.

Address before: Ford street, Grand Cayman, Cayman Islands

Patentee before: Kaiwei international Co.

Effective date of registration: 20200424

Address after: Ford street, Grand Cayman, Cayman Islands

Patentee after: Kaiwei international Co.

Address before: Hamilton, Bermuda

Patentee before: Marvell International Ltd.

Effective date of registration: 20200424

Address after: Hamilton, Bermuda

Patentee after: Marvell International Ltd.

Address before: St Michael, Barbados

Patentee before: MARVELL WORLD TRADE Ltd.

CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20070404