(57)【要約】【課題】仕様変更及び／或いはインターフェース回路に設計変更があった場合でも、迅速にテスト項目の変更が可能なコンピュータシステムを提供する。【解決手段】パーソナルコンピュータ１と外部装置２とがケーブル３で接続されたコンピュータシステムにおいて、外部装置２は、コネクタ２１と、ユーザ回路２３と、コネクタ２１を介してパーソナルコンピュータ１に接続し、かつユーザ回路２３と接続するインターフェース回路２２とから成り、インターフェース回路２２のユニバーサル・シリアル・バス規格に従った機能テストに際し、所定の様式の電子データをテスト項目に変換し、これをテストベンチ２４に組み込む。【選択図】      図２
2004220534.tif 000002
【特許請求の範囲】
【請求項１】
パーソナルコンピュータと外部装置とがケーブルで接続されたコンピュータシステムにおいて、前記外部装置は、コネクタ、ユーザ回路及びコネクタを介してパーソナルコンピュータに接続し、且つ前記ユーザ回路と接続するインターフェース回路とから成り、前記インターフェース回路のユニバーサル・シリアル・バス規格に従った機能テストに際し、所定の様式の電子データをテスト項目に変換し、該テスト項目をテストベンチに組み込むことを特徴とするコンピュータシステム。
【請求項２】
請求項１記載において、所定の様式を少なくとも２つ以上有することを特徴とするコンピュータシステム。
【請求項３】
パーソナルコンピュータと外部装置とがケーブルで接続され、前記外部装置はインターフェース回路を有するコンピュータシステムにおけるインターフェース回路のユニバーサル・シリアル・バス規格に従った機能テスト方法により所定の様式の電子データをテスト項目に変換し、該テスト項目をテストベンチに組み込むことを特徴とするインターフェース回路のテスト方法。
【請求項４】
請求項３記載において、所定の様式を少なくとも２つ以上有することを特徴とするインターフェース回路のテスト方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンピュータシステムに関するものであり、さらに詳細には、コンピュータと周辺機器（外部装置）を接続するユニバーサル・シリアル・バスのインターフェース回路のテスト技術に関するものである。
【０００２】
【従来の技術】
コンピュータは、集中型で大規模なシステムから、個人でも利用可能な分散型のシステムに変化してきた。いわゆるパーソナルコンピュータである。パーソナルコンピュータ出現直後は、機能拡張を実現するには専門的な知識が求められた。例えば、インターフェースカードなどの内蔵機器を取り付ける際には、ＩＲＱが衝突しないように、Ｉ／Ｏアドレス及びＤＭＡＩアドレスを設定しなければならなかった。
しかしながら、各種機器は非常に高価で、頻繁に移動させる必要もなく、パーソナルコンピュータ１台あたりに割当て可能なＩ／ＯアドレスやＤＭＡＩアドレスの数が少なかったため、ある程度の問題は存在していたものの、何とか対応できていた。
ところが近年、コンピュータ技術が急速に進歩し、内蔵機器を取り付ける方式も、Ｉ／Ｏアドレス及びＤＭＡＩアドレスをマニュアルで設定していた方式に代わり、システムが自動で割当てる方式に進化してきた。しかし、内蔵機器を取り付け或いは取り外す場合には、依然として、システムの電源を一旦落とし、カバーを外し、取り付け或いは取り外しを行い、再度カバーを付け、電源を投入する、というステップを踏む必要がある。
しかし、内蔵機器の種類及び数は膨大なものとなってきており、かつ装置自体のポータビリティも上がってきている。１部門あるいは１家族で２台以上のパーソナルコンピュータを所有するケースも珍しくなく、１台の機器を複数のパーソナルコンピュータで使いたいというケースが増えている（この場合は外付け機器となる）。
【０００３】
このような要求に応えるべく、プラグアンドプレイ機器が提案された。これは、パーソナルコンピュータ及び／或いは機器に電源が投入されている状態で着脱が可能となっている。さらに、インターフェース部分をホスト（パーソナルコンピュータ）が一定時間間隔で監視し、機器が接続されたとき、その機器とホストが通信を行って機器の情報を読み取り、自動的に利用が可能となる。機器が非接続されたときは、ホストが非接続状態であることを自動的に認識する。
このように、ハードウエアに関する知識が特別なくても、ユーザは各種機器を使うことができる。上記の機器のシステムに関する規格の一つとして、最近注目されているのがユニバーサル・シリアル・バス、いわゆるＵＳＢである。関連する文献として、特許文献１にＵＳＢシステムのテスト方法が開示されている。
【特許文献１】特開２０００−２１５１１６公報
【０００４】
【発明が解決しようとする課題】
このように、ユーザ側から見ればハードウエアに関する特別な知識が無くても各種機器を使うことができるようになった反面、これら装置を設計、製作する側は、ホストと機器の通信に関連する処理を自動で行う機能を付加することが要求されるようになった。ＵＳＢ規格では、装置を接続した直後にホスト（パーソナルコンピュータ）との間で行われる初期の通信、或いは、休眠状態への遷移及び復帰などに、仕様で定められたシーケンスが適用される。
しかしながら、実際の装置は必ずしも仕様に定められた通りに設計されるわけではなく、仕様にあいまいな部分があれば、製作者の都合が良いように決められてしまったり、仕様に対してマージンを取る設計が行われてしまうなど、厳密に見て仕様とは異なる動作をする装置が一般に提供されてしまうという問題があった。
また、仕様に定められた動作を実現させるための具体的な回路は、設計仕様に基づき、回路設計者が考えるものである。しかしながら、システム或いはソフトウエア側の都合による設計変更、仕様変更などがあった場合、それが他の部分の動作に悪影響を与えないことをテストベンチを用いて再度確認する必要がある。たとえ１箇所であっても、関連する関数は全て変更が必要となる。従来は手作業で変更を行っていたため時間がかかり、なおかつ、テストベンチ上でバグが発生する確率が高くなってしまうという問題があった。
本発明は、仕様変更及び／或いはインターフェース回路に設計変更があった場合でも、迅速にテスト項目の変更が可能なコンピュータシステム及びインターフェース回路のテスト方法を提供することを目的とする。
【０００５】
【課題を解決するための手段】
上記目的を達成するために、請求項１記載の発明は、パーソナルコンピュータと外部装置とがケーブルで接続されたコンピュータシステムにおいて、前記外部装置は、コネクタ、ユーザ回路及びコネクタを介してパーソナルコンピュータに接続し、且つ前記ユーザ回路と接続するインターフェース回路とから成り、前記インターフェース回路のユニバーサル・シリアル・バス規格に従った機能テストに際し、所定の様式の電子データをテスト項目に変換し、該テスト項目をテストベンチに組み込むことを特徴とする。
請求項２記載の発明は、請求項１記載において、所定の様式を少なくとも２つ以上有するコンピュータシステムを主要な特徴とする。
請求項３記載の発明は、パーソナルコンピュータと外部装置とがケーブルで接続され、前記外部装置はインターフェース回路を有するコンピュータシステムにおけるインターフェース回路のユニバーサル・シリアル・バス規格に従った機能テスト方法により所定の様式の電子データをテスト項目に変換し、該テスト項目をテストベンチに組み込むことを特徴とする。
請求項４記載の発明は、請求項３記載において、所定の様式を少なくとも２つ以上有するインターフェース回路のテスト方法を主要な特徴とする。
【０００６】
【発明の実施の形態】
以下、図面により本発明の実施の形態を詳細に説明する。図１は本発明の実施の形態に係るコンピュータシステムの外観図である。本コンピュータシステムは、パーソナルコンピュータ（ＰＣ）１、外部装置（ＵＳＢ外部装置）２、ケーブル３から成る。ケーブル３の両端には第１コネクタ（ＰＣ側）１１及び第２コネクタ（外部装置側）２１が装着されている。
図に示すように、パーソナルコンピュータ１と外部装置２を接続するのに、ケーブル３が１本だけで済む。但し、パーソナルコンピュータ１側には、外部装置２が接続されたことを認識させるのに必要なデバイスドライバの組み込みが予め必要となる。
図２は図１に示す外部装置の構成図である。本外部装置２は、第２コネクタ２１、インターフェース回路（Ｉ／Ｆ回路）２２及びユーザ回路（ＵＳＥＲ回路）２３から成る。ケーブル３がパーソナルコンピュータ１と接続されたことを第２コネクタ２１を通じて検出すると、必要な手順を踏んで信号をユーザ回路２３に出力する。
ユーザ回路２３は、自分自身（外部装置２）の情報をパーソナルコンピュータ１に送信する。これにより、パーソナルコンピュータ１は新たに接続された外部装置２の機能、性能を取り込み、アドレス等を割り振り、内部にそれらの情報を保持する。外部装置２も必要な情報を内部に保持する。この状態（認識された状態）になって初めてデータのやり取りが可能となる。
図３はインターフェース回路のテストの概念を示す図である。インターフェース回路（ＬＳＩ）２２の入出力（Ｉ／Ｆ１及びＩ／Ｆ２）を通して信号のやり取りを行い、その機能／性能をテストする。一般的に、テストを実行するためのプログラムをテストベンチ２４と呼ぶ。
【０００７】
図４は回路設計仕様書のフォーマットの一例を示し、１０個のパラメータａ〜ｊで構成される。ａはＵＳＢ規格における動作スピードを示し、本例ではＨｉｇｈＳｐｅｅｄ（４８０Ｍｂｐｓ）を指定している。ｂはＵＳＢの状態を示し、本例では上側がデフォルト状態、下側がコンフィギュアド状態を指定している。ｃはリクエスト名を示し、本例ではＧｅｔＤｅｓｃｒｉｐｔｏｒＤｅｃｖｉｃｅ及びＳｅｔＤｅｓｃｒｉｐｔｏｒＤｅｖｉｃｅの場合を指定している。
ｄはインターフェース回路２２がリクエストに対し自動で処理可能か、もしくはマニュアル処理が必要であるかを示している。ｅはインターフェース回路２２がそのリクエストに対し応答可能かどうかを示し、“Ｙ”であれば応答不可（リクエストエラー処理される）であることを示している。ｆはリクエストを受け取った際、インターフェース回路２２でセットされる割り込みステータスレジスタ名を示している。
ｇはデータ送受信が完了した際、インターフェース回路２２でセットされる割り込みステータスレジスタ名を示している。ｈはステータスステージに遷移した際、インターフェース回路２２でセットされる割り込みステータスレジスタ名を示している。ｉはステータスステージが完了した際、インターフェース回路２２でセットされる割り込みステータスレジスタ名を示している。ｊは自動生成された一連の処理にコメントとして付加される。
【０００８】
図５は本発明のコンピュータシステムにおける処理フローチャートである。リクエスト応答自動生成エンジンでは大きく分けて６種類の処理が自動的に行われる。まずパラメータａ、ｂから、その処理が実行されるテストベンチ２４内での動作スピード及びＵＳＢ状態が決定される（Ｓ１）。
次に、８バイトのデコードデータが生成される（Ｓ２）。この際は、リクエスト名に対応したデータ表から自動生成すれば８バイトデータに変更があった場合、データ表の変更を実施すれば即座にテストベンチ２４に変更が反映されるので尚良い。
次に、そのリクエストに対して自動応答可能かどうかがｄから決定される（Ｓ３）。Ａ（Ａｕｔｏ）のみの場合は割り込みが発生しないので、テストベンチ２４は割り込み処理を実行する必要は無い。Ｍ（Ｍａｎｕａｌ）のみの場合は所定のシーケンスに従って割り込みが発生するので、割り込み及びｆ、ｇ、ｈ、ｉに示した割り込みステータスを順に処理する部分を自動生成する。
Ａ／Ｍ（自動／非自動両対応）の場合は上記を２つとも生成する（Ｓ４、Ｓ５）。最後に、ｊに記された備考をコメントとして付加する（Ｓ６）。以上から自動生成された関数をテストベンチ２４に組み込み、テストを実施する。
本発明によれば、リクエストに対する応答の変更や割り込みステータスレジスタ名の変更、或いはシーケンスに変更があった場合でも、リクエスト応答自動生成エンジンにより、迅速でかつ正確にテストを実施することができる。
また本発明によれば、仕様変更が発生した場合でも、即座にテストベンチ２４に反映させてテストしているので、正確かつ迅速にテストされたインターフェース回路２２及びこのインターフェース回路２２を用いた通信装置を得ることができる。
【０００９】
【発明の効果】
以上説明したように、本発明によれば、仕様変更が発生した場合でも、即座にテストベンチに反映させてインターフェース回路をテストしているので、正確かつ迅速にインターフェース回路をテストすることができる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係るコンピュータシステムの外観図である。
【図２】図１に示す外部装置の構成図である。
【図３】インターフェース回路のテストの概念を示す図である。
【図４】回路設計仕様書のフォーマットを示す図である。
【図５】本発明のコンピュータシステムにおける処理フローチャートである。
【符号の説明】
１  パーソナルコンピュータ
２  外部装置
３  ケーブル
２１  第２コネクタ
２２  インターフェース回路
２３  ユーザ回路
２４  テストベンチ
【図１】
2004220534.tif 000003
【図２】
2004220534.tif 000004
【図３】
2004220534.tif 000005
【図４】
2004220534.tif 000006
【図５】
2004220534.tif 000007