JP2010114838A - 通信プロトコル変換装置、方法およびプログラム - Google Patents

通信プロトコル変換装置、方法およびプログラム Download PDF

Info

Publication number
JP2010114838A
JP2010114838A JP2008287929A JP2008287929A JP2010114838A JP 2010114838 A JP2010114838 A JP 2010114838A JP 2008287929 A JP2008287929 A JP 2008287929A JP 2008287929 A JP2008287929 A JP 2008287929A JP 2010114838 A JP2010114838 A JP 2010114838A
Authority
JP
Japan
Prior art keywords
signal
network
host
drive
communication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2008287929A
Other languages
English (en)
Inventor
Kiyoshi Toshimitsu
清 利光
Masahiro Takagi
雅裕 高木
Akiko Noda
明子 野田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2008287929A priority Critical patent/JP2010114838A/ja
Publication of JP2010114838A publication Critical patent/JP2010114838A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Communication Control (AREA)

Abstract

【課題】高効率な無線伝送にする。
【解決手段】ホスト101と通信装置103との間に接続される通信プロトコル変換装置であって、通信装置103を介して他の通信装置と通信する第1通信手段201と、通信装置を介して受信した第1通信信号がライト要求信号に対する応答信号、ライト完了信号、リード完了信号、リードデータ信号、およびリード準備要求信号のいずれであるかを解析する第1解析手段202と、ホストと通信する第2の通信手段205と、ホストから受信した第1ホスト信号がライト要求信号、およびリード要求信号のいずれであるかを解析する第2解析手段206と、第1ホスト信号を第2通信信号に変換し、第1通信信号を第2ホスト信号に変換する第1変換手段203と、第1通信信号または第1ホスト信号の解析結果に基づいた処理を実行する第1実行手段204と、を具備する。
【選択図】図2

Description

