(57)【要約】【課題】  同時に複数のデータ記憶装置をテスト装置に接続してその動作テストする際のテスト時間を短縮化することができるデータ記憶装置のテスト方法及びデータ記憶装置の製造方法を提供する。【解決手段】  テスト装置１に接続された複数のＨＤＤ８１〜８４がテスト装置１からのコマンドを受け取り実行することでそれぞれの動作テストをする場合、テスト装置１と例えばデータ記憶装置ＨＤＤ８１とが動作テストを実行している間であってテスト装置１とＨＤＤ８１とのやり取りを休止する待機時間に、テスト装置１が他のＨＤＤに対して動作テストを実行する。待機時間は、ＨＤＤ８１がコマンド受付可能となるまでの間、データの転送が終了するまでの間、又は次のコマンド受付可能となるまでの間などであり、テスト装置１は、この待機時間に例えばＨＤＤ８２がコマンド受付可能な場合はコマンドを発行し、データ転送可能な場合はデータを転送する【選択図】  図３
2007066126.tif 000002
【特許請求の範囲】
【請求項１】
テスト装置に接続された複数のデータ記憶装置が前記テスト装置からのコマンドを受け取り実行することでそれぞれの動作テストをするデータ記憶装置のテスト方法であって、
前記テスト装置と前記複数のデータ記憶装置のうち一のデータ記憶装置とが前記動作テストを実行している間であって前記テスト装置と前記一のデータ記憶装置とのやり取りを休止する待機時間に、前記テスト装置が前記複数のデータ記憶装置のうちの他のデータ記憶装置に対して前記動作テストを実行するデータ記憶装置のテスト方法。
【請求項２】
前記待機時間は、前記一のデータ記憶装置が一のコマンドを受け取り、当該コマンドの処理を終了しその終了通知を行なうまでのコマンド実行期間に含まれる
ことを特徴とする請求項１記載のデータ記憶装置のテスト方法。
【請求項３】
前記待機期間は、前記一のデータ記憶装置が一のコマンドの実行を終了してから次のコマンドを受け付け可能になるまでの間である
ことを特徴とする請求項１記載のデータ記憶装置のテスト方法。
【請求項４】
前記動作テストは、１又は複数のコマンドからなる複数のテスト工程からなり、
前記待機時間は、一のテスト工程においてテストとして指定されるデータ記憶装置の休止時間である
ことを特徴とする請求項１記載のデータ記憶装置のテスト方法。
【請求項５】
前記動作テストは、複数のテスト工程からなり、
ホスト装置に複数の前記テスト装置が接続され、前記各テスト装置に複数のデータ記憶装置が接続され、各データ記憶装置の一のテスト工程が終了する毎にその実行結果が前記テスト装置からホスト装置へ送られるものであって、
前記待機時間は、一のテスト装置に接続された一のデータ記憶装置が一のテスト工程を終了し、当該一のテスト装置がその実行結果を前記ホスト装置へ送るために前記ホスト装置と通信する際の、当該通信が可能になるまでの間であり、
当該待機時間に、前記一のテスト装置に接続され一のテスト工程が終了していない他のデータ記憶装置の動作テストを実行する
ことを特徴とする請求項１記載のデータ記憶装置のテスト方法。
【請求項６】
前記テスト装置は、前記待機時間に他のデータ記憶装置に対してコマンドを発行する
ことを特徴とする請求項１乃至５のいずれか１項記載のデータ記憶装置のテスト方法。
【請求項７】
前記テスト装置は、前記待機時間に他のデータ記憶装置に対してコマンドを処理するために必要なデータを転送する
ことを特徴とする請求項１乃至５のいずれか１項記載のデータ記憶装置のテスト方法。
【請求項８】
前記テスト装置は、前記一のデータ記憶装置に対し、コマンドを受付可能か否か確認し、コマンド受付可能な場合にコマンドを発行し、当該一のデータ記憶装置が当該コマンドを実行してその処理を終了したか否かを確認し、次のコマンドを受付可能か否か確認し、当該次のコマンドが受付可能となったときに次のコマンドを発行することを繰り返すことでテストを実行するものであって、
前記待機時間は、前記コマンド受付可能となるまでの間、又は前記コマンドの処理を終了したか否かを確認するまでの間のいずれか１以上を含み、前記テスト装置は、当該待機時間に前記他のデータ記憶装置がコマンド受付可能な場合はコマンドを発行する
ことを特徴とする請求項１又は２記載のデータ記憶装置のテスト方法。
【請求項９】
前記テスト装置は、前記一のデータ記憶装置に対し、コマンドを受付可能か否か確認し、コマンド受付可能な場合にコマンドを発行し、当該コマンドを実行するために必要なデータがある場合は当該データを転送して当該データの転送が終了したか否かを確認し、当該データ記憶装置が当該コマンドの処理を終了したか否かを確認し、次のコマンドを受付可能か否か確認し、当該次のコマンドが受付可能となったときに次のコマンドを発行することを繰り返すことでテストを実行するものであって、
前記待機時間は、前記コマンド受付可能となるまでの間、データの転送が終了するまでの間、又は次のコマンド受付可能となるまでの間のいずれか１以上を含み、前記テスト装置は、当該待機時間に前記他のデータ記憶装置がコマンド受付可能な場合はコマンドを発行し、データ転送可能な場合はデータを転送する
ことを特徴とする請求項１又は２記載のデータ記憶装置のテスト方法。
【請求項１０】
前記テスト装置に対し前記複数のデータ記憶装置はそれぞれ異なるバスを介して接続される
ことを特徴とする請求項１記載のデータ記憶装置のテスト方法。
【請求項１１】
前記テスト装置には最大４台のデータ記憶装置が接続される
ことを特徴とする請求項１記載のデータ記憶装置のテスト方法。
【請求項１２】
前記テスト装置のアダプタカードに異なるバスを介して２台のデータ記憶装置が接続される
ことを特徴とする請求項１記載のデータ記憶装置のテスト方法。
【請求項１３】
前記テスト装置は、１又は複数のコマンドからなる複数のテスト工程からなる動作テストのうち必要なテスト工程については各データ記憶装置と１対１でテストを実行するものであって、
１対１テストの際には、１対１のテストをするデータ記憶装置以外のデータ記憶装置とのテストを、当該１対１テストが終了するまでの間一旦休止させる
ことを特徴とする請求項１記載のデータ記憶装置のテスト方法。
【請求項１４】
データ記憶装置を組み立て、
前記組み立て後の複数のデータ記憶装置をテスト装置に接続して動作テストするデータ記憶装置の製造方法であって、
前記動作テストの際には、前記複数のデータ記憶装置のうち一のデータ記憶装置に対し前記動作テストを実行している間であって前記テスト装置と前記一のデータ記憶装置とのやり取りを休止する待機時間に、前記テスト装置が前記複数のデータ記憶装置のうちの他のデータ記憶装置に対し前記動作テストを実行するデータ記憶装置の製造方法。
【請求項１５】
前記動作テストの際は、
前記テスト装置に接続される複数のデータ記憶装置のうち一のデータ記憶装置がコマンド受付可能か否かを確認され、
前記一のデータ記憶装置がコマンド受付可能な場合に当該一のデータ記憶装置は前記テスト装置から発行されるコマンドを受け取り、
前記一のデータ記憶装置は前記受け取ったコマンドを実行した後、コマンド実行終了を前記テスト装置に知らせ、
前記テスト装置が前記一のデータ記憶装置がコマンド受付可能か否かを確認するまで又は前記コマンド実行終了が知らされるまでの前記待機時間に、前記複数のデータ記憶装置のうち前記一のデータ記憶装置とは異なる他のデータ記憶装置に前記動作テストを実行させる
ことを特徴とする請求項１４記載のデータ記憶装置の製造方法。
【請求項１６】
前記動作テストの際は、
前記一のデータ記憶装置は前記テスト装置からコマンドを処理するために必要なデータを受け取りコマンドを処理するものであって、
前記他のデータ記憶装置は、前記一のデータ記憶装置がデータを受け取り、コマンドの処理を終了するまでの前記待機時間に前記動作テストを実行させる
ことを特徴とする請求項１５記載のデータ記憶装置の製造方法。
【請求項１７】
前記動作テストの際は、
前記一のデータ記憶装置の前記待機時間に、前記他のデータ記憶装置がコマンド受付可能である場合には前記テスト装置によりコマンドが発行され、コマンドを処理するためのデータが必要である場合には前記テスト装置によりデータが転送される
ことを特徴とする請求項１４記載のデータ記憶装置の製造方法。
【請求項１８】
前記動作テストは、１又は複数のコマンドからなる複数のテスト工程からなり、
前記待機時間は、一のテスト工程においてテストとして指定されるデータ記憶装置の休止時間である
ことを特徴とする請求項１４記載のデータ記憶装置の製造方法。
【請求項１９】
前記動作テストは、複数のテスト工程からなり、
ホスト装置に複数のテスト装置が接続され、前記各テスト装置に複数のデータ記憶装置が接続され、各データ記憶装置の一のテスト工程が終了する毎にその実行結果が前記テスト装置からホスト装置へ送られるものであって、
前記待機時間は、一のテスト装置に接続された一のデータ記憶装置が一のテスト工程を終了し、当該一のテスト装置がその実行結果を前記ホスト装置へ送るために前記ホスト装置と通信する際の、当該通信が可能になるまでの間であり、
当該待機時間に、前記一のテスト装置に接続され一のテスト工程が終了していない他のデータ記憶装置の動作テストを実行する
ことを特徴とする請求項１４記載のデータ記憶装置の製造方法。
【請求項２０】
前記データ記憶装置は、ハード・ディスク装置であって、
ハード・ディスク・アセンブリを組み立て、
前記ハード・ディスク・アセンブリに制御基板を実装し、
前記制御基板が実装された複数のハード・ディスク・アセンブリを前記テスト装置に設けられたアダプタカードにそれぞれ異なるバスを介して接続して動作テストを実行する
ことを特徴とする請求項１４記載のデータ記憶装置の製造方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、組み立て後に正常に動作するか否かを確認するデータ記憶装置のテスト方法及び正常に動作するか否かのテスト工程を有するデータ記憶装置の製造方法に関する。
【背景技術】
【０００２】
ＨＤＤは一般に、組み立て後にサーボ書き込み、機能テスト、バーイン、最終テストなどの各種の試験工程を経て出荷される。ＨＤＤを量産する場合には、組み立て後のＨＤＤを小スペースで大量かつ短時間にそのテスト（検査）を実行できることが好ましい。この場合、ＨＤＤをテスト装置に１対１で接続してテストを実行すると、同時にテストするＨＤＤの数量だけテスト装置が必要となり小スペース化を図ることができない。
【０００３】
すなわち、小スペース化を図るためには、１台のテスト装置で大量のＨＤＤをできるだけ高速にテストできることが好ましい。そこで例えば特許文献１には、バーイン試験において、多数のＨＤＤを１つのホストコンピュータに接続してテストするテスト方法が開示されている。
【０００４】
この特許文献１に記載のテスト方法においては、１台のホストコンピュータに２０台のテスト用コンピュータを接続し、各テスト用コンピュータに３つのデュアルチャンネルＩＤＥ（Integrated Device Electronics）アダプタを接続し、各ＩＤＥアダプタにテスト対象となるＨＤＤをそれぞれ２台接続する。そして、ＩＤＥアダプタに接続されるテスト対象となるＨＤＤを高温のバーインチャンバに収納し、テスト用コンピュータを制御チャンバに収納することで、複数のＨＤＤを同時にテストすると共にテスト用コンピュータを高温チャンバではなく常温チャンバに収納することでテスト用コンピュータの故障率を低減させている。
【０００５】
ところで、従来、ＩＤＥ（ＡＴＡ（AT Attachment））インターフェースには、最大４台までの機器を接続することができる。ＩＤＥインターフェースを有するマザーボード上には２つのＩＤＥポートがあり、一方がプライマリ、もう一方がセカンダリと呼ばれる。１つのＩＤＥポートに対して、２つのＩＤＥ機器を接続することができ、一方がマスタ、もう一方がスレーブと呼ばれる。なお、接続した機器がマスタであるかスレーブであるかは、接続する機器のジャンパスイッチによって設定され、優先順位はプライマリマスタ、プライマリスレーブ、セカンダリマスタ、セカンダリスレーブの順となる。
【０００６】
これにより、ＨＤＤの製造テストにおいてはでは、１台のテスト装置で最大４台のＨＤＤを試験することができ、通常、ＨＤＤの製造テストは、コマンドの処理にデータ転送を伴う場合には、コマンド発行、データ転送、ドライブのステータスの確認からなる工程を１つの単位とし、この単位で各ＨＤＤに対して多数のコマンドを実行させることで行なう。１台のテスト装置で４台のＨＤＤをテストする場合には、各ＨＤＤに対し、上述のコマンド発行、データ転送、ステータス確認からなる工程を１つの単位として順次切り替えながらテストを行っている。
【特許文献１】特開平１０−６４１７３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上述の特許文献１に記載のテスト方法においては、各テスト用コンピュータに接続されるＩＤＥアダプタに接続される２台のＨＤＤの製造テストする場合には、上述したようにコマンド発行乃至ステータスの確認までを１つの単位として、２台のＨＤＤに対して順次行なう必要がある。すなわち、複数のＨＤＤを１台のテスト用コンピュータに接続したとしても、テスト用コンピュータからのコマンドは１台のＨＤＤに対してのみ発行されるためテスト用コンピュータに１対１で接続するよりは小スペース化が図れるもののテスト時間は長くなってしまう。
【０００８】
一方で、各ＨＤＤは、コマンドの処理がエラーであるか否か等に応じて一連のコマンドの実行順序等が異なる。よって、テスト用コンピュータが例えば２台のＨＤＤに対して同時に同一のコマンドを発行してテストすることは困難であり、例えば一方のＨＤＤが所望の動作を実行しない場合に他のコマンドにより検査等をする間、他のＨＤＤのテストを進めることができず、却ってテスト時間が長くなってしまい現実的ではないという問題点がある。
【０００９】
本発明は、このような問題点を解決するためになされたものであり、同時に複数のデータ記憶装置をテスト装置に接続してその動作テストする際のテスト時間を短縮化することができるデータ記憶装置のテスト方法及びデータ記憶装置の製造方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上述した目的を達成するために、本発明にかかるデータ記憶装置のテスト方法は、テスト装置に接続された複数のデータ記憶装置が前記テスト装置からのコマンドを受け取り実行することでそれぞれの動作テストをするデータ記憶装置のテスト方法であって、前記テスト装置と前記複数のデータ記憶装置のうち一のデータ記憶装置とが前記動作テストを実行している間であって前記テスト装置と前記一のデータ記憶装置とのやり取りを休止する待機時間に、前記テスト装置が前記複数のデータ記憶装置のうちの他のデータ記憶装置に対して前記動作テストを実行するものである。
【００１１】
本発明においては、テスト装置に複数のデータ記憶装置を接続しておき、一のデータ記憶装置がテスト装置との間で一のコマンドによる動作テストを実行している間であって、両者の間にデータのやり取りがない待機時間において、他のデータ記憶装置の動作テストを実行することで、テストを高効率化し、テスト時間を短縮化することができる。
【００１２】
この場合、前記待機時間は、前記一のデータ記憶装置が一のコマンドを受け取り、当該コマンドの処理を終了しその終了通知を行なうまでのコマンド実行期間に含まれるものとすることができ、一のデータ記憶装置がコマンドを実行してコマンド終了通知を行なうまでの待機時間を有効に使用することができる。
【００１３】
また、前記待機期間は、前記一のデータ記憶装置が一のコマンドの実行を終了してから次のコマンドを受け付け可能になるまでの間とすることができ、このことにより、一のデータ記憶装置がコマンド受付可能の状態になるまでの待機時間を有効に使用することができる。
【００１４】
更に、前記動作テストは、１又は複数のコマンドからなる複数のテスト工程からなり、前記待機時間は、一のテスト工程においてテストとして指定されるデータ記憶装置の休止時間とすることができ、休止時間を待機時間として有効に使用することができる。
【００１５】
更にまた、前記動作テストは、複数のテスト工程からなり、ホスト装置に複数のテスト装置が接続され、前記各テスト装置に複数のデータ記憶装置が接続され、各データ記憶装置の一のテスト工程が終了する毎にその実行結果が前記テスト装置からホスト装置へ送られるものであって、前記待機時間は、一のテスト装置に接続された一のデータ記憶装置が一のテスト工程を終了し、当該一のテスト装置がその実行結果を前記ホスト装置へ送るために前記ホスト装置と通信する際の、当該通信が可能になるまでの間であり、当該待機時間に、前記一のテスト装置に接続され一のテスト工程が終了していない他のデータ記憶装置の動作テストを実行することができ、テスト装置がホストと通信可能になるまでを待つ間も待機時間として他のデータ記憶装置のテストをするために有効利用することができる。
【００１６】
この場合、前記テスト装置は、前記待機時間に他のデータ記憶装置に対してコマンドを発行するか、又は前記待機時間に他のデータ記憶装置に対してコマンドを処理するために必要なデータを転送するなどすることができる。
【００１７】
ここで、前記テスト装置は、前記一のデータ記憶装置に対し、コマンドを受付可能か否か確認し、コマンド受付可能な場合にコマンドを発行し、当該一のデータ記憶装置が当該コマンドを実行してその処理を終了したか否かを確認し、次のコマンドを受付可能か否か確認し、当該次のコマンドが受付可能となったときに次のコマンドを発行することを繰り返すことでテストを実行するものであって、前記待機時間は、前記コマンド受付可能となるまでの間、又は前記コマンドの処理を終了したか否かを確認するまでの間のいずれか１以上を含み、前記テスト装置は、当該待機時間に前記他のデータ記憶装置がコマンド受付可能な場合はコマンドを発行することができ、一のデータ記憶装置との間では待機時間となる期間に、他のデータ記憶装置に対し、その状態に応じて動作テストを実行させることで効率よくテストを進めることができる。
【００１８】
また、前記テスト装置は、前記一のデータ記憶装置に対し、コマンドを受付可能か否か確認し、コマンド受付可能な場合にコマンドを発行し、当該コマンドを実行するために必要なデータがある場合は当該データを転送して当該データの転送が終了したか否かを確認し、当該データ記憶装置が当該コマンドの処理を終了したか否かを確認し、次のコマンドを受付可能か否か確認し、当該次のコマンドが受付可能となったときに次のコマンドを発行することを繰り返すことでテストを実行するものであって、前記待機時間は、前記コマンド受付可能となるまでの間、データの転送が終了するまでの間、又は次のコマンド受付可能となるまでの間のいずれか１以上を含み、前記テスト装置は、当該待機時間に前記他のデータ記憶装置がコマンド受付可能な場合はコマンドを発行し、データ転送可能な場合はデータを転送することができ、一のデータ記憶装置との間では待機時間となる期間に、他のデータ記憶装置に対し、その状態に応じて動作テストを実行させることで効率よくテストを進めることができる。
【００１９】
また、前記テスト装置に対し前記複数のデータ記憶装置はそれぞれ異なるバスを介して接続されるものとすることで、各データ記憶装置に別々にコマンドを発行したり、データを転送したりすることができ、また、マスタ、スレーブの設定を振り分ける必要もなくなる。
【００２０】
更に、前記テスト装置は、１又は複数のコマンドからなる複数のテスト工程からなる動作テストのうち必要なテスト工程については各データ記憶装置と１対１でテストを実行するものであって、１対１テストの際には、１対１のテストをするデータ記憶装置以外のデータ記憶装置とのテストを、当該１対１テストが終了するまでの間一旦休止させることができ、例えば速度性能のテストする場合など、必要に応じてテスト装置とデータ記憶装置とを１対１としてテストを実行させることが可能となる。
【００２１】
本発明にかかるデータ記憶装置の製造方法は、データ記憶装置を組み立て、前記組み立て後の複数のデータ記憶装置をテスト装置に接続して動作テストするデータ記憶装置の製造方法であって、前記動作テストの際には、前記複数のデータ記憶装置のうち一のデータ記憶装置に対し前記動作テストを実行している間であって前記テスト装置と前記一のデータ記憶装置とのやり取りを休止する待機時間に、前記テスト装置が前記複数のデータ記憶装置のうちの他のデータ記憶装置に対し前記動作テストを実行するものである。
【００２２】
本発明においては、組み立て後の複数のデータ記憶装置をテスト装置に接続してテストする際に、テスト装置が一のデータ記憶装置とやり取りがない期間に他のデータ記憶装置に対して動作テストを行なうことで効率よくテストを行ない、よってデータ記憶装置の生産性を向上させることができる。
【００２３】
この場合、前記動作テストの際は、前記テスト装置に接続される複数のデータ記憶装置のうち一のデータ記憶装置がコマンド受付可能か否かを確認され、前記一のデータ記憶装置がコマンド受付可能な場合に当該一のデータ記憶装置は前記テスト装置から発行されるコマンドを受け取り、前記一のデータ記憶装置は前記受け取ったコマンドを実行した後、コマンド実行終了を前記テスト装置に知らせ、前記テスト装置が前記一のデータ記憶装置がコマンド受付可能か否かを確認するまで又は前記コマンド実行終了が知らされるまでの前記待機時間に、前記複数のデータ記憶装置のうち前記一のデータ記憶装置とは異なる他のデータ記憶装置に前記動作テストを実行させることができ、これにより、テスト時間を短縮化することができる。
【００２４】
また、前記動作テストの際は、前記一のデータ記憶装置は前記テスト装置からコマンドを処理するために必要なデータを受け取りコマンドを処理するものであって、前記他のデータ記憶装置は、前記一のデータ記憶装置がデータを受け取り、コマンドの処理を終了するまでの前記待機時間に前記動作テストを実行させることができ、一のデータ記憶装置がデータ転送が終了するまでの間、転送されたデータに基づき処理を実行する間などに、他のデータ記憶装置の動作テストを実行することができる。
【００２５】
更に、前記動作テストの際は、前記一のデータ記憶装置の前記待機時間に、前記他のデータ記憶装置がコマンド受付可能である場合には前記テスト装置によりコマンドが発行され、コマンドを処理するためのデータが必要である場合には前記テスト装置によりデータが転送されるものとすることができ、他のデータ記憶装置は、その状態に応じて動作テストを進めることができる。
【００２６】
また、前記データ記憶装置は、ハード・ディスク装置であって、ハード・ディスク・アセンブリを組み立て、前記ハード・ディスク・アセンブリに制御基板を実装し、前記制御基板が実装された複数のハード・ディスク・アセンブリを前記テスト装置に設けられたアダプタカードにそれぞれ異なるバスを介して接続して動作テストを実行することができ、これにより、各装置を例えばマスタ、スレーブに振り分ける必要がなくなり自由な設定として、個別にコマンドを発行したり、データを転送したりすることができ、テストの際の自由度が大きくなる。
【発明の効果】
【００２７】
本発明によれば、同時に複数のデータ記憶装置をテスト装置に接続してその動作テストする際のテスト時間を短縮化することができるデータ記憶装置のテスト方法及びデータ記憶装置の製造方法を提供することができる。
【発明を実施するための最良の形態】
【００２８】
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。この実施の形態は、本発明を、ＨＤＤのテスト方法及びこのテスト方法によりテストをすることで組み立て後のテスト時間を短縮化することが可能なＨＤＤの製造方法に適用したものである。
【００２９】
本実施の形態においては、テスト装置に組み込みシステム向けリアルタイムＯＳを搭載することにより、ドライブからのステータス待ち状態などを他のドライブの試験に割り当てることにより、複数台の同時テストを効率よく行なうようにして、テスト時間を最大で従来の１台毎に行なう方法に比して最大で半分程度に短縮することを可能とする。
【００３０】
更に、テスト装置に接続する２枚のアダプタカードには、それぞれ２台のＨＤＤを接続することができるが、このアダプタカードのコントローラとして機能するＦＰＧＡにおいて、それぞれのＨＤＤと接続するバスを設けることで、一枚のＣＰＵ基板（テスト装置）により４台のドライブを同時にマスタとして又はスレーブのいずれとしても試験することが可能となっている。すなわち、本テスト装置においては、あたかも１枚のＣＰＵ基板が１つのＨＤＤをテストするのと同様に４台のＨＤＤのテストを実行することができる。よって、各ＨＤＤに対して特別な設定をすることなく、テスト装置としてそれぞれのＨＤＤを自由な設定にてテストを実行することができる。
【００３１】
先ず、本実施の形態の理解を容易とするため、ＨＤＤの概略について説明しておく。図１は、ＨＤＤの概略を示すブロック図である。図１に示すように、ＨＤＤ１００は、筺体１１０内に、磁気ディスク１１１、ヘッド１１２、アーム電子回路（アームエレクトロニクス：ＡＥ）１１３、スピンドル・モータ（ＳＰＭ）１１４、ボイス・コイル・モータ（ＶＣＭ）１１５を備える。これらによりハード・ディスク・アセンブリ（Hard Disk Assembly：ＨＤＡ）が構成される。また、ＨＤＤ１００は、筺体１１０の外側に固定された制御基板としての回路基板１２０を備えている。回路基板１２０上には、リード・ライト・チャネル（Ｒ／Ｗチャネル）１２１、モータ・ドライバ・ユニット１２２、ハード・ディスク・コントローラ（ＨＤＣ）／ＭＰＵ集積回路（以下ＨＤＣ／ＭＰＵ）１２３、及びメモリの一例としてのＲＡＭ１２４を備えている。
【００３２】
外部ホストからの書き込みデータは、ＨＤＣ／ＭＰＵ１２３によって受信され、Ｒ／Ｗチャネル１２１、ＡＥ１１３を介して、ヘッド１１２によって磁気ディスク１１１に書き込まれる。また、磁気ディスク１１１に記憶されているデータは、ヘッド１１２によって読み出され、読み出しデータは、ＡＥ１１３、Ｒ／Ｗチャネル１２１を介して、ＨＤＣ／ＭＰＵ１２３から外部ホストに出力される。
【００３３】
次に、ＨＤＤの各構成要素について説明する。磁気ディスク１１１は、ＳＰＭ１１４の回転軸に固定されている。ＳＰＭ１１４は、モータ・ドライバ・ユニット１２２によって駆動され、ＳＰＭ１１４は所定の速度で磁気ディスク１１１を回転する。磁気ディスク１１１は、データを記録する記録面を両面に備え、各記録面に対応するヘッドが設けられている。各ヘッド１１２はスライダ（不図示）に固定され、スライダは、キャリッジ（不図示）に固定されている。キャリッジ（不図示）はＶＣＭ１１５に固定され、ＶＣＭ１１５は、揺動することによってスライダ及びヘッドを移動する。
【００３４】
ヘッド１１２において、典型的には、磁気ディスク１１１への記憶データに応じて電気信号を磁界に変換する記録ヘッド、及び磁気ディスク１１１からの磁界を電気信号に変換する再生ヘッドが一体的に形成されている。なお、磁気ディスク１１１は、１枚以上あればよく、記録面は、磁気ディスク１１１の片面および両面に形成することができる。
【００３５】
次に、各回路部の説明を行う。ＡＥ１１３は、複数のヘッド１１２の中からデータ・アクセスが行われる１つのヘッド１１２を選択し、選択されたヘッド１１２により再生される再生信号を一定のゲインで増幅（プリアンプ）し、Ｒ／Ｗチャネル１２１に送る。また、Ｒ／Ｗチャネル１２１からの記録信号を選択されたヘッド１１２に送る。特に、本実施の形態においては、Ｒ／Ｗチャネル１２１から送られてくる記録信号から、増幅する対象となる高周波パターンを検出し、ＡＥ１１３に含まれるライトドライバにより当該高周波パターンのみを増幅したライト電流を生成して記録ヘッドに供給する等することで、オーバライト特性を向上しつつＡＴＩの影響を抑制することができる。この詳細については後述する。
【００３６】
Ｒ／Ｗチャネル１２１は、ホストから取得したデータについて、ライト処理を実行する。ライト処理において、Ｒ／Ｗチャネル１２１はＨＤＣ／ＭＰＵ１２３から供給されたライト・データをコード変調し、さらにコード変調されたライト・データをライト信号（電流）に変換してＡＥ１１３に供給する。また、ホストにデータを供給する際にはリード処理を行う。
【００３７】
リード処理において、Ｒ／Ｗチャネル１２１はＡＥ１１３から供給されたリード信号を一定の振幅となるように増幅し、取得したリード信号からデータを抽出し、デコード処理を行う。読み出されるデータは、ユーザ・データとサーボ・データを含む。デコード処理されたリード・データは、ＨＤＣ／ＭＰＵ１２３に供給される。
【００３８】
ＨＤＣ／ＭＰＵ１２３は、ＭＰＵとＨＤＣが一つのチップに集積された回路である。ＭＰＵは、ＲＡＭ１２４にロードされたマイクロ・コードに従って動作し、ヘッド１１２のポジショニング制御、インターフェース制御、ディフェクト管理などのＨＤＤ１００の全体の制御のほか、データ処理に関する必要な処理を実行する。ＨＤＤ１００の起動に伴い、ＲＡＭ１２４には、ＭＰＵ上で動作するマイクロ・コードの他、制御及びデータ処理に必要とされるデータが磁気ディスク１１１あるいはＲＯＭ（不図示）からロードされる。
【００３９】
ＨＤＣ／ＭＰＵ１２３は、ホストとの間のインターフェース機能を備えており、ホストから伝送されたユーザ・データ及びリード・コマンドやライト・コマンドといったコマンドなどを受信する。受信したユーザ・データは、Ｒ／Ｗチャネル１２１に転送される。また、Ｒ／Ｗチャネル１２１から取得した磁気ディスクからの読み出しデータを、ホストに伝送する。ＨＤＣ／ＭＰＵ１２３は、さらに、ホストから取得した、あるいは、磁気ディスク１１１から読み出したユーザ・データについて、誤り訂正（ＥＣＣ）のための処理を実行する。
【００４０】
Ｒ／Ｗチャネル１２１によって読み出されるデータは、ユーザ・データの他に、サーボ・データを含んでいる。ＨＤＣ／ＭＰＵ１２３は、サーボ・データを使用したヘッド１１２の位置決め制御を行う。ＨＤＣ／ＭＰＵ１２３からの制御データはモータ・ドライバ・ユニット１２２に出力される。モータ・ドライバ・ユニット１２２は制御信号に応じて駆動電流をＶＣＭ１１５に供給する。また、ＨＤＣ／ＭＰＵ１２３は、サーボ・データを使用して、データのリード／ライト処理の制御を行う。
【００４１】
以上のようなＨＤＤを製造する際には、ＨＤＡを組み立て、回路基板１２０を実装し、その後、回路基板１２０を実装したＨＤＡに対して各種パラメータ等の最適化及び各種機能が正常に作動するか否かなどの検査が実行される。これらの工程においては、例えば、サーボ情報の書き込み工程、各種サーボ系、チャネル（Ｃｈａｎｎｅｌ）系の係数に対する最適化を行なうプレテスト工程、機能・信頼性の確認テスト（以下、動作テストという。）工程などが含まれる。
【００４２】
ここで、ＨＤＤがホストから発行される各種のコマンドを正常に実行できるか否かなどを検査する動作テストは、テスト装置に試験対象となるＨＤＤを接続し、テスト装置が発行する各種のコマンドを実行させることで行なわれる。テスト装置は、ＨＤＤ試験のために、多数のコマンドを実行させ、各コマンドが正常に処理されるか否かをテストする。このテストには極めて長いテスト時間を要するため、ＨＤＤの量産を阻害することとなる。
【００４３】
そこで、本実施の形態においては、このように長時間かかるテスト時間を短時間化するものである。上述したように、通常、テスト装置は２つのＩＤＥポートを有し、２つのアダプタカードを設けることができる。各アダプタカードには、ＡＴ／ＰＣＭＣＩＡ（Personal Computer Memory Card International Association）のインターフェースのコントローラとなるＦＰＧＡ（Field Programmable Gate Array）が搭載されており、それぞれ２台のＨＤＤを接続することができる。よって最大４台のＨＤＤを同時に動作テストすることができる。
【００４４】
ＨＤＤを量産し製造コストを低減するためには、通常数十時間を要する上記のテスト時間を少しでも短縮することが好ましい。また、小スペースでＨＤＤのテストを可能とすることが好ましい。このためには、１台のテスト装置（１枚のＣＰＵ基板）にてより多くのＨＤＤをテストできることが好ましい。
【００４５】
しかしながらコマンド発行乃至ステータスの確認を１つの単位として各コマンドのテストを実行していく従来の方法では、１台のテスト装置に上述のように最大数である４台のＨＤＤを接続して小スペース化を実現しても、４台にそれぞれコマンド発行乃至ステータスの確認を個別に実行する必要があり、テスト時間の短縮化が難しい。更に、アダプタカードに２台のＨＤＤを接続する場合には、通常一方がマスタ、他方がスレーブとしなければならず、各ＨＤＤを自由な設定でテストすることができない。
【００４６】
そこで、本実施の形態においては、コマンド発行し、データ転送し、コマンドが正常に実行され再び次のコマンドを受付可能な状態であるか等のステータスの確認まで一連の工程において、コマンド発行乃至データ転送の間や、データ転送乃至ステータス確認の間におけるテスト装置とＨＤＤとのやり取りが休止する待機時間において、他のＨＤＤに対してコマンドを発行したり、データ転送を行なうことでテスト時間の短縮化を図る。すなわち、本実施の形態においては、一のＨＤＤに対するコマンド発行乃至ステータス確認までのコマンド実行中、又は一のＨＤＤがコマンド実行後次のコマンドの受付が可能となるまでの待機時間に、他のＨＤＤに対してもコマンドを発行したりデータを転送したりして動作テストを実行することでテスト時間の短縮化を実現する。
【００４７】
また、テスト装置は４台のＨＤＤのテストを実行するが、テスト装置は、更にホストコンピュータに接続される。ホストコンピュータは、複数台のテスト装置と接続され、各テスト装置から当該テスト装置に接続されている４台のＨＤＤのテスト結果を受け取る。ここで、テスト装置によるテストは、例えば数十のテスト工程（テスト項目）からなり、本実施の形態におけるテスト装置は、各ＨＤＤについて一の工程が終了した時点で、そのテストにパスしたか失敗したかの結果をホストコンピュータに送る。例えばホストコンピュータに６０台のテスト装置が接続される場合、各テスト装置は、ホストコンピュータとアクセス可能になるまでの間（Ｐｏｌｌｉｎｎｇ  Ｐａｃｋｅｔを待つ間）、他のＨＤＤにコマンドを発行したり、データ転送したりすることで更にテストを高効率化する。
【００４８】
更に、アダプタカードに搭載するＦＰＧＡに２台のＨＤＤをマスタ・スレーブの区別なく接続可能な構成とするため、当該ＦＰＧＡに異なるバスを介して２台のＨＤＤを接続する。これにより、１台のテスト装置に４台のＨＤＤをマスタ・スレーブの別なく自由な設定であって、かつ４台のＨＤＤに対し、より効率的にコマンドの実行を行なわせることでテスト時間の短縮化を図るものである。
【００４９】
更にまた、本実施の形態においては、テスト装置に４台のＨＤＤを接続してほぼ並列で４台同時にテストさせることができるが、一のＨＤＤの一のコマンドの途中で他のＨＤＤの処理を行なうため、例えばシーク時間の測定等の速度性能試験を最適な条件で実施することができない。すなわち、速度性能をテストする場合には、各ＨＤＤのテスト条件を同じとするために、１テスト装置（１ＣＰＵ）対１ＨＤＤでの同一条件でテストされる必要がある。本実施の形態においては、各コマンド、又は複数のコマンドからなるある工程の実行中であっても、上述のように、待機時間があれば他のＨＤＤのテストを進めるため、このままであれば、各ＨＤＤが同一条件で速度性能試験を行なうことができなくなる場合がある。そこで、本実施の形態においては、速度性能試験を行なう場合には、１テスト装置対１ＨＤＤでのテストを実行できるよう他のＨＤＤのテストを一旦休止する。これにより、本実施の形態におけるテスト方法としても、必要であれば１テスト装置（１ＣＰＵ）対１ＨＤＤのテストを可能にすることで、正確な速度性能試験を行なうことができる。
【００５０】
図２は、本実施の形態におけるテストシステムを示す模式図である。テストシステム１０は、ホスト装置１１と、ホスト装置に接続される複数のテスト装置１と、テスト装置１に接続される複数、本実施の形態においては、４つのＨＤＤ８とを有する。ホスト装置１１は、各ＨＤＤ８をテストするためのテスト用プログラム（スクリプト）を各テスト装置１に供給する。テスト用プログラムは、例えば数十種類のテスト工程（テスト項目）からなるもので、各テスト工程は、１又は複数のコマンドから構成される。例えばライト動作をテストする工程であれば、ライト・コマンドを発行し、ライト・データ及びアドレスを転送し、ライト動作の成否を判定し、エラーであればリライト処理を実行し、又は各種ライト動作に関係するパラメータを変更・調整してからリライトするなどの一連のテストからなる。
【００５１】
各テスト装置１は、後述する方法にて４台のＨＤＤ８に対して並列的にテストを実行する。そして、各ＨＤＤ８について、一のテスト工程が終了する毎にその実行結果をホスト装置１１へ送る。ホスト装置１１は、全ＨＤＤ８の各テスト工程における実行結果（pass or failなど）を記録する。これらの実行結果は、全テスト工程終了後に、データベース等に格納し、各種のエラー解析などに利用される。本実施の形態においては、ホスト装置１１に例えば６０台のテスト装置１がシリアルに接続される。
【００５２】
図３は、本実施の形態におけるテスト装置にテスト対象となるＨＤＤが接続される様子を示す図である。図３に示すように、テスト装置は、ＣＰＵ２に、ＳＤＲＡＭ３、フラッシュメモリ４、及び２つのアダプタカード５ａ、５ｂがバス６を介して接続されている。各アダプタカード５ａ、５ｂは、それぞれ２本のバス７１〜７４を有し、それぞれテスト対象となるＨＤＤ８１〜８４に接続されている。
【００５３】
テスト装置１のＣＰＵ２は、アダプタカード５ａ、５ｂを介して、各ＨＤＤ８１〜８４にコマンドを発行し、必要であればデータを転送し、コマンド実行結果を受け取る。各ＨＤＤ８１〜８４のコマンド実行結果は外部に出力したり、又はモニタを介して表示される。このテスト装置１は、例えば、各ＨＤＤ８１〜８４の動作テストを行うために一連のコマンドを実行させるためのプログラムをフラッシュメモリ４から読み出し、コマンドの実行状態に応じて各ＨＤＤ８１〜８４に対してコマンドを実行させる。各ＨＤＤ８１〜８４は、受け取ったコマンドが例えばデータの書き込み命令（ライト・コマンド）であれば、書き込みデータ及び書き込みアドレスを受け取り、当該アドレスにデータを書き込む。また、受け取ったコマンドが例えばデータの読み出し命令（リード・コマンド）であれば、読み出しアドレス及び読み出したデータを記録するＳＤＲＡＭ上のアドレスを受け取り、当該アドレスのデータを読み出しＳＤＲＡＭ３に書き込む。テスト装置１は、ＳＤＲＡＭ３にデータを読み出す際にエラーが生じなければ正常に読み出しが行なわれたものとして次のコマンド実行に移る。一方、ＨＤＤ８１〜８４への書き込みエラーや読出しエラーが発生した場合には、例えば再度コマンドを実行したり、エラーの訂正のためのコマンド等を実行させる。各ＨＤＤ８１〜８４はそれぞれのコマンド実行状態、エラーの有無に応じて異なるコマンドを実行していくことになる。
【００５４】
ここで、本実施の形態におけるアダプタカード５ａ、５ｂに接続される２台のＨＤＤ８１、８２又はＨＤＤ８３、８４はそれぞれ異なるＡＴＡバス７１、７２又はＡＴＡバス７３、７４により接続される。したがって、一のＨＤＤ、例えばＨＤＤ８１にあるコマンドを発行し、当該ＨＤＤ８１がそのコマンドの処理中であっても、他のＨＤＤ８２にコマンドを発行するなど、各ＨＤＤ８１〜８４に個別にコマンドを発行することができる。したがってコマンド発行からデータ転送して、コマンドの処理を終了するまでを１つの単位として処理する必要がなく、例えばＨＤＤ８１がコマンドの受け付けの準備中である場合等の待機時間に、他のＨＤＤ８２〜８４に対してコマンドを発行したり、コマンド発行後にはテスト装置１のＤＭＡ転送を利用してデータを転送したりすることができる。更に、各ＨＤＤ８１〜８４はそれぞれ異なるバス７１〜７４を介して接続されるため、４台に同時にデータ転送を行なうことも可能である。更にまた、アダプタカード５ａ、５ｂにそれぞれ接続される２台のＨＤＤ８１、８２又はＨＤＤ８３、８４をそれぞれマスタ、スレーブに振り分ける必要がない。すなわち、全４台をマスタの設定としたり、全４台をスレーブの設定としたりすることも可能となり、テストの際の自由度が大きくなる。
【００５５】
図４は、本実施の形態にかかるアダプタカード５ａを示すブロック図である。ここでは、アダプタカード５ａを例にとって説明するがアダプタカード５ｂも同様に構成される。アダプタカード５ａは、図４に示すように、ＤＭＡコントローラ５１、メモリ５２、５５、ＨＤＤインターフェース５３、５６、制御部５４を有する。本実施の形態にかかるアダプタカード５ａは、２台のＨＤＤに対して個別にコマンドを発行したりデータを転送したりする。このため、ＤＭＡコントローラ５１は、２チャンネル分のＤＭＡをコントロール可能に構成される。
【００５６】
メモリ５２は、例えばＦＩＦＯからなり、ＨＤＤ８１に対するデータを保持する。例えば、ライト命令としてのコマンドが発行された場合には、ＤＭＡコントローラ５１を介してライトするためのデータが格納される。そして、同じくＤＭＡコントローラ５１を介して入力される書き込みアドレスなどの設定値が制御部５４に送られる。制御部５４は、このアドレスなどの設定値に基づきメモリ５２に保持されている書き込みデータを書き込むようＨＤＤインターフェース５３を制御し、ＨＤＤインターフェース５３は、ＨＤＤ８１に書き込みデータを書き込む。また、リード・コマンドを受け取った場合には、制御部５４には読み出すアドレスなどが供給され、ＨＤＤインターフェース５３を介してＨＤＤ８１の当該アドレスからデータが読み出されメモリ５２に保持される。同様に、メモリ５５、ＨＤＤインターフェース５６は、ＨＤＤ８２に対するコマンドを処理するために使用される。制御部５４は、ＨＤＤ８１、８２のいずれに対するコマンドであるかを判断しメモリ５２、５５、ＨＤＤインターフェース５３、５６を制御する。
【００５７】
本実施の形態にかかるアダプタカード５ａ、５ｂはこのように、２チャンネル分のＤＭＡをコントロールするＤＭＡコントローラ及び制御部を備え、２つのＨＤＤインターフェースにそれぞれＨＤＤを接続する構成とする。すなわち、ＡＴＡのバスが各ＨＤＤ毎に独立しているため、２台のＨＤＤに対して個別にコマンドを実行することができる。そして、後述する従来のアダプタカード（ＡＴＡポート）のように、ＨＤＤを１つのバスにより接続し、このＨＤＤに対して更にＨＤＤを接続する構成の場合には、いずれか一方をマスタ又はスレーブに振り分けて設定する必要があるが、本実施の形態における２つのアダプタカード５ａ、５ｂは、マスタ、スレーブの振り分けを必要としないため、４台のＨＤＤのいずれにおいてもマスタ、スレーブを自由に設定することができ、それぞれに接続されたバスにより個別にコマンドを実行することができる。
【００５８】
また、アダプタカード５ａ、５ｂは、各ＨＤＤ８１〜８４に対応するメモリ５２、５５を有しているため、例えば、ＨＤＤ８１がメモリ５２に格納されているデータを書き込む処理を実行しているときに、テスト装置１からＨＤＤ８２にコマンドを発行し、データ転送することができる。ＨＤＤ８２がコマンドを実行する準備段階であってもメモリ５５に予めデータを転送しておくことができ、テスト装置とアダプタカード５ａ、５ｂの間のバス６を有効に使用することができる。
【００５９】
更に、例えばアダプタカード５ａが例えばＨＤＤ８１から読み出したデータをＤＭＡによりＳＤＲＡＭ３に書き込む際には、アダプタカード５ｂによりバス６が使用していない適切なタイミングを選択して行なう。すなわち、例えば、ＣＰＵ２からアダプタカード５ｂにコマンド発行等がある場合にはコマンド発行を待ってからデータを書き込むようにすることで、アダプタカード５ａ、５ｂの制御によりバス６を有効に使用し、１台のテスト装置１により効率よくテストを実行させることができる。
【００６０】
次に、本実施の形態にかかるテスト方法について更に詳細に説明する。図５は、本実施の形態にかかるＨＤＤのテスト方法を示すフローチャートである。図５に示すように、先ず、テスト装置１は、各ＨＤＤのレジスタ群にアクセスすることによりコマンドの実行、データの送受信を行なう。例えばＨＤＤ８１のステータスレジスタ（ＤＲＤＹ：Device Ready）がReady（ビットが１）の状態になっているか否か、すなわち、テスト装置１からのコマンドを受付可能な状態であるか否かを確認する（ステップＳ１）。ここで、ステータスレジスタがReadyになっている場合には、例えばリード・コマンド、ライト・コマンド、パワー制御等の各種コマンドを発行する（ステップＳ２）。
【００６１】
このコマンドを受け取ったＨＤＤ８１はコマンドに応じた処理を実行する（ステップＳ３）。ここで、ステップＳ２で発行されたコマンドが例えばライト・コマンドなどデータ転送を伴うコマンドであれば、データ転送を実行する。例えばライト・コマンドであれば、書き込み用のデータ及びアドレスからなるデータを転送する。そして、データ転送が完了したか否かを確認する（ステップＳ４）。なお、データ転送方式には、ＰＩＯ（Programmed I/O)とＤＭＡ（Direct Memory Access）とがある。データをＨＤＤへ転送するときＣＰＵを介した転送方式がＰＩＯであり、ＣＰＵを介さず直接転送する方式がＤＭＡである。また、ＤＭＡには、シングルワードＤＭＡ、マルチワードＤＭＡ、ＵｌｔｒａＤＭＡがある。１ワードは１６ビットとなっており、シングルワードＤＭＡでは１ワードずつデータを転送し、マルチワードＤＭＡでは複数のワードのデータを転送する。さらに、ＵｌｔｒａＤＭＡは、クロック信号の立ち上がりと立ち下がりとの両方でデータを転送することでマルチワードＤＭＡの２倍の転送速度を実現している。これらデータ転送方式などもコマンドによって指定される。
【００６２】
最後に、コマンド終了通知であるインタラプト信号（Interrupt Request）ＩＮＴＲＱがＨＤＤからアサートされたか否かを確認し（ステップＳ５）、再びステップＳ１からの処理を繰り返す。すなわち、ＨＤＤが再びコマンド受付可能な状態になったら次のコマンドを発行する。
【００６３】
ここで、例えばＨＤＤ８１のステータスレジスタがＲｅａｄｙになっていない場合、通常であれば、Ｒｅａｄｙになるまでテスト装置が待機することとなるが、本実施の形態においては、この待機時間に、例えばＨＤＤ８２等他のＨＤＤの処理を進める。また、従来１つのコマンドの処理、図４においてステップＳ２〜ステップＳ５までの間は、コマンド実行中として他の処理を行わないのに対し、本実施の形態においては、上述の待機時間以外にも、例えばデータ転送が完了するまでの間（ステップＳ４）、又はＨＤＤがコマンドに従った例えばリードやライトの動作を終了してインタラプト信号をアサートするまでの間（ステップＳ５）の待機時間に他のＨＤＤの処理を実行する。
【００６４】
すなわち、コマンド発行、データ転送、コマンド終了通知までの一連の動作を１つの単位とするのではなく、コマンド発行、データ転送、コマンド終了通知を分けて処理することで、上記待機時間を有効に利用し、テスト時間の短縮化を図る。アダプタカード５ａ、５ｂは、上述したように、各ＨＤＤ毎のメモリを有する。データ転送する際は、バス６の空時間を有効に利用するため、コマンド発行後にデータ転送を行いアダプタカード５ａ、５ｂの対応するメモリ内にデータを格納させる。各アダプタカード５ａ、５ｂの制御部は所定のタイミングで各ＨＤＤに対しデータを書き込ませたり、又は読み出したデータを保存しておき、バス６の空時間を利用してＳＤＲＡＭ３にデータを書き込むよう制御する。
【００６５】
一方、例えば、ステップＳ１でステータスレジスタがＲｅａｄｙになっていない場合には、次のＨＤＤの処理に移り、次のＨＤＤ８２がステップＳ４まで終了していり場合は、例えばデータ転送が完了しているか否かを確認する。ここで、ＨＤＤ８２がデータ転送を終了していない場合は、更に次のＨＤＤ８３の処理へ移る。このように、テスト対象のＨＤＤが上記待機時間に該当する場合には、他のＨＤＤのテストを行うようにすることで、４台のＨＤＤに対し１台のテスト装置（１つのバス６）を有効に利用して効率よくテストを実行することができる。
【００６６】
また、待機時間としては、ステータスレジスタがＲｅａｄｙになるまでの間、データ転送が完了するまでの間、又はＨＤＤがコマンドに従った例えばリードやライトの動作を終了してインタラプト信号をアサートするまでの間の他、ＨＤＤがアプリケーション上で何も動作していない休止状態（Ｉｄｌｅ、ｓｌｅｅｐなど）の間などにも他のＨＤＤに対してコマンド発行や、データ転送することも可能である。あるテスト工程において、ＨＤＤに対し、例えば数秒間など所定時間のＩｄｌｅ状態を命令したり、所定時間のＩｄｌｅ状態の後、所定の動作を実行させるようなコマンド又は動作テストを含む場合には、このＨＤＤの休止期間に他のＨＤＤのテストを実行させることができる。
【００６７】
更に、本実施の形態におけるテスト装置は、図２に示すように、複数まとめて１台のホストコンピュータに接続される。各テスト装置１は、自信に接続されるＨＤＤ８１〜８４の各テスト工程での結果をホスト装置１１に送る。ここで、本実施の形態においては、６０台のテスト装置１が各４台、最大で２４０台のＨＤＤが同時並行的にテストされる。よって、各ＨＤＤが一のテスト工程を終了したその結果をテスト装置１からホスト装置１１へ送る場合、待ち時間が発生する。そこで、テスト装置１がホスト装置１１と通信可能になるまでの間（ホスト装置１１からのPolling Packetを待つ間）の待機時間において、テスト装置１は他のＨＤＤのテストを実行する。
【００６８】
すなわち、例えばテスト装置１がＨＤＤ８１のあるテスト工程における実行結果をホスト装置１１へ通知しようとした場合、ホスト装置１１と通信が可能になるまでの待機時間に、他のＨＤＤ８２に対して、可能であれば例えばコマンドを発行したり、データを転送したりする。他のＨＤＤ８２もテスト工程を終了してその結果をホスト装置１１に知らせる場合や、コマンド処理中である場合には、ＨＤＤ８３に対して同様にコマンドを発行したりデータを転送したりすればよい。このように、本実施の形態においては、テスト装置１がホスト装置１１と通信が可能になるまでの待機時間においても他のＨＤＤのテストをすることでテスト時間の短縮化を図る。
【００６９】
また、本実施の形態にかかるテスト方法においては、１台のテスト装置により、複数台のＨＤＤのテストを効率よく短時間で実行させるため、一のＨＤＤにおいて一のコマンド実行中に待機時間があれば他のＨＤＤにコマンドを発行したりデータの転送を行なう。このため、シークタイムなどの速度性能をテストする場合に、全ＨＤＤを同じ条件でテストすることができなくなったり、所望のテスト条件で行なうことができない場合が生じる。すなわち、速度性能試験など、テスト時間を考慮すべきテストは、テスト装置とＨＤＤとが１対１でコマンドを実行させてテストを実行する必要がある。
【００７０】
上述したように、ホスト装置１１は、各ＨＤＤをテストさせるためのテストフローが記載されたスクリプトを有しており、テスト装置１は、このスクリプトを基に各ＨＤＤのテストを実行する。ここで、このスクリプトの中で特定の関数を呼ぶことによりそれ以降のテストが１テスト装置（ＣＰＵ）対１ＨＤＤの処理になるように設計されている。
【００７１】
具体的に説明する。ある1台のＨＤＤ、例えばＨＤＤ８１が速度性能試験など１対１でのテストが必要であるとする。この場合には、１対１の試験を行なうための所定のフラグをＨＤＤ８１にセットする。ここで、他のＨＤＤは、通常は、前記フラグがセットされた場合であっても、他のテスト工程又はコマンドを実行中であり、直ちに処理を終了することができない。そこで、このフラグをセットしたＨＤＤ８１は他のＨＤＤのテストのうち所定の区切り、例えば実行中のテスト工程（テスト項目）又は実行中のコマンドが終了するまで待機する。
【００７２】
他の各ＨＤＤは、実行中のテスト工程又はコマンドが終了すると、上述したフラグがセットされているか否かをチェックする。上記フラグがセットされている場合には、当該フラグがクリアされるまで、他のＨＤＤは、実行中のテスト工程又はコマンドが終了した時点て一旦テストを休止する。ＨＤＤ８１以外の全てのＨＤＤが休止状態になったら、上記具ラグをセットしたＨＤＤ８１がテスト装置１と１対１でのテストを実行する。他のＨＤＤは、ＨＤＤ８１のフラグがクリアされるまで、すなわち速度性能試験が終了するまではテストを休止する。ＨＤＤ８１は速度性能試験が終了すると前記フラグがクリアされる。これにより、他のＨＤＤの動作テストが再開される。このように、フラグがセットされたＨＤＤは、１対１でテスト装置とテストすることができ、かつ速度性能試験が終了したら必ずフラグはクリアされるため、このフラグのクリアをもって他のＨＤＤのテストも再開することができる。
【００７３】
このフラグを使用することで、各ＨＤＤは、必要に応じてテスト装置との間で１対１のテストを実行することができ、４台略並列処理によりテストを実行しても、速度性能試験等に影響を及ぼさず、正確かつ効率がよい試験を実行することができる。
【００７４】
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。上述の実施の形態においては、テスト装置の２つのＡＴＡポートに搭載するアダプタカードは、２台のＨＤＤをそれぞれ異なるバスを介して接続することで、マスタ、スレーブの自由な設定、４台同時のデータ転送などが可能となっている。
【００７５】
これに対し図６、図７は、既存のテスト装置及びテスト対象のＨＤＤの接続を示す図、既存のＡＴＡポートを示す図である。図６、７に示すように、通常は、テスト装置２０１の２つのＡＴＡポート２０５ａ、２０５ｂに、バス２０７１、２０７３を介してＨＤＤ２０８１、２０８３が接続され、ＨＤＤ２０８１、２０８３にそれぞれＨＤＤ２０８２、２０８４が接続される構成となっている。ＡＴＡポート２０５ａは、ＰＣＩ  バスコントローラ２５１、ＦＩＦＯなどのメモリ２５２、ＨＤＤインターフェース２５３及び制御部２５４を有し、テスト装置２０１からのコマンド、データ転送を、バス２０７１を介してＨＤＤ２０８１に送ったり、更にバス２０７２を介してＨＤＤ２０８２に送ったりする。この場合、ＨＤＤ２０８１、２０８２はいずれかをマスタ、スレーブとする必要があり、上述のようにＨＤＤに個別にバスを接続する構成のアダプタカードを有するテスト装置１に比べるとテストの際の自由度が小さくなる。
【００７６】
しかしながら、既存のテスト装置２０１においても、上述のように、一方のＡＴＡポートに接続されたＨＤＤとの間において上述のように待機状態となる場合、すなわち、コマンド受付可能となるまでの間、メモリ２５２から例えば書き込みデータなどをＨＤＤへ転送終了するまでの間、ＨＤＤからコマンド終了通知が行なわれるまでの間などの待機時間に、他方のＡＴＡポートに接続されたえＨＤＤのテストを実行することができ、テスト時間を短縮化させることができ、ＨＤＤの量産性・生産性を向上することが可能である。
【図面の簡単な説明】
【００７７】
【図１】ＨＤＤの概略を示すブロック図である。
【図２】本発明の実施の形態におけるテストシステムを示す模式図である。
【図３】本発明の実施の形態におけるテスト装置にテスト対象となるＨＤＤが接続される様子を示す図である。
【図４】本発明の実施の形態にかかるテスト装置におけるアダプタカード５ａを示すブロック図である。
【図５】本発明の実施の形態にかかるＨＤＤのテスト方法を示すフローチャートである。
【図６】既存のテスト装置及びテスト対象のＨＤＤの接続を示す図である。
【図７】既存のＡＴＡポートを示す図である。
【符号の説明】
【００７８】
７１〜７４,２０７１,２０７２  バス
１,２０１  テスト装置
３  ＳＤＲＡＭ
４  フラッシュメモリ
５ａ,５ｂ  アダプタカード
６，７１〜７４,２０７１,２０７２  バス
８１〜８４  ＨＤＤ
５１  ＤＭＡコントローラ
５２,５５,２５２  メモリ
５３,５６,２５３  ＨＤＤインターフェース
５４,２５４  制御部
１１０  筺体
１１１  磁気ディスク
１１２  ヘッド
１２０  回路基板
１２１  チャネル
１２２  モータ・ドライバ・ユニット
２０５ａ,２０５ｂ  ＡＴＡポート
２５１  ＰＣＩ  バスコントローラ
【図１】
2007066126.tif 000003
【図２】
2007066126.tif 000004
【図３】
2007066126.tif 000005
【図４】
2007066126.tif 000006
【図５】
2007066126.tif 000007
【図６】
2007066126.tif 000008
【図７】
2007066126.tif 000009