(57)【要約】本発明は、少なくとも２つの処理ユニットを有する計算機システムにおいて切り替えおよび信号の比較方法および装置に関する。比較モードを第１の駆動モード、パフォーマンスモードを第２の駆動モードとして、少なくとも２つの駆動モードの間を切り替える切り替え手段と、比較手段とが設けられ、処理ユニットの少なくとも２つのアナログ信号を、これらの信号に基づいて差が形成されるように比較することを特徴とする。【選択図】なし
2008518306.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも２つの処理ユニットを有する計算機システムにおいて切り替えおよび信号の比較方法であって、
比較モードを第１の駆動モード、パフォーマンスモードを第２の駆動モードとして、少なくとも２つの前記駆動モードの間を切り替える切り替え手段と、比較手段とが設けられ、
処理ユニットの少なくとも２つのアナログ信号を、これらの信号に基づいて差が形成されるように比較することを特徴とする、計算機システムの切り替えおよび信号の比較方法。
【請求項２】
前記アナログ信号は、予め設定可能な許容誤差範囲内で同期していることを特徴とする、請求項１に記載の方法。
【請求項３】
少なくとも１つのアナログ信号を予め設定可能な時間の間処理ユニットから出力して前記２つのアナログ信号を比較のために同期させることを特徴とする、請求項１または２に記載の方法。
【請求項４】
アナログ信号を比較するために、第１の処理ユニットの第１のアナログ信号と第２の処理ユニットの第２のアナログ信号から差が形成されることを特徴とする、請求項１〜３のいずれかに記載の方法。
【請求項５】
少なくとも１つの比較ユニットがアナログ信号の他に有効性情報を出力し、
前記有効性情報に基づいてのみアナログ信号を比較することを特徴とする、請求項１〜４のいずれかに記載の方法。
【請求項６】
前記差は、予め設定可能な基準信号と比較されることを特徴とする、請求項１〜５のいずれかに記載の方法。
【請求項７】
前記比較に基づいて、比較結果を表す信号が生成されることを特徴とする、請求項６に記載の方法。
【請求項８】
前記比較に基づいて、エラー信号が生成されることを特徴とする、請求項６または７に記載の方法。
【請求項９】
前記基準信号は、計算ユニットに対して外部のソースによって予め設定されることを特徴とする、請求項６〜８のいずれかに記載の方法。
【請求項１０】
少なくとも１つのアナログ信号は、デジタル変換され、予め設定可能な時間の間記憶されて、比較のために再びアナログ信号に逆変換されることを特徴とする、請求項１〜９のいずれかに記載の方法。
【請求項１１】
差比較手段は比較器として、特に差動増幅器として形成されていることを特徴とする、請求項１〜１０のいずれかに記載の方法。
【請求項１２】
少なくとも２つの処理ユニットを有する計算機システムにおいて切り替えおよび信号の比較装置であって、
比較モードを第１の駆動モード、パフォーマンスモードを第２の駆動モードとして、少なくとも２つの前記駆動モードの間を切り替える切替え手段と、
比較手段と、
処理ユニットの少なくとも２つのアナログ信号がこれらの信号に基づいて差を形成するように、前記信号を比較する比較差比較手段と、
を備えることを特徴とする、計算機システムの切り替えおよび信号の比較装置。
【請求項１３】
前記アナログ信号は、予め設定可能な許容誤差範囲内で同期していることを特徴とする、請求項１２に記載の装置。
【請求項１４】
基準信号源を備えることを特徴とする、請求項１２または１３のいずれかに記載の装置。
【請求項１５】
少なくとも１つの付加的な比較手段を備え、
前記比較手段は、前記差と前記基準信号源の基準信号とを比較することを特徴とする、請求項１２〜１４のいずれかに記載の装置。
【請求項１６】
付加的な比較手段は比較器として形成され、
前記比較器は、２つの抵抗と接続されており、これらの抵抗が基準信号のレベルに対して定められた関係にあることを特徴とする、請求項１２〜１５のいずれかに記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
比較モードにおけるエラー認識方法が、Ｗｏ０１／４６８０６Ａ１に記載されている。この方法では、データが２つの処理ユニットＡＬＵを有する処理ユニット内で並列に処理されて比較される。エラー（ソフトウェアエラー、過渡的エラー）の場合には、２つのＡＬＵは、エラーデータが除去され、新たな（部分的に繰り返された）冗長な処理を行うことができるようになるまで互いに独立して働く。これは、２つのＡＬＵが互いに同期して働き、かつ正確なクロックが比較された結果であることを前提としている。
【背景技術】
【０００２】
従来技術において、課題を冗長に処理してエラー認識するための比較モードと、より高いパワー能力を得るためのパフォーマンスモードとの間で切り替え可能な方法が知られている。この際、比較モードのために処理ユニットを相互に同期させることが前提となる。そのためには、メモリに書き込む際に結果データを互いに比較することができるように、２つの処理ユニットを停止させることができ、かつ正確にクロック同期して働かせることが必要である。このため、ハードウェアへの介入が必要であり、個々の解決が提案されている。
【０００３】
これに対して特許公報ＥＰ０９６９３７３Ａ２では、冗長に働く処理ユニットまたは処理ユニットの結果の比較は、これらが互いに非同期で働く場合、すなわち同クロックでなく、あるいは未知のクロックオフセットをもって働く場合でも保証される。
【０００４】
航空機産業においては、標準計算機の入力を使用して多数決により処理する、すなわち安全上重要なアクションを作動させることの可能な投票システムが知られている。インター処理ユニットとインターコントロールユニット通信を互いに組み合わせたこのシステムは、高い冗長性によって、エラーが１つだけの場合あるいはエラーが複数の場合でもさらに作業能力を有するＦＭＥシステムであって、空間走行のためにＤＡＳＡによって開発された（Urban, et al: A survivable avionics system for space applications, Int. Symposium of Fault-tolerant Computing,FTCS-28(1998),pp.372-381）。このシステムは、ビザンチン障害（すなわち、特にたちの悪いエラーであって、すべてのコンポーネントが同一情報を得るのではなく、陰謀を含む、特に「故意に」異なる誤った情報が種々のコンポーネントに分配されること）も許容することができる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
この種のシステムは、経済的には手間とコストがかかるために、極めてわずかな数だけ製造され、特にクリティカルなシステムのために適用される。大量に製造可能であって、さらに切替え可能性も有する、コスト的に好ましい解決は知られていない。したがって、２つまたはそれより多い処理ユニットの駆動モードを切り替えることを許容し、これらの処理ユニットの構造へ介入することなく、かつこの目的のために付加的な信号を必要としない、切替えおよび比較ユニットを提供するという課題がある。この場合に、比較モードにおいて種々の処理ユニットのデジタルまたはアナログの種々の信号を相互に比較することが可能でなければならない。この比較は、場合によっては処理ユニットが種々のクロック信号で駆動され、互いに非同期で働く場合も可能でなければならない。さらに、特に多面的に使用可能な形式でアナログ信号の比較を可能にする手段および方法を提供するという課題がある。
【課題を解決するための手段】
【０００６】
好ましくは、少なくとも２つの処理ユニットを有する計算機システムにおいて、切り替えおよび信号を比較する方法が使用される。この方法には、少なくとも２つの駆動モード間で切り替え可能な切替え手段と、比較手段とが設けられている。ここで、第１の駆動モードは比較モードに、第２の駆動モードはパフォーマンスモードに相当する。処理ユニットの少なくとも２つのアナログ信号が、これらの信号にしたがって差が形成されるように、比較されることを特徴としている。
【０００７】
この方法において、好ましくは、アナログ信号は予め設定可能な許容誤差範囲内で同期している。
【０００８】
また、この方法において、好ましくは、２つのアナログ信号を比較するために、少なくとも１つのアナログ信号を予め設定可能な時間の間処理ユニットから出力させ、２つのアナログ信号を同期させる。
【０００９】
この方法において、好ましくは、アナログ信号を比較するために、第１の処理ユニットの第１のアナログ信号と第２の処理ユニットの第２のアナログ信号との差が形成される。
【００１０】
この方法において、好ましくは、少なくとも１つの比較ユニットがアナログ信号の他に有効性情報を出力し、アナログ信号はこの有効性情報にのみ基づいて比較される。
【００１１】
この方法において、好ましくは、差は予め設定可能な基準信号と比較される。
【００１２】
この方法において、好ましくは、比較に基づいて比較結果を表す信号が生成される。
【００１３】
この方法において、好ましくは、比較に基づいてエラー信号が生成される。
【００１４】
この方法において、好ましくは、基準信号は計算ユニットに対して外部のソースによって予め設定される。
【００１５】
この方法において、好ましくは、少なくとも１つのアナログ信号がデジタル変換され、予め設定可能な時間の間記憶されて、比較のため再びアナログ信号に逆変換される。
【００１６】
この方法において、好ましくは、差比較手段が比較器、特に差動増幅器として形成される。
【００１７】
好ましくは、少なくとも２つの処理ユニットを有する計算機システムにおいて、切り替えおよび信号を比較する装置が使用される。この装置には、少なくとも２つの駆動モードの間で切り替え可能な切替え手段と、比較手段とが設けられている。ここで、第１の駆動モードは比較モードに、第２の駆動モードはパフォーマンスモードに相当する。この装置には、差比較手段が設けられている。処理ユニットの少なくとも２つのアナログ信号がこれらの信号に基づいて差が形成され、比較されるように、差比較手段が形成されることを特徴とする。
【００１８】
この装置において、好ましくは、アナログ信号は予め設定可能な許容誤差範囲内で同期している。
【００１９】
この装置において、好ましくは、基準信号源が設けられる。
【００２０】
この装置において、好ましくは、少なくとも１つの付加的な比較手段が設けられており、比較手段は、差と基準信号源の基準信号とが比較されるように形成されている。
【００２１】
この装置において、好ましくは、付加的な比較手段が比較器として形成されている。この比較器は２つの抵抗と接続されており、これらの抵抗は基準信号のレベルに対して固定された関係にある。
【００２２】
他の利点と好ましい形態が、請求項の特徴と明細書から明らかにされる。
【発明を実施するための最良の形態】
【００２３】
実施ユニットまたは処理ユニットは、以下においてプロセッサ／コア／ＣＰＵとも、ＦＰＵ（Floating Point Unit）、ＤＰＳ（Digitaler Signalprozessor）、コプロセッサまたはＡＬＵ（Arithmetic logical Unit）とも称することができる。
【００２４】
ここでは、２つまたはそれより多い処理ユニットを有するシステムについて考察される。原則的に、安全上重要なシステム内で種々の処理ユニットにできるだけ種々の課題を与えて能力を向上させるために、このようなリソースを使用する可能性がある。代替的に、処理ユニットに同一の課題を与えて、結果が等しくない場合にエラーと認識させることにより、リソースの幾つかを互いに冗長に使用することもできる。
【００２５】
それぞれいくつの処理ユニットがあるかによって、複数のモードが考えられる。２システムにおいては、上述したように、「比較」と「パフォーマンス」の２つのモードが存在する。３システムにおいては、３つの処理ユニットすべてが並列に作業する純粋なパフォーマンスモードと、３つの処理ユニットすべてが冗長に計算しかつ比較される、純粋な比較モードの他に、３つすべての処理ユニットが冗長に計算しかつ多数決が行われる３−２投票モードも実現される。さらに、ミックスされたモードも実現され、この場合例えば処理ユニットの２つが互いに冗長に計算して結果が比較され、第３の処理ユニットは、他の並列の課題を処理する。４以上の処理ユニットシステムにおいては、明らかに、さらに他の組合せが考えられる。
【００２６】
解決すべき課題は、システム内で提供される処理ユニットを、これらの処理ユニットの既存の構造に介入することなく（例えば同期化のために）、駆動において可変に使用できるようにすることにある。特殊な形態においては、各処理ユニットは専用のクロックで作業することができる。すなわち、比較を目的とした同一課題の処理は、互いに非同期でも処理することができる。
【００２７】
この課題は、普遍的な、広く使用可能なＩＰが形成され、そのＩＰが、前もって処理ユニットをオフにすることなく任意の時点で駆動モード（例えば、比較モード、パフォーマンスモードまたは投票モード）の切替えを可能にし、かつ場合によっては非同期のデータフローの比較または投票を互いに管理することによって解決される。このＩＰは、チップとして形成することができ、あるいは１または２以上の処理ユニットと共にチップ上に集積することができる。さらに、このチップが１片のシリコンからなることは前提ではなく、これを別々のモジュールから実現させることもまったく可能である。
【００２８】
異なる処理ユニット間の同期を保証するために、個々の処理ユニットにおいて次々に実行されるプログラム処理を阻止する信号が必要である。このため、通常、ＷＡＩＴ信号が設けられている。実施ユニットがウェイト信号を使用しない場合には、その実施ユニットはインターラプトを介して同期させることもできる。このために同期化信号（例えば図２のＭ１４０）は、ウェイト入力へ案内されずにインターラプトへ印加される。インターラプトは、ノーマルな作業方法を中断するために、処理プログラムに対して、また他のインターラプトに対しても、十分に高い優先順位を有していなければならない。
【００２９】
付属のインターラプトルーチンは、中断されたプログラム内へ再びジャンプバックする前に、所定の数のＮＯＰ（データに作用しない空指令）のみを実施することにより処理プログラムのそれ以降の処理を遅延させる。場合によっては、ノーマルなプログラム処理をインターラプトによって損なわないようにするために、インターラプトルーチン内で最初と最後にさらに通常のメモリ操作が行われなければならない。
【００３０】
このプロセスは、同期化が形成される（例えば他の処理ユニットが予測される比較データを供給する）までの間続行される。しかし、正確なクロック同期性と、特に他の処理ユニットとの同位相性とは、この方法によっては条件付きでしか保証できない。したがって、同期化のためにインターラプト信号を利用する場合に、比較すべきデータが比較される前に、この比較すべきデータをＵＶＥ内に中間記憶することが望ましい。
【００３１】
本発明の利点は、経済的に提供可能な任意の標準構造を使用できることにある。というのは、付加的な信号を必要とせず（ハードウェア構造への介入なしに）、かつこれらのコンポーネントの、例えば直接アクターの駆動に使用される、任意の出力信号を監視することができるからである。これは、これまで従来技術では比較によって直接検査することができなかったＤＡＣやＰＷＭのような変換器構造の検査も含まれている。
【００３２】
個々の課題またはＳＷタスクのための検査が必要とされない限りにおいては、様々なタスクが種々の処理ユニットに分配されることによってパフォーマンスモードへの切替えも可能である。
【００３３】
他の利点は、比較モードまたは投票モードにおいて、すべてのデータを比較する必要がないことにある。比較すべきあるいは投票すべきデータのみが、切替えおよび比較ユニット内で互いに同期される。これらのデータの選択は、切替えおよび比較ユニットの所望の応答によって可変（プログラミング可能）であり、任意の処理ユニットアーキテクチャおよび適用に適合させることができる。これにより様々なμＣ（ｍｉｃｒｏｃｏｎｔｒｏｌｌｅｒ（ＭＣＵ））またはソフトウェア部分の使用も容易に可能である。というのは、有意義な方法で比較することのできる結果のみが、実際にも比較されるからである。
【００３４】
さらに、これにより（例えば外部の）メモリへのアクセスを、あるいは外部のＩ／Ｏモジュールの駆動のみを監視することができる。内部の信号は、切替えモジュールへのソフトウェア制御される付加的な出力を介して、外部のデータおよび／またはアドレスバス上で検査可能である。
【００３５】
比較操作のためのすべての制御信号は、好ましくはプログラミング可能な切替えおよび投票ユニット内で生成され、比較もそこで行われる。その出力が互いに比較されるべき処理ユニット（例えばプロセッサ）は、ソフトウェアエラーを認識するために、同一プログラム、二重にされたプログラム（これが付加的に、メモリアクセスの際のエラーの認識を可能にする）あるいは多様化されたプログラムを利用することができる。このとき、処理ユニットによって準備されたすべての信号を互いに比較する必要はなく、識別子（アドレス信号または制御信号）を用いて比較のために所定の信号を設けることも可能であり、あるいは設けないことも可能である。この識別子は、切替えおよび比較ユニット内で評価されて、それによって比較が制御される。
【００３６】
別体のタイマーが、予め設定可能なリミットまで、時間行動における偏差を監視する。切替えおよび比較ユニットのいくつかあるいはすべてのモジュールは、チップ上、共通のボード上に集積することができ、あるいは空間的に別々に収容することもできる。後者の場合には、データと制御信号とは適当なバスシステムを介して交換される。このとき、レジスタは現場でバスシステムを介して書き込まれ、その中に格納されたデータおよび／またはアドレス／制御信号を用いてプロセスを制御する。
【００３７】
図１には、２つの処理ユニットＢ１０およびＢ１１と組み合わせて使用するための、本発明に基づく切替えユニットＢ０１の基本構造が示されている。処理ユニットＢ１０、Ｂ１１のデータ、制御信号およびアドレス信号Ｂ２０あるいはＢ２１のような種々の出力信号が切替えユニットＢ０１と接続されている。さらに、少なくとも１つの同期化信号、本発明に基づく配置形態においては、２つの出力信号Ｂ４０とＢ４１とが存在し、これらが比較ユニットの１つと接続されている。
【００３８】
切替えユニットは、少なくとも１つの制御レジスタＢ１５を有しており、制御レジスタは、比較ユニットのモードを切り替える、バイナリ記号（ビット）Ｂ１６のための少なくとも１つのメモリ素子を有している。Ｂ１６は、少なくとも２つの値０および１をとることができ、比較ユニットの信号Ｂ２０またはＢ２１によっても、切替えユニットの内部のプロセスによっても、セットまたはリセットすることができる。
【００３９】
Ｂ１６が第１の値にセットされている場合に、切替えユニットは比較モードで働く。このモードにおいて、データの有効性およびこれらのデータのために設けられている比較を知らせる、信号Ｂ２０とＢ２１からなる制御および／またはアドレス信号の所定の予め設定可能な比較条件が満たされている限りにおいて、Ｂ２０からなるすべての到着する信号はＢ２１からなるデータ信号と比較される。
【００４０】
この比較条件を２つの信号Ｂ２０とＢ２１とが同時に満たしている場合には、これらの信号からなるデータが互いに比較され、等しくない場合にはエラー信号Ｂ１７がセットされる。信号Ｂ２０あるいはＢ２１の比較条件のみが満たされている場合には、該当する同期化信号Ｂ４０あるいはＢ４１がセットされる。この信号は、該当する処理ユニットＢ１０あるいはＢ１１内で処理の停止をもたらし、これにより、これまで互いに比較することができなかった該当する信号の接続がさらに阻止される。信号Ｂ４０あるいはＢ４１は、それぞれ他方の処理ユニットＢ２１あるいはＢ２０の該当する比較条件が満たされるまでの間セットされ続ける。この場合において、比較が実施され、これに応じた同期化信号がリセットされる。
【００４１】
上述したように、比較すべきデータが２つの処理ユニットによって同時に準備されない場合にこれらのデータの比較を保証するため、該当する処理ユニットのデータと比較条件とを該当する同期化信号Ｂ４０あるいはＢ４１がリセットされるまで該当する値に維持するか、あるいは最初に準備されたデータを切替えユニット内に比較するまで記憶しておく必要がある。
【００４２】
それぞれどの処理ユニットが最初にデータを準備するかに応じて、この処理ユニットは、他の処理ユニットが該当する比較データを準備するまで、そのプログラムまたはプロセスのさらなる処理を待たなければならない。
【００４３】
図１に示す切替えユニットの特殊な形態においては、付属の処理ユニットが他の処理ユニットより早く比較データを準備しないことが常に保証される場合には、信号Ｂ４０あるいはＢ４１のいずれか１つを省略することができる。
【００４４】
Ｂ１６が第２の値にセットされている場合には、同期化信号Ｂ２０とＢ２１およびエラー信号Ｂ１７は常にインアクティブであって、例えば値０にセットされている。比較は行われず、２つの処理ユニットは互いに独立して作業する。
【００４５】
本発明に基づくシステム内の重要なコンポーネントは、比較器である。図１Ａに、この比較器を最も簡単な形式で示す。比較コンポーネントＭ５００は、２つの入力信号Ｍ５１０とＭ５１１を受け取ることができる。その後、このコンポーネントはこれらの入力信号を同一性について、ここに示すコンテキストにおいては好ましくはビット単位の同一性の意味で比較する。不同一性が検出された場合に、エラー信号Ｍ５３０が能動化されて、信号Ｍ５２０は非能動化される。同一の場合には、入力信号Ｍ５１０、Ｍ５１１の値が出力信号Ｍ５２０、Ｍ５２１へ与えられ、エラー信号Ｍ５３０は非アクティブ、すなわち「グッド」状態を知らせる。
【００４６】
このベーシックシステムから、多数の拡張された実施形態が考えられる。まず、コンポーネントＭ５００をいわゆるＴＳＣコンポーネント（totally self checking）として形成することができる。このとき、エラー信号Ｍ５３０は、少なくとも２本の導線（「デュアルレール」）上で外部へ案内され、内部のデザインおよびエラー発見機構によって、比較コンポーネントの各可能なエラー場合において、この信号が正しくあるいは認識可能に正しくなく存在することが保証される。本発明に基づくシステムの利用における好ましい実施形態は、このようなＴＳＣ比較器を使用することである。
【００４７】
実施形態の第２のクラスは、２つの入力Ｍ５１０、Ｍ５１１（あるいはＭ６１０、Ｍ６１１）がどの程度の同期性を持たなければならないかについて区別することができる。可能な変形例としては、クロック単位の同期性を特徴とし、すなわちデータの比較はクロックにおいて実施される。入力間の位相オフセットが固定されている場合に、該当する信号を、例えば整数あるいは半分のクロック周期だけ遅延させる同期遅延素子が使用されることによって、軽い変形が生じる。このような位相オフセットは、コモンコーズエラー（Ｃｏｍｍｏｎ  Ｃａｕｓｅ  Ｆｅｈｌｅｒ）、すなわち同時に複数の処理ユニットに作用する可能性のあるエラーを回避するために有用である。
【００４８】
したがって、図１Ｃにおいては、図１Ａからなるコンポーネントを越えて、早い方の入力を位相オフセット分遅延させるコンポーネントＭ６４０が挿入されている。この遅延素子は、比較モードにおいてだけ使用するために、比較器内に収容されていることが好ましい。その代わりに、あるいはそれに加えて、非同期性を同様に許容することができるようにするために、入力チェーン内に中間バッファを設けることもできる。好ましくは、中間バッファは、ＦＩＦＯメモリとして設計される。このようなバッファが存在する場合に、バッファの最大深度までは非同期性も許容することができる。この場合においては、バッファがオーバーフローした場合にも、エラー信号が出力されなければならない。
【００４９】
さらに比較器内で実施形態を、どのように信号Ｍ５２０（またはＭ６２０）が生成されるかに基づいて区別することができる。このとき、入力信号Ｍ５１０、Ｍ５１１（あるいはＭ６１０、Ｍ６１１）を出力へ与え、スイッチによって接続を中断可能にする形態であることが望ましい。この変形例の特別な利点は、パフォーマンスモードと可能な種々の比較モードとの間で切り替えるために、同一のスイッチを使用することができることにある。代替的に、信号を、比較器内部の中間バッファから生成することもできる。
【００５０】
実施形態の最後のクラスは、比較器にいくつの入力が存在し、かつ比較器がどのように反応するかにおいて異なることができる。入力が３つの場合には、多数決、３つ全部の比較あるいは２つの信号だけの比較を行うことができる。入力が４つまたはそれより多い場合には、それに応じて多くの変形例が考えられる。この変形例は、好ましくはシステム全体の種々の駆動モードと結合される。
【００５１】
一般的な場合を表示するため、図１Ｂに、好ましくは使用されるような、一般化した切替えおよび比較ユニットを示す。考慮すべきｎ個の実施ユニットから、ｎの信号Ｎ１４０、…、Ｎ１４ｎが切替えおよび比較コンポーネントＮ１００へ入力される。このコンポーネントは、これらの入力信号から、ｎまでの出力信号Ｎ１６０、…、Ｎ１６ｎを生成することができる。最も簡単な場合、「純粋なパフォーマンスモード」において、すべての信号Ｎ１４ｉが対応する出力信号Ｎ１６ｉから出力される。これに対して逆の場合、「純粋な比較モード」においては、すべての信号Ｎ１４０、…、Ｎ１４ｎが出力信号Ｎ１６ｉの１つから正確に出力される。
【００５２】
この図には、どのようにして考え得る種々のモードを生じることができるかが示されている。このため、この図には、切替え論理Ｎ１１０の論理コンポーネントが含まれている。コンポーネントは、このようなコンポーネントとして存在する必要はなく、その機能が存在することが重要である。コンポーネントは、まず、そもそもいくつの出力信号が存在するかを定める。さらに切替え論理Ｎ１１０により、どの入力信号がどの出力信号に寄与するかを定める。この場合に１つの入力信号が、正確に１つの出力信号に寄与することができる。数学的な形式において異なるように表現され、すなわち切替え論理によって集合｛Ｎ１４０、…、Ｎ１４ｎ｝の各エレメントに集合｛Ｎ１６０、…、Ｎ１６ｎ｝のエレメントを対応づける機能が定められる。
【００５３】
ここで、処理論理Ｎ１２０の機能は、出力Ｎ１６ｉの各々について、どのような形式で入力がこの出力信号に寄与するかを定める。このコンポーネントは、専用のコンポーネントとして存在する必要はない。ここでも重要なことは、システム内に上述した機能が実現されていることにある。例えば種々の変形可能性を説明するために、普遍性を損なうことなく出力Ｎ１６０が信号Ｎ１４１、…Ｎ１４ｍによって生成されると仮定する。ｍ＝１の場合は単純に信号のスルー接続に相当し、ｍ＝２の場合は信号Ｎ１４１、Ｎ１４２が比較される。この比較は、同期または非同期で実施することができ、ビット単位あるいは有意のｂｉｔ値で、あるいは許容帯域をもって実施することができる。
【００５４】
ｍ＞＝３の場合には、複数の可能性が生じる。
【００５５】
第１の可能性は、すべての信号を比較し、少なくとも２つの異なる値が存在する場合に、エラーを検出することであり、そのエラーは選択的に通知させるようにすることができる。
【００５６】
第２の可能性は、ｍからｋの選択（ｋ＞ｍ／２）を行うことである。これは、比較器を使用することによって実現可能である。選択的に、信号の１つがずれていると認識された場合に、エラー信号を生成することができる。３つの信号すべてが異なる場合には、場合によっては異なるエラー信号を生成することができる。
【００５７】
第３の可能性は、この値をアルゴリズムへ供給することである。これは、例えば、平均値、中央値の形成、またはエラー許容するアルゴリズム（ＦＴＡ）の使用であることができる。このようなＦＴＡは、入力値の極値を捨て、残りの値についてある種の平均を算出することに基づいている。平均の算出は、残りの値のすべてについて、あるいはＨＷにおいて容易に形成されるべき部分について行うことができる。この場合、値を実際に比較することは、必ずしも必要ではない。平均値形成において、例えば加算と除算を行えば済み、ＦＴＭ、ＦＴＡまたは中央値は、部分的なソートを必要とする。場合によってはここでも、極値が十分に大きい場合に選択的にエラー信号を出力することができる。
【００５８】
上述した複数の信号を１つの信号に処理する、これらの可能性は、以下において「比較操作」と称する。
【００５９】
処理論理の課題は、各出力信号について−そしてそれに伴う各入力信号についても−比較操作の正確な形態を定めることにある。切替え論理Ｎ１１０（すなわち上述した機能）と処理論理（すなわち出力信号当たり、機能値当たりの比較操作の決定）の情報の組合せがモード情報であって、これに基づいてモードが決定される。この情報は、一般的な場合において、もちろん多値であって、すなわち１つの論理ビットを介して表示可能であるだけではない。すべての論理的に考えられるモードが与えられた実装内において有意義ではなく、許容されるモードの数が制限されることが好ましい。強調すべきことは、実施ユニットが２つの場合（比較モードのみが存在する）、全情報を１つの論理ビットに凝縮できることである。
【００６０】
パフォーマンスモードから比較モードへの切替えは、一般的な場合において、パフォーマンスモードでは異なる出力へコピーされる実施ユニットが、比較モードでは同じ出力へコピーされることによって特徴づけられる。これは、実施ユニットの部分システムが存在することによって実現されることが好ましい。その部分システムにおいて、パフォーマンスモードでは部分システム内で考慮すべきすべての入力信号Ｎ１４ｉが直接関連する出力信号Ｎ１６ｉへ接続され、比較モードではすべてが１つの出力へコピーされる。代替的に、組合せを変更することによって、この切替えを実現することもできる。これは、本発明に与えられた特徴において、許容されるモードの量をこのように制限することができるにもかかわらず、一般的な場合において、パフォーマンスモードと比較モードとを話題にはできないことによって表される。しかし常に、パフォーマンスモードから比較モード（およびその逆）への切替えについては、話題にすることができる。
【００６１】
ソフトウェアを介して制御されることによって、これらのモード間で駆動するモードに動的に切り替えることができる。このとき、特殊な切替え機能、特殊なインストラクションシーケンス、明確に特徴づけられたインストラクションの実施を介して、あるいはマルチプロセッサシステムの実施ユニットの少なくとも１つによる所定のアドレスへのアクセスによって、切替えが作動される。
【００６２】
図２には、本発明に基づく切替えおよび比較ユニットＭ１００を有する、詳細に記載された２プロセッサシステムまたは２μＣシステムが示されている。同システムにおいて、選択的に、記載された種々の信号を省略することもできる。このシステムは、２つの処理ユニット（Ｍ１１０、Ｍ１１１）と切替えおよび比較ユニットＭ１００とからなる。データ信号（Ｍ１２０、Ｍ１２１）およびアドレス／制御信号（Ｍ１３０、Ｍ１３１）が各処理ユニットから切替えユニットへ入力され、選択的に、データ（Ｍ１５０、Ｍ１５１）および制御信号（Ｍ１４０、Ｍ１４１）が切替えユニットから各処理ユニットに返される。
【００６３】
ユニットＭ１００は、データ（Ｍ１６０、Ｍ１６１）とステータス情報Ｍ１６９とを出力し、例えばデータ（Ｍ１７０、Ｍ１７１）と制御信号Ｍ１７９のような信号を受信し、また、これらの信号を処理ユニットへ案内することもできる。Ｍ１７０、Ｍ１７１およびＭ１７９を介して、選択的に、ユニットＭ１００の駆動モードを処理ユニットに関係なく調節することもできる；同様に、プロセッサは、ユニットＭ１００内で出力Ｍ１２０、Ｍ１２１（例えばデータバス）およびアドレス／制御信号Ｍ１３０、Ｍ１３１（例えばライト（Ｗｒｉｔｅ））を介して駆動モード（例えばパフォーマンスモード（比較なし）または比較モード（信号Ｍ１２０、Ｍ１２１および／または、例えば周辺ユニットからユニットＭ１００に入力される信号Ｍ１７０、Ｍ１７１を比較））を調節することができる。
【００６４】
パフォーマンスモードにおいて、出力Ｍ１２０、Ｍ１２１は、場合によっては制御信号と組み合わされて、出力Ｍ１６０、Ｍ１６１へさらに出力されて、逆に入力Ｍ１７０、Ｍ１７１がＭ１５０、Ｍ１５１へ出力される。比較モードにおいては出力が比較されて、好ましくはエラーのない場合においてのみＭ１６０、Ｍ１６１へ出力される。この場合、選択的に２つの出力あるいは２つの出力のうち一方のみが利用される。同様に、処理ユニットへ入力される入力データＭ１７０、Ｍ１７１の検査も可能である。比較モードにおいて、信号の比較にエラーがある場合にエラー信号が生成されて、−例えばダブルレール信号を用いて、エラーに対して安全に−外部へ伝達される（ステータス情報Ｍ１６９の構成部分）。
【００６５】
ステータスＭ１６９には、駆動モードまたは実施ユニットの信号の時間的オフセットに関する情報も含めることができる。予め設定可能な（プログラミング可能な）タイムインターバル内に処理ユニットの比較データが準備されない場合にも、エラー信号が能動化される。エラーの場合には、出力Ｍ１６０、Ｍ１６１を遮断することができる（ｆａｉｌ  ｓｉｌｅｎｔ行動）。これは、デジタル信号についても、アナログ信号についても言える。しかし、この出力ドライバー段は、後からエラーを発見する可能性を有しており、処理ユニットに遅延されない（中間記憶されない）出力信号Ｍ１２０、Ｍ１２１を出力することもできる。これは、安全上重要なシステムによって、エラー許容時間を上回らない間、すなわち（慣性的な）システムがエラーに反応して取り返しがつかなくなる前に、つまりまだ補正の可能性がある間、許容される。
【００６６】
ＵＶＥへ入力されない出力信号Ｍ１８０、Ｍ１８１および処理ユニットの内部の信号も、少なくともその計算された値に関し、この値の比較のために出力Ｍ１２０、Ｍ１２１へ出力することによって比較することができる。Ｍ１００に入力されない入力信号Ｍ１９０、Ｍ１９１についても、これと同様に実施することができる。
【００６７】
ユニットＭ１００を監視するために、選択されたあるいはすべての信号Ｍ１６０、Ｍ１６１について、それらをＭ１７０、Ｍ１７１あるいはＭ１９０、Ｍ１９１を介して読み直すことが可能である。したがって比較モードにおいて、ユニットＭ１００からのエラーのある信号の検出を保証することができる。（オア結合において）Ｍ１００、Ｍ１１０、Ｍ１１１がアクセスするパスのいずれかの適切な遮断によって、システム全体のフェイルサイレンス行動（ｆａｉｌ  ｓｉｌｅｎｔ行動）を形成することができる。
【００６８】
図３に、図２に基づく切替えおよび比較ユニットＭ１００の可能な実装を詳細に示す。ユニットＭ１００は、モード（パフォーマンス／比較）を表す少なくとも１つのビットを有するコントロールレジスタＭ２００と、比較モードにおけるエラー状態を表す少なくとも１つのビットを有するステータスレジスタＭ２２０を有している。ウェイト信号およびインターラプト信号は、それぞれ２つの処理ユニットについて、コントロールレジスタ内の他のビットによって制御される。その場合に、場合によっては、例えば同期目的のため、駆動モード切替えの準備のため、およびエラー処理のためのように、種々のインターラプトの間で区別される。
【００６９】
選択的に、例えば、内部または外部のウォッチドッグ（Ｗａｔｃｈｄｏｇ；監視機構）を駆動するために処理ユニット間で最大限許容される時間差（クロック周期数）を有するＭ２４０、および例えばデータレジスタのオーバーフローを阻止するために時間差値（クロック周期数）を有し、この時間差値から最速のプロセッサをウェイト信号またはインターラプト信号を用いて時々停止または遅延させるＭ２４１のような、他のコントロールレジスタも設けられる。
【００７０】
ステータスレジスタＭ２２０内には、エラービットの他に、処理ユニット間のクロックオフセットの現在の大きさも記憶される。このため、例えば、（アドレスおよび制御信号、例えば所定のアドレス領域を介して）特別な特徴を有するデータ値が最初に準備されたとき、常に少なくとも１つのタイマーＭ２３０が処理ユニットによって始動され、該当するデータ値が第２の処理ユニットによって準備されたとき、常にタイマーの値がステータスレジスタへ転送される。より好ましくは、タイマーは、プログラムシーケンスが異なってもＷＣＥＴ（worst case execution time）にしたがって保証され、すべての処理ユニットがデータを供給しなければならないように調節される。タイマーが予め定められた値を上回った場合に、エラー信号が出力される。
【００７１】
処理ユニットの出力Ｍ１２０、Ｍ１２１は、デジタルのデータであって、Ｍ１００内で特に比較モードのため、クロックが正確でない限りにおいてはバッファメモリＭ２５０、Ｍ２５１内に記憶される。このメモリは、ＦＩＦＯとして形成することが好ましい。このメモリが１（レジスタ）の深度しか持たない場合には、データ損失を回避するために、例えばウェイト信号によって、比較が行われるまで他の値の出力が遅延される。
【００７２】
さらに、入力メモリＭ２５０、Ｍ２５１、ダイレクト入力Ｍ１２０、Ｍ１２１あるいはＭ１７０、Ｍ１７１からのデジタルデータを比較する、比較ユニットＭ２１０が設けられている。この比較ユニットは、例えばメモリユニットＭ２５０、Ｍ２５１内でシリアルデータを受信してパラレルデータに変換することができ、その後それがＭ２１０内で比較される場合にシリアルのデジタルデータ（例えばＰＭＷ信号）も互いに比較することができる。同様に、非同期のデジタル入力信号Ｍ１７０、Ｍ１７１を付加的なメモリユニットＭ２７０、Ｍ２７１を介して同期させることができる。これらも、入力信号１２０、１２１の場合と同様に、好ましくはＦＩＦＯ内に一時的にバッファされる。
【００７３】
パフォーマンスモードと比較モードの間の切替えは、コントロールレジスタ内のモードビットのセットまたはリセットによって行われる。これにより、例えば２つの処理ユニット内に、それに応じたインターラプトがもたらされる。比較自体は、準備されたデータＭ１２０、Ｍ１２１とそれに属するアドレスおよび制御信号Ｍ１３０、Ｍ１３１によって促される。このとき、Ｍ１２０とＭ１３０あるいはＭ１２１とＭ１３１からなる所定の信号が、対応付けられたデータの比較を行うべきかを表す識別子として機能する。
【００７４】
これが、図１の単純な切替えに対する他の実施形態である。ここでは、比較モードへ移行する場合にインターラプトルーチンを用いて種々の前準備が行われることが好ましい。これにより、２つの処理ユニットに対して同一の初期条件を形成することができる。処理ユニットのこの準備ができている場合に、この処理ユニットによってプロセッサ固有のレディビット（Ｒｅａｄｙ−Ｂｉｔ）がコントロールレジスタ内にセットされる。そして、処理ユニットは、他の処理ユニットからその準備が完了したことをレディビットによって通知するまで（図６のコントロールレジスタの説明も参照）待機状態となる。
【００７５】
この比較ユニット内で、同様にアナログデータに適した特殊なアナログ比較ユニットＭ２１１（analog compare unit）内でアナログデータを相互に比較することができる。しかしこれは、アナログ信号の出力が互いに対して十分に同期して行われるか、またはアナログ比較ユニット内に実装されているＡＤＣによってデジタル化されたデータがアナログ比較ユニット内に記憶される（これについては、図１２から１４の他の形態も参照）ことを前提としている。同期化は、比較ユニットのデジタル出力（データ、アドレスおよび制御信号）を上述したように互いに比較して、速い処理ユニットを待機させることによって実現することができる。この目的のため、アナログ信号のソースとして処理ユニット内で処理されるデジタル信号も（これらの信号はその他において外部では必要とされないが）、出力Ｍ１２０、Ｍ１２１を介してユニットＭ１００へ供給することができる。
【００７６】
アナログ信号の比較に加えての、この冗長な比較により、計算内のエラーを早い時期に認識することができ、さらに処理ユニットの同期化を容易にすることができる。アナログ信号の比較により、処理ユニットのＤＡＣ（digital to analog converter）のための付加的なエラーを認識することができる。ＤＣＳＬアーキテクチャの他の構造においては、このような可能性は与えられていない。
【００７７】
周辺ユニットからのアナログ入力についても、比較することができる。特に、周辺ユニットからのアナログ入力が同じシステムパラメータの冗長なセンサ信号である場合には、付加的な同期化措置は必要とされず、場合によっては、センサ信号の有効性を表示する信号のみを必要とする。アナログ信号の比較を実現することについて、さらに詳細に示す。
【００７８】
図４は、少なくともｎ＋１の処理ユニットを有するマルチプロセッサシステムを示しており、これらの各コンポーネントはここでも複数の部分処理ユニット（適当な付加コンポーネントを備えた、ＣＰＵ、ＡＬＵ、ＤＰＳ）からなることができる。これらの処理ユニットの信号は、図２に示す２システムと同様、切替えおよび比較ユニットと結合される。すなわち、図４におけるすべての信号とコンポーネントは、図２の対応するコンポーネントおよび信号と内容的に同一の意味を有する。
【００７９】
切替えおよび比較ユニットＭ３００は、マルチプロセッサシステム内で、パフォーマンスモード（すべての処理ユニットが異なるタスクを処理する）、種々の比較モード（２以上の処理ユニットのデータが比較され、ずれている場合にエラーが通知される）および種々の投票モード（異なるように設定可能なアルゴリズムにしたがって偏差がある場合に多数決する）の間で区別することができる。このとき、各処理ユニットについて、どのモードで作業しているか、および他のどの処理ユニットとこのモード内で協働する可能性があるか、をそれぞれ決定することができる。次に、切替えがどのようにして正確に行われるかを、図６に示すコントロールレジスタの説明において、さらに説明する。
【００８０】
図５は、ｎ＋１の処理ユニットを有するマルチプロセッサシステムのための切替えユニットの可能な実装を示している。各処理ユニットについて、切替えおよび比較モジュールの制御ユニット内に少なくとも１つのコントロールレジスタＭ４４ｉが設けられている。図６にコントロールレジスタの好ましいセットを詳細に示すとともに、説明する。ここで、Ｍ４４ｉは、コントロールレジスタＣｉに相当する。
【００８１】
コントロールレジスタについて、種々の実施形態が考えられる。適当なビットコンビネーションを介して、エラー認識パターンを使用すべきか、エラー許容パターンを使用すべきかを記述することができる。それぞれユニットＭ３００にかける手間とコストに応じて、さらに、どのタイプのエラー許容パターン（３から２、中央値、４から２、４から３、ＦＴＡ、ＦＴＭ…）を使用するかについても示すことができる。さらに、どの出力をスルー接続するかについても構成可能に形成することができる。どのコンポーネントがどのデータについてこのコンフィグレーションに影響を有することができるかにしたがって、実施形態を形成することもできる。
【００８２】
関与する処理ユニットの出力信号は、切替えユニット内で互いに比較される。信号は必ずしも正確にクロック処理する必要がないので、データの一時記憶が必要である。このとき、種々の処理ユニットから切替えユニットへ大きい時間差をもって与えられるデータを、切替えユニット内で比較することもできる。中間メモリ（例えばＦＩＦＯ（first in-first out）メモリとして形成あるいは他のバッファ形式）を使用することによって、他の処理ユニットがまだデータを準備できない間に、まず、１つの処理ユニットから複数のデータを受信することもできる。この場合、ＦＩＦＯメモリの充填状態を、２つの処理ユニットの同期性の尺度とする。所定の予め設定可能な充填状態を上回った場合に、処理の進行が遅い処理ユニットを待つために、最も処理が進行している処理ユニットをウェイト信号あるいは適当なインターラプトルーチンによって時々停止する。このとき監視は、処理ユニットに提供可能なすべての外部の信号にも広げるべきである；この信号には、アナログ信号またはＰＷＭ信号も含まれる。このため、切替えユニット内に、この種の信号の比較を許容する構造が設けられる。付加的に、比較すべきデータ間の最大の時間偏差を予め設定し、少なくとも１つのタイマーによって監視してもよい。
【００８３】
一般的に、２より多い処理ユニットを共通の切替えユニットによって互いに接続させるには、各処理ユニットのために、あるいは全処理ユニットのために、コントロールレジスタが必要である。図６に、このコントロールレジスタの特殊な形態を示す。
【００８４】
各コントロールレジスタＣｘの（ｎ＋１）の下方に位置するビットＢ５００ｘからＢ５０ｎｘは、ｎ＋１のプロセッサ／処理ユニットに一義的に対応付けられている。コントロールレジスタＣｘのビットＢ５１４ｘは、図１に示すＢ１６の値に相当し、比較／投票とパラレル作業との間で切り替わる。ビットＢ５１３ｘは該当する処理ユニットが比較の準備ができているか（Ready）を表示し、ビットＢ５１２ｘは同期化信号（WAITまたはINTERRUPT）を制御し、ビットＢ５１１ｘは、該当する処理ユニットｘをインターラプトによって比較の準備をさせるために利用することができる。同様に、ビットＢ５１１０ｘは、処理ユニットをパラレルモードへ戻す、インターラプトを制御する。
【００８５】
本実施形態において、コントロールレジスタＣｋのビットＢ５０ｉｋおよびＢ５０ｋｋが１にセットされている場合（０≦ｉ、ｋ≦ｎ）、処理ユニットｉの出力を処理ユニットｋの出力と比較するべきことを意味している。付加的に、Ｂ５０ｊｋも１に等しい場合には、ｉ、ｊおよびｋの間で投票が行われ、投票結果がＵＶＥの出力ｋに出力される（０≦ｉ、ｊ、ｋ≦ｎ）。このため、各グループの処理ユニットについて、すでに図５の説明で列挙されているように、投票あるいはまた過半数比較の特殊な種類を定めることができる。一般的に、ＵＶＥの出力ｋから投票結果を出力させる場合には、比較すべき／投票すべき処理ユニットｉ（コントロールレジスタＣｋ内）のためのすべてのビットＢ５０ｉｋがセットされなければならない。他の出力へのパラレルな出力も可能である。
【００８６】
コントロールレジスタｉのＢ５０ｉｉにおける１（０≦ｉ≦ｎ）は、比較ユニットの出力ｉがアクティブになるべきことを表している。すべてのコントロールレジスタＣｉが該当するメモリ箇所Ｂ５０ｉｉ内のみ１である場合（ｉ＝０、１、…ｎ）、すべての処理ユニットは、任意の異なるプログラムと専用の出力信号を有するパフォーマンスモードにおいて作業する。すべてのｎ＋１の下方に位置するビットＢ５０ｉｋが１に等しい場合（ｉ＝０、１、…、ｎ）、およびＢ５１４ｋがセットされている場合に、すべての処理ユニットの出力信号が多数決（投票）によって選択されて、ＵＶＥの出力ｋへ出力される；ｎ＝１である場合には、比較のみが行われる。
【００８７】
以下の説明において、複数の処理ユニットを有するシステム内で比較／投票へ移行する場合のシーケンスの例を説明する。
【００８８】
比較または投票を能動化するために、コントロールレジスタＣｉ内にビットＢ５１４ｉがセットされる。このビットは、処理ユニット自体によっても、あるいは所定のシステム状態、時間条件または他の条件（例えば所定のメモリ領域へのアクセス、エラーまたは非蓋然性）にしたがって切替えおよび比較ユニットからもセットすることができる。ビットＢ５１４ｉと共にビットＢ５０ｉｉおよびＢ５０ｋｉがセットされる場合には、ＵＶＥによって自動的にビットＢ５１１ｉとＢ５１１ｋがセットされ、これにより処理ユニットｉおよびｋ内でインターラプトが作動される。このインターラプトによって、処理ユニットが所定のプログラム部分へジャンプし、比較モードへ移行するための所定の初期化ステップが実施される。その後、切替えおよび比較ユニットへ応答（Ready）が出力される。
【００８９】
Ready信号は、処理ユニットの各コントロールレジスタＣｉ内のインターラプトビットＢ５１１ｉの自動的なリセットをもたらすと同時に、ウェイトビットＢ５１２ｉのセットをもたらす。関与する処理ユニットのすべてのウェイトビットがセットされている場合には、それらが切替えおよび比較ユニットによって同時にリセットされる。その後、処理ユニットにより、監視すべきプログラム部分の処理が開始される。好ましい実施形態においては、ロック（ＨＷまたはＳＷ）によって、セットされたビットＢ５１４ｉを有するコントロールレジスタＣｉへの書込みが阻止される。これは有意義な方法であり、処理の間比較器のコンフィグレーションの変更ができないようになる。コントロールレジスタＣｉ内の変更は、ビットＢ５１４ｉのリセット後に初めて可能になる。このリセットは、ノーマルモード（パラレルな作業方法）へ移行するために、すべての関与する処理ユニットのコントロールレジスタ内にビットＢ５１０ｘをセットすることによって、該当する処理ユニット内にインターラプトをもたらすことができる。
【００９０】
すべてのコントロールレジスタの相互一貫性は、ユーザー設定に基づいて監視されており、エラーの場合には、ステータス情報の構成部分であるエラー信号が生成される。すなわち、例えば、１つの処理ユニットが複数の独立した比較または投票プロセスのために使用されることが生じてはならない。この場合には同期化が保証されないからである。しかし、データ信号を出力せず、等しくない場合にエラー信号を発生させるためだけに、複数の処理ユニットを比較することも考えられる。
【００９１】
他の実施形態においては、比較または投票に関与する処理ユニットの複数あるいはすべてのコントロールレジスタ内の入力が同様に行われる。すなわち、これらの処理ユニットの該当するビットが、場合によっては出力を制御する専用のビットｉを除いて同種にセットされる。
【００９２】
図７には、中央投票のための投票ユニットＱ１００が示されている。投票は、適切なハードウェアによっても、ソフトウェア的に実施することもできる。このため、投票アルゴリズム（例えば正確なビット投票）が予め設定される。この場合、投票ユニットＱ１００は、複数の信号Ｑ１１０、Ｑ１１１、Ｑ１１２を有しており、これらの信号から投票（例えばｎからｍ選択）によって生じる出力信号Ｑ１２０を形成する。
【００９３】
比較する際にエラーが発生した場合に、該当するコントロールレジスタ内にエラービットがセットされる。投票の際には、該当する処理ユニットのデータは無視される；最も単純な比較においては出力が遮断される。
【００９４】
プログラミングされた時間の経過前までに準備が間に合わなかったすべてのデータは、エラーと同様に処理される。エラービットのリセットは、システムにしたがって行われ、場合によっては該当する処理ユニットの再統合を可能にする。
【００９５】
処理ユニットおよび／または投票者が空間的に集中して配置されていない場合は、図８に示すように適切なバスシステムと組み合わせて分散させた投票も可能である。図８において、分散された投票ユニットＱ２００は、制御ユニットＱ２１０によって管理される。投票ユニットはバスシステムＱ２２１、Ｑ２２２を介して結合されており、これらのバスシステムを介してデータを入手し、それをまたバスシステムへ出力する。
【００９６】
アクティブな出力ビットを有するコントロールレジスタ内の比較または投票ビットのリセットは、関与する処理ユニット内にインターラプトをもたらし、これにより、これらの処理ユニットは再びパラレルな作業方法に戻される。その場合に各処理ユニットは、別々に管理される、異なるジャンプインアドレスを有することができる。この場合も、プログラム処理は同一のプログラムメモリから行うことができる。ただし、アクセスは別であって、通常異なるアドレスで行われる。パラレルなモードと比較して安全上重要な部分が少ない限りは、二重にされた安全部分を有する専用のプログラムメモリについて、場合によっては複雑さが少ないかが比較される。データメモリも、パフォーマンスモードにおいて共通に利用することができる。このときアクセスは、例えばＡＨＢ／ＡＢＰバスを用いて順次行われる。
【００９７】
特殊性として、さらに、システムによるエラービットの評価の必要性について述べる。エラーの場合においては、安全な遮断を保証するために、安全上重要な信号は適切な形式で冗長に実現されなければならない（例えば２から１コード）。
【００９８】
図１、２、３、４および５に示す従来のＵＶＥにおいては、まず、処理ユニットは互いに一定の位相関係にある、同一または互いに導き出されたクロックで働くと仮定された。処理装置のために、位相関係が変化する、異なる発振器およびジェネレータのクロックも使用する場合には、それによって発生される信号を、この信号がクロックドメインを変化させる場合に同期させなければならない。このため、同期化素子Ｍ８００が、図９に示されている。同期化装置Ｍ８００は、特にデジタルデータを安全に格納し、かつ比較するために必要であって、信号フロー内の任意の箇所に設けることができる。これは、一方では、データを準備した処理ユニットのクロックＭ８３０でデータＭ８２０を格納することを保証する。このときの読み取りには、データＭ８４０を処理したクロックが利用される。このような同期化段Ｍ８００は、複数のデータの格納を可能とするために、ＦＩＦＯとして形成することができる（図９参照）。一般的に、データの同期化だけでは十分ではなく、データの準備信号も受信クロックによって同期化される。
【００９９】
このため、さらに、要請信号Ｍ８５０と受領信号Ｍ８８０により引渡しを保証する、ハンドシェークインターフェイス（Ｈａｎｄｓｈａｋｅ−Ｉｎｔｅｒｆａｃｅ）が必要である（図１０）。このようなインターフェイスは、あるクロックドメインから他のクロックドメインへのデータの安全な伝送を保証するために、クロックドメインが変化する場合に常に必要である。この場合に、書込みの際には、データＭ８２０が領域Ｑ３０５からクロックＭ８３０でレジスタセルＭ８００へ同期して提供され、かつ書込み要請信号Ｍ８５０がデータの準備を表示する。この書込み要請信号が領域Ｑ３０６からクロックＭ８６０でメモリ素子Ｍ８０１へ引き渡されて、これが同期化された信号Ｍ８７０としてデータの準備を表示する。
【０１００】
これに続いてクロックＭ８６０の次のアクティブなクロック端で、同期化されたデータＭ８４０が引き渡されて、確認信号Ｍ８８０が返信される。この確認信号は、他のメモリ素子Ｍ８０１内でクロックＭ８３０によって信号Ｍ８９０に同期され、これによりデータの準備が終了する。その後、新しいデータを該当するレジスタ内へ書き込むことができる。このようなインターフェイスは従来技術として知られているが、特殊な実施形態においては、受領信号を待機する必要なしに、付加的なコード化によって特に高速に働くことができる。
【０１０１】
特別な実施形態において、メモリ素子Ｍ８００はＦＩＦＯメモリ（first-in, first-out）として形成されている。
【０１０２】
図１１から図１４のアナログ信号を比較するための回路では、有意義な比較とするため、比較すべきアナログ信号を供給する処理ユニットが互いに同期化されていることを前提としている。同期化は、図１の該当する信号Ｂ４０およびＢ４１により実現可能である。
【０１０３】
図１１は、差動増幅を示している。この素子を用いて、２つの電圧を互いに比較することができる。Ｂ１００は演算増幅器であって、その負の入力Ｂ１０１は信号Ｂ１４１が接続され、その信号は値Ｒinを有する抵抗Ｂ１１０を介して入力信号Ｂ１１１と接続されており、その入力信号に電圧値Ｖ１が印加されている。正の入力Ｂ１０２は信号Ｂ１４２と接続されており、その信号が値Ｒinを有する抵抗Ｂ１２０を介して入力Ｂ１２１と接続されており、その入力に電圧値Ｖ２が印加されている。演算増幅器の出力Ｂ１０３は出力信号Ｂ１９０と接続されており、その出力信号は電圧値Ｖoutを有する。信号Ｂ１９０は、値Ｒｆを有する抵抗Ｂ１４０を介して信号Ｂ１４１と接続されており、信号Ｂ１４２は値Ｒｆを有する抵抗Ｂ１３０を介して信号Ｂ１３１と接続されており、その信号はアナログ基準点Ｖagndの電圧値を有している。出力電圧は、上記の電圧および抵抗値を用いて、以下の式に従って計算することができる：
Ｖout＝Ｒｆ／Ｒin（Ｖ２−Ｖ１）  ・・・（数式１）
【０１０４】
差動増幅器がＣＭＯＳの場合に通常そうであるように、正の駆動電圧で駆動される場合には、アナロググラウンドＶagndとして駆動電圧とデジタルグラウンドの間の電圧、通常平均の電位が選択される。２つのアナログ入力電圧Ｖ１とＶ２がわずかしか異なっていない場合には、出力電圧Ｖoutはアナロググラウンドに対してわずかな差Ｖdiffのみを有する（正または負）。
【０１０５】
２つの比較器を用いて、出力電圧がＶagnd＋Ｖdiffの上（図１２）にあるか、あるいはＶagnd−Ｖdiffの下にあるか、さらにアナログ基準点にあるか（図１３）が調べられる。このとき、図１２では、入力信号Ｂ２２１は値Ｒ１を有する抵抗Ｂ１５０を介して信号Ｂ２４２と接続されており、その信号が演算増幅器Ｂ２００の正の入力Ｂ２０２と接続されている。さらに、信号Ｂ２４２が値Ｒ２を有する抵抗Ｂ１６０を介して信号Ｂ２３１と接続されており、その信号がデジタル基準電位Ｖdgndとして利用される。演算増幅器の負の入力Ｂ２０１は入力信号２１１と接続されており、それが基準電圧Ｖrefの電圧値を有する。演算増幅器Ｂ２００の出力Ｂ２０３は出力信号Ｂ２９０と接続されており、それが電圧値Ｖobenを有する。
【０１０６】
図１３においても同様に、入力信号Ｂ３２１は値Ｒ３を有する抵抗Ｂ１７０を介して信号Ｂ３４２と接続されており、その信号が演算増幅器Ｂ３００の負の入力Ｂ３０１と接続されている。この信号Ｂ３４２は、さらに、値Ｒ４を有する抵抗Ｂ１８０を介して信号Ｂ３３１に接続されており、その信号もデジタルの基準電位Ｖdgndを有する。演算増幅器Ｂ３００の正の入力Ｂ３０２は入力信号Ｂ３１１と接続されており、その信号が基準電圧Ｖrefの電圧値を有する。演算増幅器Ｂ３００の出力Ｂ３０３は出力信号Ｂ３９０と接続されており、それが電圧値Ｖuntenを有する。
【０１０７】
これは、抵抗Ｂ１５０、Ｂ１６０、Ｂ１７０およびＢ１８０の抵抗値Ｒ１、Ｒ２、Ｒ３およびＲ４が、信号Ｂ２１１とＢ３１１に印加される固定の基準電圧Ｖrefに対して、以下のような関係にあることによって、達成される：
Ｖref＝（Ｖagnd＋Ｖdiff）＊Ｒ２／（Ｒ１＋Ｒ２）    ・・・（数式２）
Ｖref＝（Ｖagnd−Ｖdiff）＊Ｒ４／（Ｒ３＋Ｒ４）    ・・・（数式３）
Ｖdiff＝（（Ｖ2max−Ｖ1min）＊Ｒｆ／Ｒin）−Ｖagnd・・・（数式４）
【０１０８】
ここで、Ｖ2maxは、信号Ｂ１２１におけるＶ２の最大許容される電圧値であり、Ｖ1minは、信号Ｂ１１１におけるＶ１の最少許容される電圧値である。基準電圧源は、外部から提供することができ、あるいはまた、内部で実現されるバンドギャップ（温度補償され、かつ駆動電圧に依存しない基準電圧）によって実現することができる。数式４において、最大許容される差Ｖdiffは、最大の正の偏差Ｖ2maxと付属の最大の負の偏差Ｖ1minから定めることができる。すなわち（Ｖ2max−Ｖ1min）が、互いに比較されるべき冗長なアナログ信号の互いに対する最大許容される電圧偏差である。
【０１０９】
２つの信号Ｂ２９０またはＢ３９０における電圧値の一方（ＶobenまたはＶunten）が正である場合に、アナログ信号の、許容されるより大きい偏差が存在する。したがって、このアナログ信号を供給するプロセッサが同期されている限りにおいて、エラーが存在する。このエラーは記憶されなければならず、場合によって出力信号をオフにする。同期性は、例えば該当する処理ユニットのコントロールレジスタ内でレディ信号がアクティブであり、あるいは該当するアナログ信号の所定の状態とそれに伴って比較すべき値を識別できるように示す、所定のデジタル信号がＵＶＥへ送信された場合に与えられている。
【０１１０】
図１４にエラーを記憶する回路を示す。この回路において、２つの入力信号Ｂ３９０とＢ２９０がＮＯＲ回路（後段のインバータを有する論理的ＯＲ回路）を介して出力信号Ｂ４１１に結合される。この信号Ｂ４１１は、入力信号Ｂ４２１とＮＯＲ素子Ｂ４２０内で出力信号Ｂ４２１に結合される。信号Ｂ４２１はＯＲ回路Ｂ４３０内で信号Ｂ４０１と信号Ｂ４３１とに結合され、この信号がメモリ素子（Ｄフリップフロップ）Ｂ４００の入力信号として用いられる。素子Ｂ４００の出力信号Ｂ４０１は、値１でエラーを表示する。ＤフリップフロップＢ４００は、信号Ｂ３９０あるいはＢ２９０における２つの電圧値ＶuntenまたはＶobenの一方が正であり、すなわちデジタルの信号として値highを有し、信号Ｂ２４１がアクティブでなく、かつリセット信号Ｂ４０２が印加されていない場合に、クロックＢ４０３で１を記憶する。エラーは、信号リセットが少なくとも一度アクティブになるまで記憶される。
【０１１１】
図１１から図１３の回路を設計する場合、抵抗を互いにマッチングさせ、すなわちＲｆとＲin、Ｒ１とＲ２およびＲ３とＲ３の抵抗比ができるだけ製造誤差によらず一定になるように注意すべきである。信号Ｂ４２１を用いて、回路がアクティブになるべきか、あるいは、比較を行うべきではない、処理ユニットの同期化を行うか、を制御することができる。信号Ｂ４０２は、その前のエラーをリセットして、新しい比較を可能にする。
【０１１２】
図１５は、ＡＤＣを示す。このＡＤＣは、例えば変換速度、精度、精細度、故障強さ、線形性および周波数スペクトル等の、それぞれすでにある要請に応じて、種々の既知の変換方法を用いて実現することができる。すなわち、例えば、逐次的な近似の原理を選択することができ、そこではアナログ信号がデジタルアナログ変換器（ＤＡＣ）から生成された信号と比較器を用いて比較される。このとき、ＤＡＣのデジタルの入力ビットが系統的にＭＳＢ（most significant bit−最上位のビット）からＬＳＢ（least
significant bit−最下位のビット）へ試験的にhighにセットされ、ＤＡＣのアナログ出力信号がアナログ入力信号（変換すべき信号）よりも高い値を有する場合にリセットされる。
【０１１３】
ＤＡＣは、ＬＳＢからＭＳＢへそのデジタルビットによって、抵抗または容量を重み付け１、２、４、８、１６、…のように、次に高いビットのセットが常にその前の２倍の大きさの作用をアナログ値に与えるように制御する。すべてのビットが試験的にセットされて、場合によっては再びリセットされた後に、デジタルワードの値はデジタルで表現されたアナログ入力信号に相当する。より高い速度要請のために、連続的なデータフローにおいて連続的にアナログ信号を処理し、シリアルのデジタル信号を出力する変換器を使用することもでき、アナログデータフローはデジタル信号のシリアルのビット列により近似される。デジタルワードは、ここでは、シフトレジスタに記憶されているビット列によって表現される。しかし、このような変換器は、一定の値を処理することはできないので、変換期間内でアナログ信号が常に変化することを前提としている。
【０１１４】
より低い速度要請のためには、例えば入力電圧または入力電流を用いてそれに応じた積分器へ接続されるコンデンサの一定の充電または放電をもたらす、計数原理に基づく変換器も利用することができる。そのために必要な時間が測定されて、基準電圧源あるいはそれに応じた基準電圧を用いて同じコンデンサ（積分器）を放電あるいは充電させるために逆方向に必要とされる時間に対する比が求められる。この単位時間がクロックで測定されて、必要とされるクロックの数がアナログ入力値の尺度となる。このような方法としては、例えばデュアルスロープ方法（dual slope）があり、同方法において第１の側面（slope）がアナログ値に応じた放電によって定められ、第２の側面は基準値に応じた再充電によって定められる（http://www.exstrom.com/journal/adc/dsadc.html参照）。
【０１１５】
図１５のＡＤＣＢ６００は、通常、アナログ信号を準備したプロセッサの出力信号であるトリガー信号Ｂ６０２と、選択的に識別子Ｂ６０３によって制御される。この識別子は、複数のアナログの区別を可能にするために、準備されたアナログ信号の種類に関する情報を与える。トリガー信号Ｂ６０２によって、変換されたアナログ値がメモリ領域Ｂ６４０のレジスタＢ６１０へデジタル値として、選択的に、Ｂ６２０内に格納される識別子Ｂ６０３および場合によっては、メモリ６３０内に格納される付加的な信号Ｂ６０４（１であると、アナログ値の識別）と共に引き渡される。メモリ領域Ｂ６４０は、複数の値が格納され、最初に格納された値が最初に出力されるべき場合に、好ましくはＦＩＦＯ（first-in, first-out）としても実現することができる。メモリ領域Ｂ６４０が、デジタル値にもデジタル変換されたアナログ値にも利用される場合には、好ましくはすべてのデジタル値は、Ａ＝１を有するデジタル化されたアナログ値（Ｂ６３０）と区別するために、Ｂ６３０に示すように、ＭＳＢ箇所において１ビットＡ＝０だけ補足される（図１６および図１７参照）。Ｂ６０２もＢ６０３も、プロセッサｉのデジタル出力データＯｉの構成部分である。
【０１１６】
図１６に、格納されるデジタル化されたアナログ値が、メモリ領域にどのように格納されるかを示す。ここで、Ｂ７１０はデジタル化されたアナログ値自体であって、Ｂ７２０は付属の識別子、Ｂ７３０はアナログビットであって、この場合には１として格納される。図１７には、同じメモリ領域に格納されるデジタル値の変形例を示す。Ｂ８１０内にはデジタル値自体が記憶され、Ｂ８２０にはそれに対して選択的に、そもそもデジタル値を比較すべきか否かについて情報を与える識別子、あるいはまた比較の他の条件を格納することができる。Ｂ８３０内には、それがデジタル値であることを特徴づけるために、値０が格納されている。
【０１１７】
一時記憶されているデジタルおよびアナログ信号を比較するために、格納の順序と場合によってはＡビット（Ｂ７３０あるいはＢ８３０）および識別子Ｂ７２０またはＢ８２０が、変換されたデジタル値Ｂ７１０あるいはデジタル値Ｂ８１０と組み合わせて調べられる。また、例えば異なるビット幅によって、アナログ信号とデジタル信号を別々のメモリ（２つのＦＩＦＯ）に収容する可能性もある。その場合に比較は、事象制御されて行われる：プロセッサの値がＵＶＥへ伝送された場合に常に、他の関与するプロセッサがこのような値をすでに準備しているかが調べられる。準備していない場合には、値が該当するＦＩＦＯまたはメモリに格納される。一方、準備されている場合には直接比較が実施され、ここでもＦＩＦＯをメモリとして用いることができる。比較は、例えば、関与するＦＩＦＯが空でない場合に常に終了される。関与するプロセッサあるいは処理ユニットが２つより多い場合に、投票によってすべての信号が分配を許容されるか（fail silent行動）または場合によってはエラー信号によってのみエラー状態が知らされるかが求められる。
【図面の簡単な説明】
【０１１８】
【図１】２つの処理ユニットのための切替えおよび比較ユニットの基本機能を示している。
【図１Ａ】一般化された比較器を示す。
【図１Ｂ】一般化された切替えおよび比較ユニットを示す。
【図１Ｃ】他の比較器を示す。
【図２】２つの処理ユニットのための切替えおよび比較ユニットの詳細を示す。
【図３】２つの処理ユニットのための切替えおよび比較ユニットの実現可能な形態を示す。
【図４】２つより多い処理ユニットのための切替えおよび比較ユニットの詳細を示す。
【図５】２つより多い処理ユニットのための切替えおよび比較ユニットの実現可能な形態を示す。
【図６】コントロールレジスタの実現可能な形態を示す。
【図７】中央投票のための投票ユニットを示す。
【図８】分散投票のための投票ユニットを示す。
【図９】同期化素子を示す。
【図１０】ハンドシェークインターフェイスを示す。
【図１１】差動増幅器を示す。
【図１２】正の電圧差のための比較器を示す。
【図１３】負の電圧差のための比較器を示す。
【図１４】エラーを記憶する回路を示す。
【図１５】出力レジスタを有するアナログ−デジタルコンバータを示す。
【図１６】識別子とアナログビットを有するデジタル変換されたアナログ値を示す。
【図１７】デジタルビットを有するデジタルワードとしてのデジタル値を示す。
【図１】
2008518306.tif 000003
【図１ａ】
2008518306.tif 000004
【図１ｂ】
2008518306.tif 000005
【図１ｃ】
2008518306.tif 000006
【図２】
2008518306.tif 000007
【図３】
2008518306.tif 000008
【図４】
2008518306.tif 000009
【図５】
2008518306.tif 000010
【図６】
2008518306.tif 000011
【図７】
2008518306.tif 000012
【図８】
2008518306.tif 000013
【図９】
2008518306.tif 000014
【図１０】
2008518306.tif 000015
【図１１】
2008518306.tif 000016
【図１２】
2008518306.tif 000017
【図１３】
2008518306.tif 000018
【図１４】
2008518306.tif 000019
【図１５】
2008518306.tif 000020
【図１６】
2008518306.tif 000021
【図１７】
2008518306.tif 000022
【国際調査報告】
2008518306.tif 000023
2008518306.tif 000024
2008518306.tif 000025
2008518306.tif 000026
2008518306.tif 000027
2008518306.tif 000028