(57)【要約】【課題】周辺デバイス部のオンラインテスト機能を備えたＣＰＵボード、及びそのオンラインテスト方法を提供することを目的とする。【解決手段】プログラムを実行するＣＰＵ１と、その周辺デバイス部３−１〜３−ｎと、周辺デバイス部に対して自己診断テストを実行するテスト回路部５と、前記ＣＰＵとテスト回路部とが、夫々異なる周辺デバイス部に同時アクセスを可能に接続するクロスバースイッチ型のバス制御部４とを備え、テスト回路部５は、ＣＰＵのアクセス予測を監視し、ＣＰＵが次にアクセスしない周辺デバイス部に対してテストを行う周辺デバイス部を求め、ＣＰＵが現在アクセス中の周辺デバイス部と異なる周辺デバイス部であり、且つ、次のバスサイクルでもアクセスしない周辺デバイス部を選択して自己診断テストを実行するようにしたことを特徴とする。【選択図】  図１
2011170691.tif 000002
【特許請求の範囲】
【請求項１】
プログラムを実行するＣＰＵと、
前記ＣＰＵがアクセスして制御する複数の周辺デバイス部と、
当該ＣＰＵがアクセスしていない前記周辺デバイス部に対して自己診断テストを実行するテスト回路部と
前記ＣＰＵと前記テスト回路部とが、夫々異なる前記周辺デバイス部に同時に独立してアクセスを可能に接続するクロスバースイッチ型のバス制御部と
を備え、
前記テスト回路部は、予め設定される夫々の前記周辺デバイス部についてそのアドレスと対応付けして、前記ＣＰＵが当該周辺デバイス部をアクセスするに必要な最小の時間である第１の最小アクセス時間、テストパターンデータ、及びそのテストパターンデータでのテスト時間とを記憶したアクセス管理テーブルを備え、
前記ＣＰＵの制御バス信号から、当該ＣＰＵがアクセス中の前記周辺デバイス部のアドレスデータを取得し、アクセス中の前記周辺デバイス部の前記第１の最小アクセス時間以下の前記テスト時間の他の前記周辺デバイス部を、前記アクセス管理テーブルを参照して求めるＣＰＵアクセス判定部と、
前記ＣＰＵアクセス判定部が求めた前記周辺デバイス部のアドレスと対応する前記テストパターンデータとを通知され、当該周辺デバイス部に対して前記テストパターンデータに対応するテスト信号を送り、その応答信号を受信して、当該周辺デバイス部の故障診断をするテスト診断部と、
前記テスト診断部から送られた前記テスト信号を前記バス制御部を介して当該周辺デバイス部に送り、前記応答信号を、前記バス制御部を介して前記テスト診断部に送るバス制御信号生成部と
を備え、
テスト回路部が、アクセス状態にある周辺デバイス部を検出して、アクセス中の周辺デバイス部の第１の最小アクセス時間以下のテスト時間の非アクセス状態に置かれる他の周辺デバイス部を求め、他の周辺デバイス部の自己診断テストを実行するようにしたことを特徴とする周辺デバイス部のオンラインテスト機能を備えたＣＰＵボード。
【請求項２】
前記ＣＰＵボードは、更に、前記ＣＰＵが実行するデータや命令を一時記憶するキャッシュ部を備え、
前記ＣＰＵアクセス判定部は、更に、予め設定される前記ＣＰＵのキャッシュヒット時間を記憶し、前記ＣＰＵの制御バスのアドレス信号から、当該ＣＰＵがアクセス中の前記周辺デバイス部のアドレスデータを取得し、当該アクセス中において、前記キャッシュ部からキャッシュヒット信号を受信した場合、当該アクセス中の前記周辺デバイスの第１の最小アクセス時間に前記キャッシュヒット時間を加算して第２の最小アクセス時間を求め、
前記第２の最小アクセス時間以下の前記テスト時間の非アクセス状態に置かれる前記周辺デバイス部を、前記アクセス管理テーブルを参照して求めるようにしたことを特徴とする請求項１に記載のＣＰＵボード。
【請求項３】
前記ＣＰＵは、分岐命令処理が可能なパイプライン構成のＣＰＵとし、
前記テスト回路部のＣＰＵアクセス判定部は、前記ＣＰＵの制御バスのアドレス信号から、当該ＣＰＵがアクセス中の前記周辺デバイス部のアドレスデータを取得し、当該アクセス中において、前記ＣＰＵから分岐予測信号を受信した場合、当該アクセス中の前記周辺デバイス部の第１の最小アクセス時間に、更に、次にアクセスされる分岐先の前記周辺デバイス部の前記第１の最小アクセス時間を加算して第３の最小アクセス時間を求め、
前記第３の最小アクセス時間以下の前記テスト時間の非アクセス状態に置かれる前記周辺デバイス部を、前記アクセス管理テーブルを参照して求めるようにしたことを特徴とする請求項１に記載のＣＰＵボード。
【請求項４】
前記ＣＰＵボードは、更に、前記周辺デバイス部から送られる割り込み通知を受信して、前記ＣＰＵに割り込みを通知する割り込み処理部を備え、
前記テスト回路部のＣＰＵアクセス判定部は、前記ＣＰＵの制御バスのアドレス信号から、当該ＣＰＵがアクセス中の前記周辺デバイス部を取得し、
当該アクセス中において、前記割り込み処理部から割り込み信号を発行した割り込み発行元信号を受信した場合、当該アクセス中の前記周辺デバイスの第１の最小アクセス時間に、更に、当該割り込み通知により次にアクセスされる前記周辺デバイス部の前記第１の最小アクセス時間を加算して第４の最小アクセス時間を求め、
前記第４の最小アクセス時間以下の前記テスト時間の非アクセス状態に置かれる前記周辺デバイス部を、前記アクセス管理テーブルを参照して求めるようにしたことを特徴とする請求項１に記載のＣＰＵボード。
【請求項５】
前記ＣＰＵは、夫々の前記周辺デバイスに対して出力するＣＰＵバス制御信号を監視し、当該ＣＰＵ自身が前記周辺デバイス部にアクセスする際にアクセス開始からアクセス完了までに要するアクセス時間を計測し、前記テスト回路部に当該アクセス時間を登録し、前回のアクセス時間と今回のアクセス時間とを比較して、短い方を前記第１の最小アクセス時間として更新するようにしたことを特徴とする請求項１に記載のＣＰＵボード。
【請求項６】
ＣＰＵとその周辺デバイス部を備えるＣＰＵボードにおいて、当該ＣＰＵがアクセス中に当該周辺デバイス部の自己診断テストを実行するオンラインテスト方法であって、
前記ＣＰＵボードは、プログラムを実行するＣＰＵと、前記ＣＰＵがアクセスして制御する複数の周辺デバイス部と、当該ＣＰＵがアクセスしていない前記周辺デバイス部に対して自己診断テストを実行するテスト回路部と、前記ＣＰＵと前記テスト回路部とが、夫々異なる前記周辺デバイス部に同時アクセスを可能に接続するクロスバースイッチ型のバス制御部とを備え、
前記テスト回路部は、夫々の前記周辺デバイス部の第１の最小アクセス時間と、前記該周辺デバイス部を自己診断する夫々のテストパターンデータとそのテスト時間とを前記周辺デバイス部のアドレスに対応付けて予め記憶し、
前記ＣＰＵの制御バスのアドレス信号から、当該ＣＰＵがアクセス中の前記周辺デバイス部のアドレスデータを取得し、
前記アドレスの前記周辺デバイス部の前記テスト時間を参照して、前記第１の最小アクセス時間以下の前記テスト時間の非アクセス状態に置かれる他の前記周辺デバイス部を求め、
求めた前記周辺デバイス部に対応する前記テストパターンデータに対応するテスト信号を当該周辺デバイス部に送り、
前記テスト信号に対する応答信号を前記周辺デバイス部から受信して、当該周辺デバイス部の故障診断を実行し、
テスト回路部が、アクセス状態にある周辺デバイス部を検出して、アクセス中の周辺デバイス部の第１の最小アクセス時間以下のテスト時間の非アクセス状態に置かれる他の周辺デバイス部を求め、他の周辺デバイス部の自己診断テストを実行するようにしたことを特徴とする周辺デバイス部のオンラインテスト機能を備えたＣＰＵボードのオンラインテスト方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、周辺デバイス部のオンラインテスト機能を備えたＣＰＵボード、及びそのオンラインテスト方法に関する。
【背景技術】
【０００２】
ＣＰＵ(Central Processing Unit)は、マイクロプロセッサ、ＭＰＵ(Micro Processing Unit)、または中央演算処理装置とも呼ばれ、プログラムによって数値演算や機器制御などの演算制御を行うものである。
【０００３】
ＣＰＵの構成は、ＡＬＵ(Arithmetic Logic Unit)、データを一時記憶するキャッシュメモリ、主メモリなどの記憶装置との外部インタフェース、周辺デバイス部との入出力インタフェース、及び割込み処理部などで構成される。
【０００４】
物理的には、ＣＰＵと、チップセットと呼ばれるノースブリッジ及びサウスブリッジなど複数のＬＳＩで構成される場合と、ＣＰＵと、ノースブリッジ及びサウスブリッジと、他の周辺デバイスとがＬＳＩとして集積化されている場合とがある。
【０００５】
ここでは、ＣＰＵと、ＣＰＵとの入出力インタフェースを含む周辺デバイス部を集積化したチップセットとで構成された複数の集積回路をＣＰＵボードと呼ぶことにする。
【０００６】
このような従来のＣＰＵと周辺デバイス部を備えるＣＰＵボード１００の構成の例を図６に示す。図６において、ＣＰＵボード１００は、ＣＰＵ１と、そのキャッシュ部２と、複数の周辺デバイス部３−１〜３−ｎと、キャッシュ部２と周辺デバイス部３−１〜３−ｎとの間に設けられるバス制御部４と、複数の周辺デバイス部３−１〜３−ｎからの割り込み通知信号ｓｉ１〜ｓｉＮをＣＰＵ１に集約して送る割り込み処理部５とを備える。
【０００７】
ＣＰＵ１とキャッシュ部２とは、データバスＰ１と制御バスＰ２とで、キャッシュ部２とバス制御部４１とは、データバスＣ１と制御バスＣ２とで、また、バス制御部４１と周辺デバイス部３−１〜３−ｎとは、データバスＤ１と制御バスＤ２とで、夫々接続される。
【０００８】
各部の詳細については、キャッシュ部２は、アドレスポインタとデータを保存するキャッシュメモリで構成され、使用頻度の高いデータやプログラムを一次的に保存し、キャッシュヒットした場合はバス制御部４１へ制御バスＣ２を介してその制御バス信号を出力せずキャッシュメモリに格納されているデータを用いてＣＰＵ１に応答を返し、キャッシュヒットしなかった場合は、バス制御部４１に対してその制御バス信号を出力する。
【０００９】
また、周辺デバイス部３−１〜３−ｎは複数あり、例えば、データやプログラムを記憶する記憶装置などの周辺デバイス部３−１と、その他の入出力インタフェース部（周辺デバイス部３−２〜周辺デバイス３−４）と、外部バスインタフェース３−ｎなどで構成される。
【００１０】
このように構成された従来のＣＰＵボード１０のＣＰＵ１は、周辺デバイス部３−１の記憶装置に格納されたプログラムをリードして指定された処理を実行し、処理結果を出力し、さらに次のプログラムを実行する。また、割込み通知信号が通知された場合は、プログラムで指定された割込み処理を行う。
【００１１】
即ち、ＣＰＵ１がバス制御部４１を管理するマスタデバイスとなり、各周辺デバイス部３−１〜３−ｎにアクセスする。
【００１２】
ここで、アクセスとは、ＣＰＵ１がチップセレクト信号、アドレスバス信号、リード／ライト制御信号、及び応答信号で構成される制御バス信号を制御バスＰ２に出力し、チップセレクト信号、またはアドレスバス信号で指定された所定の周辺デバイス部３−１〜３−ｎがリードまたはライトアクセスが完了した応答信号であるバス応答信号を、制御バスＤ２を介して返信し、リード／ライトすべきデータを、データバスＤ１を用いて入出力することを言う。
【００１３】
一般に、このようなＣＰＵ１及びＣＰＵ１の周辺デバイス部３−１〜３−ｎを用いたＣＰＵボード１０を備える機器は、ＣＰＵ１が起動時に周辺デバイス部３−〜３−ｎの自己診断テストを実施して正常性を確認している。また、ＣＰＵ１が動作中においては、ウォッチドッグタイマによる故障検出や、バス信号のモニタリング等により故障を検出している。更に、モニタリングだけでは検出できない故障に対しては機器をオフラインにして、または再起動して動作確認のための自己診断テストを行なっている。
【００１４】
ところで、各周辺デバイス部３−１〜３−ｎの正常性をチェックするためには、ＣＰＵを用いて自己診断テスト用のプログラムを定期的に動作させる必要があるため、実行中のプログラムの停止と再開が容易で、ＣＰＵの周辺デバイ部の不具合箇所を即座に特定することができるテスト機能つきのプロセッサが開示されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【００１５】
【特許文献１】特許第２７０４９３５号公報
【発明の概要】
【発明が解決しようとする課題】
【００１６】
しかしながら、特許文献１に開示された方法では、プログラムの起動停止を頻繁に行う機器であれば起動時の自己診断テストで故障を検出できるが、長期に連続稼動が必要な機器の場合には、自己診断テストの機会が無いので起動後に故障が発生しても故障が検出できない問題がある。
【００１７】
また、このような機器の故障検出には、定期的に機器を停止する必要があるので、機器の稼働率が低下する問題点がある。
【００１８】
本発明は上記問題点を解決するためになされたもので、ＣＰＵが実行中のプログラムの動作に影響を与えることなく、オンライン状態で周辺デバイス部の自己診断テストを行うことが可能な、周辺デバイス部のオンラインテスト機能を備えたＣＰＵボード、及びそのオンラインテスト方法を提供することを目的とする。
【課題を解決するための手段】
【００１９】
上記目的を達成するために、本発明による周辺デバイス部のオンラインテスト機能を備えたＣＰＵボードは、プログラムを実行するＣＰＵと、前記ＣＰＵがアクセスして制御する複数の周辺デバイス部と、前記ＣＰＵがアクセス中に、当該ＣＰＵがアクセスしていない前記周辺デバイス部に対して自己診断テストを実行するテスト回路部と前記ＣＰＵと前記テスト回路部とが、夫々異なる前記周辺デバイス部に同時に独立してアクセスを可能に接続するクロスバースイッチ型のバス制御部とを備え、前記テスト回路部は、予め設定される夫々の前記周辺デバイス部についてそのアドレスと対応付けして、前記ＣＰＵが当該周辺デバイス部をアクセスするに必要な最小の時間である第１の最小アクセス時間、テストパターンデータ、及びそのテストパターンデータでのテスト時間とを記憶したアクセス管理テーブルを備え、前記ＣＰＵの制御バス信号から、当該ＣＰＵがアクセス中の前記周辺デバイス部のアドレスデータを取得し、アクセス中の前記周辺デバイス部の前記第１の最小アクセス時間以下の前記テスト時間の他の前記周辺デバイス部を、前記アクセス管理テーブルを参照して求めるＣＰＵアクセス判定部と、前記ＣＰＵアクセス判定部が求めた前記周辺デバイス部のアドレスと対応する前記テストパターンデータとを通知され、当該周辺デバイス部に対して前記テストパターンデータに対応するテスト信号を送り、その応答信号を受信して、当該周辺デバイス部の故障診断をするテスト診断部と、前記テスト診断部から送られた前記テスト信号を前記バス制御部を介して当該周辺デバイス部に送り、前記応答信号を、前記バス制御部を介して前記テスト診断部に送るバス制御信号生成部とを備え、テスト回路部が、アクセス状態にある周辺デバイス部を検出して、アクセス中の周辺デバイス部の第１の最小アクセス時間以下のテスト時間の非アクセス状態に置かれる他の周辺デバイス部を求め、他の周辺デバイス部の自己診断テストを実行するようにしたことを特徴とする。
【００２０】
上記目的を達成するために、本発明による周辺デバイス部のオンラインテスト機能を備えたＣＰＵボードのオンラインテスト方法は、ＣＰＵとその周辺デバイス部を備えるＣＰＵボードにおいて、当該ＣＰＵがアクセス中に当該周辺デバイス部の自己診断テストを実行するオンラインテスト方法であって、前記ＣＰＵボードは、プログラムを実行するＣＰＵと、前記ＣＰＵがアクセスして制御する複数の周辺デバイス部と、前記ＣＰＵがアクセス中のバスサイクルにおいて、当該ＣＰＵがアクセスしていない前記周辺デバイス部に対して自己診断テストを実行するテスト回路部と、前記ＣＰＵと前記テスト回路部とが、夫々異なる前記周辺デバイス部に同時アクセスを可能に接続するクロスバースイッチ型のバス制御部とを備え、前記テスト回路部は、夫々の前記周辺デバイス部の第１の最小アクセス時間と、前記該周辺デバイス部を自己診断する夫々のテストパターンデータとそのテスト時間とを前記周辺デバイス部のアドレスに対応付けて予め記憶し、前記ＣＰＵの制御バスのアドレス信号から、当該ＣＰＵがアクセス中の前記周辺デバイス部のアドレスデータを取得し、前記アドレスの前記周辺デバイス部の前記テスト時間を参照して、前記第１の最小アクセス時間以下の前記テスト時間の非アクセス状態に置かれる他の前記周辺デバイス部を求め、求めた前記周辺デバイス部に対応する前記テストパターンデータに対応するテスト信号を当該周辺デバイス部に送り、前記テスト信号に対する応答信号を前記周辺デバイス部から受信して、当該周辺デバイス部の故障診断を実行し、テスト回路部が、アクセス状態にある周辺デバイス部を検出して、アクセス中の周辺デバイス部の第１の最小アクセス時間以下のテスト時間の非アクセス状態に置かれる他の周辺デバイス部を求め、他の周辺デバイス部の自己診断テストを実行するようにしたことを特徴とする。
【発明の効果】
【００２１】
本発明によれば、オンライン状態で周辺デバイス部の自己診断テストを行うことが可能な、周辺デバイス部のオンラインテスト機能を備えたＣＰＵボード、及びそのオンラインテスト方法を提供することができる。
【図面の簡単な説明】
【００２２】
【図１】本発明のＣＰＵボードの構成図。
【図２】本発明のテスト回路部の構成図。
【図３】本発明のＣＰＵアクセス判定部の動作を説明する図。
【図４】本発明のバス制御部の動作を説明する図。
【図５】本発明のテスト回路部の動作を説明するタイムチャート。
【図６】従来のＣＰＵボードの構成図。
【発明を実施するための形態】
【００２３】
以下、図１を参照して、本発明のＣＰＵボード１０の実施例について説明する。この実施例１の各部について、図６に示す従来の実施例のＣＰＵボード１００と同一部分は同一符号で示す。図１に示す本実施例の構成が、図６に示す従来のＣＰＵボードの実施例と異なる点は、テスト回路部５を備え、ＣＰＵ１とテスト回路部５とがバスマスタデバイスとして、複数の周辺デバイス部３−１〜３−ｎを同時にアクセスできるクロスバースイッチ型のバス制御部４を備える。
【００２４】
そして、テスト回路部５が、ＣＰＵ１が周辺デバイス部３−１〜３−ｎのいずれかをアクセス中に、非アクセス中の他の周辺デバイス部３−１〜３−ｎの自己診断テストを実行するようにしたことにある。
【００２５】
先ず、図１を参照してその構成から説明する。ＣＰＵボード１０は、プログラムを実行するＣＰＵ１と、ＣＰＵ１のメインメモリと入出力部とを含む複数の周辺デバイス部３−１〜３―ｎと、ＣＰＵ１がアクセスしていない周辺デバイス部３−１〜３ｎに対して自己診断テストを実行するテスト回路部５と、ＣＰＵ１とテスト回路部５とが、夫々異なる周辺デバイス部３−１〜３−ｎに同時に独立してアクセスを可能に接続するクロスバースイッチ型のバス制御部４とを備える。
【００２６】
更に、各周辺デバイス部３−１〜３−ｎからの割込み通知信号ｓｉ１〜ｓｉｎを出力し、割込み通知信号ｓｉ１〜ｓｉｎを割込み通知信号ｓｉＰとして集約してＣＰＵ１へ出力する割込み処理部６とを備える。
【００２７】
この割込み処理部６は、割り込み通知信号ｓｉ１〜ｓｉｎを送った周辺デバイス部３−１〜３−ｎを示す割り込み発行元信号ｓｉＤをテスト回路部５に通知する。尚、割込み受付の優先度処理を行う機能有する構成でも良い。
【００２８】
また、ＣＰＵボード１０のＣＰＵ１は、データの転送効率を向上させるための記憶階層である高速小容量メモリのキャッシュ部２を備える構成であっても良い。
【００２９】
このように構成されたＣＰＵボード１は、ＣＰＵ１とキャッシュ部２とはＣＰＵバス１、キャッシュ部２とバス制御部４とはＣＰＵバス２、及びバス制御部４とテスト回路部５とはテスト回路バス５Ｔで、夫々接続される。
【００３０】
そして、夫々のバスは、データバスＰ１（Ｃ１、Ｄ１、Ｔ１）と、制御バスＰ２（Ｃ２、Ｄ２、Ｔ２）とを備え、これらの制御バスＰ２（Ｃ２、Ｄ２、Ｔ２）には、ＣＰＵ１とテスト回路部５とが、周辺デバイス部３−１〜３−ｎとの間で授受するデータ以外の制御信号、周辺デバイス部３−１〜３−ｎのアドレス信号、周辺デバイス部のメモリから書き込み／読み出しするためのチップセレクト信号及びリード／ライト信号、周辺デバイス部３−１〜３−ｎがリード／ライトかアクセスの完了を応答信号として返す応答バス信号が含まれる。
【００３１】
次に、各部の詳細構成について説明する。ＣＰＵ１は、プログラム実行中に分岐予測を行い、予測した結果から次のバスサイクルでアクセスする可能性のある周辺デバイス部３−１〜３−ｎを予測するパイプライン構成のものであっても良い。
【００３２】
この場合、分岐予測結果からＣＰＵ１が次のバスサイクルでアクセスする可能性のある周辺デバイス部３−１〜３−ｎのアドレスを分岐予測信号ｓｂとして出力する機能を有する。
【００３３】
また、キャッシュ部２を備える構成では、ＣＰＵ１が命令処理に必要はデータがキャッシュ部２に存在する場合、このキャッシュ部２から短時間で読み出すキャッシュヒットが可能で、キャッシュヒットした場合の信号をキャッシュヒット信号ｓＣａとして出力する。
【００３４】
次に、ＣＰＵ１とテスト回路部５が各周辺デバイス部３−１〜３−ｎをリード／ライトアクセスする場合には、ＣＰＵ１とテスト回路部５がバスマスタデバイスを、複数の各周辺デバイス部３−１〜３−ｎがバススレーブデバイスを構成する。
【００３５】
この場合、バス制御部４は、バスマスタデバイスがＣＰＵ１の場合の制御信号は、制御バス信号ｓＣ２で、バスマスタデバイスがテスト回路部５の場合の制御信号は、制御バス信号ｓＴ２として出力し、アクセスすべきスレーブデバイスを独立に選択し、選択したスレーブデバイスのみに制御信号を出力する。
【００３６】
同時に、選択されたスレーブデバイスがＣＰＵ１へ出力する応答バス信号、またはテスト回路部５へ出力する応答バス信号を選択して夫々の制御バスを介してバスマスタ側へ出力する。
【００３７】
また、ライトアクセス時はライトデータをスレーブデバイスに出力し、リードアクセス時は選択された周辺デバイス部３−１〜３−ｎが出力するリードデータを選択して夫々の制御バスを介してバスマスタ側へ出力する。
【００３８】
尚、クロスバースイッチ型のバス制御部４の構成は、図２に示すように、複数のマスタデバイスと複数の周辺デバイス部３−１〜３−ｎとで構成され、何れかのマスタデバイスが、ある周辺デバイス部３−１〜３−ｎにアクセスしている時、当該マスタデバイス以外の他のマスタデバイスが当該周辺デバイス部以外の他の周辺デバイスに並列に(同時の、独立によりもこの方がスマート)アクセスすることが可能な接続形態のバス構成であれば良い。
【００３９】
次に、図３を参照して、テスト回路部５の詳細構成について説明する。テスト回路部５は、図３（ｂ）に示すような、予め設定される夫々の周辺デバイス部３−１〜３−ｎについて、そのアドレスと、ＣＰＵ１が周辺デバイス部３−１〜３−ｎをアクセスするに必要な最小の第１の最小アクセス時間、テストパターンデータ及びそのテストパターンデータのテスト時間とを対応付けて記憶したアクセス管理テーブルＴａを備える。
【００４０】
ＣＰＵバス２の制御バス信号ｓＣ２、ＣＰＵ１の分岐予測信号ｓｂ、及びキャッシュ部２のキャッシュヒット信号ｓＣａから、アクセス中の周辺デバイス部３−１〜３−ｎのアクセス時間以下で、予め設定される当該周辺デバイス部３−１〜３−ｎのテストパターンデータによるテスト時間でテストが可能な周辺デバイス部３−１〜３−ｎを求めるＣＰＵアクセス判定部５ａを備える。
【００４１】
更に、ＣＰＵアクセス判定部５ａから、ＣＰＵアクセス判定部５ａが求めた周辺デバイス部３−１〜３−ｎのアドレスと対応するテストパターンデータとを通知され、周辺デバイス部に対して３−１〜３−ｎテストパターンデータを送り、その応答データを受信して、周辺デバイス部３−１〜３−ｎの故障診断を行うテスト診断部５ｂと、テスト診断部５ｂから送られたテストパターンデータをテスト回路バス５Ｔ及びバス制御部４を介して当該周辺デバイス部３−１〜３−ｎに送り、応答バス信号をバス制御部４及びテスト回路バス５Ｔを介してテスト診断部５ｂに送るバス制御信号生成部５ｃとを備える。
【００４２】
このバス制御信号生成部５ｃは、バスマスタとしてデータバス信号ｓＴ１と制御バス信号ｓＴ２とを入出力し、各周辺デバイス部３−１〜３−ｎに対してテスト信号を、ＣＰＵアクセス判定部５ａのアクセス管理テーブルＴａからテストパターンデータを受信して、対応するテスト信号を生成してデータバスｃＴ１に出力する。
【００４３】
さらに、データバスｓＴ１から送られたデータ、及び制御バス信号ｓＴ２の応答バス信号を解析して故障の有無を判定する。テストパターンデータとその対応するテスト信号は、テスト可能な最小アクセス時間内で使用できるものであれば良く、各周辺デバイス部３−１〜３−ｎによって異なる信号が生成される。
【００４４】
次に、テスト診断部５ｂは、テストパターンデータに対する応答バス信号を受信して、予め定められる故障診断に基づく判定を行って、その結果を周辺デバイス故障通知信号ｓｅＤとして、図示しない外部の監視装置とＣＰＵ１とに送る。
【００４５】
ところで、アクセス管理テーブルＴａに予め設定されるＣＰＵ１の第１の最小アクセス時間は、ＣＰＵ１が各周辺デバイス部３−１〜３−ｎに対してリードまたはライトアクセスを開始し、リードまたはライトが完了し該当の周辺デバイス部３１−〜３−ｎが応答を返信するまでの最小のアクセス時間を保存するが、この時間を統計的に計測して最小アクセス時間として算出するようにすることも可能である。
【００４６】
これは、チップセットや、装置の完成後にユーザが独自で周辺デバイス部３−１〜３−ｎを増設した時、または、チップセットの外部の接続相手との相関でアクセス時間が変わり、最小アクセス時間が予め求められない場合には、アクセスの平均時間や標準偏差を設定することでＣＰＵ１がアクセス中に、テスト回路部５でのテスト時間が増加できる効果がある。
【００４７】
また、最小アクセス時間が予め判っている場合であっても、システム運用実績の統計から実際に起こったアクセスの最小時間、あるいはアクセスの平均時間や標準偏差を算出して設定することで、テスト回路部５でのテスト時間が増加できる効果がある。
【００４８】
また、アクセス管理テーブルＴａには、ＣＰＵ１がキャッシュヒットした場合の最小アクセス時間を保存するようにしておく。この最小アクセス時間は、周辺デバイス部３−１〜３−ｎの回路特性およびキャッシュメモリの回路特性から、予め求められるので、この値を登録しておく。
【００４９】
次に、このように構成されたＣＰＵアクセス判定部５ａの判定動作について、図４を参照して説明する。
【００５０】
図４（ａ）は、アクセス中の周辺デバイス部３−１〜３−ｎから、テスト可能な周辺デバイス部３−１〜３−ｎを求める場合の判定動作の例を図示したものでる。
【００５１】
ＣＰＵアクセス判定部５ａは、図４に示すように、夫々の周辺デバイス部３−１〜３−ｎのアドレスに対応付けして予めアクセス管理テーブルＴａの第１の最小アクセス時間に対応して、処理するデータを記憶するレジスタを少なくとも４つ備える。
【００５２】
夫々のレジスタは、制御バス信号ｓＣ２からＣＰＵ１がアクセス中の周辺デバイス部３−１〜３−ｎを対応付けて記憶するレジスタＲＥＧ１、分岐予測信号ｓｂからＣＰＵ１が次のバスサイクルでアクセスする可能性のある周辺デバイス部３−１〜３−ｎ、及び割り込み発行元信号ｓｉＤからＣＰＵ１が次のバスサイクルでアクセスする周辺デバイス部３−１〜３−ｎを対応付けて記憶するレジスタＲＥＧ２、キャッシュヒット信号ｓＣａからＣＰＵ１が次のバスサイクルではアクセスしない周辺デバイス部３−１〜３−ｎを対応付けて記憶するレジスタＲＥＧ３、そして、対応するデータから求めたテスト可能な周辺デバイス部３−１〜３−ｎを記憶するレジスタＲＥＧ４を備える。
【００５３】
このように構成されたＣＰＵアクセス判定部５は、例えば、図５（ｂ）に示すように、制御バス信号ｓＣ２からＣＰＵ１がアクセス中の周辺デバイス部３−２のアドレスを検出し、このアドレスをレジスタＲＥＧ１に記憶し、分岐予測信号ｓｂまたは割込み発行元信号ｓｉＤからＣＰＵ１が次にアクセスする周辺デバイス部３−３のアドレスデータレジスタＲＥＧ２に記憶する。
【００５４】
そして、ＣＰＵアクセス判定部５は、アクセス管理テーブルＴａを参照して、アクセス中の周辺デバイス部３−２の最小アクセス時間３ｔと次のバスサイクルでアクセスする周辺デバイス部３−３の最小アクセス時間８ｔとから、アクセス可能時間は１１ｔと判定し、テスト時間が１１ｔ以下のテスト時間が１０ｔの周辺デバイス部３−１を、このバスサイクルと次のバスサイクルとでアクセス可能な周辺デバイス部３−１を求めＲＥＧ４に記憶する。
【００５５】
次に、このように構成されたＣＰＵボード１０について、ＣＰＵ１が周辺デバイス部３−１〜３−ｎをアクセス中に、テスト回路部５がテスト可能な周辺デバイス部３−１〜３−ｎを選択して実行する自己診断テストの動作について、図５のタイムチャートを参照して説明する。
【００５６】
図５（ａ）は、ＣＰＵアクセス判定部５ａが、ＣＰＵ１が周辺デバイス部３−１をアクセス中において、キャッシュヒット信号ｓＣａ、分岐予測信号ｓｂ、及び割り込み発行元信号ｓｉＤのいずれの信号も受信せず、制御バスＣ２からアクセス中の周辺デバイス部３−１を検出し、予め設定されたアクセス管理テーブルＴａを参照して周辺デバイス部３−１の最小アクセス時間を読み出した状態を示している。
【００５７】
更に、アクセス管理テーブルＴａを参照して、この最小アクセス時間よりも短いテスト時間の周辺デバイス部３−２を判定してテスト診断部５ｂに送り、テスト診断部５ｂでは判定された周辺デバイス部３−２のテストパターンデータに対応するテスト信号を、バス制御部５Ｔを介して周辺デバイス部３−２に送信し、応答バス信号を受信して故障診断するタイムチャートを示している。
【００５８】
このように、構成されたＣＰＵボード１０によれば、ＣＰＵ１が或る周辺デバイス部３−１〜３−ｎをアクセスしている最中に、テスト回路部５が他の周辺デバイス部３−１〜３−ｎに予め設定されたテスト信号を送り、自己診断テストを実行するので、ＣＰＵ１によるプログラムの実行を妨げることなく周辺デバイス部３−１〜３−ｎのオンラインテストが実行できる。
【００５９】
図５（ｂ）は、ＣＰＵアクセス判定部５ａが、ＣＰＵ１が周辺デバイス部３−３をアクセス中において、キャッシュヒット信号ｓＣａを受信し、制御バスＣ２からアクセス中の周辺デバイス部３−３を検出し、予め設定されたアクセス管理テーブルを参照して周辺デバイス部３−３の第１の最小アクセス時間を読み出した状態を示している。
【００６０】
更に、アクセス管理テーブルＴａを参照して、この第１の最小アクセス時間に加えて、このアクセス管理テーブルＴａに予め登録されたキャッシュヒット時間を加算した値を第２の最小アクセス時間とし、第２の最小アクセス時間よりも短いテスト時間の周辺デバイス部３−４を判定してテスト診断部５ｂに送り、テスト診断部５ｂでは判定された周辺デバイス部３−４のテストパターンデータに対応するテスト信号を、バス制御部５Ｔを介して周辺デバイス部３−２に送信するタイムチャートを示している。
【００６１】
キャッシュ部２は、主にアクセス時間の長い外部のメモリの内容を一時保管し、短いサイクルでアクセスすることが目的なので、キャッシュアクセス時間よりも短い外部のメモリのテストを実行することは困難であるが、多段のパイプライン構成でキャッシュ部２に連続ヒットする場合やこの第１の最小アクセス時間にキャッシュヒット時間を加算することでテスト可能な時間が増すので、他の周辺デバイス部の選択範囲が広くなる効果がある。
【００６２】
図５（ｃ）は、ＣＰＵアクセス判定部５ａが、ＣＰＵ１が周辺デバイス部３−２をアクセス中において、周辺デバイス部３−３への分岐予測信号ｓｂを受信し、制御バスＣ２からアクセス中の周辺デバイス部３−２を検出し、次のバスサイクルでアクセスされる周辺デバイス部３−３の最小アクセス時間を読み出した状態を示している。
【００６３】
更に、アクセス管理テーブルを参照して、この周辺デバイス部３−２の第１の最小アクセス時間と、次のバスサイクルでアクセスされる分岐先の周辺デバイス部３−３の第１の最小アクセス時間を加算した値を第３の最小アクセス時間とし、第３の最小アクセス時間よりも短いテスト時間の周辺デバイス部３−１を判定してテスト診断部５ｂに送り、テスト診断部５ｂでは判定された周辺デバイス部３−１のテストパターンデータに対応するテスト信号を、バス制御部５Ｔを介して周辺デバイス部３−２に送信するタイムチャートを示している。
【００６４】
詳細には、分岐予測信号ｓｂの発生から周辺デバイス部３−３のアクセス開始までの遅れ時間を加味してアクセス可能な時間とする必要がある。また、アクセス中の周辺デバイス部３−２の第１の最小アクセス時間と独立に周辺デバイス部３−３に対するアクセス可能時間を求め複数の自己診断テストをすることも可能である。
【００６５】
この分岐予測信号ｓｂは、ＣＰＵ１の構成がパイプライン構成であることが必要であるが、多段のパイプライン構成でキャッシュに連続ヒットする場合には、テスト可能な他の周辺デバイス部の選択範囲が広くなる効果がある。
【００６６】
図５（ｄ）は、ＣＰＵアクセス判定部５ａが、ＣＰＵ１が周辺デバイス部３−３をアクセス中において、周辺デバイス部３−１への割り込み元発生信号ｓｉＤを受信し、制御バスＣ２からアクセス中の周辺デバイス部３−３を検出し、次のバスサイクルでアクセスされる周辺デバイス部３−３の最小アクセス時間を読み出した状態を示している。
【００６７】
更に、アクセス管理テーブルＴａを参照して、この周辺デバイス部３−３の第１の最小アクセス時間と、次のバスサイクルでアクセスされる割り込み元の周辺デバイス部３−１の第１の最小アクセス時間とを加算した値を第４の最小アクセス時間とし、第４の最小アクセス時間よりも短いテスト時間の周辺デバイス部３−９を判定してテスト診断部５ｂに送り、テスト診断部５ｂでは、判定された周辺デバイス部３−９のテストパターンデータに対応するテスト信号を、バス制御部５Ｔを介して周辺デバイス部３−９に送信するタイムチャートを示している。
【００６８】
この場合、アクセス中の周辺デバイス部３−３の第１の最小加算時間と、次のバスサイクルでＣＰＵ１がアクセスする割り込み元の周辺デバイス部３−１の第１の最小アクセス時間とを加算した第４の最小アクセス時間としたが、このテスト可能時間に対する自己診断テストは１つ、または複数の周辺デバイス部３−１〜３−ｎに対して実行するように構成することも可能である。
【００６９】
本発明は上述したような実施例に何ら限定されるものではなく、テスト回路部５は、ＣＰＵ１のアクセス予測を監視し、ＣＰＵ１が次にアクセスしない周辺デバイス部３−１〜３−ｎに対してテストを行う周辺デバイス部３−１〜３−ｎを求め、求めた周辺デバイス部３−１〜３−ｎに対してテストを行うものであれば良く、また、自己診断テストのテストパターンとそのテスト機能は、テスト可能な時間により適宜変更しても良く、本発明の主旨を逸脱しない範囲で種々変形して実施することができる。
【符号の説明】
【００７０】
１  チップセット
２  キャッシュ部
３、３−１、３−２〜３−３ｎ−１  周辺デバイス部
３ｎ−１  外部バスインタフェース部
４、４１  バス制御部
５  テスト回路部
５ａ  アクセス判定部
５ｂ  テスト診断部
５ｃ  バス制御信号生成部
６  割り込み処理部
３ａ１、３ｂ１、３ｃ１  同期送信設定部
５  ＣＰＵ
６  メモリ
１０、１００  ＣＰＵボード
【図１】
2011170691.tif 000003
【図２】
2011170691.tif 000004
【図３】
2011170691.tif 000005
【図４】
2011170691.tif 000006
【図５】
2011170691.tif 000007
【図６】
2011170691.tif 000008