(57)【要約】【課題】圧縮や暗号処理などを行う回路やその出力段のバッファ等の資源を共有する際に資源開放を始めるまでの時間を短縮し、資源開放に伴うオーバーヘッドを削減するデータ転送装置を提供すること。【解決手段】データ転送手段１０１、複数の転送要求手段１０２〜１０４、転送要因確認手段１０５、調停手段１０６、コマンド生成手段１０７、開放指示手段１０８を備え、調停手段１０６がデータ転送手段１０１に対する使用要求を調停し、コマンド生成手段１０７が調停結果をもとにコマンドを生成しデータ転送手段１０１に発行するが、データ転送手段１０１を使用する転送要求手段が次の調停で切替ることを、調停手段１０６が調停結果を出す以前に、調停手段１０６と調停ポリシーを共有する開放指示手段１０８が判断し、先立ってデータ転送手段１０１の資源開放通知を出力する。【選択図】図１
2008065419.tif 000002
【特許請求の範囲】
【請求項１】
データ転送を行うためのデータ転送手段と、
前記データ転送手段を使用したデータ転送を要求する複数の転送要求手段と、
前記複数の転送要求手段からの転送要求の転送要因が成立しているかを確認する転送要因確認手段と、
前記転送要因が成立した転送要求に対して調停を行う調停手段と、
前記調停手段の調停結果を受けて、転送コマンドを生成し前記データ転送手段に発行するコマンド生成手段と、
前記調停手段との間で共有する調停ポリシーと前記転送要因確認手段から受け取る転送要求とから、前記調停手段が前記データ転送手段を使用している転送要求とは異なる転送要求を調停するか否かを判断し、異なる転送要求を調停すると判断した場合前記データ転送手段の開放を指示する開放指示手段とを有することを特徴とするデータ転送装置。
【請求項２】
前記調停ポリシーとは調停が行われるたびに変化する転送要求の調停優先順位のことであり、
前記開放指示手段は、前記データ転送手段を使用している転送要求よりも前記転送要因確認手段から受け取る転送要求の方が高い優先順位のときに前記データ転送手段の開放を指示することを特徴とする請求項１記載のデータ転送装置。
【請求項３】
前記開放指示手段は、前記コマンド生成手段が転送コマンドを発行する前に、前記データ転送手段の開放を指示することを特徴とする請求項１または請求項２に記載のデータ転送装置。
【請求項４】
データ転送を行うための第１のデータ転送手段と、
前記第１のデータ転送手段の転送先を転送元にもつデータ転送を行うための第２のデータ転送手段と、
前記第１のデータ転送手段を使用した転送を要求する複数の第１の転送要求手段と、
前記第２のデータ転送手段を使用した転送を要求する複数の第２の転送要求手段と、
前記複数の第１の転送要求手段と前記複数の第２の転送要求手段とからの転送要求の転送要因が成立しているかを確認する転送要因確認手段と、
前記転送要因が成立している転送要求に対して調停を行う調停手段と、
前記調停手段の調停結果に応じて前記各転送手段に転送コマンドを生成し発行するコマンド生成手段と、
前記調停手段との間で共有する調停ポリシーと前記転送要因確認手段から受ける前記第１の転送要求とから、前記調停手段が前記第２のデータ転送手段を使用している前記第２の転送要求とは異なる第２の転送要求を調停するか否かを判断し、異なる第２の転送要求を調停すると判断した場合前記第２のデータ転送手段の開放を指示する開放指示手段とを有することを特徴とするデータ転送装置。
【請求項５】
前記転送要因確認手段において、
前記複数の第１の転送要求手段の１つである転送要求手段が、前記第１のデータ転送手段を使用した転送を要求し調停され使用を許可されることが、前記複数の第２の転送要求手段の１つである転送要求手段の転送要求の転送要因成立の条件の一つであることを特徴とする請求項４記載のデータ転送装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機システムにおけるデータ転送装置に関するものである。
【背景技術】
【０００２】
データ転送装置を用いて、ハードディスクドライブやＤＶＤドライブなどの外部メディア機器や主記憶などとの間でデータ転送を行う場合、輻輳する転送を時分割に行なうため、転送毎にチャネル属性を付与する。ここで言うところのチャネルとは、ソフト側からデータ転送装置に設定される転送制御情報を管理する属性のことであり、そのチャネル属性により転送の連続性が保証される。このとき、データ転送装置内外で転送経路などが競合する場合、それら外部メディア機器や主記憶の入出力段に位置するデータ転送装置内のバッファやインタフェース回路などの資源を、チャネルごとに持つのでは回路面積の著しい増大を招いてしまう。そのため、資源を複数チャネルで共有する構成が一般にとられる。それらの資源は、転送元ごとに用意する、転送先ごとに用意する、転送元も転送先も関係なくある一定数用意するなどの方法があり、それらを複数のチャネルで共有するのが一般的である。
【０００３】
圧縮や暗号、復号といった特定の処理を行う回路が転送元や転送先として存在する場合、一般にこれらの出力段にあたるデータ転送装置内のバッファ等の資源には半端なデータが残る。例えば、回路が圧縮や解凍を行うようなものである場合は、その処理の性質から出力量が一意に定まらない。また、入力量に対する出力量が予め判っていることが多い暗号、復号のような処理を行う回路でも、処理単位に満たないサイズのデータが暗号、復号の回路内部に残ったりする場合は、回路からの出力量が変動する。また、転送先が主記憶などでありバースト転送が行われるような場合は、バースト転送サイズに満たないようなサイズのデータは転送経路にあるバッファ内に残ることがある。
【０００４】
このように複数チャネルで共有する資源に半端なデータが残る場合、その資源を使用して転送を行うチャネルを切替えるには、半端な残留データを転送先へ送り切る、またはデータを消去して消去した分の転送サイズを元に戻すなどの処理をして、一旦、資源を開放する必要がある。しかし、その開放が頻繁に発生するとシステム全体へ大きな負荷を与えることになる。チャネルを切替えなくて済む場合は、資源内の半端な残留データに次に入って来た同じチャネルのデータを繋げて転送を続ければ良いため、この余分な負荷は発生しない。従来のデータ転送装置では、次のコマンド発行により資源を使用するチャネルが実際に切替わるかどうかを確認してから資源の開放を行うことで必要の無い資源開放によるシステム全体への負荷を削減していた。このように、次のコマンドの発行を待ってからチャネルが切替ることを確認した後、資源の開放を決定する従来の技術としては、例えば特許文献１に記載されたようなデータ転送装置がある。
【特許文献１】特開平６−６８０２１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来のようなハードディスクドライブやＤＶＤドライブなどの外部メディア機器や主記憶などの間でデータ転送を行うようなデータ転送装置では、一般的にデータ転送路にバッファ領域を設けるなどして比較的大きなサイズのデータを一括して転送する構成がとられる。そのため、データ転送装置内部において細かい時間間隔で小さなサイズのコマンド発行を繰り返す必要はなく、アドレスやサイズ更新などのコマンド生成の為の演算器等の資源をできる限り省く構成がとられる。そのため、その構成の仕様上、転送の要求が起こってから調停を経て、コマンドが生成、発行されるまでには時間を要する。また、その時々により、コマンド発行の為の資源を共有するチャネル間でコマンド発行の競合が生じ、遅れが倍増する。
【０００６】
故に、このような外部メディア機器とのデータ送を行う転送装置において転送経路の使用権を切替える際、従来技術のように常に次のコマンドの発行を待ってから転送経路の資源開放の判断を行っていては、調停やコマンドの発行を待つことによる遅れが蓄積し、システム性能の低下を招くという課題を有する。
【０００７】
本発明は、前記従来の課題を解決するもので、転送のための資源を複数チャネルで共有する際、チャネル切替えに伴い生じるオーバーヘッドを、システム性能の低下を招くことなく削減できるデータ転送装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明のデータ転送装置は、データ転送を行うためのデータ転送手段と、前記データ転送手段を使用したデータ転送を要求する複数の転送要求手段と、前記複数の転送要求手段からの転送要求の転送要因が成立しているかを確認する転送要因確認手段と、前記転送要因が成立した転送要求に対して調停を行う調停手段と、前記調停手段の調停結果を受けて、転送コマンドを生成し前記データ転送手段に発行するコマンド生成手段と、前記調停手段との間で共有する調停ポリシーと前記転送要因確認手段から受け取る転送要求とから、前記調停手段が前記データ転送手段を使用している転送要求とは異なる転送要求を調停するか否かを判断し、異なる転送要求を調停すると判断した場合前記データ転送手段の開放を指示する開放指示手段とを有する。
【発明の効果】
【０００９】
本発明のデータ転送装置によれば、データ転送を行うための資源を複数チャネルで時分割に共有する際、必要の無い資源開放とそれに伴うオーバーヘッドを回避するために発生していた遅延時間の累積を無くし、システム性能の低下を防ぐことができる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の実施の形態について図面を参照しながら説明する。
【００１１】
（実施の形態１）
図１は本発明に係るデータ転送装置の実施の形態１の構成を示すブロック図である。
【００１２】
データ転送装置１１１は、図１に示すようにデータ転送手段１０１、第１の転送要求手段１０２、第２の転送要求手段１０３、第３の転送要求手段１０４、転送要因確認手段１０５、調停手段１０６、コマンド生成手段１０７、開放指示手段１０８を備え、転送元１０９から転送先１１０へデータを転送する。
【００１３】
データ転送手段１０１は、インタフェース回路やバッファ、アライナなどのデータ転送に必要な各種の資源を有する。データ転送手段１０１は、転送元１０９、転送先１１０を識別する情報や、転送サイズ等のデータ転送を制御するのに必要な情報を、コマンド生成手段１０７からコマンドとして受け取り、そのコマンドに従って転送元１０９から転送先１１０へデータを転送する。
【００１４】
ここで、コマンドとは、データ転送装置内において、転送を行うために転送を行う各回路に対して通知される制御情報のことである。また、データ転送手段１０１は、コマンド受付可能通知を転送要因確認手段１０５と開放指示手段に１０８に出し、開放指示手段から開放指示を受け取る。
【００１５】
第１の転送要求手段１０２、第２の転送要求手段１０３、第３の転送要求手段１０４は、内部にレジスタ領域を持ち、マイコン等のソフト側から設定される各種の情報を保持する。これらの情報は、転送元ＩＤや転送先ＩＤ、転送元アドレスや転送先アドレス、転送サイズ、論理チャネルや物理チャネル、終了割り込み要求等の一連の転送を制御するための情報であり、転送情報と呼ぶ。これら転送要求手段はソフト側からの設定に基づいて転送要求と転送情報とを転送要因確認手段１０５に出力し、データ転送手段１０１を使用してデータ転送を行うことを要求する。コマンド生成手段１０７では、転送情報をもとにデータ転送手段１０１へのコマンドが生成される。
【００１６】
また、転送情報のうち、アドレスやサイズ情報はコマンド生成時にコマンド生成手段１０７により更新され、各転送要求手段に戻される。転送要求手段は更新された転送情報をもとに、転送要求を再び出力し、転送サイズがゼロになるまで繰り返す。
【００１７】
転送要因確認手段１０５は、第１の転送要求手段１０２、第２の転送要求手段１０３、第３の転送要求手段１０４からの転送要求と転送情報とを受けとり、それぞれの転送要求に対する転送要因が成立しているかを確認する。転送要因とは、例えば、データ転送手段１０１がコマンド受付可能な状態にあるか、転送元１０９、転送先１１０がデータ転送可能な状態にあるかといったことであり、何を転送要因の成立とするかは実装に依存する。
【００１８】
ここで、データ転送手段１０１がコマンド受付可能な状態にあるかは、データ転送手段１０１から出力されるコマンド受付可能通知により通知される。また、転送元１０９、転送先１１０がデータ転送可能な状態にあるかどうかは、転送元１０９、転送先１１０から出力される転送可能通知により通知される。
【００１９】
また、転送要因確認手段１０５は、転送要因の成立した転送要求手段の転送要求と転送情報とを調停手段１０６に出力し、転送要因の成立した転送要求手段の転送要求を開放指示手段１０８に出力する。
【００２０】
調停手段１０６は、転送要因が成立した転送要求に対して調停し、調停により選択した転送要求と転送情報とをコマンド生成手段１０７に出力する。また、調停手段１０６は、転送手段１０１を使用した転送要求に関する調停ポリシーと調停結果とを開放手段１０８と共有している。ここで言う調停ポリシーとは、調停が行われるたびに変化する転送要求の調停優先順位のことである。
【００２１】
コマンド生成手段１０７は、調停手段１０６から転送要求と転送情報とを受けると、その転送情報を基にコマンドを生成し、データ転送手段１０１に出力する。コマンド生成手段１０７は転送情報の転送サイズから一定のサイズを切り取る形でコマンドを生成する。即ち、転送サイズがある一定サイズ以上ある場合は、一定サイズをコマンドとして出力し、一定サイズより小さい場合は転送サイズを出力する。また、コマンドには転送サイズ以外にも転送元、転送先を特定する情報など転送を制御するために必要な情報が含まれる。コマンド生成手段１０７は転送サイズから今回のコマンド発行により転送するデータサイズを減算したり、転送元、転送先アドレスに転送するデータサイズを加算したりするなどして転送情報を更新し、転送要求手段に戻す。
【００２２】
開放指示手段１０８は、データ転送手段１０１を使用した転送要求に関する調停ポリシーと調停結果とを調停手段１０６と共有する。また、開放指示手段１０８は、転送要因確認手段１０５から転送要因が成立した転送要求を受ける。また、開放指示手段１０８はデータ転送手段１０１からコマンド受付可能通知を受け、データ転送手段１０１を使用する転送要求手段が次のコマンド発行で切替ることを判断できた時点で開放指示を出力する。
【００２３】
転送元１０９は、外部メディア機器や主記憶等であり、複数であっても構わない。同じく、転送先１１０も外部メディア機器や主記憶等であり、複数であっても構わない。転送元１０９は転送するデータが用意できたかどうか、転送先１１０は転送されるデータを受け取る用意ができたかどうかといった情報を転送可能通知としてデータ転送装置１１１へ出力する。
【００２４】
図２は、コマンドが発行されてから、次のコマンドが発行されるまでのデータ転送手段１０１の動作のフローを示す図である。データ転送手段１０１は、コマンド生成手段１０７からコマンドを受け取るとコマンド受付可能通知をネゲートしデータ転送を開始する（ステップ２０１）。データ転送手段１０１は、転送元１０９から読み出した転送データを、内部のバッファに一定量溜めてから、転送先１１０に転送することを繰り返す。このとき、前回のコマンドの端数のデータが内部バッファに残っていれば、新たに読み出したデータをその端数のデータに繋げてデータ転送を行う。コマンドで指定された転送サイズを転送元１０９から全て読み出した時、コマンド受付可能通知をアサートし（ステップ２０２、２０３、２０４）、開放指示手段１０８からの開放指示をチェックする（ステップ２０５、２０６）。開放指示がアサートされていれば内部バッファに残っている一定量に満たないデータを転送先に送り切ることによるバッファなどの資源の解放を開始し、次のコマンドが発行されるのを待ち終了する（ステップ２０９、２１０、２１１）。開放指示手段１０８からの開放指示がアサートされていなければ、開放指示をチェックしながら次のコマンドの発行を待ち終了する（ステップ２０７、２０８）。このとき、内部に残ったデータの処理としては、このように転送先に送り切ることに限定しておらず、例えば、残ったデータを消去し、その消去したサイズ分、転送要求手段の転送サイズを元に戻すような処理を行ってもよい。また、当然であるが、内部にデータが残っていない場合はこれらの処理は行われない。
【００２５】
図３は本発明を特徴付ける開放指示手段１０８の動作のフローを示す図である。開放指示手段１０８は、コマンドが発行された時、データ転送手段１０１が出力するコマンド受付可能通知がネゲートされるのを待つ（ステップ３０１、ステップ３０２）。次に、開放指示手段１０８は、データ転送手段１０１の使用を要求し調停された転送要求をチェックし、転送要求手段の最後の転送要求になる場合は、開放指示をアサートする（ステップ３０３、３０４）。これは、今回の転送で転送サイズ分の転送を終えるため、データ転送手段内に端数のデータを残しておいても次に繋がるデータが入ってくることは無く転送先に送り切る必要があるからである。
【００２６】
最後の転送にならない場合、開放指示手段１０８は、データ転送手段１０１の使用を要求し転送要因の成立した転送要求と、転送要求に対する調停ポリシーとをチェックし（ステップ３０５）、現在データ転送手段１０１を使用して転送を行っている転送要求手段よりも高優先の転送要求手段からの転送要求の転送要因が成立している場合は開放指示をアサートする。高優先の転送要求がない場合は、高優先の転送要求の転送要因が成立するまで転送要求のチェックを繰り返す（ステップ３０６）。開放指示がアサートされた状態で、次の調停結果が出た場合は開放指示をネゲートして終了する（ステップ３０８、３１０、３１１）。開放指示がネゲートされた状態で、次の調停が行なわれ、選ばれた転送要求が切替った場合は開放通知をパルス出力して終了し、切替らなかった場合はそのまま終了する（ステップ３０９、３１２、３１３）。
【００２７】
上記のような構成において、例えば、第１の転送要求手段１０２からの転送要求が調停されており、その時点で第３の転送要求手段１０４の転送要求の優先度が一番高く、次に第２の転送要求手段１０３の転送要求の優先度が高く、第１の転送要求手段１０２の転送要求の優先度が一番低くなっているとする。第１の転送要求手段１０２がデータ転送手段１０１を使用しデータ転送を行っている間に、第２の転送要求手段１０３からの転送要求と第３の転送要求手段１０４からの転送要求が時間差をおいて順に調停回路に入った場合、次の調停で一番高優先の第３の転送要求手段の転送要求が調停されることになるが、その調停結果を待たずに、第２の転送要求手段１０３からの転送要求手段が入った時点で次に調停されるのが第１の転送要求手段１０２からの転送要求でないことを理由にデータ転送手段１０１の開放を指示する。
【００２８】
このように、かかる構成によれば、データ転送手段１０１は、調停、コマンド発行を経て実際にチャネルが切替るのを待たずに資源開放を行うべきかを判断でき、転送元からコマンド分のサイズを読み出し終えた以降において、資源開放が必要な場合は、資源開放が必要になった段階で資源開放を始めることができ、他方、資源開放が必要でない場合は内部に端数のデータを残したままで、次の同じチャネルのコマンド発行を待つことにより無駄な資源開放を回避することが可能になる。
【００２９】
また、この例においては、調停手段１０６は一つのデータ転送手段を使用する転送要求のみを調停しているが、複数のデータ転送手段を使用する転送要求をも同時に調停する構成をとることも考えられる。また、コマンド生成手段も一つのデータ転送手段へのコマンド生成、発行のみを行っているが、複数のデータ転送手段へのコマンドを生成、発行する構成をとることも考えられる。このような構成では、データ転送手段１０１以外のデータ転送手段を使用する転送要求の調停とコマンド生成に時間がかかり、データ転送手段１０１を使用する転送要求の調停、およびコマンド生成、発行が大幅に遅れる可能性がある。このような構成の場合、データ転送手段１０１へのコマンド発行間隔が長くなるため、開放指示手段によりデータ転送手段１０１の資源の解放を早期に始められることの効果はより大きいと言える。
【００３０】
なお、転送サイズが不定であり転送要求手段からの転送情報にサイズの属性が無い場合もある。そのような場合は不定長の転送を行うという旨の情報が転送情報として調停手段１０６に出力される。コマンド生成手段１０７からも不定長転送のコマンドがデータ転送手段１０１に対して出力される。このようにサイズの属性がない場合、各転送要求手段は転送要求が中止されるまで転送要求を出すことを繰り返す。
【００３１】
また、データ転送手段１０１は不定長サイズの転送を行っている際に転送元からのデータ入力がアイドル状態になったりした時に、転送先への転送単位に満たないサイズのデータがバッファ等の内部の資源に残っていても、コマンド受付可能通知をネゲートしたまま転送元から次の転送データが入ってくるのを待つ。次のデータが入って来た場合、残ったデータに次の転送のデータを繋げて転送先へ転送し続ける。このように転送サイズが不定である場合にデータ転送手段１０１を使用する転送要求手段を切替えるには、データ転送手段１０１に対して転送中止の指示を別途出力するなどする。
【００３２】
（実施の形態２）
図４は、本発明に係るデータ転送装置であり、転送先が転送元を兼ねる場合の実施の形態２の構成を示すブロック図である。ここで、実施の形態１と同じ構成を示すものには実施の形態１と同じ符号を付し、その説明は省略する。
【００３３】
データ転送装置４０７は、開放の必要がないデータ転送手段４０１、データ転送手段１０１、第１の転送要求手段１０２、第２の転送要求手段１０３、第３の転送要求手段４０２、第４の転送要求手段４０３、転送要因確認手段４０４、調停手段１０６、コマンド生成手段１０７、開放指示手段４０５を有し、転送元１０９から転送先兼転送元４０６へデータを転送し、同時に、転送先兼転送元４０６から転送先１１０へデータを転送する。
【００３４】
開放の必要がないデータ転送手段４０１は、転送元１０９と転送先兼転送元４０６とに接続されており、転送を行うためのインタフェース回路やバッファなどの資源を有し、コマンド生成手段１０７から受けるコマンドに従ってデータを転送する。開放の必要がないデータ転送手段４０１は、コマンド受付可能通知を転送要因確認手段４０４に出力する。
【００３５】
第３の転送要求手段４０２と第４の転送要求手段４０３は、転送要求を転送要因確認手段４０４に出力し、開放の必要がないデータ転送手段４０１を使用して転送元１０９から転送先兼転送元４０６へデータの転送を行うことを要求する。同時に転送元ＩＤ、転送元アドレス、転送先ＩＤ、転送先アドレスや転送サイズなどの転送情報を転送要因確認手段４０４に出力する。また、コマンド生成手段１０７により更新された転送情報を受けとり、更新された転送情報をもとに、転送要求を再び出力し、転送サイズがゼロになるまで繰り返す。
【００３６】
転送要因確認手段４０４は、第３の転送要求手段４０２、第４の転送要求手段４０３、第１の転送要求手段１０２、第２の転送要求手段１０３からの転送要求と転送情報とを受け、それぞれの転送要求に対する転送要因が成立しているかを確認する。また、転送要因確認手段４０４は開放の必要がないデータ転送手段４０１およびデータ転送手段１０１がコマンド受付可能な状態にあるかを、開放の必要がないデータ転送手段４０１およびデータ転送手段１０１から出力されるコマンド受付可能通知により通知される。また、転送元１０９、転送先１１０、転送先兼転送元４０６がデータ転送可能な状態にあるかどうかを、転送元１０９、転送先１１０、転送先兼転送元４０６から出力される転送可能通知により通知される。
【００３７】
転送要因確認手段４０４は、転送要因の成立した転送要求手段の転送要求と転送情報を調停手段１０６と開放指示手段４０５とに出力する。また、転送要因確認手段４０４は、データ転送手段１０１を使用したデータ転送を要求する第１の転送要求手段１０２、第２の転送要求手段１０３からの転送要求の転送要因成立条件を開放指示手段４０５に出力する。
【００３８】
開放指示手段４０５は、データ転送手段１０１からコマンド受付可能通知を受け、データ転送手段１０１に開放指示を出力する。また、開放指示手段４０５は、開放の必要がないデータ転送手段４０１の使用を要求する転送要求に対する調停ポリシーと、開放の必要がないデータ転送手段４０１およびデータ転送手段１０１の使用を要求する転送要求に対する調停結果を受ける。また、開放指示手段４０５は、第１の転送要求手段１０２、第２の転送要求手段１０３の転送要求の転送要因の成立条件と、開放の必要がないデータ転送要求手段４０１の使用を要求する転送要求のうち転送要因の成立した転送要求と転送情報を受ける。開放指示手段４０５の動作のフローを図５に示す。
【００３９】
図５において、図３のステップと同様の動作をするステップには同じ符号を付し、図３のステップと異なる動作を示すステップについて以下説明する。
【００４０】
開放指示手段４０５は、開放の必要がないデータ転送手段４０１の使用を要求する転送要求のうち転送要因の成立した転送要求と転送情報、それらの転送要求に対する調停ポリシーをチェックする（ステップ５０１）。同時に、開放の必要がないデータ転送手段４０１の使用を要求する転送要求手段の転送要求が調停され選択されることが、データ転送手段１０１の使用を要求する転送要求のうち、どの転送要求の転送要因成立の条件になっているかを確認する（ステップ５０２）。例えば、第３の転送要求手段４０２からの転送要求が調停手段１０６で調停され選択されることが、第１の転送要求手段１０２の転送要求に対する転送要因の成立の条件の一つであり、第４の転送要求手段４０３からの転送要求が調停手段１０６で調停され選択されることが、第２の転送要求手段１０３の転送要求に対する転送要因の成立の条件の一つであるといったことを確認する。
【００４１】
このとき、第３の転送要求手段４０２からの転送要求よりも高い優先度である第４の転送要求手段４０３からの転送要求の転送要因が成立しているとすると、開放指示手段４０５は、第２の転送要求手段１０３の転送要求の転送要因が、第１の転送要求手段１０２からの転送要求の転送要因よりも先に成立すると判断する。このようにして、今回データ転送手段１０１を使用してデータを転送している転送要求手段の転送要求よりも高優先の転送要求手段の転送要求の転送要因が成立し、そのコマンドが次回に発行されると判断できた場合、開放指示をアサートするステップ３０７に移る（ステップ５０３）。高優先の転送要求手段の転送要求の転送要因が成立すると判断できない場合は、開放の必要がないデータ転送手段４０１の使用を要求する転送要求手段からの転送要求の調停結果をチェックし、調停結果が出ていない場合は、ステップ５０１に移り（ステップ５０５）、調停結果が出た場合は、その調停結果が、データ転送手段１０１の使用を要求する転送要求のうち、どの転送要求の転送要因成立の条件になっているかを確認する（ステップ５０６）。
【００４２】
その結果、今回データ転送手段１０１を使用してデータを転送している転送要求手段の転送要求よりも高優先の転送要求手段の転送要求の転送要因が成立し、その転送要因のコマンドが次回に発行されると判断できた場合、開放指示をアサートするステップ３０７に移り、今回データ転送手段１０１を使用してデータを転送している転送要求手段の転送要求の転送要因が成立し、その転送要因のコマンドが次回にも発行されると判断できた場合はそのまま終了する（ステップ５０７）。
【００４３】
転送先兼転送元４０６は、開放の必要がないデータ転送手段４０１の転送先であり、開放の必要がないデータ転送手段４０１からデータを転送される。また、転送先兼転送元４０６は、データ転送手段１０１の転送元であり、データ転送手段１０１にデータを転送する。また、転送先兼転送元４０６は、転送可能通知により、データ転送が可能かどうかを転送要因確認手段４０４に通知する。
【００４４】
このような構成において想定しているデータ転送装置は、暗号処理回路や圧縮処理回路などへの入力と出力を同時並行的に行うデータ転送装置である。例えば、第３の転送要求手段４０２が開放の必要がないデータ転送手段４０１を使用したデータ転送を要求し調停され、使用を許可されることが、データ転送手段１０１を使用した転送を要求する第１の転送要求手段１０２からの転送要求の転送要因成立の条件の１つであり、第４の転送要求手段４０３が開放の必要がないデータ転送手段４０１を使用したデータ転送を要求し調停され、使用を許可されることが、データ転送手段１０１を使用した転送を要求する第２の転送要求手段１０３からの転送要求の転送要因成立の条件の１つであるようなデータ転送装置である。第３の転送要求手段４０２の転送要求により開放の必要がないデータ転送手段４０１を使用して、暗号や圧縮などを行なう回路に該当する転送先兼転送元４０６へデータを転送し、データに対して暗号や圧縮などの処理を施し、同時に第１の転送要求手段１０２の転送要求によりデータ転送手段１０１を使用して転送先兼転送元４０６から処理されたデータを読み出すようなことを想定している。
【００４５】
例えば、第４の転送要求手段４０３と第２の転送要求手段１０３からの転送要求が入っており、開放の必要がないデータ転送手段４０１が第４の転送要求手段４０３からの転送要求のデータ転送を行っており、データ転送手段１０１が第２の転送要求手段１０３からの転送要求のデータ転送を行っているとする。そして、第４の転送要求手段４０３の転送要求は第３の転送要求手段４０２の転送要求よりも優先度が低くなっているとする。データ転送手段１０１が第４の転送要求手段からの転送要求のデータ転送を行っている間に、第３の転送要求手段４０２からの転送要求の転送要因が成立した場合、第２の転送要求手段１０３の転送要求ではなく第１の転送要求手段１０２の転送要求の転送要因が成立し、データ転送手段１０１を次回に使用することを開放指示手段４０５が判断し、データ転送手段１０１に開放指示を出力する。
【００４６】
このように、かかる構成によれば、データ転送手段１０１は、調停、コマンド発行を経て実際にチャネルが切替るのを待たずに資源開放を行うべきかを判断でき、転送元からコマンド分のサイズを読み出し終えた以降において、資源開放が必要な場合は、資源開放が必要になった段階で即座に資源開放を始めることができ、他方、資源開放が必要でない場合は内部に端数のデータを残したままで、次の同じ転送要求手段からの転送要求のコマンド発行を待つことにより無駄な資源開放を回避することが可能になる。また、データ転送手段１０１の使用を要求する転送要求に対する調停よりも先行する開放の必要がないデータ転送手段４０１の使用を要求する転送要求に対する調停以前に、データ転送手段１０１の資源開放を判断するため、実施の形態１の構成のデータ転送装置よりもデータ転送手段１０１の資源開放を早く始める事が可能になる。
【００４７】
（実施の形態３）
図６は、本発明に係るデータ転送装置であり、転送情報にサイズの属性がない場合の実施の形態３の構成を示すブロック図である。実施の形態２と同じ構成を示すものには実施の形態２と同じ符号を付し、その説明は省略する。データ転送手段６０２の使用を要求する第１の転送要求手段１０２、第２の転送要求手段１０３からの転送情報にサイズの属性がなく、データ転送手段６０２が転送先兼転送元６０３から転送先１１０へ不定長のデータを転送することが実施の形態２のデータ転送装置とは異なる。
【００４８】
また、開放の必要がないデータ転送手段６０１が、転送先兼転送元６０３へコマンド分のデータ転送を終了したことを通知する書き込み終了通知を出力することと、転送先兼転送元６０３から出力される読み出し終了通知により転送先兼転送元６０３からのデータの読み出しが終了したことをデータ転送手段６０２が認識することが実施の形態２におけるデータ転送装置とは異なる。
【００４９】
開放の必要がないデータ転送手段６０１は、コマンド受付け可能かどうかをコマンド受付可能通知により転送要因確認手段４０４に通知する。また、開放の必要がないデータ転送手段６０１は、コマンド生成手段１０７から出力されるコマンドにしたがって、転送元１０９から転送先兼転送元６０３へデータを転送する。また、開放の必要がないデータ転送手段６０１は、コマンド生成手段１０７から受けるコマンド分のサイズのデータを転送元１０９から転送先兼転送元６０３へ転送し終えたことを、転送先兼転送元６０３へ書き込み終了通知により通知する。
【００５０】
データ転送手段６０２は、インタフェース回路やバッファ、アライナなどのデータ転送に必要な各種の資源を有する。データ転送手段６０２は、コマンド受付け可能通知を開放指示手段４０５と転送要因確認手段４０４に出力する。また、データ転送手段６０２は、コマンド生成手段１０７から出力されたコマンドに従って、転送先兼転送元６０３から転送先１１０へデータを転送する。また、データ転送手段６０２は、転送元である転送先兼転送元６０３からのデータの読み出しが終了したことを、転送先兼転送元６０３から出力される読み出し終了通知により認識する。読み出し終了通知の出力を受けた後、開放指示手段４０５からの開放指示の出力があれば内部の資源を開放し、出力が無ければ資源を開放しない。また、内部の資源に端数データが無い場合は資源の開放は行なわない。
【００５１】
転送先兼転送元６０３は、書き込み終了通知を受け、開放の必要がないデータ転送手段６０１からのデータ転送が終了したことを認識する。転送先兼転送元６０３は、最後に開放の必要がないデータ転送手段６０１から転送されたデータを処理しデータ転送手段１０１へ転送し、読み出し終了通知を出力する。
【００５２】
このとき、転送先兼転送元６０３は出力量の不定である圧縮や解凍などの処理を行なう回路を想定しており、読み出し終了通知を出力した後に内部に残った処理単位に満たないデータは保留したり、破棄したりする。
【００５３】
このように、かかる構成によれば、転送情報にサイズの属性がない場合であっても、開放の必要がないデータ転送手段６０１が書き込み終了通知を転送先兼転送元６０３に出力することによって、実施の形態２と同等の効果を得ることができる。
【産業上の利用可能性】
【００５４】
本発明のデータ転送装置は、ハードディスクやＳＤカード、ＵＳＢメモリ、ＤＶＤ、主記憶などの間でデータを転送し、途中で圧縮や解凍、暗号や復号などの処理を行うようなデータ転送装置として有用である。
【図面の簡単な説明】
【００５５】
【図１】本発明に係るデータ転送装置の実施の形態１の構成を示すブロック図
【図２】本発明に係るデータ転送装置の実施の形態１のデータ転送手段の動作のフローチャート
【図３】本発明に係るデータ転送装置の実施の形態１の開放指示手段の動作のフローチャート
【図４】本発明に係るデータ転送装置の実施の形態２の構成を示すブロック図
【図５】本発明に係るデータ転送装置の実施の形態２の開放指示手段の動作のフローチャート
【図６】本発明に係るデータ転送装置の実施の形態３の構成を示すブロック図
【符号の説明】
【００５６】
１０１    データ転送手段
１０２    第１の転送要求手段
１０３    第２の転送要求手段
１０４    第３の転送要求手段
１０５    転送要因確認手段
１０６    調停手段
１０７    コマンド生成手段
１０８    開放指示手段
１０９    転送元
１１０    転送先
１１１    データ転送装置
４０１    開放の必要がないデータ転送手段
４０２    第３の転送要求手段
４０３    第４の転送要求手段
４０４    転送要因確認手段
４０５    開放指示手段
４０６    転送先兼転送元
４０７    データ転送装置
６０１    開放の必要がないデータ転送手段
６０２    データ転送手段
６０３    転送先兼転送元
６０４    データ転送装置
【図１】
2008065419.tif 000003
【図２】
2008065419.tif 000004
【図３】
2008065419.tif 000005
【図４】
2008065419.tif 000006
【図５】
2008065419.tif 000007
【図６】
2008065419.tif 000008