用于在具有至少两个执行单元的计算机系统中对数据进行比较的方法和设备的制作方法

文档序号:6568543阅读:138来源:国知局
专利名称:用于在具有至少两个执行单元的计算机系统中对数据进行比较的方法和设备的制作方法
技术领域
本发明从根据独立权利要求的前序部分的用于在微处理器的至少 两个执行单元的输出数据之间进行比较的方法和设备出发。
背景技术
由OC粒子或宇宙射线所引起的瞬时错误对于集成电路来说日益成 为一个问题。由于减小的结构宽度、下降的电压和更高的时钟频率,由ct粒子或宇宙射线所引起的电压峰值使集成电路中的逻辑值失真的概率增大。错误的计算结果可能是后果。因此在安全性相关系统中必 须可靠地检测这种错误。在必须可靠地检测电子设备的故障的安全性相关系统、诸如汽车中的ABS调节系统中,通常正是为了识别错误而在这种系统的相应的 控制装置中设置冗余。因此例如在公开的ABS系统中分别复制完整的 微控制器,其中冗余地计算整个ABS功能并检查一致性。如果出现结 果的差异,则关断ABS系统。这种具有至少两个集成的执行单元的处理器单元也称为双核或多 核架构。不同的执行单元(核)冗余地并且时钟同步地执行相同的程 序段,这两个执行单元的结果被比较,并且然后在对一致性的比较中 对错误进行识别。发明内容如果当前的双核处理器应该工作于比较模式下,那么这些核或执 行单元必须尽最大可能相同,因此可以在每个时钟中比较输出信号。 但是以安全性方面来看也有利的是,^使用不同的(diversitaer)执行 单元。如果这些执行单元是不同的,那么这些执行单元的输出信号却 不再能够在每个时钟中被比较。本发明的任务是对不同的执行单元的输出信号进行比较。这里所 介绍的本发明通过引入控制信号来解决该问题,其中执行单元利用该 控制信号来通知比较单元应当将随着该信号输出的数据与另一执行 单元的数据进行比较。因此可以使用不同的执行单元和不同的软件。仅仅要比较的数据及其格式必须是可比较的。顺序是否也必须是相同 的取决于在此所述的本发明的相应实施方案,其中必须以该顺序将要 比较的数据传送给该比较单元。有利地,执行单元向该比较单元预先给定,应当将下一输出数据 与至少第二执行单元的输出数据进行比较,并且之后进行至少两个输 出数据的比较。合理地,至少两个执行单元相互独立地对输入数据进 行处理。有利地,通过比较信号来实现应当对下一输出数据进行比较 的预先给定。有利地,所述比较信号和应当被比较的输出数据一对一 地相互可分配地被输出。合理地,应当被比较的数据被分配标识,通 过该标识来触发所述比较。有利地,输出数据应当被比较的所有执行 单元都将其输出数据应当被比较通知给该比较单元。合理地,应当被 比较的输出数据通过至少一个緩冲存储器以可预先给定的顺序被緩 冲。有利地,执行单元向该比较单元预先给定,应当将下一输出数据 与至少第二执行单元的输出数据进行比较,并且之后进行至少两个输 出数据的比较。有利地,在设备中设置有至少一个緩沖存储器,其中 该设备被构造,使得这些数据能够以可预先给定的顺序被緩冲,并且然后能够被输送给该比较单元。有利地,该緩冲存储器是FIFO存储器。 有利地,该緩冲存储器被示出位于设备中以及包含该设备的计算机系 统中。其它的优点和有利的扩展方案从权利要求的特征以及说明书中得出。


