CN102541756A - 高速缓冲存储器系统 - Google Patents

高速缓冲存储器系统 Download PDF

Info

Publication number
CN102541756A
CN102541756A CN2011103042411A CN201110304241A CN102541756A CN 102541756 A CN102541756 A CN 102541756A CN 2011103042411 A CN2011103042411 A CN 2011103042411A CN 201110304241 A CN201110304241 A CN 201110304241A CN 102541756 A CN102541756 A CN 102541756A
Authority
CN
China
Prior art keywords
data
error
cache memory
cache
mistake
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2011103042411A
Other languages
English (en)
Inventor
福田高利
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of CN102541756A publication Critical patent/CN102541756A/zh
Pending 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1064Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in cache or content addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • 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
    • 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
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了高速缓冲存储器系统。高速缓冲存储器在直写系统中操作,并且当相应数据未被存储在高速缓冲存储器中时,或者仅当虽然存在该数据但是发生错误时,当发生高速缓存未命中时将要执行的操作被执行。随后,指示之前已经发生软错误的比特被设置在高速缓冲存储器中,并且当该比特指示“1”时,如果再次发生错误,则判定已经发生硬件错误,并且在CPU中生成中断。该比特将以比认为发生软错误的频率短足够多的时间间隔被重置。

Description

高速缓冲存储器系统
技术领域
以下实施例涉及一种能够抑制软错误的影响的高速缓冲存储器。
背景技术
利用近来的先进半导体技术,半导体装置具有用于写入等的精细结构是大势所趋。然而,当半导体装置的写入等的电路越精细时,从外部接收的α射线和宇宙射线(中子束)引发电路的操作错误的可能性越高。对于存储器,已经生产出了具有大容量的小型存储器单元。然而,由于电路的结构是精细的,因此存在α射线和宇宙射线(中子束)引起所储存的数据中的错误的可能性。该错误被称为软错误。在主存储器和高速缓冲存储器二者中都可能引起软错误。
用于高速缓冲存储器的写系统可以是回写(write-back)系统和直写(write through)系统。已知的是,虽然回写系统的运算速度性能较高,但是回写系统的控制更为复杂。然而,对于软错误,直写系统在软错误方面是值得推荐的,这是因为在回写系统中,存储于高速缓冲存储器中的数据内容常常在过去长时间之后才被回写到主存储器中,并且作为存储器内容的数据可能被反转,从而在数据被回写时引起显著的软错误。另一方面,在直写系统中,数据被写入高速缓存中并且同时被写入主存储器中,从而省却了在过去长时间之后读内容的操作,使得软错误率明显更低。
因此,直写系统被用作以高速缓冲存储器的运算速度性能为代价的高速缓冲存储器系统是有效的。
当直写系统被用于高速缓冲存储器时,据说可以在高速缓冲存储器和主存储器之间维护相同的数据内容。基于此,当高速缓冲存储器中发生错误时,高速缓冲存储器中的数据被丢弃,并且主存储器中的与该高速缓冲存储器中发生了错误的地址相对应的数据可以被读出并传送给CPU,并且高速缓冲存储器中发生了错误的数据内容可以被重写,从而继续正常操作。
传统技术包括校正作为缓冲存储器中的临时错误的错误,通过组合由α射线引起的软错误和源自硬件故障的错误来防止超过可校正比特数目的错误,以及抑制软错误的累积。
现有技术文献
专利文献
专利文献1:日本早期专利公开No.58-1899
专利文献2:日本早期专利公开No.2-143352
专利文献3:日本早期专利公开No.63-278162
发明内容
以下实施例提供了一种能够更正确地抑制软错误的影响的高速缓冲存储器系统。
作为以下实施例的一个方面的高速缓冲存储器系统包括:高速缓冲存储器,该高速缓冲存储器用于存储包含标签分区和数据分区的数据;错误检测单元,该错误检测单元用于检测所述标签分区和所述数据分区中的错误;以及控制单元,该控制单元用于在直写系统中操作所述高速缓冲存储器,并且将如下两个信号的逻辑乘积的结果的信号定义为将被传送给CPU的高速缓存命中信息:所述标签分区中的高速缓存命中信息中的指示存在高速缓存命中的信号和指示在所述错误检测单元的错误检测处理中没有检测到错误的信号,当与存在高速缓存未命中的情况中一样已经发生错误时,从主存储器读取与所述高速缓冲存储器中的已经发生错误的数据相对应的地址的数据,并且用读取的数据替换所述高速缓冲存储器中的导致该错误的数据。
如下实施例提供了一种能够更正确地抑制软错误的影响的高速缓冲存储器系统。
附图说明
图1是用于说明高速缓冲存储器的操作的示图(1);
图2A、图2B和图2C是用于说明高速缓冲存储器的操作的示图(2);
图3A是根据本实施例的高速缓冲存储器系统的示图;
图3B图示出了根据本实施例的高速缓冲存储器系统的操作;
图4A是根据本实施例的高速缓冲存储器系统的示图;
图4B图示出了根据本实施例的高速缓冲存储器系统的操作;
图5是2通道(2-way)集合关联系统的配置;
图6图示出了用于执行奇偶校验的电路;
图7是作为错误检测电路的ECC电路的电路图;
图8A是应用于图3A的具有图7中示出的ECC电路的配置;
图8B是使用图9中所示的电路的配置;
图9图示出了用于执行奇偶校验的电路;
图10是适用于执行奇偶校验和ECC校正两者的错误检测配置的说明性示图;
图11是根据本发明实施例的操作的详细说明性示图(1);
图12是根据本发明实施例的操作的详细说明性示图(2);
图13是根据本发明实施例的操作的详细说明性示图(3)。
具体实施方式
在本实施例中,高速缓冲存储器在直写系统中操作,并且,当高速缓存未命中(mishit)发生时所执行的操作在高速缓冲存储器中没有相应数据时或在虽然有数据但是发生错误时被执行。随后,在高速缓冲存储器中提供指示之前已经发生软错误的比特。如果当该比特指示“1”时再次发生错误,则判定已经发生硬件错误,并且在CPU中生成中断。有关是否已经发生硬件错误的判断是通过提供寄存器来进行的,该寄存器在高速缓冲存储器中发生错误时被设置并且被以比发生软错误的频率短足够多的时间间隔重置。如果当该寄存器被设置时高速缓冲存储器中发生错误,则判定已经发生硬件错误,并且在CPU中生成中断。
如上所述,当高速缓冲存储器中的数据中存在错误时,与高速缓存未命中的情况中一样,数据从主存储器被读取,并且新数据被重写入高速缓冲存储器,从而抑制错误的影响的传播。
图1和图2是高速缓冲存储器的操作的说明性示图。
通常,高速缓冲存储器被分割成(具有大约16-64个字节的)行单元,并且每个行被指派一标签。标签的内容包括指示该行对应于主存储器中的位置的状态和地址信息。在直写系统中存在两种状态,“有效”和“无效”。“无效”指示重置,并且“有效”指示高速缓存中的正确数据。另一方面,在回写系统中,存在三种状态,即,“无效”、“干净”(高速缓存的内容与主存储器的内容相同)、以及“不干净”(高速缓存的内容是正确的,并且主存储器的内容是过时且不可用的)。
当从CPU的数据写发生时,如果高速缓存中存在写地址的命中(hit),则在该直写系统中,写数据被写入主存储器并且同时被写入高速缓冲存储器的数据分区。在高速缓存未命中的情况中,高速缓冲存储器被忽略,并且数据只被写入主存储器。
在回写系统中,当进行写操作时,如果存在高速缓存命中,则数据只被写入高速缓存。显然,不能在主存储器和高速缓冲存储器之间保持数据一致性。此状态被作为“不干净状态”储存在标签中。在未命中的情况下,重填操作(从主存储器读取1行数据)被执行,并且随后读取的数据被写入高速缓冲存储器中(也是在此情况下,进入不干净状态)。
图1是从CPU写数据和读数据的框图的配置。使能信号、读/写信号、以及指示读/写地址的地址信号被从CPU 10输入到高速缓存控制器11B和高速缓冲存储器11A。高速缓冲存储器11A确认其中是否存储有对应于C-地址信号所指示的地址的数据。如果存在该数据,则高速缓存-命中信号被设置为“1”。如果不存在该数据,则高速缓存-命中信号被设置为“0”,用于输出给高速缓存控制器11B。如果存在高速缓存命中,则高速缓冲存储器11A以读/写信号在指定地址处写或读数据。高速缓存控制器11B在回写系统中的未命中的情况下要求重填操作。然而,在此情况下,高速缓存控制器11B向存储器控制器12发布用于从主存储器读取该高速缓存中的1行数据的指令。存储器控制器12是用于控制对主存储器13的存取的电路。
来自CPU 10的使能信号、读/写信号、和地址信号通过存储器控制器12被输入到主存储器13。如果在数据读期间高速缓冲存储器11A中存在未命中,则高速缓存控制器11B向存储器控制器12发布用于读取指定地址处的数据的读指令。读取的数据被存储在高速缓冲存储器11A中。
当数据在直写系统中被写入时,如果存在未命中,则数据只被写入主存储器13,而不被写入高速缓冲存储器11A。如果存在命中,则数据被写入高速缓冲存储器11A和主存储器13二者中。
图2A、图2B和图2C图示出了用于说明回写系统和直写系统中的操作的信号。
每个信号前面的字符“C”指示去往高速缓冲存储器的信号,并且每个信号前面的字符“M”指示去往主存储器的信号。
图2A图示出了回写系统中的当高速缓冲存储器中存在命中时的写操作的信号。当地址信号被施加于通信控制信息并且同时C-使能信号被输入时,高速缓存中的标签被读取。如果该标签的数据与地址的高阶部分匹配,则指示在高速缓冲存储器中存在命中的命中信号被设置为“1”。当高速缓存中存在命中时,在写信号C-读/写被设置为低的情况下,来自CPU的C-数据(写)被写入高速缓存中的相应地址处的一个工作区。另外,虽然没有在图2中示出,但是高速缓存控制器11B的标签的状态是“不干净”。
图2B是指示回写系统中的当高速缓冲存储器中存在未命中时所执行的操作的信号的示图。
虽然C-使能信号被使能,但是高速缓冲存储器中存在未命中,因此,命中信号仍然为“0”。如果存在未命中,则高速缓存控制器向存储器控制器发布用于利用由地址信号(图2中未示出)指示的地址来从主存储器读一行数据的指令。在此情况下,如果数据已经被存储在对应的缓存行中,并且标签的状态是不干净,则数据将被回写至相应的主存储器。然而,因为这与本发明没有什么关系,因此,在图2中并没有示出。从主存储器读出的数据被写入相应的高速缓冲存储器。写指令被再次利用相同的地址发送给高速缓存,并且高速缓冲存储器存储此来自CPU的数据。
图2C图示出了用于说明直写系统中的操作的信号。首先,C-使能信号被使能。C-读/写信号指定写操作,并且地址信号被输出。由地址信号指定的地指处的标签分区被读取,并且如果存在命中,则数据被写入高速缓冲存储器,并且随后相同的数据被写入主存储器。如果高速缓冲存储器中存在未命中,则在高速缓冲存储器中不执行操作,但是数据只被写入主存储器。如果高速缓冲存储器中存在数据,则相应数据的内容是指高速缓冲存储器和主存储器之间的相同内容。
图3A图示出了根据本实施例的高速缓冲存储器系统。
在本实施例中,如图3A中所示,在高速缓存控制器中取出来自CPU的地址,并且使用该地址的一部分从高速缓冲存储器11读取标签分区。如果标签的状态是无效,则比较器和两个奇偶校验电路被禁用,并且输出是“0”。如果状态是有效,则来自CPU的高阶地址和内容被相互比较。如果它们匹配,则其是指命中。奇偶校验是针对从数据分区和标签分区读取的内容执行的。如果不存在错误,则判定内容是有效的,并且被发送给CPU。如果标签分区中的数据不匹配,或者如果奇偶校验错误发生(参考图3B),则数据是无效的。即,如果发生奇偶校验错误,则与正常的未命中情况一样,数据被从主存储器读取,数据被发送给CPU并且读取的数据还被写入高速缓存的数据分区,并且标签分区的内容被重写入新地址。如果标签由于奇偶校验错误被重写,则“1”被写入相同行中的SE比特(稍后描述)。当数据从CPU被写入包括该高速缓存的存储器时,虽然标签的状态是有效并且标签分区的内容与相应地址匹配,但是如果高速缓存中发生奇偶校验错误,则仍然判定已经发生未命中。因此,来自CPU的数据只被写入主存储器,并且标签的状态被改变为无效。如果不存在奇偶校验错误,则由奇偶校验生成电路PG(65)为来自CPU的数据生成奇偶校验比特,并且来自CPU的数据和该奇偶校验比特一起被写入高速缓存的数据分区。由于在该情况中使用直写系统,所以数据也被写入主存储器。
当CPU从存储器读数据时,如果发生高速缓存未命中或奇偶校验错误(图3B),则数据从主存储器的相应地址处被读取,并且奇偶校验生成电路PG(65)为内容生成奇偶校验比特,并且将其与从主存储器读取的内容一起写入高速缓存的数据分区。奇偶校验生成电路PG(66)为标签分区的相应地址的一部分生成奇偶校验比特,从而将其写入高速缓存的标签分区。
作为比较器20的输出的命中信号和通过对作为标签奇偶校验单元21和奇偶校验输出单元22的奇偶校验结果的信号进行逻辑反转获得的信号被输入到逻辑乘算电路23。因此,如果存在高速缓存命中,并且在两个奇偶校验中都没有检测到错误,则逻辑乘算电路23的输出是“1”(有效)。如果存在高速缓存命中和奇偶校验错误,则该输出为“0”(无效)。仅当逻辑乘算电路23的输出有效时,数据输出单元26输出来自高速缓冲存储器11的数据分区的数据。作为标签奇偶校验单元21的奇偶校验结果的信号和作为奇偶校验输出单元22的奇偶校验结果的信号被输入逻辑加算电路24。逻辑加算电路24的输出被输入逻辑乘算电路25。SE比特(稍后描述)的值也被输入逻辑乘算电路25。因此,如果在两个奇偶校验结果中的至少一个结果中存在错误并且SE比特(稍后描述)为“1”,则用于在CPU中生成中断的中断信号被生成。因此,高速缓存的质量可以通过增加非常简单的电路而不必增加软件就得到改进(增加用于输出发生错误的时间的电路作为高速缓存未命中)。即,当奇偶校验错误发生时,与发生高速缓存未命中时一样,可以通过如下方式去除错误:从主存储器读取相应地址的数据,在高速缓存中覆写数据,并且更新标签的内容。此外,为了提供用于确定奇偶校验错误是硬件错误还是软错误的确定电路,例如,在高速缓冲存储器11的条目中增加一个比特(作为软错误比特的SE比特)。当奇偶校验错误发生时,该比特被设置为“1”。当相同地址处的数据被读取,并且SE比特为“1”时,如果发生奇偶校验错误,则判定该错误是硬件错误(基于如下事实:由于软错误在随机的点处发生,因此很少在相同地址发生软错误)。
图4A(在图4A中,图3A中图示的相同组件被指派相同的标号并且其详细说明被省略)是这样的一个示例,其中,确定错误是硬件错误还是软错误的系统(这是图3A中图示的SE比特的用途)被实现在另一系统中。当发生奇偶校验错误一次时,JK-FF被设置为“1”。当该值被设置为“0”时,减法计数器激活用于重置JK-FF的信号(=0),并且同时设置其自身的值的重置值。如果在JK-FF被设置为“1”的情况下发生奇偶校验错误,则JK-FF的输出和P-错误信号二者都被设置为“1”,并且逻辑乘算电路获取这些值的逻辑乘积,从而激活中断信号。即,如果在减法计数器生成“=0”的时段中奇偶校验错误发生两次,则中断信号进行操作以确定硬件错误(还是基于这样的确定:软错误很少频繁发生并且软错误连续发生的可能性很低)。减法计数器指示0所用的时间是发生软错误的时间间隔的约1/10。例如,当软错误一年发生一次时,上述时间间隔被设置为约一个月。因此,当奇偶校验错误在一个月里发生两次或更多次时,判定该错误是硬件错误。
图4B是图4A中由虚线包围的部分的时序图。当在JK-FF被设置为“1”的情况下高速缓冲存储器的标签分区的数据分区中发生奇偶校验错误(P-错误)时,在P-错误的下降沿处,JK-FF的内容被设置为“1”。减法计数器被设置为0,并且同时返回预置值。当减法计数器的值是0(=0指示高电平)时,JK-FF指示“0”。如果在JK-FF被设置为“1”的情况下再次发生奇偶校验错误,即,如果在发生一次奇偶校验错误之后发生另一奇偶校验错误,则与JK-FF的输出的逻辑乘积激活中断信号。
当在确定错误是软错误还是硬件错误时通过使用中断信号判定已经发生软错误时,即,当不存在中断信号时,数据从主存储器被读取以将数据写入高速缓冲存储器。如果中断信号被激活,并且判定已经发生了硬件错误,则可以生成在CPU中生成中断信号的事件,并且该过程可以被委托给CPU的程序。显然,主存储器中的数据可以被读取并且该过程的执行可以继续,虽然判定已经发生了硬件错误。
在图3A中所示的示例中,高速缓冲存储器在直接映射系统中操作。然而,其可以被应用于集合关联系统(set associative system)。
图5是当使用两通道关联系统时的配置。在此示图中,省略了标签的状态比特。
高速缓冲存储器11a配置有两个通道。因此,两个比较器20-1和20-2被提供用于将CPU地址的高阶与标签分区相比较,并且生成命中信号。比较器20-1和20-2生成指示高速缓冲存储器11a中是否存在由CPU地址指定的数据的信号。此信号、来自用于检测每个通道的标签分区中的错误的标签奇偶校验单元21-1和21-2的奇偶校验结果、以及通过对用于检测数据分区中的错误的奇偶校验输出单元22-1和22-2的奇偶校验结果进行逻辑反转获得的信号被输入逻辑乘算电路30-1和30-2。逻辑乘算电路30-1和30-2的输出的逻辑和是由逻辑加算电路31获得的并且被作为高速缓存命中信号输出。因此,在包括与CPU地址相对应的数据的通道中,当在标签分区或数据分区中没有检测到错误时,生成高速缓存命中信号。在不仅相应条目被存储在高速缓冲存储器11a中而且没有错误发生时,通过定义高速缓存命中来指示:允许CPU存取高速缓冲存储器11a。因此,当不仅没有相应条目被存储在高速缓冲存储器11a中并且发生错误时,与发生高速缓存未命中时一样执行操作。
逻辑乘算电路30-1和30-2的输出也被输入到通道选择单元32,以选择其中“1”被输出的通道。此外,在此情况中,选择这样的通道,其中不仅相应条目被存储在高速缓冲存储器11a中并且不存在错误。
另外,来自标签奇偶校验单元21-1和21-2的校验结果以及通过对来自奇偶校验输出单元21-1和22-2的校验结果的逻辑进行反转获得的信号被输入逻辑乘算电路33-1和33-2以用于每个通道获取逻辑乘积。通过对逻辑乘算电路33-1和33-2的输出的逻辑进行反转获得的信号被分别输入逻辑乘算电路34-1和34-2。各个通道的SE比特被输入逻辑乘算电路34-1和34-2,并且针对每个通道的逻辑乘积被获取。逻辑乘算电路34-1和34-2的输出被输入逻辑加算电路35,逻辑和被获得,并且结果被作为CPU中的中断信号输出。中断信号是在如下情况时被生成的:当在这些通道的一个或多个通道中在标签分区和数据分区中的一者或两者中检测到错误时并且当存在其中SE比特是“1”的条目时发生硬件错误。
电路可以被如上所述地配置以用于N通道集合关联系统中的高速缓冲存储器。即,针对每个通道提供用于将CPU地址的高阶与标签分区相比较的比较器,以获取该比较器的输出与该通道的标签分区和数据分区的奇偶校验结果的逻辑反转信号的逻辑乘积,并且该结果被定义为通道选择信号。另外,通道选择信号的逻辑和被定义为高速缓存命中信号。在这些通道的一个或多个通道中,当标签分区和数据分区中的一者或二者中存在错误并且SE比特指示“1”时,对于CPU的中断信号被生成。
图6图示出了用于执行奇偶校验的电路。图7是作为错误检测电路的ECC电路的示图。
用于图6中示出的奇偶校验的电路可应用于标签奇偶校验单元和奇偶校验输出单元。
在图6中,字节奇偶校验被用于高速缓冲存储器。字节奇偶校验是8奇偶校验比特的配置,假定一个奇偶校验比特被提供用于一个字节,即一个字由8字节构成。利用该配置,针对1个字节执行奇偶校验。多个奇偶校验在电路中被并行执行,并且所有奇偶校验结果的逻辑和被用作整个数据的奇偶校验结果。通过读取除奇偶校验比特之外的数据来使用由8字节组成的64比特的数据。
利用图6中示出的条件,这8个奇偶校验比特被用冗余的ECC比特替换,以增强质量。图7是当8个ECC冗余比特被使用时的配置。通过读取8个ECC冗余比特,一比特错误被校正并被输出。错误信号被输出以用于两个或更多比特的错误的不可校正的错误。然而,在此系统中,在校验和校正ECC时需要过多的时间。当软错误率高时,质量被考虑,并且可以采用使用图7中所示的ECC的更高可靠性的系统,尽管处理速度的性能低。
图8A是应用于图3A的具有图7中所示出的附加ECC电路的配置。在图8A中,也在图3A中使用的相同组件被指派相同标号,并且在此省略详细说明。
ECC/奇偶校验选择单元40可以设置错误检测系统是使用ECC还是奇偶校验来操作。在图8A中,省略了对于高速缓冲存储器的写单元。然而,如果ECC/奇偶校验选择单元40选定ECC系统,则与从CPU输入的64比特数据相对应的数据被ECC比特生成电路(在附图中未示出)生成并被写入图7中所示的ECC比特。如果ECC/奇偶校验选择单元40选定奇偶校验系统,则与从CPU输入的64比特数据的每个字节相对应的奇偶校验数据被奇偶校验比特生成电路(在附图中未示出)生成并被写入图6中示出的p(奇偶校验)比特。当ECC系统被选定时,ECC/奇偶校验选择单元40将图7中所示的ECC电路41的不可校正的错误信号输入逻辑加算电路45。当奇偶校验系统被选定时,具有图6中所示的配置的奇偶校验输出单元22的奇偶校验错误信号被输入逻辑加算电路45。逻辑加算电路45的输出与高速缓冲存储器的SE比特的逻辑乘积被单元46获得,作为对于CPU的中断信号。
在图8A中,高速缓冲存储器11的数据分区的数据被输入奇偶校验输出单元22和ECC电路41。来自该数据分区的数据和已被ECC电路41校正了错误的数据被输入复用器42。复用器42根据ECC/奇偶校验选择单元40的设置来向数据输出单元26输出任意数据。奇偶校验输出单元22的奇偶校验结果和ECC/奇偶校验选择单元40的设置信号被输入逻辑乘算电路43。ECC电路41的不可校正的错误信号和ECC/奇偶校验选择单元40的设置信号的逻辑反转信号被输入逻辑乘算电路44。ECC/奇偶校验选择单元40的设置信号中的逻辑已经被相互反转的信号被输入逻辑乘算电路43和44,从而选择一个逻辑乘算电路的输出。逻辑乘算电路43和44的输出被输入逻辑加算电路45。即,当来自ECC/奇偶校验选择单元40的输出是“0”时,作为当来自ECC/奇偶校验选择单元40的输出是“0”时的“0”的逻辑反转的“1”被输入逻辑乘算电路44的输入端子,从而选择逻辑乘算电路44。另一方面,当来自ECC/奇偶校验选择单元40的输出是“1”时,“1”被输入逻辑乘算电路43的输入端子,从而选择逻辑乘算电路43。标签奇偶校验单元21的输出也被输入逻辑加算电路45,逻辑和被获得,并且结果作为中断信号被输出给CPU。因此,如果在奇偶校验中检测到数据分区中的错误,在ECC校验中检测到不可校正的错误,或者在标签中检测到奇偶校验错误,则虽然有关标签分区的信息与来自CPU的地址匹配,错误信号仍然为低,并且逻辑乘积被单元47获得。因此,没有获得命中并且高速缓存控制器执行与未命中时一样的处理。从单元45输出的错误与高速缓冲存储器的SE比特的逻辑乘积(与参考图3A中的实施例所描述的一样)被单元46获得,并且如果SE比特是1,则输出也是1。因此,对于CPU的中断信号是有效的,从而执行与硬件错误时一样的处理。在ECC处理中,考虑电路延迟是显著的。依赖于软错误率的预测结果,将选择在运行速度方面具有较低性能但是具有较高可靠性的系统(ECC处理)。即,当软错误率的预测结果高于制造者的预测时,复用器42被切换,从而使得来自ECC电路的已校正的数据可以被选定。当软错误率的预测结果在制造者的预测范围以内时,数据被原样输出,并且奇偶校验结果将被输出。
图9和图10是可应用于奇偶校验和ECC的错误校验的配置的说明性示图。
图9是针对每个字节而添加至64比特数据的1比特奇偶校验的配置并且是仅用于奇偶校验的配置。
在图10中,ECC比特被添加至图9中的配置。在ECC中,采用最常用的SECDED(1比特错误校正/2比特错误检测)。使用添加的ECC比特,可以执行错误校正,并且可以同时执行奇偶校验和ECC。图8B是使用该电路的实施例。在此实施例中,在没有发生正常的奇偶校验错误的状态中,复用器MPX原样输出来自高速缓存的数据。如果发生奇偶校验错误,则复用器MPX选择来自ECC电路的输出。当发生2比特错误,即不可校正的错误时,其被定义为高速缓存未命中,并且本发明的上述实施例中执行的处理被执行。在此电路中,在不包括奇偶校验错误的正常状态下,执行只利用奇偶校验的更高速的处理。当发生奇偶校验错误时,高可靠性的ECC是有效的,从而实现了高速的并且高可靠性的系统。
图11至图13是根据本发明另一实施例的详细操作的说明性示图。
在本实施例中,高速缓冲存储器配置被设计用于两个通道。在图11中,在图5中也示出的相同组件被指派相同的标号。
在图11中的实施例中,可以设置执行高可靠性操作的模式或正常操作模式。模式的设置是针对通道选择单元32做出的。模式设置值被写入寄存器52中,并且被输入通道选择单元32。CPU向地址译码器50输出对于寄存器52的模式设置值的写地址。地址译码器50对地址进行译码,并且将其输入逻辑乘算电路51。该地址是指寄存器52的地址,并且通过被译码而成为对于寄存器52的写使能信号。来自CPU的写信号也被输入逻辑乘算电路51。使能信号和写信号被输入逻辑乘算电路51,并且逻辑乘积被获得并被输出。逻辑乘算电路51的输出被输入寄存器52,并且来自CPU的数据(模式设置值)被锁存在寄存器52中。
在正常操作模式(模式0)中,来自CPU的地址的一部分读取两个通道的标签分区,并且从标签分区读取的数据被与来自CPU的地址的高阶部分相比较。如果任意标签分区中的值匹配,则其是指高速缓存命中,并且检测到命中的那个通道的数据分区通过通道选择单元32被读至CPU。在正常操作模式中,不同的内容被存储于通道0和通道1中,并且被用于高速缓存中的更高比特速率。此外,在正常操作模式中,图4A中所示的奇偶校验系统被使用,并且当奇偶校验错误发生时,其可以被作为未命中处理。在本实施例的高可靠性模式(模式1)中,相同的内容被存储于两个通道中,以提供增强的质量。当不存在错误时,这两个通道中的数据都被读取。虽然在一个通道中发生奇偶校验错误,但是CPU可以读取没有发生奇偶校验错误的另一通道中的数据,从而通过避免奇偶校验错误来增强质量。因此,当相同的内容被存储在两个通道中时,高速缓冲存储器中的通道的数目可以是2的倍数。在该方法中,两个通道可以存储作为一对的相同内容的数据。用于存储相同内容的通道的数目不限于2,而可以是任意数目M。然而,高速缓冲存储器的通道的总数是M的倍数。
以下参考图12来描述根据本实施例的操作。图12是从高速缓冲存储器读取数据的操作的模式与信号值之间的关系的图表。图12中示出的图表中的操作由通道选择单元32执行。
操作1至6是指正常的两通道集合关联操作。操作1是指这两个通道中的未命中,并且不能从高速缓存读取任何数据。操作1是指从通道0的正常读取(没有奇偶校验错误)。操作3是指通道0中的命中,但是因为已经发生奇偶校验错误,所以来自高速缓存的数据不能被传送至CPU。操作4是指通道1中的命中,并且数据被正常地读取(没有奇偶校验错误)。操作5是指通道1中的命中,但是因为已经发生了奇偶校验错误,所以来自高速缓存的数据不能被传送至CPU。操作6是指两个通道中的命中,但是因为这是在正常操作中永远不会发生的异常操作,所以其被作为错误进行处理。
操作7至10是根据本实施例的操作,并且相同的内容被读取,这是因为在高速缓冲存储器中的标签分区和数据分区中都不存在错误。操作7是根据本实施例的模式中的操作。因为存在通道0中的命中并且没有奇偶校验错误,所以通道0中的数据被传送至CPU。因为操作8是指两个通道中的命中,但是在通道0中发生奇偶校验错误并且在通道1中没有检测到奇偶校验错误,所以通道1中的数据被传送至CPU。因为操作9是指仅通道1中的命中并且没有奇偶校验错误,所以通道1中的数据被传送至CPU。操作10是指两个通道中的命中,但是在两个通道的数据中都已经发生了奇偶校验错误。因此,高速缓存的内容不被传送至CPU。
以下参考图13中的图表来描述根据本实施例的将数据写入高速缓存的操作。
在正常操作模式(模式0)中,两通道关联高速缓存被操作。操作1至7是正常操作。操作1是指通道0中的命中,并且来自CPU的数据被写入通道0。操作2是指通道1中的命中并且来自CPU的数据被写入通道1中。操作3是指两个通道中的未命中。然而,因为通道0中的内容是无效的,所以来自CPU的数据被写入通道0。操作4是指两个通道中的未命中。然而,因为通道1中的内容是无效的,所以来自CPU的数据被写入通道1。操作5是指两个通道中的未命中,并且这两个通道的内容是有效的。因此,有必要将通道中的一个通道中的数据存储在主存储器中,并且数据将被写入相应位置。一种确定要保存哪个通道的方法是公知的LRU(最近最少使用)系统,其在2通道系统中容易实现。即,标签分区中的一个比特被指派为LRU比特,并且当从CPU的存取是指命中时,如果在通道0中检测到命中则LRU比特被设置为1,并且如果在通道1中检测到命中则LRU比特被设置为0。因此,不是最后命中通道中的信息被写入。通过采用该系统,数据被写入通道0,这是因为在操作5中,LRU是0。然而,在操作6中,LRU是1,并且数据被写入通道1。因为操作7是指两个通道中的未命中和无效数据,所以数据被写入通道0。
操作8至9是根据本实施例的(高可靠性)模式,并且数据在模式1中的写操作期间被写入两个通道中,即,两个通道中的内容是相同的。然而,在操作9中,因为两个通道都有效,所以高速缓存的内容被保存在主存储器中,并且随后数据被写入这两个通道。
因此,上述实施例可以提供一种能够增强高速缓冲存储器的操作质量来作为对抗由α射线和宇宙射线(中子束)引起的软错误的措施的高速缓冲存储器系统。

