(57)【要約】【課題】ホストコンピュータの特性によらず、適切な条件でホストコンピュータと通信をする周辺機器を提供することを目的とする。【解決手段】コンピュータにデータを入出力するために接続されるデータ入出力装置であって、前記データ入出力装置を初期化する場合、インターフェースのアナログ特性及びインターフェースのプロトコルを測定し、前記測定の結果に基づいて、前記アナログ特性を最適値に調整した後に、前記プロトコルを最適値に調整する。【選択図】図４
2011130008.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータにデータを入出力するために接続されるデータ入出力装置であって、
前記データ入出力装置を初期化する場合、インターフェースのアナログ特性及びインターフェースのプロトコルを測定し、
前記測定の結果に基づいて、前記アナログ特性を最適値に調整した後に、前記プロトコルを最適値に調整することを特徴とするデータ入出力装置。
【請求項２】
前記インターフェースのプロトコル特性として、受信したプリミティブ、ＦＩＳ、ＡＴＡ／ＡＴＡＰＩコマンドの数、受信したプリミティブ、ＦＩＳ、ＡＴＡ／ＡＴＡＰＩコマンドの順序及び前記コンピュータのコマンド応答時間の少なくとも一つを測定し、
前記測定の結果に基づいて、送信されるプリミティブ信号の数、送信されるプリミティブ信号の順序及び／又は前記データ入出力装置のコマンド応答時間を調整することを特徴とする請求項１に記載のデータ入出力装置。
【請求項３】
前記インターフェースのアナログ特性として、信号の振幅及び受信信号の同期引込時間の少なくとも一つを測定し、
前記測定の結果に基づいて、送信される信号の振幅及び／又は前記同期引込時間を調整することを特徴とする請求項１に記載のデータ入出力装置。
【請求項４】
前前記調整されたアナログ特性及びプロトコル特性を不揮発性記憶手段に格納することを特徴とする請求項１から３のいずれか一つに記載のデータ入出力装置。
【請求項５】
前記光ディスク装置に電源が投入された、又は、前記ホストコンピュータからリセット信号を受信した場合、前記最適値に調整されたインターフェースのアナログ特性及び前記最適値に調整されたインターフェースのプロトコルを予め設定されたテーブルとして不揮発性記憶領域に保存し、
前記ホストコンピュータとの通信が一定時間正常に行えない、前記光ディスク装置の電源が再投入された又は前記ホストコンピュータからリセット信号を受信した場合、前記保存された最適値で前記インターフェースを起動することを特徴とする請求項１から４の何れか一つに記載のデータ入出力装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ入出力装置に関し、特に、光ディスク装置等のインターフェースの特性の調整に関する。
【背景技術】
【０００２】
近年、コンピュータにデータを入出力する周辺機器（例えば、光ディスク装置、ハードディスクドライブ等）を接続するために、ＳＡＴＡ（Ｓｅｒｉａｌ  Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ）インターフェースが用いられている。このＳＡＴＡインターフェースを用いてコンピュータと周辺機器とを接続する場合、コンピュータに使用されているチップセット（ＳｏｕｔｈＢｒｉｄｇｅ）及びＢＩＯＳののアナログ特性及びプロトコル特性はＳＡＴＡ標準に従っているが、コンピュータ及び周辺機器によって少しの相違がある。このアナログ特性の相違は、アナログ信号の振幅の判定閾値、送受信タイミングに現れ、このプロトコル特性の相違は、ＳＡＴＡ規格の解釈の違い、チップセットが備える特殊機能、チップセットのバグ等によって現れる。このため、コンピュータと周辺機器との組み合わせによっては、ＳＡＴＡを用いた通信のプロトコル特性又はアナログ特性が整合せず、両者が通信できない場合がある。
【０００３】
従来、前述したようなプロトコル特性又はアナログ特性の不整合によって通信できない場合、これらのコンピュータ及び周辺機器のプロトコル特性及びアナログ特性を、技術者が測定器を用いて解析し、ファームウェアを変更していた。このため、インターフェースの特性を自動的に調整する技術が求められていた。
【０００４】
このようなインターフェースの特性を調整する技術として、特許文献１には、マスタデバイスがスレーブデバイスから１つ又は複数の一方向データ経路を介して受信される情報に基づいて受信器特性を適応的に変更した後に、送信特性を適応的に変更する技術が記載されている。
【０００５】
また、ＳＡＴＡインターフェースに関して、特許文献２には、ＳＡＴＡインターフェースの振幅判定回路及び時間判定回路の自己調整機構について記載されている。さらに、特許文献３には、ホストから受信エラーの返信があった場合には、送信回路の設定を変更するＳＡＴＡの通信制御装置について記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特表２００９−５２９２８９号公報
【特許文献２】特開２００９−１４１７２２号公報
【特許文献３】特開２００９−１３０６１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
前述したように、ＳＡＴＡのアナログ特性を調整する従来技術が存在する。しかし、何れの先行技術文献にもインターフェースのアナログ特性を変更することが記載されているだけで、ＳＡＴＡのプロトコルの設定、すなわちデジタル特性を調整することは記載されていない。
【０００８】
また、デジタル特性は、信号レベル等のアナログ調整が完了した後に、調整される必要があるが、この点は従来技術では考慮されていなかった。
【０００９】
本発明は、ＳＡＴＡを用いた通信におけるプロトコル特性及びアナログ特性を、技術者によらずに自動的に調整する光ディスク装置等の周辺機器を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明の代表的な一例を示せば以下の通りである。すなわち、コンピュータにデータを入出力するために接続されるデータ入出力装置であって、前記データ入出力装置を初期化する場合、インターフェースのアナログ特性及びインターフェースのプロトコルを測定し、前記測定の結果に基づいて、前記アナログ特性を最適値に調整した後に、前記プロトコルを最適値に調整することを特徴とする。
【発明の効果】
【００１１】
本発明の実施の形態によると、ホストコンピュータの特性によらず、適切な条件でホストコンピュータと通信をすることができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施の形態の光ディスク装置の構成を示すブロック図である。
【図２】本発明の実施の形態のインターフェースの構成を示すブロック図である。
【図３】本発明の実施の形態のアナログ調整処理のフローチャートである
【図４】本発明の実施の形態のプロトコル調整処理のフローチャートである。
【発明を実施するための形態】
【００１３】
図１は、本発明の実施の形態の光ディスク装置１００の構成を示すブロック図である。
【００１４】
本実施の形態の光ディスク装置１００は、光学ヘッド１０２、ＲＦアンプ１０３、デコーダ１０４、インターフェース１０５、バッファメモリ１０６、システムコントローラ１０７、メモリ１０８、エンコーダ１０９、レーザ駆動回路１１０及びスピンドルモータ１１１を備える。
【００１５】
光ディスク装置１００は、インターフェース１０５を介してホストコンピュータ１５０と接続され、光ディスク１０１（例えば、ブルーレイディスク）から再生したデータをホストコンピュータ１５０へ出力する。なお、光ディスク装置１００は、ホストコンピュータ１５０から入力されるデータを書き込み可能な光ディスク１０１に記録する機能を有してもよい。スピンドルモータ１１１は光ディスク１０１を回転駆動する。
【００１６】
光学ヘッド１０２は、光ディスク１０１からデータを再生する時には、弱いレーザ光を光ディスク１０１に照射し、そのレーザ光の反射光により、光ディスク１０１に記録されているデータを再生し、反射光に対応するＲＦ信号を出力する。また、光学ヘッド１０２は、光ディスク１０１にデータを記録する時には、再生時より強いレーザ光を光ディスク１０１に照射する。光ディスク１０１は、レーザ光が照射された部分の熱による相変化によって記録層に記録ピットを形成し、記録層の反射率を変化させてデータを記録する。
【００１７】
ＲＦアンプ１０３は、光学ヘッド１０２によって出力されるＲＦ信号を増幅し、増幅されたＲＦ信号をデジタルデータとして出力する。デコーダ１０４は、ＲＦアンプ１０３から出力されたデジタルデータを光ディスクの種類毎に定められたフォーマットに従って復調し、エラー検出及びエラー訂正を行った後、復調されたデータをバッファメモリ１０６に一時的に格納する。
【００１８】
インターフェース１０５は、光ディスク装置１００と接続されるホストコンピュータ１５０との間のデータ及びコマンドの送受信を制御する。インターフェース１０５の構成は図２を用いて後述する。バッファメモリ１０６は、ホストコンピュータ１５０からインターフェース１０５を介して入力され、光ディスク１０１へ記録されるデータを一時的に記憶する。
【００１９】
エンコーダ１０９は、ホストコンピュータ１５０から入力され、バッファメモリ１０６に一時的に記憶されたデータを、光ディスクの種類毎に定められたフォーマットに従って変調する。レーザ駆動回路１１０は、光学ヘッド１０２のレーザ光源を駆動するための信号を出力する。
【００２０】
システムコントローラ１０７は、光ディスク装置１００の動作を制御するマイクロプロセッサであり、デコーダ１０４、エンコーダ１０９及びインターフェース１０５の動作を制御する。また、システムコントローラ１０７は、バッファメモリ１０６に一時的に記憶されたデータの読み出し、及びバッファメモリ１０６へのデータの書き込みを制御する。また、システムコントローラ１０７は、ホストコンピュータ１５０から受信したコマンドを解釈し、受信したコマンドに従った処理を行う。
【００２１】
メモリ１０８は、システムコントローラ１０７が処理を実行するために必要なデータ、及び、処理によって生成されたデータを格納する。メモリ１０８は、その記憶領域の少なくとも一部に不揮発性記憶領域を含む。この不揮発性記憶領域には、後述するＳＡＴＡのインターフェースの設定及びログが格納される。
【００２２】
図２は、本発明の実施の形態のインターフェースの構成を示すブロック図である。
【００２３】
インターフェース１０５は、送信信号ドライバ１１５、受信信号ドライバ１１６、通信制御部１１７、コマンド生成部１１８、コマンド検出部１１９、クロック抽出部１２０及びタイミング制御部１２１を備える。
【００２４】
送信信号ドライバ１１５は、ホストコンピュータ１５０に送信するアナログ信号を生成し、受信信号ドライバ１１６は、ホストコンピュータ１５０から送信されるアナログ信号を受信する。通信制御部１１７は、所定のプロトコルに従ったホストコンピュータ１５０との通信を制御する。本実施の形態の光ディスク装置１００は、ホストコンピュータ１５０との間でＳＡＴＡプロトコルに従って通信する。
【００２５】
コマンド生成部１１８は、ホストコンピュータ１５０にコマンドとして送信される固定パターンを格納しており、通信制御部１１７からの指示によって、送信されるコマンドを生成する。コマンド検出部１１９は、ホストコンピュータ１５０からコマンドとして送信される固定パターンを格納しており、受信した信号と格納されたパターンとを比較し、受信した信号と格納されたパターンとが一致した場合にコマンドを受信したことを検出し、検出されたコマンドを通信制御部１１７に送る。
【００２６】
クロック抽出部１２０は、ホストコンピュータ１５０から受信した信号から所定の同期パターンを抽出し、受信信号をデコードするためのクロック信号を生成する。タイミング制御部１２１は、通信制御部１１７によって生成された送信クロック信号によって、ホストコンピュータ１５０に送信されるデータ及びコマンドの送信タイミングを制御する。
【００２７】
送信信号ドライバ１１５によって送信されるコマンドは、通信制御部１１７の指示によって生成され、送信信号ドライバ１１５によって送信されるデータは、バッファメモリ１０６から読み出される。受信信号ドライバ１１６が受信したコマンドは、通信制御部１１７に入力され、受信信号ドライバ１１６が受信したデータは、バッファメモリ１０６に格納される。
【００２８】
図３は、本発明の実施の形態のアナログ調整処理のフローチャートである。
【００２９】
このアナログ調整処理はシステムコントローラ１０７によって実行されるが、インターフェース１１５の通信制御部１１７がアナログ調整処理を実行してもよい。
【００３０】
まず、電源投入時、インターフェース１１５のコントローラは、メモリ１０８から、現在のＳＡＴＡの設定（受信信号閾値、ＰＬＬ特性、送信信号振幅、等）を読み出す（２０１）。なお、光ディスク装置１００の出荷時にはメモリ１０８には標準値が格納されており、その後電源遮断時に、使用していた値がメモリに格納される。このため、その後電源を投入した場合、前の電源遮断時に使用していた値が設定される。
【００３１】
その後、ホストコンピュータ１５０から送信されたアナログ信号の振幅を測定する（２０２）。そして、測定された振幅から受信信号の閾値を設定する（２０３）。具体的には、受信信号のピークの所定の割合を閾値に設定する。そして、この所定の割合を変更することによって、ホストコンピュータ１５０との間の送受信特性を整合する。
【００３２】
その後、受信信号のＰＬＬのロック時間を計測する（２０４）。これは、ホストコンピュータ１５０のチップセットやＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）によって、周辺機器と通信を確立するために用いられるＯＯＢ（Ｏｕｔ−ｏｆ−Ｂａｎｄ  Ｓｉｇｎａｌｉｎｇ）のやりとりをする場合、ホストコンピュータ１５０から送信されるＯＯＢに対して、周辺機器から送信されるＯＯＢを受信する許容時間が異なる。このため、ホストコンピュータ１５０と周辺機器との通信を確立するためには、ホストコンピュータ１５０から送信されたＯＯＢに対し、周辺機器は適切なタイミングで返答しなければならない。よって、ホストコンピュータ１５０から送信されたＯＯＢに同期したＯＯＢ信号を生成するためのＰＬＬのロック時間を調整するために、ＰＬＬのロック時間を計測する。
【００３３】
その後、受信信号のＰＬＬの電流を調整する（２０５）。具体的には、チャージポンプに流す電流を許容範囲内で変化させることによって、ＰＬＬのロック時間を変更する。この電流の変更は、最初は最適と推定される標準の電流値に設定し、ホストコンピュータ１５０の応答によって、所定のパターンで電流値を増減させる。
【００３４】
その後、光ディスク装置１００から送信されるＯＯＢ信号の振幅を調整する（２０６）。このＯＯＢ送信信号は、ホストコンピュータ１５０と周辺機器とが通信開始するときにやりとりされる信号である。ＯＯＢ信号の振幅の調整は、最初は最適と推定される標準の振幅値に設定し、所定のパターンで振幅値を増減させる。
【００３５】
なお、受信信号の閾値設定（２０３）、受信信号ＰＬＬ調整（２０５）及びＯＯＢ信号振幅調整（２０６）は、予め設定されたテーブルから設定値を選択することによって、ＳＡＴＡ特性が設定される。このテーブルは、メモリ１０８の不揮発性記憶領域に格納される。なお、光ディスク装置１００がリセットされる毎に、所定の順序で選択してもよく、ステップ２１１で保存されたログに含まれるＳＡＴＡ設定及び通信品質を参照して、これらの値の増減し又は調整量を決定してもよい。
【００３６】
その後、ホストコンピュータ１５０に対し、ＯＯＢ信号を送信し、所定時間内にホストコンピュータ１５０からの返信を受信したか否かを判定する（２０７）。
【００３７】
その結果、所定時間内にホストコンピュータ１５０からの返信を受信しなかった場合、ＳＡＴＡのアナログ特性の設定（すなわち、次回電源投入時に使用される設定値）を選択し、選択された設定値をメモリに保存し、及び通信結果をログとしてメモリに保存して（２１３）。ステップ２０６に戻り、ＯＯＢ信号の振幅を再調整する。
【００３８】
一方、ホストコンピュータ１５０からの返信を受信した場合、ＳＡＴＡのアナログ特性の設定（すなわち、次回電源投入時に使用される設定値）を選択し、選択された設定値をメモリに保存し、及び通信結果をログとしメモリに書き込む（２０８）。その後、送信信号のプロトコル特性を最適化する（２０９）。このプロトコル調整処理は、図４を用いて説明する。
【００３９】
その後、ホストコンピュータ１５０との通信は正常に行われているか否かを判定する（２１０）。この通信が正常かは、比較的長時間（例えば、１分以上）で判定するとよい。具体的には、所定時間のコマンドのエラー率、ホストコンピュータ１５０からプリミティブ、ＦＩＳ、ＡＴＡ／ＡＴＡＰＩコマンド等のエラーの返信があるか、等によって、実際の通信に支障がないかを判定する。なお、物理層、リンク層等の下位層における判定だけでなく、トランスポート層、アプリケーション層等の上位層において判定するとよい。これは、上位層の方が実際の通信の可否に基づいた判定となるからである。
【００４０】
判定の結果、通信が正常である場合、ＳＡＴＡのアナログ特性の設定（すなわち、次回電源投入時に使用される設定値）を選択し、選択された設定値をメモリに保存し、及び通信品質をログとしてメモリに保存し（２１１）、光ディスク装置は正常動作を開始する（２１２）。
【００４１】
一方、通信が正常でない場合、ＳＡＴＡのアナログ特性の設定（すなわち、次回電源投入時に使用される設定値）を選択し、選択された設定値をメモリに保存し、及び通信品質をログとしてメモリに保存する（２１３）。同時に、予め設定されたテーブル又は保存されたログを参照して、次回の起動時の設定を行う。ＯＯＢは通信の開始を示す特殊な信号で１種類のバースト信号と２種類のスペース信号とから構成され、スペース長の違いによってＣＯＭＲＥＳＥＴとＣＯＭＷＡＫＥとの二つがある。図３の２０２では、信号振幅の測定と同時にＯＯＢパターンのバースト長の時間とスペース長の時間とを測定し、ＣＯＭＲＥＳＥＴかＣＯＭＷＡＫＥか、又はその他の信号かを判断している。しかし、ＯＯＢによって通信が確立した後に送受信されるＰｒｉｍｉｔｉｖｅでは、ＯＯＢより早いタイミングでコマンドが送られてくる。このため、ＯＯＢによって通信は確立したが、その後のコマンドの取得率が悪い場合がある。このような場合にメモリ１０８にログを保存することによって、次の電源投入時（又は、ＣＯＭＲＥＳＥＴ時）の設定を決めるための情報とすることができる。次回電源の投入時（又は、ＣＯＭＲＥＳＥＴ時）の設定は、通信が正常でないと判定した時点で、前述した予め設定されたテーブル等を参照して値を決定し、電源投入時に参照するメモリに保存しておく。
【００４２】
なお、複数回のログをメモリ１０８に保存しておくとよい。これは、複数のＳＡＴＡの設定及び通信品質を参照することによって、早く的確にＳＡＴＡの設定の最適条件を求めることができるからである。
【００４３】
通信が正常でない場合、ホストコンピュータ１５０は、光ディスク装置にアクセスできないので、通常、光ディスク装置との通信を初期化する信号であるＣＯＭＲＥＳＥＴコマンドを送信してくる。このため、ステップ２１２の後、ホストコンピュータ１５０からのＣＯＭＲＥＳＥＴを待ち、ステップ２０２に戻り、アナログ信号レベルの測定から再度処理を実行する。
【００４４】
なお、ホストコンピュータ１５０がＣＯＭＲＥＳＥＴコマンドを送信してこない場合、ユーザは光ディスク装置１００を使用することができないので、ホストコンピュータ１５０の電源の再投入（再起動）をすることが考えられる。この場合も、ホストコンピュータ１５０からのＣＯＭＲＥＳＥＴと同様に、アナログ調整処理が最初から実行される。
【００４５】
アナログ調整処理（図３）では、受信信号閾値、ＰＬＬ特性及び送信信号振幅について調整をしたが、これ以外に、信号の間隔、信号の立ち上がり時間、信号の立ち下がり時間、プリエンファシス特性、等について調整してもよい。
【００４６】
図４は、本発明の実施の形態のプロトコル調整処理のフローチャートである。
【００４７】
このプロトコル調整処理は、アナログ調整処理（図３）のステップ２０９において呼び出される。
【００４８】
まず、インターフェース１１５のコントローラは、メモリ１０８から、現在のＳＡＴＡの構成要素であるプリミティブ、ＦＩＳ（Ｆｒａｍｅ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｓｔｕｒｕｃｔｕｒｅ）、ＡＴＡ／ＡＴＡＰＩコマンドのプロトコル送信の設定（プリミティブ、ＦＩＳ、ＡＴＡ／ＡＴＡＰＩコマンドの数及び順序、コマンド応答時間等）を読み出す（２２１）。プリミティブコマンドは、ＳＡＴＡによって通信を制御するために送受信されるコマンドであり、送受信されるコマンドの数がＳＡＴＡによって規定されている。なお、光ディスク装置１００の出荷時にはメモリ１０８には標準値が格納されており、その後電源遮断時に、使用していた値がメモリに格納される。このため、その後電源を投入した場合、前の電源遮断時に使用していた値が設定される。
【００４９】
その後、ホストコンピュータ１５０から所定時間に送信されたプリミティブ、ＦＩＳ、ＡＴＡ／ＡＴＡＰＩコマンドの数及び順序を測定する（２２２）。そして、測定されたプリミティブ、ＦＩＳ、ＡＴＡ／ＡＴＡＰＩコマンドの数及び順序に従って、光ディスク装置１００から送信するプリミティブ、ＦＩＳ、ＡＴＡ／ＡＴＡＰＩコマンドの数及び順序を決定する（２２３）。具体的には、ホストコンピュータ１５０から送信されたプリミティブ、ＦＩＳ、ＡＴＡ／ＡＴＡＰＩコマンドと同じ数及び順序でプリミティブコマンドを送信するように設定する。
【００５０】
これは、実際に、特定のホストコンピュータ１５０と周辺機器との間で送受信されるプリミティブ、ＦＩＳ、ＡＴＡ／ＡＴＡＰＩコマンドの数及び順序は、ＳＡＴＡ標準に規定されている数及び順序と異なる場合があり、光ディスク装置１００からホストコンピュータ１５０に送信されるプリミティブコマンドの数及び順序を、ホストコンピュータ１５０に整合させるためである。例えば、ＳＡＴＡ標準では、６個以上のプリミティブコマンドを送信することを規定している場合でも、８個のコマンドを送ると正常に受け取らないホストコンピュータ１５０もある。このため、ホストコンピュータ１５０が６個のプリミティブコマンドを送信する場合、光ディスク装置１００も６個のプリミティブコマンドを送信するとよい。また、ＳＡＴＡ標準ではコマンドＡとコマンドＢとの送信順序は任意であるが、コマンドＡとコマンドＢとを所定の順序で送信しないと、受け取らないホストコンピュータ１５０もある。このため、本機能では、ホストコンピュータ１５０がコマンドＡ、Ｂの順序でコマンドを送信する場合、光ディスク装置１００もコマンドＡ、Ｂの順序でコマンドを送信することができる。
【００５１】
その後、光ディスク装置１００から送信されたコマンドに対して、ホストコンピュータ１５０がコマンドを送ってくるまでの時間であるコマンド応答時間を測定する（２２４）。その後、ホストコンピュータ１５０の応答時間に従って、光ディスク装置１００から送信されるコマンドの応答時間を決定する（２２５）。これは、ホストコンピュータ１５０の応答時間と同じ時間、又は、ホストコンピュータ１５０の応答時間に所定時間を増減した時間を設定するとよい。
【００５２】
コマンド応答時間は、光ディスク装置１００がコマンドを送信した後、返信を受信するまでの時間である。ＳＡＴＡ標準では標準的なコマンド応答時間が定められているが、ホストコンピュータ１５０によって許容可能なコマンド応答時間に差があることから、ホストコンピュータ１５０がコマンドの応答に要する時間を測定し、その時間と同じ時間でコマンドを返信するように設定する。
【００５３】
その後、決定したコマンド応答時間を変数に設定する（２２６）。このとき、コマンドの処理に必要な時間によって、設定される変数を微調整してもよい。例えば、処理に長い時間を要するコマンドの場合は、測定されたコマンド応答時間より設定値を短くする。
【００５４】
その後、短時間（例えば、１ミリ秒〜１秒程度）のホストコンピュータ１５０との通信が正常に行われているか否かを判定する（２２７）。
【００５５】
その結果、ホストコンピュータ１５０からコマンドの応答が受信できない場合、通信が正常に行われていないので、ＳＡＴＡの設定及び通信結果をログとしてメモリに保存して（２２９）、ステップ２２６に戻り、コマンド応答時間が設定された変数を微調整する。これは、ホストコンピュータ１５０と同じコマンド応答時間にしても、コマンドを受け入れないホストコンピュータ１５０の場合、コマンド応答時間を増減することによって、ホストコンピュータ１５０が受け入れるタイミングを探して、その時間でコマンドを返信するためである。
【００５６】
一方、ホストコンピュータ１５０からコマンドの応答を受信した場合、短時間の通信が正常に行われているので、ＳＡＴＡの設定及び通信結果をログとしてメモリに保存し（２２８）、その後、プロトコル調整処理を終了し、アナログ調整処理２１０に戻る。
【００５７】
本実施の形態では、ＳＡＴＡのアナログ特性及びプロトコル特性の設定及び通信結果をメモリに保存した（２０８、２１１、２１２、２２８、２２９）。このメモリに保存されたログをインターフェース１１５から出力できるようにしてもよい。このようにすれば、光ディスク装置１００とホストコンピュータ１５０とが通信できない原因や、光ディスク装置１００が最適な設定に到達した経緯を知ることができる。
【００５８】
以上説明したように、本発明の実施の形態では、ＳＡＴＡのアナログ特性・プロトコル特性を電源投入時（又は、リセット信号による初期化時）に変化させることによって、ホストコンピュータと光ディスク装置との通信条件を調整する。このため、ホストコンピュータが、光ディスク装置１００へのリセットの送信、光ディスク装置１００の電源再投入、ホストコンピュータ１５０の電源再投入によって、より適する条件を選択することができる。
【００５９】
そして、選択された最適条件をフラッシュメモリ（不揮発性記憶媒体）に格納し、次の電源投入時の初期設定値として使用することによって、いかなるホストコンピュータ１５０との組み合わせにおいても、より良好な環境でエラーの少ない通信をすることができる。
【００６０】
そして、選択された条件及び通信結果を通信ログとしてメモリに格納し、インターフェース１１５から取り出したデータを、遠隔地の技術者に送ることによって、解析を必要とする地域において高価な測定器を準備することなく通信の問題を解析することができる。
【００６１】
なお、本発明の実施の形態として光ディスク装置について説明したが、光ディスク装置に限らず、磁気ディスク装置不揮発性記憶装置（例えば、ＳＳＤ：Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の、ホストコンピュータ１５０にデータを入出力する周辺機器に適用することができる。
【００６２】
また、本発明の実施の形態としてＳＡＴＡインターフェースについて説明したが、ＳＡＴＡに限らず、他のシリアル通信（例えば、ＵＳＢ、ＨＤＭＩ、ＳＡＳ、ＥｔｈｅｒＮｅｔ、ＰＣＩ−Ｅｘｐｒｅｓｓ等）にも、本発明を適用することができる。
【符号の説明】
【００６３】
１００  光ディスク装置
１０５  インターフェース
１０７  システムコントローラ
１５０  ホストコンピュータ
【図１】
2011130008.tif 000003
【図２】
2011130008.tif 000004
【図３】
2011130008.tif 000005
【図４】
2011130008.tif 000006