在图1中示出了具有两个执行单元G10a和G10b以及比较单元G20 的多处理器系统G60。在图2中示出了具有两个等待队列GUa和GHb的比较单元G20 的一种实施形式。在图3中示出了分别具有两个列表G210a、 G211a和G210b、 G211b 的比较单元G200的一种实施形式。
具体实施方式
在下文中,执行单元在此不仅可以表示处理器/核/CPU,而且可以 表示FPU (Floating Point Unit (浮点单元))、DSP (数字信号处 理器)、协处理器或ALU( Arithmetic Logical Unit(算术逻辑单元))。本发明涉及图1中所示的多处理器系统G60,其具有至少两个执行单元 G10a、 G10b以及比较单元G20。所述执行单元G10a、 G10b中的每一个 都具有至相应的系统接口 G30a、 G30b的至少一个输出端。通过这些接 口可以控制寄存器、存储器或诸如数字输出端、D/A转换器、通信控制 器的外围设备。所述执行单元G10a、 G10b的输出信号可以在比较单元 G20中被比较。在有差别的情况下识别出错误,并可以采取相应的措施。 所述执行单元的输出数据和/或地址被用于所述比较。其它的控制信号 也可以被比较。下面,与所选择的应当被比较的输出信号无关地谈及 应当与另 一数据相比较的数据。图1示出具有两个执行单元G10a和G10b的多处理器系统G60的 一种可能的实施方案。比较单元G20通过该执行单元G10a、 G10b的控 制信号G50a、 G50b被激活。如果一个执行单元G10a、 G10b想在不应 对数据进行比较的情况下把该数据传递给系统接口 G30a或G30b,那么 这些数据,皮传递而不设置信号G50a、 G50b。比较单元G20因此不对这 些数据进行处理。如果一个执行单元G10a、 G10b想把数据传递给系统 接口 G30a或G30b并且该数据应当与另 一执行单元G10a、 G10b的相应 数据相比较,那么,除了该执行单元的对于至系统接口的数据传输来 说所需的输出信号之外,在G10a中以及在G10b中为比较单元G20生 成信号G50a和G50b。这些信号G50a和G50b同样由执行单元G10a和 G10b产生。这些信号通知该比较单元G20:向系统接口传输的数据可 选地连同属于该数据的地址应当与相应另一执行单元的相应数据相比 较。如果所述另一执行单元同样向其系统接口传输数据并且在此情况 下该比较单元G20同样被通知要执行的比较,那么进行该比较。用于 进行比较的在G10a情况下的信号G50a、在G10b情况下的信号G50b 不必必然同时随着数据的传输而由执行单元生成,而是该信号可以明 确地被分配给该数据(包括地址)。通过信号G70a、 G70b,该比较单 元G20能够暂时在需要时使执行单元停止。在此,执行单元G10a通过 信号G70a被停止,并且执行单元G10b通过信号G70b被停止。所述执 行单元一直被停止,直到相应的信号G70a和G70b再次被该比较单元 收回。在图2中所示的第一实施形式中说明了该比较单元的一种可 能的实施方案。它在内部针对每个所连接的执行单元而拥有一个等待队列。该等待队列按照FIF0原则(First in First out Prinzip (先 进先出原则))来构建。在图2所示的实施例中,这些等待队列是用 于执行单元G10a的等待队列G卩la以及用于执行单元G10b的等待队列 G21b。 一个等待队列具有n项,但至少一项。如果由执行单元针对数 据通知该数据应当被比较,那么该数据被存储在等待队列的项中。 如果在一个等待队列中不再存在空闲的项,那么所属的执行单元通过 图1中所示的信号G70a或者G70b被停止,直到该等待队列中的项再 次空闲。替代地,如果执行单元尝试把另一数据置于已经满的等待队 列中,那么该比较单元G20可以产生错误信号。如果在G"的所有等 待队列(这里为G21a和G21b)中存在至少一项,那么根据所述FIFO 原则分别使最初的、因此在时间上来看最老的项通过该单元G22 #_相 互比较。如果被比较的数据不相同,那么生成错误信号,并且之后在 该等待队列中丢弃所述项,也即从该等待队列中去除。在数据相同的 情况下,这些数据同样从该等待队列中被去除。替代地,在多于两个 的等待队列的情况下可以进行多数判定(Voting (表决))。这种实 施形式的共同特征是,要比较的数据必须由所连接的所有执行单元以 相同的顺序提供,因此这些数据以正确的顺序被分类到等待队列中。 也即哪些数据与哪些数据相比较仅仅通过其在等待队列内的位置来定 义。总是等待队列内的最前面的或最老的项被比较。在图3中示出了该比较单元G20的另一实施形式,在图3中被表 示为G200。该比较单元G200针对每个所连接的执行单元而拥有列表 G210a、 G210b,在这些列表中存储要比较的数据。除了这些列表G210a、 G210b之外,存在另外的列表G211a、 G211b,在这些列表中针对列表 G210a、 G210b中的每个数据而存储一对一的ID。如果一个列表满了, 那么相应的所分配的比较单元通过图1中所示的信号G70a或者G70b 被停止,或者如果执行单元尝试把另一数据置于已经满的列表中,那 么触发一个错误信号。如果在所有的列表G210a、 G210b中存在具有列 表G211a、 G211b中的所属的相同的ID的数据,那么进行数据的比较。 这些数据被比较,并且在有区别的情况下产生错误信号。在相同的情 况下,如果所连接的系统接口 G30a、 G30b被分配给该比较单元,那么 这些数据被传输给这些系统接口 G30a、 G30b或被传输给G32。在比较 之后,与结果无关地将这些数据从列表G210a、 G210b中去除并且将所属的ID从列表G211a、 G211b中去除。如果存在多于两个的列表,那 么可以替代地进行多数判定。这种实施方案的特征是,要比较的数据 不必以相同的顺序由所连接的所有执行单元提供给该比较单元G20。如 果在两个列表G210a和G210b中存在数据并且在ID列表中存在至少两 个相同的ID,那么对数据进行比较。
权利要求
1.用于在具有至少两个执行单元的计算机系统中对数据进行比较的方法,其中在比较单元中进行数据的比较,并且每个执行单元都对输入数据进行处理并产生输出数据,其特征在于,执行单元向所述比较单元预先给定应当将下一输出数据与至少第二执行单元的输出数据进行比较,并且之后进行至少两个输出数据的比较。
2. 根据权利要求1所述的方法,其特征在于,所述至少两个执行 单元相互独立地对输入数据进行处理。
3. 根据权利要求1所述的方法,其特征在于,应当对下一输出数 据进行比较的所述预先给定通过比较信号来实现。
4. 根据权利要求3所述的方法,其特征在于,所述比较信号和应 当被比较的输出数据一对一地相互可分配地被输出。
5. 根据权利要求4所述的方法,其特征在于,应当被比较的数据 被分配标识,通过该标识来触发所述比较。
6. 根据权利要求1所述的方法,其特征在于,输出数据应当被比 较的所有执行单元都将其输出数据应当被比较通知给所述比较单元。
7. 根据权利要求1所述的方法,其特征在于,应当被比较的输出 数据通过至少一个緩冲存储器以可预先给定的顺序被緩沖。
8. 用于在具有至少两个执行单元和比较单元的计算机系统中对数 据进行比较的设备,其中数据的比较在所述比较单元中进行,并且每 个执行单元都对输入数据进行处理并产生输出数据,其特征在于,执 行单元向所述比较单元预先给定应当将下一输出数据与至少第二执 行单元的输出数据进行比较,并且之后进行至少两个输出数据的比较。
9. 根据权利要求9所述的设备,其特征在于,在所述设备中设置 有至少一个緩冲存储器,该緩冲存储器被构造,使得所述数据能够以 可预先给定的顺序被緩冲,并且然后能够被输送给所述比较单元。
10. 根据权利要求IO所述的设备,其特征在于,所述緩冲存储器 是FIF0存储器。
11. 具有根据权利要求9所述的设备的计算机系统。
全文摘要
用于在具有至少两个执行单元的计算机系统中对数据进行比较的方法,其中数据的比较在比较单元中进行,并且每个执行单元都对输入数据进行处理并产生输出数据,其特征在于,一个执行单元向该比较单元预先给定应当将下一输出数据与至少第二执行单元的输出数据进行比较,并且之后进行至少两个输出数据的比较。
文档编号G06F11/16GK101243406SQ200680029543
公开日2008年8月13日 申请日期2006年7月27日 优先权日2005年8月8日
发明者B·米勒, E·博尔, R·格梅利克, R·韦博尔, Y·科拉尼 申请人:罗伯特·博世有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1