CN101048744A - 在具有多个组件的计算机***中产生模式信号的方法和设备 - Google Patents
在具有多个组件的计算机***中产生模式信号的方法和设备 Download PDFInfo
- Publication number
- CN101048744A CN101048744A CNA2005800364219A CN200580036421A CN101048744A CN 101048744 A CN101048744 A CN 101048744A CN A2005800364219 A CNA2005800364219 A CN A2005800364219A CN 200580036421 A CN200580036421 A CN 200580036421A CN 101048744 A CN101048744 A CN 101048744A
- Authority
- CN
- China
- Prior art keywords
- mode
- signal
- mode signal
- variation
- conversion
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 108
- 238000006243 chemical reaction Methods 0.000 claims description 142
- 230000008859 change Effects 0.000 claims description 14
- 238000000429 assembly Methods 0.000 claims description 11
- 230000000712 assembly Effects 0.000 claims description 11
- 238000013210 evaluation model Methods 0.000 claims description 11
- 238000011156 evaluation Methods 0.000 claims description 6
- 238000004422 calculation algorithm Methods 0.000 claims description 4
- 238000009795 derivation Methods 0.000 claims description 4
- 238000012544 monitoring process Methods 0.000 claims description 4
- 230000007704 transition Effects 0.000 description 19
- 230000001360 synchronised effect Effects 0.000 description 16
- 238000012545 processing Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 9
- 230000002349 favourable effect Effects 0.000 description 8
- 230000009849 deactivation Effects 0.000 description 7
- 230000002093 peripheral effect Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000008901 benefit Effects 0.000 description 5
- 230000007423 decrease Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 230000007935 neutral effect Effects 0.000 description 4
- 230000001105 regulatory effect Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000004913 activation Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- LBDSXVIYZYSRII-IGMARMGPSA-N alpha-particle Chemical compound [4He+2] LBDSXVIYZYSRII-IGMARMGPSA-N 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- JJWKPURADFRFRB-UHFFFAOYSA-N carbonyl sulfide Chemical compound O=C=S JJWKPURADFRFRB-UHFFFAOYSA-N 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000004069 differentiation Effects 0.000 description 2
- 230000005855 radiation Effects 0.000 description 2
- 230000008672 reprogramming Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000002650 habitual effect Effects 0.000 description 1
- 230000003760 hair shine Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000005764 inhibitory process Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR 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/1695—Error detection or correction of the data by redundancy in hardware which are operating with time diversity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/74—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
- G06F9/30189—Instruction operation extension or modification according to execution mode, e.g. mode flag
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3851—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/1654—Error detection by comparing the output of redundant processing systems where the output of only one of the redundant processing components can drive the attached hardware, e.g. memory or I/O
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/845—Systems in which the redundancy can be transformed in increased performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2105—Dual mode as a secondary aspect
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Mathematical Physics (AREA)
- Computer Security & Cryptography (AREA)
- Multimedia (AREA)
- Hardware Redundancy (AREA)
Abstract
一种用于在具有多个组件的计算机***中产生信号的方法和设备,其中,设置至少两个执行单元作为两个组件并且作为其它组件设置转换装置,其中在计算机***中,在至少两个工作模式之间进行转换,并且第一工作模式与比较模式相对应,而第二工作模式与性能模式相对应,其特征在于,在计算机***的组件中产生表明刚刚所处的工作模式的模式信号和/或模式信号的变化,以及在组件之外至少提供模式信号的变化和/或该模式信号本身。
Description
背景技术
由α粒子或者宇宙辐射所引起的瞬时故障日益成为集成半导体电路的问题。以下概率由于减小的结构宽度、下降的电压和更高的时钟频率而增加,即由α粒子或者宇宙辐射所引起的电压峰值在集成电路中使逻辑值失真。结果可能是错误的计算结果。因此,在安全性重要的***中、尤其是在汽车中,这种故障必须可靠地被检测到。在其中必须可靠地检测到电子设备的功能失误的安全性重要的***(诸如汽车中的ABS调节***)中,冗余度通常在这种***的相应的控制装置中被用于故障识别。因此,例如在公知的ABS***中,完整的微控制器分别是加倍的,其中冗余地计算所有ABS功能,并且对一致性进行检查。如果出现结果的不一致,则ABS***被断开。
一方面,微控制器的基本组件是存储模块(例如RAM、ROM、高速缓存)、核心和输入/输出接口、所谓的***设备(例如A/D转换器、CAN接口)。由于存储元件可以利用校验码(奇偶或者ECC)有效地被监控,并且***设备通常专用地作为传感器或者执行元件信号路径的部分被监控,所以在唯一地加倍微控制器的核心时存在其它的冗余方案。
这种具有两个集成核心的微控制器也被称为双核结构。两个核心冗余地并且时钟同步地(步锁(Lockstep)模式)执行相同的程序段,两个核心的结果被比较,并且于是在对一致性进行比较时,故障被识别。双核***的这种配置也被称为比较模式。
在其它的应用中,双核结构也被用于提高效率,也即用于提高性能。两个核心执行不同的程序、程序段和指令,由此能实现效率提高,因此双核***的这种配置可以被称为性能模式。该***也被称为对称多处理器***(SMP)。
这种***的扩展是借助于对特定地址的访问和专用的硬件设备通过软件在这两种模式之间的转换。在比较模式中,核心的输出信号被相互比较。在性能模式中,两个核心作为对称多处理器***(SMP)工作,并且执行不同的程序、程序段或者指令。
有利地,如果已知***所处于的模式,则采用这种***。因此,本发明的任务是提供能够产生这种模式信号的方法和装置。
发明内容
有利地,应用一种用于在具有多个组件的计算机***中产生信号的方法,其中,设置至少两个执行单元作为两个组件,而作为其它组件设置转换装置,其中在该计算机***中,在至少两个工作模式之间转换,并且第一工作模式与比较模式相对应,而第二工作模式与性能模式相对应,其特征在于,在计算机***的组件中产生表明刚刚所处的工作模式的模式信号和/或模式信号的变化,以及在组件之外至少提供模式信号的变化和/或该模式信号本身。
有利地,应用一种方法,在该方法中,将模式信号和/或模式信号的变化用于进行监控,其方式是将现有的、代表工作模式的信息与由模式信号和/或模式信号的变化所表示的或者由其导出的信息相比较。
有利地,应用一种方法,在该方法中,在计算机***的另一组件中评价模式信号和/或模式信号的变化。
有利地,应用一种方法,在该方法中,在执行单元***的组件中评价模式信号和/或模式信号的变化。
有利地,应用一种方法,在该方法中,在存储器保护单元(MPU)中评价模式信号和/或模式信号的变化。
有利地,应用一种方法,在该方法中,在中断控制器中,评价模式信号和/或模式信号的变化。
有利地,应用一种方法,在该方法中,计算机***包含操作***,并且模式信号和/或模式信号的变化被用于自监控该操作***,其方式是将存在于操作***中的、代表工作模式的信息与由模式信号和/或模式信号的变化所表示的或者由其导出的信息相比较。
有利地,应用一种方法,在该方法中,通过至少一个附加信息来保障模式信号和/或模式信号的变化。
有利地,应用一种方法,在该方法中,通过至少使模式信号和/或模式信号的变化加倍来保障模式信号和/或模式信号的变化。
有利地,应用一种方法,在该方法中,模式信号和/或模式信号的变化作为双轨信号来保障。
有利地,应用一种方法,在该方法中,模式信号和/或模式信号的变化在转换装置中被产生。
有利地,应用一种方法,在该方法中,作为转换装置设置组合式转换和比较单元,并且模式信号和/或模式信号的变化在该转换和比较单元中被产生。
有利地,应用一种方法,在该方法中,在至少一个执行单元中产生模式信号和/或模式信号的变化。
有利地,应用一种方法,在该方法中,在包括组合式转换和比较单元以及转换愿望识别单元的组件中产生模式信号和/或模式信号的变化。
有利地,应用一种方法,在该方法中,设置多于两个的工作模式,在这些工作模式之间转换。
有利地,应用一种方法,在该方法中,为了表明相应的工作模式设置能被配置的工作模式标识。
有利地,应用一种方法,在该方法中,为了表明相应的工作模式设置能被配置的指针变量。
有利地,应用一种方法,在该方法中,根据模式信号和/或模式信号的变化执行故障识别,其中在故障识别的范围内产生至少一个故障信号。
有利地,应用一种方法,在该方法中,模式信号的评价被用于安全性证明(Sicherheitsnachweis)。
有利地,应用一种方法,在该方法中,模式信号是这样多值的,使得能通过模式信号来表示多于两个的模式。
有利地,应用一种方法,在该方法中,在比较模式下应用表决。
有利地,应用一种方法,在该方法中,在比较模式下应用容错算法。
有利地,应用一种用于在具有多个组件的计算机***中产生信号的设备,其中,设置至少两个执行单元作为两个组件并且作为其它组件设置转换装置,其中在计算机***中,在至少两个工作模式之间进行转换,并且第一工作模式与比较模式相对应,而第二工作模式与性能模式相对应,其特征在于,该设备被包含在计算机***的组件中并且这样被构造,使得产生表明刚刚所处的工作模式的模式信号和/或模式信号的变化,其中在组件之外还至少提供模式信号的变化和/或该模式信号本身。
有利地,应用一种设备,在该设备中,这样产生模式信号,使得通过模式信号能表示多于两个的模式。
有利地,应用一种设备,在该设备中能配置模式信号的意义和/或接口语法。
有利地应用一种具有所述设备的组件。
有利地,将所述方法和设备用于计算机***中。
其它优点和有利的改进方案由权利要求的特征以及说明书得到。
附图说明
在图1中示出了一种多处理器***G60,其具有两个执行单元G10a、G10b、比较单元G20、转换单元G50、和转换愿望识别单元G40。
在图2中示出了一种多处理器***G60,其具有两个执行单元G10a、G10b、由比较单元G20和转换单元G50所组成的组合式比较和转换单元G70、以及转换愿望识别单元G40。
在图3中示出了一种多处理器***G60,其具有两个执行单元G10a、G10b、由比较单元G20和转换单元G50以及转换愿望识别单元G40所组成的组合式转换愿望识别、比较和转换单元G80。
在图4中示出了一种具有两个执行单元G210a、G210b以及转换和比较单元G260的多处理器***G200。
在图5中以流程图的形式示出了一种方法,所述方法在特定的流水线级G230a、G230b内使特定的未定义的位组合与NOP或者其它中立的位组合交换。
在图6中示出一种具有两个执行单元H210a、H210b以及转换和比较单元H260的多处理器***H200。
在图7中以流程图的形式示出了一种方法,所述方法说明在具有两个执行单元的多处理器***中在从比较模式转换到性能模式时如何能够借助于单元ID来分离程序流。
在图8中示出了一种在具有三个执行单元的多处理器***中在从比较模式转换到性能模式时如何能够借助于单元ID来分离程序流的可能方法。
在图9中以流程图的形式示出了一种方法,所述方法在从性能模式转换到比较模式时使执行单元同步。
在图10中示出了一种状态自动机,其示出在性能模式与比较模式之间的转换。
在图11中示出了一种多处理器***G400,其具有两个执行单元以及两个包括其中所含有的中断屏蔽寄存器G430a、G430b在内的中断控制器G420a、G420b和不同的中断源G440a至G440n。
在图12中示出一种包括两个执行单元、转换和比较单元、以及具有三个寄存器组的中断控制器的多处理器***。
在图13中示出了比较单元的最简单形式。
图14示出具有用于补偿相位偏移的单元的比较单元。
在图15中示出了在比较模式中优选的组件M700(转换和比较单元)的原理特性。
在图16中示出了在性能模式中优选的组件M700(转换和比较单元)的原理特性。
在图17中示出了转换和比较单元的实施形式。
在图18中示出了转换和比较单元的另一实施形式。
在图19中示出了产生模式信号的转换和比较单元。
在图20中示出了转换和比较单元的一般表示。
图21示出产生一般模式和一般故障信号的转换和比较单元的一般表示。
在图22中示出了与外部单元的问答通信。
在图23中示出了与智能执行元件的通信。
具体实施方式
下面,不仅处理器、核心、CPU、而且FPU(浮点单元)、DSP(数字信号处理器)、协处理器或者ALU(算术逻辑单元)都可以被称为执行单元。
在图1中示出了一种多处理器***G60,其具有两个执行单元G10a、G10b、比较单元G20、转换单元G50、和转换愿望识别单元G40。
本发明涉及在图1、图2、图3中所示的多处理器***G60,所述多处理器***G60具有至少两个执行单元G10a、G10b、比较单元G20、转换单元G50和转换愿望识别单元G40。转换单元G50具有到至少两个***接口G30a、G30b的至少两个输出端。寄存器、存储器和如数字输出端、D/A转换器、通信控制器的***设备能够经由这些接口被控制。该多处理器***可以以至少两种工作模式、即比较模式(VW)和性能模式(PM)运行。
在性能模式下,不同的指令、程序段或者程序在不同的执行单元中并行实施。在该工作模式下,比较单元G20被去激活。在该工作模式下,转换单元G50如此被配置,以致每个执行单元G10a、G10b与***接口G30a、G30b相连接。在此,执行单元G10a与***接口G30a相连接,而执行单元G10b与***接口G30b相连接。
在比较模式下,相同的或者同类的指令、程序段或者程序在两个执行单元G10a、G10b中被执行。有利地,这些指令以时钟同步的方式被执行,但是具有异步性或者所定义的时钟偏差的执行也是可设想的。执行单元G10a、G10b的输出信号在比较单元G20中被比较。在不同时,识别出故障,并且可以采取相应的措施。这些措施能够触发故障信号,引入故障处理,对开关进行操作,或者是这些措施和其它可设想的措施的组合。在一种变型方案中,转换单元G50如此被配置,使得只有一个信号被连接到***接口G30a、G30b。在另一种配置中,转换单元仅仅导致所比较的并且因此相同的信号被连接到***接口G30a、G30b上。
转换愿望识别单元G40不依赖于正好有效的模式来检测向另一模式转换的愿望。
在图2中示出了一种多处理器***G60,其具有两个执行单元G10a、G10b、由比较单元G20和转换单元G50所组成的组合式比较和转换单元G70、以及转换愿望识别单元G40。
如在图2中所示,在上述事实情况的实施形式中,转换单元G50和比较单元G20可以被组合成共同的转换和比较单元(UVE)G70。于是,该共同的组件G70接管单个组件G50、G20的任务。在图15、图16、图17、图18和图19中示出了UVE G70的实施变型方案。
如在图3中所示,在另一实施形式中,转换愿望识别单元G40、比较单元G20和转换单元G50可以被组合在一个共同的组件G80中。在另一(图中未示出的)实施形式中,转换愿望识别单元G40和比较单元G20可以被组合在一个共同的组件中。将转换愿望识别单元G40与转换单元G50组合在共同的组件中同样是可设想的。
在下文中,如果没有其它说明,则出发点是存在转换愿望识别单元G40以及组合式转换和比较单元G70。
也针对多于两个执行单元的应用,在图20中示出了转换和比较组件的一般情况。n个信号N140、...、N14n从n个待考虑的执行单元通向转换和比较组件N100。该转换和比较组件N100可以由这些输入信号产生直至n个输出信号N160、...、N16n。在最简单的情况(即“纯性能模式”)下,所有信号N14i被引到相对应的输出信号N16i。在对立的边界情况(即“纯比较模式”)下,所有信号N140、...、N14n只被引到输出信号N16i中的正好一个。
借助该图能说明如何能够形成不同的可设想的模式。为此,在该图中包含开关逻辑N110的逻辑组件。该组件不必作为特有的组件存在。决定性的是实现***中的所述功能。开关逻辑N110首先确定到底有多少个输出信号。该开关逻辑进一步确定,输入信号中的哪一个有助于输出信号中的哪一个。在此,一个输入信号能够正好有助于一个输出信号。以数学形式不同地表述也就是通过开关逻辑来定义以下函数,该函数将集合{N160,...,N16n}的元素分配给集合{N140,...,N14n}的每个元素。
于是,处理逻辑N120针对输出N16i中的每一个确定:输入以何种形式有助于该输出信号。该组件也不必作为特有的组件存在。决定性的又是实现***中的所述功能。为了示例性地描述不同的变型可能性,在不限制一般性的情况下假设,输出N160通过信号N141、...、N14m来产生。如果m=1,这则简单地对应于信号的接通,如果m=2,则信号N141、N142如例如在图13、图14中的比较单元中所述的那样被比较。该比较可以同步地或者异步地被执行,可以逐位地或者只对重要的位或者也以公差带来执行。
如果m>=3,则存在多种可能性。
第一种可能性在于比较所有信号,并且在存在至少两个不同的值时检测出故障,可选地可以用信号通知所述故障。
第二种可能性在于从m中选择k(k>m/2)。这可以通过应用比较单元来实现。如果信号中的一个被识别为不同,则可选地生成故障信号。如果所有三个信号都不同,则可能与该故障信号不同的故障信号可以被生成。
第三种可能性在于将这些值输送给一种算法。这例如可以是平均值、中值的形成或容错算法(FTA)的应用。这种FTA基于:删去输入值的极值并且对剩余的值进行取平均值的方式。可以对剩余的值的整个集合或者优选地对能够在HW(硬件)中容易形成的子集进行这种取平均值。在这种情况下,并不总是需要实际上对值进行比较。在平均值构成中,例如必须只相加并且相除,FTM、FTA或者中值要求部分的分类。必要时这里也可以在足够大的极值的情况下可选地输出故障信号。
将多个信号处理为一个信号的这些不同的所述可能性为了简明而被称为比较操作。因此,处理逻辑的任务是为每个输出信号并且从而也为所属的输入信号确定比较操作的准确形态。开关逻辑N110(也即上述函数)和处理逻辑(也就是说每个输出信号、即每个函数值的比较操作的确定)的信息的组合是模式信息,并且该模式信息确定模式。该信息在一般情况下当然是多值的,也即不能仅仅通过一个逻辑位来表示。并不是所有在理论上可设想的模式在所给定的实施中都是有意义的,优选地将限制所允许的模式的数量。要强调的是:在仅仅两个只存在比较模式的执行单元的情况下,整个信息能被浓缩成仅仅一个逻辑位。
从性能模式到比较模式的转换在一般情况下通过以下方式来表征,即在性能模式下根据不同的输出映射的执行单元在比较模式下根据相同的输出映射。优选地,这通过以下方式来实现,即存在执行单元的子***,在所述子***中,在子***中要考虑的所有输入信号N14i在性能模式下都被直接转换到相应的输出信号N16i,而这些输入信号N14i在比较模式下所有都根据一个输出来映射。可替换地,这种转换也可以通过改变配对来实现。这通过以下方式来说明,即虽然在本发明的给定的构成中可以这样限制所允许的模式的数量,以致这是这种情况,但是在一般情况下可以不谈及性能模式和比较模式。但是可以总是谈及从性能模式到比较模式(和相反)的转换。
在工作时能在通过软件控制的情况下在这些模式之间动态地转换。在此,通过执行特定的转换指令、特定的指令序列、明确标识的指令或者通过多处理器***的执行单元中的至少一个对某些地址的访问来触发该转换。
误操作(Fehlerschaltung)逻辑N130收集例如由比较单元所生成的故障信号,并且可以可选地通过以下方式被动地切换输出N16i,即该误操作逻辑例如经由开关中断这些输出N16i。
但是下面的例子大多集中于两个执行单元的情况,借助该情况能更简单地描述大多数构思。
模式之间的转换可以通过不同的方法来编码。在一种可能的方法中能应用特殊的转换指令,所述转换指令由转换愿望识别单元G40检测。用于对转换进行编码的另一可能的方法是通过对特定的存储区的访问来定义的,所述访问又由转换愿望识别单元G40来检测。另一方法在转换愿望识别单元G40中评价用信号通知转换的外部信号。下面描述在处理器的现有的指令集中应用未被利用的位组合的方法。该方法的特殊优点在于能够继续应用现有的开发环境(汇编程序、编译器、连接器、调试器)。
在图4中示出了一种多处理器***G200,其具有两个执行单元G210a、G210b以及转换和比较单元G260。为了在比较模式与性能模式之间进行转换(和反之),至少两个执行单元G210a、G210b的在汇编程序中没有被定义的位组合被使用。在指令集的说明中被规定为未定义的或者非法的所有位组合都应当被理解为在这种意义上的没有被定义的或者未定义的位组合。这例如是非法操作数、非法指令、非法操作。这些未定义的位组合的一般标识是:正常的执行单元在执行这种位组合时产生故障信号或者显示出没有被定义的特性。因此,这些位组合不需要被用于表示惯用程序的语义。
因此,如对于单处理器***来说存在的迄今的开发环境可以被用于软件开发。这例如可以通过定义宏“SWITCH MODE TO PM(转换模式至PM)”和宏“SWITCH MODE TO VM(转换模式至VM)”来实现,所述宏把相对应的在上述意义上未定义的位组合***代码中的适当的位置处。
于是,这种组合的应用可以被定义为一般的“SWITCH(转换)”宏。于是该宏导致依赖于目前的模式向分别另外的模式的转换。如果在***中存在多于两种的不同模式,则为了应用该方法必须存在更多的这种组合,于是优选地可以针对每种模式将一个这种组合用于进行转换识别。
根据本发明,转换愿望通过在指令集中没有被定义的位组合来编码。所述组合不允许在执行单元G210a、G210b内以通常的方式来处理。由于该原因,建议附加的流水线级(REPLACE级)G230a、G230b,其识别相对应的位组合并且通过中立的位组合来代替这些相对应的位组合以便继续处理。为此,有利地使用“NOP”(无操作)指令。NOP指令的特征在于,除了指令指针之外,该NOP指令不改变执行单元的内部状态。在此,REPLACE级G230a、G230b被***在通常第一级(即FETCH级G220a、G220b)之后和在剩余的流水线级G240a、G240b之前,在汇编程序中没有被定义的位组合在这里被组合在一个单元中。
根据本发明,如果用于进行转换的相对应的位组合已被识别,则作为流水线单元G215a、G215b中的特定的流水线级G230a、G230b的转换愿望识别单元G40的这里所示的实施方案将产生附加的信号G250a、G250b,所述附加的信号G250a、G250b用信号通知独立的转换单元和比较单元G260:应执行处理模式的转换。
REP级G230a、G230b优选地被布置在执行单元G210a、G210b的流水线单元G215a、G215b中的FET G220a、G220b与剩余的流水线级G240a、G240b之间。在此,REP级G230a、G230b识别相对应的位组合,并且在该情况下将NOP指令转发给剩余的级G240a、G240b。同时,相应的信号G250a或者G250b被激活。在所有其它的情况下,REP级G230a、G230b表现中立,也即将所有其它的指令不加改变地传递给剩余的级G240a、G240b。
在图5中以流程图的形式示出了一种方法,所述方法在特定的流水线级G230a、G230b内使特定的未定义的位组合与NOP或者其它中立的位组合交换。在FETCH级G300中,指令(也即位组合)从存储器中被取出。此后在块G310中区别,所取出的位组合是否对应于对转换进行编码的特定的未定义的位组合。如果情况不是如此,则在下一步G320中将位组合在未改变的情况下递交给剩余的流水线级G340,以便进行继续处理。如果对转换进行编码的特定的位组合在步骤G310中已被识别,则该位组合在步骤G330中由NOP位组合来代替,并且然后该NOP位组合被递交给其它流水线级G340,以便进行继续处理。在有利的实施形式中,块G310、G320、G330表示根据本发明的REPLACE级G230a、G230b的功能,其中这些块也可以包含其它功能。
在图6中示出了一种多处理器***H200,其具有两个执行单元H210a、H210b以及转换和比较单元H260。组件H220a、H220b、H240a、H240b具有与G220a、G220b、G240a、G240b相同的意义。在这里通过特定的流水线级H230a、H230b所描述的转换愿望识别单元G40的可替换的实施方案中,所述转换愿望识别单元G40除了具有用信号通知转换的信号H250a、H250b之外还具有其它信号。为了能够使执行单元H210a、H210b在从性能模式转换到比较模式时同步,执行单元H210a、H210b的流水线单元H215a、H215b分别具有一个信号输入H280a、H280b,利用该信号输入H280a、H280b能够停止处理。该信号由交换和比较单元H260为首先已经识别出转换指令并且从而已经激活了信号H250a或H250b的那个流水线单元H215a或者H215b而设置。只有当执行单元H210a、H210b的两个流水线单元H215a、H215b已经识别出转换指令并且已经通过软件或者其它硬件措施使其内部状态同步,所述信号H280a、H280b才又被取消。在从比较模式转换到性能模式时不需要H280a、H280b,因为不需要同步。
这里所述的建议的前提是这样的单元(被称为ID单元)或者方法,通过该单元或者方法,每个执行单元都能够确定其单独的号码或者单元ID。在具有两个执行单元的***中,例如一个执行单元自身可以确定号码0,另一个执行单元可以确定号码1。在具有多于两个的执行单元的***中,号码相应地被分配或确定。该ID不在比较模式和性能模式之间进行区分,而是唯一地表示一个执行单元。该ID单元可以被包含在相应的执行单元中,例如被实施为处理器状态寄存器中的位或者位组合,或者被实施为特有的寄存器、或者单个位、或者在执行单元外部的根据问询提供相对应的ID的单元。
在执行单元根据转换愿望执行了到性能模式的转换之后,虽然比较单元不再是有效的,但是执行单元总是还执行相同的指令。这原因在于指令指针不受转换影响,所述指令指针在程序中表征执行工作在下一步中工作或目前工作的位置。为了执行单元随后能够执行不同的软件模块,执行单元的程序流程必须被分开。因此根据该情况,指令指针在性能模式中通常具有不同的值,因为根据本发明,独立的指令、程序段或者程序被处理。在这里所述的建议中通过确定相应的执行单元号码来实现程序流程的分开。根据执行单元具有哪个ID,该执行单元执行某个软件模块。由于每个执行单元都具有单独的号码或者ID,所以所参与的执行单元的程序流由此能可靠地被分开。
在图7中以流程图的形式示出了一种方法,所述方法表明在具有两个执行单元的多处理器***中在从比较模式转换到性能模式时如何能够借助于单元ID将程序流分开。在执行从比较模式到性能模式的转换G500之后,由两个执行单元进行单元ID或者执行单元号码的询问G510。在此,根据本发明,执行单元0将获得执行单元号码0,执行单元1将获得执行单元号码1。在G510中进行所确定的执行单元号码与号码0的比较。如果这些号码相同,则对于其该比较已成功的执行单元在步骤G520中继续进行执行单元0的编码。对于其该比较没有成功的执行单元在G530中继续进行与号码1的比较。如果该比较成功,则在G540中继续进行执行单元1的编码。如果该比较没有成功,则因此为相对应的执行单元确定不等于0和1的执行单元号码。这是故障情况,并且继续进行G550。
在图8中描述了用于三个执行单元的可能的方法。在执行从比较模式到性能模式的转换H500之后,由执行单元进行单元ID或者执行单元号码的询问H510。在此,根据本发明,例如执行单元0将获得执行单元号码0,执行单元1将获得执行单元号码1,并且执行单元2将获得执行单元号码2。在H510中进行所确定的执行单元号码与号码0的比较。如果这些号码相同,则对于其该比较已成功的执行单元在步骤H520中继续进行执行单元0的编码。对于其该比较没有成功的执行单元在H530中继续进行与号码1的比较。在该比较成功的执行单元中,在H540中继续进行执行单元1的编码。对于其该比较没有成功的比较单元在H535中继续进行与号码2的比较。对于其该比较成功的执行单元将在H536中继续进行执行单元2的编码。如果该比较没有成功,则因此为相对应的执行单元确定了不等于0、1和2的执行单元号码。这是故障情况,并且继续进行H550。代替与号码的比较,所确定的执行单元号码也可以直接被用作转移表中的索引。
根据该说明,该方法也可以被用于具有多于三个的执行单元的多处理器***。
如果从性能模式转换到比较模式,则必须注意多种情况。在从性能模式转换到比较模式时必须保证执行单元的内部状态在转换之后是同样的,否则如果不同的起始状态导致不同的输出,则在比较模式下将可能识别出故障。这可以通过硬件、通过软件、通过固件或者以所有三者的组合形式来执行。其前提是所有执行单元在转换到比较模式之后执行相同的或者同样的指令、程序或者程序段。另外描述了一种同步方法,如果比较模式的特征在于处理相同的指令并且进行精确到位的比较,则能应用所述同步方法。
在图9中以流程图的形式示出一种方法,所述方法使执行单元在从性能模式转换到比较模式时同步。在步骤G600中,所有中断优选地被禁止。这不仅仅是重要的,因为对于比较模式来说中断控制器必须相应地被重新编程。还应该通过软件来适应执行单元的内部状态。但是,如果在准备转换到比较模式期间中断被触发,则在没有其它花费的情况下不再可能相适应。
步骤G610:如果两个执行单元具有独立的高速缓存,则还必须在转换之前使高速缓存的内容相适应,以便防止在比较模式下对于一个执行单元的地址来说出现高速缓存命中(Cache-hit),而对于另一执行单元来说出现高速缓存未命中(Cache-miss)。如果这不是由高速缓存硬件独立地执行,则这例如可以通过将所有的高速缓存管线(Cacheline)标记为无效来实现。必须一直等待,直到该高速缓存(或者多个高速缓存)完全无效。这可以在需要时通过程序代码中的等待循环来保证。这也可以通过其它方式来实现,决定性的是在该步骤之后高速缓存处于相同的状态。
在步骤G620,执行单元的写缓冲器被清空,以便在转换之后不发生执行单元的激活,所述激活仍由性能模式引起。
在步骤G630,执行单元的流水线级的状态被同步。为此,例如在转换序列/转换指令之前执行适当数量的NOP(无操作)指令。NOP指令的数量取决于流水线级的数量,并且从而依赖于相应的结构。哪个指令适于作为NOP指令同样依赖于结构。如果执行单元具有指令高速缓存,则在此应保证,该指令序列对准高速缓存管线的边界(Alignment)。由于指令高速缓存在执行该NOP之前已经被标记为无效,所以该NOP必须首先被加载在高速缓存中。如果该指令序列在高速缓存管线边界处开始,则在实现用于转换的指令之前结束从存储器(例如RAM/ROM/闪存)到高速缓存的数据传送。这在确定NOP的必要的数量时也必须被考虑。
在步骤G640,用于转换到比较模式的指令步骤实际被执行。
在步骤G650,使每个执行单元的相应的寄存器文件的内容相适应。为此,在转换之前或者之后,寄存器可以被加载相同的内容。在这种情况下重要的是:在寄存器内容被向外部传送并且从而由比较单元比较之前,执行单元中的寄存器的内容在转换之后是相同的。
在步骤G660,中断控制器被重新编程,以致外部的中断信号在所有互连的执行单元中触发相同的中断。
在步骤G670,中断再次被释放。
如果从程序流程来看应该何时转换到交换模式中不是明确的,则必须将所计划的转换通知给所参与的执行单元。为此,优选地在属于相应的执行单元的中断控制器中例如通过软件来启动中断。于是中断处理促使执行用于进行互连的上述序列。
在图10中示出了状态自动机,其示出性能与比较模式之间(和相反)的转换。在由“开机(Power On)”或者复位(软件或者硬件)引起***启动时,***经由过渡G800被置于状态G700。一般适用的是,***在能够触发复位的未定义的事件之后总是在状态G700开始工作。能够触发复位的示例性事件是外部信号、电源的问题或者使继续工作不再有意义的内部故障事件。因此,转换和比较单元G70以及工作在性能模式下的多处理器***G60的状态G700是***的默认状态。在采取通常未定义的状态的所有情况下采取默认状态G700。状态G700的这种默认调节在此通过硬件措施来保证。***状态或转换和比较单元G60的状态例如可以在寄存器中、在寄存器的位中、通过寄存器中的位组合或者通过触发器被编码。
于是通过硬件来保证,在复位或者开机之后总是采取状态G700。这通过以下方式来保证,即例如复位信号或“开机”信号被引导到触发器或者寄存器的复位输入端或者设置输入端上。
在状态G700中,***工作在性能模式。因此,执行单元G10a、G10b执行不同的指令、程序或者程序块。例如可以通过执行单元G10a、G10b执行特定的转换指令来识别转换愿望。另外的可能性是通过对特定的存储器地址的访问、通过内部信号或者也通过外部信号来识别。只要不存在转换愿望,多处理器***G60就停留在状态G700,并且从而转换和比较单元G70也停留在状态G700。另外,转换条件的识别被称为转换愿望,所述转换条件如在该特定***中表征转换愿望那样被表征。
通过过渡G810来表示停留在状态G700。如果转换愿望由执行单元G10a识别出,则转换和比较单元G70经由过渡G820被转换到状态G710。状态G710因此表示以下情形,即执行单元G10a已经识别出转换愿望并且等待,直到执行单元G10b同样识别出该转换愿望为止。只要情况不是如此,转换和比较单元G70就停留在状态G710,这用过渡G830来表示。
如果执行单元G10b在状态G710同样识别出转换愿望,则过渡G840发生。因此,转换和比较单元G70采取状态G730。该状态表示两个执行单元G10a、G10b已经识别出转换愿望的情形。在状态G730中进行同步方法,利用所述同步方法使两个执行单元G10a、G10b彼此同步,以便随后在比较模式工作。在该过程期间,转换和比较单元G70停留在状态G730,这用过渡G890来表示。
如果在状态G700首先由执行单元G10b识别出转换愿望,则经由过渡G860转换到状态G720。状态G720因此表示以下情形,即执行单元G10b已经识别出转换愿望并且等待,直到执行单元G10a同样识别出转换愿望为止。只要情况不是如此,转换和比较单元G70就停留在状态G720,这用过渡G870来表示。如果执行单元G10a在状态G720同样识别出转换愿望,则过渡G880发生。因此,转换和比较单元采取状态G730。
如果在状态G700这两个执行单元G10a、G10b同时识别出转换愿望,则立即过渡到状态G730中。该情况表示过渡G850。
如果转换和比较单元G70处于状态G730,则两个执行单元G10a、G10b已经识别出转换愿望。在该状态,执行单元G10a、G10b的内部状态被同步,以便在结束该同步过程之后在比较模式工作。随着该同步工作的结束而发生过渡G900。该过渡表明同步的结束。在状态G740,执行单元G10a、G10b在比较模式下工作。同步工作的结束可以由执行单元G10a、G10b自己用信号通知。这意味着,如果两个执行单元G10a、G10b已经用信号通知:它们准备在比较模式下工作,则过渡G900发生。该结束也可以在固定地调整的时间内用信号来通知。这意味着,在转换和比较单元G70中对在状态G730停留多长时间固定地进行编码。该时间如此被调整,以致两个执行单元G10a、G10b已经可靠地结束了其同步工作。于是,在经过该时间之后,过渡G900被启动。在另一变型方案中,如果两个执行单元G10a、G10b已经结束了其同步工作,则转换和比较单元G70可以监控并且自己识别执行单元G10a、G10b的状态。于是,在识别之后,导入过渡G900。
只要没有转换愿望被识别出,多处理器***G60就停留在比较模式,这通过过渡G910来表示。如果在状态G740转换愿望被识别出,则转换和比较单元经由过渡G920被置于状态G700。如已经描述的那样,***在状态G700在性能模式下工作。于是,在从状态G740过渡到状态G700时,程序流的分开可以如在所述方法中那样被执行。
在图11中示出了一种多处理器***G400,其具有两个执行单元G410a、G410b以及包括其中所包含的中断屏蔽寄存器G430a、G430b在内的两个中断控制器G420a、G420b和不同的中断源G440a-G440n。另外示出了具有专门的中断屏蔽寄存器G460的转换和比较单元G450。
有利地,每个执行单元G410a、G410b具有其自己的中断控制器G420a、G420b,以便能够在性能模式下同时处理两个中断。这特别在中断处理是***性能的瓶颈的***中是有利的。在此,中断源G440a-G440n有利地分别相同地被连接到两个中断控制器G420a、G420b。这种连接方式导致在没有其它措施的情况下在两个执行单元G410a、G410b上触发相同的中断。在性能模式下,中断控制器G420a、G420b如此被编程,以致相对应的中断源G440a-G440n根据应用适当地被分配到不同的执行单元G410a、G410b。这借助于对中断屏蔽寄存器G430a、G430b的适当编程来实现。屏蔽寄存器在寄存器中为每个中断源G440a-G440n都设置一个位。如果该位被设置,则中断被禁止,也即该中断不被转交给所连接的执行单元G410a、G410b。在性能模式下,给定的中断源G440a-G440n有利地由正好一个执行单元G410a或者G410b处理。这有利地至少适用于中断源中的一些。因此,可以实现,在不发生中断嵌套(中断处理通过第二中断被中断)或者中断挂起(第二中断的处理被推迟,直到第一中断的处理结束为止)的情况下,多个中断源G440a-G440n能够同时被处理。
在比较模式下必须保证,中断控制器G420a、G420b在所有执行单元G410a、G410b上同时触发相同的中断,否则将根据比较模式识别出故障。这意味着,在同步阶段中在从性能模式转换到比较模式时必须保证中断屏蔽寄存器G430a、G430b是相同的。这种同步在图9中在步骤G660被描述。这种同步可以通过软件用以下方式来执行,即两个中断屏蔽寄存器G430a、G430b相应地以相同的值被编程。建议应用专门的寄存器G460,以便加速转换过程。在一种实施形式中,该寄存器G460被布置在转换和比较单元G460中,但是也可以被包含在转换愿望识别单元G40、组合式转换愿望识别单元、比较单元、转换单元G 80以及所有组合中。同样可以设想的是,该寄存器被布置在这三个组件之外另一适当的位置处。寄存器G460包含应该在比较模式下适用的中断屏蔽。转换和比较单元G450从转换愿望识别单元G40获得用于从性能模式转换到比较模式的信号。在中断可能在步骤G600被禁止之后,中断控制器G420a、G420b的中断屏蔽寄存器G430a、G430b被重新编程。这在转换信号已被获得并且中断控制器G420a、G420b已被禁止之后现在通过硬件由转换和比较单元G450与剩余的同步步骤并行地执行。有利地,在比较模式下不是单独地对中断屏蔽寄存器G430a、G430b进行重新编程,而总是对中央寄存器G460进行重新编程。于是,该中央寄存器G460同步地通过硬件被转移到两个中断屏蔽寄存器G430a、G430b上。这里针对中断屏蔽寄存器所描述的方法可以以相同的方式转用到在中断控制器中所布置的所有中断状态寄存器。当然,也可以设想代替寄存器G460而应用其它的存储介质,可以从所述存储介质尽可能快速地转移到中断屏蔽寄存器G430a、G430b上。
在图12中建议一种多处理器***G1000,其包括两个执行单元G1010a、G1010b、转换和比较单元G1020、以及具有三个不同的寄存器组G1040a、G1040b、G1050的中断控制器G1030。如图12中所示,作为上述解决方案的替换方案,建议一种专用的中断控制器G1030。该中断控制器G1030被用在多处理器***G1000中,该多处理器***G1000在该例子中被示出为具有两个执行单元G1010a、G1010b、以及能够在比较模式与性能模式之间转换的转换和比较单元G1020。
在此,在性能模式下应用寄存器组G1040a、G1040b。在这种情况下,中断控制器G1030与两个中断控制器G420a、G420b完全一样地工作。该特性在图11中被示出和描述。在此,寄存器组G1040a被分配给执行单元G1010a,而寄存器组G1040b被分配给执行单元G1010b。中断源G1060a-G1060n通过屏蔽被适当地分配到执行单元G1010a、G1010b。在从性能模式转换到比较模式时,转换和比较单元G1020产生信号G1070。该信号用信号通知中断控制器G1030:被转换到比较模式或***从该时刻起在比较模式下工作。此后,中断控制器G1030应用寄存器组G1050。因此保证在两个执行单元G1010a、G1010b上形成相同的中断信号。转换和比较单元G1020又通过信号G1070把从比较模式到性能模式的转换用信号通知给中断控制器G1030,随着所述从比较模式到性能模式的转换又转换到寄存器组G1040a、G1040b。因此,也可以有利地通过以下方式来实现对相对应的寄存器组的保护,即在性能模式下只允许对寄存器组G1040a、G1040b的写,并且通过硬件来抑制对为比较模式所保留的寄存器组G1050的写。同样在另一方向上也能在比较模式下只允许对寄存器组G1050的写,而抑制对寄存器组G1040a、G1040b的写。
在图13中示出了比较单元M500、G20的最简单形式。具有至少两个在性能模式与比较模式之间转换的执行单元G10a、G10b的多处理器***G60中的基本组件是比较单元M500。在图13中以最简单的形式示出了该比较单元M500。比较组件M500可以接收两个输入信号M510和M511。然后,该比较组件M500在这里所示的上下文中优选地在逐位一致的意义上比较两个输入信号的一致性。在一致的情况下,输入信号M510、M511的值被给予输出信号M520,并且故障信号M530未被激活,也即故障信号M530用信号通知“良好的”状态。如果比较组件检测出不一致性,则故障信号M530被激活。于是信号M520可以可选地被去激活。这具有以下优点,即从相对应的***中不得出故障(“错误抑制(faultcontainment)”)。也就是说,位于执行单元之外的其它组件不会由于潜在的有错误的信号而被损坏。可是也存在这样的***,在这些***中信号M520不必被去激活。如果在***层面上只要求故障沉默(Fail-silence),则例如情况如此。于是,故障信号能够例如被引向外部。
从该基础***出发可设想多种实施形式。组件M500首先可以被实施为所谓的TSC(全自检(totally self checking))组件。在这种情况下,故障信号M530在至少两条线路(“双轨”)上被引向外部,并且通过内部的设计和故障发现措施来保证:在比较组件的每种可能的故障情况下正确地存在或者可识别地不正确地存在该信号。在此,双轨信号通过两条线路优选地如此提供二进制信号,以致两条线路在无故障的情况下相互反向。在使用本发明***时的优选变型方案是应用这种TSC比较单元。
第二类实施形式可以如下来区分,即两个输入M510、M511(或M610、M611)必须具有何种同步程度。一种可能的实施形式通过逐时钟的同步来表征,也即数据的比较可以在一个时钟内被执行。
轻微的变化通过以下方式形成,即在输入之间有固定的相位偏移时应用同步延迟元件,该同步延迟元件使相对应的信号例如延迟多个半数个(halbzahlig)时钟周期或者整数个时钟周期。这种相位偏移有助于避免共性原因故障,也即避免能够同时或者同样地影响多个处理单元的这种故障原因。
因此,图14描述另一实施形式。组件和信号M600、M610、M611、M620、M630具有与图13中的相对应的组件和信号M500、M510、M511、M520、M530相同的意义。因此,在图14中除了这些组件之外还***了组件M640,该组件M640使在时间上较早的输入延迟所述相位偏移。优选地,该延迟元件被安置在比较单元中,以便只在比较模式中应用该延迟元件。可替换地或者补充地,可以将中间缓冲器M650、M651置于输入链中,以便同样能够容忍不是纯粹的时钟或相位偏移的这种异步性。优选地,该中间缓冲器被设计为FIFO(先进先出)存储器。这种存储器具有一个输入端和一个输出端,并且可以存储多个存储字。到达的存储字在新的存储字到达时在其位置方面被移动。在最后的位置(缓冲器深度)之后,所述存储字“从存储器”被移出。如果存在这种缓冲器,则也可以容忍直至缓冲器的最大深度的异步性。在这种情况下,如果缓冲器溢出,则故障信号也必须被输出。
此外,在比较单元可以根据如何生成信号M520(或者M620)来区分实施形式。优选的实施形式是将输入信号M510、M511(或M610、M611)置于输出端上,并且使得通过开关能中断连接。该实施形式的特殊优点在于,为了在性能模式与可能的不同比较模式之间转换,可以应用相同的开关。可替换地,信号也可以由比较单元内部的中间存储器生成。
最后一类实施形式可以如下来区分,即在比较单元存在多少个输入并且比较单元应该如何作出反应。在三个输入的情况下可以进行多数表决、所有三个信号的比较或者只有两个信号的比较。在四个或者更多输入的情况下相应地可设想多种实施形式。可能的实施形式的详尽的描述被包含在图20的描述中。
实施形式的准确选择优选地应该与整个***的不同的工作模式相结合。也就是说,如果存在多个不同的性能或者比较模式,则这些模式优选地与比较单元的相应的模式相结合。
在本发明的一些地方,去激活比较单元或者一般的表决/处理/分类元件(下面为了简单起见总是称为比较单元)或者使这些单元无效是必要的或者有利的。为此存在多种可能性。一方面,可以将信号引向该比较单元,利用该信号激活或者去激活该比较单元。为此,应在比较单元中***附加的逻辑,这可以由所述附加的逻辑执行。另一可能性是不将要比较的数据输送给比较单元。第三可能性是在***层面上忽略比较单元的故障信号。此外,也可以自己中断故障信号。所有可能性的共同点是,潜在地被比较的两个或者更多数据是不同的,这在***中是无关紧要的。如果情况如此,则比较单元被认为是被动的或者去激活的。
另外,考察与比较单元相连接的转换单元(也即转换和比较单元G70)的实施方案。如果该转换和比较单元与执行单元G10a、G10b一起在一个芯片内被实施,则该实施方案是特别有利的。
当在一个芯片内实施时,通过组合组件(即比较单元和转换单元)只形成非常小的硬件开销。因此,该实施方案的优选的变型方案是将这两个部分组合在一个组件中。这是具有至少所述输入信号(输出执行单元1、输出执行单元2)、至少所述输出信号(输出1、输出2)、逻辑输出信号“总输出”(在物理上可以与输出1或者输出2一致)和比较单元的组件。该组件具有以下能力,即转换模式,在性能模式下允许所有信号通过,而在比较模式下比较多个信号并且必要时允许一个信号通过。另外,其它的输入和输出信号也是有利的:用于用信号通知所检测到的故障的故障信号、用于用信号通知所述组件所处于的模式的模式信号、以及往返于组件的控制信号。
在优选的实施例中,两个或者更多执行单元在性能模式下作为主机被连接到处理器内部的总线。比较单元被去激活,或者在执行单元的不同特性的情况下在可设想的比较模式之一下所产生的故障信号被屏蔽。这意味着,转换和比较单元对于软件来说是透明的。在所考察的比较模式中,待比较的物理执行单元作为总线上的逻辑执行单元来对待,也即只出现总线上的主机。比较单元的故障信号被激活。为此,转换和比较单元使除了一个执行单元之外的所有执行单元通过开关与处理器内部的总线分离,使逻辑执行单元的输入加倍,并且将这些输入提供给所有参与比较模式的执行单元。当在总线上写时,输出在比较单元中被比较,并且在一致时这些数据经由到总线的现有入口被写。
在图15和图16中说明了优选的组件M700(转换和比较单元,对应于G70)的原理特性。为了简单起见,只针对两个执行单元来绘制该图。在此,图15示出在比较模式下的组件的状态,图16示出在性能模式下的组件的状态。在这些模式下的不同的开关位置由M700通过控制装置M760来实现。如果如在图16中所示的那样开关M750和M751闭合,则两个执行单元M730、M731首先能够在性能模式下在数据和地址总线M710上写。前提是可能的写冲突通过总线协议或者通过其它的未画出的组件来解决。在比较模式下,该特性至少从逻辑的角度来看是另一种特性。如在图15中所示,随后开关M750、M751被打开,并且因此直接的访问可能性被中断。但是与图16不同,在图15中随后开关M752、M753闭合。执行单元M730、M731的信号M740、M741被引向比较组件M720。该比较组件M720至少如在图13中所示的那样被构造,但是也可以包含如在图14中所说明的扩展。但是,在图15和图16中舍弃了表示比较组件M720的故障信号或者其它信号。如果两个信号一致,则开关M754闭合,并且两个一致的信号之一随后被转交到地址/数据总线M710上。总之,对此有必要的是,转换和比较单元M700能够影响开关M750-M754。相应的开关位置取决于模式和故障识别。对此,也涵盖开关M754总是闭合的并且适当的***反应通过故障信号来产生的变型方案。
在图17中示出了转换和比较单元的变型方案。对于只具有两个执行单元G10a、G10b的简单***来说也已经存在转换和比较单元的实施的多种变型方案。在图17中示出了另一种变型方案,如果在比较单元中不能使用缓冲器,则所述另一种变型方案是特别有利的。如在图15、图16中那样,存在执行单元的信号M840、M841。所述执行单元在该图中没有被示出。在本发明组件M800中存在模式逻辑M810,该模式逻辑M810预定组件的模式。在性能模式下,该模式逻辑闭合开关M831,在比较模式下,该模式逻辑打开该开关M831。另外,该模式逻辑将模式信号给予比较单元M820。该比较单元M820在该实施方案中总是进行比较,但是利用比较的结果和该模式信号来控制开关M830。在性能模式下,开关总是闭合的,在比较模式下,如果不存在故障,则开关总是闭合的。如果故障曾经被确定,则当然开关也可以继续保持被打开,直到相对应的复位到来为止。
在图18中示出了转换和比较单元的另一实施形式。虽然该替换方案具有多个开关,但是为此使比较单元在性能模式下是未激活的,并且因此也可以更轻易地应对异步性。又存在执行单元的两个信号M940、M941。所述执行单元在该图中又未被示出。在本发明组件M900中存在模式逻辑M910,其预定组件的模式。在性能模式下,该模式逻辑闭合开关M931,并且打开开关M932、M933。因此,在该模式下,不给比较组件M920供应数据。这在异步时允许更长的缓冲时间或在实施时允许更低的缓冲深度。在性能模式下,开关M930始终是闭合的。在比较模式下,组件M910闭合开关M932、M933,并且通过打开开关M931来中断对总线的直接访问。可选地,模式逻辑M910还可以将模式通知给比较单元M920。在比较模式下,开关M930在无故障的情况下是闭合的。在故障情况下,比较组件M920通过打开开关M930来中断信号M940到总线上的转发。
在所述的附图中,在没有花费的情况下向外部引导模式或者故障信号。此外,尤其是为了生成内部的模式状态,其它信号能毫无疑问地到达组件。
因此,总之该组件的优选实施方案的特征在于:存在多个处理单元,其能够将输出信号写到总线(例如地址/数据总线)上。重要的是该组件能够处理(例如比较,但是也可能表决或者分类)执行单元的输出信号中的至少两个,并且该组件能够影响至少一个开关,其中利用所述至少一个开关来中断直接总线访问中的至少一个。如果执行单元是计算机核心,则这是特别有用的。此外有利的是,能被影响的开关的状态表征计算单元的工作模式。
如果该组件可以将信号置于地址数据总线上,则***特性、尤其是可能的比较模式特别好地被转换。有利地,该信号是执行单元之一的输出信号之一的接通。可替换地,这可以由对不同执行单元的不同输出信号的处理来形成。
如例如已经在对图17、18的描述中变得明显的那样,可以在***中以及(根据组件的划分)也在组件之一中识别模式信息。该模式信息根据实施方案甚至可以显性地存在于子组件中。在一种优选的实施方案中,该信号也可以从该组件被引出,并且被提供给***的其他部分。
在一般情况下,可以借助图21来说明根据本发明的特性。信号和组件N100、N110、N120、N130、N140、N141、N142、N143、N14n、N160、N161、N162、N163、N16n具有与在图20中相同的意义。此外,在该图中画出了模式信号N150和故障信号N170。可选的故障信号由收集故障信号的误操作逻辑N130生成,并且是单个故障信号的直接转发或者是其中所包含的故障信息的集聚。模式信号N150是可选的,但是其在所述组件之外的应用在许多地方都可以是有利的。开关逻辑N110(也即在图20的描述中所述的函数)和处理逻辑(也即每个输出信号、即每个函数值的比较操作的确定)的信息的组合是模式信息,并且该模式信息确定模式。当然该信息在一般情况下是多值的,也即不仅能通过一个逻辑位来表示。并不是所有在理论上可设想的模式在给定的实施方案中都是有意义的,优选地限制所允许的模式的数量。模式信号向外转播重要的模式信息。硬件实施方案优选地如此来表示,使得在外部可见的模式信号能够被配置。优选地,处理逻辑和开关逻辑同样可配置地构成。优选地,这些配置彼此协调。可替换地,也可以仅仅或者补充地向外提供模式信号的变化。这在二元配置中尤其具有优点。
优选地,该模式信号得到保障。在图19中例如基于图17中所示的实施方案示出二进制(Zweiersystem)的实施方案。在那里,信号M850从转换和比较单元被引出。在二进制中,该信息在逻辑上能通过位来表示。于是,保障可以优选地通过双轨信号来表示。在一般情况下同样可以通过加倍来保障信号,所述加倍可选地是反转的。可替换地,也可以生成奇偶校验或者应用CRC(循环冗余校验)或者ECC(纠错码),所述奇偶校验优选地在内部以自身安全的方式被生成。
模式信号可以在组件之外被应用。首先,所述模式信号可以被用于对操作***进行自监控。所述模式信号从软件角度看负责转换,并且应该总是知道***处于哪种模式下,并且也使所述***处于该模式。因此,对该信号的检验能被用于保障。这首先可以直接实现。但是,另一可替换的可能性也是经由定时器或者其它“独立的”单元利用所述信号使操作***处的询问合理。
通常,所述信号可选地也可以被用在μC(或者通用计算单元)的其它数据接收器中。例如MPU(存储器保护单元)可以如此被编程,使得该MPU只在某些模式下允许(某些执行单元的)某些存储器访问。在此,MPU是一种单元,该单元能够通过以下方式保证只执行所允许的对数据/地址总线的访问,即例如所述单元针对某些程序部分禁止对某些地址空间的访问。通过将模式信号引向MPU、对该MPU进行相应配置和编程并且评价配置数据和模式信号,可以实现附加的保障。如果模式信号已经是用于进行检验的充分的信息,则这有时甚至简化编程。于是,在μC初始化时刻的准静态编程足够了。相应的内容可以适用于***单元。这里也存在这样的应用,在这些应用中只有在某些模式下才允许对相对应的***元件的访问。通过将模式信号引向***元件、对***元件进行相应配置和编程、并且评价配置数据和模式信号,可以实现附加的保障。如果模式信号已经是用于进行检验的充分的信息,则这有时甚至简化编程。于是在μC初始化时刻的准静态编程足够了。类似地,对所述信号的评价也可以在中断控制器处被应用。这种监控于是可以构成安全性方案的基础或者基本组成部分。通过适当的实施和软件结构化也能够针对整个故障类在所考察的应用中根据该模式信号建立安全性方案。如果该模式信号以如上所述的适当形式是自身安全的,则这尤其是有利的。在这种情况下,如果所考察的组件在其检测到模式信号与对其自身的访问之间的不一致性的情况下具有发送故障信号或者操纵断路路径的可能性,则这是进一步有利的。
另一重要的应用目的是在计算单元之外评价模式信号。直接应用是在递减的监视定时器(Watchdog)中的评价。这种“监视定时器”包括至少一个(计数器)寄存器,该(计数器)寄存器可以通过微处理器被设置为整数值。在设置该寄存器之后,该“监视定时器”以固定周期独立地递减寄存器的值。如果寄存器的值是零或者出现溢出,则该“监视定时器”产生故障信号。如果该故障信号不应该被产生,则微处理器必须及时地重新复位寄存器的值。因此可以(在边界中)检验,微处理器是否正确地执行软件。如果微处理器不再正确地执行软件,则假设在该情况下“监视定时器”也不再被正确地操作,并且因此由“监视定时器”产生故障信号。硬件和数据结构的完整性可以可靠地在比较模式下被检验,但是为此必须保证微处理器定期地又被转换回该比较模式。因此,这里所描述的“监视定时器”的任务是,不仅在所述监视定时器在所定义的时间间隔内不再被复位时产生故障信号,而且在微处理器在所定义的时间间隔内不再被转换回所定义的比较模式时也产生故障信号。例如只有当模式信号表明计算单元的所定义的比较模式时,“监视定时器”才被复位。因此保证计算单元定期地被转换回该模式。可替换地或者补充地,只有当在微处理器中触发某些中断时,才递减“监视定时器”的寄存器中的值。为此,也必须将μC的外部中断信号耦合到监视定时器上。在监视定时器中存储有:哪个中断将μC转换到所定义的比较模式。“建立”监视定时器,一旦这种中断到来,所述监视定时器就由于存在正确的模式信号而被复位。
完全一般地,有利的是,尤其是在应用于安全性方案时,在μC外部的源中评价模式信号。如在本发明中所述的那样,保障软件在计算机上正确运行的主要点是在不同的所允许的模式之间的正确转换。首先应该自己检验转换能力,优选地也还检验正确的转换。如上所述,也可能感兴趣于定期地采用特定的模式。如果模式信号本身以自身安全的方式被构造,则这种方法总是特别有利的。
一种可能性是将模式信号引向ASIC或者另一μC。所述ASIC或者另一μC可以经由定时器和简单的逻辑在应用该信号的情况下检验至少以下几点:
计算单元足够频繁地(例如最迟每1000μs)进入一个或者多个所定义的模式?
在转换到一种模式时总是输出某一信号?
计算单元定期地从一种模式出来?
模式的顺序的某个简单样式是有效的?
一般的时间样式是有效的(例如在模式1平均<70%而在模式2<50%)?
模式信号的逻辑、时间特性的任何一个组合必要时通过应用附加的信号来补充。
在此,在图22中描述了除此之外的建议的基本配置。在这种伙伴ASIC或者μC与所考察的具有本发明的计算单元之间执行特定的问答游戏。N300是能够发出这种模式信号的计算单元。这例如可以是μC,其具有多个执行单元和能够生成该模式信号的另一件。例如所述另一组件可以如在图19或者图21中那样被实现。N300将该信号N310提供给伙伴(例如其它计算单元、其它μC或者ASIC)N330。该伙伴可以通过信号N320向N300提出问题,N300必须经由N321来回答该问题。这种问题可以是计算任务,该计算任务的正确结果应经由N321由N300在所定义的时间间隔内提供。N330可以独立于N300检验该结果的正确性。例如该结果被存储在N330中,或者N330可以自己计算出该结果。在检测到不正确的值时识别出故障。所建议的问答通信的特点在于,与应答并行地考察模式信号。优选地,可以如此提出问题,以致为了由N300应答,必须采用这些确定的模式。因此可以可靠地检验,所有模式转换都是能运行的(funktionsfaehig),并且在程序流程中所设置的模式转换也被执行。尤其是在***初始化时、但是也可以在工作时,这可以用作安全性方案的基本组成部分。
该构思的另一应用是在执行元件控制装置中评价模式信号。在汽车领域中的许多应用中,目前趋势是所谓的智能执行元件。这是具有最小电子线路规模的执行元件,该电子线路规模足以接收执行元件调节指令并且随后这样控制执行元件,使得该调节指令随后也被执行。
在图23中示出了基本构思。具有本发明的计算单元N400经由连接N420向(智能)执行元件或者执行元件控制装置N430给出调节指令。该计算单元并行地经由连接N410向该执行元件给出模式信号。执行元件N430根据该模式信号检查,控制装置是否被允许并且可选地通过信号N440返回故障状态。在控制装置有故障的情况下,执行元件采用在***中不关键的故障沉默状态。
Claims (27)
1.一种用于在具有多个组件的计算机***中产生信号的方法,其中,设置至少两个执行单元作为两个组件,而作为其它组件设置转换装置,其中在该计算机***中,在至少两个工作模式之间转换,并且第一工作模式与比较模式相对应,而第二工作模式与性能模式相对应,其特征在于,在计算机***的组件中产生表明刚刚所处的工作模式的模式信号和/或模式信号的变化,以及在组件之外至少提供模式信号的变化和/或该模式信号本身。
2.根据权利要求1所述的方法,其特征在于,将模式信号和/或模式信号的变化用于进行监控,其方式是将现有的、代表工作模式的信息与由模式信号和/或模式信号的变化所表示的或者由其导出的信息相比较。
3.根据权利要求1所述的方法,其特征在于,在计算机***的另一组件中评价模式信号和/或模式信号的变化。
4.根据权利要求1所述的方法,其特征在于,在执行单元***的组件中评价模式信号和/或模式信号的变化。
5.根据权利要求1所述的方法,其特征在于,在存储器保护单元(MPU)中评价模式信号和/或模式信号的变化。
6.根据权利要求1所述的方法,其特征在于,在中断控制器中,评价模式信号和/或模式信号的变化。
7.根据权利要求1所述的方法,其特征在于,计算机***包含操作***,并且模式信号和/或模式信号的变化被用于自监控该操作***,其方式是将存在于操作***中的、代表工作模式的信息与由模式信号和/或模式信号的变化所表示的或者由其导出的信息相比较。
8.根据权利要求1所述的方法,其特征在于,通过至少一个附加信息来保障模式信号和/或模式信号的变化。
9.根据权利要求1所述的方法,其特征在于,通过至少使模式信号和/或模式信号的变化加倍来保障模式信号和/或模式信号的变化。
10.根据权利要求1所述的方法,其特征在于,模式信号和/或模式信号的变化作为双轨信号来保障。
11.根据权利要求1所述的方法,其特征在于,模式信号和/或模式信号的变化在转换装置中被产生。
12.根据权利要求1所述的方法,其特征在于,作为转换装置设置组合式转换和比较单元,并且模式信号和/或模式信号的变化在该转换和比较单元中被产生。
13.根据权利要求1所述的方法,其特征在于,在至少一个执行单元中产生模式信号和/或模式信号的变化。
14.根据权利要求1所述的方法,其特征在于,在包括组合式转换和比较单元以及转换愿望识别单元的组件中产生模式信号和/或模式信号的变化。
15.根据权利要求1所述的方法,其特征在于,设置多于两个的工作模式,在所述工作模式之间转换。
16.根据权利要求1或者15所述的方法,其特征在于,为了表明相应的工作模式设置能被配置的工作模式标识。
17.根据权利要求1或者15所述的方法,其特征在于,为了表明相应的工作模式设置能被配置的指针变量。
18.根据权利要求1所述的方法,其特征在于,根据模式信号和/或模式信号的变化执行故障识别,其中在故障识别的范围内产生至少一个故障信号。
19.根据上述权利要求之一所述的方法,其特征在于,模式信号的评价被用于安全性证明。
20.根据上述权利要求之一所述的方法,其特征在于,模式信号是这样多值的,使得能通过模式信号来表示多于两个的模式。
21.根据权利要求1或者15所述的方法,其特征在于,在比较模式下应用表决。
22.根据权利要求1或者15所述的方法,其特征在于,在比较模式下应用容错算法。
23.一种用于在具有多个组件的计算机***中产生信号的设备,其中,设置至少两个执行单元作为两个组件并且作为其它组件设置转换装置,其中在计算机***中,在至少两个工作模式之间进行转换,并且第一工作模式与比较模式相对应,而第二工作模式与性能模式相对应,其特征在于,该设备被包含在计算机***的组件中并且这样被构造,使得产生表明刚刚所处的工作模式的模式信号和/或模式信号的变化,其中在组件之外还至少提供模式信号的变化和/或该模式信号本身。
24.根据权利要求23所述的设备,其特征在于,这样产生模式信号,使得通过模式信号能表示多于两个的模式。
25.根据权利要求23或者24所述的设备,其特征在于,能配置模式信号的意义和/或接口语法。
26.一种具有根据权利要求23所述的设备的组件。
27.一种具有根据权利要求23所述的设备的计算机***。
Applications Claiming Priority (13)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102004051964.1 | 2004-10-25 | ||
DE200410051937 DE102004051937A1 (de) | 2004-10-25 | 2004-10-25 | Verfahren und Vorrichtung zur Synchronisierung in einem Mehrprozessorsystem |
DE102004051950.1 | 2004-10-25 | ||
DE102004051952.8 | 2004-10-25 | ||
DE200410051964 DE102004051964A1 (de) | 2004-10-25 | 2004-10-25 | Verfahren und Vorrichtung zur Überwachung einer Speichereinheit in einem Mehrprozessorsystem |
DE102004051937.4 | 2004-10-25 | ||
DE200410051950 DE102004051950A1 (de) | 2004-10-25 | 2004-10-25 | Verfahren und Vorrichtung zur Taktumschaltung bei einem Mehrprozessorsystem |
DE102004051992.7 | 2004-10-25 | ||
DE200410051952 DE102004051952A1 (de) | 2004-10-25 | 2004-10-25 | Verfahren zur Datenverteilung und Datenverteilungseinheit in einem Mehrprozessorsystem |
DE200410051992 DE102004051992A1 (de) | 2004-10-25 | 2004-10-25 | Verfahren und Vorrichtung zur Verzögerung von Zugriffen auf Daten und/oder Befehle eines Mehrprozessorsystems |
DE200510037261 DE102005037261A1 (de) | 2005-08-08 | 2005-08-08 | Verfahren und Vorrichtung zur Erzeugung eines Signals bei einem Rechnersystem mit mehreren Komponenten |
DE102005037261.9 | 2005-08-08 | ||
PCT/EP2005/055502 WO2006045776A1 (de) | 2004-10-25 | 2005-10-25 | Verfahren und vorrichtung zur erzeugung eines modussignals bei einem rechnersystem mit mehreren komponenten |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101048744A true CN101048744A (zh) | 2007-10-03 |
CN100538654C CN100538654C (zh) | 2009-09-09 |
Family
ID=35985846
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005800364219A Expired - Fee Related CN100538654C (zh) | 2004-10-25 | 2005-10-25 | 在具有多个组件的计算机***中产生模式信号的方法和设备 |
Country Status (8)
Country | Link |
---|---|
US (1) | US20090044048A1 (zh) |
EP (1) | EP1812858B1 (zh) |
JP (1) | JP2008518298A (zh) |
KR (1) | KR100994039B1 (zh) |
CN (1) | CN100538654C (zh) |
AT (1) | ATE407401T1 (zh) |
DE (1) | DE502005005287D1 (zh) |
WO (1) | WO2006045776A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112416609A (zh) * | 2021-01-22 | 2021-02-26 | 南京芯驰半导体科技有限公司 | 双核模式的模式配置方法及装置 |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1812859B1 (de) * | 2004-10-25 | 2009-01-07 | Robert Bosch Gmbh | Verfahren und vorrichtung zur modusumschaltung und zum signalvergleich bei einem rechnersystem mit wenigstens zwei verarbeitungseinheiten |
DE102005037232A1 (de) * | 2005-08-08 | 2007-02-15 | Robert Bosch Gmbh | Verfahren und Vorrichtung zur Analyse von Abläufen in einem Rechnersystem mit mehreren Ausführungseinheiten |
DE102006048169A1 (de) * | 2006-10-10 | 2008-04-17 | Robert Bosch Gmbh | Verfahren zur Überwachung einer Funktionsfähigkeit einer Steuerung |
DE102006050715A1 (de) * | 2006-10-10 | 2008-04-17 | Robert Bosch Gmbh | Verfahren und System zum Erzeugen eines gültigen Signals |
EP2537091A4 (en) * | 2010-02-16 | 2014-08-06 | Freescale Semiconductor Inc | DATA PROCESSING METHOD, DATA PROCESSOR, AND APPARATUS COMPRISING DATA PROCESSOR |
JP5796311B2 (ja) | 2011-03-15 | 2015-10-21 | オムロン株式会社 | 制御装置およびシステムプログラム |
JP5788022B2 (ja) * | 2011-12-19 | 2015-09-30 | 株式会社キトー | フェイルセーフな電子制御装置 |
WO2014080245A1 (en) | 2012-11-22 | 2014-05-30 | Freescale Semiconductor, Inc. | Data processing device, method of execution error detection and integrated circuit |
DE102014107837B4 (de) | 2014-06-04 | 2021-09-02 | Presens Precision Sensing Gmbh | Optischer Sensor zum quantitativen Nachweis eines Analyten in einer Probe und Verfahren zur Herstellung des Sensors |
DE102014217321A1 (de) * | 2014-08-29 | 2016-03-03 | Continental Teves Ag & Co. Ohg | Mikrocontrollersystem und Verfahren für sicherheitskritische Kraftfahrzeugsysteme sowie deren Verwendung |
US9823983B2 (en) | 2014-09-25 | 2017-11-21 | Nxp Usa, Inc. | Electronic fault detection unit |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5028309B1 (zh) * | 1970-11-20 | 1975-09-13 | ||
US3864670A (en) * | 1970-09-30 | 1975-02-04 | Yokogawa Electric Works Ltd | Dual computer system with signal exchange system |
JPS5026345B1 (zh) * | 1970-09-30 | 1975-08-30 | ||
US3783250A (en) * | 1972-02-25 | 1974-01-01 | Nasa | Adaptive voting computer system |
US4823256A (en) * | 1984-06-22 | 1989-04-18 | American Telephone And Telegraph Company, At&T Bell Laboratories | Reconfigurable dual processor system |
AU568977B2 (en) * | 1985-05-10 | 1988-01-14 | Tandem Computers Inc. | Dual processor error detection system |
US4811345A (en) * | 1986-12-16 | 1989-03-07 | Advanced Micro Devices, Inc. | Methods and apparatus for providing a user oriented microprocessor test interface for a complex, single chip, general purpose central processing unit |
JPH08161187A (ja) * | 1994-12-09 | 1996-06-21 | Mitsubishi Electric Corp | 計算機制御方式 |
US5758132A (en) | 1995-03-29 | 1998-05-26 | Telefonaktiebolaget Lm Ericsson | Clock control system and method using circuitry operating at lower clock frequency for selecting and synchronizing the switching of higher frequency clock signals |
JPH0973436A (ja) * | 1995-09-05 | 1997-03-18 | Mitsubishi Electric Corp | 多重化計算機における動作モード切替方式 |
DE19827430C2 (de) * | 1997-07-22 | 2001-07-12 | Siemens Ag | Überwachungsverfahren zur Erkennung von Endlosschleifen und blockierten Prozessen in einem Rechnersystem |
JP2000076089A (ja) * | 1998-09-01 | 2000-03-14 | Hitachi Ltd | 多重系処理装置 |
US6615366B1 (en) * | 1999-12-21 | 2003-09-02 | Intel Corporation | Microprocessor with dual execution core operable in high reliability mode |
US6772368B2 (en) * | 2000-12-11 | 2004-08-03 | International Business Machines Corporation | Multiprocessor with pair-wise high reliability mode, and method therefore |
DE10136335B4 (de) * | 2001-07-26 | 2007-03-22 | Infineon Technologies Ag | Prozessor mit mehreren Rechenwerken |
-
2005
- 2005-10-25 US US11/666,383 patent/US20090044048A1/en not_active Abandoned
- 2005-10-25 EP EP05801574A patent/EP1812858B1/de not_active Not-in-force
- 2005-10-25 CN CNB2005800364219A patent/CN100538654C/zh not_active Expired - Fee Related
- 2005-10-25 JP JP2007537290A patent/JP2008518298A/ja active Pending
- 2005-10-25 WO PCT/EP2005/055502 patent/WO2006045776A1/de active IP Right Grant
- 2005-10-25 AT AT05801574T patent/ATE407401T1/de not_active IP Right Cessation
- 2005-10-25 DE DE502005005287T patent/DE502005005287D1/de active Active
- 2005-10-25 KR KR1020077009127A patent/KR100994039B1/ko not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112416609A (zh) * | 2021-01-22 | 2021-02-26 | 南京芯驰半导体科技有限公司 | 双核模式的模式配置方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US20090044048A1 (en) | 2009-02-12 |
EP1812858A1 (de) | 2007-08-01 |
KR100994039B1 (ko) | 2010-11-11 |
ATE407401T1 (de) | 2008-09-15 |
KR20070085279A (ko) | 2007-08-27 |
DE502005005287D1 (de) | 2008-10-16 |
CN100538654C (zh) | 2009-09-09 |
WO2006045776A1 (de) | 2006-05-04 |
JP2008518298A (ja) | 2008-05-29 |
EP1812858B1 (de) | 2008-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101048744A (zh) | 在具有多个组件的计算机***中产生模式信号的方法和设备 | |
CN101048750A (zh) | 在具有至少两个执行单元的计算机***中对程序代码的执行进行分离的方法和设备 | |
CN101048730A (zh) | 在具有至少两个执行单元的计算机***中进行转换的方法和设备 | |
CN101120320A (zh) | 在具有至少两个执行单元的计算机***中进行模式转换的设备和方法 | |
CN101048752A (zh) | 在拥有至少两个执行单元的计算机***中切换的装置和方法 | |
Jeon et al. | Warped-DMR: Light-weight error detection for GPGPU | |
JP4386449B2 (ja) | 実行される命令に関する情報を交換することによってユーザプログラムの複製コピーの実行ポイントをアラインメントする方法及びシステム | |
CN101048757A (zh) | 在拥有至少两个执行单元的计算机***中切换的方法和装置 | |
JP2008518296A (ja) | 少なくとも2つの実行ユニットを備えるコンピュータシステムで切換をする方法及び装置 | |
CN1811724A (zh) | 使用户程序的复制拷贝的执行点对齐的方法和*** | |
GB2431258A (en) | Microprocessor operable in a fault-tolerant mode and a performance mode | |
JP2008518299A (ja) | 少なくとも2つの実行ユニットを有する計算機システムの信号を評価するための方法および装置 | |
JP2008518297A (ja) | 少なくとも2つの実行ユニットを有する計算機システムで切替を行うための装置および方法 | |
CN101048746A (zh) | 用于评价具有至少两个执行单元的计算机***的信号的方法和设备 | |
Osinski et al. | A survey of fault tolerance approaches on different architecture levels | |
JP2008518300A (ja) | 少なくとも2つの実行ユニットを備えるコンピュータシステムにおけるプログラムコードの処理分割方法および装置 | |
CN101048743A (zh) | 在具有至少两个执行单元的计算机***中进行转换的方法和设备 | |
Wu et al. | FERNANDO: A software transient fault tolerance approach for embedded systems based on redundant multi-threading | |
Soman et al. | High performance fault tolerance through predictive instruction re-execution | |
JP2006252548A (ja) | 時間的冗長性を実施するための可変遅延命令 | |
Rouf et al. | Low-cost control flow protection via available redundancies in the microprocessor pipeline | |
CN101243411A (zh) | 分析具有多个执行单元的计算机***中的进程的方法和设备 | |
RU2384877C2 (ru) | Способ и устройство для генерирования сигнала в вычислительной системе, включающей в себя несколько компонентов | |
Reif | Fault tolerance in multi-core systems |
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: 20090909 Termination date: 20121025 |