(58)【調査した分野】(Int.Cl.,DB名)
第一の情報処理装置が、自装置固有の個別クロック信号と同期して自装置に格納した格納データにアクセスする、複数の第二の情報処理装置のうちの特定の情報処理装置に格納された前記格納データにアクセスする際に、前記特定の情報処理装置が発行した前記格納データへのアクセス結果を表すリプライデータを、前記特定の情報処理装置を除く少なくともいずれかの前記第二の情報処理装置が順番に中継して入手する場合において、
前記第二の情報処理装置ごとに、
前記第二の情報処理装置が前記個別クロック信号と同期して生成する前記リプライデータを、前記複数の第二の情報処理装置に対して共通に分配された共通クロック信号と同期して出力する同期制御手段と、
前記共通クロック信号と同期して動作し、前記第一の情報処理装置と、前記複数の第二の情報処理装置とを順番に中継する第一の通信パスを使用して受信した、自装置に格納した前記格納データに対する前記第一の情報処理装置からのリクエストデータが、自装置宛である場合、当該リクエストデータを前記同期制御手段へ出力するリクエスト受信手段と、
前記共通クロック信号と同期して動作し、自装置宛の前記リクエストデータに対し、前記同期制御手段が出力した前記リプライデータを、前記リクエストデータを受信してから所定の時間記憶したのち、前記第一の情報処理装置と、前記複数の第二の情報処理装置とを順番に中継する第二の通信パスを使用して、後段に位置する前記第二の情報処理装置、あるいは、前記第一の情報処理装置へ送信するリプライ送出手段と、
を備える、データ転送制御システム。
前記リクエスト受信手段は、入手した前記第一の情報処理装置からのリクエストデータが他装置宛である場合、当該リクエストデータを、後段に位置する前記第二の情報処理装置へ送信する、
請求項3又は4に記載のデータ転送制御システム。
第一の情報処理装置が、自装置固有の個別クロック信号と同期して自装置に格納した格納データにアクセスする、複数の第二の情報処理装置のうちの特定の情報処理装置に格納された前記格納データにアクセスする際に、前記特定の情報処理装置が発行した前記格納データへのアクセス結果を表すリプライデータを、前記特定の情報処理装置を除く少なくともいずれかの前記第二の情報処理装置が順番に中継して入手する場合において、
前記複数の第二の情報処理装置によって、
前記第二の情報処理装置が前記個別クロック信号と同期して生成する前記リプライデータを、前記複数の第二の情報処理装置に対して共通に分配された共通クロック信号と同期して出力し、
前記第一の情報処理装置と、前記複数の第二の情報処理装置とを順番に中継する第一の通信パスを使用して受信した、自装置に格納した前記格納データに対する前記第一の情報処理装置からのリクエストデータが、自装置宛である場合、当該リクエストデータを前記共通クロック信号と同期して出力し、
自装置宛の前記リクエストデータに対して出力した前記リプライデータを所定の時間記憶したのち、前記第一の情報処理装置と、前記複数の第二の情報処理装置とを順番に中継する第二の通信パスを使用して、後段に位置する前記第二の情報処理装置へ、あるいは、前記第一の情報処理装置へ、前記共通クロック信号と同期して送信する、
データ転送制御方法。
第一の情報処理装置が、自装置固有の個別クロック信号と同期して自装置に格納した格納データにアクセスする、複数の第二の情報処理装置のうちの特定の情報処理装置に格納された前記格納データにアクセスする際に、前記特定の情報処理装置が発行した前記格納データへのアクセス結果を表すリプライデータを、前記特定の情報処理装置を除く少なくともいずれかの前記第二の情報処理装置が順番に中継して入手する場合において、
前記第二の情報処理装置が前記個別クロック信号と同期して生成する前記リプライデータを、前記複数の第二の情報処理装置に対して共通に分配された共通クロック信号と同期して出力する同期制御処理と、
前記第一の情報処理装置と、前記複数の第二の情報処理装置とを順番に中継する第一の通信パスを使用して受信した、自装置に格納した前記格納データに対する前記第一の情報処理装置からのリクエストデータが、自装置宛である場合、前記リクエストデータを前記共通クロック信号と同期して出力するリクエスト受信処理と、
自装置宛の前記リクエストデータに対して前記同期制御処理が出力した前記リプライデータを、所定の時間記憶したのち、前記第一の情報処理装置と、前記複数の記第二の情報処理装置とを順番に中継する第二の通信パスを使用して、後段に位置する前記第二の情報処理装置、あるいは、前記第一の情報処理装置へ、前記共通クロック信号と同期して送信するリプライ送出処理と、
を前記複数の第二の情報処理装置に実行させる、データ転送制御プログラム。
【発明を実施するための形態】
【0016】
以下、本願発明の実施の形態について図面を参照して詳細に説明する。
【0017】
<第1の実施形態>
図1は、第1の実施形態に係るデータ転送制御システム1の構成を概念的に示すブロック図である。本実施形態に係るデータ転送制御システム1は、マスター装置10、3つのスレーブ装置20乃至40、及び、共通クロック信号分配装置50を備えている。マスター装置10は、例えば、サーバ装置等の情報処理装置である。スレーブ装置20乃至40は、装置内部に格納したデータをマスター装置10からアクセスされる装置であり、例えば、マスター装置10によって制御される記憶装置等の周辺装置である。本実施形態では、スレーブ装置20乃至40は、マスター装置10と通信可能にデイジーチェーン接続されている。尚、マスター装置10に接続されるスレーブ装置は、3つに限定されない。
【0018】
スレーブ装置20乃至40は、順に、データ処理制御部200乃至400を備えている。データ処理制御部200乃至400には、スレーブ装置20乃至40が個別に生成する個別クロック信号ICが入力されている。
【0019】
共通クロック信号分配装置50は、スレーブ装置20乃至40が共通して使用する共通クロック信号CCを生成して、その共通クロック信号CCを、データ処理制御部20乃至40に入力する。共通クロック信号分配装置50は、単体装置でなくてもよく、例えば、マスター装置10などに内蔵された電子回路等であってもよい。
【0020】
マスター装置10は、スレーブ装置20乃至40のいずれかに格納されたデータにアクセスする際に、目的のスレーブ装置(アクセス対象とするスレーブ装置)に対してリクエストデータを発行する。当該リクエストデータは、マスター装置10と目的のスレーブ装置との間に位置するスレーブ装置によって中継されるリクエストパスを流れたのちに、目的のスレーブ装置に入力される。目的のスレーブ装置は、入力されたリクエストデータが要求する処理を行ったのち、その処理結果であるリプライデータを生成する。当該リプライデータは、目的のスレーブ装置とマスター装置10との間に位置するスレーブ装置によって中継されるリプライパスを流れたのちに、マスター装置10に入力される。
【0021】
図2は、本実施形態に係るスレーブ装置30が備えるデータ処理制御部300の構成を概念的に示すブロック図である。スレーブ装置20が備えるデータ処理制御部200、及び、スレーブ装置40が備えるデータ処理制御部400の構成も、データ処理制御部300と同様である。
【0022】
データ処理制御部300は、リクエスト受信部310、リプライ送出部320、同期制御部330、及び、リクエスト処理部340を備えている。リクエスト受信部310、リプライ送出部320、同期制御部330、及び、リクエスト処理部340は、電子回路の場合もあれば、コンピュータプログラムとそのコンピュータプログラムに従って動作するプロセッサによって実現される場合もある。
【0023】
リクエスト受信部310は、リクエスト判定部311、及び、リプライ有無判定部312を備えている。リクエスト受信部310には、共通クロック信号分配装置50から分配された共通クロック信号CCが入力され、リクエスト受信部310は、共通クロック信号CCと同期して動作する。リクエスト判定部311は、デイジーチェーン接続においてスレーブ装置30の前段に位置するスレーブ装置20から転送された、マスター装置によって発行されたリクエストデータを受信する。
【0024】
本実施形態に係るリクエストデータの構成例を
図3に示す。
図3に示す通り、リクエストデータ100は、有効フラグ101、命令種別102、アクセス先装置103、アクセス先アドレス104、及び、書き込みデータ105を包含している。有効フラグ101は、リクエストデータ100が有効であるか否かを示す情報であり、有効である場合は「1」、無効である場合は「0」が格納される。命令種別102は、リクエストデータ100が示す命令が、読み出し命令であるのか、あるいは、書き込み命令であるのかを示す情報である。アクセス先装置103は、マスター装置10がアクセスするスレーブ装置20乃至40の何れかを識別可能な識別子である。アクセス先アドレス104は、マスター装置10がアクセスするデータが格納されたアドレスの値である。書き込みデータ105は、リクエストデータ100が書き込み命令である場合における書き込みデータを格納している。書き込みデータ105は、リクエストデータ100が読み出し命令である場合は、未使用である。
【0025】
リクエスト判別部311は、受信したリクエストデータ100におけるアクセス先装置103を参照する。アクセス先装置103がスレーブ装置30を示していない場合(すなわち、スレーブ装置40を示す場合)、リクエスト判別部311は、受信したリクエストデータ100を、デイジーチェーン接続においてスレーブ装置30の後段に位置するスレーブ装置40に転送する。アクセス先装置103がスレーブ装置30を示している場合、リクエスト判別部311は、受信したリクエストデータ100を、リプライ有無判定部312、及び、同期制御部330へ入力する。
【0026】
リプライ有無判定部312は、リクエスト判別部311から入力されたリクエストデータ100における命令種別102を参照する。命令種別102が読み出し命令を示す場合、リプライ有無判定部312は、リクエストに対するリプライが必要であると判定し、その判定結果をリプライ送出部320へ入力する。命令種別102が書き込み命令を示す場合、リプライ有無判定部312は、リクエストに対するリプライが不要であると判定し、リプライ送出部320に対して、判定結果を入力しない。尚、本実施形態では、スレーブ装置20乃至40は、マスター装置10からのリクエストが読み出し命令のときのみマスター装置10に対してリプライを返す場合を例に説明しているが、当該リクエストが書き込み命令のときに、書き込み結果をリプライとして返すようにしてもよい。その場合は、リクエスト受信部310は、リプライ有無判定部312を備えなくてもよい。
【0027】
リプライ送出部320は、リプライ生成部321、リプライタイミング生成部322、及び、リプライタイミング調整部323を備えている。リプライ送出部320には、共通クロック信号分配装置50から分配された共通クロック信号CCが入力され、リプライ送出部320は、共通クロック信号CCと同期して動作する。
【0028】
リプライ生成部321は、スレーブ装置20がマスター装置10からのリクエストに対して生成したリプライデータを受信した場合、当該リプライデータをスレーブ装置40に転送する。リプライ生成部321は、リプライタイミング調整部323から、スレーブ装置30がマスター装置10からのリクエストに対して生成したリプライデータを入力されたときに、当該リプライデータをスレーブ装置40に転送する。
【0029】
リプライタイミング生成部322は、リプライ有無判定部312からリプライに関する判定結果を入力されたときに、所定の基準に従って、スレーブ装置30が生成したリプライデータを、スレーブ装置30がスレーブ装置40に転送するタイミングを示すリプライタイミング情報を生成する。例えば、係る所定の基準が、「スレーブ装置30が自装置に対するリクエストデータを受信してから、共通クロックCCに関するサイクルを基準として、3サイクル後」であるとする。この場合、リプライタイミング生成部322は、生成したリプライタイミング情報に基づいたタイミングに、リプライデータを転送する指示を、リプライタイミング調整部323へ入力する。これにより、リプライ送出部320は、リクエスト受信部310がリクエストデータを受信してから3サイクル後に、リプライデータを転送することができる。
【0030】
リプライタイミング調整部323は、スレーブ装置30がマスター装置10からのリクエストに対して生成したリプライデータを同期制御部330から入力された場合、当該リプライデータを一時記憶する。リプライタイミング調整部323は、リプライタイミング生成部322から当該リプライデータを転送する指示を入力されたときに、当該リプライデータをリプライ生成部321へ入力する。尚、リプライタイミング調整部323は、複数のリプライデータを記憶可能な複数のバッファを複数備え、例えばFIFO(First In First Out)形式により、リプライデータをリプライ生成部321へ入力してもよい。
【0031】
図5は、本実施形態に係る同期制御部330の構成を概念的に示すブロック図である。同期制御部330は、リクエストデータ入力バッファ331、リクエストデータ出力バッファ332、リプライデータ入力バッファ333、及び、リプライデータ出力バッファ334を備えている。リクエストデータ入力バッファ331及びリプライデータ出力バッファ334には共通クロック信号CCが入力され、これらのバッファは、共通クロック信号CCと同期して動作する。リクエストデータ出力バッファ332及びリプライデータ入力バッファ333には個別クロック信号ICが入力され、これらのバッファは、個別クロック信号ICと同期して動作する。
【0032】
リクエストデータ入力バッファ331は、リクエスト受信部310から入力されたリクエストデータを一時記憶したのち、リクエストデータ出力バッファ332へ入力する。リクエストデータ出力バッファ332は、リクエストデータ入力バッファ331から入力されたリクエストデータを一時記憶したのち、個別クロック信号ICと同期したタイミングに、当該リクエストデータをリクエスト処理部340へ入力する。
【0033】
リプライデータ入力バッファ333は、リクエスト処理部340から入力されたリプライデータを一時記憶したのち、リプライデータ出力バッファ334へ入力する。リプライデータ出力バッファ334は、リプライデータ入力バッファ333から入力されたリプライデータを一時記憶したのち、共通クロック信号CCと同期したタイミングに、当該リプライデータをリプライ送出部320へ入力する。
【0034】
リクエスト処理部340は、同期制御部330から入力されたリクエストデータが指示する処理を行う。リクエスト処理部340には個別クロック信号ICが入力され、リクエスト処理部340は、個別クロック信号ICと同期して動作する。
【0035】
リクエスト処理部340は、
図3に示す命令種別102が書き込み命令を示す場合、アクセス先アドレス104が示すアドレスに対して、書き込みデータ105が示すデータを書き込む。リクエスト処理部340は、
図3に示す命令種別102が読み出し命令を示す場合、アクセス先アドレス104が示すアドレスからデータを読み出した後、読み出したデータに基づいてリプライデータを生成する。
【0036】
リクエスト処理部340が生成するリプライデータの構成例を
図4に示す。
図4に示す通り、リプライデータ110は、有効フラグ111、アクセス先装置112、及び、読み出しデータ113を包含している。有効フラグ111は、リプライデータ110が有効であるか否かを示す情報であり、有効である場合は「1」、無効である場合は「0」が格納される。リクエスト処理部340は、リプライデータ110を生成する際に、有効フラグ111を「1」に設定する。アクセス先装置112は、リプライデータ110を発行したスレーブ装置を識別可能な識別子である。リクエスト処理部340は、アクセス先装置112として、スレーブ装置30を識別可能な識別子を設定する。読み出しデータ113は、リクエスト処理部340によって読み出されたデータである。リクエスト処理部340は、生成したリプライデータを、同期制御部330へ入力する。
【0037】
図6に、本実施形態に係るリクエストパス及びリプライパスに流れるデータに関するタイムチャートの例を示す。
図6に示す例の場合、スレーブ装置20乃至40はいずれも、自装置に対するリクエストデータを受信してから、共通クロック信号CCに関するサイクルを基準として3サイクル後に、生成したリプライデータを、後段に位置するスレーブ装置あるいはマスター装置10に転送するように設定されている。
【0038】
図6において、リクエストA、リクエストB、及び、リクエストCは、順に、スレーブ装置20、スレーブ装置30、及び、スレーブ装置40に対して、マスター装置10から発行された読み出しリクエストである。リプライA、リプライB、及び、リプライCは、順に、リクエストA、リクエストB、及び、リクエストCに対して、スレーブ装置20、スレーブ装置30、及び、スレーブ装置40が生成したリプライである。
【0039】
図6に示す通り、マスター装置10は、共通クロック信号CCを基準としたt1、t2、及び、t3サイクルにおいて、順に、リクエストA、リクエストB、及び、リクエストCを、スレーブ装置20へ入力されるリクエストパスに出力する。
【0040】
スレーブ装置20は、自装置に対するリクエストであるリクエストAを処理したのち、t1から3サイクル後のt4サイクルにおいて、リプライAを、スレーブ装置20から出力されるリプライパスに出力する。スレーブ装置20は、他装置に対するリクエストであるリクエストB及びリクエストCを、順に、t3及びt4サイクルにおいて、スレーブ装置30へ入力されるリクエストパスに出力する。
【0041】
スレーブ装置30は、自装置に対するリクエストであるリクエストBを処理したのち、t3から3サイクル後のt6サイクルにおいて、リプライBを、スレーブ装置30から出力されるリプライパスに出力する。スレーブ装置30は、他装置に対するリクエストであるリクエストCを、t5サイクルにおいて、スレーブ装置40へ入力されるリクエストパスに出力する。スレーブ装置30は、他装置が生成したリプライAを、t5サイクルにおいて、スレーブ装置30から出力されるリプライパスに出力する。
【0042】
スレーブ装置40は、自装置に対するリクエストであるリクエストCを処理したのち、t5から3サイクル後のt8サイクルにおいて、リプライCを、スレーブ装置40から出力されるリプライパスに出力する。スレーブ装置40は、他装置が生成したリプライA及びリプライBを、順に、t6及びt7サイクルにおいて、スレーブ装置40から出力されるリプライパスに出力する。
【0043】
このように、t1乃至t3サイクルにおいて、マスター装置10から出力されたリクエストA乃至Cは、順に、スレーブ装置20乃至40によって処理されたのち、t6乃至t8サイクルにおいて、最終段に位置するスレーブ装置40から、リプライA乃至Cが出力される。
【0044】
次に
図7A及び7Bのフローチャートを参照して、本実施形態に係るデータ転送制御システム1の動作(処理)について、スレーブ装置30の場合を例に詳細に説明する。尚、スレーブ装置20及び40の動作についても、スレーブ装置30と同様である。
【0045】
リクエスト受信部310は、スレーブ装置20からリクエストデータを入手する(ステップS101)。当該リクエストデータが自装置(すなわちスレーブ装置30)宛でない場合(ステップS102でNo)、リクエスト受信部310は、入手したリクエストデータをスレーブ装置40へ転送し(ステップS103)、全体の処理は終了する。
【0046】
当該リクエストデータが自装置宛である場合(ステップS102でYes)、同期制御部330は、共通クロック信号CCと同期したタイミングで、リクエスト受信部310からリク当該エストデータを入手する(ステップS104)。同期制御部330は、個別クロック信号ICと同期したタイミングで、リクエスト処理部340へ当該リクエストデータを入力する(ステップS105)。
【0047】
当該リクエストが読み出しアクセスでない(すなわち書き込みアクセスである)場合(ステップS106でNo)、リクエスト処理部340は、当該リクエストデータが示すアドレスにデータを書き込み(ステップS107)、全体の処理は終了する。
【0048】
当該リクエストが読み出しアクセスである場合(ステップS106でYes)、リクエスト処理部340は、当該リクエストデータが示すアドレスから、データを読み出してリプライデータを生成し、当該リプライデータを同期制御部330へ入力する(ステップS108)。
【0049】
同期制御部330は、当該リプライデータを、個別クロック信号ICと同期したタイミングで記憶する(ステップS109)。同期制御部330は、当該リプライデータを、共通クロック信号CCと同期したタイミングで、リプライ送出部320へ入力する(ステップS110)。リプライ送出部320は、当該リプライデータを、所定の時間に亘って記憶したのち、スレーブ装置40へ転送し(ステップS111)、全体の処理は終了する。
【0050】
本実施形態に係るデータ転送制御システム1は、個別クロック信号ICにより自装置内に格納したデータにアクセスする複数の情報処理装置が接続され、他装置からのアクセスに関するデータが複数の情報処理装置を中継する通信パスを流れるシステムにおいて、情報処理装置間のデータ転送性能を向上できる。その理由は、各情報処理装置(スレーブ装置)において、同期制御部が、アクセスリクエストに対して自装置が生成したリプライデータを、共通クロック信号CCと同期してリプライ送出部へ入力し、リプライ送出部が、当該リプライデータを所定の時間に亘って記憶したのち、後段に位置する情報処理装置へ共通クロック信号CCと同期して転送するからである。
【0051】
マスター装置からアクセスされる複数の周辺装置等のスレーブ装置がマスター装置に接続されたシステムにおいて、一般的にそれらのスレーブ装置は、自装置が生成する個別クロック信号ICと同期して動作する。そして、これらのスレーブ装置が、例えばデイジーチェーン接続されている場合、リクエスト及びリプライに関するデータは、スレーブ装置を中継する共有する通信パスを流れた後、目的の装置に到達する。
【0052】
この場合、各スレーブ装置は、スレーブ装置間において、同期がとれていないタイミングに、リプライデータをリプライパスに出力する。この際、複数のスレーブ装置から出力されたリプライ出力が、共有するリプライパスにおいて競合することが頻繁に発生することによって、マスター装置とスレーブ装置との間のデータ転送性能が低下する問題がある。
【0053】
これに対して、本実施形態に係るデータ転送制御システム1では、共通クロック信号分配装置50が、スレーブ装置20乃至40に対して共通クロック信号CCを分配する。そして、例えばスレーブ装置30の場合、同期制御部330は、自装置が個別クロック信号ICと同期して生成したリプライデータを、共通クロック信号CCと同期してリプライ送出部320へ入力する。スレーブ装置30におけるリプライ送出部320は、同期制御部330から入力されたリプライデータを、所定の時間に亘って記憶したのち、共通クロック信号CCと同期して、共有するリプライパスに出力する。すなわち、スレーブ装置20乃至40は、スレーブ装置間において、共通クロック信号CCを介して同期がとれたタイミングに、リプライデータをリプライパスに出力する。これにより、本実施形態に係るデータ転送制御システム1は、複数のスレーブ装置から出力されたリプライ出力が、共有するリプライパスにおいて競合することを回避することによって、マスター装置10とスレーブ装置20乃至40との間のデータ転送性能を向上できる。
【0054】
また、本実施形態に係るデータ転送制御システム1では、スレーブ装置20乃至40におけるリプライ送出部が、自装置が自装置に対するリクエストデータを受信してから、リプライデータをリプライパスに出力するまでに要する時間が、スレーブ装置20乃至40の間で一定となるように、リプライデータを所定の時間に亘って記憶する。例えば、
図6に示す例では、スレーブ装置20乃至40におけるリプライ送出部は、リクエストデータを受信してから、リプライデータをリプライパスに出力するまでに要する時間が、共通クロック信号を基準として、3サイクルとなるように、リプライデータを記憶する。これにより、本実施形態に係るデータ転送制御システム1は、
図6に示す通り、リクエストパス及びリプライパスを効率的に使用できるため、マスター装置10とスレーブ装置20乃至40との間のデータ転送性能をさらに向上できる。
【0055】
また、本実施形態に係るデータ転送制御システム1では、スレーブ装置20乃至40におけるリプライ送出部が、リプライデータを所定の時間記憶可能な複数のバッファを備え、FIFO方式によって、リプライデータを読み出すことができる。これにより、本実施形態に係るデータ転送制御システム1は、マスター装置10が発行した複数のリクエストを、連続的に処理することができるため、システム性能を向上することができる。
【0056】
尚、本実施形態に係るデータ転送制御システム1は、マスター装置に複数のスレーブ装置がデイジ−チェーン接続されたシステムに限定されない。例えば、1つの装置において、互いに異なるクロック信号に同期して動作する複数の回路がデイジーチェーン接続されたシステムにも、本実施形態が備える技術的思想を適用することができる。
【0057】
また、本実施形態に係るデータ転送制御システム1は、複数の情報処理装置を接続する形態をデイジーチェーン接続に限定しない。例えば、複数の情報処理装置がデイジーチェーン以外の接続形態により互いに通信可能に接続されたマルチノードシステムであって、リクエストデータ及びリプライデータが、複数の情報処理装置によって中継されたのちに、目的の装置に到達するアーキテクチャを備えたシステム等にも、本実施形態が備える技術的思想を適用することができる。
【0058】
<第2の実施形態>
図8は、第2の実施形態に係るデータ転送制御システム2の構成を概念的に示すブロック図である。
【0059】
本実施形態に係るデータ転送制御システム2は、第1の情報処理装置60、及び、n個(nは2以上の整数)の第2の情報処理装置70−1乃至70−nを備えている。第2の情報処理装置70−1乃至70−nは、自装置固有の個別クロック信号ICと同期して自装置に格納した格納データにアクセスする。第1の情報処理装置60は、第2の情報処理装置70−1乃至70−nのうちの特定の第2の情報処理装置70−i(iは1乃至nのいずれかの整数)に格納された格納データにアクセスする。この際、第1の情報処理装置60は、第2の情報処理装置70−iが発行した当該格納データへのアクセス結果を表すリプライデータを、第2の情報処理装置70−iを除く少なくともいずれかの第2の情報処理装置が順番に中継する通信パスを使用して入手する。
図8に示す例の場合、第2の情報処理装置70−iが生成したリプライデータは、第2の情報処理装置70−(i+1)乃至70−nによって順番に中継されたのち、第1の情報処理装置60に入力される。
【0060】
第2の情報処理装置70−iは、リプライ送出部71−i、及び、同期制御部72−iを備えている。
【0061】
同期制御部72−iは、第2の情報処理装置70−iが個別クロック信号ICと同期して生成するリプライデータを、第2の情報処理装置70−1乃至70−nに対して共通に分配された共通クロック信号CCと同期して出力する。
【0062】
リプライ送出部71−iは、共通クロック信号CCと同期して動作する。リプライ送出部71−iは、同期制御部72−iが出力したリプライデータを所定の時間に亘って記憶したのち、後段に位置する第2の情報処理装置70−(i+1)へ(i=nでない場合)、あるいは、第1の情報処理装置60へ(i=nである場合)送信する。
【0063】
本実施形態に係るデータ転送制御システム2は、個別クロック信号ICにより自装置内に格納したデータにアクセスする複数の情報処理装置が接続され、他装置からのアクセスに関するデータが複数の情報処理装置を中継する通信パスを流れるシステムにおいて、情報処理装置間のデータ転送性能を向上できる。その理由は、各第2の情報処理装置において、同期制御部が、アクセスリクエストに対して自装置が生成したリプライデータを、共通クロック信号CCと同期してリプライ送出部へ入力し、リプライ送出部が、当該リプライデータを所定の時間に亘って記憶したのち、後段に位置する情報処理装置へ共通クロック信号CCと同期して転送するからである。
【0064】
<ハードウェア構成例>
上述した各実施形態において
図2、及び、
図8に示した各部は、専用のHW(HawdWare)(電子回路)によって実現することができる。また、少なくとも、リプライ送出部320及び71−i、及び、同期制御部330及び72−iは、ソフトウェアプログラムの機能(処理)単位(ソフトウェアモジュール)と捉えることができる。但し、これらの図面に示した各部の区分けは、説明の便宜上の構成であり、実装に際しては、様々な構成が想定され得る。この場合のハードウェア環境の一例を、
図9を参照して説明する。
【0065】
図9は、本発明の模範的な実施形態に係るスレーブ装置あるいは第2の情報処理装置を実行可能な情報処理装置900(コンピュータ)の構成を例示的に説明する図である。即ち、
図9は、
図2、及び、
図8に示したスレーブ装置あるいは第2の情報処理装置を実現可能なコンピュータ(情報処理装置)の構成であって、上述した実施形態における各機能を実現可能なハードウェア環境を表す。
【0066】
図9に示した情報処理装置900は、構成要素として下記を備えている。
・CPU901、
・ROM(Read_Only_Memory)902、
・RAM(Random_Access_Memory)903、
・ハードディスク904(記憶装置)、
・外部装置との通信インタフェース905(Interface:以降、「I/F」と称する)、
・CD−ROM(Compact_Disc_Read_Only_Memory)等の記憶媒体907に格納されたデータを読み書き可能なリーダライタ908、
・入出力インタフェース909、
情報処理装置900は、これらの構成がバス906(通信線)を介して接続された一般的なコンピュータである。
【0067】
そして、上述した実施形態を例に説明した本発明は、
図9に示した情報処理装置900に対して、次の機能を実現可能なコンピュータプログラムを供給する。その機能とは、その実施形態の説明において参照したブロック構成図(
図2、及び、
図8)における、リプライ送出部320及び71−i、及び、同期制御部330及び72−i、或いはフローチャート(
図7A及び7B)の機能である。本発明は、その後、そのコンピュータプログラムを、当該ハードウェアのCPU901に読み出して解釈し実行することによって達成される。また、当該装置内に供給されたコンピュータプログラムは、読み書き可能な揮発性の記憶メモリ(RAM903)またはハードディスク904等の不揮発性の記憶デバイスに格納すれば良い。
【0068】
また、前記の場合において、当該ハードウェア内へのコンピュータプログラムの供給方法は、現在では一般的な手順を採用することができる。その手順としては、例えば、CD−ROM等の各種記憶媒体907を介して当該装置内にインストールする方法や、インターネット等の通信回線を介して外部よりダウンロードする方法等がある。そして、このような場合において、本発明は、係るコンピュータプログラムを構成するコード或いは、そのコードが格納された記憶媒体907によって構成されると捉えることができる。
【0069】
以上、上述した実施形態を模範的な例として本発明を説明した。しかしながら、本発明は、上述した実施形態には限定されない。即ち、本発明は、本発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。