(57)【要約】【課題】コンピュータシステム全体に対する初期化を行うことなく、ハングアップしたモジュールを初期化し再起動できるようにする。【解決手段】バスを介して通信を行うマスターモジュール及びスレーブモジュールを有するコンピュータシステムにて、バスの信号を監視し通信に係るハングアップを検出するバスハングアップ防止モジュールをスレーブモジュール毎に配置し、ハングアップを検出した場合には、対応するスレーブモジュールのみの再起動を指示する信号を出力するようにして、コンピュータシステム全体に対する初期化を行わずに、ハングアップしたスレーブモジュールのみを初期化し再起動できるようにする。【選択図】図２
2010140361.tif 000002
【特許請求の範囲】
【請求項１】
バスを介して通信を行う複数のモジュールと、
前記モジュール間の通信に係る前記バスの信号を監視してハングアップを検出する異常検出回路とを有し、
前記異常検出回路は、前記複数のモジュールのうちの一部のモジュールに対応して各々が配置され、前記ハングアップを検出した場合に、対応するモジュールのみの再起動を指示する信号を生成し出力することを特徴とするコンピュータシステム。
【請求項２】
前記異常検出回路は、前記モジュール間の通信において要求に対する対応するモジュールからの応答がない状態が一定期間継続した場合に、前記ハングアップであると判定することを特徴とする請求項１記載のコンピュータシステム。
【請求項３】
前記異常検出回路は、前記ハングアップの判定に係る前記一定期間を設定するレジスタを有することを特徴とする請求項２記載のコンピュータシステム。
【請求項４】
前記異常検出回路は、前記ハングアップを検出したことを示すレジスタを有することを特徴とする請求項１〜３の何れか１項に記載のコンピュータシステム。
【請求項５】
前記異常検出回路は、前記ハングアップを検出した場合に、リセット信号又は割り込み信号を出力するかを設定するレジスタを有することを特徴とする請求項１〜４の何れか１項に記載のコンピュータシステム。
【請求項６】
前記異常検出回路は、前記ハングアップを検出した場合に、当該ハングアップしたモジュールに代わって通信に係る応答を返す応答回路を有することを特徴とする請求項１〜５の何れか１項に記載のコンピュータシステム。
【請求項７】
前記異常検出回路は、前記応答回路が返す応答の種類を設定するレジスタを有することを特徴とする請求項６記載のコンピュータシステム。
【請求項８】
前記異常検出回路の各々でのハングアップの検出結果に基づいて、システム内におけるハングアップの発生状況を一覧可能に示すレジスタを有することを特徴とする請求項１〜７の何れか１項に記載のコンピュータシステム。
【請求項９】
前記モジュール毎に独立して１つの前記異常検出回路が配置されていることを特徴とする請求項１〜８の何れか１項に記載のコンピュータシステム。
【請求項１０】
バスを介して通信を行う複数のモジュールを有するコンピュータシステムにて、前記複数のモジュールのうちの一部のモジュールを単位にハングアップを検出する異常検出回路であって、
前記モジュール間の通信に係る前記バスの信号を監視して、対応するモジュールのハングアップを検出する検出回路と、
前記検出回路により前記ハングアップを検出した場合に、対応するモジュールのみの再起動を指示する信号を生成し出力する信号生成回路とを有し、
前記検出回路は、前記モジュール間の通信において要求に対する対応するモジュールからの応答がない状態が一定期間継続した場合に前記ハングアップであると判定することを特徴とする異常検出回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、バス上におけるハングアップ状態を検出する異常検出回路、及びそれを有するコンピュータシステムに関する。
【背景技術】
【０００２】
ＣＰＵ等の１つ以上のマスターモジュールと、１つ以上のスレーブモジュールとを有するコンピュータシステムにおいて、モジュール間での通信を行うためには、互いに共通のインタフェースにより各モジュールが接続されなければならない。モジュール間の通信は、一般的にバスを介して行われる。
【０００３】
ここで、マスターモジュールとバスの間、又はバスとスレーブモジュールの間において、プロトコル上のシーケンスが何らかの物理的又は論理的なエラーによって止まった場合、システムがハングアップした状態になる。従来のコンピュータシステムでは、ウォッチドッグタイマー（watchdog timer）を用いたハングアップの検出及びシステムの再起動が行われている。
【０００４】
ウォッチドッグタイマーは、所定の時間が経過する度にカウンタ値がデクリメントされるダウンカウンタを有し、カウンタ値が０になるとリセット信号（又は割り込み信号）を生成する。ウォッチドッグタイマーを起動した後、正常な場合には定期的にウォッチドッグタイマーのカウンタ値を初期値に戻すタスクが実行される。
【０００５】
しかし、システムにおいてハングアップ等が発生した場合には、タスクによるウォッチドッグタイマーのカウンタ値の初期化が行われず、カウンタ値が０に達してリセット信号又は割り込み信号が出力される。このようにして、システム全体に対してリセットをかけて初期化を行い、又は割り込みを発生させ割り込みハンドラ内でシステム全体の初期化を行い、システムの再起動が行われる。
【０００６】
また、１つのマスターと１つ以上のスレーブとからなるシステムにおいて、マスターが各スレーブの電源投入状況を検出することで、システム立ち上げ時の電源未投入によるハングアップを早期に発見する方法が提案されている（例えば、特許文献１参照。）。また、多重バス・システムにおいて、複数のマスターからの実質的に同時のバス制御要求により作り出されたデッドロック状態を検出すると、一方のバス制御要求をランダム期間マスクしデッドロック状態を回避する装置が提案されている（例えば、特許文献２参照）。
【０００７】
【特許文献１】特開平４−２６６１１２号公報
【特許文献２】特開平６−２３６３２９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上述のようにウォッチドッグタイマーを用いたハングアップの検出及びシステムの再起動を行うことで、永久的なハングアップを防げる。しかしながら、ハングアップが発生した場合にはシステム全体に対して初期化を行うために、正常に動作している部分までも初期化される。すなわち、ウォッチドッグタイマーによる初期化動作を行うことにより、ハングアップが発生した以前の動作状態に復元することは不可能となる。
【０００９】
また、コンピュータシステムにおいて、システム全体の再起動は多大な時間を要する。例えば、リアルタイムシステムのような敏速な応答性と安定性が要求されるシステムでは、再起動が行われることによる不都合が非常に大きい。以上より、ハングアップが発生した場合に、システム全体に影響を与えることなく、安全かつ速やかに継続動作させる機構が求められている。
【００１０】
本発明は、コンピュータシステム全体に対する初期化を行うことなく、ハングアップしたモジュールを初期化し再起動できるようにすることを目的とする。
【課題を解決するための手段】
【００１１】
本発明の一観点によれば、バスを介して通信を行う複数のモジュールと、モジュール間の通信に係るバスの信号を監視してハングアップを検出する異常検出回路とを有するコンピュータシステムが提供される。異常検出回路は、複数のモジュールのうちの一部のモジュールに対応して各々が配置され、ハングアップを検出した場合には、対応するモジュールのみの再起動を指示する信号を生成し出力する。
【発明の効果】
【００１２】
異常検出回路がハングアップを検出した場合に、出力される再起動を指示する信号によって、対応するモジュールのみが初期化され再起動されるので、コンピュータシステム全体に対する初期化を行わずに、ハングアップしたモジュールを再起動することができる。したがって、ハングアップが発生した場合に、コンピュータシステム全体に影響を与えることなく、一部のモジュールに対して初期化を行う動作のみで、ハングアップを解消することができ、安定した継続動作が可能となる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施形態を図面に基づいて説明する。
【００１４】
本発明に係る背景技術について説明する。
図１は、コンピュータシステムの構成例を示すブロック図である。図１に示すコンピュータシステムは、例えば、１つ又は複数のマスターモジュールと１つ又は複数のスレーブモジュールを１つの集積回路にまとめたシステムＬＳＩ（Large Scale Integration）である。
【００１５】
図１に示すコンピュータシステムは、ＣＰＵ１０、複数のマスターモジュール１１、バスインターコネクト１２、複数のスレーブモジュール１３、ウォッチドッグタイマー（watchdog timer）１４を有する。ＣＰＵ１０と複数のマスターモジュール１１と複数のスレーブモジュール１３とは、バスインターコネクト１２を介して通信可能に接続されている。
【００１６】
ＣＰＵ１０は、コンピュータシステム内の各モジュール１１、１３、１４を統括的に制御する。
【００１７】
マスターモジュール１１は、能動的にスレーブモジュール１３にバスインターコネクト１２を介してアクセスを行うバスマスターとしての機能を有するモジュールである。マスターモジュール１１は、例えばＤＭＡ（Direct Memory Access）コントローラやＵＳＢ（Universal Serial Bus）等のホストコントローラ等である。なお、ＣＰＵ１０についてはマスターモジュール１１と分けて示しているが、ＣＰＵ１０もマスターモジュールの１種である。
【００１８】
スレーブモジュール１３は、ＣＰＵ１０やマスターモジュール１１からのアクセス要求に応じて各種機能を行うバススレーブとして機能するモジュールである。スレーブモジュール１３は、例えばメモリコントローラ等である。
【００１９】
バスインターコネクト１２は、各モジュール１０、１１、１３、１４間の通信に用いられ、バス及びアドレスデコーダ等の機能を有する。例えば、バスインターコネクト１２は、アクセス要求に係るアドレスをデコードして、当該アドレスに対応するモジュールに対して選択信号（例えば、バリッド信号等）を出力（アサート）する。
【００２０】
ウォッチドッグタイマー１４は、所定の時間が経過する度にカウンタ値がデクリメントされるダウンカウンタを有し、カウンタ値が０になるとリセット信号（ウォッチドッグリセット）ＷＲＳＴを生成する。なお、リセット信号ＷＲＳＴに代えて、ＣＰＵ１０に対する割り込み信号を生成するようにしても良い。
【００２１】
ウォッチドッグタイマー１４は、起動後、ＣＰＵ１０から定期的にカウンタ値を初期値に戻すタスクが実行される。しかし、システムにおいてハングアップが発生した場合などタスクによるカウンタ値の初期化が実行されないと、カウンタ値が０に達しリセット信号ＷＲＳＴが出力（アサート）される。
【００２２】
ウォッチドッグタイマー１４から出力されたリセット信号ＷＲＳＴ、及び外部からのリセット信号（システムリセット）ＳＲＳＴは、ＡＮＤ回路（論理積演算回路）１５を介して、ＣＰＵ１０、マスターモジュール１１、及びスレーブモジュール１３にそれぞれ出力される。なお、図１に示す例において、リセット信号ＷＲＳＴ及びリセット信号ＳＲＳＴは、ネゲートされているときハイレベル（“Ｈ”）であり、アサートされているときローレベル（“Ｌ”）である。
【００２３】
したがって、図１に示すコンピュータシステムでは、リセット信号ＷＲＳＴ又はリセット信号ＳＲＳＴがアサートされると、システム全体（ＣＰＵ１０、マスターモジュール１１、及びスレーブモジュール１３）の初期化が行われる。このようにシステム内でハングアップが発生した場合にシステム全体の初期化を行い再起動させると、正常に動作しているモジュールまでもが初期化されてしまうとともに、通常状態となるまでに多大な時間を要する。
【００２４】
そこで、以下に説明する本発明の実施形態では、図１に示したような複数のモジュールを有するコンピュータシステムにおいて、ハングアップを検出する異常検出モジュール（バスハングアップ防止モジュール）を設ける。異常検出モジュールの各々は、複数のモジュール（マスターモジュール（ＣＰＵを含む）やスレーブモジュール）のうちの一部のモジュールに対応させ配置する。
【００２５】
異常検出モジュールがハングアップを検出した場合には、システム全体に対する初期化を行うことなく、当該異常検出モジュールに対応するマスターモジュール又はスレーブモジュールのみに対し再起動を指示して局所的な初期化を行い再起動させる。その他のマスターモジュールやスレーブモジュールは通常動作状態を維持させる。このようにして、異常検出モジュールによりハングアップが検出された場合に、当該異常検出モジュールに対応するマスターモジュール又はスレーブモジュールのみについて動作が停止されるだけで、システム動作を継続できるようにする。
【００２６】
（第１の実施形態）
本発明の第１の実施形態について説明する。
図２は、第１の実施形態に係るコンピュータシステムの一構成例を示すブロック図である。図２において、図１に示した構成要素と同一の構成要素には同一の符号を付し、重複する説明は省略する。
【００２７】
図２に示すコンピュータシステムは、図１に示したコンピュータシステムにおけるスレーブモジュール１３毎に独立して１つのバスハングアップ防止モジュール（異常検出モジュール）１６を配置したものである。すなわち、図２に示すコンピュータシステムにおいては、バスインターコネクト１２と各スレーブモジュール１３との間に、バスハングアップ防止モジュール１６がそれぞれ接続されている。各スレーブモジュール１３は、対応するバスハングアップ防止モジュール１６を介して、マスターモジュール１１等の他のモジュールと通信を行う。
【００２８】
バスハングアップ防止モジュール１６は、対応するスレーブモジュール１３と他のモジュールとの間の通信において送受信される信号を監視してハングアップを検出する。例えば、バスハングアップ防止モジュール１６は、対応するスレーブモジュール１３とバスインターコネクト１２との間のバス上の信号を監視することでハングアップを検出する。
【００２９】
また、バスハングアップ防止モジュール１６は、ハングアップを検出した場合には、対応するスレーブモジュール１３のみの再起動を指示するハングアップリセット信号ＳＨＲＳＴを生成し出力する。なお、本実施形態において、ハングアップリセット信号ＳＨＲＳＴは、ネゲートされているとき“Ｈ”であり、アサートされているとき“Ｌ”である。
【００３０】
バスハングアップ防止モジュール１６から出力されたハングアップリセット信号ＳＨＲＳＴは、ＡＮＤ回路１７を介して対応するスレーブモジュール１３に入力される。ここで、ＡＮＤ回路１７には、ＡＮＤ回路１５の出力、すなわちウォッチドッグタイマー１４から出力されたリセット信号ＷＲＳＴ及び外部からのリセット信号ＳＲＳＴの演算結果も入力されている。ＡＮＤ回路１７の出力が“Ｌ”となると、それを受けるスレーブモジュール１３では初期化が行われ再起動される。
【００３１】
ここで、本実施形態において、マスターモジュール１１（ＣＰＵ１０を含む）とスレーブモジュール１３との間の通信は、ハンドシェイクを基本としたバスプロトコルで行われるとする。以下の説明では、本実施形態におけるモジュール間の通信は、一般的にもよく使用されるバリッド信号（ＶＡＬＩＤ）とレディ信号（ＲＥＡＤＹ）を使用したハンドシェイクを基にした同期式バス方式で行うものとする。
【００３２】
本実施形態におけるモジュール間の通信について、図３（Ａ）に示すように、マスターモジュール１１がアドレス（ＡＤＤＲＥＳＳ）を出してスレーブモジュール１３がそれを受ける場合を一例に説明する。バリッド信号（ＶＡＬＩＤ）は、アドレスやデータの送信側が有効なアドレスやデータとともに受信側に送信する信号である。レディ信号（ＲＥＡＤＹ）は、アドレスやデータの受信側がアドレスやデータを受け取ることができる状態の時に送信側に送信する信号である。図３（Ｂ）に示すように、バリッド信号（ＶＡＬＩＤ）及びレディ信号（ＲＥＡＤＹ）がともにアサートされているとき、他のバス信号（アドレス、データ、制御信号等）が有効となる。なお、スレーブモジュール１３がデータを出してマスターモジュール１１がそれを受ける場合も、スレーブモジュール１３からデータ及びバリッド信号（ＶＡＬＩＤ）を出力し、マスターモジュール１１からレディ信号（ＲＥＡＤＹ）を出力することで同様に行える。
【００３３】
バスハングアップ防止モジュール１６は、上述のようなハンドシェイクを成立させるために送受信されるバス上の信号（図３においては、バリッド信号（ＶＡＬＩＤ）及びレディ信号（ＲＥＡＤＹ））を監視する。そして、一定期間の間、ハンドシェイクが成立しない場合、すなわち要求に相当するバリッド信号（ＶＡＬＩＤ）がアサートされてから応答に相当するレディ信号（ＲＥＡＤＹ）がネゲートされている場合に、ハングアップとして検出する。なお、図３に示したバスプロトコルに限らず、バスに有効なトランザクションが出ているがトランザクションの相手からの応答がない状態が一定期間継続した場合に、ハングアップとして検出可能なプロトコルであれば、本実施形態は適用可能である。
【００３４】
図４は、第１の実施形態におけるバスハングアップ防止モジュール１６の構成例を示すブロック図である。バスハングアップ防止モジュール１６は、スレーブインタフェース１０１、マスターインタフェース１０２、ハングアップ監視回路１０３、制御回路１０４、及びリセット生成回路１０５を有する。
【００３５】
スレーブインタフェース１０１は、マスターモジュールと通信する側のインタフェースであり、マスターモジュール側との入出力を行う。マスターインタフェース１０２は、スレーブモジュール１３と通信する側のインタフェースであり、スレーブモジュール１３側との入出力を行う。スレーブインタフェース１０１及びマスターインタフェース１０２のそれぞれは、バスインタフェース１２やスレーブモジュール１３に対して、アドレスやデータ、及びバリッド信号やレディ信号の授受を行う。なお、スレーブインタフェース１０１及びマスターインタフェース１０２の入出力ポートには、使用するバスプロトコルに合わせた信号線が用意されている。
【００３６】
ハングアップ監視回路１０３は、スレーブインタフェース１０１とマスターインタフェース１０２との間でやりとりされる信号を基にハングアップを検出する。ハングアップ監視回路１０３は、スレーブインタフェース１０１とマスターインタフェース１０２との間に接続され、ハングアップが発生していないとき、スレーブモジュール側の入出力信号とマスターモジュール側の入出力信号をバイパスする。
【００３７】
ハングアップ監視回路１０３は、バリッド信号とレディ信号を監視しており、バリッド信号がアサートされてからの時間をハングアップ時間カウンタ１０６によりカウント（計測）する。そして、ハングアップ監視回路１０３は、バリッド信号がアサートしているにもかかわらずレディ信号がアサートしていない、すなわちハングアップ条件を満たしている状態が一定の時間継続した場合にはハングアップであると判定し、制御回路１０４に通知する。
【００３８】
制御回路１０４は、バスハングアップ防止モジュール１６内の各機能部を制御する。例えば、制御回路１０４は、ハングアップ監視回路１０３からハングアップを検出した旨の通知を受けると、それに応じた処理を行うよう各機能部に対する制御を行う。制御回路１０４は、例えばステートマシンやＣＰＵ等である。
【００３９】
リセット生成回路１０５は、ハングアップ監視回路１０３がハングアップを検出した場合に、制御回路１０４による制御に基づいて、バスハングアップ防止モジュール１６に対応するスレーブモジュール１３の再起動を指示するハングアップリセット信号ＳＨＲＳＴをアサート（出力）する。
【００４０】
図５は、第１の実施形態におけるバスハングアップ防止モジュール１６の詳細な構成例を示す図である。図５において、図４に示した構成要素と同一の構成要素には同一の符号を付し、重複する説明は省略する。図５においては、マスターモジュール側からの送信をスレーブモジュール側で受け取る場合のスレーブ側のハングアップ検出を対象とする構成を示している。
【００４１】
マスターモジュール側からのアドレス信号（ＡＤＤＲＥＳＳ）Ｓ００及びバリッド信号（ＶＡＬＩＤ）Ｓ０１は、スレーブインタフェース１０１に入力される。入力されたアドレス信号Ｓ００及びバリッド信号Ｓ０１は、ハングアップ監視回路１０３及びマスターインタフェース１０２を介してスレーブモジュール側に出力される。
【００４２】
また、スレーブモジュール側からのレディ信号（ＲＥＡＤＹ）Ｓ０８及びレスポンス信号（ＲＥＳＰＯＮＳＥ）Ｓ０９は、マスターインタフェース１０２に入力され、レディ信号Ｓ０６及びレスポンス信号Ｓ０７としてハングアップ監視回路１０３に出力される。なお、レスポンス信号は使用するプロトコルに応じて規定されており、例えばＯＫレスポンス、エラーレスポンス、リトライレスポンス等がある。
【００４３】
ハングアップ監視回路１０３のセレクタ２０５は、マスターインタフェース１０２から出力されたレディ信号Ｓ０６及び疑似応答回路２０３から出力されたレディ信号Ｓ１２が入力される。セレクタ２０５は、制御回路１０４からの疑似応答要求信号Ｓ１１に応じて、レディ信号Ｓ０６又はレディ信号Ｓ１２を出力する。詳細には、セレクタ２０５は、通常においてマスターインタフェース１０２より出力されたレディ信号Ｓ０６を出力し、ハングアップが検出されると疑似応答回路２０３より出力されたレディ信号Ｓ１２を出力する。
【００４４】
同様に、ハングアップ監視回路１０３のセレクタ２０４は、マスターインタフェース１０２から出力されたレスポンス信号Ｓ０７及び疑似応答回路２０３から出力されたレスポンス信号Ｓ１３が入力される。セレクタ２０４は、制御回路１０４からの疑似応答要求信号Ｓ１１に応じて、レスポンス信号Ｓ０７又はレスポンス信号Ｓ１３を出力する。詳細には、セレクタ２０４は、通常においてマスターインタフェース１０２より出力されたレスポンス信号Ｓ０７を出力し、ハングアップが検出されると疑似応答回路２０３より出力されたレスポンス信号Ｓ１３を出力する。
【００４５】
ここで、疑似応答回路２０３は、ハングアップを検出した場合に、ハングアップしたスレーブモジュールに代わって応答を返すための回路である。疑似応答回路２０３は、ハングアップが検出された場合に、制御回路１０４からの疑似応答要求信号Ｓ１１に応じて疑似的なレディ信号Ｓ１２及びレスポンス信号Ｓ１３を生成し出力する。
【００４６】
ハングアップ監視回路１０３のセレクタ２０５、２０４の出力Ｓ０４、Ｓ０５は、スレーブインタフェース１０１を介してレディ信号Ｓ０２、レスポンス信号Ｓ０３としてマスターモジュール側に出力される。
【００４７】
比較器２０１は、ハングアップ時間カウンタ１０６のカウンタ値及びハングアップ閾値２０２が入力され、その比較結果を制御回路１０４に出力する。ハングアップ閾値２０２としては固定値が予め設定されている。なお、図５においては、説明の便宜上、ハングアップ時間カウンタ１０６、比較器２０１、及びハングアップ閾値２０２は、ハングアップ監視回路１０３の外部に図示しているが、これらはハングアップ監視回路１０３内に設けられている。
【００４８】
ハングアップ監視回路１０３は、比較器２０１によりハングアップ時間カウンタ１０６のカウンタ値とハングアップ閾値２０２との比較を行う。その結果、ハングアップ時間カウンタ１０６のカウンタ値がハングアップ閾値２０２を超える、すなわちバリッド信号がアサートしているにもかかわらずレディ信号がアサートしていないハングアップ条件を閾値時間継続していた場合、ハングアップであると判定する。そして、ハングアップ監視回路１０３は、ハングアップを検出したことを制御回路１０４に通知する。
【００４９】
ハングアップ監視回路１０３からハングアップを検出した通知を受けると、制御回路１０４は、ハングアップを解消するための動作を行うために、ハングアップ監視回路１０３及びリセット生成回路１０５に指示を与える。
【００５０】
ハングアップ監視回路１０３は、制御回路１０４からの疑似応答要求信号Ｓ１１を受信すると、疑似応答回路２０３によりレディ信号及びレスポンス信号を生成しマスターモジュールに対して発行する。これにより、マスターモジュールは、ハングアップした状態が解消され、バストランザクションを継続できるようになる。また、同時に、リセット生成回路１０５は、制御回路１０４からのリセット要求信号Ｓ１４を受信すると、スレーブモジュールの再起動を指示するハングアップリセット信号ＳＨＲＳＴ（Ｓ１５）を生成し対応するスレーブモジュールに対して発行する。
【００５１】
なお、リセット信号の生成については、バスハングアップ防止モジュール１６内にリセット生成回路１０５を設けずに、対応するスレーブモジュールのみをリセットするよう外部にあるシステム上のリセットコントローラ等に指示する構成であってもよい。また、ＣＰＵに対する割り込みを発生させ、ＣＰＵからシステム上のリセットコントローラ等を制御することで、スレーブモジュールをリセットする構成であってもよい。
【００５２】
図６は、図５に示したバスハングアップ防止モジュール１６の動作例を示すタイミングチャートである。なお、ハングアップ閾値２０２は、“０ｘＦＦＦＦ”に設定されているものとする。
【００５３】
時刻Ｔ１において、マスターモジュール側からのバリッド信号Ｓ０１は“Ｈ”になっている（アサートされている）が、スレーブモジュール側からのレディ信号Ｓ０８は“Ｌ”である（ネゲートされている）。そのため、時刻Ｔ１において、ハングアップ監視回路１０３内のハングアップ時間カウンタ１０６は、カウントを開始する。
【００５４】
バリッド信号Ｓ０１及びレディ信号Ｓ０８が変化せずに、時刻Ｔ２において、ハングアップ時間カウンタ１０６のカウンタ値が、ハングアップ閾値２０２の値“０ｘＦＦＦＦ”を超えると、ハングアップ監視回路１０３はハングアップが発生したと判定する。そして、ハングアップ監視回路１０３は、スレーブモジュールに代わり、レディ信号を送信するとともに、トランザクションが失敗したことを示すエラー（ＥＲＲＯＲ）レスポンスを返す。このようにして、バスハングアップ防止モジュール１６からレディ信号Ｓ０２及びレスポンス信号Ｓ０３がマスターモジュール側に対して発行される。
【００５５】
なお、バスプロトコルによっては、レスポンス信号（エラーレスポンス）の受け渡しも、バリッド信号及びレディ信号を用いたハンドシェイクで行う場合もある。そのようなバスの場合には、ハングアップ監視回路１０３が、レスポンス信号（エラーレスポンス）の受け渡しのためのバリッド信号（レディ信号）の制御を行う。
【００５６】
時刻Ｔ２において、レディ信号Ｓ０２及びレスポンス信号Ｓ０３がバスハングアップ防止モジュール１６から送信されることにより、マスターモジュール側からみるとトランザクションが終了する。そして、時刻Ｔ３において、レディ信号を受信したマスターモジュールがバリッド信号及びデータ等を引き下げる。それと同時に、バスハングアップ防止モジュール１６は、対応するスレーブモジュールに対するハングアップリセット信号ＳＨＲＳＴ（Ｓ１５）をアサート（出力）しリセットをかける。リセットの解除、すなわちハングアップリセット信号ＳＨＲＳＴ（Ｓ１５）のネゲートは、一定期間が経過した後に自動解除される。
【００５７】
ここで、ハングアップしたスレーブモジュールのリセット（初期化）中、及びリセット後にスレーブモジュールが通常動作に入るまでは、バスハングアップ防止モジュール１６（詳細には、ハングアップ監視回路１０３）が、他のマスターモジュールからのアクセスに対してエラーレスポンスを返す。これにより、ハングアップしたスレーブモジュールのリセットを開始してから通常動作を開始するまでの間、システムの継続動作が可能となる。
【００５８】
第１の実施形態によれば、ハングアップを検出するバスハングアップ防止モジュール１６をスレーブモジュール１３毎に配置し、ハングアップを検出すると、再起動を指示するハングアップリセット信号ＳＨＲＳＴを対応するスレーブモジュール１３に出力する。これにより、システム内にてハングアップを検出した場合に、コンピュータシステム全体に対する初期化を行うことなく、局所的にハングアップしたスレーブモジュール１３のみを初期化し再起動することができる。したがって、ハングアップが発生しても、コンピュータシステム全体に影響を与えることなく、ハングアップしたスレーブモジュール１３に対してのみ初期化を行うだけで、ハングアップを解消することができる。また、ハングアップしたスレーブモジュール１３が初期化され通常状態になるまでは、そのスレーブモジュール１３に代わってバスハングアップ防止モジュール１６が適切なバス応答（エラー応答等）を行うことで、システムを停止させることなく継続動作が可能となる。
【００５９】
（第２の実施形態）
次に、本発明の第２の実施形態について説明する。
第２の実施形態に係るコンピュータシステムの全体構成は、図２に示した第１の実施形態に係るコンピュータシステムの構成と同様である。
【００６０】
図７は、第２の実施形態におけるバスハングアップ防止モジュール１６の構成例を示すブロック図である。図７において、図４に示した構成要素と同一の構成要素には同一の符号を付し、重複する説明は省略する。
【００６１】
第２の実施形態におけるバスハングアップ防止モジュール１６は、レジスタインタフェース３０１及びレジスタ群３０２を設けることで、バスハングアップ防止モジュール１６の機能に拡張性を持たせている。
【００６２】
レジスタインタフェース３０１は、レジスタ群３０２内のレジスタに情報を設定したり、レジスタから情報を読み出したりするインタフェースである。レジスタインタフェース３０１は、バスインターコネクト１２に対して接続されるようにしても良いし、バスインターコネクト１２とは異なるバス（例えば、制御用の低速バス等）に接続されるようにしても良い。
【００６３】
レジスタ群３０２のレジスタの各々は、ＣＰＵ１０等のマスターモジュールからアクセス可能なレジスタとしてメモリマップ上に配置されており、例えばソフトウェアにより設定や確認を行うことができる。レジスタ群３０２は、例えばステータスレジスタ３０３、制御レジスタ３０４、ハングアップ閾値レジスタ３０５を有する。
【００６４】
ステータスレジスタ３０３は、バスハングアップ防止モジュール１６の状態を示すレジスタである。ステータスレジスタ３０３は、例えば、ハングアップの検出の有無、ハングアップしたスレーブモジュールの初期化が終了したか否か、マスターモジュール側及びスレーブモジュール側のどちらにハングアップが発生したか、等の情報を示す。なお、ハングアップが発生していない場合、ステータスレジスタ３０３には正常値が示される。
【００６５】
制御レジスタ３０４は、制御方法を設定するレジスタである。制御レジスタ３０４は、ハングアップが発生した際のリセットの解除（リセット時間等）に係る設定、バスハングアップ防止モジュールの使用の有無の設定等を行うことができる。また、制御レジスタ３０４は、ハングアップを検出した場合にリセット信号を出力させるか否かの設定や、ハングアップを検出した場合に割り込み信号を出力させるか否かの設定等を行うことができる。また、制御レジスタ３０４は、ハングアップを検出した場合に、レスポンス信号によりどのような種類（タイプ）のレスポンス（エラー、リトライ等）を返すかを設定することができる。制御レジスタ３０４を設けることにより、ハングアップが発生したときの動作等をソフトウェアにより設定することが可能となる。
【００６６】
ハングアップ閾値レジスタ３０５は、ハングアップであると判定するまでのカウンタ値を設定するレジスタである。すなわち、ハングアップ閾値レジスタ３０５には、バリッド信号がアサートしているにもかかわらずレディ信号がアサートしていないハングアップ条件がどれだけの期間継続された場合にハングアップと判定するかの閾値時間に相当するカウンタ値が設定される。ハングアップ閾値レジスタ３０５を設けることにより、ハングアップであると判定するまでの閾値時間をソフトウェアにより変更することができ、コンピュータシステムに応じて動的に閾値時間を設定することができる。
【００６７】
ここで、レジスタ群３０２に設けるレジスタは任意であり、ステータスレジスタ３０３、制御レジスタ３０４、ハングアップ閾値レジスタ３０５のすべてを設けるようにしても良いし、これらの一部を設けるようにしても良い。また、他のレジスタを設けても良い。なお、ハングアップ閾値レジスタ３０５を設けない場合には、第１の実施形態と同様にして、予め設定された固定値を閾値時間に相当するカウンタ値として供給するようにすれば良い。
【００６８】
図８は、第２の実施形態におけるバスハングアップ防止モジュール１６の詳細な構成例を示す図である。図８において、図４及び図７に示した構成要素と同一の構成要素には同一の符号を付し、重複する説明は省略する。
【００６９】
比較器２０１には、ハングアップ閾値レジスタ３０５に設定された閾値時間に相当するカウンタ値が入力される。また、例えば、制御レジスタ３０４を通して、制御回路１０４にハングアップ状態のクリアを行うクリア信号Ｓ１６等を出力することができる。また、例えば、ステータスレジスタ３０３は、制御回路１０４からバスハングアップ防止モジュールの状態を示すステータス信号Ｓ１７が供給され、それを保持する。なお、ハングアップの検出及びその状態を解消するための動作は、図５に示した第１の実施形態におけるバスハングアップ防止モジュール１６と同様であるので、説明は省略する。
【００７０】
図９は、図８に示したバスハングアップ防止モジュール１６の動作例を示すタイミングチャートである。なお、ハングアップ閾値レジスタ３０５には、閾値時間に相当するカウンタ値として“０ｘＦＦＦＦ”が設定されているものとする。
【００７１】
時刻Ｔ１３までは、図６に示した第１の実施形態における動作と同様であり、時刻Ｔ１１が図６における時刻Ｔ１に対応し、時刻Ｔ１２が図６における時刻Ｔ２に対応する。なお、第２の実施形態では、時刻Ｔ１２においてハングアップであると判定されると、制御回路１０４によりステータスレジスタ３０３にハングアップを検出したことを示すステータス“ＨＡＮＧ”が示される。
【００７２】
ここで、時刻Ｔ１２においてバスハングアップ防止モジュール１６から送信されたエラーレスポンスをマスターモジュールが受信すると、マスターモジュールがＣＰＵ１０である場合には、通常はデータアボート例外、又はプリフェッチアボート例外が発生する。ＣＰＵ１０は、これらのアボートハンドラ内で、各バスハングアップ防止モジュール１６のステータスレジスタ３０３をチェックすることでハングアップの発生元のスレーブモジュールの検索を行う。また、マスターモジュールがＣＰＵ以外の場合には、エラーレスポンスを受信したときにＣＰＵ１０に対する割り込みを発生させるようにすることで、割り込みを受けたＣＰＵ１０での割り込みハンドラ内で上述のアボートハンドラと同様の処理を行い、ハングアップの発生元のスレーブモジュールの検索を行う。
【００７３】
ＣＰＵ１０がアボート処理実行中、ステータスレジスタ３０３がハングアップ状態（“ＨＡＮＧ”）を示しているスレーブモジュールを発見した場合、そのスレーブモジュールにかけられているリセットを制御レジスタ３０４により解除する。また、スレーブモジュールのレジスタを再設定する等の再起動処理を行う。
【００７４】
ＣＰＵ１０がバスハングアップ防止モジュール１６の制御レジスタ３０４にハングアップリセットの解除を設定すると、クリア信号Ｓ１６がアサートされリセットの解除が行われる（時刻Ｔ１４）。それと同時に、バスハングアップ防止モジュール１６のステータスレジスタ３０３がハングアップ状態（“ＨＡＮＧ”）から正常状態（“ＯＫ”）に復帰するとともに、ハングアップ時間カウンタ１０６のカウンタ値が０に戻される。
【００７５】
第２の実施形態によれば、第１の実施形態と同様に、システム内にてハングアップを検出した場合に、システム全体に対する初期化を行うことなく、局所的にハングアップしたスレーブモジュール１３のみを初期化し再起動することができる。これにより、ハングアップが発生しても、コンピュータシステム全体に影響を与えることなく、ハングアップを解消することができる。また、ハングアップしたスレーブモジュールが初期化され通常状態になるまでは、バスハングアップ防止モジュール１６が適切なバス応答を行うことで、システムを停止させることなく継続動作が可能となる。
【００７６】
（他の実施形態）
なお、上述した第１及び第２の実施形態では、スレーブモジュールに対してバスハングアップ防止モジュール（異常検出モジュール）を配置するようにしているが、本発明は、これに限定されるものではない。スレーブモジュールに対するバスハングアップ防止モジュールに加え、マスターモジュールに対してバスハングアップ防止モジュールを配置するようにしても良い。
【００７７】
図１０は、本発明の一実施形態に係るコンピュータシステムの他の構成例を示すブロック図である。図１０において、図１及び図２に示した構成要素と同一の構成要素には同一の符号を付し、重複する説明は省略する。
【００７８】
図１０に示すコンピュータシステムは、スレーブモジュール１３に対してバスハングアップ防止モジュール１６を配置するとともに、マスターモジュール（ＣＰＵ１０及びマスターモジュール１１）に対してバスハングアップ防止モジュール１８を配置したものである。すなわち、図１０に示すコンピュータシステムにおいては、バスハングアップ防止モジュール１８が、バスインターコネクト１２と各マスターモジュール１０、１１との間にそれぞれ接続されている。各マスターモジュール１０、１１は、対応するバスハングアップ防止モジュール１８を介して他のモジュールと通信を行う。
【００７９】
バスハングアップ防止モジュール１８は、対応するマスターモジュール１０、１１とバスインターコネクト１２との間のバス上の信号を監視してハングアップを検出する。また、バスハングアップ防止モジュール１８は、ハングアップを検出した場合に、対応するマスターモジュール１０、１１のみの再起動を指示するハングアップリセット信号ＭＨＲＳＴを生成し出力する。なお、本実施形態において、ハングアップリセット信号ＭＨＲＳＴは、ネゲートされているとき“Ｈ”であり、アサートされているとき“Ｌ”である。
【００８０】
バスハングアップ防止モジュール１８から出力されたハングアップリセット信号ＭＨＲＳＴは、ＡＮＤ回路１９を介して対応するマスターモジュール１０、１１に入力される。ＡＮＤ回路１９の出力が“Ｌ”となると、それを受けるマスターモジュール１０、１１では初期化が行われ再起動される。
【００８１】
なお、バスハングアップ防止モジュール１８の基本的な動作シーケンスは、スレーブモジュールがハングアップを発生した場合のバスハングアップ防止モジュール１６と同様である。しかし、一般的にはスレーブモジュールに対するエラーレスポンスを持つバスプロトコルはないので、バスハングアップ防止モジュール１８がエラーレスポンスを返すことはしない。代わりにスレーブモジュールが待ち状態のまま停滞してしまわないよう、バスハングアップ防止モジュール１８は、ライトデータ等のマスターモジュールが出力しなければならない信号の制御を行い、スレーブモジュールが継続動作できるようにする。
【００８２】
また、図１０においては、スレーブモジュール及びマスターモジュールの両方に対してバスハングアップ防止モジュールを配置するようにしているが、マスターモジュールに対してのみバスハングアップ防止モジュールを配置するようにしても良い。
【００８３】
また、上述した各実施形態では、マスターモジュール毎やスレーブモジュール毎に独立して１つのバスハングアップ防止モジュールをそれぞれ配置するようにしている。本発明は、これに限定されるものではなく、２つ以上のマスターモジュール又は２つ以上のスレーブモジュールからなるモジュール群に対して１つのバスハングアップ防止モジュールを設けるようにしても良い。
【００８４】
図１１は、本発明の一実施形態に係るコンピュータシステムのその他の構成例を示すブロック図である。図１１において、図１及び図２に示した構成要素と同一の構成要素には同一の符号を付し、重複する説明は省略する。
【００８５】
図１１に示すコンピュータシステムにおいては、バスインターコネクト（Ａ）１２Ａのスレーブ側にバスインターコネクト（Ｂ）１２Ｂが接続されている。そして、バスインターコネクト（Ａ）１２Ａとバスインターコネクト（Ｂ）１２Ｂとの間に接続されているバスハングアップ防止モジュール１６が、バスインターコネクト（Ｂ）１２Ｂに接続されている２つのスレーブモジュール１３のハングアップを監視している。
【００８６】
このように構成することで、バスインターコネクト（Ｂ）１２Ｂに接続されている２つのスレーブモジュール１３のうち、どちらか一方のスレーブモジュール１３がハングアップした状態に陥った場合には、システム全体ではなく、バスインターコネクト（Ｂ）１２Ｂに接続されている２つのスレーブモジュール１３のみにリセットをかける。これにより、バスインターコネクト（Ｂ）１２Ｂに接続されている２つのスレーブモジュール１３のみが初期化され再起動され、他のモジュールについては継続動作させることができる。
例えば、図１１に示すように、バスが複数に分かれてカスケード接続されている場合には、各バスインターコネクトの領域を単位として大域的にハングアップ監視を行うことができる。
【００８７】
ここで、ＣＰＵ１０が、ハングアップが検出された箇所の特定を行う場合、各バスハングアップ防止モジュール内のステータスレジスタを逐次モニタリングする方法では多くの処理時間が必要となる。これを改善するためにすべてのバスハングアップ防止モジュール１６、１８の状態を集約してハングアップの発生状況を一覧表示するモジュール（レジスタ）をコンピュータシステム内に設けるようにしてもよい。
【００８８】
図１２は、本発明の一実施形態に係るコンピュータシステムのその他の構成例を示すブロック図である。図１２において、図１、図２及び図１０に示した構成要素と同一の構成要素には同一の符号を付し、重複する説明は省略する。図１２に示すコンピュータシステムは、ハングアップの発生状況を一覧表示するモニタモジュール２０を設けたものである。なお、図１２において、２１はペリフェラルバスであり、例えばレジスタアクセス用の低速バスである。
【００８９】
図１２に示すコンピュータシステムにおいては、システム内のすべてのバスハングアップ防止モジュール１６、１８から、対応するモジュール１０、１１、１３がハングアップしているか否かを示す信号ＳＨ０〜ＳＨ２、ＭＨ０〜ＭＨ２を引き出す。これらの信号ＳＨ０〜ＳＨ２、ＭＨ０〜ＭＨ２を１つのモニタモジュール２０に集約し、各ビットと各バスハングアップ防止モジュール１６、１８を１対１の対応で示すレジスタを設ける。
【００９０】
モニタモジュール２０のレジスタをＣＰＵ１０からアクセス可能なメモリマップ上に配置しておき、ＣＰＵ１０はこのレジスタの値をソフトウェアにより監視する。これにより、ＣＰＵ１０はモニタモジュール２０のレジスタの判定を行うのみで、すべてのバスハングアップ防止モジュール１６、１８におけるハングアップの検出状態を知ることができる。したがって、バスハングアップ防止モジュール内のステータスレジスタを１つずつモニタリングする処理が不要となり、ハングアップを検出したモジュールの検索を行う処理を軽減することができる。
【００９１】
また、上述した各実施形態では、スレーブモジュールに対してバスハングアップ防止モジュールを設ける場合には、すべてのスレーブモジュールがハングアップの検出対象となるようにバスハングアップ防止モジュールを設けている。また、マスターモジュールに対してバスハングアップ防止モジュールを設ける場合には、すべてのマスターモジュールがハングアップの検出対象となるようにバスハングアップ防止モジュールを設けている。しかしながら、これに限定されるものではなく、すべてのスレーブモジュールに対してではなく、一部のスレーブモジュールに対してバスハングアップ防止モジュールを設けるようにしても良い。同様に、すべてのマスターモジュールに対してではなく、一部のマスターモジュールに対してバスハングアップ防止モジュールを設けるようにしても良い。
また、図２等に示しているように、バスハングアップ防止モジュールとウォッチドッグタイマーとを併用しても良い。
【００９２】
なお、前記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
本発明の諸態様を付記として以下に示す。
【００９３】
（付記１）バスを介して通信を行う複数のモジュールと、
前記モジュール間の通信に係る前記バスの信号を監視してハングアップを検出する異常検出回路とを有し、
前記異常検出回路は、前記複数のモジュールのうちの一部のモジュールに対応して各々が配置され、前記ハングアップを検出した場合に、対応するモジュールのみの再起動を指示する信号を生成し出力することを特徴とするコンピュータシステム。
（付記２）前記異常検出回路は、前記モジュール間の通信において要求に対する対応するモジュールからの応答がない状態が一定期間継続した場合に、前記ハングアップであると判定することを特徴とする付記１記載のコンピュータシステム。
（付記３）前記異常検出回路は、前記ハングアップの判定に係る前記一定期間を設定するレジスタを有することを特徴とする付記２記載のコンピュータシステム。
（付記４）前記異常検出回路は、前記ハングアップを検出したことを示すレジスタを有することを特徴とする付記１〜３の何れか１項に記載のコンピュータシステム。
（付記５）前記異常検出回路は、前記ハングアップを検出した場合に、リセット信号又は割り込み信号を出力するかを設定するレジスタを有することを特徴とする付記１〜４の何れか１項に記載のコンピュータシステム。
（付記６）前記異常検出回路は、前記ハングアップを検出した場合に、当該ハングアップしたモジュールに代わって通信に係る応答を返す応答回路を有することを特徴とする付記１〜５の何れか１項に記載のコンピュータシステム。
（付記７）前記異常検出回路は、前記応答回路が返す応答の種類を設定するレジスタを有することを特徴とする付記６記載のコンピュータシステム。
（付記８）前記異常検出回路の各々でのハングアップの検出結果に基づいて、システム内におけるハングアップの発生状況を一覧可能に示すレジスタを有することを特徴とする付記１〜７の何れか１項に記載のコンピュータシステム。
（付記９）前記モジュール毎に独立して１つの前記異常検出回路が配置されていることを特徴とする付記１〜８の何れか１項に記載のコンピュータシステム。
（付記１０）少なくとも１つの前記異常検出回路が、２つ以上の前記モジュールを含むモジュール群に対応して配置されていることを特徴とする付記１〜８の何れか１項に記載のコンピュータシステム。
（付記１１）前記複数のモジュールのうち、スレーブ側の前記モジュールに対して前記異常検出回路が配置されていることを特徴とする付記１〜１０の何れか１項に記載のコンピュータシステム。
（付記１２）前記複数のモジュールのうち、マスター側の前記モジュールに対して前記異常検出回路が配置されていることを特徴とする付記１〜１１の何れか１項に記載のコンピュータシステム。
（付記１３）前記モジュールの再起動を指示する信号を、前記異常検出回路の外部で生成し出力することを特徴とする付記１〜１２の何れか１項に記載のコンピュータシステム。
（付記１４）バスを介して通信を行う複数のモジュールを有するコンピュータシステムにて、前記複数のモジュールのうちの一部のモジュールを単位にハングアップを検出する異常検出回路であって、
前記モジュール間の通信に係る前記バスの信号を監視して、対応するモジュールのハングアップを検出する検出回路と、
前記検出回路により前記ハングアップを検出した場合に、対応するモジュールのみの再起動を指示する信号を生成し出力する信号生成回路とを有し、
前記検出回路は、前記モジュール間の通信において要求に対する対応するモジュールからの応答がない状態が一定期間継続した場合に前記ハングアップであると判定することを特徴とする異常検出回路。
（付記１５）前記ハングアップの判定に係る前記一定期間を設定するレジスタを有することを特徴とする付記１４記載の異常検出回路。
（付記１６）対応するモジュールのハングアップを検出したことを示すレジスタを有することを特徴とする付記１４又は１５記載の異常検出回路。
（付記１７）対応するモジュールのハングアップを検出した場合に、リセット信号又は割り込み信号を出力するかを設定するレジスタを有することを特徴とする付記１４〜１６の何れか１項に記載の異常検出回路。
（付記１８）対応するモジュールのハングアップを検出した場合に、当該モジュールに代わって通信に係る応答を返す応答回路を有することを特徴とする付記１４〜１７の何れか１項に記載の異常検出回路。
（付記１９）前記応答回路が返す応答の種類を設定するレジスタを有することを特徴とする付記１８記載の異常検出回路。
【図面の簡単な説明】
【００９４】
【図１】コンピュータシステムの構成例を示す図である。
【図２】第１の実施形態に係るコンピュータシステムの構成例を示す図である。
【図３】本実施形態におけるバスプロトコルの一例を説明するための図である。
【図４】第１の実施形態におけるバスハングアップ防止モジュールの構成例を示す図である。
【図５】第１の実施形態におけるバスハングアップ防止モジュールの詳細な構成例を示す図である。
【図６】第１の実施形態におけるバスハングアップ防止モジュールの動作例を示すタイミングチャートである。
【図７】第２の実施形態におけるバスハングアップ防止モジュールの構成例を示す図である。
【図８】第２の実施形態におけるバスハングアップ防止モジュールの詳細な構成例を示す図である。
【図９】第２の実施形態におけるバスハングアップ防止モジュールの動作例を示すタイミングチャートである。
【図１０】本発明の実施形態に係るコンピュータシステムの他の構成例を示す図である。
【図１１】本発明の実施形態に係るコンピュータシステムのその他の構成例を示す図である。
【図１２】本発明の実施形態に係るコンピュータシステムのその他の構成例を示す図である。
【符号の説明】
【００９５】
１０  ＣＰＵ（マスターモジュール）
１１  マスターモジュール
１２  バスインターコネクト
１３  スレーブモジュール
１４  ウォッチドッグタイマー
１６、１８  バスハングアップ防止モジュール
２０  モニタモジュール
１０１  スレーブインタフェース
１０２  マスターインタフェース
１０３  ハングアップ監視回路
１０４  制御回路
１０５  リセット生成回路
１０６  ハングアップ時間カウンタ
２０３  疑似応答回路
３０３  ステータスレジスタ
３０４  制御レジスタ
３０５  ハングアップ閾値レジスタ
ＳＨＲＳＴ、ＭＨＲＳＴ  ハングアップリセット信号
【図１】
2010140361.tif 000003
【図２】
2010140361.tif 000004
【図３】
2010140361.tif 000005
【図４】
2010140361.tif 000006
【図５】
2010140361.tif 000007
【図６】
2010140361.tif 000008
【図７】
2010140361.tif 000009
【図８】
2010140361.tif 000010
【図９】
2010140361.tif 000011
【図１０】
2010140361.tif 000012
【図１１】
2010140361.tif 000013
【図１２】
2010140361.tif 000014