この発明は、メモリーインターフェイスプロトコルと無線伝送プロトコルの通信プロトコル変換装置、方法およびプログラムに関する。
記憶媒体であるハードディスクやフラッシュメモリを用いるドライブ装置の接続インターフェイス規格としてSerial ATA(SATA)規格がある。また、パソコンに外付けのドライブ装置を接続するための規格として、Serial ATAをベースとしたeSATA(external Serial ATA)がある(例えば、非特許文献1参照)。eSATAでの転送速度はSATAに準拠しているため最高で150MB/sの通信が可能で、ケーブルの最大長は2mに対応している。
例えば、eSATAにおいて、Writeコマンドを実行し、ホストがドライブに対してライト要求信号を送った場合、ドライブからライト許可信号(ライト要求信号の応答信号)を受信してからドライブへのライトを開始する。1回のライトデータの最大長が決まっているため、ホストがドライブに対して1回のライトデータ信号を送信した場合、ドライブからの次のライト許可信号(ライトデータ信号に対する応答信号)を受信してから、次のライトデータ信号を送信する。つまり、eSATAはドライブのライト処理能力を考慮した転送方式となっている。
これらの外部ドライブ装置との接続ケーブルをワイヤレス化すれば、ユーザの利便性が向上する。たとえば、Ethernet(登録商標)をワイヤレス化した無線LANは広く普及している。
雑誌 Interface, October 2005, p59−p73
しかしながら、無線LANは上位層の転送方式に関わらず上位層から転送されたフレームを全て無線信号に変換して送信するシステムである。そのため、有線での接続を前提に作られたSATA転送方式を無線LANのような無線システム上で利用した場合は、転送処理の無駄が多く、eSATAや無線LAN自体の転送能力を十分に生かすことができない。
例えば、ホストとドライブとの間を無線伝送した場合、ホストは、ライトデータ信号の送信に対して次のライト許可信号を受信するまでは、ドライブはライト中であり、まだ、次のライト準備ができていないと判断して、ライトデータの送信を行わない。しかし、実際は、ドライブ側のライト準備はできているものの、ライト許可信号の無線伝送で誤りが生じ、再送処理に時間がかかっているだけかもしれない。一方で、ライト処理を行っている時の無線環境は良かったかもしれない。無線環境は動的に変化するものであり、無線環境とドライブ状況とは全く無相関であることから、無線伝送にとっては、ドライブ状況に関わらず無線伝送を行った方が効率的である。
このように従来の無線伝送方式を用いてeSATAをワイヤレス化しても、転送効率が悪いという問題がある。
この発明は、ホストとドライブを接続する通信インターフェイスを高効率な無線伝送にするためにプロトコル変換する通信プロトコル変換装置、方法およびプログラムを提供することを目的とする。
上述の課題を解決するため、本発明の通信プロトコル変換装置は、ホストと通信装置との間に接続される通信プロトコル変換装置であって、前記通信装置を介して他の通信装置と通信する第1通信手段と、前記通信装置を介して受信した第1通信信号がライト要求信号に対する応答信号、ライト完了信号、リード完了信号、リードデータ信号、およびリード準備要求信号のいずれであるかを解析する第1解析手段と、前記ホストと通信する第2の通信手段と、前記ホストから受信した第1ホスト信号がライト要求信号、およびリード要求信号のいずれであるかを解析する第2解析手段と、前記第1ホスト信号を第2通信信号に変換し、前記第1通信信号を第2ホスト信号に変換する第1変換手段と、前記第1通信信号または前記第1ホスト信号の解析結果に基づいた処理を実行する第1実行手段と、を具備することを特徴とする。
また、本発明の通信プロトコル変換装置は、情報のライトおよびリードの少なくともいずれか1つが可能なドライブとネットワークとの間に接続される通信プロトコル変換装置であって、前記ネットワークと通信可能に接続される第2ネットワーク通信手段と、前記ネットワークを介して受信した第5ネットワーク信号がライト要求信号、リード要求信号、およびライトデータ信号、ライト要求信号を解析する第2ネットワーク信号解析手段と、前記ドライブと通信可能に接続されるドライブ通信手段と、前記ドライブから受信した第1ドライブ信号がライト要求信号に対する応答信号、ライト完了信号、リードデータ信号、およびリード完了信号、リード準備要求信号、ライトデータ信号に対する応答信号を解析するドライブ信号解析手段と、前記第1ドライブ信号を第6ネットワーク信号に変換したり、前記第5ネットワーク信号を第2ドライブ信号に変換する第2変換手段と、前記第5ネットワーク信号または前記第1ドライブ信号の解析結果に基づいて、通信プロトコル処理を実行する第2実行手段と、を具備することを特徴とする。
本発明の通信プロトコル変換装置、方法およびプログラムによれば、ホストとドライブを接続する通信インターフェイスを高効率な無線伝送にするためにプロトコル変換することができる。
以下、図面を参照しながら本発明の実施形態に係る通信プロトコル変換装置、方法およびプログラムについて詳細に説明する。なお、以下の実施形態では、同一の番号を付した部分については同様の動作を行うものとして、重ねての説明を省略する。
実施形態の通信プロトコル変換装置について図1を参照して説明する。図1では、ホスト側とデバイス側とを有線で接続する場合と比較して、ホスト側とデバイス側とを無線で接続する本実施形態の通信プロトコル変換装置を含んだ場合を説明する。図1はプロトコルスタックの一例を示している。また、ホストは情報処理装置、例えばPCであり、デバイスは例えばハードディスクである。
実施形態の通信プロトコル変換装置102は、トランスポート層101と無線部103との間に接続されていて、トランスポート層101および無線部103から来るデータを受け取り、通信プロトコルを変換し、それぞれ無線部103およびトランスポート層101に渡す。トランスポート層101は、上位のソフトウェア・ファームウエアがアクセスするためのタスク・ファイルまたはデータをフレームへ変換する。無線部103は、有線の場合のリンク層と物理層に対応し、無線フレームを生成し、所定の無線プロトコルに従って無線フレームの送受信を行う。なお、無線部104、通信プロトコル変換装置105、トランスポート層106はそれぞれ、トランスポート層101、通信プロトコル変換装置102、無線部103と同様な動作を行う。通信プロトコル変換装置102は後の図2に対応し、通信プロトコル変換装置105は後の図3に対応する。
また、SATAのプロトコルスタックの物理層とリンク層は、無線LAN等の無線通信システムを用いる。しかし特に無線LANに限定する必要はない。また、トランスポート層は、SATAのトランスポート層を用いる。
次に、通信プロトコル変換装置102について図2を参照して説明する。図2はホスト側の通信プロトコル変換装置である。
通信プロトコル変換装置102は、ネットワーク通信部201、ネットワーク信号解析部202、フレーム変換部203、プロトコル管理部204、ホスト通信部205、ホスト信号解析部206を含む。
ネットワーク通信部201は、ネットワークと通信するためのものである。ネットワーク通信部201は、図1の無線部が無線LANであれば、無線LANで受信した信号を上位層に受け渡すときのフレームフォーマットに従った信号を受信したり、送信するためのインターフェイスである。
ネットワーク信号解析部202は、ネットワークから受信した信号を解析する。ネットワーク信号解析部202は、例えば受信したネットワーク信号がライト要求信号に対する応答信号、ライト完了信号、リード完了信号、リードデータ信号、およびリード準備要求信号のいずれであるかを解析する。
フレーム変換部203は、ネットワークと通信をするための通信フレームをホストと通信するための通信フレームに変換したり、ホストと通信するための通信フレームをネットワークと通信するための通信フレームに変換する。すなわち、フレーム変換部203は、有線用のパケットフォーマットを無線用のパケットフォーマットに変換したり、この逆の変換を行う。もしくは、無線部103の入力信号やホストの入力信号として解釈されるパケットフォーマットに変換したり、この逆の変換を行う。たとえば、無線部103が無線LANの場合、無線部103への入力信号はイーサネット(登録商標)信号であることが多い。このような場合は、ホストと通信するための通信フレームをイーサネット信号に変換して、ネットワーク通信部201に渡す。ネットワーク通信部201は、イーサネットパケットとして無線部103に渡し、無線部103内で無線用のパケットフォーマットに変換する。
プロトコル管理部204は、ホストから受信した信号の解析結果や、ネットワークから受信した信号の解析結果に基づいて、次にどのような動作をするべきかを判断したり、ホストやネットワークに伝送するためのフレームを生成したりする。プロトコル管理部204は、ホスト通信部205に判断結果を渡す。また、プロトコル管理部204は、通信フレームを変換する必要があるかどうかをネットワーク信号解析部202またはホスト信号解析部206の解析結果に応じて判断し、ネットワーク通信部201またはホスト通信部205に電源の供給を開始したり停止したりする。
ホスト通信部205は、ホストと通信をする。ホスト信号解析部206は、ホストから受信した信号を解析する。ホスト信号解析部206は、例えば受信したホスト信号がライト要求信号、およびリード要求信号のいずれであるかを解析する。また、ホスト信号解析部206は、ホストから受信した信号がライトデータ信号(先頭、途中、最後のデータ)であるかどうかを解析する。ホスト信号解析部206がライトデータであると判定した場合は、フレーム変換部203でフレーム変換を行い、ネットワーク通信部201を介してネットワークに出力する。さらに、プロトコル管理部204がデータ信号に対する応答フレームを生成し、生成した応答フレームを、ホスト通信部205を介してホストに出力する。
次に、通信プロトコル変換装置105について図3を参照して説明する。図3はドライブ側の通信プロトコル変換装置である。
通信プロトコル変換装置105は、通信プロトコル変換装置102と同様に、ネットワーク通信部301、ネットワーク信号解析部302、フレーム変換部303、プロトコル管理部304を含み、さらに、ドライブ通信部305、ドライブ信号解析部306を含む。ネットワーク通信部301、ネットワーク信号解析部302、フレーム変換部303の動作はそれぞれネットワーク通信部201、ネットワーク信号解析部202、フレーム変換部203と同様である。プロトコル管理部304、ドライブ通信部305、ドライブ信号解析部306の動作が図2の場合と異なるが、特に、ドライブ信号解析部306とホスト信号解析部206とでは必要な処理が異なってくる。詳細については、実際のeSATAの各種コマンド処理を実行した場合を例に後に説明する。プロトコル管理部304の処理はプロトコル管理部204とはドライブ信号解析部306およびドライブ通信部305が図2と異なることで入出力する信号が異なるが、動作自体はプロトコル管理部204と同様である。
ドライブ通信部305は、ドライブと通信を行い、SATAのトランスポート層で定義されたフレームフォーマットに従った信号を受信したり、送信するためのインターフェイスである。
ドライブ信号解析部306は、ドライブから受信した信号を解析する。ドライブ信号解析部306は、例えばドライブから受信したドライブ信号がライト要求信号に対する応答信号、ライト完了信号、リードデータ信号、およびリード完了信号、リード準備要求信号、ライトデータ信号に対する応答信号を解析する。
次に、SATAの一般的な有線の場合のトランスポート層について説明する。図4は、DMA Writeコマンドを実行する場合のプロトコルであり、ホスト側がドライブ側にデータのライトを行う場合である。
ホスト側は、データをライトしたい旨の要求信号(RegHD FIS)(信号S401)をドライブ側に送信する。このとき、送信するデータ容量もドライブ側に伝える。
ドライブ側は、要求信号を受け取りこのデータを書き込むことができるかどうかを判定し、ライトが可能である場合にはライトOKである旨の応答信号(DMA Active)(信号S402)をホスト側に送信する。
ホスト側は、ドライブ側からの応答信号を受けて、ドライブ側へデータ転送(DataHD FIS転送)(信号S403)を行う。
ドライブ側は、データを受け取り、まだ全てのデータを受け取っておらず、次のデータを受け取る準備が完了したら、応答信号(DMA Active)(信号S404)をホスト側へ送信する。なお、データ転送では1回で送信可能なサイズ(例えば2キロバイト)が予め決まっているので、ホスト側が書き込むデータのデータ量に応じてDataHD FIS転送(信号S403、S405、S407)を複数回行う。データを受け取るたびに、まだ全てのデータを受け取っていない場合にはドライブ側は応答信号(DMA Active)(信号S404、S406)をホスト側に送信する。
ドライブ側が、データを受け取り、信号S401で受け取った送信するデータ容量を参照して全てのデータを受け取ったと判断した場合には、データを全て受け取った旨の完了信号(RegDH FIS)(信号S408)をホスト側に送信する。
次も、SATAの一般的な有線の場合のトランスポート層について説明する。図5は、DMA Readコマンドを実行する場合のプロトコルであり、ホスト側がドライブ側のデータを読み込む場合である。
ホスト側は、データをリードしたい旨の要求信号(RegHD FIS)(信号S501)をドライブ側に送信する。
ドライブ側は、要求信号を受け取りこのデータを読み込むことができるかどうかを判定し、リードが可能である場合にはホスト側へデータ転送(DataDH FIS転送)(信号S502)を行う。データ転送では1回で送信可能なサイズが予め決まっているので、ホスト側が読み込むデータのデータ量に応じてDataDH FIS転送(信号S502、S503、S504、S505)を複数回行う。
ドライブ側が、全てのデータをホスト側に転送したと判断した場合には、データを全て転送した旨の完了信号(RegDH FIS)(信号S506)をホスト側に送信する。
次も、SATAの一般的な有線の場合のトランスポート層について説明する。図6は、図4と同様にライトの場合であるが、PIO Writeコマンドを実行する場合のプロトコルである点が図4とは異なる。
ホスト側は、データをライトしたい旨の要求信号(RegHD FIS)(信号S501)をドライブ側に送信する。このとき、送信するデータ容量もドライブ側に伝える。ドライブ側は、要求信号を受け取りこのデータを書き込むことができるかどうかを判定し、ライトが可能である場合にはライトOKである旨の応答信号(PIOSU(Data準備完了))(信号S601)をホスト側に送信する。
ホスト側は、ドライブ側からの応答信号を受けて、ドライブ側へデータ転送(DataHD FIS転送)(信号S403)を行う。ドライブ側は、データを受け取り、まだ全てのデータを受け取っておらず、次のデータを受け取る準備が完了したら、応答信号(PIOSU(Data準備完了))(信号S602)をホスト側へ送信する。なお、データ転送では1回で送信可能なサイズが予め決まっているので、ホスト側が書き込むデータのデータ量に応じてDataHD FIS転送(信号S403、S405、S407)を複数回行う。データを受け取るたびに、まだ全てのデータを受け取っていない場合にはドライブ側は応答信号(PIOSU(Data準備完了))(信号S602、S603)をホスト側に送信する。
ドライブ側が、データを受け取り、信号S501で受け取った送信するデータ容量を参照して全てのデータを受け取ったと判断した場合には、データを全て受け取った旨の完了信号(Reg DH FIS)(信号S506)をホスト側に送信する。
図4と図6では、このように完了信号が異なるだけである。
次も、SATAの一般的な有線の場合のトランスポート層について説明する。図7は、図5と同様にリードの場合であるが、PIO Readコマンドを実行する場合のプロトコルである点が図5とは異なる。
ホスト側は、データをリードしたい旨の要求信号(RegHD FIS)(信号S501)をドライブ側に送信する。ドライブ側は、要求信号を受け取りこのデータを読み出すことができるかどうかを判定し、読み出しが可能である場合には読み出しOKである旨の応答信号(PIOSU(Data準備完了))(信号S701)をホスト側に送信し、これからデータを送信する旨をホスト側に伝える。
ドライブ側は、ホスト側へデータ転送(DataDH FIS転送)(信号S502)を行う。データ転送では1回で送信可能なサイズが予め決まっているので、ホスト側が読み込むデータのデータ量に応じてDataDH FIS転送を(信号S502、S503、S505)複数回行う。データを読み出すたびに、まだ全てのデータを読み出していない場合にはドライブ側は応答信号(PIOSU(Data準備完了))(信号S702、S703、S704)をホスト側に送信する。ドライブ側は、全てのデータをホスト側に転送完了する最後のデータ(信号S705)を転送して終了する。
次に、図4で説明したDMA Writeコマンドを単純に無線伝送に適用した場合のシーケンス例について図8を参照して説明する。なお、図8では、ある位置から上方が過去、下方が未来であり、時間は上方から下方に進む。図8は、SATAのトランスポート層のプロトコルを、全て無線伝送用のフレームにカプセル化して伝送する場合の例である。このような伝送を行うと、例えば、ホスト側からドライブ側へのフレーム伝送(ステップST801、ST805)が行われ、ドライブ側で処理(ステップST802)が行われ、ドライブ側での処理が完了したことをホスト側に通知し(ステップST803)、ホストは通知されたことを認識して(ステップST804)から次の処理を実行する。
つまり、図8のように、ステップST801、ST803、ST805での無線処理時間、ステップST804でのホスト処理時間、ステップST802でのドライブ処理時間が、シリアルに積み重なってトータルの処理時間になる。
しかし、無線伝送の処理時間とホストやドライブでの処理時間とはシリアルに処理する必要はない。つまり、ドライブでのライト処理中に、次のライトデータを無線伝送し、前のデータのライトが完了するまで、ドライブ側の一時バッファ(例えばネットワーク通信部301またはドライブ通信部305に含まれる)に蓄積しておいてもよい。実施形態の通信プロトコル変換装置は、この点を考慮した処理を行う。
そこで、実施形態の通信プロトコル変換装置について図9を参照して説明する。図9はDMA Writeを実行する場合を示す。
<ホスト側>
トランスポート層101はデータをライトしたい旨の要求信号(RegHD FIS)(信号S401)をホスト側の通信プロトコル変換装置102に渡す。このとき、送信するデータ容量も伝える。通信プロトコル変換装置102は、受け取った要求信号を無線用の要求信号(信号S901)に変換して無線部103に渡す。無線部103は、受け取った無線用の要求信号(無線フレーム[RegHD FIS])(信号S902)をドライブ側に無線送信する。
<ドライブ側>
無線部104が無線用の要求信号を無線受信し、受信した要求信号(信号S903)を通信プロトコル変換装置105に渡す。通信プロトコル変換装置105は、受け取った要求信号を有線用の要求信号(信号S401)に変換してトランスポート層106に渡す。ドライブ側でデバイスの内部処理を行い、このデータを書き込むことができるかどうかを判定し、ライトが可能である場合にはライトOKである旨の応答信号(DMA Active)(信号S402)を通信プロトコル変換装置105に渡す。通信プロトコル変換装置105は、受け取った応答信号を無線用の応答信号に変換して無線部104に渡す(ステップST904)。無線部104は、無線用の応答信号(無線フレーム[DMA Active])(信号S905)を無線送信する。
<ホスト側>
無線部103は、無線用の応答信号(信号S906)を無線受信し、通信プロトコル変換装置102に渡す。通信プロトコル変換装置102は、受け取った応答信号を有線用の応答信号(信号S402)に変換しトランスポート層101に渡す。トランスポート層101は、ドライブ側からの応答信号を受けて、通信プロトコル変換装置102へデータ転送(DataHD FIS)(信号S403)を行う。通信プロトコル変換装置102は、データを無線用のデータ(信号S907)に変換して無線部103に渡す。さらに、通信プロトコル変換装置102は、信号S401で送信したRegHDを解釈して、送信データ量から今回のデータ送信(信号S403)が最終フレーム(信号S908)であるかどうか判断し、最終フレームではないと判断した場合には、ドライブ側から応答信号(DMA Active)を受け取ることなく、ドライブ側の代理としてこの応答信号をトランスポート層101に渡す(ステップST910)。無線部103は、無線用のデータを受け取り、ドライブ側へデータ(無線フレーム[DataHD FIS])(信号S908)を無線送信する。
<ドライブ側>
無線部104は、無線用のデータ(信号S909)を受け取り、通信プロトコル変換装置105に渡す。通信プロトコル変換装置105は、無線用のデータを有線用のデータ(信号S403)に変換して、トランスポート層106に渡す。トランスポート層106は、データを受け取り、まだ全てのデータを受け取っておらず、受け取る準備が完了したら、応答信号(DMA Active)(信号S404)を通信プロトコル変換装置105に渡す。通信プロトコル変換装置105は、応答信号を受け取ってもこの応答信号を無線部104に転送しない(ステップST911)。ステップST910、ST911によってホスト側からドライブ側へデータを送信する時間を節約することが可能になる。
<ホスト側>
トランスポート層101は、ステップST910による応答信号を受け取り、通信プロトコル変換装置102へデータ転送(DataHD FIS)(信号S405)を行う。以下、信号S907についての処理からステップST911、信号S403、S404についての処理と同様に、信号S912についての処理から信号S915についての処理、ステップST911、信号S405、S406についての処理を行う。そして、トランスポート層101は、信号S915の応答信号を受け取り、通信プロトコル変換装置102へデータ転送(DataHD FIS)(信号S407)を行う。
通信プロトコル変換装置102は、データを無線用のデータ(信号S917)に変換して無線部103に渡す。さらに、ステップST910と同様に今回の(信号S407)のデータ送信が最終フレーム(信号S918)であるかどうか判断し、最終フレームであると判断した場合には、ステップST910のように応答信号をトランスポート層101に渡すことはしない(ステップST916)。
この後の信号S918、S919、S407についての処理は、信号S908、S909、S403についての処理と同様である。
<ドライブ側>
トランスポート層106は、データを受け取り、受け取った信号S401から送信するデータ容量を参照して全てのデータを受け取ったと判断した場合には、データを全て受け取った旨の完了信号(RegDH FIS)(信号S408)を通信プロトコル変換装置105に渡す。通信プロトコル変換装置105は、受け取った完了信号を無線用の完了信号(信号S920)に変換して無線部104に渡す。無線部104は、無線用の完了信号(無線フレーム[RegDH FIS])(信号S921)を無線送信する。
<ホスト側>
無線部103は、無線用の完了信号(信号S922)を無線受信し、通信プロトコル変換装置102に渡す。通信プロトコル変換装置102は、受け取った完了信号を有線用の応答信号(信号S408)に変換しトランスポート層101に渡す。トランスポート層101は、ドライブ側からの応答信号を受けてライトが終了したことを認識する。
以上の図9の処理により、ライト処理中に、次のライトデータを無線伝送することが可能となる。つまり、図10に示すように無線処理時間とドライブ処理時間をパラレル化することができるため、トータルのライト時間を短縮することができる。すなわち、ステップST1003とステップST1004とをパラレルに処理することができる。また、ステップST1006とステップST1007ともパラレルに処理することができるので、これらのパラレル処理のおかげで図8の場合に比較してライト時間が短縮される。これらのパラレル処理は、ステップST910およびステップST911による。また、ドライブがホストに対して送信するDMA Activeを無線区間で送信する回数を減らすことができるため低消費電力化も可能となる。
図9では、ホスト側では、ホスト信号解析部206が、ホストから受信したホスト信号が途中のライトデータ信号(信号S403)であると解析した場合には、フレーム変換部203がホスト信号をネットワーク信号に変換し、ネットワーク通信部201がこのネットワーク信号(信号S907、S908)をネットワークに送信し、プロトコル管理部204がホスト信号に対応する応答信号を生成し、ホスト通信部205が応答信号をホストに送信する(ステップST910)。ホスト信号解析部206が、ホスト信号(信号S407)がライト要求信号、リード要求信号、および最後のライトデータ信号のいずれか1つであると解析した場合には(ステップST916)、フレーム変換部203がライト要求信号、リード要求信号、またはデータ信号をネットワーク信号に変換して、ネットワーク通信部201がネットワーク信号(信号S917、S918)をネットワークに送信する。
ホスト側では、ネットワーク信号解析部202が、ネットワーク信号が(信号S906,信号S922)ライト要求信号に対する応答信号、ライト完了信号、およびリード完了信号のいずれか1つであると解析した場合には、フレーム変換部203がネットワーク信号をホスト信号(信号S402,信号S408)に変換し、ホスト通信部205がホスト信号をホストに送信する。
また、ホスト通信部205が、ホストから受信したホスト信号(信号S401)がライト要求信号であると解析した場合には、ホスト信号解析部206はライトデータの全体長を検出し、ホスト通信部205がライトデータ信号(信号S403,S405,S407)を受信した場合には、ホスト信号解析部206は、ライトデータ信号の累積信号長をカウントし、全体長と累積信号長との比較を行い、ライトデータが最終データであるか否かを判断する(ステップST916)。
またドライブ側では、ネットワーク信号解析部302が、ネットワークを介して受信したネットワーク信号(信号S903)がライトデータ信号であると解析した場合には、ネットワーク信号解析部302はライトデータ信号の累積信号長をカウントし、全体長と累積信号長との比較を行い、ライトデータが最終データであるか否かを判断し、最終データであると判断されさらにドライブ通信部305がドライブからドライブ信号(信号S408)を受信した場合に、フレーム変換部303がドライブ信号をネットワーク信号に変換し、ネットワーク通信部301がネットワーク信号(信号S920,S921)をネットワークに送信し、さらに、ネットワーク信号解析部302が、ネットワークを介して受信したネットワーク信号(信号S903)がライトデータ信号であると解析した場合には、ネットワーク信号解析部302はライトデータ信号の累積信号長をカウントし、全体長と累積信号長との比較を行い、ライトデータが最終データであるか否かを判断し、最終データでないと判断されさらにドライブ通信部305がドライブからドライブ信号(信号S404)を受信した場合に、フレーム変換部303がドライブ信号をネットワーク信号に変換することを停止し、さらにネットワーク通信部301も停止する(ステップST911)。
次に、図9の処理の変形例として無線送信するデータフレームをアグリゲーション(Aggregation)して送信する場合について図11を参照して説明する。
図11での処理は、データ転送を分割して行わず、無線フレームの数回の転送分を1つにまとめて(アグリゲーションして)ホスト側からドライブ側にデータを転送することが図9での処理と異なる。すなわち、信号S908についての処理および信号S913についての処理を行わず、信号S918についての処理の代わりに、信号S907、S912、S917についての処理の3回分の転送データをアグリゲーションして無線フレーム(Aggregated無線フレーム[3×DataHD FIS])(信号S1107)で送信する。図11では、無線部103が1つのフレームにまとめてドライブ側へ送信する。この場合のフレームは例えば図12(1)のようになる。すなわち、図12(1)の無線フレームは、3つのデータのそれぞれにCRCを付加し、それらデータを1つにまとめ、まとめたデータに無線ヘッダーを付加したものである。この場合には無線部103がアグリゲーション方式に対応している必要がある。
これとは別に、実施形態の通信プロトコル変換装置102が3つのデータを1つにまとめ、1つにまとめたデータを無線部103に渡し、無線部103がこのデータを無線フレームとして送信してもよい。この場合は、信号S907についての処理、信号S1102についての処理がなくなり、信号S1105についての処理で3つのデータを1つにまとめたデータが通信プロトコル変換装置102から無線部103に渡される。複数のデータを1つにまとめる際にはデータを一時的に記憶するバッファが必要であるが、バッファは例えばネットワーク通信部201が含んでいる。また、ホスト通信部205がバッファを含んでいてもよい。この場合のフレームは例えば図12(2)のようになる。すなわち、図12(2)の無線フレームは、まとめた1つのデータにCRCを付加し無線ヘッダーを付加したものである。この場合には、無線部103はアグリゲーション方式に対応している必要はない利点がある。
なお、図11での、通信プロトコル変換装置102が代理でDMA Activeをトランスポート層101に渡したり(ステップST911)、通信プロトコル変換装置105がトランスポート層106から受け取ったDMA Activeを無線部104に渡さない(ステップST1111)、通信プロトコル変換装置102が最終フレームであると判断した場合には代理DMA Activeをトランスポート層101に渡さない(ステップST1106)ことは図9での場合と同様である。
このように、データフレームをアグリゲーションして送信することも可能になるため、無線区間の伝送効率を向上させることもできる。
次に、実施形態の通信プロトコル変換装置を利用してDMA Readを実行する場合について図13を参照して説明する。図13は、図5で説明したDMA Readコマンドを無線伝送する場合のシーケンス例である。
図13の例は、SATAのトランスポート層のプロトコルを、全て無線伝送用のフレームにカプセル化して伝送する場合の例である。DMA Readの場合、DMA Writeよりも処理が単純であるため、DMA Writeに比べるとトータルのリード時間を短縮する効果は少ないが、実施形態の通信プロトコル変換装置102を用いることにより、図13に示すようにリードデータをアグリゲーションして送信することも可能となる。
<ホスト側>
トランスポート層101はデータをリードしたい旨の要求信号(RegHD FIS)(信号S501)をホスト側の通信プロトコル変換装置102に渡す。通信プロトコル変換装置102は、受け取った要求信号を無線用の要求信号(RegHD FIS)(信号S1301)に変換して無線部103に渡す。無線部103は、受け取った無線用の要求信号(無線フレーム[RegHD FIS])(信号S1302)をドライブ側に無線送信する。
<ドライブ側>
無線部104が無線用の要求信号を無線受信し、受信した要求信号(RegHD FIS)(信号S1303)を通信プロトコル変換装置105に渡す。通信プロトコル変換装置105は、受け取った要求信号を有線用の要求信号(RegHD FIS)(信号S501)に変換してトランスポート層106に渡す。ドライブ側でデバイスの内部処理を行い、このデータを読み込むことができるかどうかを判定し、リードが可能である場合にはデータ(DataDH FIS)(信号S502)を通信プロトコル変換装置105に渡す。通信プロトコル変換装置105は、受け取ったデータを無線用のデータ(DataDH FIS)(信号S1304)に変換して無線部104に渡す。無線部104は、データを受け取り、無線用のデータ(無線フレーム[DataDH FIS])(信号S1305)を無線送信する。
<ホスト側>
無線部103は、無線用のデータ(信号S1306)を無線受信し、通信プロトコル変換装置102に渡す。通信プロトコル変換装置102は、受け取ったデータ(信号S502)を有線用のデータに変換しトランスポート層101に渡す。
他の例として、以下に示すようにアグリゲーションして無線フレームを送信することもできる。実施形態の通信プロトコル変換装置を使用する通信では通常はアグリゲーションして無線フレームを送信する。
<ドライブ側>
信号S501の後にトランスポート層106は、ドライブ側でデバイスの内部処理を行い、このデータを読み込むことができるかどうかを判定し、リードが可能である場合にはデータ(DataDH FIS)(信号S502)を通信プロトコル変換装置105に渡す。この信号S502を繰り返し、トランスポート層106は複数のデータを通信プロトコル変換装置105に順次渡す。
通信プロトコル変換装置105は、複数のデータをバッファリングしながら受け取り、例えばホスト側がリードしたい全てのデータ量だけデータをトランスポート層106から受け取ったらこれらのデータをアグリゲーションして、無線部104にアグリゲーションしたデータ(信号S1307)を渡す。通信プロトコル変換装置105は、例えばネットワーク通信部301またはドライブ通信部305にバッファを含んでいる。無線部104は、アグリゲーションしたデータ(信号S1308)を無線送信する。
<ホスト側>
無線部103がドライブ側からアグリゲーションしたデータ(信号S1309)を無線受信して、通信プロトコル変換装置102に渡す。通信プロトコル変換装置102は、アグリゲーションしたデータを有線用のデータに変換しアグリゲーションしたデータを分離する、または、アグリゲーションしたデータを分離し分離したデータ(信号S1310、S1311、S1312)ごとに有線用のデータに変換する。
<ドライブ側>
信号S505で、要求された全てのデータを通信プロトコル変換装置102に渡したら、完了信号(RegDH FIS)(信号S506)を通信プロトコル変換装置105に渡す。通信プロトコル変換装置105は、完了信号を無線用の完了信号(信号S1313)に変換して無線部104に渡す。無線部104は、無線用の完了信号(無線フレーム[RegDH FIS])(信号S1314)をホスト側に送信する。
<ホスト側>
無線部103は、完了信号(信号S1315)をドライブ側から受け取り、通信プロトコル変換装置102に渡す。通信プロトコル変換装置102は、完了信号を有線用の完了信号(信号S506)に変換してトランスポート層101に渡す。トランスポート層101は、完了信号を受け取りデータのリードが完了したことを認識する。
また、図13では、RegDH FISをアグリゲーションしていないが、リードデータ信号にRegDH FISをアグリゲーションして送信することもできる。その際、ドライブ側の通信プロトコル変換装置105は、アグリゲーションするフレームをバッファリングする際に、フレームタイプを判断し、リード完了を意味するRegDH FISを受信するまでバッファリングして、RegDH FISを受信したら、そこまでをアグリゲーションして送信してもよい。バッファリングするバッファは、例えばネットワーク通信部301が含んでいる。また、ドライブ通信部305がバッファを含んでいてもよい。
ネットワーク信号解析部202が、ネットワーク信号(信号S1306)がリードデータ信号であると解析した場合には、フレーム変換部203がネットワーク信号をホスト信号に変換し、ホスト通信部205がホスト信号(信号S502)をホストに送信する。
さらに、ネットワーク信号解析部202が、ネットワークを介して受信したネットワーク信号がN(N:2以上の整数)個のリードデータ信号(信号S1309)であると解析した場合には、プロトコル管理部204がリードデータ信号に対するリード準備要求信号を生成し、ホスト通信部205がリード準備要求信号をホストに送信し、フレーム変換部203がネットワーク信号に含まれるリードデータ信号の1つをホスト信号に変換し、ホスト通信部205がこのホスト信号(信号S1310、S1311、S1312)をホストに送信するこれら4つの処理をN回繰り返す。
次に、実施形態の通信プロトコル変換装置を利用して、ホスト側がドライブ側にライトを行う場合でPIO Writeを実行する場合について図14を参照して説明する。図14の場合での本質的な思想は図9の場合と同様である。
図9でのDMA Activeが図14ではPIOSUに変わっている他は特に変更点はない。例えば、通信プロトコル変換装置102の特徴である処理の図9のステップST910、ST911、ST916はそれぞれ図14のステップST1405、ST1404、ST1407に対応する。ステップST1405では、通信プロトコル変換装置102は、送信したRegHD(信号S401)を解釈して、送信データ量から今回のデータ送信(信号S403)が最終フレーム(信号S908)であるかどうか判断し、最終フレームではないと判断した場合には、ドライブ側から応答信号(PIOSU)を受け取ることなく、ドライブ側の代理としてこの応答信号をトランスポート層101に渡す。
ステップST1404では、通信プロトコル変換装置105は、応答信号(PIOSU)を受け取ってもこの応答信号を無線部104に転送しない。ステップST1407では、今回のデータ送信(信号S407)が最終フレーム(信号S918)であるかどうか判断し、最終フレームであると判断した場合には、ステップST1405のように応答信号をトランスポート層101に渡すことはしない。
次に、実施形態の通信プロトコル変換装置を利用して、ホスト側がドライブ側からリードを行う場合でPIO Readを実行する場合について図15、図16を参照して説明する。図15の例はドライブ側からホスト側へ応答信号PIOSUを送信しない場合であり、図16の例はドライブ側からホスト側へ応答信号PIOSUを送信する場合であり、この点が図15と図16とで本質的に異なる。
図15の例では、ドライブ側のトランスポート層106が、データをリードしたい旨の要求信号(RegHD FIS)(信号S501)をホスト側から受け取り、このデータを読み出すことができるかどうかを判定し、読み出しが可能である場合には応答信号(PIOSU)(信号S701)とデータ(DataDH FIS)(信号S502)を通信プロトコル変換装置105に渡す。
通信プロトコル変換装置105は、応答信号は無線部104に渡さず(ステップST1501)、データを無線用のデータ(DataDH FIS)(信号S1304)に変換して無線部104に渡す。ドライブ側が応答信号をホスト側に送信しないことで、応答信号を送信する送信時間分だけ全てのデータを読み込む時間が短くなる。
ホスト側は、ドライブ側からデータ(DataDH FIS)(信号S1306)を受け取り、通信プロトコル変換装置102が応答信号(PIOSU)(信号S701)を生成し(ステップST1502)、トランスポート層101に渡し、その後データを有線用のデータ(DataDH FIS)(信号S502)に変換しトランスポート層101に渡す。このように、ホスト側の通信プロトコル変換装置102がドライブ側の代理で応答信号(PIOSU)を生成してトランスポート層101に渡すことにより、ドライブ側から応答信号(PIOSU)をホスト側が受信する必要がなくなる。
また、以下に示すようにアグリゲーションして無線フレームを送信することもできる。
信号S501についての処理の後にトランスポート層106は、ドライブ側でデバイスの内部処理を行い、このデータを読み出すことができるかどうかを判定し、読み出しが可能である場合にはデータ(DataDH FIS)(信号S505)を通信プロトコル変換装置105に渡す。この信号S505についての処理を繰り返し、トランスポート層106は複数のデータを通信プロトコル変換装置105に順次渡す。
通信プロトコル変換装置105は、応答信号は無線部104に渡さず(ステップST1501)、複数のデータをバッファリングしながら受け取り、例えばホスト側がリードしたい全てのデータ量だけデータをトランスポート層106から受け取ったらこれらのデータをアグリゲーションして、無線部104にアグリゲーションしたデータ(信号S1307)を渡す。通信プロトコル変換装置105は、通信プロトコル変換装置105は、例えばネットワーク通信部301またはドライブ通信部305にバッファを含んでいる。無線部104は、アグリゲーションしたデータ(信号S1308)を無線送信する。
無線部103がドライブ側からアグリゲーションしたデータ(信号S1309)を無線受信して、通信プロトコル変換装置102に渡す。通信プロトコル変換装置102は、応答信号(PIOSU)(信号S703、S704)を生成し、トランスポート層101に渡し、アグリゲーションしたデータを有線用のデータに変換しアグリゲーションしたデータを分離する、または、アグリゲーションしたデータを分離し分離したデータ(信号S505、S705)ごとに有線用のデータに変換する。
また、ネットワーク信号解析部202が、ネットワークを介して受信したネットワーク信号がリードデータ信号であると解析した場合には、プロトコル管理部204がリードデータ信号に対するリード準備要求信号を生成し、ホスト通信部205がリード準備要求信号をホストに送信し、フレーム変換部203が第1ネットワーク信号をホスト信号に変換し、ホスト通信部205がこのホスト信号をホストに送信する。
次に、実施形態の通信プロトコル変換装置を利用して、ホスト側がドライブ側からリードを行う場合でPIO Readを実行する第2の例について図16を参照して説明する。
ドライブ側のトランスポート層106が、データをリードしたい旨の要求信号(RegHD FIS)(信号S501)をホスト側から受け取り、このデータを読み込むことができるかどうかを判定し、リードが可能である場合には応答信号(PIOSU)(信号S701)とデータ(DataDH FIS)(信号S502)を通信プロトコル変換装置105に渡す。
通信プロトコル変換装置105は、図15の例とは異なり応答信号とデータを無線用のデータに変換したもの、または応答信号を無線用に変換したものとデータを無線用のデータに変換したものをアグリゲーション(Aggregated[PIOSU,DataHD FIS])して無線部104に渡す。
ドライブ側から送信するデータがまだある場合には信号S701、S501、S1601−S1603、S701、S502についての処理と同様にしてデータを送信する(信号S702、S503、S1604−S1606、S702、S503についての処理;信号S703、S505、S1607−S1609、S703、S505についての処理)。
以上のように、ドライブ側が応答信号とデータをアグリゲーションしたものをホスト側に送信することで、応答信号を別途送信する送信時間分がなくなり、アグリゲーションする時間を考慮しても全てのデータを読み込む時間が短くすることができる。
また、ネットワーク信号解析部202が、ネットワークを介して受信したネットワーク信号(信号S1603)がリード準備要求信号とリードデータ信号をそれぞれ1つ含んでいると解析した場合には、フレーム変換部203がネットワーク信号をホスト信号に変換し、ホスト通信部205が、リード準備要求信号に対するホスト信号の第1部分信号(信号S701)、およびリードデータ信号に対するホスト信号部分の第2部分信号(信号S502)を第1部分信号、第2部分信号の順にホストに送信する。
さらに、ネットワーク信号解析部202が、ネットワークを介して受信したネットワーク信号がリード準備要求信号とリードデータ信号をそれぞれN個ずつ含んでいると解析した場合には、フレーム変換部203がネットワーク信号をホスト信号に変換し、ホスト通信部205が、リード準備要求信号の1つに対するホスト信号の第3部分信号、およびリードデータ信号の1つに対するホスト信号部分の第4部分信号を第3部分信号、第4部分信号の順にホストに送信するこれら2つの処理をN回繰り返す。
またさらに、ドライブ信号解析部306が、ドライブから受信したドライブ信号がリード準備要求信号(信号S701)であると解析した場合には、ネットワーク通信部301がネットワーク信号としてリードデータ信号(信号S502)を受信した後に、フレーム変換部303がリード準備要求信号とリードデータ信号とを1つの信号(信号S1601)にまとめてネットワーク信号に変換し、ネットワーク通信部301がネットワーク信号(信号S1602)をネットワークに送信する。
最後に、無線回線が切断された場合、または再送回数の上限に達した場合の対応について図17を参照して説明する。
実施形態でのホストまたはデバイスは、無線誤り等が生じ、正しく送信できなかった場合には、所定回数の再送処理を行う。そして、送信フレームが再送回数の上限値に達したら、その旨を実施形態の通信プロトコル変換装置に通知する。また、実施形態の通信プロトコル変換装置が定期的にホストまたはデバイスの通信状況を確認し、送信フレームが再送回数の上限値に達していないかをチェックしてもよい。
図17の例では、通信プロトコル変換装置102は、ホストが送信した無線信号が所定の再送回数の上限に達したことを認識した場合に、ホスト側から、送信フレーム(信号S1703)を受け取ったとしても、DMA Activeを返信する処理を停止する(ステップST1704)。
すなわち、プロトコル管理部204は、ネットワークを介した通信が切断されたことを信号S1702によって認識し、ライトデータ信号(信号S1703)を受け取った場合に、「フレーム変換部203がフレーム変換を行い、ネットワーク通信部201を介してネットワークに出力し、かつ、プロトコル管理部204がライトデータ信号に対する応答フレームを生成し、ホスト通信部205がこの応答フレームをホストに出力する」(ステップST910)の処理を停止する(ステップST1704)。
この処理により、ホストは、DMA Activeが返信されないため、ライト処理のエラーを把握することができる。同様に、無線回線が切断された場合には、その旨を通信プロトコル変換装置102に通知する。また、実施形態の通信プロトコル変換装置102が定期的にネットワーク装置の通信状況を確認し、無線回線が切断していないかをチェックしてもよい。
したがって、実施形態のプロトコル変換装置は、ネットワーク回線が切断したことを認識した場合には、ホスト側から、送信フレームを受信したとしても、DMA Activeを返信する処理を停止することにより、ホストが、ライト処理のエラーを把握することができる。
以上の実施形態によれば、無線処理時間とドライブ処理時間をパラレル化したり、アグリゲーションしてデータを送信することにより、ライト時間やリード時間を短くすることができる。
また、上述の実施形態の中で示した処理手順に示された指示は、ソフトウェアであるプログラムに基づいて実行されることが可能である。汎用の計算機システムが、このプログラムを予め記憶しておき、このプログラムを読み込むことにより、上述した実施形態の通信プロトコル変換装置による効果と同様な効果を得ることも可能である。上述の実施形態で記述された指示は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フレキシブルディスク、ハードディスクなど)、光ディスク(CD−ROM、CD−R、CD−RW、DVD−ROM、DVD±R、DVD±RWなど)、半導体メモリ、またはこれに類する記録媒体に記録される。コンピュータまたは組み込みシステムが読み取り可能な記録媒体であれば、その記憶形式は何れの形態であってもよい。コンピュータは、この記録媒体からプログラムをリード、このプログラムに基づいてプログラムに記述されている指示をCPUで実行させれば、上述した実施形態の通信プロトコル変換装置と同様な動作を実現することができる。もちろん、コンピュータがプログラムを取得する場合または読み込む場合はネットワークを通じて取得または読み込んでもよい。
また、記録媒体からコンピュータや組み込みシステムにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワーク等のMW(ミドルウェア)等が本実施形態を実現するための各処理の一部を実行してもよい。
さらに、本願発明における記録媒体は、コンピュータあるいは組み込みシステムと独立した媒体に限らず、LANやインターネット等により伝達されたプログラムをダウンロードして記憶または一時記憶した記録媒体も含まれる。
また、記録媒体は1つに限られず、複数の媒体から本実施形態における処理が実行される場合も、本発明における記録媒体に含まれ、媒体の構成は何れの構成であってもよい。
なお、本願発明におけるコンピュータまたは組み込みシステムは、記録媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するためのものであって、パソコン、マイコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であってもよい。
また、本願発明の実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の実施形態における機能を実現することが可能な機器、装置を総称している。
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
実施形態の通信プロトコル変換装置と他装置との接続を示す図。 図1の通信プロトコル変換装置102のブロック図。 図1の通信プロトコル変換装置105のブロック図。 有線で接続されるホスト側とドライブ側との間でDMA Writeコマンドを実行する場合の一例を示す図。 有線で接続されるホスト側とドライブ側との間でDMA Readコマンドを実行する場合の一例を示す図。 有線で接続されるホスト側とドライブ側との間でPIO Writeコマンドを実行する場合の一例を示す図。 有線で接続されるホスト側とドライブ側との間でPIO Readコマンドを実行する場合の一例を示す図。 図4の場合の処理時間を示す図。 実施形態の通信プロトコル変換装置を使用した場合でのDMA Writeコマンドを実行する場合の一例を示す図。 図9の場合の処理時間を示す図。 図9の処理の変形例であり、無線送信するデータフレームをアグリゲーションして送信する場合の一例を示す図。 図11のデータをアグリゲーションする2つの例を示す図。 実施形態の通信プロトコル変換装置を使用した場合でのDMA Readコマンドを実行する場合の一例を示す図。 実施形態の通信プロトコル変換装置を使用した場合でのPIO Writeコマンドを実行する場合の一例を示す図。 実施形態の通信プロトコル変換装置を使用した場合でのPIO Readコマンドを実行する場合の一例を示す図。 実施形態の通信プロトコル変換装置を使用した場合でのPIO Writeコマンドを実行する場合の一例を示す図。 無線回線が切断された場合、または再送回数の上限に達した場合の実施形態の通信プロトコル変換装置の処理を説明するための図。
符号の説明
101、106・・・トランスポート層、102、105・・・通信プロトコル変換装置、103、104・・・無線部、201、301・・・ネットワーク通信部、202、302・・・ネットワーク信号解析部、203、303・・・フレーム変換部、204、304・・・プロトコル管理部、205・・・ホスト通信部、206・・・ホスト信号解析部、305・・・ドライブ通信部、306・・・ドライブ信号解析部。