Claims (11)

1.一种高速缓冲存储器系统,包括:
高速缓冲存储器,所述高速缓冲存储器用于存储包含标签分区和数据分区的数据;
错误检测单元,所述错误检测单元用于检测所述标签分区和所述数据分区中的错误;以及
控制单元,所述控制单元在直写系统中操作所述高速缓冲存储器,并且将如下两个信号的逻辑乘积的结果的信号定义为将被传送给CPU的高速缓存命中信息:所述标签分区中的高速缓存命中信息中的指示存在高速缓存命中的信号和指示在所述错误检测单元的错误检测处理中没有检测到错误的信号,其中
当与在存在高速缓存未命中的情况中一样已经发生错误时,与所述高速缓冲存储器中的已经发生错误的数据相对应的地址的数据被从主存储器读取,并且所述高速缓冲存储器中的导致该错误的数据被用读取的数据替换。
2.如权利要求1所述的系统,其中,
所述高速缓冲存储器包括软错误比特,当每条数据中发生错误时,所述软错误比特被设置为“1”;并且
当在所述错误检测单元中针对其中所述软错误比特被设置为“1”的数据检测到错误时,所述控制单元生成对于CPU的中断信号。
3.如权利要求1所述的系统,还包括:
寄存器,所述寄存器在之前已经发生错误时被设置并且被周期性的重置,其中
当所述寄存器被设置并且所述错误检测单元检测到错误时,所述控制单元生成对于CPU的中断信号。
4.如权利要求1所述的系统,其中
所述错误检测单元包括奇偶校验电路。
5.如权利要求1所述的系统,其中
所述错误检测单元包括奇偶校验电路和ECC电路,并且在所述电路之间切换。
6.如权利要求1所述的系统,其中
所述错误检测单元包括用于1比特错误校正和2比特错误检测的ECC电路,并且在能够检测的2比特错误已经被检测到时判定已经发生错误。
7.如权利要求1所述的系统,其中
当在写操作期间所述高速缓冲存储器中发生错误时,所述标签分区的状态被置于无效状态。
8.如权利要求1所述的系统,其中
所述错误检测单元包括奇偶校验电路和ECC电路,并且同时操作这两个电路。
9.如权利要求1所述的系统,其中:
所述高速缓冲存储器采用2N通道集合关联系统;并且
所述控制单元执行对将相同数据写入一对通道的控制并且在两个通道中同时执行数据读取,并且如果在一个通道中发生错误,则将另一个通道置于有效状态以用于读存取。
10.一种半导体装置,包括根据权利要求1所述的系统。
11.一种控制高速缓冲存储器系统的方法,所述高速缓冲存储器系统具有高速缓冲存储器,所述高速缓冲存储器存储包含标签分区和数据分区的数据,所述方法包括:
检测所述标签分区和所述数据分区中的错误;
在直写系统中操作所述高速缓冲存储器,并且将如下两个信号的逻辑乘积的结果的信号定义为将被传送给CPU的高速缓存命中信息:所述标签分区中的高速缓存命中信息中的指示存在高速缓存命中的信号和指示在错误检测处理中没有检测到错误的信号;以及
当与存在高速缓存未命中的情况中一样已经发生错误时,从主存储器读取与所述高速缓冲存储器中的已经发生错误的数据相对应的地址的数据,并且用读取的数据替换所述高速缓冲存储器中的导致该错误的数据。
CN2011103042411A 2010-11-09 2011-09-29 高速缓冲存储器系统 Pending CN102541756A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010250495A JP2012103826A (ja) 2010-11-09 2010-11-09 キャッシュメモリシステム
JP2010-250495 2010-11-09

