CN101238443B - 用于在计算机系统中控制存储器访问的方法和设备 - Google Patents
用于在计算机系统中控制存储器访问的方法和设备 Download PDFInfo
- Publication number
- CN101238443B CN101238443B CN2006800291424A CN200680029142A CN101238443B CN 101238443 B CN101238443 B CN 101238443B CN 2006800291424 A CN2006800291424 A CN 2006800291424A CN 200680029142 A CN200680029142 A CN 200680029142A CN 101238443 B CN101238443 B CN 101238443B
- Authority
- CN
- China
- Prior art keywords
- performance
- intermediate store
- comparison
- comparison pattern
- performance element
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/084—Multiuser, multiprocessor or multiprocessing cache systems with a shared cache
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1629—Error detection by comparing the output of redundant processing systems
- G06F11/1641—Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0888—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/601—Reconfiguration of cache memory
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)
- Hardware Redundancy (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
用于在具有至少两个执行单元的计算机系统中控制存储器访问的方法和设备,其中设置有中间存储器、尤其是缓存,并且此外还设置有切换装置和比较装置,其中在性能模式和比较模式之间进行切换,其特征在于,在比较模式中没有执行单元对该中间存储器进行访问,并且在性能模式中至少一个执行单元对该中间存储器进行访问。
Description
技术领域
本发明涉及用于在微处理器的至少两个执行单元的输出数据之间进行比较的方法和设备。
背景技术
由α粒子或宇宙辐射所引起的瞬时错误对于集成电路来说日益成为一个问题。以下概率由于减小的结构宽度、下降的电压和更高的时钟频率而增加,即由α粒子或者宇宙辐射所引起的电压峰值在集成电路中使逻辑值失真。结果可能是错误的计算结果。因此在安全性相关的系统中必须可靠地对这样的错误进行检测。
在必须可靠地检测电子设备的功能失误的安全性相关系统、诸如汽车中的ABS控制系统中,正是在这种系统的相应控制装置中通常冗余度被设置用于错误识别。因此例如在已知的ABS系统中完整的微控制器分别是加倍的,其中冗余地计算所有ABS功能,并且对一致性进行检查。如果出现结果的不一致,则ABS系统被打开。
这种具有至少两个集成的执行单元的处理器单元也被称为双核或多核架构。不同的执行单元(核)冗余地并且时钟同步地执行相同的程序段,这两个执行单元的结果被比较,并且然后在对一致性进行比较时识别错误。
处理器配备有缓存,以便加速对指令和数据的访问。该缓存在一方面数据量持续增加并且另一方面利用越来越快速地工作的处理器的数据处理的复杂性增大的情况下是必要的。通过缓存,部分地避免对大的(主)存储器的缓慢的访问,并且处理器因此不必等待数据的提供。仅仅用于指令的缓存和仅仅用于数据的缓存是已知的,而且“统一缓存”也是已知的,在这些统一缓存中不仅数据而且指令都被存放在同一个缓存中。还已知具有多个缓存级(层级)的系统。这种多级缓存被用于利用分等级的存储容量和缓存的不同的寻址策略在不同的级上进行处理器与(主)存储器之间的速度的最佳匹配。
采用缓存的第二个原因是避免在多处理器系统中的系统或存储器总线上的访问冲突。在该多处理器系统中通常为每个处理器配备一个缓存或者在多级缓存的情况下配备相应多个缓存。
在可切换的双核系统中的已知的缓存装置中,两个核中的每一个都具有固定分配的缓存,在性能模式中该核访问所述固定分配的缓存。在比较模式中两个核访问它们各自的缓存。除了以下事实,即(对于每个执行单元单独地)在比较模式中将数据多次存储在缓存中,尤其在从性能模式变换为比较模式时的时间花费是可观的。在该变换中,必须对缓存的状态进行调整。首先由此保证,在比较模式中不出现以下情况,即参与比较的执行单元之一具有缓存缺失(所要求的数据没有被存储在缓存中并且必须被再加载),而另一执行单元具有缓存命中(所要求的数据被存储在缓存中并且不必再加载)。
发明内容
本发明的任务在于,在多处理器系统中避免迄今已知的方法在可切换的多处理器系统中使用缓存时的缺点。在此尤其表明是缺点的是,在已知的缓存装置中在从性能模式切换为比较模式时必须费事地对缓存进行同步。
根据本发明提出了一种用于在具有至少两个执行单元的计算机系统中控制存储器访问的方法,该计算机系统中设置有中间存储器并且此外还设置有切换装置和比较装置,其中所述至少两个执行单元通过切换装置在性能模式和比较模式之间进行切换,在比较模式中所述比较装置将所述至少两个执行单元的输出信号进行比较,其中,在该计算机系统中还设置有引起在比较模式中没有执行单元对所述中间存储器进行访问、而在性能模式中至少一个执行单元对所述中间存储器进行访问的装置,所述装置被构造为开关装置,所述开关装置阻止或允许执行单元对所述中间存储器的访问。
根据本发明还提出了一种用于在具有至少两个执行单元的计算机系统中控制存储器访问的设备,该计算机系统中设置有中间存储器,并且此外还设置有切换装置和比较装置,其中所述至少两个执行单元通过切换装置在性能模式和比较模式之间进行切换,在比较模式中所述比较装置将所述至少两个执行单元的输出信号进行比较,其中,包含有装置,这些装置被构造,使得通过这些装置,在比较模式中没有执行单元对所述中间存储器进行访问,并且在性能模式中至少一个执行单元对所述中间存储器进行访问,所述装置被构造为开关装置,该开关装置阻止或允许执行单元对所述中间存储器的访问。
对于在多处理器系统的不同模式、诸如性能模式和比较模式之间的切换可能性来说有利的是,不是每个执行单元都拥有自己的缓存,因为尤其是在切换为比较模式时必须进行费时间的缓存调整。这在所建议的结构中可以在很大程度上被舍弃。
此外有利的是,不同缓存可以针对不同模式(比较模式或性能模式)以其容量与模式的要求相匹配。此外可能有利的是,尤其如果总线访问本身并不明显慢于缓存访问,那么在有些模式中完全舍弃缓存。
有利地描述了一种用于在具有至少两个执行单元的计算机系统中对存储器访问进行控制的方法,其中设置有中间存储器、尤其是缓存,并且此外还设置有切换装置和比较装置,其中在性能模式和比较模式之间进行切换,其特征在于,在比较模式中没有执行单元对该中间存储器进行访问,并且在性能模式中至少一个执行单元对该中间存储器进行访问。
有利地描述了一种方法,其特征在于,在比较模式中与该中间存储器相连接的执行单元至该中间存储器的连接通过开关装置被断开。
有利地描述了一种方法,其特征在于,在比较模式中该比较装置对信息进行一致性比较,并在有偏差的情况下识别出错误,其中在有错误的情况下阻止对不相当于该中间存储器的存储器的访问。
有利地描述了一种方法,其特征在于,在比较模式中该比较装置对信息进行一致性比较,并在有偏差的情况下识别出错误,其中在有错误的情况下使不相当于该中间存储器的存储器中的信息变成无效的或禁止该信息。
有利地描述了一种方法,其特征在于,在比较模式中该比较装置对信息进行一致性比较,并在有偏差的情况下识别出错误,其中在有错误的情况下该计算机系统重新或再次被启动。
有利地描述了一种方法,其特征在于,在比较模式中该比较装置对信息进行一致性比较,并在有偏差的情况下识别出错误,其中在有错误的情况下至少一个执行单元重新或再次被启动。
本发明有利地包含有一种用于在具有至少两个执行单元的计算机系统中控制存储器访问的设备,其中设置有中间存储器、尤其是缓存,并且此外还设置有切换装置和比较装置,其中在性能模式和比较模式之间进行切换,其特征在于,包含有装置,这些装置被构造,使得通过这些装置,在比较模式中没有执行单元对该中间存储器进行访问,并且在性能模式中至少一个执行单元对该中间存储器进行访问。
有利地包含有一种设备,其特征在于,所述装置被构造为开关装置,该开关装置阻止或允许执行单元对该中间存储器的访问。
有利地包含有设备,其特征在于,所述比较装置被构造,使得该比较装置在比较模式中对信息进行一致性比较,并在有偏差的情况下识别出错误,并在有错误的情况下阻止对不相当于该中间存储器的存储器的访问。
有利地包含有一种设备,其特征在于,所述比较装置被构造,使得该比较装置在比较模式中对信息进行一致性比较,并在有偏差的情况下识别出错误,并在有错误的情况下使不相当于该中间存储器的存储器中的信息变成无效的或禁止该信息。
有利地包含有一种设备,其特征在于,该比较装置被定位在至少一个执行单元与该中间存储器之间。
有利地包含有一种设备,其特征在于,该中间存储器被定位在至少一个执行单元与该比较装置之间。
有利地包含有一种设备,其特征在于,该切换装置和该比较装置被实现为切换和比较单元。
其它的优点和有利的扩展方案由下述内容得出。
附图说明
图1示出具有两个执行单元的系统C100,这两个执行单元中只有一个执行单元在性能模式和比较模式中通过缓存对总线C10进行访问。
图2示出具有两个执行单元的系统C100c,其中两个执行单元都在性能模式和比较模式中通过缓存对总线C10进行访问,但是其中只有一个执行单元在比较模式中被利用。
图3示出具有两个执行单元的系统C100a,其中只有一个执行单元在性能模式中通过缓存对总线C10进行访问。在比较模式中不使用缓存。
图4示出具有两个执行单元的系统C200,其中两个执行单元都在性能模式和比较模式中通过缓存对总线C10进行访问。在比较模式中通过分离的总线连接单元来进行对总线的访问。
图5示出具有两个执行单元的系统C200a,其中两个执行单元都在性能模式和比较模式中通过缓存对总线C10进行访问。在比较模式中通过分离的缓存和分离的总线连接单元来进行对总线的访问。
图6示出具有两个执行单元的系统C300,其中两个执行单元都在性能模式和比较模式中通过缓存对总线C10进行访问,但是其中只有一个执行单元在比较模式中被利用。根据该系统C300的当前模式,在比较模式中所利用的缓存针对其任务而利用内部的不同的存储器。
图7示出具有两个执行单元的系统C400,其中两个执行单元都在性能模式和比较模式中通过缓存对总线C10进行访问,但是其中只有一个执行单元在比较模式中被利用。根据该系统C400的当前模式,在比较模式中所利用的缓存针对其任务而利用内部的不同的存储器。这两个存储器彼此的容量比通过分离的单元来控制。
图8示出具有两个执行单元的系统C500,这两个执行单元通过缓存单元对总线C10进行访问。按照该系统C500的模式,不同地操作执行单元的存储器访问。
具体实施方式
在下文中,执行单元不仅可以表示处理器/核/CPU,而且可以表示FPU(Floating Point Unit(浮点单元))、DSP(数字信号处理器)、协处理器或ALU(Arithmetic Logical Unit(算术逻辑单元))。
因此,在一些多处理器系统中,缓存仅仅被用于避免在系统总线和/或存储器总线上的冲突。如果仅仅存在一个执行单元,那么在这种情况下缓存不是必要的,因为存储器足够快速以服务于一个执行单元的读请求。
图1示出具有两个执行单元C110a和C110b的多处理器系统C100的第一实施方案,这两个执行单元可以通过总线C10来访问存储器。单元C130按照该系统C100的模式来调节如何对该总线C10进行访问。在性能模式中,开关C131被闭合,并且开关C132被打开。因此执行单元C110b通过缓存C120和总线连接单元C150来访问总线C10。执行单元C110a通过连接单元C140直接与该总线C10相连接。如果缓存C120被正确地确定大小,那么执行单元C110b的存储器访问主要由C120来操作,使得仅仅在极少情况下才有必要访问该总线C10。执行单元C110a的存储器访问总是导致对该总线C10的访问。只有当存储器访问不能通过缓存C120来操作时,才通过单元C150来访问该总线。如果在相同时间执行单元C110a通过C140进行对该总线C10的访问,那么出现总线冲突,该总线冲突必须通过总线协议来解决。因为缓存C120对于软件来说是不可见的,所以有利的是单元C120在总线C10上侦听(“Bus-Snooping”(总线侦听))执行单元C110a是否通过C140来改变存储器中的也位于缓存C120中的数据。如果情况如此,那么C120中的相应数据必须用新的数据来代替或被标记为无效的。
在比较模式中,开关C132被闭合,并且开关C131被打开。两个执行单元共同通过缓存C120来访问总线C10。比较单元C160将两个执行单元的输出信号进行比较,并在有差别的情况下生成错误信号。可选地,该比较单元C160可以与总线连接单元C150相连接(在此未示出),并且如果两个核的输出信号不同,那么阻止写访问。在性能模式中单元C160被去激活。该比较单元的去激活可以以不同的方式来实现:单元C160不执行比较,不向该单元C160施加用于比较的信号,或者尽管进行比较,但结果被忽略。
在图2中利用系统C100c示出了本发明的一种实施形式。在该实施形式中,在图1中所公开的元件以相同的方式公知。执行单元C100a在性能模式中利用闭合的开关C131当然同样通过缓存C140a和总线连接单元C140来对总线C10进行访问。在比较模式中缓存C120通过随后闭合的开关C132被两个执行单元C110a和C110b使用,而C140a仅仅在性能模式中被C110a使用。这两个缓存C120和C140a可以拥有不同的容量,并且与此相应地针对在不同模式中所匹配的任务而被优化。
在图3中示出了本发明的另一实施形式。C100a在此表示多处理器系统。在此,在性能模式中,开关C133打开,并且开关C134闭合,并且执行单元C110b通过缓存C120和总线连接单元C150来访问总线C10。另一执行单元C110a直接通过单元C140来访问该总线C10。而在比较模式中,开关C133闭合,并且C134打开,并且两个执行单元直接通过C140来访问该总线C10,并且该缓存C120不被使用。比较单元C160将两个执行单元的输出信号进行比较,并在有差别的情况下生成错误信号。可选地,在此该比较单元C160也可以与总线连接单元C140相连接(在此未示出),并且如果这两个执行单元的输出信号不同,那么阻止写访问。在性能模式中单元C160被去激活。所述去激活可以以不同的已经描述的方式来实现。
在该多处理器系统的另一实施方案中,缓存同样仅仅被用于避免在存储器总线上的访问冲突。图4示出具有两个执行单元C210a和C210b的多处理器系统C200,其中这两个执行单元可以以不同的方式通过总线C10来访问存储器。按照该系统C200的模式,单元C230调节如何对该总线C10进行访问。在性能模式中,开关C231和C234闭合,并且开关C232和C233打开。因此执行单元C210a通过缓存C240a利用总线连接单元C250a来访问总线C10,并且执行单元C210b通过缓存C240b利用总线连接单元C250b来访问总线C10。只有当不能从执行单元的相应的缓存来操作存储器访问时,才必须进行对总线C10的访问。如果在相同时间由其它的执行单元进行对该总线C10的访问,那么出现总线冲突,该总线冲突必须通过总线协议来解决。因为缓存C240a和C240b对于软件来说是不可见的,所以有利的是,由执行单元C210a、C210b写入到相应的缓存C240a、C240b中的数据同样立即通过相应的总线连接单元C250a、C150b被写到总线C10上从而被写入到存储器中(“直写”策略)。
另外有利的是,单元C240a和C240b(通过C250a或C250b)在总线C10上侦听(“Bus-Snooping”(总线侦听))执行单元C210a是否通过C250a或者C210b是否通过C250b来改变存储器中的、也分别位于另外的缓存中的数据。如果情况如此,那么该相应的数据在有关的缓存中必须用于新的数据来代替或者被标记为无效的。
在比较模式中,开关C232和C233闭合,并且开关C231和C234打开。两个执行单元共同通过C260来访问总线C10。缓存(C240a、C240b)不被使用。比较单元C220将两个执行单元的输出信号进行比较,并在有差别的情况下生成错误信号。可选地,该比较单元C220可以与总线连接单元C260相连接(在此未示出),并且如果这两个执行单元的输出信号不同,那么阻止写访问。在性能模式中单元C220被去激活。所述去激活可以以不同的已经描述的方式来实现。
图5示出多处理器系统的另一实施形式C200a,在该实施形式中相对于图4中所示的实施形式C200针对比较模式插入了附加的缓存270。由图4已知的部件以与在图4中所述的方式相同的方式工作。在该系统中也是有利的是,将“直写”策略用于所有缓存,并且所有缓存的内容通过“总线侦听”被保持一致。
在此前面根据图4和5所描述的变型方案可以被扩展到多于两个的执行单元。在该情况下针对每个执行单元都存在在性能模式中被使用的缓存单元和总线连接单元。在比较模式中,所有执行单元都通过总线连接单元C260(可选地利用缓存C270)来访问总线C10。
在图6中示出了本发明的另一实施形式。在此处理器单元C300也由至少两个执行单元C310a和C310b组成,这些执行单元分别通过缓存C340a、340b和总线连接单元C350a、C350b通过总线C10来访问存储器。在性能模式中,单元C330中的开关C332打开并且开关C331闭合。执行单元C310a在该配置中通过缓存C340a和总线连接单元C350a来访问总线C10,并且执行单元C310b通过缓存C340b和总线连接单元C350b来访问总线C10。
在比较模式中,在切换单元C330中开关C332闭合并且开关C331打开。现在这两个执行单元通过缓存C340a和总线连接单元C350a来访问总线C10。单元C340a本身又由两个被用于进行缓存的分离的缓存存储器或缓存区域C341、C342组成。在性能模式中仅仅使用存储器/区域C341,而在比较模式中除了存储器/区域C341之外还使用存储器/区域C342来进行缓存。在比较模式中比较单元C320将两个执行单元的输出信号进行比较,并在有差别的情况下生成错误信号。可选地,在此该比较单元C320也可以与总线连接单元C350a相连接(在此未示出),并且如果在比较模式中两个核的输出信号不同,那么阻止写访问。在性能模式中比较单元C320如同已经针对图1中所示的比较单元C160所描述的那样被去激活。
在另一实施形式中,单元C340a可以被构建,使得在比较模式中存储器C341和C342虽然同样被一同使用,但是在比较模式中仅仅存储器C342中的内容可以被置换并用其它的内容来代替。
图6的扩展方案的所有实施形式都可以被扩展到多于两个的执行单元。在该情况下针对每个执行单元都存在在性能模式中被利用的缓存单元和总线连接单元。在比较模式中所有执行单元都通过缓存C340a和总线连接单元C350a来访问总线C10。
在图7中示出了本发明的另一种可能的实施形式。在此,处理器单元C400也由至少两个执行单元C410a和C410b组成,这些执行单元分别通过缓存(C440a、440b)和总线连接单元(C450a、C450b)来访问总线C10从而访问(主)存储器。
在性能模式中,单元C430中的开关C432打开并且开关C431闭合。在该配置中,执行单元C410a通过缓存C440a和总线连接单元C450a来访问总线C10,并且执行单元C410b通过缓存C440b和总线连接单元C450b来访问总线C10。
在比较模式中,在切换单元C430中开关C432闭合并且开关C431打开。现在这两个执行单元通过缓存C440a和总线连接单元C450a来访问总线C10。单元C440a本身又由两个被用于进行缓存的分离的缓存存储器或区域C441、C442组成。在性能模式中仅仅使用存储器/区域C441,而在比较模式中存储器/区域C442被用于进行缓存。两个存储器/区域的容量的总和C441+C442是恒定的,但是C441和C442之间的容量比由单元C443来控制。通过该单元C443能够在运行中改变该容量比。
在比较模式中,比较单元C420将两个执行单元的输出信号进行比较,并在有差别的情况下生成错误信号。可选地,在此该比较单元C420也可以与总线连接单元C450a相连接(在此未示出),并且如果两个核的输出信号在比较模式中不同,那么阻止写访问。在性能模式中,如同已经针对图1中的比较单元C160所描述的那样,单元C420被去激活。
现在,单元C440a可以在保持单元C443的功能的情况下如下来实施:
1.在比较模式中,该缓存的两个存储器C441和C442都被使用。
2.在比较模式中,该缓存的两个存储器C441和C442都被使用,其中但是仅仅存储器C442的内容可以在比较模式中被置换并且用其它的内容来代替。
图7的扩展方案的所有实施形式都可以被扩展到多于两个的执行单元。在该情况下针对每个执行单元都存在在性能模式中被利用的缓存单元和总线连接单元。在比较模式中,所有执行单元都通过缓存C440a和总线连接单元C450a来访问总线C10。
在图8中示出了另一种可能的实施形式。在处理器系统C500中存在至少两个执行单元C510a和C510b。两个执行单元都与缓存单元C530相连接。该单元C530针对每个执行单元拥有总线连接单元C550a、C550b,通过该总线连接单元可以访问总线C10从而访问存储器。该缓存单元C530针对每个所连接的执行单元拥有两个缓存存储器(在此C531和C533用于C510a,且C534和C536用于C510b)。这些存储器对的容量的总和是恒定的,但是容量比可以分别通过一个单元(C532用于C531、C533,以及C535用于C534、C536)在运行中被改变。
在性能模式中,执行单元的存储器访问总是由被分配给该执行单元的存储器对进行“缓存(geca ched)”。在此,仅仅使用两个缓存存储器中的一个(在此C531用于C510a,以及C534用于C510b)。如果执行单元的存储器访问不能够由缓存存储器来操作,那么对C10的必要的总线访问总是通过被分配给执行单元的总线连接单元来进行(在此C550a用于C510a,并且C550b用于C510b)。在性能模式中由执行单元同时进行的访问也可以同时通过单元C530来操作,因为如果不这样,那么就会由于对C10的同时访问而出现总线冲突。
在比较模式中,执行单元的存储器访问通过在性能模式中未被使用的缓存存储器(在此为C533和C536)来操作。哪个总线连接单元被用于总线访问是任意的。比较单元C520在比较模式中将所有执行单元的输出信号进行比较,并在有差别的情况下生成错误信号。可选地,在此该比较单元C520也可以与总线连接单元C550a、C550b相连接(在此未示出),并且如果这两个核的输出信号在比较模式中不同,那么阻止写访问。在性能模式中该单元C520被去激活。所述去激活可以相应地如同在图1中的比较单元C160的情况下那样来进行。
在另一实施形式中,单元C530可以被构建,使得在比较模式中使用全部的缓存存储器(在此为C531、C533、C534、C536),但是仅仅是在性能模式中未被使用的缓存存储器的内容被丢弃并且被代替。
对于这里被示例性示出的所有实施都适用的是,切换和比较单元总是位于执行单元及其所属的缓存之间。如果在比较模式中使用一个缓存,那么该缓存必须利用ECC或奇偶校验来保护,因此在此也识别错误。另外有利的是,为该缓存使用“直写”策略,并且该缓存的内容通过“总线侦听”来保持一致。
Claims (14)
1.用于在具有至少两个执行单元的计算机系统中控制存储器访问的方法,该计算机系统中设置有中间存储器并且此外还设置有切换装置和比较装置,其中所述至少两个执行单元通过切换装置在性能模式和比较模式之间进行切换,在比较模式中所述比较装置将所述至少两个执行单元的输出信号进行比较,其特征在于,在该计算机系统中还设置有引起在比较模式中没有执行单元对所述中间存储器进行访问、而在性能模式中至少一个执行单元对所述中间存储器进行访问的装置,所述装置被构造为开关装置,所述开关装置阻止或允许执行单元对所述中间存储器的访问。
2.根据权利要求1所述的方法,其特征在于,在比较模式中与所述中间存储器相连接的执行单元至所述中间存储器的连接通过开关装置被断开。
3.根据权利要求1所述的方法,其特征在于,在比较模式中所述比较装置对信息进行一致性比较,并在有偏差的情况下识别出错误,其中在有错误的情况下阻止对与所述中间存储器不同的存储器的访问。
4.根据权利要求1所述的方法,其特征在于,在比较模式中所述比较装置对信息进行一致性比较,并在有偏差的情况下识别出错误,其中在有错误的情况下使与所述中间存储器不同的存储器中的信息变成无效的或禁止该信息。
5.根据权利要求1所述的方法,其特征在于,在比较模式中所述比较装置对信息进行一致性比较,并在有偏差的情况下识别出错误,其中在有错误的情况下所述计算机系统重新或再次被启动。
6.根据权利要求1所述的方法,其特征在于,在比较模式中所述比较装置对信息进行一致性比较,并在有偏差的情况下识别出错误,其中在有错误的情况下至少一个执行单元重新或再次被启动。
7.根据权利要求1所述的方法,其特征在于,该计算机系统中设置有缓存。
8.用于在具有至少两个执行单元的计算机系统中控制存储器访问的设备,该计算机系统中设置有中间存储器,并且此外还设置有切换装置和比较装置,其中所述至少两个执行单元通过切换装置在性能模式和比较模式之间进行切换,在比较模式中所述比较装置将所述至少两个执行单元的输出信号进行比较,其特征在于,包含有装置,这些装置被构造,使得通过这些装置,在比较模式中没有执行单元对所述中间存储器进行访问,并且在性能模式中至少一个执行单元对所述中间存储器进行访问,所述装置被构造为开关装置,该开关装置阻止或允许执行单元对所述中间存储器的访问。
9.根据权利要求8所述的设备,其特征在于,所述比较装置被构造,使得所述比较装置在比较模式中对信息进行一致性比较,并在有偏差的情况下识别出错误,并且在有错误的情况下阻止对与所述中间存储器不同的存储器的访问。
10.根据权利要求8所述的设备,其特征在于,所述比较装置被构造,使得所述比较装置在比较模式中对信息进行一致性比较,并在有偏差的情况下识别出错误,并且在有错误的情况下使与所述中间存储器不同的存储器中的信息变成无效的或禁止该信息。
11.根据权利要求8所述的设备,其特征在于,所述比较装置被定位在至少一个执行单元和所述中间存储器之间。
12.根据权利要求8所述的设备,其特征在于,所述中间存储器被定位在至少一个执行单元和所述比较装置之间。
13.根据权利要求8、11、12之一所述的设备,其特征在于,所述切换装置和所述比较装置被实现为切换和比较单元。
14.根据权利要求8所述的设备,其特征在于,该计算机系统中设置有缓存。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102005037250.3 | 2005-08-08 | ||
| DE102005037250A DE102005037250A1 (de) | 2005-08-08 | 2005-08-08 | Verfahren und Vorrichtung zur Steuerung eines Speicherzugriffs bei einem Rechnersystem mit wenigstens zwei Ausführungseinheiten |
| PCT/EP2006/064560 WO2007017365A1 (de) | 2005-08-08 | 2006-07-24 | Verfahren und vorrichtung zur steuerung eines speicherzugriffs bei einem rechnersystem mit wenigstens zwei ausführungseinheiten |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN101238443A CN101238443A (zh) | 2008-08-06 |
| CN101238443B true CN101238443B (zh) | 2010-06-16 |
Family
ID=37269323
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN2006800291424A Expired - Fee Related CN101238443B (zh) | 2005-08-08 | 2006-07-24 | 用于在计算机系统中控制存储器访问的方法和设备 |
Country Status (8)
| Country | Link |
|---|---|
| EP (1) | EP1915683B1 (zh) |
| JP (1) | JP2009505177A (zh) |
| KR (1) | KR20080031373A (zh) |
| CN (1) | CN101238443B (zh) |
| AT (1) | ATE415659T1 (zh) |
| DE (2) | DE102005037250A1 (zh) |
| RU (1) | RU2406114C2 (zh) |
| WO (1) | WO2007017365A1 (zh) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| RU2523935C2 (ru) * | 2012-04-28 | 2014-07-27 | Федеральное государственное бюджетное учреждение науки Институт проблем управления им. В.А. Трапезникова Российской академии наук | Способ устранения конфликта доступа к центру и реализующая способ система |
| JP7042709B2 (ja) * | 2018-06-28 | 2022-03-28 | ルネサスエレクトロニクス株式会社 | 半導体装置、制御システムおよび半導体装置の制御方法 |
Citations (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4872138A (en) * | 1987-06-03 | 1989-10-03 | Bull Hn Information Systems Italia S.P.A. | Transparent cache memory |
| US5297269A (en) * | 1990-04-26 | 1994-03-22 | Digital Equipment Company | Cache coherency protocol for multi processor computer system |
| CN1171159A (zh) * | 1994-12-23 | 1998-01-21 | 英特尔公司 | 具有减少功率操作特性的高速缓存一致性多道处理计算机系统 |
| EP0863464A1 (en) * | 1997-03-05 | 1998-09-09 | STMicroelectronics Limited | A cache coherency mechanism |
| US5822767A (en) * | 1995-04-12 | 1998-10-13 | Intel Corporation | Method and apparartus for sharing a signal line between agents |
| CN1196522A (zh) * | 1997-03-26 | 1998-10-21 | 国际商业机器公司 | 带转移模式字段的转移历史表 |
| US6385755B1 (en) * | 1996-01-12 | 2002-05-07 | Hitachi, Ltd. | Information processing system and logic LSI, detecting a fault in the system or the LSI, by using internal data processed in each of them |
| US6640313B1 (en) * | 1999-12-21 | 2003-10-28 | Intel Corporation | Microprocessor with high-reliability operating mode |
| US20040059875A1 (en) * | 2002-09-20 | 2004-03-25 | Vivek Garg | Cache sharing for a chip multiprocessor or multiprocessing system |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| SU1357957A1 (ru) * | 1984-10-17 | 1987-12-07 | Войсковая Часть 25840 | Устройство дл диагностики многопроцессорной системы |
| RU1819116C (ru) * | 1989-09-18 | 1995-12-10 | Харьковское приборостроительное конструкторское бюро "Авиаконтроль" | Трехканальная резервированная система |
| JP3317776B2 (ja) * | 1994-02-16 | 2002-08-26 | 株式会社日立製作所 | 情報処理装置 |
| JPH07248919A (ja) * | 1994-03-10 | 1995-09-26 | Fujitsu Ltd | データ処理装置 |
| US6751749B2 (en) * | 2001-02-22 | 2004-06-15 | International Business Machines Corporation | Method and apparatus for computer system reliability |
| JP2005165807A (ja) * | 2003-12-04 | 2005-06-23 | Hitachi Ltd | プロセッサ多重化システムにおける動作比較方式 |
-
2005
- 2005-08-08 DE DE102005037250A patent/DE102005037250A1/de not_active Withdrawn
-
2006
- 2006-07-24 AT AT06777920T patent/ATE415659T1/de not_active IP Right Cessation
- 2006-07-24 CN CN2006800291424A patent/CN101238443B/zh not_active Expired - Fee Related
- 2006-07-24 DE DE502006002217T patent/DE502006002217D1/de active Active
- 2006-07-24 KR KR1020087002897A patent/KR20080031373A/ko not_active Ceased
- 2006-07-24 WO PCT/EP2006/064560 patent/WO2007017365A1/de active Application Filing
- 2006-07-24 RU RU2008108471/08A patent/RU2406114C2/ru not_active IP Right Cessation
- 2006-07-24 EP EP06777920A patent/EP1915683B1/de not_active Not-in-force
- 2006-07-24 JP JP2008525515A patent/JP2009505177A/ja active Pending
Patent Citations (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4872138A (en) * | 1987-06-03 | 1989-10-03 | Bull Hn Information Systems Italia S.P.A. | Transparent cache memory |
| US5297269A (en) * | 1990-04-26 | 1994-03-22 | Digital Equipment Company | Cache coherency protocol for multi processor computer system |
| CN1171159A (zh) * | 1994-12-23 | 1998-01-21 | 英特尔公司 | 具有减少功率操作特性的高速缓存一致性多道处理计算机系统 |
| US5822767A (en) * | 1995-04-12 | 1998-10-13 | Intel Corporation | Method and apparartus for sharing a signal line between agents |
| US6385755B1 (en) * | 1996-01-12 | 2002-05-07 | Hitachi, Ltd. | Information processing system and logic LSI, detecting a fault in the system or the LSI, by using internal data processed in each of them |
| EP0863464A1 (en) * | 1997-03-05 | 1998-09-09 | STMicroelectronics Limited | A cache coherency mechanism |
| CN1196522A (zh) * | 1997-03-26 | 1998-10-21 | 国际商业机器公司 | 带转移模式字段的转移历史表 |
| US6640313B1 (en) * | 1999-12-21 | 2003-10-28 | Intel Corporation | Microprocessor with high-reliability operating mode |
| US20040059875A1 (en) * | 2002-09-20 | 2004-03-25 | Vivek Garg | Cache sharing for a chip multiprocessor or multiprocessing system |
Also Published As
| Publication number | Publication date |
|---|---|
| EP1915683B1 (de) | 2008-11-26 |
| RU2406114C2 (ru) | 2010-12-10 |
| RU2008108471A (ru) | 2009-09-20 |
| WO2007017365A1 (de) | 2007-02-15 |
| CN101238443A (zh) | 2008-08-06 |
| ATE415659T1 (de) | 2008-12-15 |
| EP1915683A1 (de) | 2008-04-30 |
| DE102005037250A1 (de) | 2007-02-15 |
| DE502006002217D1 (de) | 2009-01-08 |
| KR20080031373A (ko) | 2008-04-08 |
| JP2009505177A (ja) | 2009-02-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN115129615A (zh) | 用于内联元数据的数据重定位 | |
| US11360777B2 (en) | Cache systems and circuits for syncing caches or cache sets | |
| US6950909B2 (en) | System and method for reducing contention in a multi-sectored cache | |
| US11403226B2 (en) | Cache with set associativity having data defined cache sets | |
| US11372648B2 (en) | Extended tags for speculative and normal executions | |
| US11561903B2 (en) | Allocation of spare cache reserved during non-speculative execution and speculative execution | |
| US11860786B2 (en) | Data defined caches for speculative and normal executions | |
| US11954493B2 (en) | Cache systems for main and speculative threads of processors | |
| US10725849B2 (en) | Server RAS leveraging multi-key encryption | |
| US8458403B2 (en) | Architecture and method for cache-based checkpointing and rollback | |
| CN101238448B (zh) | 用于监控多处理器系统中的存储单元的方法和设备 | |
| CN101238443B (zh) | 用于在计算机系统中控制存储器访问的方法和设备 | |
| CN101238446A (zh) | 用于在具有至少两个执行单元的计算机系统中控制存储器访问的方法和设备 | |
| US20100131718A1 (en) | Multiprocessor system | |
| CN101238444A (zh) | 用于在具有至少两个执行单元的计算机系统中控制存储器访问的方法和设备 | |
| US20120011332A1 (en) | Data processing apparatus, method for controlling data processing apparatus and memory control apparatus |
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 | ||
| CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100616 Termination date: 20150724 |
|
| EXPY | Termination of patent right or utility model |