Claims (16)

  1. ホストと通信装置との間に接続される通信プロトコル変換装置であって、
    前記通信装置を介して他の通信装置と通信する第1通信手段と、
    前記通信装置を介して受信した第1通信信号がライト要求信号に対する応答信号、ライト完了信号、リード完了信号、リードデータ信号、およびリード準備要求信号のいずれであるかを解析する第1解析手段と、
    前記ホストと通信する第2の通信手段と、
    前記ホストから受信した第1ホスト信号がライト要求信号、およびリード要求信号のいずれであるかを解析する第2解析手段と、
    前記第1ホスト信号を第2通信信号に変換し、前記第1通信信号を第2ホスト信号に変換する第1変換手段と、
    前記第1通信信号または前記第1ホスト信号の解析結果に基づいた処理を実行する第1実行手段と、を具備することを特徴とする通信プロトコル変換装置。
  2. 前記ホスト信号解析手段が、前記第1ホスト信号が最初または途中のライトデータ信号であると解析した場合には、前記変換手段が該第1ホスト信号を第3ネットワーク信号に変換し、前記ネットワーク通信手段が該第3ネットワーク信号をネットワークに送信し、前記第1実行手段が該第1ホスト信号に対応する応答信号を生成し、前記ホスト通信手段が該応答信号を前記ホストに送信し、
    前記ホスト信号解析手段が、前記第1ホスト信号がライト要求信号、リード要求信号、および最後のライトデータ信号のいずれか1つであると解析した場合には、前記変換手段が該ライト要求信号、該リード要求信号、または該データ信号を第4ネットワーク信号に変換して、前記ネットワーク通信手段が該第4ネットワーク信号をネットワークに送信する請求項1に記載の通信プロトコル変換装置。
  3. 前記第1実行手段は前記ネットワークを介した通信が切断されたかどうかを認識し、該第1実行手段は該通信が切断されたことを認識し、かつ、前記ホスト信号解析手段が前記第1ホスト信号が最初または途中のライトデータであると解析した場合には、前記変換手段は該第1ホスト信号を変換する処理を停止し、かつ、前記第1実行手段は前記応答信号を生成する処理を停止することを特徴とする請求項2に記載の通信プロトコル変換装置。
  4. 前記ネットワーク信号解析手段が、前記第1ネットワーク信号がライト要求信号に対する応答信号、ライト完了信号、およびリード完了信号のいずれか1つであると解析した場合には、前記変換手段が該第1ネットワーク信号を第3ホスト信号に変換し、前記ホスト通信手段が該第3ホスト信号を前記ホストに送信し、
    前記ネットワーク信号解析手段が、前記第1ネットワーク信号がリードデータ信号であると解析した場合には、前記第1実行手段が該リードデータ信号に対するリード準備要求信号を生成し、前記ホスト通信手段が該リード準備要求信号を前記ホストに送信し、前記変換手段が該第1ネットワーク信号を第4ホスト信号に変換し、前記ホスト通信手段が該第4ホスト信号を前記ホストに送信することを特徴とする請求項1に記載の通信プロトコル変換装置。
  5. 前記ネットワーク信号解析手段が、前記第1ネットワーク信号がライト要求信号に対する応答信号、ライト完了信号、およびリード完了信号のいずれか1つであると解析した場合には、前記変換手段が該第1ネットワーク信号を第3ホスト信号に変換し、前記ホスト通信手段が該第3ホスト信号を前記ホストに送信し、
    前記ネットワーク信号解析手段が、前記第1ネットワーク信号がN(N:2以上の整数)個のリードデータ信号であると解析した場合には、前記第1実行手段が該リードデータ信号に対するリード準備要求信号を生成し、前記ホスト通信手段が該リード準備要求信号を前記ホストに送信し、前記変換手段が該第1ネットワーク信号に含まれる前記リードデータ信号の1つを第5ホスト信号に変換し、前記ホスト通信手段が該第5ホスト信号を前記ホストに送信するこれら4つの処理をN回繰り返すことを特徴とする請求項1に記載の通信プロトコル変換装置。
  6. 前記ネットワーク信号解析手段が、前記第1ネットワーク信号がライト要求信号に対する応答信号、ライト完了信号、およびリード完了信号のいずれか1つであると解析した場合には、前記変換手段が該第1ネットワーク信号を第3ホスト信号に変換し、前記ホスト通信手段が該第3ホスト信号を前記ホストに送信し、
    前記ネットワーク信号解析手段が、前記第1ネットワーク信号がリード準備要求信号とリードデータ信号をそれぞれ1つ含んでいると解析した場合には、前記変換手段が該第1ネットワーク信号を第6ホスト信号に変換し、前記ホスト通信手段が、リード準備要求信号に対する第6ホスト信号の第1部分信号、およびリードデータ信号に対する第6ホスト信号部分の第2部分信号を該第1部分信号、該第2部分信号の順に前記ホストに送信することを特徴とする請求項1に記載の通信プロトコル変換装置。
  7. 前記ネットワーク信号解析手段が、前記第1ネットワーク信号がライト要求信号に対する応答信号、ライト完了信号、およびリード完了信号のいずれか1つであると解析した場合には、前記変換手段が該第1ネットワーク信号を第3ホスト信号に変換し、前記ホスト通信手段が該第3ホスト信号を前記ホストに送信し、
    前記ネットワーク信号解析手段が、前記第1ネットワーク信号がリード準備要求信号とリードデータ信号をそれぞれN(N:2以上の整数)個ずつ含んでいると解析した場合には、前記変換手段が該第1ネットワーク信号を第7ホスト信号に変換し、前記ホスト通信手段が、リード準備要求信号の1つに対する第7ホスト信号の第3部分信号、およびリードデータ信号の1つに対する第7ホスト信号部分の第4部分信号を該第3部分信号、該第4部分信号の順に前記ホストに送信するこれら2つの処理をN回繰り返すことを特徴とする請求項1に記載の通信プロトコル変換装置。
  8. 前記ホスト信号解析手段が、前記第1ホスト信号がライト要求信号であると解析した場合には、前記ホスト信号解析手段はライトデータの全体長を検出し、前記ホスト通信手段がライトデータ信号を受信した場合には、前記ホスト信号解析手段は、該ライトデータ信号の累積信号長をカウントし、該全体長と該累積信号長との比較を行い、ライトデータが最終データであるか否かを判断することを特徴とする請求項1に記載の通信プロトコル変換装置。
  9. 情報のライトおよびリードの少なくともいずれか1つが可能なドライブとネットワークとの間に接続される通信プロトコル変換装置であって、
    前記ネットワークと通信可能に接続される第2ネットワーク通信手段と、
    前記ネットワークを介して受信した第5ネットワーク信号がライト要求信号、リード要求信号、およびライトデータ信号、ライト要求信号を解析する第2ネットワーク信号解析手段と、
    前記ドライブと通信可能に接続されるドライブ通信手段と、
    前記ドライブから受信した第1ドライブ信号がライト要求信号に対する応答信号、ライト完了信号、リードデータ信号、およびリード完了信号、リード準備要求信号、ライトデータ信号に対する応答信号を解析するドライブ信号解析手段と、
    前記第1ドライブ信号を第6ネットワーク信号に変換したり、前記第5ネットワーク信号を第2ドライブ信号に変換する第2変換手段と、
    前記第5ネットワーク信号または前記第1ドライブ信号の解析結果に基づいて、通信プロトコル処理を実行する第2実行手段と、を具備することを特徴とする通信プロトコル変換装置。
  10. 前記ドライブ信号解析手段が、前記第1ドライブ信号がライト要求信号に対する応答信号、ライト完了信号、リードデータ信号、およびリード完了信号のいずれか1つであると解析した場合には、前記第2変換手段が該第1ドライブ信号を第7ネットワーク信号に変換し、前記2ネットワーク通信手段が該第7ネットワーク信号を前記ネットワークに送信し、
    前記ドライブ信号解析手段が、前記第1ドライブ信号がライトデータ信号に対する応答信号、およびリード準備要求信号のいずれか1つであると解析した場合には、前記第2変換手段および前記第2ネットワーク通信手段を停止することを特徴とする請求項9に記載の通信プロトコル変換装置。
  11. 前記ドライブ信号解析手段が、前記第1ドライブ信号がライト要求信号に対する応答信号、ライト完了信号、およびリード完了信号のいずれか1つであると解析した場合には、前記第2変換手段が該第1ドライブ信号を前記第8ネットワーク信号に変換し、前記2ネットワーク通信手段が該第8ネットワーク信号を前記ネットワークに送信し、
    前記ドライブ信号解析手段が、前記第1ドライブ信号がライトデータ信号に対する応答信号であると解析した場合には、前記第2変換手段および前記第2ネットワーク通信手段を停止し、
    前記ドライブ信号解析手段が、前記第1ドライブ信号がリード準備要求信号であると解析した場合には、前記ドライブ通信手段が前記第1ドライブ信号としてリードデータ信号を受信した後に、前記第2変換手段が該リード準備要求信号と該リードデータ信号とを1つの信号にまとめて第9ネットワーク信号に変換し、前記第2ネットワーク通信手段が該第9ネットワーク信号を前記ネットワークに送信することを特徴とする請求項9に記載の通信プロトコル変換装置。
  12. 前記第2ネットワーク信号解析手段が、前記第5ネットワーク信号がライト要求信号、リード要求信号、およびライトデータ信号のいずれか1つであると解析した場合には、前記第2変換手段が該第5ネットワーク信号を第3ドライブ信号に変換し、前記ドライブ通信手段が該第3ドライブ信号を前記ドライブに送信することを特徴とする請求項9に記載の通信プロトコル変換装置。
  13. 前記第2ネットワーク信号解析手段が、前記第5ネットワーク信号がライト要求信号であると解析しその後、前記ドライブ通信手段が前記ドライブからライト応答信号を受信した場合には、前記第2変換手段が該ライト応答信号を第10ネットワーク信号に変換し、前記第2ネットワーク通信手段が該第10ネットワーク信号をネットワークに送信し、
    前記第2ネットワーク信号解析手段が、前記第5ネットワーク信号がライトデータ信号であると解析しその後、前記ドライブ通信手段が前記ドライブからライト応答信号を受信した場合には、前記第2変換手段が該ライト応答信号を第10ネットワーク信号に変換することを停止し、前記第2ネットワーク通信手段への出力を停止し、
    前記第2ネットワーク信号解析手段が、前記第5ネットワーク信号がライトデータ信号であると解析しその後、前記ドライブ通信手段が前記ドライブからライト完了信号を受信した場合には、前記第2変換手段が該ライト完了信号を第11ネットワーク信号に変換し、前記第2ネットワーク通信手段が該第11ネットワーク信号をネットワークに送信することを特徴とする請求項9に記載の通信プロトコル変換装置。
  14. 前記第2ネットワーク信号解析手段が、前記第5ネットワーク信号がライト要求信号であると解析した場合には、前記第2ネットワーク信号解析手段はライトデータの全体長を検出し、さらに前記ドライブ通信手段が前記ドライブから前記第1ドライブ信号を受信した場合に、前記第2変換手段が該第1ドライブ信号を第12ネットワーク信号に変換し、前記第2ネットワーク通信手段が該第12ネットワーク信号をネットワークに送信し、
    前記第2ネットワーク信号解析手段が、前記第5ネットワーク信号がライトデータ信号であると解析した場合には、前記第2ネットワーク信号解析手段はライトデータ信号の累積信号長をカウントし、該全体長と該累積信号長との比較を行い、ライトデータが最終データであるか否かを判断し、最終データであると判断されさらに前記ドライブ通信手段が前記ドライブから第1ドライブ信号を受信した場合に、前記第2変換手段が第1ドライブ信号を第13ネットワーク信号に変換し、前記第2ネットワーク通信手段が該第13ネットワーク信号をネットワークに送信し、
    前記第2ネットワーク信号解析手段が、前記第5ネットワーク信号がライトデータ信号であると解析した場合には、前記第2ネットワーク信号解析手段はライトデータ信号の累積信号長をカウントし、該全体長と該累積信号長との比較を行い、ライトデータが最終データであるか否かを判断し、最終データでないと判断されさらに前記ドライブ通信手段が前記ドライブから第1ドライブ信号を受信した場合に、前記第2変換手段が第1ドライブ信号を第14ネットワーク信号に変換することを停止し、さらに前記第2ネットワーク通信手段への出力も停止することを特徴とする請求項9に記載の通信プロトコル変換装置。
  15. 情報のライトおよびリードの少なくともいずれか1つが可能なドライブとネットワークとの間に接続される通信プロトコル変換装置で使用される通信プロトコル変換方法であって、
    前記ネットワークと通信可能に接続し、
    前記ネットワークを介して受信した第5ネットワーク信号がライト要求信号、リード要求信号、およびライトデータ信号、ライト要求信号を解析し、
    前記ドライブと通信可能に接続し、
    前記ドライブから受信した第1ドライブ信号がライト要求信号に対する応答信号、ライト完了信号、リードデータ信号、およびリード完了信号、リード準備要求信号、ライトデータ信号に対する応答信号を解析し、
    前記第1ドライブ信号を第6ネットワーク信号に変換したり、前記第5ネットワーク信号を第2ドライブ信号に変換し、
    前記第5ネットワーク信号または前記第1ドライブ信号の解析結果に基づいて、処理を実行することを特徴とする通信プロトコル変換方法。
  16. 情報のライトおよびリードの少なくともいずれか1つが可能なドライブとネットワークとの間に接続される通信プロトコル変換装置で使用する通信プロトコル変換プログラムであって、
    コンピュータを、
    前記ネットワークと通信可能に接続される第2ネットワーク通信手段と、
    前記ネットワークを介して受信した第5ネットワーク信号がライト要求信号、リード要求信号、およびライトデータ信号、ライト要求信号を解析する第2ネットワーク信号解析手段と、
    前記ドライブと通信可能に接続されるドライブ通信手段と、
    前記ドライブから受信した第1ドライブ信号がライト要求信号に対する応答信号、ライト完了信号、リードデータ信号、およびリード完了信号、リード準備要求信号、ライトデータ信号に対する応答信号を解析するドライブ信号解析手段と、
    前記第1ドライブ信号を第6ネットワーク信号に変換したり、前記第5ネットワーク信号を第2ドライブ信号に変換する第2変換手段と、
    前記第5ネットワーク信号または前記第1ドライブ信号の解析結果に基づいて、処理を実行する第2実行手段として機能させるための通信プロトコル変換プログラム。
