(57)【要約】【課題】ＦＰＤＭＡコマンドによるデータ転送完了後にＳＤＢ  ＦＩＳの送出が可能なコントローラを提供することである。【解決手段】ホスト装置との間で現在実行中のＦＰＤＭＡコマンドによるデータ転送完了後、ＳＤＢ  ＦＩＳを送出可能であることを認識するコマンド完了認識部３３を持つ。また、コマンド完了認識部の認識結果に基づいて、Ｒ＿ＲＤＹ応答抑止制御信号を生成するＲ＿ＲＤＹ応答抑止制御信号生成部３５を持つ。また、Ｒ＿ＲＤＹ応答抑止制御信号に基づいて、ホスト装置からのＸ＿ＲＤＹに対してＲ＿ＲＤＹ応答を行わないＲ＿ＲＤＹ応答抑止部４１を持つ。また、前記Ｒ＿ＲＤＹ応答抑止制御の後に、前記ホスト装置に対してＳＤＢ  ＦＩＳを送出するＳＤＢ  ＦＩＳ送出部３４を持つ。【選択図】図３
2013156731.tif 000002
【特許請求の範囲】
【請求項１】
ホスト装置との間で現在実行中のＦＰＤＭＡコマンドによるデータ転送完了後、実行中のＦＰＤＭＡコマンドを完了するためのＳＤＢ  ＦＩＳを送出可能であることを認識するコマンド完了認識部と、
前記コマンド完了認識部の認識結果に基づいて、データ転送完了後、前記ホスト装置から受信したＸ＿ＲＤＹに対するＲ＿ＲＤＹ応答を抑止するためのＲ＿ＲＤＹ応答抑止制御信号を生成し出力するＲ＿ＲＤＹ応答抑止制御信号生成部と、
前記Ｒ＿ＲＤＹ応答抑止制御信号を受信した場合に、前記ホスト装置から受信したＸ＿ＲＤＹに対してＲ＿ＲＤＹ応答を行わないＲ＿ＲＤＹ応答抑止制御を行うＲ＿ＲＤＹ応答抑止部と、
前記Ｒ＿ＲＤＹ応答抑止制御の後に、前記ホスト装置に対してＳＤＢ  ＦＩＳを送出するＳＤＢ  ＦＩＳ送出部と、
を備えるコントローラ。
【請求項２】
前記Ｒ＿ＲＤＹ応答抑止制御信号生成部は、前記ホスト装置からバスリセット要求であるＣＯＭＲＥＳＥＴを検知した場合、または、自装置においてバス異常状態の発生を検知した場合に、前記Ｒ＿ＲＤＹ応答抑止制御信号を生成しない、
請求項１に記載のコントローラ。
【請求項３】
前記コマンド完了認識部は、ファームウェアからの通知により、前記現在実行中のデータ転送完了後、前記実行中のＦＰＤＭＡコマンドを完了するためのＳＤＢ  ＦＩＳを送出可能であることを認識する、
請求項１または請求項２に記載のコントローラ。
【請求項４】
請求項１、２または３の何れか１項に記載のコントローラを備えたデバイス装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、コントローラおよびデバイス装置に関する。
【背景技術】
【０００２】
従来、ＳＡＴＡ（Serial  ＡＴＡ（Advanced  Technology  Attachment））のプロトコルにおいて、ＦＰＤＭＡ（First  Party  Direct  Memory  Access）コマンドによるデータ転送完了後にコマンド完了する場合、デバイス装置は、データ転送を行っていない期間にホスト装置へＳＤＢ（Set  Device  Bits）  ＦＩＳ（Frame  Information  Structure）を送出する。一方、ホスト装置は、次のＦＰＤＭＡコマンドを発行したい場合、データ転送を行っていない期間にデバイス装置へＲｅｇＨ２Ｄ  ＦＩＳを送出する。データ転送中、ホスト装置が次のコマンドの発行準備が完了し、また、デバイス装置が現コマンドを完了できると判断した場合、データ転送が完了した直後に、ホスト装置からのＲｅｇＨ２Ｄ  ＦＩＳとデバイス装置からのＳＤＢ  ＦＩＳが衝突するおそれがある。衝突が発生した場合、早く送出開始した装置のＦＩＳが有効となり、後からＦＩＳを送出しようとした装置はＦＩＳ送出を取り下げる。
【０００３】
しかしながら、従来技術では、衝突が発生した場合、デバイス装置では、ＳＤＢ  ＦＩＳを送出したがホスト装置のＲｅｇＨ２Ｄ  ＦＩＳとの衝突の結果取り下げられ、コマンド完了することができない、という状況が発生する。この場合、デバイス装置のコントローラでは、ＦＷ（Firm  Ware）でコマンド完了処理を行うが、コマンド完了するためにＨＷ（Hard  Ware）を操作していた処理がホスト装置との競合によって取り消されるため、追加のＨＷ操作で対応するという煩雑な処理を行う必要がある、という問題がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−１００２３０号公報
【特許文献２】特開２００９−３２０１１号公報
【特許文献３】特開２００２−２２３２３８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の一つの実施形態は、ＦＰＤＭＡコマンドによるデータ転送完了後にＳＤＢ  ＦＩＳを好適に送出することが可能なコントローラおよびデバイス装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一つの実施形態のコントローラは、ホスト装置との間で現在実行中のＦＰＤＭＡコマンドによるデータ転送完了後、実行中のＦＰＤＭＡコマンドを完了するためのＳＤＢ  ＦＩＳを送出可能であることを認識するコマンド完了認識部を持つ。また、前記コマンド完了認識部の認識結果に基づいて、データ転送完了後、前記ホスト装置から受信したＸ＿ＲＤＹに対するＲ＿ＲＤＹ応答を抑止するためのＲ＿ＲＤＹ応答抑止制御信号を生成し出力するＲ＿ＲＤＹ応答抑止制御信号生成部を持つ。また、前記Ｒ＿ＲＤＹ応答抑止制御信号を受信した場合に、前記ホスト装置から受信したＸ＿ＲＤＹに対してＲ＿ＲＤＹ応答を行わないＲ＿ＲＤＹ応答抑止制御を行うＲ＿ＲＤＹ応答抑止部を持つ。また、前記Ｒ＿ＲＤＹ応答抑止制御の後に、前記ホスト装置に対してＳＤＢ  ＦＩＳを送出するＳＤＢ  ＦＩＳ送出部を持つ。
【図面の簡単な説明】
【０００７】
【図１】図１は、第１の実施の形態にかかるＨＤＤの構成例を示す図である。
【図２】図２は、第１の実施の形態にかかるＨＤＣ部の構成例を示す図である。
【図３】図３は、ＳＡＴＡ転送制御部の構成例を示す図である。
【図４】図４は、ＦＰＤＭＡコマンドによるデータ転送時に送受信されるＦＩＳを示す図である。
【図５】図５は、デバイス装置がホスト装置からのＸ＿ＲＤＹに対してＲ＿ＲＤＹ応答を行わないＲ＿ＲＤＹ応答抑止制御に至る処理を示す図である。
【図６】図６は、第２の実施の形態にかかるＳＳＤの構成例を示す図である。
【図７】図７は、第２の実施の形態にかかるＳＳＤＣ部の構成例を示す図である。
【発明を実施するための形態】
【０００８】
以下に添付図面を参照して、本発明の実施の形態にかかるコントローラおよびデバイス装置を詳細に説明する。なお、この実施の形態により本発明が限定されるものではない。
【０００９】
（第１の実施の形態）
図１は、第１の実施の形態にかかるＳＡＴＡのデバイス装置の一例として、データの送受信が可能なＨＤＤ（Hard  Disk  Drive）の構成例を示す図である。ＨＤＤ１は、ハードディスクコントローラＬＳＩ（Large  Scale  Integrated  circuit）（以下、ＨＤＣとする）部２と、キャッシュバッファメモリ部３と、ヘッドアンプ部４と、Ｒｅａｄ／Ｗｒｉｔｅヘッド部５と、記録メディア部６と、を備える。
【００１０】
ＨＤＣ部２は、ＳＡＴＡ等のホストバスでホスト装置（図示せず）と接続し、デバイス装置（ＨＤＤ１）を制御するコントローラ（制御部）である。
【００１１】
キャッシュバッファメモリ部３は、ＨＤＣ部２が読み出したデータ等を記憶する。キャッシュバッファメモリ部３としては、ＤＲＡＭやＳＲＡＭなどがあるがこれらに限定するものではない。
【００１２】
ヘッドアンプ部４は、Ｒｅａｄ／Ｗｒｉｔｅヘッド部５が読み出した信号（データ）を増幅する。
【００１３】
Ｒｅａｄ／Ｗｒｉｔｅヘッド部５は、アームに保持されており、記録メディア部６を走査してデータの読み出しおよび書き込みを行う。Ｒｅａｄ／Ｗｒｉｔｅヘッド部５は、アームが固定された軸を中心として、記録メディア部６の半径方向に移動可能である。
【００１４】
記録メディア部６は、Ｒｅａｄ／Ｗｒｉｔｅヘッド部５によって読み書き可能なデータ領域を備える。
【００１５】
図２は、第１の実施の形態にかかるＨＤＣ部２の構成例を示す図である。ＨＤＣ部２は、ＣＰＵ（Central  Processing  Unit）部１１と、ＳＡＴＡ転送制御部１２と、キャッシュバッファ制御部１３と、ディスク記録再生制御部１４と、Ｒｅａｄ  Ｃｈａｎｎｅｌ部１５と、を備える。
【００１６】
ＣＰＵ部１１は、ＨＤＤ１全体の制御を行う。
【００１７】
ＳＡＴＡ転送制御部１２は、ＰＨＹ  Ｌａｙｅｒ部２１と、Ｌｉｎｋ  Ｌａｙｅｒ部２２と、Ｔｒａｎｓｐｏｒｔ  Ｌａｙｅｒ部２３と、Ａｐｐｌｉｃａｔｉｏｎ  Ｌａｙｅｒ部２４と、を備え、ホスト装置とのインタフェース制御を行う。詳細については後述する。
【００１８】
キャッシュバッファ制御部１３は、キャッシュバッファメモリ部３の制御を行う。具体的には、Ｒｅａｄ  Ｃｈａｎｎｅｌ部１５が読み出したデータをディスク記録再生制御部１４経由で取得し、キャッシュバッファメモリ部３に格納した後、ＳＡＴＡ転送制御部１２へ転送する。
【００１９】
ディスク記録再生制御部１４およびＲｅａｄ  Ｃｈａｎｎｅｌ部１５は、Ｒｅａｄ／Ｗｒｉｔｅヘッド部５の位置決め処理に必要な制御信号を出力し、また、記録メディア部６との間でデータを読み書きするためのＲｅａｄ／Ｗｒｉｔｅデータの処理を行う。
【００２０】
図３は、ＳＡＴＡ転送制御部１２の構成例を示す図である。ＳＡＴＡ転送制御部１２は、ＳＡＴＡのインタフェースとしてホスト装置とデータの送受信を行うＰＨＹ  Ｌａｙｅｒ部２１と、ＳＡＴＡにおいて、８ｂｉｔ／１０ｂｉｔ変換や、プリミティブの解釈および組み立て・送出、パワーマネージメントを制御するＬｉｎｋ  Ｌａｙｅｒ部２２と、ＦＩＳの分解および形成を制御するＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒ部２３と、ＳＡＴＡにおいて、コマンドデータの解釈や、ＦＩＳの解釈および組み立て・送出、データ転送を制御するＡｐｐｌｉｃａｔｉｏｎ  Ｌａｙｅｒ部２４と、を備える。
【００２１】
また、Ａｐｐｌｉｃａｔｉｏｎ  Ｌａｙｅｒ部２４は、データ転送認識部３１と、コマンド完了指示部３２と、コマンド完了認識部３３と、ＳＤＢ  ＦＩＳ送出部３４と、  Ｒ＿ＲＤＹ応答抑止制御信号生成部３５と、を備える。
【００２２】
データ転送認識部３１は、ＦＰＤＭＡコマンドによるデータ転送が継続中の場合に、自装置（ＨＤＤ１）がＦＰＤＭＡコマンドによるデータ転送中であることを認識する。
【００２３】
コマンド完了指示部３２は、コマンド完了認識部３３に対して、現在実行中のデータ転送が完了した時点で現在実行中のＦＰＤＭＡコマンドを完了してよい、という指示をデータ転送完了前に通知する。
【００２４】
コマンド完了認識部３３は、コマンド完了指示部３２からの通知により、現在実行中のデータ転送が完了した時点で現在実行中のＦＰＤＭＡコマンドを完了してよい、すなわちＳＤＢ  ＦＩＳを送出できることを認識する。
【００２５】
ＳＤＢ  ＦＩＳ送出部３４は、データ転送認識部３１およびコマンド完了認識部３３の認識結果に基づいて、データ転送完了後にホスト装置へＳＤＢ  ＦＩＳを送出する。
【００２６】
Ｒ＿ＲＤＹ応答抑止制御信号生成部３５は、データ転送認識部３１およびコマンド完了認識部３３の認識結果に基づいて、Ｒ＿ＲＤＹ応答抑止制御信号を生成する。
【００２７】
また、Ｌｉｎｋ  Ｌａｙｅｒ部２２は、Ｒ＿ＲＤＹ応答抑止部４１を備える。
【００２８】
Ｒ＿ＲＤＹ応答抑止部４１は、Ｒ＿ＲＤＹ応答抑止制御信号に基づいて、Ｒ＿ＲＤＹ応答抑止制御を行う。
【００２９】
つづいて、ＨＤＤ１において、ＦＰＤＭＡコマンドによるデータ転送後、確実にＳＤＢ  ＦＩＳをホスト装置へ送出してコマンド完了する処理について説明する。一例として、ＨＤＤ１がデータを受信する（書き込む）場合のＦＰＤＭＡコマンド（ＷＲＩＴＥ  ＦＰＤＭＡ  ＱＵＥＵＥＤコマンド）の場合について説明する。
【００３０】
まず、Ａｐｐｌｉｃａｔｉｏｎ  Ｌａｙｅｒ部２４では、ＦＰＤＭＡコマンドによるデータ転送が継続中の場合、データ転送認識部３１は、ＦＰＤＭＡコマンドによるデータ転送中であることを認識する。
【００３１】
コマンド完了指示部３２は、コマンド完了認識部３３に対して、現在実行中のデータ転送が完了した時点で現在実行中のＦＰＤＭＡコマンドを完了してよい、という指示をデータ転送完了前に通知する。実際のＨＤＤ１では、ここでの指示はＦＷからＨＷへの通知である。
【００３２】
コマンド完了認識部３３は、コマンド完了指示部３２からの通知により、現在実行中のデータ転送が完了した時点で現在実行中のＦＰＤＭＡコマンドを完了してよい、すなわちＳＤＢ  ＦＩＳを送出できることを認識する。
【００３３】
ＳＤＢ  ＦＩＳ送出部３４は、現在実行中のデータ転送が完了した場合、データ転送認識部３１およびコマンド完了認識部３３の認識結果に基づいて、データ転送完了後にホスト装置へＳＤＢ  ＦＩＳを送出する。
【００３４】
Ｒ＿ＲＤＹ応答抑止制御信号生成部３５は、データ転送認識部３１およびコマンド完了認識部３３の認識結果に基づいて、ＳＤＢ  ＦＩＳ送出部３４がデータ転送完了後にＳＤＢ  ＦＩＳを送出する前、具体的にはデータ転送認識部３１においてデータ転送の完了を認識した時点で、Ｒ＿ＲＤＹ応答抑止制御信号を生成し、Ｒ＿ＲＤＹ応答抑止制御信号をＬｉｎｋ  Ｌａｙｅｒ部２２へ出力する。
【００３５】
Ｌｉｎｋ  Ｌａｙｅｒ部２２では、Ｒ＿ＲＤＹ応答抑止部４１が、Ｒ＿ＲＤＹ応答抑止制御信号を受信すると、ホスト装置から次のＦＰＤＭＡコマンドを発行する前に送出されるＸ＿ＲＤＹを受信しても、Ｒ＿ＲＤＹ応答を行わないＲ＿ＲＤＹ応答抑止制御を行う。具体的に、Ｒ＿ＲＤＹ応答抑止部４１は、Ａｐｐｌｉｃａｔｉｏｎ  Ｌａｙｅｒ部２４においてＳＤＢ  ＦＩＳ送出部３４がＳＤＢ  ＦＩＳを送出完了するまでの間、ホスト装置からＸ＿ＲＤＹを受信してもＲ＿ＲＤＹ応答を行わない。
【００３６】
ここで、ホスト装置とデバイス装置（ＨＤＤ１）との間でＦＰＤＭＡコマンドによるデータ転送を行う場合に送受信されるＦＩＳについて説明する。図４は、ＦＰＤＭＡコマンドによるデータ転送時に送受信されるＦＩＳを示す図である。
【００３７】
（１）ＦＰＤＭＡコマンド発行時、ホスト装置は、ＦＰＤＭＡコマンド発行のためのＲｅｇＨ２Ｄ  ＦＩＳをデバイス装置（ＨＤＤ１）へ送出し、デバイス装置（ＨＤＤ１）は、Ａｐｐｌｉｃａｔｉｏｎ  Ｌａｙｅｒ部２４の制御により、ＦＰＤＭＡコマンド受領応答のためのＲｅｇＤ２Ｈ  ＦＩＳをホスト装置へ送出する。
【００３８】
（２）ＦＰＤＭＡデータ転送開始時、デバイス装置（ＨＤＤ１）は、Ａｐｐｌｉｃａｔｉｏｎ  Ｌａｙｅｒ部２４の制御により、データ受領準備完了通知のためのＤＭＡ  Ｓｅｔｕｐ  ＦＩＳをホスト装置へ送出し、ホスト装置は、複数のブロックに分割されたデータの最初の１つ目のブロックのデータ転送のためのＤａｔａ  Ｈ２Ｄ  ＦＩＳをデバイス装置（ＨＤＤ１）へ送出する。以降、ホスト装置は、デバイス装置（ＨＤＤ１）に対してデータ転送のためのＤａｔａ  Ｈ２Ｄ  ＦＩＳの送出を継続する。
【００３９】
（３）ＦＰＤＭＡデータ転送完了〜コマンド完了時、ホスト装置は、複数のブロックに分割されたデータの最終ブロックのデータ転送のためのＤａｔａ  Ｈ２Ｄ  ＦＩＳをデバイス装置（ＨＤＤ１）へ送出する。デバイス装置（ＨＤＤ１）は、Ａｐｐｌｉｃａｔｉｏｎ  Ｌａｙｅｒ部２４の制御により、コマンド完了のためのＳＤＢ  ＦＩＳをホスト装置へ送出する。
【００４０】
図４において、デバイス装置（ＨＤＤ１）がＳＤＢ  ＦＩＳを送出するまでの間にホスト装置が次のＦＰＤＭＡコマンドのためのＸ＿ＲＤＹを送出すると、従来では、デバイス装置（ＨＤＤ１）がＲ＿ＲＤＹ応答するため、ＳＤＢ  ＦＩＳ送出ができず、コマンドを完了することができない状態となる。ここで、デバイス装置（ＨＤＤ１）では、Ａｐｐｌｉｃａｔｉｏｎ  Ｌａｙｅｒ部２４において、図４に示すＡ時点において現在実行中のデータ転送が完了した時点でＦＰＤＭＡコマンドを完了（ＳＤＢ  ＦＩＳを送出）できることが確定している（認識している）。そのため、デバイス装置（ＨＤＤ１）では、Ａｐｐｌｉｃａｔｉｏｎ  Ｌａｙｅｒ部２４が、ホスト装置が最終ブロックのデータ転送のためのＤａｔａ  Ｈ２Ｄ  ＦＩＳを送出後（図４に示すＢ時点）、Ｌｉｎｋ  Ｌａｙｅｒ部２２が正常にデータを受信したことを確認（図４に示すＣ時点）してからＡｐｐｌｉｃａｔｉｏｎ  Ｌａｙｅｒ部２４がＳＤＢ  ＦＩＳを送出完了（図４に示すＤ時点）するまでの間、Ｌｉｎｋ  Ｌａｙｅｒ部２２に対してホスト装置からのＸ＿ＲＤＹに対してＲ＿ＲＤＹ応答を行わない制御を行う。
【００４１】
デバイス装置（ＨＤＤ１）において、ホスト装置からのＸ＿ＲＤＹに対してＲ＿ＲＤＹ応答を行わない制御に至る処理について詳細に説明する。図５は、デバイス装置（ＨＤＤ１）がホスト装置からのＸ＿ＲＤＹに対してＲ＿ＲＤＹ応答を行わないＲ＿ＲＤＹ応答抑止制御に至る処理を示す図である。
【００４２】
ホスト装置が最終データの最後にＣＲＣ（Cyclic  Redundancy  Check）を付して送信すると（ステップＳ１）、デバイス装置（ＨＤＤ１）は、ＣＲＣチェックを行う。デバイス装置（ＨＤＤ１）は、ＣＲＣチェックの結果エラーが無い場合、Ｒ＿ＯＫを返す。この時点で、デバイス装置（ＨＤＤ１）は、正常にデータ転送（受信）を完了する（ＳＤＢ  ＦＩＳが送信可能である）条件が成立する（ステップＳ２）。そのため、デバイス装置（ＨＤＤ１）は、ホスト装置に対してＲ＿ＲＤＹ応答を行わない応答抑止制御を開始する。なお、図５に示すＢ時点、Ｃ時点は図４に示すＢ時点、Ｃ時点に対応する。
【００４３】
ここで、ホスト装置から先に次のＦＰＤＭＡコマンド発行のためにＸ＿ＲＤＹが送出されても（ステップＳ３）、デバイス装置（ＨＤＤ１）は、Ｒ＿ＲＤＹ応答抑止制御中のため、Ｒ＿ＲＤＹ応答を行わない。一方、デバイス装置（ＨＤＤ１）は、ホスト装置からのＸ＿ＲＤＹ送出に関係なく、ＳＤＢ  ＦＩＳ送信のためのＸ＿ＲＤＹを送出する（ステップＳ４）。ホスト装置は、自身が送出したＸ＿ＲＤＹが衝突したと判断してＸ＿ＲＤＹ送出を中止して、デバイス装置（ＨＤＤ１）からのＸ＿ＲＤＹに対してＲ＿ＲＤＹ応答を行う（ステップＳ５）。デバイス装置（ＨＤＤ１）は、ホスト装置からのＲ＿ＲＤＹ応答を受信し、ＳＤＢ  ＦＩＳを送出することができる（ステップＳ６）。
【００４４】
このように、データ転送完了直後にホスト装置から次のＦＰＤＭＡコマンドのためのＸ＿ＲＤＹが発行された場合、デバイス装置（ＨＤＤ１）では、このＸ＿ＲＤＹを無視する（応答しない）。デバイス装置（ＨＤＤ１）は、ホスト装置からのＸ＿ＲＤＹに影響されず、データ転送完了直後にＳＤＢ  ＦＩＳ送出のためのＸ＿ＲＤＹを送出する。これにより、ホスト装置は、自身が送出したＸ＿ＲＤＹを取り下げてデバイス装置（ＨＤＤ１）のＸ＿ＲＤＹに対してＲ＿ＲＤＹ応答を行うので、デバイス装置（ＨＤＤ１）は、確実にＳＤＢ  ＦＩＳの送信を行うことができ、コマンド完了することができる（ＳＡＴＡ規格では、ホスト装置からのＸ＿ＲＤＹとデバイス装置（ＨＤＤ１）からのＸ＿ＲＤＹが衝突した場合は、ホスト装置がＸ＿ＲＤＹを取り下げる規定がある）。
【００４５】
なお、デバイス装置（ＨＤＤ１）において、データ転送完了後、直ちにＳＤＢ  ＦＩＳを送出できない状態であるにも関わらずＲ＿ＲＤＹ応答を行わないと、ホスト装置からコマンド発行ができないだけでなく、ＳＲＳＴ発行も行えない。また、ＳＡＴＡバスアナライザ等で解析した場合に、デバイス装置（ＨＤＤ１）がホスト装置からのＸ＿ＲＤＹに対するＲ＿ＲＤＹ応答を意図的に行っていないという現象が観測されてしまう。デバイス装置（ＨＤＤ１）が無秩序にＲ＿ＲＤＹ応答抑止を行うことは望ましくない。
【００４６】
そのため、Ｒ＿ＲＤＹ応答抑止制御信号生成部３５は、ホスト装置からのバスリセット要求の１つであるＳＡＴＡ転送制御回路リセット信号のＣＯＭＲＥＳＥＴを検知した場合、またはＰＨＹ  Ｌａｙｅｒ部２１からのバス異常発生を通知するＳｙｎｃＥｓｃａｐｅを検知した場合、Ｒ＿ＲＤＹ応答抑止制御信号を生成せず、Ｒ＿ＲＤＹ応答抑止部４１への出力を行わないことにより、Ｒ＿ＲＤＹ応答抑止部４１で行っているＲ＿ＲＤＹ応答抑止制御を解除する。
【００４７】
これにより、デバイス装置（ＨＤＤ１）は、データ転送完了直後にＳＤＢ  ＦＩＳを直ちに送信できる場合に限りＲ＿ＲＤＹ応答抑止制御を行うことが可能となる。ホスト装置（または、ＳＡＴＡバス上）から見ると、ホスト装置のＲｅｇＨ２Ｄ  ＦＩＳとデバイス装置（ＨＤＤ１）のＳＤＢ  ＦＩＳの衝突が発生した場合に、たまたまデバイス装置（ＨＤＤ１）が勝った、という状態に見えるので、デバイス装置がホスト装置からのＸ＿ＲＤＹに対するＲ＿ＲＤＹ応答を意図的に行っていない、とは見られないことから問題になることもない。
【００４８】
なお、一例として、ＷＲＩＴＥ  ＦＰＤＭＡ  ＱＵＥＵＥＤコマンド（データを受信して書き込む）の場合について説明したが、これに限定するものではなく、ＲＥＡＤ  ＦＰＤＭＡ  ＱＵＥＵＥＤコマンド（データを読んで送信する）場合についても同様の制御を行うことが可能である。
【００４９】
以上説明したように、本実施の形態では、ＨＤＤ１は、ＦＰＤＭＡコマンドによるデータ転送完了直後にＳＤＢ  ＦＩＳを送出することが確実な場合、ホスト装置からのＸ＿ＲＤＹ（ＲｅｇＨ２Ｄ  ＦＩＳを含む何らかのＦＩＳ送出開始直前に行う送信要求）に対してのＲ＿ＲＤＹによる応答（Ｘ＿ＲＤＹに対する承諾応答）を行わないこととした。これにより、ＨＤＤ１は、ＦＰＤＭＡコマンドによるデータ転送終了後に確実にＳＤＢ  ＦＩＳを送出してコマンド完了することができるため、ＦＷに実装する例外処理を減らすことができ、処理時間を減らして処理性能を向上させることが可能となる。
【００５０】
また、ＨＤＤ１は、Ｒ＿ＲＤＹによる応答（Ｘ＿ＲＤＹに対する承諾応答）を行わない場合において、ホスト装置からＣＯＭＲＥＳＥＴを受け付けた場合、またはＳｙｎｃＥｓｃａｐｅ発生時には、Ｒ＿ＲＤＹ応答抑止制御を解除することとした。これにより、ＨＤＤ１は、動作リセットを必要とする状況を検知し、動作リセットを行うことができる。
【００５１】
従来技術では、衝突が発生した場合、デバイス装置では、ＳＤＢ  ＦＩＳを送出したがホスト装置のＲｅｇＨ２Ｄ  ＦＩＳとの衝突の結果取り下げられ、コマンド完了することができない、という状況が発生する。この場合、デバイス装置のコントローラでは、ＦＷでコマンド完了処理を行うが、コマンド完了するためにＨＷを操作していた処理がホスト装置との競合によって取り消されるため、追加のＨＷ操作で対応するという煩雑な処理を行う必要がある、という問題があった。本実施の形態によれば、この問題を解決することが可能である。
【００５２】
（第２の実施の形態）
本実施の形態では、ＳＡＴＡのデバイス装置の一例として、データの送受信が可能なＳＳＤ（Solid  State  Drive）の場合について説明する。第１の実施の形態と異なる部分について説明する。
【００５３】
図６は、第２の実施の形態にかかるＳＳＤの構成例を示す図である。ＳＳＤ７は、ＳＳＤコントローラＬＳＩ（以下、ＳＳＤＣとする）部８と、キャッシュバッファメモリ部３と、不揮発性メモリ部９と、を備える。
【００５４】
ＳＳＤＣ部８は、ＳＡＴＡ等のホストバスでホスト装置（図示せず）と接続し、デバイス装置（ＳＳＤ７）を制御するコントローラ（制御部）である。
【００５５】
不揮発性メモリ部９は、読み書き可能なデータ領域を備えた記憶部である。ここでは、ｎ個の不揮発性メモリを備える。
【００５６】
記憶部関係の構成として、第１の実施の形態のＨＤＤ１（図１参照）ではヘッドアンプ部４、Ｒｅａｄ／Ｗｒｉｔｅヘッド部５および記録メディア部６を備え、本実施の形態のＳＳＤ７（図６参照）では不揮発性メモリ部９を備える点が異なるが、ＨＤＤ１およびＳＳＤ７は、ＳＡＴＡのデバイスとして同様の機能を実現可能である。
【００５７】
図７は、第２の実施の形態にかかるＳＳＤＣ部８の構成例を示す図である。ＳＳＤＣ部８は、ＣＰＵ部１１ａと、ＳＡＴＡ転送制御部１２と、キャッシュバッファ制御部１３ａと、不揮発性メモリ制御部１６と、を備える。
【００５８】
ＣＰＵ部１１ａは、ＳＳＤ７全体の制御を行う。
【００５９】
キャッシュバッファ制御部１３ａは、キャッシュバッファメモリ部３の制御を行う。具体的には、不揮発性メモリ制御部１６が読み出したデータを取得し、キャッシュバッファメモリ部３に格納した後、ＳＡＴＡ転送制御部１２へ転送する。
【００６０】
不揮発性メモリ制御部１６は、不揮発性メモリ部９からデータを読み書きするときにメモリ内での位置決め処理に必要な制御信号を出力し、また、不揮発性メモリ部９との間でデータを読み書きするためのＲｅａｄ／Ｗｒｉｔｅデータの処理を行う。
【００６１】
このように、デバイス装置が備える記憶部の構成がＨＤＤからＳＳＤに変更されても、ＳＡＴＡ転送制御部１２の構成は、同一である。そのため、デバイス装置が備える記憶部の構成は、ＨＤＤに限定するものではなく、ＳＳＤを用いた場合においても、第１の実施の形態と同様の効果を得ることができる。
【００６２】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００６３】
３１  データ転送認識部、３２  コマンド完了指示部、３３  コマンド完了認識部、３４  ＳＤＢ  ＦＩＳ送出部、３５  Ｒ＿ＲＤＹ応答抑止制御信号生成部、４１  Ｒ＿ＲＤＹ応答抑止部。
【図１】
2013156731.tif 000003
【図２】
2013156731.tif 000004
【図３】
2013156731.tif 000005
【図４】
2013156731.tif 000006
【図５】
2013156731.tif 000007
【図６】
2013156731.tif 000008
【図７】
2013156731.tif 000009