Publications (1)

Publication Number Publication Date
CN102541756A true CN102541756A (zh) 2012-07-04

Family

ID=46020798

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011103042411A Pending CN102541756A (zh) 2010-11-09 2011-09-29 高速缓冲存储器系统

Country Status (5)

Country Link
US (1) US8589763B2 (zh)
JP (1) JP2012103826A (zh)
KR (1) KR101319670B1 (zh)
CN (1) CN102541756A (zh)
TW (1) TW201224753A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103116484A (zh) * 2012-12-31 2013-05-22 华为技术有限公司 指令处理方法及设备
CN105259150A (zh) * 2015-11-02 2016-01-20 深圳市锦瑞电子有限公司 一种荧光分析仪定标系统
CN105335247A (zh) * 2015-09-24 2016-02-17 中国航天科技集团公司第九研究院第七七一研究所 高可靠系统芯片中Cache的容错结构及其容错方法
CN106710627A (zh) * 2015-11-18 2017-05-24 凌阳科技股份有限公司 多晶胞芯片及其存储器装置
CN108701070A (zh) * 2016-03-31 2018-10-23 英特尔公司 对多级系统存储器的存储器侧高速缓存的容易出错的高速缓存行槽的处理
CN110806947A (zh) * 2018-08-06 2020-02-18 爱思开海力士有限公司 预测错误校正装置、其操作方法和用该装置的存储器系统

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101703173B1 (ko) * 2011-11-07 2017-02-07 삼성전자주식회사 데이터 캐시 컨트롤러, 이를 포함하는 장치들, 및 이의 동작 방법
JP6031850B2 (ja) * 2012-06-29 2016-11-24 日本電気株式会社 情報機器、データ保証システム、処理装置、データ保証方法およびプログラム
WO2014097464A1 (ja) * 2012-12-20 2014-06-26 富士通株式会社 データ比較回路、及び、処理装置
US9176895B2 (en) 2013-03-16 2015-11-03 Intel Corporation Increased error correction for cache memories through adaptive replacement policies
JP6275427B2 (ja) * 2013-09-06 2018-02-07 株式会社東芝 メモリ制御回路およびキャッシュメモリ
US9329930B2 (en) 2014-04-18 2016-05-03 Qualcomm Incorporated Cache memory error detection circuits for detecting bit flips in valid indicators in cache memory following invalidate operations, and related methods and processor-based systems
JP6367704B2 (ja) * 2014-12-25 2018-08-01 株式会社バイオス 記憶制御システム及び記憶制御装置
US10474569B2 (en) 2014-12-29 2019-11-12 Toshiba Memory Corporation Information processing device including nonvolatile cache memory and processor
KR101629411B1 (ko) 2015-02-03 2016-06-10 한국전자통신연구원 레벨0 캐시 제어 장치 및 방법
CN104750577B (zh) * 2015-04-13 2017-09-29 中国人民解放军国防科学技术大学 面向片上大容量缓冲存储器的任意多位容错方法及装置
US9904593B2 (en) * 2015-11-13 2018-02-27 Taiwan Semiconductor Manufacturing Co., Ltd. Memory device and correction method
KR102515417B1 (ko) 2016-03-02 2023-03-30 한국전자통신연구원 캐시 메모리 장치 및 그것의 동작 방법
US10467092B2 (en) * 2016-03-30 2019-11-05 Qualcomm Incorporated Providing space-efficient storage for dynamic random access memory (DRAM) cache tags
US10067827B2 (en) * 2016-06-29 2018-09-04 Micron Technology, Inc. Error correction code event detection
JP2018120413A (ja) * 2017-01-25 2018-08-02 Necプラットフォームズ株式会社 保守判断装置、保守判断方法及びプログラム
US10572389B2 (en) * 2017-12-12 2020-02-25 Advanced Micro Devices, Inc. Cache control aware memory controller
US10990463B2 (en) 2018-03-27 2021-04-27 Samsung Electronics Co., Ltd. Semiconductor memory module and memory system including the same
KR102538679B1 (ko) * 2018-04-06 2023-06-02 삼성전자주식회사 메모리 시스템 및 메모리 시스템의 동작 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1434941A (zh) * 1999-12-21 2003-08-06 英特尔公司 纠正软错误的固件机制
US20070240021A1 (en) * 2004-04-07 2007-10-11 International Business Machines Corporation Method, system and program product for autonomous error recovery for memory devices
US20080229011A1 (en) * 2007-03-16 2008-09-18 Fujitsu Limited Cache memory unit and processing apparatus having cache memory unit, information processing apparatus and control method

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS581899A (ja) 1981-06-27 1983-01-07 Toshiba Corp バツフアメモリの誤り補正方式
JPS63278162A (ja) 1987-05-09 1988-11-15 Nec Corp 情報処理装置におけるエラ−訂正装置
JPH02143352A (ja) 1988-11-24 1990-06-01 Nec Corp メモリエラー検出修正方式
US5649090A (en) * 1991-05-31 1997-07-15 Bull Hn Information Systems Inc. Fault tolerant multiprocessor computer system
JPH05134938A (ja) * 1991-11-12 1993-06-01 Shikoku Nippon Denki Software Kk メモリ制御装置
JPH06175934A (ja) * 1992-12-01 1994-06-24 Oki Electric Ind Co Ltd 1ビットエラー処理方式
US5961655A (en) * 1996-12-05 1999-10-05 Hewlett-Packard Company Opportunistic use of pre-corrected data to improve processor performance
US5958072A (en) * 1997-01-13 1999-09-28 Hewlett-Packard Company Computer-system processor-to-memory-bus interface having repeating-test-event generation hardware
JPH10289164A (ja) * 1997-04-16 1998-10-27 Mitsubishi Electric Corp メモリ制御方法およびメモリ制御装置
US6195729B1 (en) * 1998-02-17 2001-02-27 International Business Machines Corporation Deallocation with cache update protocol (L2 evictions)
US6163857A (en) * 1998-04-30 2000-12-19 International Business Machines Corporation Computer system UE recovery logic
GB2409301B (en) 2003-12-18 2006-12-06 Advanced Risc Mach Ltd Error correction within a cache memory
JP4201783B2 (ja) 2005-08-04 2008-12-24 富士通マイクロエレクトロニクス株式会社 キャッシュメモリ装置、半導体集積回路およびキャッシュ制御方法
WO2010109631A1 (ja) * 2009-03-26 2010-09-30 富士通株式会社 情報処理装置、情報処理方法及び情報処理プログラム
JP2010237739A (ja) * 2009-03-30 2010-10-21 Fujitsu Ltd キャッシュ制御装置,情報処理装置およびキャッシュ制御プログラム
KR101066519B1 (ko) * 2009-06-11 2011-09-21 수원대학교산학협력단 캐시 메모리 장치 및 이를 이용한 에러 검출 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1434941A (zh) * 1999-12-21 2003-08-06 英特尔公司 纠正软错误的固件机制
US20070240021A1 (en) * 2004-04-07 2007-10-11 International Business Machines Corporation Method, system and program product for autonomous error recovery for memory devices
US20080229011A1 (en) * 2007-03-16 2008-09-18 Fujitsu Limited Cache memory unit and processing apparatus having cache memory unit, information processing apparatus and control method

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103116484A (zh) * 2012-12-31 2013-05-22 华为技术有限公司 指令处理方法及设备
CN103116484B (zh) * 2012-12-31 2015-12-23 华为技术有限公司 指令处理方法及设备
CN105335247A (zh) * 2015-09-24 2016-02-17 中国航天科技集团公司第九研究院第七七一研究所 高可靠系统芯片中Cache的容错结构及其容错方法
CN105335247B (zh) * 2015-09-24 2018-04-20 中国航天科技集团公司第九研究院第七七一研究所 高可靠系统芯片中Cache的容错结构及其容错方法
CN105259150A (zh) * 2015-11-02 2016-01-20 深圳市锦瑞电子有限公司 一种荧光分析仪定标系统
CN105259150B (zh) * 2015-11-02 2019-01-18 深圳市锦瑞生物科技有限公司 一种荧光分析仪定标系统
CN106710627A (zh) * 2015-11-18 2017-05-24 凌阳科技股份有限公司 多晶胞芯片及其存储器装置
CN106710627B (zh) * 2015-11-18 2019-11-26 凌阳科技股份有限公司 多晶胞芯片及其存储器装置
CN108701070A (zh) * 2016-03-31 2018-10-23 英特尔公司 对多级系统存储器的存储器侧高速缓存的容易出错的高速缓存行槽的处理
CN108701070B (zh) * 2016-03-31 2022-08-12 英特尔公司 对多级系统存储器的存储器侧高速缓存的容易出错的高速缓存行槽的处理
CN110806947A (zh) * 2018-08-06 2020-02-18 爱思开海力士有限公司 预测错误校正装置、其操作方法和用该装置的存储器系统
CN110806947B (zh) * 2018-08-06 2023-10-31 爱思开海力士有限公司 预测错误校正装置、其操作方法和用该装置的存储器系统

