(57)【要約】【課題】データ転送時のオーバーヘッドを少なくし、高速化が容易に図れるデータ伝送装置を提供する。【解決手段】受信専用バッファ５と送信専用バッファ６と送受信兼用バッファ７と受信用フィルタ８と送信用フィルタ９を備え、受信したパケットに応じてパケット格納先を受信用フィルタ８により選択し、ＲＥＡＤコマンド実行時におけるデータ送信パケットに対応して返送されるパケットは受信フィルタ８で検出し、それ以外のパケットは受信専用バッファ５に格納する。またＷＲＩＴＥコマンド時におけるデータ要求パケットは送信専用バッファから送信され、それに対応するデータ受信パケットは、受信フィルタにより送受信兼用バッファ７に格納され、それ以外の受信パケットは、受信専用バッファ５に格納される。また、送受信兼用バッファ７のバッファサイズはデータ送受信に用いられるパケット２個分の容量を持つ。【選択図】図１
2008219926.tif 000002
【特許請求の範囲】
【請求項１】
ヘッダフィールドとデータフィールドからなるパケット単位でコマンドやデータ等の転送を行うデータ伝送装置であって、
送受信兼用バッファと、
受信専用バッファと、
送信専用バッファと、
受信したパケットの内容に応じてその格納先を前記受信専用バッファか前記送受信兼用バッファかに振り分ける受信用フィルタと、
送信するパケットの内容に応じてその格納先を前記送信専用バッファか前記送受信兼用バッファかに振り分ける送信用フィルタと、
送信するパケットを構成したり、あるいは受信したパケットから必要な情報を取り出すパケット処理回路と、
前記送受信兼用バッファ及び前記送信専用バッファに格納された送信パケットを伝送路上の送信パケットに変換し伝送路上の使用権を得た場合に伝送路上の電気信号に変換し送出する、あるいは受信された伝送路上の電気信号から前記受信専用バッファ或いは前記送受信専用バッファに格納するパケット構成に変換する送受信回路とを備え、
データ転送の処理において、
前記受信用フィルタは、前記データ転送に関する応答パケットを前記送受信兼用バッファに格納し、前記データ転送に関する応答パケット以外のパケットを前記受信専用バッファに格納し、
前記受信専用バッファにパケットが格納されると、前記パケット処理回路は、前記データ転送に関する処理を停止し、前記受信専用バッファに格納されたパケットに関する処理を実行し、
また、前記データ転送の処理において、
前記送受信回路にて、先に送られたパケットの受信処理中を示す応答パケットを検出すると、前記パケット処理回路は、次に送ろうとしているパケットの最後のデータを前記送受信兼用バッファに書かずに待機し、
前記送受信回路にて、前記先に送られたパケットの受信処理完了を示す応答パケットを検出すると、前記パケット処理回路は、前記次に送ろうとしているパケットの最後のデータを前記送受信兼用バッファに書き込む、ことを特徴とするデータ伝送装置。
【請求項２】
送受信兼用バッファは、送受信兼用バッファに格納される送信用パケット、または受信用パケットのどちらかの大きい方のパケットの２個分以上のバッファ容量を備えたことを特徴とするデータ伝送装置。
【請求項３】
受信用フィルタは、前記送受信回路で受信されたパケットに含まれるパケット識別情報と応答識別情報とパケットラベル情報に基づき、受信パケットの格納先を前記受信専用バッファか前記送受信専用バッファのどちらかに振り分けることを特徴とする請求項１または請求項２に記載のデータ伝送装置。
【請求項４】
受信用フィルタは、要求パケットに対して、期待するパケットが受信されたことを前記パケット処理回路に通知することを特徴とする請求項１から請求項３のいずれか１項に記載のデータ伝送装置。
【請求項５】
送信用フィルタは、データ転送時に、送信するパケットのパケット識別情報に応じてその格納先を送信専用バッファか送受信兼用バッファかのどちらか一方に振り分けることを特徴とする請求項１または請求項２に記載のデータ伝送装置。
【請求項６】
パケット処理回路は、データ送信時において、送信しようとするデータを含む要求パケットに対応して処理完了を示すパケットを前記送受信回路が検出するか、あるいは要求パケットに対して受信完了処理中を示すパケットを前記送受信回路で検出後に処理完了を示す応答識別情報を含む応答パケットを前記受信用フィルタにより検出したことにより、送信しようとするデータを含む要求パケットを連続して構築することを特徴とする請求項１から請求項５のいずれか１項に記載のデータ伝送装置。
【請求項７】
パケット処理回路は、データ受信時において、データの送信を要求する要求パケットに対応して、前記要求パケットに対して受信完了処理中を示すパケットを前記送受信回路で検出後に受信される前記要求パケットに対するデータを含む応答パケットのパケット識別情報と応答識別情報を前記受信用フィルタにより検出後、受信したパケットを前記受信用フィルタを介して前記送受信兼用バッファに格納すると同時に、連続して前記データの送信を要求する要求パケットを送信専用バッファに格納することを特徴とする請求項１から請求項３または請求項５のいずれか１項に記載のデータ伝送装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータと光ディスクドライブ等の周辺機器との間を通信媒体を介してデータやコマンド等をパケット単位で伝送するデータ伝送装置に関するものである。
【背景技術】
【０００２】
近年、ＡＶ機器やコンピュータ機器等を接続するディジタルインターフェースとして、ＩＥＥＥ１３９４方式が注目されている。この方式は、従来のＳＣＳＩ方式等によるコンピュータ機器間の通信のみならず、ＡＶ機器間での通信にも用いることが出来るものである。これは、ＩＥＥＥ１３９４方式が、アシンクロナス（Ａｓｙｎｃｈｒｏｎｏｕｓ）通信とアイソクロノス（Ｉｓｏｃｈｒｏｎｏｕｓ）通信とが定義されているためである。アシンクロナス通信は、コンピュータデータの伝送のような、リアルタイム性が要求されず、しかも信頼性がより要求されるデータの伝送に用いられる伝送であり、アイソクロノス通信は、動画のＡＶデータ等のような、信頼性以上にリアルタイム性が要求されるデータの伝送に用いられる。従って、一般的にＩＥＥＥ１３９４方式を用いて、例えばコンピュータデータをＤＶＤ−ＲＡＭドライブ装置等に格納したり、ＤＶＤ−ＲＡＭドライブ装置から記録済みのコンピュータデータを読み出したりする際には、アシンクロナス通信により、データが伝送される。
【０００３】
このアシンクロナス通信を用いて、ホストコンピュータ（イニシエータ）とターゲットとの間のプロトコルについてはＳＢＰ−２（ＳｅｒｉａｌＢｕｓＰｒｏｔｏｃｏｌ−２）が現在ＡＮＳＩにて審議されている。
【０００４】
このプロトコルに従って、ターゲット、例えばＤＶＤ−ＲＡＭドライブ等からデータをホストコンピュータ（イニシエータ）が読み込む場合、つまりＲＥＡＤコマンドが発行された場合の動作について、図６を用いて説明する。
【０００５】
図６はＩＥＥＥ１３９４バス上でＳＢＰ−２を用いて、イニシエータとターゲット間でデータの転送を行う場合の、プロトコルの動作説明図である。
【０００６】
また、図７はＩＥＥＥ１３９４で定義されている非同期パケットの一部の構造を示すパケット構造図である。ＩＥＥＥ１３９４では、動作の要求を行うための要求パケット（リクエストパケット）と要求パケットによって要求された動作の結果を返すための応答パケット（レスポンスパケット）が定義されている。いずれのパケットに対しても、パケットを受信した場合には、パケットの受信状態を示すアクノリッジパケット（ａｃｋｎｏｌｅｄｇｅｐａｃｋｅｔ、以下Ａｃｋパケットと略す）を相手機器に返す。Ａｃｋパケットには、処理完了を示すａｃｋ＿ｃｏｍｐｌｅｔｅ、受信は完了したが処理中であることを示すａｃｋ＿ｐｅｎｄｉｎｇ、再送要求を示すａｃｋ＿ｂｕｓｙ等の状態を示す。要求パケットと応答パケットとは通常対をなして使用されるが、Ａｃｋパケットの内容によってはＡｃｋパケットの受信で処理が完了する場合もある。
【０００７】
図７において、（ａ）、（ｂ）、（ｄ）は要求パケットであり、それぞれブロックデータ書き込み要求パケット（Ｗｒｉｔｅ  ｒｅｑｕｅｓｔ  ｆｏｒ  ｄａｔａ  ｂｌｏｃｋ  ｐａｃｋｅｔ、以下ＢＷＲＱと略す）、クワドレットデータ書き込み要求パケット（Ｗｒｉｔｅ  ｒｅｑｕｅｓｔ  ｆｏｒ  ｄａｔａ  ｑｕａｄｌｅｔ  ｐａｃｋｅｔ、以下ＱＷＲＱと略す）、ブロックデータ読み込み要求パケット（Ｒｅａｄ  ｒｅｑｕｅｓｔ  ｆｏｒ  ｄａｔａ  ｂｌｏｃｋ  ｐａｃｋｅｔ、以下ＢＲＲＱと略す）であり、書き込み要求パケットに対する応答パケットとして（ｃ）に示す書き込み応答パケット（Ｗｒｉｔｅ  ｒｅｓｐｏｎｓｅ  ｐａｃｋｅｔ、以下ＷＲＳパケットと略す）が定義されており、またＢＲＲＱパケットに対する応答パケットとして（ｅ）に示すブロックデータ読み込み応答パケット（Ｒｅａｄ  ｒｅｓｐｏｎｓｅ  ｆｏｒ  ｄａｔａ  ｂｌｏｃｋ  ｐａｃｋｅｔ、以下ＢＲＲＳパケットと略す）が定義されている。いずれの場合もパケットの種類を識別するパケット識別情報ｔｃｏｄｅ（ｔｒａｎｓａｃｔｉｏｎ  ｃｏｄｅ）とパケットラベル情報ｔｌ（ｔｒａｎｓａｃｔｉｏｎ  ｌａｂｅｌ、トランザクション固有のタグ情報）が含まれており、また応答パケットの場合には、応答状態をしめす応答識別情報ｒｃｏｄｅ（ｒｅｓｐｏｎｓｅｃｏｄｅ）が含まれている。従って、パケット識別情報ｔｃｏｄｅによりトランザクションの種類が識別でき、またパケットラベル情報ｔｌにより対をなす要求パケットと応答パケットを認識することができる。
【０００８】
なお、詳細については、ＩＥＥＥ１３９４−１９９５規格書を参照されたい。
【０００９】
図６、図７を用いて、その動作を説明するが、データ転送を行う前には、種々のやり取りが行われるが、ここでは省略し、イニシエータからＲＥＡＤコマンドが発行される際のプロトコルについて説明する。
【００１０】
（１）データを転送しようとすると、まずイニシエータは、ターゲット側のＣＳＲ（Ｃｏｎｔｒｏｌ  ａｎｄ  Ｓｔａｔｕｓ  Ｒｅｇｉｓｔｅｒｓ）空間に定義されているＣｏｍｍａｎｄ  Ｂｌｏｃｋ  Ａｇｅｎｔ  ＲｅｇｉｓｔｅｒｓのＡＧＥＮＴ＿ＲＥＳＥＴレジスタ宛にＱＷＲＱパケットを発行し、ｃｏｍｍａｎｄ  ｂｌｏｃｋ  ｆｅｔｃｈ  ａｇｅｎｔをリセットする。
【００１１】
（２）イニシエータはＱＷＲＱパケットに対して、ターゲットから返される以下Ａｃｋパケットがａｃｋ＿ｃｏｍｐｌｅｔｅであるか、或いはＡｃｋパケットがａｃｋ＿ｐｅｎｄｉｎｇで返され、その後ターゲットからのｒｃｏｄｅが処理完了（ｒｅｓｐ＿ｃｏｍｐｌｅｔｅ）を示すＷＲＳパケットが返されると、イニシエータは、ターゲット側のＯＲＢ＿ＰＯＩＮＴＥＲレジスタ宛に、自らのシステムメモリ内に作成しておいたＯＲＢ’ｓ（Ｏｐｅｒａｔｉｏｎ  ｒｅｑｕｅｓｔ  ｂｌｏｃｋｓ）のアドレスをデータフィールドに含むＢＷＲＱパケットを発行し、ターゲット側のＯＲＢ＿ＰＯＩＮＴＥＲレジスタに書き込む。ＯＲＢは、イニシエータからのコマンドを含むものである。ターゲットは書き込まれたＢＷＲＱパケットに含まれるＯＲＢが格納されたイニシエータのシステムメモリアドレスに対して、ＢＲＲＱパケットを発行する。イニシエータはこのＢＲＲＱパケットを受信すると、その応答パケットであるＢＲＲＳパケットのデータフィールドにＯＲＢを格納し送信する。この様にして、ターゲットはイニシエータからＯＲＢ、つまりコマンドを受け取る。
【００１２】
（３）ターゲットは、受け取ったＯＲＢを解析し、ＲＥＡＤコマンドであった場合、転送すべきデータが準備できると、そのデータをデータフィールドに含んだＢＷＲＱパケットを、ＲＥＡＤコマンドが含まれるＯＲＢで指定されたイニシエータのシステムメモリアドレスに対して発行し、データを書き込む。この時、パケットの大きさは、ＩＥＥＥ１３９４バスの転送速度等に依存するために、大量のデータを転送しようとすると、データを複数個のパケットに分割して、転送を行うことになる。この時、転送のタイミングとしては、１つのトランザクションが完了する、つまり要求パケットに対して処理完了をしめすＡｃｋパケットが受信されるか、あるいは受信完了処理中を示すＡｃｋパケットが受信され、その後要求パケットに対して対となる応答パケットが受信されることを確認しながら行われる。
【００１３】
（４）ＯＲＢで指定されたデータ長の転送が全て終了すると、ターゲットは、予めイニシエータが指定したアドレスにＲＥＡＤコマンドに対するステータスをＢＷＲＱパケットを用いて書き込む。
【００１４】
以上で、ＲＥＡＤコマンドに関する一連の動作が完了する。
【００１５】
これらのトランザクションのうち、イニシエータがターゲットから送られたＢＷＲＱパケットを受信できない場合、再送要求を示すＡｃｋパケットをイニシエータが返すことにより、リトライ（再送）を行うことが出来る。
【００１６】
同様に、ＷＲＩＴＥコマンドの場合は、データの転送時には、ターゲットがイニシエータのシステムメモリ中に格納されたデータをＢＲＲＱパケットを利用して、読み込み、例えばＤＶＤ−ＲＡＭディスクに書き込む。
【００１７】
このような、送受信を行うデータ伝送装置として、図８に示されるような構成があげられる。図８に示すように、基本構成としては、物理層コントローラ（ＰＨＹ）１００と、リンク層コントローラ（ＬＩＮＫ）１０１と、ＣＰＵ１０２と、ＤＭＡコントローラ１０３と、ローカルメモリ１０４とからなる。物理層コントローラ１００は、バスのイニシャライズ、データのエンコード／デコード、アービトレーション、バイアス電圧の出力／検出などの機能を持つ。またリンク層コントローラ１０１は、誤り検出符号の生成／検出、パケットの生成／検出、パケット送出のリトライ動作等の機能を持つリンクコア部１０１ａ、送受信パケット用のＦＩＦＯ１０１ｂ、コンフィグレーションＲＯＭ１０１ｃ、インターフェース部１０１ｄ等から構成される。このＦＩＦＯは、送信用ＦＩＦＯ（ＡＴＦ）と受信用ＦＩＦＯを持ち、そのサイズは最大転送パケットサイズと等しいことが多い。
【００１８】
また、ＳＢＰ−２規格では、ＬＯＧＩＮ、ＱＵＥＲＹＬＯＧＩＮＳ、ＡＢＯＲＴ  ＴＡＳＫ等のタスク管理系のコマンドが定義されている。これは、図６のＯＲＢ＿ＰＯＩＮＴＥＲへのＢＷＲＱパケットによるアクセスの代わりに、ＳＢＰ−２規格で定義されるＭａｎａｇｅｍｅｎｔＡｇｅｎｔレジスタへアクセスし、その後上記のタスク管理系のコマンドを含むＭａｎａｇｅｍｅｎｔＯＲＢをＢＲＲＱパケットで読み込み、そのレスポンスのＢＲＲＳパケットに含まれるＭａｎａｇｅｍｅｎｔＯＲＢ（タスク管理系のコマンドが含まれる）ターゲット側で解析し、コマンドを実行することにより行われる。例えば、データ転送中であっても、イニシエータがデータ転送を途中で終了させるために発行されたＡＢＯＲＴ  ＴＡＳＫコマンドの処理は、データ転送中であっても処理されなければ、イニシエータの意図通りにターゲットが動作しないので、データ転送中であってもタスク管理系コマンド処理を行わなければならない。
【非特許文献１】IEEE Std 1394-1995 IEEE Standard for a High Performance Serial Bus -Description（http://standards.ieee.org/reading/ieee/std_public/description/busarch/1394-1995_desc.html）
【発明の開示】
【発明が解決しようとする課題】
【００１９】
しかしながら、上記の従来の構成では、送信用ＦＩＦＯと受信用ＦＩＦＯとを別々に持っているが、例えば、データ転送中に、イニシエータがタスク管理系のコマンドの１つであるＱＵＥＲＹ  ＬＯＧＩＮを発行しようとして、ＭａｎａｇｅｍｅｎｔＡｇｅｎｔ宛にＢＷＲＱパケットを発行した場合、データ転送中であっても受信されるパケットをすべて、ターゲット側の受信用ＦＩＦＯに格納されるようにしておくと、その受信されたパケットがタスク管理系のコマンドであるのか、ＲＥＡＤコマンドによるデータを送信するためのＢＷＲＱパケットに対する応答パケット（ＷＲＳパケット）であるかを、受信用ＦＩＦＯにパケットが格納される毎に必ずチェックして適切な処理を行わなければならないので、必ず受信用ＦＩＦＯに格納されたパケットが何であるかをＣＰＵにより判断しなければならないので、オーバーヘッドが大きく、データ転送に時間がかかるという問題を有していた。
【００２０】
また、データ転送中には、データを送信するためのＢＷＲＱパケットに対する応答パケット（ＷＲＳパケット）以外は、受信ＦＩＦＯに格納されないように構成すれば、受信毎の毎回のチェックは不要であるので、オーバーヘッドが少なくデータ転送の高速化が図れるが、イニシエータの意図通りの動作をターゲットが行うことは不可能になる。
【００２１】
また、送信用ＦＩＦＯ、受信用ＦＩＦＯのいずれも、そのサイズは、最大転送パケットサイズに等しいので、例えば、ＲＥＡＤコマンド実行に、データ転送のトランザクションが終了しないと、つまり、ａｃｋ＿ｃｏｍｐｌｅｔｅを示すＡｃｋパケットが返されるか、あるいはａｃｋ＿ｐｅｎｄｉｎｇのＡｃｋパケットが返された後、ｒｅｓｐ＿ｃｏｍｐｌｅｔｅを示すレスポンスパケットが返された後でないと、リトライを要求された場合を考慮して、送信用ＦＩＦＯに次のパケットのデータを書き込むことが出来ずに、データ転送に時間がかかるという問題点を有していた。
【００２２】
本発明は上記従来の問題点を解決するもので、データ転送のオーバーヘッドが少ないデータ伝送装置を提供することを目的とする。
【課題を解決するための手段】
【００２３】
この目的を解決するために本発明のデータ伝送装置は、ヘッダフィールドとデータフィールドからなるパケット単位でコマンドやデータ等の転送を行うデータ伝送装置であって、送受信兼用バッファと、受信専用バッファと、送信専用バッファと、受信したパケットの内容に応じてその格納先を前記受信専用バッファか前記送受信兼用バッファかに振り分ける受信用フィルタと、送信するパケットの内容に応じてその格納先を前記送信専用バッファか前記送受信兼用バッファかに振り分ける送信用フィルタと、送信するパケットを構成したり、あるいは受信したパケットから必要な情報を取り出すパケット処理回路と、前記送受信兼用バッファ及び前記送信専用バッファに格納された送信パケットを伝送路上の送信パケットに変換し伝送路上の使用権を得た場合に伝送路上の電気信号に変換し送出する、あるいは受信された伝送路上の電気信号から前記受信専用バッファ或いは前記送受信専用バッファに格納するパケット構成に変換する送受信回路とを備えたものである。
【００２４】
さらに、本発明のデータ伝送装置では、前記送受信兼用バッファは、送受信兼用バッファに格納される送信用パケット、または受信用パケットのどちらかの大きい方のパケットの２個分以上のバッファ容量を備えたことを特徴とするものである。
【００２５】
また、本発明のデータ伝送装置では、前記パケット処理回路は、データ送信時において、送信しようとするデータを含む要求パケットに対応して処理完了を示すパケットを前記送受信回路が検出するか、あるいは要求パケットに対して受信完了処理中を示すパケットを前記送受信回路で検出後に処理完了を示す応答識別情報を含む応答パケットを前記受信用フィルタにより検出したことにより、送信しようとするデータを含む要求パケットを連続して構築することを特徴とするものである。
【００２６】
そして、本発明のデータ伝送装置では、前記パケット処理回路は、データ受信時において、データの送信を要求する要求パケットに対応して、前記要求パケットに対して受信完了処理中を示すパケットを前記送受信回路で検出後に受信される前記要求パケットに対するデータを含む応答パケットのパケット識別情報と応答識別情報を前記受信用フィルタにより検出後、受信したパケットを前記受信用フィルタを介して前記送受信兼用バッファに格納すると同時に、連続して前記データの送信を要求する要求パケットを送信専用バッファに格納することを特徴とするものである。
【発明の効果】
【００２７】
本発明によれば、受信専用バッファと送信専用バッファと送受信兼用バッファを設けることにより、データ転送の転送速度を落とすことなく、データ転送のトランザクションを実行している間に発行されたコマンド処理に対する対応を容易にし、かつデータ転送のトランザクションにファームウェアが介在することなく行うことが出来るので、データ転送の高速化を図ることが出来る。
【００２８】
さらに送受信兼用バッファのバッファ容量をデータ送受信に用いるパケットサイズの２倍にすることにより、データ転送時のオーバーヘッドを少なくして、高速にデータ転送を行うことが出来る優れたデータ伝送装置を実現できるものである。
【発明を実施するための最良の形態】
【００２９】
以下、図面を参照して本発明の実施の形態を詳細に説明するが、これによって本発明の技術的範囲が制限されるものではないのはもちろんである。
【００３０】
（実施の形態１）
以下本発明の一実施の形態について、図面を参照しながら説明する。
【００３１】
図１は、本発明の第一の実施の形態のデータ伝送装置の構成図である。１はコマンドを発行したりするホストコンピュータ（以降イニシエータとも呼ぶ）で、２はＤＶＤ−ＲＡＭドライブ装置（以降ターゲットとも呼ぶ）である。ホストコンピュータ１とＤＶＤ−ＲＡＭドライブ装置２は、ＩＥＥＥ１３９４シリアルバス３を介して接続されている。４は送受信回路で、物理層コントローラ（ＰＨＹ）４１とリンク層コントローラ（ＬＩＮＫ）４２とからなっており、物理層コントローラ４１は、バスのイニシャライズ、データのエンコード／デコード、アービトレーション、バイアス電圧の出力／検出等の機能を持ち、リンク層コントローラ４２は、誤り訂正符号の生成／検出、パケットの生成／検出等の機能を持つ。５はコマンド等を受信するための受信専用バッファで、６はステータス等を送信するための送信専用バッファ、７はデータを送受信するための送受信兼用バッファである。８は受信用フィルタであり、データ受信時には、イニシエータ１からのデータの送信を要求する要求パケットに対応するデータフィールドにデータが含まれた応答パケットが受信された場合には、その受信された応答パケットの格納先を送受信兼用バッファにし、それ以外のパケットが受信された場合には、その格納先を受信専用パケットにするように動作する。またイニシエータ１にデータを送信する時には、受信されたパケットのうち、パケットラベル情報とパケット識別情報と応答識別情報とから、データフィールドに送信するデータを含む要求パケットに対して対をなす応答パケットが受信されたと判断されると、後述するパケット処理回路１０にその受信を知らせ、それ以外のパケットが受信された場合には、受信専用バッファに格納するように動作する。
【００３２】
９は同様に、データ転送時において、送信するパケットを送信専用バッファ６に格納するか、或いは送受信兼用バッファ７に格納するかを送信するパケットのパケット識別情報（ｔｃｏｄｅ）により選択する送信用フィルタである。さらに１０は、受信されたパケットから必要なデータのみを抜き出し、光ディスクコントローラ（以降ＯＤＣと呼ぶ）１３にＤＭＡバス１４を介して転送するためのデータに変換したり、或いは光ディスク１６から読み出されたデータを所定のアナログ信号処理を施すアナログ信号処理回路１５を経て、ＯＤＣ１３で復調や誤り訂正処理等が施されたデータにヘッダを付与したり、パケット化を行うパケット変換回路である。
【００３３】
また図２は、１３９４シリアルバス３上に送出するために、リンク層コントローラ４２に書き込まれる、或いは１３９４シリアルバス３から受信されたパケットをリンク層コントローラ４２から読み出される際の各パケットの構造を示す。図２中の斜線部分は、リザーブ領域である。具体的に示すと、図２（ａ）は、図７（ａ）に示すＢＷＲＱパケットを送信するためのリンク層コントローラ４２に書き込まれる、つまりパケット処理回路１０やマイコン１１により各バッファに書き込まれるパケット構成を示す。図２（ｂ）は図７（ｂ）に示すＱＷＲＱパケットをリンク層コントローラ４２に書き込む際のパケット構造である。また図２（ｃ）は図７（ｃ）に示すＷＲＳパケットを受信し、リンク層コントローラ４２から読み出される際のパケット構成を示し、図２（ｄ）は図７（ｄ）に示すＢＲＲＱパケットを送信するためにリンク層コントローラ４２に書き込まれる際のパケット構成である。さらに図２（ｅ）は図７（ｅ）に示すＢＲＲＳパケットが受信され、リンク層コントローラ４２から読み出される際のパケット構成を示す。これら図２で示したパケットのうち送信パケットは、図７に示すように、ｈｅａｄｅｒ＿ＣＲＣやｄａｔａ＿ＣＲＣの計算やｓｏｕｒｃｅ＿ＩＤの付加等のパケットの再構成がリンク層コントローラ４２で行われ、また受信されたパケットに対しては、ＣＲＣによる誤り検出等がリンク層コントローラ４２で行われる。
【００３４】
そして、図３及び図４は本実施の形態のデータ伝送装置の動作を説明する動作説明図である。図４はイニシエータ１がターゲット２のデータを読み込む、つまりイニシエータ１がＲＥＡＤコマンドを発行した場合の本実施の形態の動作説明図であり、図５はイニシエータ１がターゲット２にデータを格納する、つまりイニシエータ１がＷＲＩＴＥコマンドを発行した場合の本実施の形態の動作説明図である。
【００３５】
図３において、横軸に時間をとり、（１）はパケット処理回路１０の動作状態を、（２）は送受信兼用バッファ（ＤＴＲＦ）７の内部に格納されたパケットの状態、（３）は１３９４シリアルバス３上の状態、（４）は受信用フィルタ８の状態を示し、（５）は、送受信兼用バッファ７の内部状態を示し、白丸はパケット処理回路１０によりＤＴＲＦに書き込まれる際の書き込みアドレスポインタを示し、黒丸はリンク層コントローラ４２に書き込まれる際に送受信兼用バッファ７から読み出される際の読み出しアドレスポインタを示す。この時、送受信兼用バッファ７の容量は２×ｋクワッドレットで表す。
【００３６】
また図４において、（１）から（３）は図３と同じで、（４）は送信専用バッファ６の状態を示す。（５）は図３（５）と同様に送受信兼用バッファ７の内部状態を示し、白丸は受信されたパケットがリンク層コントローラ４２から読み出され送受信兼用バッファ７に書き込まれる際の書き込みアドレスポインタを示し、黒丸は送受信兼用バッファ７からパケット処理回路１０により読み出される際の読み出しアドレスポインタを示す。同様に、送受信兼用バッファ７の容量は２×ｋクワッドレットで表す。
【００３７】
さらに、ＩＥＥＥ１３９４を介してデータを転送する際には、その転送速度によりパケットの転送可能な最大ペイロードサイズは規定されるので、転送速度に応じたパケットを格納できるサイズのバッファ量が必要となるが、本実施の形態では、送受信兼用バッファ７のバッファサイズは、データを転送する際に用いられるパケット、つまりＳＢＰ−２プロトコルの場合は、ＲＥＡＤコマンドではＢＷＲＱパケット、ＷＲＩＴＥコマンドではＢＲＲＳパケットであるので、これらのパケットサイズの２倍であるとする。上述したようにパケットのデータフィールドの最大サイズは転送速度に応じてＩＥＥＥ１３９４規格により定義されている。従って、本実施の形態では、転送速度をＳ４００であるとし、転送可能なパケットに含まれるデータ部のサイズは２０４８バイト（５１２クワッドレット）であり、本実施の形態では、送受信兼用バッファ７のパケットサイズを図２（ａ）または（ｅ）に示す様に、ヘッダフィールド及びデータフィールドの最後の１クワドレットを加えて（２０４８＋１６＋４）×２＝４１３６バイトとする。
【００３８】
以上の様に構成された本実施の形態の動作について、図面を用いて説明する。
【００３９】
まず、ＲＥＡＤコマンドがイニシエータ１から発行される場合について、その動作を説明する。１回のＲＥＡＤコマンドで、イニシエータ１から要求されるデータ長を６４ｋＢとする。従って、６４ｋＢのデータを転送するためには、データを転送するパケットのデータフィールドのサイズが２ｋＢであるので、３２回に分けてデータ転送が行われる。
【００４０】
（１）イニシエータ１は、自らのメモリ内にＲＥＡＤコマンドのＣＤＢを含むＯＲＢを作成する。
【００４１】
（２）イニシエータ１はターゲット２のＯＲＢ＿ＰＯＩＮＴＥＲレジスタに、ＯＲＢを作成したメモリの１３９４空間上のアドレスをＢＷＲＱパケットによりターゲット２に送信する。
【００４２】
（３）ターゲット２は、（２）で送られたＯＲＢが格納されたアドレスに対して、ＢＲＲＱパケットを発行し、イニシエータ１はＯＲＢを含むＢＲＲＳパケットをターゲット２に返す。
【００４３】
（４）ターゲット２は受信したＢＲＲＳパケットに含まれるＣＤＢを取り出し、ＲＥＡＤコマンドを確認後、ドライブから必要なデータを読み出すために初期設定を行う。この時、パケット処理回路１０に、レジスタ１２を経由して、マイコン１１からＲＥＡＤコマンドで指定されたデータ格納先を示すイニシエータ１のシステムメモリ領域のアドレス、イニシエータ１のＩＤ等のヘッダ情報が書き込まれる。
【００４４】
また、受信用フィルタ８には、データ送信時であるので、ＷＲＳパケットを受信し、そのパケットに含まれる応答識別情報（ｒｃｏｄｅ）が処理完了（ｒｅｓｐ＿ｃｏｍｐｌｅｔｅ）であり、かつパケットラベル情報ｔｌがデータを送信するための要求パケット、ＢＷＲＱパケットのそれと一致すれば、パケット処理回路１０に検出信号を送り、また受信したパケットがＷＲＳパケット以外（パケット識別情報で判断）か、あるいは受信されたパケットがＷＲＳパケットであっても、データを送信するための要求パケット、ＢＷＲＱパケットに格納されたパケットラベル情報ｔｌと受信したＷＲＳパケットのパケットラベル情報が一致しない場合、あるいは受信したパケットであり、パケットラベル情報ｔｌも一致したが、応答識別情報ｒｃｏｄｅが処理完了を示すｒｅｓｐ＿ｃｏｍｐｌｅｔｅ以外であれば、その受信されたパケットは受信専用バッファ５に受信されたパケットが格納されるように設定しておく。
【００４５】
起動がかけられると、パケット処理回路１０に設定されたヘッダ情報に続いて、指定されたデータがディスクから読み出され、アナログ信号処理回路１５を介して、光ディスクコントローラ１３で復調処理や誤り訂正処理が施され、パケット処理回路１０に入力される。
【００４６】
（５）（４）で書き込まれたヘッダ情報とデータとから２０４８バイトのデータフィールドを持つ図２（ａ）に示すパケット構成で送受信兼用バッファ７に書き込む（図３のＳＴＥＰ１）。
【００４７】
（６）１パケットを構成するすべてのデータが書き込まれると、送受信兼用バッファ７からリンク層コントローラ４２で図７（ａ）に示すようなＣＲＣを付加したりしてＢＷＲＱパケットを作成し、物理層コントローラ４１でアービトレーションを行い、バスの使用権を確保した後、イニシエータ１に送られる。同時に、次のパケットをパケット処理回路１０で作成し、送受信兼用バッファ７に書き込まれる。このパケットのｄｅｓｔｉｎａｔｉｏｎ＿ｏｆｆｓｅｔフィールドには先に送信したパケットのｄｅｓｔｉｎａｔｉｏｎ＿ｏｆｆｓｅｔフィールドに書き込んだアドレスに２０４８を加えたアドレスが書き込まれる。図３では、この時、既に送られたＢＷＲＱパケットに対して、処理完了（ａｃｋ＿ｃｏｍｐｌｅｔｅ）を示すＡｃｋパケットが、図２（ａ）で示すパケットの最後の１クワッドレットのデータを送受信兼用バッファ７に書き込まれる前にリンク層コントローラ４２で検出されているので、続けてこの最後の１クワッドレットデータを書き込む（図３のＳＴＥＰ２）。
【００４８】
（７）最後の１クワッドレットのデータが送受信兼用バッファ７に書き込まれるとリンク層コントローラ４２に出力され、リンク層コントローラ４２で図７（ａ）で示すＢＷＲＱパケットを構成し、物理層コントローラ４１でのアービトレーション後、出力される。と同時に、次のパケットをパケット処理回路１０で作成し、送受信兼用バッファに書き込まれる。
【００４９】
同様に、このパケットのｄｅｓｔｉｎａｔｉｏｎ＿ｏｆｆｓｅｔフィールドには先に送信したパケットのｄｅｓｔｉｎａｔｉｏｎ＿ｏｆｆｓｅｔフィールドに書き込んだアドレスに２０４８を加えたアドレスが書き込まれる。
【００５０】
この時、先に送られたＢＷＲＱパケットに対して、受信完了処理中（ａｃｋ＿ｐｅｎｄｉｎｇ）を示すＡｃｋパケットがリンク層コントローラ４２で検出されると、パケット処理回路１０は、図２（ａ）で示すパケットの最後の１クワッドレットのデータを送受信兼用バッファ７に書き込まずに、図７（ｃ）で示したＷＲＳパケットがイニシエータ１から送信されるのを待つ。そして、ＷＲＳパケットが受信され、リンク層コントローラ４２を介して受信用フィルタ８で、ＷＲＳパケットであることを示すパケット識別情報（ｔｃｏｄｅ）が検出されかつ、応答識別情報（ｒｃｏｄｅ）が処理完了（ｒｅｓｐ＿ｃｏｍｐｌｅｔｅ）で、かつパケットラベル情報ｔｌがデータを送信した要求パケットＢＷＲＱパケットのパケットラベルｔｌに一致することが検出されれば、パケット処理回路１０に再起動信号が送られる。パケット処理回路１０は、その検出信号を受けて、最後の１クワッドレットデータを送受信兼用バッファ７に書き込む（図３のＳＴＥＰ３）。
【００５１】
（８）最後の１クワッドレットのデータが送受信兼用バッファ７に書き込まれるとリンク層コントローラ４２に出力され、リンク層コントローラ４２で図７（ａ）で示すＢＷＲＱパケットを構成し、物理層コントローラ４１でのアービトレーション後、出力される。と同時に、次のパケットをパケット処理回路１０で作成し、送受信兼用バッファに書き込まれる。
【００５２】
同様に、このパケットのｄｅｓｔｉｎａｔｉｏｎ＿ｏｆｆｓｅｔフィールドには先に送信したパケットのｄｅｓｔｉｎａｔｉｏｎ＿ｏｆｆｓｅｔフィールドに書き込んだアドレスに２０４８を加えたアドレスが書き込まれる。
【００５３】
この時、先に送られたＢＷＲＱパケットに対して、再送要求（ａｃｋ＿ｂｕｓｙ）を示すＡｃｋパケットが検出されると、パケット処理回路１０は最後の１クワッドレット分のデータを送受信兼用バッファ７に書き込まずに、データ受信バッファにある前のパケット（（７）で作成したパケット）のデータを再度送信し、イニシエータ１から、再送したＢＷＲＱパケットに対して、処理完了（ａｃｋ＿ｃｏｍｐｌｅｔｅ）を示すＡｃｋパケットが送信されたことをリンク層コントローラ４２で検出して、その後、最後の１クワッドレットのデータを送受信兼用バッファ７に書き込む（図３のＳＴＥＰ４）。
【００５４】
以降、上記動作が、ＲＥＡＤコマンドで指定されたデータ数の転送が終了するまで繰り返される。
【００５５】
次にＷＲＩＴＥコマンドがイニシエータ１から発行された場合の動作について説明する。
【００５６】
１回のＷＲＩＴＥコマンドで、イニシエータ１から送信されるデータのデータ長を６４ｋＢとする。従って、６４ｋＢのデータを転送するためには、データを転送するパケットのデータフィールドのサイズが２ｋＢであるので、３２回に分けてデータ転送が行われる。
【００５７】
（１）イニシエータ１は、自らのメモリ内にＷＲＩＴＥコマンドのＣＤＢを含むＯＲＢを作成する。
【００５８】
（２）イニシエータ１はターゲットのＯＲＢ＿ＰＯＩＮＴＥＲレジスタにＯＲＢを作成したメモリの１３９４空間上のアドレスをＢＷＲＱパケットによりターゲット２に送信する。
【００５９】
（３）ターゲット２は、（２）で送られたＯＲＢが格納されたアドレスに対して、ＢＲＲＱパケットを発行し、イニシエータ１はＯＲＢを含むＢＲＲＳパケットをターゲット２に返す。
【００６０】
（４）ターゲット２は受信したＢＲＲＳパケットに含まれるＣＤＢを取り出し、ＷＲＩＴＥコマンドを確認後、ドライブにデータを書き込むための初期設定を行う。この時、パケット処理回路１０に、レジスタ１２を経由して、マイコン１１からＷＲＩＴＥコマンドでディスクに書き込むデータが格納されたイニシエータ１のシステムメモリ領域のアドレス、イニシエータ１のＩＤ等のヘッダ情報が書き込まれる。
【００６１】
また、受信用フィルタには、データ受信時であるので、データの送信要求をイニシエータ１に対して要求する要求パケットであるＢＲＲＱパケットに対して対となるＢＲＲＳパケットを受信したことをパケットラベル情報ｔｌとパケット識別情報ｔｃｏｄｅで検出し、かつその応答識別情報ｒｃｏｄｅが処理完了（ｒｅｓｐ＿ｃｏｍｐｌｅｔｅ）である時には、受信パケットを送受信兼用バッファ７に格納するようにし、それ以外であれば受信専用バッファ５に格納するように設定しておく。
【００６２】
起動がかけられると、パケット処理回路１０に設定されたヘッダ情報を用いて、イニシエータ１のシステムメモリ上の書き込みデータを取りに行くためのＢＲＲＱパケット（図７（ｄ））を作成するために、図２（ｄ）で示した構成のパケットをパケット処理回路１０で作成し、送信用フィルタ９を介して、送信専用バッファ６に書き込む。
【００６３】
すべてのデータが書き込まれると、リンク層コントローラ４２、物理層コントローラ４１を経て、バスの使用権を獲得した時点で、イニシエータ１に送信される。イニシエータ１から、ＢＲＲＱパケットで要求されたデータがデータフィールドに含まれたＢＲＲＳパケットがターゲット２に送られる。ターゲット２において、受信されたＢＲＲＳパケットは、受信用フィルタ８を介して、そのパケットラベル情報とパケット識別情報と応答識別情報をチェックし、要求パケットに対して正当な応答パケットであれば、送受信兼用バッファ７に格納される（図４のＳＴＥＰ１）。
【００６４】
（５）（４）で受信され、送受信兼用バッファ７に格納されたＢＲＲＳパケットのヘッダ情報のうち、まずパケット識別情報（ｔｃｏｄｅ）と応答識別情報（ｒｃｏｄｅ）をパケット処理回路１０にて確認し、それぞれがＢＲＲＳパケットであり、かつ処理完了（ｒｅｓｐ＿ｃｏｍｐｌｅｔｅ）を示すものであれば、次のデータを要求するために、次のデータ送信を要求するための要求パケット（この場合はＢＲＲＱパケット）を送信用フィルタ９を介して、送信専用バッファに書き込む。このときｄｅｓｔｉｎａｔｉｏｎ＿ｏｆｆｓｅｔは先に送信したＢＲＲＱパケットのｄｅｓｔｉｎａｔｉｏｎ＿ｏｆｆｓｅｔに２０４８を加えた値になる。同時に、（４）で受信されたパケットのデータを順次読み出し、光ディスクコントローラ１３で誤り訂正符号の付加や変調処理等が施され、アナログ信号処理回路１５を経てディスク１６上に書き込まれる。送信専用バッファ６に書き込まれた次のデータを要求するためのＢＲＲＱパケットは、リンク層コントローラ４２、物理層コントローラ４１を経て、バスの使用権を獲得後、イニシエータ１に送信される。
【００６５】
イニシエータ１からは、ＢＲＲＱパケットで要求されたデータをデータフィールドに含んでＢＲＲＳパケットがターゲット２に送られる。ターゲット２において、受信されたＢＲＲＳパケットは、受信用フィルタ８を介して、送受信兼用バッファ７に格納される（図４のＳＴＥＰ２）。
【００６６】
以降、上記動作が、ＷＲＩＴＥコマンドで指定されたデータ数の転送が終了するまで、繰り返される。
【００６７】
以上、述べてきたように、送受信兼用バッファのバッファサイズをデータを転送する際に用いられるパケットサイズの２倍にすることにより、オーバーヘッドを少なくし、高速なデータ転送を図ることが出来る。
【００６８】
次に、ＲＥＡＤコマンド実行中にイニシエータ１から別のタスク管理系のコマンドが発行された場合について説明する。図５はＲＥＡＤコマンド実行中にイニシエータ１から別のタスク管理系のコマンドが発行された場合の動作を示す動作説明図である。
【００６９】
図５において（１）はパケット処理回路１０の動作、（２）は送受信兼用バッファ７の内部状態、（３）は１３９４バス３上パケットを示し、例えば、ＢＷＲＱ（Ｔ→Ｉ）はＢＷＲＱパケットがターゲット（Ｔ）２からイニシエータ（Ｉ）１に送信されたことを示す。（４）はコマンド送信バッファ５の内部状態、（５）は、マイコン１１の動作、（６）は送信専用バッファ６の内部状態を示す。
【００７０】
以下、図面を用いて、その動作を説明するが、実際にデータを含むパケットが転送されるまでの動作は、上述の動作と同じであるので省略する。
【００７１】
（１）データ転送中にイニシエータ１からタスク制御系のコマンド（例えば、ＱｕｅｒｙＬｏｇｉｎ）が発行されたとする（図５中の（３）のＢＷＲＱパケット（Ｉ→Ｔ））。
【００７２】
その時、イニシエータ１から発行されるＭａｎｅｇｅｍｅｎｔＡｇｅｎｔへのＢＷＲＱパケットは、受信用フィルタ８により受信専用バッファ５に格納される。これは、先述したように、ＲＥＡＤコマンド実行中、つまりターゲット２からみてデータ送信中は、受信用フィルタ８に、受信されたパケットがＷＲＳパケット以外（パケット識別情報ｔｃｏｄｅで判断）か、受信されたパケットがＷＲＳパケットであるがそれに含まれるパケットラベル情報ｔｌがデータ送信を行うＢＷＲＱパケットのパケットラベル情報ｔｌと一致しないか、あるいは受信されたパケットがＷＲＳパケットでかつそれに含まれるパケットラベル情報ｔｌがデータ送信を行うＢＷＲＱパケットのパケットラベル情報に一致するが、応答識別情報ｒｃｏｄｅが処理完了を示すｒｅｓｐ＿ｃｏｍｐｌｅｔｅ以外であれば、受信専用バッファ５に受信されたパケットを格納するように設定しているためである。
【００７３】
この応答として、リンク層コントローラ４２からは、受信は完了したが処理中であること（ａｃｋ＿ｐｅｎｄｉｎｇ）を示すＡｃｋパケットが返される（図中には図示せず）。
【００７４】
受信専用バッファ５に受信されたパケットが格納されると、マイコン１１に割り込みが発生し、転送中のトランザクションを停止するようにコマンドが発行される。このコマンドを受けて、パケット処理回路１０は、光ディスクコントローラ１３から読み込んでいるデータのうち、現在送信しようとしているパケット分のデータの読み込みが終了するまで、光ディスクコントローラ１３からのデータの読み込みを続行する。パケットを構成するためのデータをすべて読み込み、送受信兼用バッファ７に書き込み終わると、リンク層コントローラ４２、物理層コントローラ４１を経て、バスの使用権の獲得後、イニシエータ１に送られる。そのＢＷＲＱパケットに対する処理完了（ａｃｌ＿ｃｏｍｐｌｅｔｅ）を示すＡｃｋパケットを受信すると、マイコン１１に対してトランザクションの中断通知がなされる（図５のＳＴＥＰ１）。
【００７５】
（２）トランザクションの中断通知がなされると、マイコン１１は受信専用バッファ５に格納されたコマンドを読み出し、ＭａｎａｇｅｍｅｎｔＡｇｅｎｔ宛へのＢＷＲＱパケットであることを認識し、同時に処理完了（ｒｅｓｐ＿ｃｏｍｐｌｅｔｅ）のｒｃｏｄｅを持つＷＲＳパケットを送信専用バッファ６に送信フィルタ９を経由して書き込む。
【００７６】
書き込みが完了するとリンク層コントローラ４２、物理層コントローラ４１を経てイニシエータ１に送出される。引き続き、上記で認識したＭａｎａｇｅｍｅｎｔＡｇｅｎｔ宛へのＢＷＲＱパケットに含まれるＭａｎａｇｅｍｅｎｔＯＲＢが格納されたアドレスに対して、タスク管理系のコマンドが含まれるＭａｎｅｇｅｍｅｎｔＯＲＢを要求するＢＲＲＱパケットを送信専用バッファ６に書き込み、リンク層コントローラ４２、物理層コントローラ４１を介して、バスの使用権獲得後、イニシエータ１に送信される（図５のＳＴＥＰ２）。
【００７７】
（３）（２）で送信されたＢＲＲＱパケットに対応して、ＭａｎｅｇｅｍｅｔＯＲＢを含むＢＲＲＳパケットがイニシエータ１から送信される。ターゲット２で受信されたＢＲＲＳパケットは、受信用フィルタ８を介してリンク層コントローラ４２から受信専用バッファ５に格納される。これも同様にＷＲＳパケット以外の受信されたパケットが受信専用バッファ５に格納されるように設定しているためである。受信専用バッファに格納されたパケットは、マイコン１１により読み出され、ＭａｎａｇｅｍｅｔＯＲＢの処理を行い、その処理が終わると、そのＭａｎａｇｅｍｅｎｔＯＲＢに対するステータスを送信専用バッファ６に書き込み、イニシエータ１に送信する。送信したＢＷＲＱパケットに対して、イニシエータ１から処理完了（ａｃｋ＿ｃｏｍｐｌｅｔｅ）を示すＡｃｋパケットが送られるとマイコン１１は通知を受ける（図５のＳＴＥＰ３）。
【００７８】
（４）ＭａｎａｇｅｍｅｎｔＯＲＢの処理が終わると、マイコン１１は、パケット処理回路１０にデータ転送再開命令を発行し、データ転送を再開する（図５のＳＴＥＰ４）。
【００７９】
またＷＲＩＴＥコマンドを実行中であっても、データ転送中は、受信用フィルタ８に、受信されたパケットがＢＲＲＳパケット以外か、あるいは受信されたパケットがＢＲＲＳパケットでありかつそれに含まれるパケットラベル情報ｔｌがデータ送信を要求するために使用されるＢＲＲＱパケットのパケットラベルに一致しないか、あるいは受信されたパケットがＢＲＲＳパケットであり、かつそれに含まれるパケットラベル情報ｔｌがデータ送信を要求するために使用されるＢＲＲＱパケットのパケットラベルに一致しかつそれに含まれる応答識別情報ｒｃｏｄｅが処理完了を示すｒｅｓｐ＿ｃｏｍｐｌｅｔｅ以外であれば、受信されたパケットが受信専用バッファ５に格納されるように設定されるので、同様に処理を行うことが出来る。
【００８０】
以上の述べてきたように本実施の形態によれば、受信専用バッファ、送信専用バッファ、送受信兼用バッファのように、パケットの送受信に必要なバッファをそれぞれ独立して設けることにより、ファームウェアのオーバーヘッドを少なくして、高速なデータ転送を可能とするものである。またデータ転送中のコマンドに対しての処理も、データ転送中にコマンドが発行された場合のみ、ファームウェアの処理が介在するので、ファームウェアのオーバーヘッドを少なくして、高速化を図ったデータ転送を可能にし、かつタスク管理系のコマンドに対しても容易に対応できるものである。
【００８１】
なお、コマンド受信の一連の流れをマイコン１１で処理するように説明したが、コマンドを含むＯＲＢをフェッチするまでをハードウェアで処理しても何らの問題もなく、同様の効果を得ることもできる。
【００８２】
またデータ転送中のコマンドに対する処理では、送信しようとしているパケットの転送が完了してから、コマンド処理を行うように説明したが、コマンドが発行された時点で、データ転送を中断して、コマンドの処理を行っても何らの問題もない。
【産業上の利用可能性】
【００８３】
本発明は、コンピュータと光ディスクドライブ等の周辺機器との間を通信媒体を介してデータやコマンド等をパケット単位で伝送するデータ伝送装置に関するものである。
【図面の簡単な説明】
【００８４】
【図１】本発明の第一の実施の形態におけるデータ伝送装置の構成図
【図２】第一の実施の形態におけるリンク層コントローラから読み出される、またはリンク層コントローラに書き込まれるパケット構成をしめす構成図
【図３】本発明の第一の実施の形態におけるデータ伝送装置のＲＥＡＤコマンド実行時の動作説明図
【図４】本発明の第一の実施の形態におけるデータ伝送装置のＷＲＩＴＥコマンド実行時の動作説明図
【図５】本発明の第一の実施の形態におけるデータ伝送装置のＲＥＡＤコマンド実行中のコマンドに対する動作説明図
【図６】ＳＢＰ−２プロトコルの動作説明図
【図７】ＩＥＥＥ１３９４で規定されたパケット構成図
【図８】従来のデータ伝送装置の構成図
【符号の説明】
【００８５】
１    ホストコンピュータ（イニシエータ）
２    ＤＶＤ−ＲＡＭドライブ装置（ターゲット）
３    １３９４シリアルバス
４    送受信回路
５    受信専用バッファ
６    送信専用バッファ
７    送受信兼用バッファ
８    受信用フィルタ
９    送信用フィルタ
１０    パケット処理回路
１１    マイコン
１２    レジスタ
１３    光ディスクコントローラ
１４    ＤＭＡバス
１５    アナログ処理回路
１６    ＤＶＤ−ＲＡＭディスク
１７    光ヘッド
４１    物理層コントローラ
４２    リンク層コントローラ
【図１】
2008219926.tif 000003
【図２】
2008219926.tif 000004
【図３】
2008219926.tif 000005
【図４】
2008219926.tif 000006
【図５】
2008219926.tif 000007
【図６】
2008219926.tif 000008
【図７】
2008219926.tif 000009
【図８】
2008219926.tif 000010