(57)【要約】複数の実行ユニットを有する計算機システム内の処理を分析する装置および方法であって、実行ユニットが計算機システム内で少なくとも２つの異なる駆動モードで設定可能であり、少なくとも２つの実行ユニットが第１のモードとしてパフォーマンスモードで作業し、かつ少なくとも１つの第２のモードが比較モードとして設けられており、全ての実行ユニット内の状態および処理を分析するために分析ユニット、特にデバッグ支援ユニットが使用される。本装置および本方法において、装置は、パフォーマンスモードにおいて互いに独立して作業する実行ユニットの最大数よりも多い、少なくとも１つの分析ユニットを備える【選択図】図１
2009506408.tif 000002
【特許請求の範囲】
【請求項１】
複数の実行ユニットを有する計算機システム内の処理を分析する装置であって、前記実行ユニットが前記計算機システム内で少なくとも２つの異なる駆動モードに設定可能であり、少なくとも２つの実行ユニットが第１のモードとしてパフォーマンスモードで作業し、かつ少なくとも１つの第２のモードが比較モードとして設けられており、全ての実行ユニット内の状態および処理を分析するために分析ユニット、特にデバッグ支援ユニットが使用される、前記装置において、
前記パフォーマンスモードにおいて互いに独立して作業する実行ユニットの最大数よりも多い、少なくとも１つの分析ユニットを備えることを特徴とする、複数の実行ユニットを有する計算機システム内の処理を分析する装置。
【請求項２】
少なくとも１つの第１のモードにおいて、比較モードで他の実行ユニットと協働しない全ての実行ユニットに対して、実行ユニット内の状態および処理を監視および／または調節可能な分析ユニットが各々に対応づけられるように構成されていることを特徴とする、請求項１に記載の装置。
【請求項３】
少なくとも１つの第２のモードにおいて、少なくとも２つの実行ユニットが一時的な部分システムとして比較モードで協働し、前記部分システムに対して、部分システム内の状態および処理を監視および／または調節可能な他の分析ユニットが対応づけられるように構成されていることを特徴とする、請求項１に記載の装置。
【請求項４】
少なくとも１つのモード信号、特にコアモード信号によって、少なくとも１つの分析ユニットのアクティビティが切替えられるように構成されていることを特徴とする、請求項１〜３のいずれかに記載の装置。
【請求項５】
少なくとも１つの分析ユニットの制御信号によって、少なくとも１つの他の分析ユニットのアクティビティが切替えられるように構成されていることを特徴とする、請求項１〜３のいずれかに記載の装置。
【請求項６】
比較モードで協働する、前記部分システムにおける全ての実行ユニットの状態および処理に関する同期した監視および／または調節が、前記分析ユニットによって可能となるように構成されていることを特徴とする、請求項３に記載の装置。
【請求項７】
前記計算機システムの前記駆動モードおよび／または他の予め設定可能な条件に従って分析ユニットの能動化および／または非能動化を可能にする、付加的な手段が設けられていることを特徴とする、請求項１〜３のいずれかに記載の装置。
【請求項８】
部分システムの比較モードにおいて、前記部分システムに対応づけられた分析ユニットが能動化され、前記部分システムに対応づけられた実行ユニットの分析ユニットが非能動化されるように構成されていることを特徴とする、請求項３に記載の装置。
【請求項９】
実行ユニットおよび／または比較手段の付加的な状態または各入力信号が、少なくとも１つの分析ユニットによって調節可能であって、かつ前記調節されるユニットの状態または出力信号が、前記少なくとも１つの分析ユニットまたは他の分析ユニットによって監視可能であることを特徴とする、請求項４または５に記載の装置。
【請求項１０】
請求項１〜９のいずれかに記載の装置を有する計算機システム。
【請求項１１】
複数の実行ユニットを有する計算機システム内の処理を分析する方法であって、前記実行ユニットが前記計算機システム内で少なくとも２つの異なる駆動モードに設定可能であり、少なくとも２つの実行ユニットが第１のモードとしてパフォーマンスモードで作業し、かつ少なくとも１つの第２のモードが比較モードとして設けられており、全ての実行ユニット内の状態および処理を監視および／または調節するために複数の分析ユニット、特にデバッグ支援ユニットが使用される、前記方法において、
前記パフォーマンスモードにおいて互いに独立して作業する前記実行ユニットの最大数よりも多い、少なくとも１つの分析ユニットを備え、前記分析ユニットが、前記実行ユニット内の状態および処理を監視および／または調節可能である、装置が使用されることを特徴とする、複数の実行ユニットを有する計算機システム内で処理を分析する方法。
【請求項１２】
少なくとも１つの第１のモードにおいて、比較モードで他の実行ユニットと協働しない全ての実行ユニットに対して、実行ユニット内の状態および処理を監視および／または調節可能な分析ユニットが各々に対応づけられることを特徴とする、請求項１１に記載の方法。
【請求項１３】
少なくとも１つの第２のモードにおいて、少なくとも２つの実行ユニットが一時的な部分システムとして比較モードで協働し、かつ前記部分システムに対して、部分システム内の状態および処理を監視および／または調節可能な他の分析ユニットが対応づけられることを特徴とする、請求項１１に記載の装置。
【請求項１４】
少なくとも１つのモード信号、特にコアモード信号によって、少なくとも１つの分析ユニットのアクティビティが切替えられることを特徴とする、請求項１１〜１３のいずれかに記載の方法。
【請求項１５】
少なくとも１つの分析ユニットの制御信号によって、少なくとも１つの他の分析ユニットのアクティビティが切替えられることを特徴とする、請求項１１〜１３のいずれかに記載の方法。
【請求項１６】
比較モードで協働する、前記部分システムにおける全ての実行ユニットの状態および処理に関する監視および／または調節が、前記分析ユニットによって同期して行われることを特徴とする、請求項１３に記載の方法。
【請求項１７】
分析ユニットの能動化および／または非能動化が、前記計算機システムの前記駆動モードおよび／または他の予め設定可能な条件に従って行われることを特徴とする、請求項１１〜１３のいずれかに記載の方法。
【請求項１８】
前記能動化および／または非能動化は、ハードウェア内に実装され、計算機システムの一部をなす手段によって行われることを特徴とする、請求項１７に記載の方法。
【請求項１９】
部分システムの比較モードにおいて、前記部分システムに対応づけられた分析ユニットが能動化され、前記部分システムに対応づけられた実行ユニットの分析ユニットが非能動化されることを特徴とする、請求項１３に記載の方法。
【請求項２０】
実行ユニットおよび／または比較手段の付加的な状態または各入力信号が、少なくとも１つの分析ユニットによって調節され、かつ前記調節されるユニットの状態または出力信号が、前記分析ユニットまたは他の分析ユニットによって監視可能であることを特徴とする、請求項１４または１５に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
（背景技術）
α粒子や宇宙線によって引き起こされる過渡的なエラーが集積半導体回路にとって問題となりつつある。構造幅の減少、電圧の低下およびクロック周波数の増加に起因して、α粒子や宇宙線によって引き起こされる電圧ピークが集積回路の論理値を狂わせる確率を高める。この結果として、誤った計算結果が生じうる。よって、特に車両等の安全性関連のシステムでは、この種のエラーが確実に検出されなければならない。
【０００２】
電子回路の誤機能が確実に検出されなければならない、例えば車両のＡＢＳ制御システム等に冗長性が利用される。例えば公知のＡＢＳシステムでは、各々に完全なマイクロコントローラが二重化されており、全てのＡＢＳ機能が冗長的に計算されて互いの一致が検査される。結果に矛盾が生じれば、ＡＢＳシステムが停止される。
【０００３】
マイクロコントローラは、記憶モジュール（例えば、ＲＡＭ、ＲＯＭ、キャッシュ）、コア、入出力インターフェース、およびいわゆる周辺装置（例えば、Ａ／Ｄ変換器、ＣＡＮインターフェース）からなる。記憶素子が検査コード（パリティまたはＥＣＣ）により効率的に監視され、周辺装置が適用に固有の方法によりセンサ信号経路またはアクチュエータ信号経路の一部として監視されるので、今後の冗長性の取組みは、マイクロコントローラのコア独自の二重化に関するものとなる。
【０００４】
少なくとも２つの統合されたコアを備えた、この種のマイクロコントローラは、デュアルコアアーキテクチャとしても知られている。２つのコアが同一のプログラムセグメントを冗長的かつクロック同期で実行し（ロックステップモード）、２つのコアの結果が比較され、一致の比較に際してエラーが発見される。このようなデュアルコアシステムの構成は、比較モードとしても称される。
【０００５】
デュアルコアアーキテクチャは、他の適用では性能向上のために、つまりパフォーマンス向上のためにも使用される。２つのコアが異なるプログラム、異なるプログラムセグメント、異なるコマンドを実行することによって性能向上が実現されるので、このようなデュアルコアシステムの設定は、パフォーマンスモードとしても称される。この種のシステムは、対称型マルチプロセッサシステム（ＳＭＰ）とも称される。この種のシステムの発展型は、特別なアドレスへのアクセスおよび専用化されたハードウェア装置を用いて、ソフトウェアにより２つのモードの間を切替えることにある。比較モードでは、コアの出力信号が互いに比較される。パフォーマンスモードでは、２つのコアが対称型マルチプロセッサシステム（ＳＭＰ）として作業し、異なるプログラム、異なるプログラムセグメントまたは異なるコマンドを実行する。マイクロコントローラ（μＣ）用のソフトウェアの開発に際しては、開発中にソフトウェア（ＳＷ）内のエラーを認識するために、所定のプログラムステップによる作用を正確に追跡し、かつテストモードを使用することが必要となり、そのためにデバッグコンセプトが使用される。従来技術として、これまで導入されてきたように、デュアルコアアーキテクチャに適用され、純粋なロックステップまたは純粋なＳＭＰ駆動に際して遂行されるソフトウェア開発用デバッグコンセプトが知られている。
【発明の開示】
【０００６】
従来技術として、切替え可能なシステムに適用されるデバッグコンセプトは知られていない。しかし、特にテストまたはエラー認識に際しては、切替えが考慮されなければならないので、切替え可能なシステムに適用されるデバッグコンセプトを開発することが必要である。
【０００７】
（発明の利点）
請求項１に係る発明の利点は、複数の実行ユニットもしくはコンポーネントを有し、複数の実行ユニットもしくはコンポーネントが計算機システム内で少なくとも２つの異なる駆動モード（Betriebsmodi）に設定可能（konfigurierbar）であり、第１のモードにおいては、少なくとも２つの実行ユニットもしくはコンポーネントが、様々な入力信号を様々な出力信号に処理することによりパフォーマンスモードで作業し、少なくとも１つの第２のモードにおいては、同一の入力信号を同一の出力信号に処理することにより比較モードで作業し、かつ全ての実行ユニットもしくはコンポーネント内の状態および処理（Ablaeufen）を分析および／または調節（Beeinflussung）するために分析ユニット、特にデバッグ支援ユニットが使用される、計算機システム内に、パフォーマンスモードにおいて互いに独立して作業可能な実行ユニットもしくはコンポーネントよりも多い分析ユニットが備えられており、従ってシステムの様々なモードがより良く監視可能（beobachtbar）かつ調節可能（beeinflussbar）であることにある。
【０００８】
他の利点は、少なくとも１つの第１のモードにおいて、比較モードで他の実行ユニットもしくはコンポーネントと協働しない全ての実行ユニットもしくはコンポーネントに対して、実行ユニットもしくはコンポーネント内の状態および処理を監視および／または調節可能な分析ユニットが各々に対応づけられることにある。
【０００９】
他の利点は、計算機システムの少なくとも１つの第２のモードにおいて、少なくとも２つの実行ユニットもしくはコンポーネントが一時的な部分システムとして比較モードで協働し、部分システムに対して、部分システム内の状態および処理を監視および／または調節可能な他の分析ユニットが対応づけられることにある。
【００１０】
他の利点は、比較モードで協働する、部分システムにおける全ての実行ユニットの状態および処理に関する同期した監視および／または調節が、分析ユニットによって行われることにある。
【００１１】
他の利点は、計算機システムの駆動モードおよび／または他の予め設定可能な条件に従って分析ユニットの能動化および／または非能動化を可能にする、付加的な手段が設けられていることにある。
【００１２】
さらに、少なくとも１つのモード信号、好ましくはコアモード信号によって、少なくとも１つの分析ユニットのアクティビティ（Aktivitaet）が切替えられることが効果的である。
【００１３】
さらに、少なくとも１つの分析ユニットの制御信号によって、少なくとも１つの他の分析ユニットのアクティビティが切替えられることが効果的である。
【００１４】
さらに、部分システムの比較モードにおいて、部分システムに対応づけられた分析ユニットが能動化（aktiv）され、部分システムに対応づけられた複数の実行ユニットもしくはコンポーネントの分析ユニットが非能動化（nicht aktiv）されることが効果的である。また、複数の実行ユニットもしくはコンポーネントおよび／または比較手段の付加的な状態または各入力信号が、少なくとも１つの分析ユニットによって調節可能であり、調節されるユニットの状態または出力信号が、当該分析ユニットまたは他の分析ユニットによって監視および／または調節可能であることが効果的である。
【００１５】
他の利点および好ましい実施形態は、請求項の記載および明細書から明らかにされる。
【発明を実施するための最良の形態】
【００１６】
（実施形態の説明）
以下において、実行ユニットとは、プロセッサ、コア、ＣＰＵ、ＦＰＵ（Floating Point Unit）、ＤＳＰ（Digital Signal
Processor）、コプロセッサまたはＡＬＵ（Arithmetic logical Unit）などを意味している。さらに、コンポーネントとは、定められた方法で互いに接続され、従って定められたモードで協働する少なくとも１つの実行ユニットからなるユニットを意味している。
【００１７】
デバッグ支援ユニットとは、実行ユニット、コンポーネント、または複数の実行ユニットもしくはコンポーネントからなる部分システムと比較器を適切な信号によって調節（beeinflussen）可能であり、他の適切な信号によって実行ユニット、コンポーネント、比較器または部分システムの状態および／または処理（Ablaeufe）に関する情報を間接的または直接的に回収（zurueckerhalten）するユニットであって、従ってこれらはデバッグ支援ユニットによって監視可能となる。
【００１８】
２つより多い実行ユニットを有するプロセッサシステム内でも使用するために、一般的な切替および比較コンポーネントが図５に示されている。ｎまでの考慮すべき実行ユニットからｎまでの入力信号Ｎ１４０、…、Ｎ１４ｎが切替および比較コンポーネントＮ１００へ導かれる。このコンポーネントは、これらの入力信号からｎまでの出力信号Ｎ１６０、…、Ｎ１６ｎを生成可能である。最も簡単な場合、「純粋なパフォーマンスモード」において、全ての入力信号Ｎ１４ｉは、対応する出力信号Ｎ１６ｉへ案内される。対照的に、「純粋な比較モード」において、全ての入力信号Ｎ１４０、…、Ｎ１４ｎは、出力信号Ｎ１６ｉのうちの１つへ案内される。
【００１９】
図５には、種々の想定されるモードを形成するための方法が示されている。そのために、図５には、論理コンポーネントとして切替ロジックＮ１１０が設けられている。この切替ロジックは、まず、出力信号の数を定める。さらに、切替ロジックＮ１１０は、入力信号と出力信号の関係を定める。この場合に入力信号は、１つの出力信号に関与させることができる。従って数学的な形式で表現すると、切替ロジックによって、集合｛Ｎ１４０、…、Ｎ１４ｎ｝の各要素に集合｛Ｎ１６０、…、Ｎ１６ｎ｝の要素を対応させる関数（Funktion）が定められる。
【００２０】
その後、処理ロジックＮ１２０は、各出力信号Ｎ１６ｉに入力信号が関与する方法を定める。例えば種々の変形例の可能性を記述するために、普遍性を損なうことなしに、出力信号Ｎ１６０が入力信号Ｎ１４１、…、Ｎ１４ｍによって生成されると仮定する。ｍ＝１の場合には、単純に信号の通過接続を意味し、ｍ＝２の場合には、入力信号Ｎ１４１、Ｎ１４２が比較される。この比較は、同期または非同期で実行可能であり、ビット単位もしくは有意のビットのみ、または許容範囲を伴って実行可能である。ｍ＞＝３の場合には、複数の可能性が存在する。
【００２１】
第１の可能性は、全ての信号を比較し、少なくとも２つの異なる値が存在する場合にエラーを検出することであり、そのエラーを選択的に通知可能である。
【００２２】
第２の可能性は、ｍからｋの選択（ｋ＞ｍ／２）を行うことである。これは、比較器を使用することによって実現可能である。選択的に、信号の１つが偏差を有すると認識された場合に、エラー信号を生成可能である。３つの信号全てが異なる場合には、異なるエラー信号も生成可能である。
【００２３】
第３の可能性は、これらの値をアルゴリズムへ供給することである。これは、例えば平均値、中央値の生成、エラーを許容するアルゴリズム（ＦＴＡ）の使用を意味している。この種のＦＴＡは、入力値の極値を棄却し、残りの値を一種の平均化処理することに基づいている。この平均化処理は、残りの値の全てを対象とし、またはハードウェア（ＨＷ）内で容易に生成される一部の値を対象としてもよい。この場合に値自体を実際に比較することは、必ずしも必要とされない。平均値を生成する場合には、例えば加算して除算すればよく、ＦＴＭ、ＦＴＡまたは中央値を生成する場合には、部分的な分類処理を必要とする。ここでも極値が非常に大きい場合には、選択的にエラー信号を出力してもよい。
【００２４】
前述したような複数の信号を１つの信号に処理する種々の可能性は、比較操作と略称される。
【００２５】
従って処理ロジックのタスクは、各出力信号について、−それに付随する入力信号についても−比較操作のモードを正確に定めることである。モードを定めるモード情報は、切替ロジックＮ１１０（前述した関数（Funktion））および処理ロジック（出力信号毎、従って関数値（Funktionswert）毎の比較操作を定めること）の情報の組合せからなる。この情報は、一般的に多値であって、１つの論理ビットにより表現できない。任意の実装においては、理論的に想定される全てのモードが重要な訳ではなく、好ましくは許容されるモードの数が制限される。強調すべきは、実行ユニットが２つ、従って比較モードが１つのみ存在する場合には、モード情報が１つの論理ビットにより表現可能となる。
【００２６】
パフォーマンスモードから比較モードへの切替えは、一般的に、パフォーマンスモードでは種々の出力へマッピングされる実行ユニットが、比較モードでは同一の出力へマッピングされることを特徴としている。これは、実行ユニットの部分システムが存在し、その部分システムにおいて、パフォーマンスモードでは、部分システムにより考慮されるべき全ての入力信号Ｎ１４ｉが、対応する出力信号Ｎ１６ｉへ直接的に導かれ、比較モードでは、１つの出力へマッピングされることによって実現されることが好ましい。この種の切替えは、代替的にペアリングを変更することによって実現されてもよい。本発明の実施形態においては、許容されるモードがパフォーマンスモードおよび比較モードに限定されるが、一般的なケースにおいては、許容されるモードがこれらのモードに限定されない。しかし、一般的なケースにおいても、パフォーマンスモードから比較モードへ（または比較モードからパフォーマンスモードへ）の切替えが生じる。
【００２７】
エラー切替ロジックＮ１３０は、エラー信号を集約し、例えばスイッチにより中断することで、選択的に出力信号Ｎ１６ｉを受動的に切替可能である。
【００２８】
図６には、モード信号が一般的な形式で示されている。切替および比較ユニットＮ２００の信号およびコンポーネントＮ１１０、Ｎ１２０、Ｎ１３０、Ｎ１４０、Ｎ１４１、Ｎ１４２、Ｎ１４３、Ｎ１４ｎ、Ｎ１６０、Ｎ１６１、Ｎ１６２、Ｎ１６３、Ｎ１６ｎは、図５に示した切替および比較コンポーネントＮ１００の場合と同様である。さらに、図６には、モード信号Ｎ１５０およびエラー信号Ｎ１７０が示されている。選択的なエラー信号は、エラー信号を集約するエラー切替ロジックＮ１３０によって生成され、各エラー信号を直接的に次へ導くもの、または各エラー信号に含まれるエラー情報を集約するものである。モード信号Ｎ１５０は、選択的なものであり、このコンポーネントの外部において効果的に使用されうる。モードを定めるモード情報は、切替ロジックＮ１１０（前述した関数）および処理ロジック（出力信号毎、従って関数値毎の比較操作の決定）の情報の組合せである。この情報は、一般的に多値であって、１つの論理ビットのみにより表現できない。与えられた実装においては、理論的に想定される全てのモードが重要な訳ではなく、好ましくは許容されるモードの数が制限される。この場合にモード信号は、重要なモード情報を外部へもたらす。ハードウェア（ＨＷ）実装は、好ましくは、外部で見えるモード信号が設定可能であるように形成されている。好ましくは、処理ロジックおよび切替ロジックも同様に設定可能であるように形成されている。好ましくは、これらのコンフィグレーションは、互いに調和されている。代替的に、モード信号の変化を、それ自体のみまたは補足的に、外部へ提供可能である。これは、特にデュアルコンフィグレーションにおいて利点を有している。
【００２９】
以下では、主として２つの実行ユニットを有するシステムについて説明する。図１には、デュアルプロセッサシステムが示されている。デュアルプロセッサシステムがパフォーマンスモードにある場合には、異なる実行ユニットＧ１４０ａ、Ｇ１４０ｂ上で異なる指令、プログラムセグメントまたはプログラムが実行される。プロセッサ間の結合は、ゆるい状態にある。この場合に実行ユニットＧ１４０ａ、Ｇ１４０ｂは、好ましくは、デバッグインターフェースＧ１２０ａ、Ｇ１２０ｂを介してデバッグ支援ユニットＧ１００ａ、Ｇ１００ｂにより「デバッグ」される。ここで、実行ユニットＧ１４０ａは、デバッグインターフェースＧ１２０ａを介してデバッグ支援ユニットＧ１００ａにより「デバッグ」される。実行ユニットＧ１４０ｂは、デバッグインターフェースＧ１２０ｂを介してデバッグ支援ユニットＧ１００ｂにより「デバッグ」される。これは、これらのユニットおよび不図示の他のコンポーネントによって、実行ユニットの内部状態、特に内部レジスタが、いわゆるホスト計算機上で処理される外部プログラム（いわゆる「デバッガ」）へ伝えられることを意味している。これは、「デバッグ」の特性に基づいて、「デバッグ」すべき実行ユニットＧ１４０ａ、Ｇ１４０ｂ上でプログラムを処理する間に行われる。デバッガは、「デバッガ」の一般的な機能に基づいて、状態の監視の他に、「デバッグ」すべき実行ユニットＧ１４０ａ、Ｇ１４０ｂの内部状態をインターフェースＧ１２０ａ、Ｇ１２０ｂを介してデバッグ支援ユニットＧ１００ａ、Ｇ１００ｂにより変更し、これらを停止させ、または停止後に再始動させることもできる。
【００３０】
比較モードにおいて、実行ユニットＧ１４０ａ、Ｇ１４０ｂは、好ましい変形例において、同一の指令をクロック同期で、または所定のクロックオフセットを伴って処理する。実行ユニットＧ１４０ａ、Ｇ１４０ｂの出力信号は、比較モードに応じて比較される。これらの信号が異なる場合にはエラーが認識される。このモードにおいて、内部状態の変更または実行ユニットＧ１４０ａ、Ｇ１４０ｂの停止が、デバッグ支援ユニットＧ１００ａ、Ｇ１００ｂのいずれかにより行われた場合に、不図示の比較器によってエラーが認識される。この場合に、好ましくは、実行ユニットＧ１４０ａ、Ｇ１４０ｂの「デバッギング」は、デバッグインターフェースＧ１３０ａ、Ｇ１３０ｂを介してデバッグ支援ユニットＧ１１０により行われる。この場合に、実行ユニットＧ１４０ａがデバッグインターフェースＧ１３０ａを介して、実行ユニットＧ１４０ｂがデバッグインターフェースＧ１３０ｂを介して、デバッグ支援ユニットＧ１１０により各々に「デバッグ」される。このためにデバッグ支援ユニットＧ１１０は、２つの実行ユニットＧ１４０ａ、Ｇ１４０ｂの状態を同時に表示可能である。このデバッグ支援ユニットは、同時に、内部状態を変更し、実行ユニットを停止させ、または再始動させることもできる。この場合において、実行ユニットＧ１４０ａ、Ｇ１４０ｂは、デバッギング目的の介入に際しても、同期して行動するので、比較器により認識される差異が生じない。
【００３１】
よって、この提案は、駆動時にパフォーマンスモードおよび比較モードを切替え可能なデュアルプロセッサシステムにおいて、各々に「デバッグ」すべき３つのユニットが問題となるというコンセプトに基づくものである。この場合に、パフォーマンスモードにおいては、実行ユニットＧ１４０ａ、Ｇ１４０ｂが別々の実行ユニットとして取扱われ、比較モードにおいては、これら２つの実行ユニットの同期した駆動が１つの論理的な実行ユニットＧ１５０として取扱われる。このコンセプトに基づいて、論理的な実行ユニットＧ１５０のために別のデバッグ支援ユニットＧ１１０が使用される。この場合にデバッグ支援ユニットＧ１１０は、同時に、２つの物理的な実行ユニットＧ１４０ａ、Ｇ１４０ｂをデバッグインターフェースＧ１３０ａ、Ｇ１３０ｂを介して調節し、これらの状態を外部プログラム（「デバッガ」）に提供可能である。
【００３２】
図１に示した一般的な例において、実行ユニットＧ１４０ａ、Ｇ１４０ｂの各々は、複数の実行ユニットを有するコンポーネントとして形成可能であり、それら複数の実行ユニットが互いに固定して接続されており、所定のモード（例えば比較モード）において互いに協働する。このコンポーネントは、入出力信号に関して、原則的に実行ユニットと区別されず、場合によっては、エラー信号または複数のステータス信号のような付加的な信号のみを出力し、場合によっては、テスト用の付加的な入力信号を有する。この種のコンポーネントは、以下の変形例においても、実行ユニットに代替可能である。
【００３３】
図２、図３、図４に示したような拡張において、デバッグ支援ユニットＧ１１０に加えて、デバッグ支援マネージメントユニットＧ１７０が提案される。この場合に、図２には一般的な事例が示され、図３にはパフォーマンスモードにおける事例が詳細に示され、図４には比較モードにおける事例が詳細に示されている。
【００３４】
デバッグ支援マネージメントユニットＧ１７０は、ハードウェアを介して、システムが作業しているモードに応じて、当該モードにおいて有意となるデバッグ支援ユニットのみが使用されていることを保証する。このために、デバッグ支援マネージメントユニットＧ１７０は、切替および比較ユニットＧ２００（図６のＮ２００に相当）から供給されるコアモード信号Ｇ１８０（図６のＮ１５０に相当）を使用する。
【００３５】
好ましい実装において、デバッグ支援マネージメントユニットＧ１７０は、パフォーマンスモードにおいて実行ユニットＧ１４０ａ、Ｇ１４０ｂの「デバッギング」のみを許可する。このために、デバッグ支援マネージメントユニットは、デバッグ支援ユニットＧ１００ａ、Ｇ１００ｂ、ならびにデバッグインターフェースＧ１２０ａ、Ｇ１９０ａおよびＧ１２０ｂ、Ｇ１９０ｂを利用する。
【００３６】
一方、デバッグ支援マネージメントユニットＧ１７０は、比較モードにおいて、デバッグ支援ユニットＧ１１０による論理的な実行ユニットＧ１５０の「デバッギング」のみを許可する。この場合に論理的な実行ユニットＧ１５０は、実行ユニットＧ１４０ａ、Ｇ１４０ｂからなる。この場合にデバッグ支援ユニットＧ１１０は、実行ユニットＧ１４０ａをデバッグするためにデバッグインターフェースＧ１６０、Ｇ１９０ａのみを使用し、実行ユニットＧ１４０ｂをデバッグするためにデバッグインターフェースＧ１６０、Ｇ１９０ｂのみを使用する。
【００３７】
マルチプロセッサシステムにおいて、モード（パフォーマンスモードまたは比較モード）の特性に応じて実行ユニットのデバッグを可能にする、デバッグ機構およびデバッグハードウェアが提案される。複数の実行ユニットが分離されて異なるタスクを処理するＳＭＰシステム用のデバッグ方法が知られており、同様に純粋な比較モードで機能するシステム用のデバッグ方法も知られている。
【００３８】
この場合に、前述した発明は、デバッグ機構およびデバッグハードウェアが、パフォーマンスモードと比較モードの間における実行ユニットの駆動切替えに適合可能である点において、従来技術とは異なるものである。
【図面の簡単な説明】
【００３９】
【図１】２つの実行ユニットＧ１４０ａ、Ｇ１４０ｂと、付属の分析ユニット、特にデバッグ支援ユニットＧ１００ａ、Ｇ１００ｂと、デバッグ支援ユニットＧ１１０を有するマルチプロセッサシステムを示すブロック図である。
【図２】２つの実行ユニットＧ１４０ａ、Ｇ１４０ｂと、付属の分析ユニット、特にデバッグ支援ユニットＧ１００ａ、Ｇ１００ｂと、デバッグ支援ユニットＧ１１０を有するマルチプロセッサシステムを示すブロック図であり、デバッグ支援マネージメントユニットＧ１７０、切替および比較ユニットＧ２００が示されている。
【図３】２つの実行ユニットＧ１４０ａ、Ｇ１４０ｂと、付属のデバッグ支援ユニットＧ１００ａ、Ｇ１００ｂと、デバッグ支援ユニットＧ１１０を有するマルチプロセッサシステムを示すブロック図であり、デバッグ支援マネージメントユニットＧ１７０、切替および比較ユニットＧ２００が示されている。システムは、パフォーマンスモードで作業している。
【図４】２つの実行ユニットＧ１４０ａ、Ｇ１４０ｂと、付属のデバッグ支援ユニットＧ１００ａ、Ｇ１００ｂと、デバッグ支援ユニットＧ１１０を有するマルチプロセッサシステムを示すブロック図であり、デバッグ支援マネージメントユニットＧ１７０、切替および比較ユニットＧ２００が示されている。システムは、比較モードで作業している。
【図５】２つより多い実行ユニットを使用するために、一般的な切替および比較コンポーネントを示すブロック図である。
【図６】モード信号を一般的な形式で示すブロック図である。
【図１】
2009506408.tif 000003
【図２】
2009506408.tif 000004
【図３】
2009506408.tif 000005
【図４】
2009506408.tif 000006
【図５】
2009506408.tif 000007
【図６】
2009506408.tif 000008
【国際調査報告】
2009506408.tif 000009
2009506408.tif 000010
2009506408.tif 000011
2009506408.tif 000012
2009506408.tif 000013
2009506408.tif 000014