JP2008287929A 2008-11-10 2008-11-10 通信プロトコル変換装置、方法およびプログラム Pending JP2010114838A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008287929A JP2010114838A (ja) 2008-11-10 2008-11-10 通信プロトコル変換装置、方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008287929A JP2010114838A (ja) 2008-11-10 2008-11-10 通信プロトコル変換装置、方法およびプログラム

Publications (1)

Publication Number Publication Date
JP2010114838A true JP2010114838A (ja) 2010-05-20

Family

ID=42303017

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008287929A Pending JP2010114838A (ja) 2008-11-10 2008-11-10 通信プロトコル変換装置、方法およびプログラム

Country Status (1)

Country Link
JP (1) JP2010114838A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012048707A (ja) * 2010-08-25 2012-03-08 Lsi Corp シリアル・アドバンスド・テクノロジー・アタッチメントの性能を改善するための方法および装置
CN109839891A (zh) * 2017-11-27 2019-06-04 阿自倍尔株式会社 通信控制装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05336194A (ja) * 1992-06-04 1993-12-17 Nec Corp データ伝送方式
JPH11112524A (ja) * 1997-08-07 1999-04-23 Internatl Business Mach Corp <Ibm> 接続確立方法、通信方法、状態変化伝達方法、状態変化実行方法、無線装置、無線デバイス、及びコンピュータ
JP2004152156A (ja) * 2002-10-31 2004-05-27 Matsushita Electric Ind Co Ltd インタフェース変換装置
WO2006080330A1 (ja) * 2005-01-28 2006-08-03 Sharp Kabushiki Kaisha 通信装置、通信システム、通信方法、通信プログラム、通信回路
JP2006311304A (ja) * 2005-04-28 2006-11-09 Yusuke Matsushima 携帯通信装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05336194A (ja) * 1992-06-04 1993-12-17 Nec Corp データ伝送方式
JPH11112524A (ja) * 1997-08-07 1999-04-23 Internatl Business Mach Corp <Ibm> 接続確立方法、通信方法、状態変化伝達方法、状態変化実行方法、無線装置、無線デバイス、及びコンピュータ
JP2004152156A (ja) * 2002-10-31 2004-05-27 Matsushita Electric Ind Co Ltd インタフェース変換装置
WO2006080330A1 (ja) * 2005-01-28 2006-08-03 Sharp Kabushiki Kaisha 通信装置、通信システム、通信方法、通信プログラム、通信回路
JP2006311304A (ja) * 2005-04-28 2006-11-09 Yusuke Matsushima 携帯通信装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012048707A (ja) * 2010-08-25 2012-03-08 Lsi Corp シリアル・アドバンスド・テクノロジー・アタッチメントの性能を改善するための方法および装置
CN109839891A (zh) * 2017-11-27 2019-06-04 阿自倍尔株式会社 通信控制装置
CN109839891B (zh) * 2017-11-27 2021-08-17 阿自倍尔株式会社 通信控制装置

