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