Also Published As

Publication number Publication date
TW201224753A (en) 2012-06-16
KR101319670B1 (ko) 2013-10-17
JP2012103826A (ja) 2012-05-31
KR20120049798A (ko) 2012-05-17
US20120117428A1 (en) 2012-05-10
US8589763B2 (en) 2013-11-19

Similar Documents

Publication Publication Date Title
CN102541756A (zh) 高速缓冲存储器系统
TWI525426B (zh) 於低電壓操作期間之快取部分的停用
US8051337B2 (en) System and method for fast cache-hit detection
CN102246155B (zh) 多处理器数据处理系统中的错误检测
US9436548B2 (en) ECC bypass using low latency CE correction with retry select signal
US8205136B2 (en) Fault tolerant encoding of directory states for stuck bits
JP4395425B2 (ja) 破損データ値を処理するためのデータ処理装置と方法
US7290185B2 (en) Methods and apparatus for reducing memory errors
JP5476391B2 (ja) データ処理システム
US7984357B2 (en) Implementing minimized latency and maximized reliability when data traverses multiple buses
US9384091B2 (en) Error code management in systems permitting partial writes
CN103140841A (zh) 保护存储器的部分的方法和装置
US8799727B2 (en) Arithmetic processing apparatus and method of controlling arithmetic processing apparatus
EP2240856B1 (en) Error detector in a cache memory using configurable way redundancy
KR20080089619A (ko) 에러 정정 코드 생성 방법 및 메모리 관리 장치
US7689891B2 (en) Method and system for handling stuck bits in cache directories
US9106258B2 (en) Early data tag to allow data CRC bypass via a speculative memory data return protocol
JP2770913B2 (ja) パリティの置換装置及び方法
JP6408482B2 (ja) プログラマブルデバイス及びこれを用いた電子システム装置
US8495452B2 (en) Handling corrupted background data in an out of order execution environment
GB2528901A (en) Uncorrectable memory errors in pipelined CPUs
JP3281982B2 (ja) データバッファ
JPS6155744A (ja) エラ−のリカバリ処理方式
JPH06139156A (ja) キャッシュメモリの故障検出装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20120704