Similar Documents

Publication Publication Date Title
KR101092112B1 (ko) 향상된 무선 usb 프로토콜 및 허브
JP4600518B2 (ja) 情報処理装置、情報処理システム、および情報処理方法、並びにコンピュータ・プログラム
WO2017084400A1 (zh) 一种NVMe网络化存储的实现方法、终端、服务器及***
CN1237455C (zh) 数据传输控制装置、电子设备、及数据传输控制方法
JP2013533504A (ja) 選択的出力制御によってオーディオデータを復号するための方法とシステム
US7921183B2 (en) Communication system, storage device, and control device for accessing external file data on a page unit or sector unit basis
CN102804760A (zh) 具有多媒体接口连接器的存储装置
KR20020087859A (ko) 데이터 전송 제어 장치, 전자 기기 및 데이터 전송 제어방법
US9591105B2 (en) Communication apparatus, communication system, communication method, and program for improved data transfer efficiency
US7865803B2 (en) Method for processing noise interference in data accessing device with serial advanced technology attachment (SATA) interface
JP2010114838A (ja) 通信プロトコル変換装置、方法およびプログラム
US20110153695A1 (en) Method for making usb storage of file system and remote connection, and system thereof
JP3918824B2 (ja) 画像処理装置
WO2023160404A1 (zh) 云桌面打印处理方法和***
JP2008198126A (ja) データ通信システム、データ通信プログラム、データ受信装置、データ受信プログラム、及び、データ受信方法
CN104113933A (zh) 一种信息传输方法、装置和移动终端
JP2009182458A (ja) 通信装置、通信システム、通信方法及びプログラム
JP2014048810A (ja) ホストシステム、ストレージデバイス、および通信方法
US20130060830A1 (en) Remote access system, electronic apparatus and method of processing remote access
US7624332B2 (en) Method for processing noise interference in data accessing device with serial advanced technology attachment interface
US20150180777A1 (en) Data processing apparatus and method
US20130179628A1 (en) Semiconductor memory device
KR101502147B1 (ko) 네트워크 상에서 usb 호스트와 usb 디바이스 간의 통신 방법, 장치 및 기록매체
JP6222724B2 (ja) Usbデバイス、usbシステム、データ転送方法、及びプログラム
TWI452471B (zh) 用於通用序列匯流排裝置的全雙工控制器與其方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110323

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111220

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120508