(57)【特許請求の範囲】
【請求項１】
監視点アドレスを格納するために形成された監視点レジスタと、
前記監視点アドレスをプロセッサ・パイプラインの第１ステージに送られた命令に関連するプログラム・アドレスと比較するために形成された比較器と、
前記プログラム・アドレスが前記監視点アドレスと等しいとき、監視点マッチを生成するために形成された監視点生成器と、
監視点マッチの数を表わすカウント値を前記プロセッサ・パイプラインの第２ステージに生成するために形成されたカウンタと、
から構成されることを特徴とする装置。
【請求項２】
前記カウント値がトリガ閾値を越える場合、要求を引き起こすために形成されたトリガ回路と、
前記監視点マッチの１つに関連する前記命令の１つが前記パイプライン中の後のステージでキルされまたはストールされる場合、前記カウント値を調節するために形成された制御器と、
をさらに含むことを特徴とする請求項１記載の装置。
【請求項３】
前記パイプラインの第２ステージが、前記パイプラインの第１ステージより後にあることを特徴とする請求項２記載の装置。
【請求項４】
前記プログラム・アドレスが、命令アドレスまたはデータ・アドレスであることを特徴とする請求項２記載の装置。
【請求項５】
前記監視点マッチに関連する予め定められたイベント・タイプに基づいたエミュレーション・イベント処理要求または例外処理要求のいずれかを選択的に生成するために形成されたイベント生成回路をさらに含むことを特徴とする請求項２記載の装置。
【請求項６】
前記カウンタは各監視点マッチに対する初期カウント値をデクリメントさせることにより前記カウント値を生成するために形成され、前記制御器は、前記監視点マッチの１つと関連する命令の１つがパイプライン中の後のステージでキルされまたはストールされる場合、デクリメントする機能を補償することにより、前記カウント値を調節するために形成されることを特徴とする請求項２記載の装置。
【請求項７】
前記監視点レジスタは第１監視点アドレスをロードした第１監視点レジスタおよび第２監視点アドレスをロードした第２監視点レジスタを含み、前記比較器は前記第１および第２監視点アドレスを前記プロセッサ・パイプラインに送られた命令に関連するプログラム・アドレスと比較するためにさらに形成され、また、前記プログラム・アドレスが前記第１および第２監視点アドレスによって定義されたレンジにある場合、前記監視点生成器は監視点マッチを生成するためにさらに形成されることを特徴とする請求項２記載の装置。
【請求項８】
前記レンジは、前記第１および第２監視点アドレス間に広がるインクルーシブ・レンジ、または、前記第１および第２監視点アドレス間に広がるレンジの外側のエクスクルーシブ・レンジであることを特徴とする請求項７記載の装置。
【請求項９】
電力を保存するために前記監視点レジスタの１つを選択的に不能にするために形成された回路をさらに含むことを特徴とする請求項７記載の装置。
【請求項１０】
前記比較器は、前記第１監視点アドレスを前記プログラム・アドレスと比較するために形成された第１比較器、および、前記第２監視点アドレスを前記プログラム・アドレスと比較するために形成された第２比較器を含み、監視点エンジンは前記第１および第２比較器の少なくとも１つを選択的に不能にし、前記不能にされた比較器の出力を安定させるために形成された回路をさらに含むことを特徴とする請求項７記載の装置。
【請求項１１】
監視点アドレスを、プロセッサ・パイプラインの第１ステージに送られた命令に関連するプログラム・アドレスと比較する段階と、
プログラム・アドレスが前記監視点アドレスと等しい場合、監視点マッチを生成する段階と、
監視点マッチの数を表わすカウント値を前記プロセッサ・パイプラインの第２ステージに生成する段階と、
から構成されることを特徴とする方法。
【請求項１２】
前記カウント値がトリガ閾値を越える場合、要求を生成する段階と、
前記監視点マッチの１つに関連した命令の１つが前記パイプラインの後のステージでキルされまたはストールされる場合、前記カウント値を調節する段階と、
をさらに含むことを特徴とする請求項１１記載の方法。
【請求項１３】
前記カウント値を生成する段階は、前記カウント値を前記パイプラインの第１ステージより後にある前記パイプラインの第２ステージに生成する段階を含むことを特徴とする請求項１２記載の方法。
【請求項１４】
前記要求を生成する段階は、エミュレーション・イベント取扱い要求または例外処理要求を生成する段階を含むことを特徴とする請求項１２記載の方法。
【請求項１５】
前記監視点アドレスを前記プログラム・アドレスと比較する段階は、前記監視点アドレスを命令アドレスまたはデータ・アドレスと比較する段階を含むことを特徴とする請求項１２記載の方法。
【請求項１６】
前記監視点マッチに関連した予め定められたイベント・タイプに基づいて、エミュレーション・イベント取扱い要求または例外処理要求のいずれかを選択的に生成する段階をさらに含むことを特徴とする請求項１２記載の方法。
【請求項１７】
第１および第２監視点レジスタ中の第１および第２監視点アドレスを指定する段階と、
前記第１および第２監視点アドレスをプロセッサ・パイプラインに送られた命令に関連したプログラム・アドレスと比較する段階と、
前記プログラム・アドレスが第１および第２監視点アドレスによって定義されたレンジにある場合に、監視点マッチを生成する段階をさらに含むことを特徴とする請求項１２記載の方法。
【請求項１８】
前記プログラム・アドレスが、前記第１および第２監視点アドレス間に広がるインクルーシブ・レンジ、または、前記第１および第２監視点アドレス間に広がるレンジの外側のエクスクルーシブ・レンジである場合、前記監視点マッチを生成する段階をさらに含むことを特徴とする請求項１７記載の方法。
【請求項１９】
電力を保存するために前記第１および第２監視点レジスタの１つを選択的に不能にする段階をさらに含むことを特徴とする請求項１７記載の方法。
【請求項２０】
フラッシュ・メモリ装置と、
前記フラッシュ・メモリ装置に結合されたパイプライン方式のプロセッサと、
第１監視点アドレスを格納するために形成された第１監視点レジスタと、
第２監視点アドレスを格納するために形成された第２監視点レジスタと、
前記第１および第２監視点アドレスをプロセッサ・パイプラインに送られた命令に関連したプログラム・アドレスと比較するために形成された比較器と、
前記プログラム・アドレスが前記第１および第２監視点アドレスによって定義されたレンジ内にある場合、監視点マッチを生成するために形成された監視点生成器と、
前記監視点生成器によって生成された監視点マッチの数を表わすカウント値を生成するために形成されたカウンタと、
前記カウント値がトリガ閾値を越える場合、要求を引き起こすために形成されたトリガ回路と、
前記監視点マッチの１つに関連した前記命令の１つがパイプライン中の後の実行ステージでキルされまたはストールされる場合、前記カウント値を調節するために形成された制御器と、
から構成されることを特徴とするシステム。
【請求項２１】
前記要求は、エミュレーション・イベント取扱い要求または例外処理要求であることを特徴とする請求項２０記載のシステム。
【請求項２２】
監視点アドレスがロードされた監視点レジスタと、
前記監視点アドレスをプロセッサ・パイプラインの第１ステージの命令に関連したプログラム・アドレスと比較するために形成された比較器と、
前記プログラム・アドレスが前記監視点アドレスと等しい場合、監視点マッチを生成するために形成された監視点生成器と、
前記監視点生成器によって生成された監視点マッチの数を表わすカウント値を前記プロセッサ・パイプラインの第２ステージに生成するために形成されたカウンタと、
から構成されることを特徴とする装置。
【請求項２３】
前記カウント値がトリガ閾値を越える場合、要求を引き起こすために形成されたトリガ回路と、
前記監視点マッチの１つに関連した前記命令の１つがパイプライン中の後のステージでキルされまたはストールされる場合、前記カウント値を調節するために形成された制御器と、
を含むことを特徴とする請求項２２記載の装置。
【請求項２４】
前記要求は、エミュレーション・イベント取扱い要求または例外処理要求であることを特徴とする請求項２２記載の装置。
【請求項２５】
監視点アドレスを指定する段階と、
前記監視点アドレスをプロセッサ・パイプラインの第１ステージの命令に関連したプログラム・アドレスと比較する段階と、
前記プログラム・アドレス前記が監視点アドレスと等しい場合に、監視点マッチを生成する段階と、
監視点マッチの数を表わすカウント値を前記プロセッサ・パイプラインの第２ステージに生成する段階と、
から構成されることを特徴とする方法。
【請求項２６】
前記カウント値がトリガ閾値を越える場合に、要求を生成する段階と、
前記監視点マッチの１つに関連した前記命令の１つが前記パイプライン中の後のステージでキルされまたはストールされる場合、前記カウント値を調節する段階と、
をさらに含むことを特徴とする請求項２５記載の方法。
【請求項２７】
監視点アドレスを格納するために適合した監視点レジスタと、
前記監視点アドレスをプロセッサ・パイプラインの第１ステージで送られた命令に関連するプログラム・アドレスと比較する比較器と、
プログラム・アドレスが前記監視点アドレスと等しいとき、監視点マッチを生成する監視点生成器であって、前記監視点レジスタは第１監視点アドレスをロードした第１監視点レジスタおよび第２監視点アドレスをロードした第２監視点レジスタを含み、前記比較器は前記第１および第２監視点アドレスを前記プロセッサ・パイプラインに送られた命令に関連するプログラム・アドレスと比較するために形成され、また、前記プログラム・アドレスが前記第１および第２監視点アドレスによって定義されたレンジ内にある場合、前記監視点生成器は監視点マッチを生成するために形成される、監視点生成器と、
監視点マッチの数を表わすカウント値を前記プロセッサ・パイプラインの第２ステージに生成するカウンタと、
前記カウント値がトリガ閾値を越える場合、要求を引き起こすトリガ回路と、
前記監視点マッチの１つに関連する前記命令の１つが前記パイプライン中の後のステージでキルされまたはストールされる場合、前記カウント値を調節する制御器と、を含む装置であって、
前記レンジは前記第１および第２監視点アドレスの間に広がるインクルーシブ・レンジであるか、または、前記第１および第２監視点アドレスの間に広がるレンジの外側にあるエクスクルーシブ・レンジであることを特徴とする装置。
【請求項２８】
前記監視点マッチに関連する予め定められたイベント・タイプに基づいて、エミュレーション・イベント処理要求または例外処理要求のいずれかを選択的に生成するイベント生成回路をさらに含むことを特徴とする請求項２７記載の装置。
【請求項２９】
電力を保存するために前記監視点レジスタの１つを選択的に不能にする回路をさらに含むことを特徴とする請求項２７記載の装置。
【請求項３０】
前記比較器は、前記第１監視点アドレスを前記プログラム・アドレスと比較するために形成された第１比較器、および、前記第２監視点アドレスを前記プログラム・アドレスと比較する第２比較器を含み、監視点エンジンは前記第１および第２比較器の少なくとも１つを選択的に不能にし、前記不能にされた比較器の出力を安定させる回路をさらに含むことを特徴とする請求項２７記載の装置。
【請求項３１】
監視点アドレスを、プロセッサ・パイプラインの第１ステージに送られた命令に関連するプログラム・アドレスと比較する段階と、
プログラム・アドレスが前記監視点アドレスと等しい場合、監視点マッチを生成する段階と、
監視点マッチの数を表わすカウント値を前記プロセッサ・パイプラインの第２ステージに生成する段階と、
前記カウント値がトリガ閾値を越える場合、要求を生成する段階と、
前記監視点マッチの１つに関連した命令の１つが前記パイプラインの後のステージでキルされまたはストールされる場合、前記カウント値を調節する段階と、
第１および第２監視点レジスタ中の第１および第２監視点アドレスを指定する段階と、
前記第１および第２監視点アドレスをプロセッサ・パイプラインに送られた命令に関連したプログラム・アドレスと比較する段階と、
前記プログラム・アドレスが前記第１および第２監視点アドレスによって定義されたレンジ内にある場合に、監視点マッチを生成する段階と、
前記プログラム・アドレスが、前記第１および第２監視点アドレス間に広がるインクルーシブ・レンジ、または、前記第１および第２監視点アドレス間に広がるレンジの外側にあるエクスクルーシブ・レンジにある場合、前記監視点マッチを生成する段階と
から構成されることを特徴とする方法。
【請求項３２】
前記監視点マッチに関連した予め定められたイベント・タイプに基づいて、エミュレーション・イベント処理要求または例外処理要求のいずれかを選択的に生成する段階をさらに含むことを特徴とする請求項３１記載の方法。
【請求項３３】
電力を保存するために前記第１および第２監視点レジスタの１つを選択的に不能にする段階をさらに含むことを特徴とする請求項３１記載の方法。
【請求項３４】
フラッシュ・メモリ装置と、
前記フラッシュ・メモリ装置に結合されたパイプライン方式のプロセッサと、
第１監視点アドレスを格納するために適合した第１監視点レジスタと、
第２監視点アドレスを格納するために適合した第２監視点レジスタと、
前記第１および第２監視点アドレスをプロセッサ・パイプラインに送られた命令に関連したプログラム・アドレスと比較する比較器と、
前記プログラム・アドレスが前記第１および第２監視点アドレスによって定義されたレンジ内にある場合、監視点マッチを生成する監視点生成器であって、前記レンジが前記第１および第２監視点アドレス間に広がるインクルーシブ・レンジ、または、前記第１および第２監視点アドレス間に広がるレンジの外側にあるエクスクルーシブ・レンジである場合、前記監視点マッチを生成する、監視点生成器と、
前記監視点生成器によって生成された監視点マッチの数を表わすカウント値を生成するカウンタと、
前記カウント値がトリガ閾値を越える場合、要求を引き起こすトリガ回路であって、前記要求はエミュレーション・イベント処理要求または例外処理要求である、トリガ回路と、
前記監視点マッチの１つに関連した前記命令の１つがパイプライン中の後の実行ステージでキルされまたはストールされる場合、前記カウント値を調整する制御器と、
から構成されることを特徴とするシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、パイプライン方式のプロセッサのための監視点の生成に関する。
【０００２】
【従来の技術】
パイプライン方式のプロセッサのような複雑な集積回路装置のために開発されたコードは、典型的には広範囲なデバッギングを要求する。プロセッサのパイプラインを通る命令の伝播をモニタする監視点を生成することは有用である。この理由から、監視点エンジンは、プロセッサのパイプラインからステート情報を抽出し、かつそのステート情報をイベント取扱いのための制御ユニットに提供するために設けられる。このように、アプリケーション開発者は、適切なコード動作を確認し、プロセッサ用に開発されたコードをデバッグすることができる。
【０００３】
【実施例の詳細な説明】
図１は集積回路装置１０を図示するブロック図である。図１の中で示されるように、集積回路装置１０はプログラム可能プロセッサ１２、プロセッサ制御ユニット１４および監視点エンジン１６を含む。プロセッサ１２は、フラッシュ・メモリ装置のようなランダム・アクセス・メモリ（ＲＡＭ）装置中の命令を実行する。プロセッサ１２は、マルチ実行ステージを備えるパイプライン方式のプロセッサであってよい。監視点エンジン１６は、ステート情報をプロセッサ１２からリアルタイムで抽出し、例外と割込みのようなイベントを制御ユニット１４に通知するためにその情報を処理する。
【０００４】
監視点エンジン１６は、アドレスの区間内（インクルーシブ）または区間外（エクスクルーシブ）の範囲、つまり組合せのマッチと同様に、データまたは命令のアドレスに関して一致するように適合する。さらに、監視点エンジン１６は、パイプライン方式のプロセッサ１２の連続する実行ステージを通って監視点アドレス・マッチの伝播を追跡するように適合される。その目的のために、監視点エンジン１６は、これらの機能をサポートするために配置された適切なレジスタおよびロジックを含む。レジスタはフリップ・フロップまたはラッチとして実行する。さらに、監視点エンジン１６は、プロセッサ１２の高速動作のための監視点をリアルタイムで生成するために配置される。
【０００５】
監視点エンジン１６のモジュール・セクションは、電力保存のために、異なる機能を独立して動作可能または不能にされる。監視点エンジン１６は、電力保存が心配される携帯型あるいは他のポータブル型の電池式装置に組み込まれた集積回路装置に特に有用である。したがって、いくつかの実施例では、監視点エンジン１６は、リアルタイム・レスポンス、高速動作および低減した電力消費という利点を組み合わせることができる。
【０００６】
命令およびデータのための正確な監視点マッチを生成することによって、デバッギングを促進し、コード・パッチ(code patching)を可能にする。プロセッサ・パイプラインを通る命令の伝播は、エミュレーションおよび例外イベントを識別し、エミュレーション・モード動作または例外処理を適切に提供するために、リアルタイムでモニタされる。監視点マッチは、直接関連のある命令がコミットされる前に、いくつかのサイクルで識別される。重要なことには、例外の取り扱いは、命令がキルされることを可能にして、速度と正確さをもって生じることである、つまり、それらの命令がライトバック・ステージに達する時、終了する。この特徴はコード・パッチを促進させる。このように、高頻度、かつリアルタイムの監視点マッチを提供する能力は、コード開発者に著しい利点を提供することができる。
【０００７】
図２は、監視点エンジン１６の実行に適した回路を図示するブロック図である。図２中で示されるように、監視点エンジン１６は１つ以上の監視点レジスタ１８，２０を含んでいてもよい。監視点レジスタ１８が「ＷＰ０」と指定される一方、監視点レジスタ２０は「ＷＰ１」と指定される。監視点レジスタ１８，２０は、コード開発者によってデバッグ目的のために所要の監視点アドレスでプログラムされるメモリ・マップド・レジスタであってもよい。図２では、監視点レジスタ１８，２０はフリップ・フロップによって表わされる。ある実施例において、監視点エンジン１６は、複数の命令およびデータ・アドレスおよび複数のアドレス・レンジ上でマッチングを可能にする６つの監視点レジスタを含むことができる。
【０００８】
監視点ステータス・レジスタ（図示せず）は、監視点マッチを記録する。監視点命令アドレス制御レジスタおよび監視点データ・アドレス制御レジスタ（図示せず）は、特定の監視点マッチがエミュレーション・イベントまたは例外イベントを生成すべきかどうか明示する。コード・パッチ、あるいは古いコードを交換することは、古いコードのスタート番地を監視点レジスタのうちの１つに書き、例外を引き起こさせるために制御レジスタのうちの１つに対応するビットを設定することにより行われる。例外サービス・ルーチンにおいて、ステータス・レジスタが読み込まれる。一般に、命令がライトバックを行なうとき、それはキルされる。そのポイントで、例外ルーチンは別の場所にある命令にジャンプさせる。その場所の命令が実行される。その後、プログラムはライトバック中でキルされた命令の直後の命令に戻る。このように、新しいコードは、コード・パッチを提供して、キルされた命令の代わりに実行される。
【０００９】
監視点レジスタ１８，２０に、直接マッチ監視点またはレンジ境界監視点のいずれかをロードする。直接マッチ監視点は、監視点エンジン１６が監視点マッチを生成する命令またはデータのためのメモリ・アドレスである。レンジ境界監視点は、監視点エンジン１６が監視点マッチを提供するアドレスの境界の１つを定義する命令またはデータのためのメモリ・アドレスである。
【００１０】
直接マッチに対して、監視点アドレスは監視点レジスタ１８，２０に独立してロードされる。レンジ・マッチについては、監視点レジスタ１８および監視点レジスタ２０にロードされた監視点アドレスの双方は、マッチのためのアドレスのレンジを定義するが、共に使用される。直接およびレンジ境界監視点アドレスは、監視点レジスタ１８，２０へ所望のようにプログラムすることができる。
【００１１】
監視点エンジン１６は、さらにマルチプレクサ２２，２４，２６，２８、および比較器３０，３２，３４，３６を含む。マルチプレクサ２２，２６は、提供される現在の命令もしくはデータ・アドレス、または一般に多重のビット値である「０」のいずれかを選択する。アドレスは、例としての目的のためにプログラム・カウンタによって提供される命令アドレス（ＩＡ）として図２に示される。図１中のアドレスは、実行ステージ、例えばＥＸ１、に対して局所的である。マルチプレクサ２４，２８は、それぞれの監視点レジスタ１８，２０にロードされた監視点アドレス、または一般に多重のビット値である「１」もしくは他のゼロでない値のいずれかを選択する。マルチプレクサ２２，２４の出力は、比較器３０，３２に加えられる。同様に、マルチプレクサ２６，２８の出力は、比較器３４、３６に加えられる。いずれの場合においても、それぞれの比較器３０，３２，３４，３６は、１つのマルチプレクサ２２，２６の出力を、他のマルチプレクサ２４，２８の出力と比較する。
【００１２】
マルチプレクサ２２，２４，２６，２８は、監視点レジスタ１８，２０の一方または両方が電力保存のために不能になる場合に、比較器回路を安定させるために提供される。単一の直接マッチの監視点だけがモニタされる場合では、例えば、監視点レジスタ１８，２０の１つを不能にしてもよい。これは、特に電池式装置に対して、電力保存の見地から非常に有利である。過度の電力消費を回避して、特に監視点エンジン１６の一部または全てを、必要でないとき、選択的に不能にしてもよい。監視点のモニタリングが必要とされない場合、インクルーシブ・イネーブル・ビットは、監視点回路に関連する全てのフリップ・フロップおよびラッチをディセーブルするためにリセットされる。
【００１３】
ＷＰ０イネーブル／ディセーブル制御線は、マルチプレクサ２２，２４の両方に結合される。ＷＰ１イネーブル／ディセーブル制御線は、マルチプレクサ２６，２８の両方に結合される。監視点レジスタ１８がイネーブルにならない場合、マルチプレクサ２２，２４はＷＰ０ディセーブル信号を受け取り、比較器３０，３２に、それぞれ、マルチ・ビット「０」および「１」を伝播する。もしそうでない場合、比較器３０，３２は、比較のための命令アドレス（ＩＡ）およびそれぞれの監視点アドレスを受け取る。再び、命令アドレスが例の目的のために参照される。他の例では、アドレスはデータ・アドレスである。マルチプレクサ２６，２８は、監視点レジスタ２０をディセーブルする場合のＷＰ１ディセーブル信号に応答して、同様の方法で動作する。比較器３０，３２，３４、４６がトグルしない場合、その比較器に結合された下流にあるロジックの残りのほとんどは、さらに電力消費の著しい削減のために動作しない。
【００１４】
通常の動作では、比較器３０，３４は、監視点レジスタ１８，２０の監視点アドレスとマルチプレクサ２２、２６によって提供される現在のアドレスと間の直接のマッチをそれぞれモニタする。換言すれば、比較器３０，３４は、監視点アドレスおよび命令アドレスが互いに等しいかどうか決める。レジスタ１８からの監視点アドレスが命令アドレスと等しい場合、比較器３０は、監視点マッチ・ジェネレータの一部を形成する付加的な監視点論理回路にマルチ・ビット「１」を伝播する。比較器３４は同様の方法で動作する。
【００１５】
比較器３２は、レジスタ１８中の監視点アドレスが命令アドレス未満かどうかを決める。この場合、レジスタ１８中の監視点アドレスは下限アドレスとしてレンジ・マッチに使用してもよい。比較器３６は、レジスタ２０中の監視点アドレスが命令アドレス以上であるかどうか決める。この場合、レジスタ２０中の監視点アドレスは上限アドレスとしてレンジ・マッチに使用してもよい。各比較器３２，３６に監視点マッチがある場合、命令アドレスは、レジスタ１８，２０によって指定されたレンジ内にある。この場合、比較器３２，３６は、追加の論理回路へ「１」を伝播する。
【００１６】
図示された実施例では、比較器３０の出力はＡＮＤゲート３８に結合される一方で、比較器３２の出力は、ＡＮＤゲート４０およびＯＲゲート４２の反転入力に結合される。比較器３４の出力はＡＮＤゲート４４に結合される一方で、比較器３６の出力はＡＮＤゲート４０およびＯＲゲート４２の反転入力に結合される。ＡＮＤゲート３８，４４は、レンジ・イネーブル信号を受け取る反転入力を有する。事実、比較器３０，３４が直接の監視点アドレス・マッチを示し、かつ監視点エンジン１６がレンジ・モード内で動作していない、つまりＡＮＤゲート３８，４４が「ＮＯＴ  ＲＡＮＧＥ（範囲外）」を受け取る場合、ＡＮＤゲート３８，４４は「１」を伝播する。
【００１７】
ＡＮＤゲート４０入力の出力は、命令アドレスが監視点レジスタ１８，２０にロードした監視点レンジの境界によって定義されるインクルーシブ・レンジ内にあるかどうか決める別のＡＮＤゲート４６に提供される。ＡＮＤゲート４６は、入力として、ＡＮＤゲート４０の出力、監視点エンジン１６がレンジ・モードであることを示すレンジ・イネーブル信号、およびレンジ・モードがインクルーシブであること、つまり、監視点エンジンが監視点レジスタ１８，２０中にロードされた２つの監視点レンジの境界間にあるアドレスにマッチしていることを示すインクルーシブ信号を受け取る。
【００１８】
ＯＲゲート４２は、比較器３２，３６の出力を反転入力で受信して、エクスクルーシブ・レンジを定義するために動作する。ＯＲゲート４２の「１」である出力は、監視点レジスタ１８中の監視点アドレスが命令アドレス未満であるか、あるいは監視点レジスタ２０中の監視点アドレスが命令アドレス以上でないことを示す。ＯＲゲート４２の出力はＡＮＤゲート４８に供給し、それはさらに反転入力でディセーブル信号を受け取る。ディセーブル信号は、エクスクルーシブ・レンジ・モードがイネーブルであるかディセーブルであるかを示す。したがって、ディセーブル信号が低であり、比較器３２，３６の出力のうち１つが低であるとき、ＯＲゲート４２およびＡＮＤゲート４８は「１」を伝播する。
【００１９】
ＡＮＤゲート４８の出力は別のＡＮＤゲート５０に供給する。ＡＮＤゲート５０は、追加の入力として、レンジ・イネーブル信号およびエクスクルーシブ・レンジ・イネーブル信号を受信する。レンジ・イネーブル信号は、監視点エンジン１６がレンジ・モードであることを示す一方で、エクスクルーシブ信号は、レンジ・モードがエクスクルーシブであることを示す。換言すれば、監視点エンジン１６が、監視点レジスタ１８，２０にロードされたレンジの境界監視点によって定義されるレンジの外部にあるアドレスに一致するモードである。エクスクルーシブ信号が高の場合、レンジ信号は高であり、また、ＡＮＤゲート４８の出力は高となり、ＡＮＤゲート５０は「１」をＯＲゲート５２へ伝える。
【００２０】
ＯＲゲート５２は、入力として、インクルーシブ・レンジのＡＮＤゲート４６、エクスクルーシブ・レンジのＡＮＤゲート５０およびダイレクト・マッチのＡＮＤゲート３８の出力を受信する。ＯＲゲート５２への入力のうちのいずれかが高の場合、「１」をＡＮＤゲート５４に出力する。図２に示される論理回路は、主にプロセッサのパイプラインにおける第１の実行ステージ内で動作する。図示のように、そのステージは「ＥＸ１」ステージとして示される。命令がパイプラインの前でキルまたはストールされた場合、そのイベントは、図２の論理回路によって決定される監視点マッチを伝える前に処理される。
【００２１】
この目的のために、ＡＮＤゲート５４は、入力として、反転キル信号(inverted Kill signal)、反転ストール信号(inverted Stall signal)および有効信号(Valid signal)を含む。キル信号は、特にそのパイプライン・ステージ中の命令がキル（消去）されたことを示す。ストール信号は、特にそのパイプライン・ステージ中の命令がストール（停止）されたことを示す。有効信号は、現在の命令が有効であることを示す。ＡＮＤゲート５４が、キルされていなく、ストールもされていなく、かつ有効である指示の組み合わせとともにＯＲゲート５２からのマッチ指示を受け取る場合、「１」を監視点エンジン１６の次のステージへ伝える。そうでない場合、ＡＮＤゲート５４は「０」を生成する。
【００２２】
ＡＮＤゲート５４によって出力される「１」は、そのときどの監視点モードが監視点エンジン１６に適用可能であるかに依存して、インクルーシブ・レンジのマッチ、エクスクルーシブ・レンジのマッチまたは直接のマッチのいずれかがあったことを示す。ＡＮＤゲート５４によって検出されたインクルーシブおよびエクスクルーシブ・レンジのマッチは、監視点レジスタ１８，２０にロードされた監視点アドレスに関連して作成される。ＡＮＤゲート５４によって検出された直接マッチは、監視点レジスタ１８中にロードされた監視点アドレスに関連して作成される。
【００２３】
ＡＮＤゲート５４に類似するＡＮＤゲート５６は、監視点レジスタ２０にロードされた監視点アドレス上の直接のマッチを検出し表示するために提供される。ＡＮＤゲート５６は、入力として、ＡＮＤゲート４４の出力、反転キル信号、反転ストール信号および有効信号を受け取る。ＡＮＤゲート４４の出力が高で、ＡＮＤゲート５４がキル信号もストール信号も受け取らず、かつ有効信号を受け取る場合、「１」を監視点エンジン１６の次のステージへ伝える。このように、ＡＮＤゲート５６は、監視点レジスタ２０にロードされた監視点アドレス上の直接アドレス・マッチを示す。
【００２４】
図３は、監視点を生成するための追加の回路を図示する概要図である。図３中の点線の境界によって示されるように、図３の回路は、図２中で図示されたステージに続く監視点エンジン１６の次のステージを示し、プロセッサ・パイプラインの第２（ＥＸ２）、第３（ＥＸ３）およびライトバック（ＷＢ）ステージにまたがる。図３の例では、レジスタ５８は、例えばフリップ・フロップであるが、図２のＡＮＤゲート５４の出力を保持する。図３中で示される回路に本質的に類似する回路が、図２のＡＮＤゲート５６の出力を処理するために提供されてもよい。
【００２５】
図３の回路の重要な側面の１つは、ダイナミック・カウンタ・ロジックであり、それはプロセッサのパイプライン実行ステージ内における例外を正確に処理することができる。例えば、監視点マッチがＥＸ２に伝達されるが、しかしＥＸ３中のパイプラインの前方にある命令がキルされている場合、監視点エンジン１６は、監視点アドレス上で一致したキルされた命令を補償するためにカウンタを再調整する。この目的のために、レジスタ５８の出力は、カウンタ回路および監視点論理の双方へ供給する。特に、レジスタ５８は、カウンタ論理回路６０へ供給し、それは、参照番号６２で示されるように、それはカウンタ制御器として動作し、かつ追加の入力としてカウント調整信号を受信する。
【００２６】
カウンタ論理回路６０はマルチプレクサ６４を制御し、加算器６６に供給される−１、またはカウンタ調整量のいずれかを選択する。加算器６６は、一連のマルチプレクサ６８、７０およびカウント・レジスタ７２によって生成されたカウンタ値をインクリメントまたはデクリメントさせる役割を果たす。１だけデクリメントさせること、つまり、−１を加えることは、カウントされる特定のイベントが検出されるときの通常の動作である。カウンタは、エミュレーションまたは例外イベント・ハンドラをトリガする前に特定の監視点の連続発生を計数可能にするために提供される。特に、ＥＸ１ステージに検出された監視点マッチの発生は、後のステージの中で、つまりＥＸ２ステージの中で計数される。
【００２７】
カウント・レジスタ７２の出力は、参照番号７４によって示されるように、加算器６６およびマルチプレクサ６８の入力の１つにフィード・バックされる。マルチプレクサ６８は、他の入力として加算器６６の出力を受信する。マルチプレクサ７０は、所望のカウント値をローディングするために提供される。マルチプレクサ７０は、カウント・イネーブル信号に応答し、マルチプレクサ６８によって生成されたカウント値またはアプリケーション開発者によってメモリにロードされた最初のカウント値のいずれかを選択する。換言すれば、マルチプレクサ７０は、イベント・トリガを生成する前に、イベントが検出されるべき時間数を表わす最初のカウント値のエントリーを許容する。動作において、その最初のカウント値は加算器６６によってデクリメントさせられる。
【００２８】
カウント更新信号は、マルチプレクサ６８が加算器６６の出力またはレジスタ７２の出力を選択するべきかどうか示す。したがって、カウント更新信号は、カウント値が更新されるか保持されるべきかどうか示す。加算器６６の出力がマルチプレクサ６８によって選択される場合、既存のカウント値は加算器に与えられるマルチプレクサ６４の出力に依存して、デクリメントされるかインクリメントされる。レジスタ７２の出力がマルチプレクサ６８によって選択される場合、インクリメントされまたはデクリメントされるのではなく、既存のカウント値が保持される。
【００２９】
カウンタ回路は、特定のイベント、例えば、直接マッチあるいは範囲マッチの所望の発生回数を追跡する。命令が監視点アドレス・マッチを生成し、カウンタをデクリメントさせる結果に帰着するが、ＥＸ３ステージの中でキルされる場合、そのカウンタ値は、一致した命令が数えられたが続いてキルされたという事実を補うために減らされたのではなくむしろ、１だけインクリメントされる。命令が監視点アドレス・マッチを生成し、カウンタをデクリメントする結果に帰着するが、ライトバック・ステージの中でキルされる場合、そのカウンタ値は、減らされたのではなくむしろ、１だけインクリメントされる。監視点アドレス・マッチを生成する命令がＥＸ３およびライトバック・ステージでキルされる場合、このカウンタ値は減らされたのではなくむしろ、２だけインクリメントされる。そのカウント値が調節される量を決定するためのロジックは、レジスタ７６、ＡＮＤゲート７８、レジスタ８０、論理回路８２およびレジスタ８４によって提供される。
【００３０】
レジスタ７６は、ＡＮＤゲート７５から、有効なマッチがＥＸ２ステージで検出されたかどうか示す入力を受け取る。有効なマッチは、監視点アドレス・マッチを生成した適切な命令が現在のパイプライン・ステージ中で有効であり、キルされず、ストールされなかったことを意味する。レジスタ７６の出力は、ＡＮＤゲート７８および論理回路８２に送られる。ＡＮＤゲート７８はまた、入力として、マッチした命令がＥＸ３ステージにおいてキルされず、ストールされず、および有効であるかどうかの表示を受け取る。非キル、非ストール、および有効信号は、論理的に各パイプライン・ステージに対し異なった信号である。マッチがあり、マッチした命令がＥＸ３ステージにおいてキルされず、ストールされず、かつ有効である場合、ＡＮＤゲート７８の出力はレジスタ８０に供給され、それは、ライトバック（ＷＢ）ステージに値を出力する。
【００３１】
レジスタ８０の出力はレジスタ７６の出力と共に論理回路８２に供給される。次に、論理回路８２はカウンタ調整量を生成し、レジスタ８４の入力を駆動する。レジスタ７６の出力は、ＥＸ３ステージにおいて、命令がキルされ、ストールされ、または有効でなくなったかどうか示す。レジスタ８０の出力は、ライトバック・ステージにおいて、命令がキルされ、ストールされ、または有効でなくなったかどうか示す。これらの入力に基づいて、論理回路８２は、上記に示されたカウンタ調整量、つまり１または２を生成し、デクリメント動作のための補償を行なう。レジスタ８４はマルチプレクサ６４にカウンタ調整量を提供する。カウンタ調整が必要なとき、論理回路８２はさらに、マルチプレクサ６４に適用されるカウント調整信号を制御信号として生成し、マルチプレクサ６４へ−１、０の入力ではなくレジスタ８４によって生成されたカウンタ調整量を選択する。カウント調整信号は、単に命令がＥＸ３またはライトバック中でキルされたかどうか示す。
【００３２】
論理回路８２は、パイプラインの後の実行ステージにおいてマッチした命令のキルに応答してカウンタ調整量を生成する。このように、特定のマッチの反復回数を追跡するカウンタ値は、計数されるが後にキルされるマッチのために補償され得る。論理回路８２の出力は、２つの条件およびこれらの条件の組合せを本質的に追跡する。
【００３３】
監視点アドレス・マッチを生成した命令がＥＸ３ステージ中でキルされたとき、第１の条件が存在する。監視点アドレス・マッチを生成した命令がライトバック・ステージ中でキルされたとき、第２の条件が存在する。ある場合には、両方の条件が存在することもある。論理回路８２は、レジスタ７６およびレジスタ８０の出力に基づいた条件を識別する。レジスタ７６の出力は、ＥＸ３ステージの有効なマッチを示す一方で、レジスタ８０の出力は、命令がライトバック・ステージの中でキルされたかストールされたかどうか示す。
【００３４】
第２ではなく第１の条件の存在に対して、論理回路８２は、カウンタ調整量として「１」の値を生成する。このように、加算器６６は、既存のカウンタ値に「１」を加え、パイプライン中の１つ前のステージでキルされた命令に対し補償する。両方のステージ（ＥＸ３とＷＢ）でキルされた命令が存在するがそれらのステージの監視点アドレス・マッチがない場合、０がカウンタに加えられる。
【００３５】
第１ではなく第２の条件の存在に対して、論理回路８２は、カウンタ調整量として「１」の値を生成する。このように、加算器６６は、既存のカウンタ値に「１」を加え、ＷＢステージでキルされた命令を補償して、カウンタ値を減らす代わりにカウンタ値をインクリメントさせる。
【００３６】
第１と第２の両方の条件が存在する場合、論理回路８２は、カウンタ調整量として「２」の値を生成する。このように、加算器６６は、既存のカウンタ値に「２」を加え、ＥＸ３ステージおよび続くライトバック（ＷＢ）ステージで監視点アドレス・マッチを生成したキルされた命令を補償して、カウンタ値を減らす代わりに「２」だけカウンタ値をインクリメントさせる。
【００３７】
ＡＮＤゲート８６は、レジスタ５８の出力、加算器６６の最上位ビットおよび反転入力でレジスタ７２の最上位ビット出力を受け取る。ＡＮＤゲート８６は、カウンタがＥＭＵまたはＥＸＣイベントの生成の条件としてロールオーバしたかどうかを追跡し、その故に、単にレジスタ７２および加算器６６の最上位ビットの検査を要求のみである。レジスタ５８の出力およびＡＮＤゲート８６の出力は、マルチプレクサ８８によって受け取られる。レジスタ５８の出力が監視点マッチを示すとき、レジスタ７２中の現在のカウンタ値は「１」に減らされ、また、加算器６６の出力は「１」となり（現在のサイクルでカウント調整を示さずに）、ＡＮＤゲート８６はマルチプレクサ８８に「１」を出力する。
【００３８】
カウント・イネーブル信号は、開発者が監視点のための多数の発生を指定したか、または単一の発生がイベントのトリガに十分かどうかを示すことがある。このように、カウント・イネーブル信号は、マルチプレクサ８８がレジスタ５８の出力またはＡＮＤゲート８６の出力のいずれを選択すべきかを示し、それ故、第１番目の発生または第ｎ番目の発生でそれぞれトリガすべきかどうか示す。マルチプレクサ８８は、監視点のための発生回数を指定するトリガ回路の一部を形成してもよい。
【００３９】
マルチプレクサ８８の出力は、エミュレーション（ＥＭＵ）イベント生成回路９０および例外（ＥＸＣ）イベント生成回路９２を駆動することができる。ＥＭＵ生成回路９０は、パイプラインのＥＸ３ステージ中でエミュレーション要求（ＥＭＵ  ＲＥＱ）を生成するレジスタ９４を駆動する。ＥＸＣ生成回路９２は、パイプラインのＥＸ３ステージ中で例外要求（ＥＸＣ  ＲＥＱ）を生成するレジスタ９６を駆動する。ＥＭＵおよびＥＸＣ生成回路９０，９２は、図４を参照して以下より詳しくに説明される。
【００４０】
エミュレーション・イベントによって、プロセッサ１２はエミュレーション・モードに入力する。エミュレーション・モードでは、命令は、集積回路装置１０中で提供されるＪＴＡＧインターフェースから読むことができる。ＪＴＡＧインターフェースは、ＩＥＥＥ標準規格１１４９．１（ＩＥＥＥ規格１１４９．１−１９９０、１９９０に公表され、「Test Access Port and Boundary-Scan Architecture」と表題される）によって定義される。エミュレーション・イベントが発生すると、エミュレーション・イベントのタイプ、つまり監視点マッチがステータス・レジスタに記録される。選択的に、監視点マッチは、プロセッサ１２にエミュレーション・イベントではなく例外を出させることができる。例外イベントについては、プロセッサ１２は例外ハンドラにトラップをかける。コンフィギュレーション・ビットは、監視点命令アドレス制御レジスタおよび監視点データ・アドレス制御レジスタ中にセットされ、特定のイベントがエミュレーション・イベントまたは例外イベントを生成するべきかどうかを明示する。
【００４１】
図４は、監視点エンジンを実行するのにふさわしい付加的な回路を図示する他の回路図である。特に、図４はＥＭＵイベント生成回路９０およびＥＸＣイベント生成回路９２をより詳しく図示する。図３のＡＮＤゲート８６およびマルチプレクサ８８も図４中に図示される。図４に示されるように、ＥＭＵイベント生成回路９０は、入力として、ＥＭＵイネーブル信号および監視点イベントの識別を示すマルチプレクサ８８の出力を受け取るＡＮＤゲート９１を含む。ＥＭＵイネーブル信号は、所望のイベントのタイプがエミュレーションであることを示す。ＡＮＤゲート９１の出力は、ＯＲゲート９３，９５を駆動する。
【００４２】
集積回路装置１０は、図２中で示される回路のように、監視点比較器の複数の対を含んでいてもよい。ＯＲゲート９３は、ＡＮＤゲート９１の出力に加えて、監視点エンジンのすべての出力を受け取る。多様な監視点エンジンの比較器対によって生成されるように、ＯＲゲート９５は、ＡＮＤゲート９１の出力に加えて、命令に対するすべての監視点アドレス・マッチの指示を受け取る。多様な監視点エンジンの比較器対によって生成されるように、追加のＯＲゲート９７はデータに対するすべての監視点アドレス・マッチの指示を受け取る。このように、ＯＲゲート９３，９５，９７は、監視点アドレス・マッチの指示のために、集積回路装置１０中の全監視点エンジンの出力をモニタする。一般に、データのマッチのみがＥＭＵイベントの生成を導く。
【００４３】
ＡＮＤゲート９８は、一方の入力にゲート９３の出力を、反転入力に参照番号１０２によって示される命令およびデータのマッチ・イネーブル信号を受け取る。命令およびデータ・マッチ・イネーブル信号が高の場合、ＡＮＤゲート９８は事実上不能になり、低の出力を生成する。しかしながら、ＯＲゲート９５およびＯＲゲート９７が両方とも高で、それ故、同じサイクルで、命令マッチおよびデータ・マッチの両方を示す場合、ＡＮＤゲート１００は高の出力を生成する。したがって、命令およびデータ・ッチ・イネーブル信号は、命令マッチおよびデータ・ッチの両方があるとき、装置１０をＥＭＵイベントが生成されるだけのモードに置く。命令およびデータ・マッチ・イネーブル信号が低の場合、そのときＯＲゲート９３の出力によって示されるように、いずれかの監視点アドレス・マッチはＥＭＵイベントの生成に対して十分となる。事実、ＥＭＵ生成回路９０は、ａ）集積回路装置がエミュレーション・モードあるのかどうか、ｂ）いずれかのデータまたは命令のマッチがあるのかどうかを決定する。
【００４４】
再び、命令およびデータ・マッチ・イネーブル信号が高の場合、ＯＲゲート９５，９７の出力が、両方とも高というイベントでＡＮＤゲート１００を高で駆動している間、ＯＲゲート９３の出力は無視される。命令およびデータ・マッチ・イネーブル信号が低の場合、ＯＲゲート９３の出力だけが考慮される。いずれの場合においても、適切な出力、つまりＡＮＤゲート９８または１００からの出力が高の場合、ゲート１０４はエミュレーション要求を生成するために高となる。
【００４５】
例外生成回路９２に対して、ＥＭＵイネーブル信号およびマルチプレクサ８８の出力はＡＮＤゲート１０６に入力を提供する。ＥＭＵイネーブル信号は、ＡＮＤゲート１０６の反転入力で受信される。マルチプレクサ８８の出力は、監視点比較器対の１つに対して監視点マッチ・ステータスを示し、このようにＥＸＣイベント生成回路９２への多くの入力の１つである。ＡＮＤゲート１０６は、ＯＲゲート１０８の入力の１つを駆動する。ＯＲゲート１０８への他の入力は、集積回路装置１０中で提供される他の監視点比較器対によって生成されたさまざまな命令およびデータ監視点マッチである。ＯＲゲート１０８の出力はレジスタ９６へ供給される。ゲート１０８の出力が例外マッチを示す場合、レジスタ９６は例外要求の生成を駆動する「１」を出力する。
【００４６】
図５は、監視点エンジンの実行にふさわしい付加的な回路を図示する他の回路図である。図５は、特に監視点ステータス・レジスタ（「ＷＰ  Ｓｔａｔ」）の保守を図示する。監視点ステータス・レジスタＷＰ  Ｓｔａｔは、監視点のステータスをモニタする。このレジスタはあらゆるクロック・サイクルで更新されてもよい。監視点または監視点のレンジが一致(マッチ）するとき、ＷＰ  Ｓｔａｔレジスタは監視点のソースをラッチする。これは、監視点およびソースが一致した識別を許容する。
【００４７】
図５中で示されるように、ＡＮＤゲート１１４は例外の指示またはエミュレーション・イベントのいずれか、および関連するステージにおいてそのイベントが有効でかつキルでもストールでもない指示を受け取る。ＡＮＤゲート１１４の出力は２つのフリップ・フロップ１１６，１１８を駆動する。中間のＡＮＤゲート１１７は、ＥＸ３中でマッチした命令がキルされず、ストールもされず、有効であるかどうかを決める。フロップ１１８の出力は、ＯＲゲート１２０の１つの入力を駆動する。フロップ１１８の出力またはＷＰ  Ｓｔａｔの内容が高であるイベントで、ＯＲゲート１２０の出力は高となる。
【００４８】
マルチプレクサ１２２は、入力として、ＯＲゲート１２０の出力およびＡＮＤゲート１２４の出力を受け取る。ＡＮＤゲート１２４は、入力として、ＷＰ  Ｓｔａｔの内容およびＷＰ  Ｓｔａｔクリア信号を反転入力で受け取る。ＷＰ  Ｓｔａｔクリア信号は、ＷＰ  Ｓｔａｔ値が０にセットされるべきかどうか示す。もしそうであるならば、ＡＮＤゲート１２４の出力は低である。マルチプレクサ１２２はＥＸＣ  Ｔａｋｅｎ／ＥＭＵ  Ｔａｋｅｎ制御線によって制御される。ＥＸＣまたはＥＭＵのイベントが得られることになる場合、マルチプレクサ１２２はＯＲゲート１２０の出力を選択する。ＥＸＣまたはＥＭＵのイベントが得ることができない場合、マルチプレクサ１２２はＡＮＤゲート１２４の出力を選択する。マルチプレクサ１２２はレジスタ１２６を駆動し、それはＷＰ  Ｓｔａｔレジスタの内容を表わす。
【００４９】
図６は、監視点マッチの生成を示すフローチャートである。現在の命令またはデータ・アドレスを第１および第２監視点アドレスＷＰ０およびＷＰ１と比較して（１２８）、プロセスはインクルーシブ・レンジが可能になるかどうかを決める（１３０）。そうならば、そのプロセスは、アドレスが第１監視点アドレスＷＰ０より大きく、かつ第２監視点アドレスＷＰ１未満か（または以下か）どうかを決める（１３２）。そうでなければ、監視点マッチがないと判断する（１３４）。そうならば、プロセスは、現在のパイプライン・ステージにおいて関連する命令が有効で、キルもストールもされていないかどうかを決定する（１３６）。そうならば、監視点マッチが生成される（１３８）。
【００５０】
インクルーシブ・レンジが可能にならない場合、プロセスはエクスクルーシブ・レンジが可能になるかどうかを決める（１４０）。もしそうならば、そのプロセスは、第１監視点ＷＰ０がそのアドレスより大きいかどうか、あるいはそのアドレスが第２監視点ＷＰ１より（または以上）大きいかどうか決める（１４２）。どちらかが正しい場合、そのプロセスは関連するな命令が有効で、キルされず、またストールもされなかったかどうかを決める（１３６）。もしそうならば、監視点マッチが示される（１３８）。もしどちらの条件（１４２）も正しくない場合、監視点マッチ１４４はない。
【００５１】
インクルーシブ・レンジ（１３０）もエクスクルーシブ・レンジ（１４０）も可能にならない場合、監視点ＷＰ０およびＷＰ１を備えた直接マッチが考慮される（１４６，１４８）。どちらも直接の監視点マッチを生成しない場合、その指示が行われる（１５０）。監視点ＷＰ０，ＷＰ１のいずれかが直接マッチを生成する場合、そのプロセスは関連する命令は有効で、キルもストールもされていないかどうかを決める（１３６）。この条件が正しい場合、そのプロセスは監視点マッチを識別する（１３８）。
【００５２】
本発明の様々な実施例が記述された。これらおよび他の実施例は、次の請求項の範囲内にある。
【図面の簡単な説明】
【図１】  パイプライン方式のプロセッサおよび監視点エンジンを有する集積回路を図示するブロック図である。
【図２】  監視点エンジンを実行するのに適した回路を図示する回路図である。
【図３】  監視点エンジンを実行するのに適した追加の回路を図示する回路図である。
【図４】  監視点エンジンを実行するのに適した追加の回路を図示する別の回路図である。
【図５】  監視点エンジンを実行するのに適した追加の回路を図示する別の回路図である。
【図６】  監視点マッチの生成を図示するフローチャートである。
【図１】
0003708521.tif 000002
【図２】
0003708521.tif 000003
【図３】
0003708521.tif 000004
【図４】
0003708521.tif 000005
【図５】
0003708521.tif 000006
【図６】
0003708521.tif 000007