説明

情報処理システム

【課題】データ転送時に発生するデータの書き込み完了通知及びデータの読み出し完了通知を抑制する。
【解決手段】情報処理システム90には、情報処理装置1、情報処理装置2、及び共有部3が設けられる。情報処理システム90では、情報処理装置1及び情報処理装置2の間の共有部3に設けられる共有メモリ31を介して、情報処理装置1と報処理装置2の間のデータ転送を行っている。連続したデータ転送の場合、データ転送が終了後或いは所定回数のデータ転送が終了後に転送データの完了通知が送信される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理システムに関する。
【背景技術】
【0002】
プロセッサなどの情報処理装置を複数有する情報処理システムでは、各情報処理装置で特有のドメインを保持している。情報処理装置間でデータの共有を行う場合、双方のドメインである情報処理部のプロトコルを規定し、各情報処理装置からアクセスが可能な共有メモリを介して通信する方法が知られている。共有メモリを用いたデータ転送では、受信側のデータの読み出し完了通知を受けることなく、送信側からデータの書き込みを行い情報処理装置間のデータ転送の高速度化を図っている(例えば、特許文献1参照。)。
【0003】
ところが、特許文献1に記載される情報処理システムでは、共有メモリを用いて連続したデータ転送を実行する場合、データの受信側でのデータの読み出し完了通知によりデータの送信側の処理を迅速にできないという問題点がある。このため、情報処理装置間のデータ転送時に発生するオーバーヘッドを削減することができない。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2009−116561号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明は、データ転送時に発生するデータの書き込み完了通知及びデータの読み出し完了通知を抑制することができる情報処理システムを提供することにある。
【課題を解決するための手段】
【0006】
本発明の一態様の情報処理システムは、第1の情報処理部及びデータ送信部を有する第1の情報処理装置と、第2の情報処理部及びデータ受信部を有する第2の情報処理装置と、前記第1及び第2の情報処理装置の間に設けられ、共有メモリ、書き込みフラグ、及び読み出しフラグを有する共有部とを具備し、前記共有メモリは前記第1の情報処理装置から転送されるデータを書き込み、書き込まれたデータを前記第2の情報処理装置に転送し、前記書き込みフラグは前記共有メモリへのデータの書き込み完了を示し、前記読み出しフラグは前記共有メモリからデータの読み出し完了を示し、前記共有メモリへ連続したデータの書き込みを実行する場合、前記データ受信部が転送されたデータの書き込み完了通知を前記第2の情報処理部に送信するまでは、前記データ送信部が前記データ受信部にデータの書き込み完了通知を送信しないことを特徴とする。
【0007】
更に、本発明の他態様の情報処理システムは、第1の情報処理部及びデータ送信部を有する第1の情報処理装置と、第2の情報処理部及びデータ受信部を有する第2の情報処理装置と、共有メモリ、書き込みフラグ、及び読み出しフラグを有する共有部と、データ転送処理を実行するDMAコントローラとを具備し、前記共有メモリは前記DMAコントローラに基づいて前記第1の情報処理装置から転送されるデータを書き込み、書き込まれたデータを前記第2の情報処理装置に転送し、前記書き込みフラグは前記共有メモリへのデータの書き込み完了を示し、前記読み出しフラグは前記共有メモリからデータの読み出し完了を示し、前記共有メモリへ連続したデータの書き込みを実行する場合、前記データ受信部が転送されたデータの書き込み完了通知を前記第2の情報処理部に送信するまでは、前記DMAコントローラが前記データ受信部にデータの書き込み完了通知を送信しないことを特徴とする。
【発明の効果】
【0008】
本発明によれば、データ転送時に発生するデータの書き込み完了通知及びデータの読み出し完了通知を抑制することができる情報処理システムを提供することができる。
【図面の簡単な説明】
【0009】
【図1】本発明の実施例1に係る情報処理システムを示す概略ブロック図。
【図2】本発明の実施例1に係る情報処理システムの共有メモリへのデータ書き込み動作を示すフローチャート。
【図3】本発明の実施例1に係る情報処理システムの共有メモリからデータ読み出し動作を示すフローチャート。
【図4】本発明の実施例2に係る情報処理システムを示す概略ブロック図。
【図5】本発明の実施例2に係る情報処理システムのデータ転送動作を示すフローチャート。
【図6】本発明の実施例3に係る情報処理システムを示す概略ブロック図。
【発明を実施するための形態】
【0010】
以下本発明の実施例について図面を参照しながら説明する。
【実施例1】
【0011】
まず、本発明の実施例1に係る情報処理システムについて、図面を参照して説明する。図1は情報処理システムを示す概略ブロック図である。本実施例では、情報処理装置でのデータ転送の完了通知を抑制している。
【0012】
図1に示すように、情報処理システム90には、情報処理装置1、情報処理装置2、及び共有部3が設けられる。情報処理システム90では、情報処理装置1及び情報処理装置2の間の共有部3に設けられる共有メモリ31を介して、情報処理装置1と報処理装置2の間のデータ転送を高速に行っている。ここでは、本発明の趣旨を簡略に説明するために、情報処理装置1、情報処理装置2、及び共有部3を記載しているが、情報処理装置の数が2つに限定されるものではない。また、共有部の数が1つに限定されるものではない。
【0013】
共有部3は、情報処理装置1と報処理装置2の間に設けられる。共有部3には、共有メモリ31とフラグ32が設けられる。情報処理装置1と共有部3の間、共有部3と情報処理装置2の間は、例えば、バスなどでそれぞれ接続され、バスを介して情報のやりとりが行われる。
【0014】
共有メモリ31は、情報処理装置1及び報処理装置2のいずれか一方から転送される情報を書き込み、書き込まれた情報を情報処理装置1及び報処理装置2のいずれか他方にデータ転送する。ここで、データ転送とは情報処理装置で情報処理されたデータ、情報処理装置内に格納されているプログラムやデータなどを転送することをいう。
【0015】
フラグ32は、データ転送時にどのデータが転送を完了したのかを示すものであり、情報処理装置1と報処理装置2間で転送されるデータの個数分のステータスを保持している。つまり、フラグ32はデータ転送時でのステータスフラグとして用いられる。フラグ32には、書き込みフラグ41と読み出しフラグ42が設けられる。書き込みフラグ41は、データの書き込み完了を示すデータ書き込みステータスフラグとして用いられる。読み出しフラグ42は、データの読み出し完了を示すデータ読み出しステータスフラグとして用いられる。
【0016】
情報処理装置1には、情報処理部11、ローカルメモリ12、データ送信部13、及びデータ受信部14が設けられる。情報処理部11は、各種情報処理を実行し、ローカルメモリ12、データ送信部13、及びデータ受信部14を統括制御する。ローカルメモリ12は、データやプログラムなどを格納する。
【0017】
データ送信部13は、情報処理部11に基づいて信号処理されたデータ、或いはローカルメモリ12から読み出されたデータやプログラムなどを共有メモリ31にデータ転送する。データ送信部13は、情報処理部11に基づいてデータ受信側の情報処理部21に対してデータ転送の完了通知を送信し、フラグ32の更新を行う。
【0018】
データ受信部14は、データ送信側の情報処理部21からのデータ転送の完了通知とフラグ32により、データ受信側の情報処理部11にデータ転送の完了通知を送信し、フラグ32の更新を行う。
【0019】
情報処理装置2には、情報処理部21、ローカルメモリ22、データ送信部23、及びデータ受信部24が設けられる。情報処理部21は、各種情報処理を実行し、ローカルメモリ22、データ送信部23、及びデータ受信部24を統括制御する。ローカルメモリ22は、データやプログラムなどを格納する。
【0020】
データ送信部23は、情報処理部21に基づいて信号処理されたデータ、或いはローカルメモリ22から読み出されたデータやプログラムなどを共有メモリ31にデータ転送する。データ送信部23は、情報処理部21に基づいてデータ受信側の情報処理部11に対してデータ転送の完了通知を送信し、フラグ32の更新を行う。
【0021】
データ受信部24は、データ送信側の情報処理部11からのデータ転送の完了通知とフラグ32により、データ受信側の情報処理部21にデータ転送の完了通知を送信し、フラグ32の更新を行う。
【0022】
ここで、情報処理部11、ローカルメモリ12、データ送信部13、及びデータ受信部14は、例えばプロセッサを構成する。情報処理部21、ローカルメモリ22、データ送信部23、及びデータ受信部24は、例えばプロセッサを構成する。情報処理部11と情報処理部21は、例えばCPU(Central Processing Unit)である。
【0023】
次に、情報処理システムでのデータ転送について図2及び図3を参照して説明する。図2は情報処理システムの共有メモリへのデータ書き込み動作を示すフローチャートである。図3は情報処理システムの共有メモリからデータ読み出し動作を示すフローチャートである。ここでは、共有部3を介して情報処理装置1から情報処理装置2へ連続したデータ転送が行われる。
【0024】
図2に示すように、まず、データ送信側の情報処理部11はデータ送信部13を介して転送すべきデータを共有部3の共有メモリ31に送信し、共有メモリ31にこのデータの書き込みを行う(ステップS1)。
【0025】
次に、書き込みが終了すると情報処理部11はデータ送信部13に対してデータの書き込み完了通知を送信する(ステップS2)。
【0026】
続いて、データ送信部13は情報処理部11からデータの書き込み完了通知を受信すると書き込みフラグ41の内容を確認する。この確認では、転送されるデータに対応するフラグがアサートされているか、他のデータに対応するフラグがデアサートされているかを確認する(ステップS3)。
【0027】
そして、この確認後、データ送信部13はフラグのステータスにしたがって、データ受信側の情報処理装置2に対してデータの書き込み完了通知を送信する(ステップS4)。
【0028】
次に、データ送信部13は転送したデータに対応する書き込みフラグ41の更新を行う(ステップS5)。
【0029】
続いて、データ送信部13はフラグのアサート或いはデアサートの判定を行う(ステップS6)。
【0030】
転送されるデータに対応するフラグがアサートされている場合、すでに対応するデータが存在することを示している。このため、直ちに、データ送信部13は情報処理部11にエラーを返す(ステップS7)。
【0031】
転送されるデータに対応するフラグがデアサートされている場合、書き込みフラグ41では転送されるデータに対応するフラグがアサートされる(ステップS8)。
【0032】
そして、データ送信部13はフラグの全てがデアサートされているかの判定を行う(ステップS9)。フラグの全てがデアサートされていない場合、すでに対応するデータが存在することを示いる。このため、情報処理部11にエラーを返す。フラグの全てがデアサートされている場合、データ送信部13は受信側のデータ受信部24にデータの書き込み完了通知を送信する(ステップS10)。
【0033】
最初のデータ転送に続いて、2番目以降のデータ転送についてもステップ1乃至10を繰り返し実行する。
【0034】
次に、繰り返し作業終了後(即ち、最後のデータ転送或いは所定回数のデータ転送後でのデータ送信部13からデータの書き込み完了通知が行われた後)、データ受信側の情報処理装置2では、データ受信側のデータ受信部24が情報処理部21に対してデータ送信部13からデータ転送が完了したと判断し、情報処理部21にデータの書き込み完了通知処理を行う。どのデータがデータ転送されたかについては、データ受信部24は書き込みフラグ41をチェックすることにより判別する(ステップS11)。
【0035】
続いて、データ受信部24はデータの書き込み完了通知を行ったデータに対応するフラグを更新する。ここで言う更新とは、データの書き込み完了通知を行ったデータに対応するフラグをデアサートすることである(ステップS12)。
【0036】
このように、連続してデータ転送が実行される場合、データ転送毎にデータ送信側の情報処理装置1からデータ受信側の情報処理装置2に対して、その都度データの書き込み完了通知を行っていない。このため、データ受信側の情報処理部21で発生するデータの書き込み完了通知をデータ転送毎に行う必要がない。この結果、データ転送で発生するデータ受信側の情報処理部21のオーバーヘッドを削減でき、情報処理装置1と情報処理装置2の間のデータ転送を高速化することができる。
【0037】
図3に示すように、データ送信側の情報処理装置1からデータがデータ転送され、共有メモリ31にデータが書き込まれた後、情報処理装置1のデータ送信部13は読み出しフラグ42を更新する。この更新では、転送されたデータに対応するフラグをアサートする。
【0038】
受信側の情報処理部21は、データ転送され、共有メモリ31に書き込まれたデータを共有メモリ31から読み出す。データ受信部24は読み出しフラグ42の更新を行う(ステップS21)。
【0039】
次に、情報処理部21はデータ受信部24にデータの読み出し完了通知を送信する(ステップS22)。
【0040】
続いて、データ受信部24はデータの読み出し完了通知を受信後、情報処理部21が読み出したデータに対応する読み出しフラグ42を更新する(ステップS23)。
【0041】
そして、データ受信部24は読み出しフラグ42が全てデアサートされているかの判定を行う(ステップ24)。全てデアサートされている場合、データ受信側の情報処理装置2からデータ送信側の情報処理装置1にデータの読み出し完了通知を送信する(ステップS25)。
【0042】
全てデアサートされていない場合、データ転送され、共有メモリ31に書き込まれたデータの読み出し作業が終了されるまで、ステップ21乃至24が繰り返し実行される。
【0043】
このように、データ受信側の情報処理装置2で読み出されたデータ毎に、データ受信側の情報処理装置2からデータ送信側の情報処理装置1にデータの読み出し完了通知を送信していない。この結果、データ送信側の情報処理装置1は、データ転送でのオーバーヘッドを抑制でき、他の処理にリソースを適用することができ情報処理装置システム90の処理速度を高速化することができる。
【0044】
ここでは、全てのデータのデータ転送が終了するまで実行しているが、所定回数のデータ転送終了後にデータ受信側の情報処理装置2からデータ送信側の情報処理装置1にデータの読み出し完了通知を送信してもよい。
【0045】
上述したように、本実施例の情報処理システムでは、情報処理装置1、情報処理装置2、及び共有部3が設けられる。情報処理システム90では、情報処理装置1及び情報処理装置2の間の共有部3に設けられる共有メモリ31を介して、情報処理装置1と報処理装置2の間のデータ転送を行っている。連続したデータ転送の場合、データ転送が終了後或いは所定回数のデータ転送が終了後に転送データの完了通知を送信する。
【0046】
このため、情報処理装置1及び情報処理装置2ではデータ転送でのオーバーヘッドを抑制することができ、情報処理装置システム90の処理速度を高速化することができる。
【0047】
なお、本実施例では、予め決められたデータの個数の範囲内で、共有メモリ31を使い回すことを想定しているが、その個数については必ずしも限定しない。フラグ32には、書き込みフラグ41と読み出しフラグ42を設けているが、必ずしも両方が必須というわけではない。また、情報処理装置にデータ転送を高速化するためにDMA(Direct Memory Access)コントローラを設けてもよい。
【実施例2】
【0048】
次に、本発明の実施例2に係る情報処理システムについて、図面を参照して説明する。図4は情報処理システムを示す概略ブロック図である。本実施例では、DMAコントローラを用いて連続したデータ転送を行っている。
【0049】
図4に示すように、情報処理システム91には、メディアプロセッサ50、メディアアクセレレータ60、及びベースバンドモデム61が設けられる。情報処理システム91は、例えば移動体情報機器に適用される。メディアプロセッサ50は、例えば種々のメディア情報処理を行う。メディアアクセレレータ60は、例えばオーディオ及びビデオ処理を行う。ベースバンドモデム61は、例えばベースバンド処理を行う。
【0050】
メディアプロセッサ50には、共有部3a、メインプロセッサ51、専用プロセッサ52、DMAコントローラ53、主メモリ55、及びバス57が設けられる。共有部3a、メインプロセッサ51、専用プロセッサ52、DMAコントローラ53、及び主メモリ55は、バス57を介して接続される。
【0051】
情報処理装置としてのメインプロセッサ51は、各種情報処理を行う。メインプロセッサ51は、共有部3a、専用プロセッサ52、DMAコントローラ53、及び主メモリ55を統括制御するマスターデバイスである。メインプロセッサ51には、ローカルメモリ12a、データ送信部13a、データ受信部14a、及びCPU15aが設けられる。
【0052】
CPU15aは、各種情報処理を実行し、ローカルメモリ12a、データ送信部13a、及びデータ受信部14aを統括制御する。ローカルメモリ12aは、データやプログラムなどを格納する。
【0053】
CPU15aに基づいて信号処理されたデータ、或いはローカルメモリ12aから読み出されたデータやプログラムなどは、データ送信部13aを介して共有メモリ31aにデータ転送される。
【0054】
データ受信部14aは、共有メモリ31aから読み出され、転送されるデータが入力される。
【0055】
情報処理装置としての専用プロセッサ52は、専用の情報処理を行う。専用プロセッサ52は、スレーブデバイスである。専用プロセッサ52には、ローカルメモリ22a、データ送信部23a、データ受信部24a、及びCPU25aが設けられる。
【0056】
CPU25aは、専用の情報処理を実行し、ローカルメモリ22a、データ送信部23a、及びデータ受信部24aを統括制御する。ローカルメモリ22aは、データやプログラムなどを格納する。
【0057】
CPU25aに基づいて信号処理されたデータ、或いはローカルメモリ22aから読み出されたデータやプログラムなどは、データ送信部23aを介して共有メモリ31aにデータ転送される。
【0058】
データ受信部24aは、共有メモリ31aから読み出され、転送されるデータが入力される。
【0059】
共有部3aには、共有メモリ31aとフラグ32aが設けられる。共有メモリ31aは、メインプロセッサ51及び専用プロセッサ52のいずれか一方からDMAコントローラ53に基づいて転送される情報を書き込み、書き込まれた情報をメインプロセッサ51及び専用プロセッサ52のいずれか他方にデータ転送する。
【0060】
フラグ32aは、データ転送時にどのデータが転送を完了したのかを示すものであり、メインプロセッサ51と専用プロセッサ52の間で転送されるデータの個数分のステータスを保持している。つまり、フラグ32aはデータ転送時でのステータスフラグとして用いられる。フラグ32aには、書き込みフラグ41aと読み出しフラグ42aが設けられる。
【0061】
DMAコントローラ53は、メインプロセッサ51及び専用プロセッサ52の間に設けられる共有メモリ31aのデータ転送を行う。DMAコントローラ53は、メインプロセッサ51のローカルメモリ12aと専用プロセッサ52のローカルメモリ22aのデータ転送を行う。DMAコントローラ53は、メインプロセッサ51と専用プロセッサ52の間のデータ書き込み完了通知及びデータ読み出し完了通知を行う。DMAコントローラ53は、フラグ32aの更新を行う。
【0062】
主メモリ55は、ローカルメモリ12a及び22aよりも容量が大きく、ローカルメモリ12a及びローカルメモリ22aよりも処理速度が遅い。主メモリ55は、例えばメディプロセッサ50に送信される大容量のデータなどを格納する。また、格納されるデータをメディプロセッサ50の外部に送信する。
【0063】
次に、情報処理システムでのデータ転送について図5を参照して説明する。図5は情報処理システムのデータ転送動作を示すフローチャートである。ここでは、DMAコントローラ53を用いて、共有部3aを介してメインプロセッサ51から専用プロセッサ52に連続したデータ転送が行われる。
【0064】
図5に示すように、まず、データ送信側のCPU15aは、データ送信部13aに対してデータ転送依頼を行う。この場合、少なくともメインプロセッサ51のローカルメモリ12aに置かれているデータ位置と転送サイズを指定する(ステップS111)。
【0065】
次に、データ受信部13aは、CPU15aからデータ転送依頼を受信する。データ受信部13aは、DMAコントローラ53に対してデータ転送依頼を行う。この場合、少なくともメインプロセッサ51のローカルメモリ12aに置かれているデータ位置と転送サイズを指定する(ステップS112)。
【0066】
続いて、DMAコントローラ53は、データ送信側のデータ送信部13aからの依頼に基づいて、データ送信側のローカルメモリ12aに格納されるデータを共有メモリ31aにデータ転送する(ステップS113)。
【0067】
そして、DMAコントローラ53は、データ転送終了後、転送されるデータに対応する書き込みフラグ41aをアサートする(ステップS114)。
【0068】
次に、DMAコントローラ53は、フラグが全てデアサートされているかの判定を行う(ステップS115)。DMAコントローラ53は、フラグが全てデアサートされていない場合は、データ受信側の専用プロセッサ52のデータ受信部24aに対して、データの書き込み完了通知を行わない。
【0069】
DMAコントローラ53は、直前にアサートしたフラグ以外のフラグが全てデアサートされている場合、データ受信側のデータ受信部24aに対して、データの書き込み完了通知を送信する(ステップS116)。
【0070】
最初のデータ転送に続いて、2番目以降のデータ転送についてもステップ111乃至116を繰り返し実行する。
【0071】
次に、繰り返し作業終了後(即ち、最後のデータ転送或いは所定回数のデータ転送後でのDMAコントローラ53からデータの書き込み完了通知が行われた後)、DMAコントローラ53は、データの書き込み完了通知をデータ受信側のCPU25aに送信する。このとき、DMAコントローラ53は、アサートされるフラグに対応したデータがデータ転送されることをデータの書き込み完了通知として知らせる(ステップS117)。
【0072】
続いて、DMAコントローラ53は、書き込み完了通知したデータに対応する書き込みフラグ41aをデアサートする(ステップS118)。
【0073】
このように、DMAコントローラ53を用いて連続してデータ転送が実行される場合、データ転送毎にDMAコントローラ53からデータ受信側の専用プロセッサ52に対して、その都度データの書き込み完了通知を送信していない。この結果、データ転送で発生するデータ受信側の専用プロセッサ52のオーバーヘッドを削減でき、メインプロセッサ51と専用プロセッサ52の間のデータ転送を高速化することができる。
【0074】
ここでは、共有メモリ31aにデータ転送され、書き込まれたデータの読み出しについては、図示及び説明を省略している。この場合、共有メモリ31aから読み出されたデータがDMAコントローラ53を用いて連続してデータ転送(例えば、共有メモリ31aから専用プロセッサ52にデータ転送)される。DMAコントローラ53は、データ受信側の専用プロセッサ52で読み出されたデータ毎に、データ送信側のメインプロセッサ51に対して、その都度データの読み出し完了通知を送信していない。この結果、データ送信側のメインプロセッサ51は、データ転送でのオーバーヘッドを抑制でき、他の処理にリソースを適用することができ情報処理装置システム91の処理速度を高速化することができる。
【0075】
上述したように、本実施例の情報処理システムでは、メディアプロセッサ50、メディアアクセレレータ60、及びベースバンドモデム61が設けられる。メディアプロセッサ50には、共有部3a、メインプロセッサ51、専用プロセッサ52、DMAコントローラ53、主メモリ55、及びバス57が設けられる。メディアプロセッサ50では、メインプロセッサ51及び専用プロセッサ52の間の共有部3aに設けられる共有メモリ31aを介して、DMAコントローラ53がメインプロセッサ51及び専用プロセッサ52の間のデータ転送を行っている。連続したデータ転送の場合、データ転送が終了後或いは所定回数のデータ転送が終了後にDMAコントローラ53が転送データの完了通知を送信する。
【0076】
このため、メインプロセッサ51及び専用プロセッサ52ではデータ転送でのオーバーヘッドを抑制することができ、情報処理装置システム91の処理速度を高速化することができる。
【0077】
なお、本実施例では、書き込みフラグ41a及び読み出しフラグ42aを共有部3aに設けているが、代わりにDMAコントローラ53に設けてもよい。また、メディアプロセッサ50に1つの専用プロセッサ52を設けているが、代わりにメディアプロセッサ50に専用プロセッサを複数個設けてもよい。
【実施例3】
【0078】
次に、本発明の実施例3に係る情報処理システムについて、図面を参照して説明する。図6は情報処理システムを示す概略ブロック図である。本実施例では、疎結合型マルチプロセッサでのデータ転送完了通知を抑制している。
【0079】
図6に示すように、情報処理システム92には、情報処理プロセッサ70、情報処理プロセッサ71、共有メモリ72、DMAコントローラ73、主メモリ74、制御プロセッサ75、主バス76、ローカルバス77、及びローカルバス78が設けられる。
【0080】
情報処理システム92は、疎結合型マルチプロセッサを有する情報処理システムである。疎結合型マルチプロセッサでは、情報処理プロセッサ70と情報処理プロセッサ71の間に共有メモリ72が配置される。ここでは、情報処理プロセッサを2つ配置しているが必ずしもこれに限定されるものではない。4つ以上の偶数個の情報処理プロセッサを配置してもよい。その場合、2つの情報処理プロセッサ間に共有メモリをそれぞれ配置するのが好ましい。
【0081】
主バス76は、情報処理プロセッサ70、情報処理プロセッサ71、共有メモリ72、DMAコントローラ73、主メモリ74、及び制御プロセッサ75を接続する。ローカルバス77は、情報処理プロセッサ70及び共有メモリ72を接続する。ローカルバス78は、情報処理プロセッサ71及び共有メモリ72を接続する。
【0082】
共有メモリ72には、フラグ84が設けられる。フラグ84には、書き込みフラグ85と読み出しフラグ86が設けられる。情報処理プロセッサ70には、CPU80a、ローカルメモリ81a、データ送信部82a、及びデータ受信部83aが設けられる。情報処理プロセッサ71には、CPU80b、ローカルメモリ81b、データ送信部82b、及びデータ受信部83bが設けられる。
【0083】
ここで、情報処理装置としての情報処理プロセッサ70及び情報処理プロセッサ71は、実施例2の専用プロセッサと同様な構成及び動作を行う。共有メモリ72は、実施例2の共有部と同様な動作を行う。主メモリ74は、実施例2の主メモリと同様な構成及び動作を行う。このため、これらの構成及び動作の説明を省略する。
【0084】
制御プロセッサ75は、情報処理プロセッサ70、情報処理プロセッサ71、共有メモリ72、DMAコントローラ73、及び主メモリ74を統括制御するマスターデバイスである。
【0085】
DMAコントローラ73は、制御プロセッサ75の指示に基づいてデータ転送、データ転送の完了通知、及びフラグの更新などを行う。具体的には、DMAコントローラ73は、情報処理プロセッサ70及び情報処理プロセッサ71の間に設けられる共有メモリ72のデータ転送を行う。DMAコントローラ73は、情報処理プロセッサ70のローカルメモリ81aと情報処理プロセッサ71のローカルメモリ81bのデータ転送を行う。DMAコントローラ73は、情報処理プロセッサ70と情報処理プロセッサ71の間のデータ書き込み完了通知及びデータ読み出し完了通知を行う。DMAコントローラ74は、フラグ84の更新を行う。
【0086】
DMAコントローラ73による情報処理プロセッサ70及び情報処理プロセッサ71の間のデータ転送は実施例2と同様に行われるので説明を省略する。
【0087】
上述したように、本実施例の情報処理システムでは、情報処理プロセッサ70、情報処理プロセッサ71、共有メモリ72、DMAコントローラ73、主メモリ74、制御プロセッサ75、主バス76、ローカルバス77、及びローカルバス78が設けられる。情報処理プロセッサ70及び情報処理プロセッサ71の間に設けられる共有メモリ72を介して、DMAコントローラ73が情報処理プロセッサ70及び情報処理プロセッサ71の間のデータ転送を行っている。連続したデータ転送の場合、データ転送が終了後或いは所定回数のデータ転送が終了後にDMAコントローラ73が転送データの完了通知を送信する。
【0088】
このため、情報処理プロセッサ70及び情報処理プロセッサ71ではデータ転送でのオーバーヘッドを抑制することができ、情報処理装置システム92の処理速度を高速化することができる。
【0089】
本発明は、上記実施例に限定されるものではなく、発明の趣旨を逸脱しない範囲で、種々、変更してもよい。
【0090】
実施例では、連続したデータ転送を実行しているが、必ずしもこれに限定されない。連続したデータ転送の間に、適宜、割り込みやポーリングなどを挿入させてもよい。
【0091】
本発明は、以下の付記に記載されているような構成が考えられる。
(付記1) 第1の情報処理部、第1のローカルメモリ、第1データ送信部、及び第1のデータ受信部を有する第1の情報処理装置と、第2の情報処理部、第2のローカルメモリ、第2データ送信部、及び第2のデータ受信部を有する第2の情報処理装置と、前記第1及び第2の情報処理装置の間に設けられ、共有メモリ、書き込みフラグ、及び読み出しフラグを有する共有部とを具備し、前記第1及び第2のローカルメモリはデータを格納し、前記共有メモリは前記第1及び第2の情報処理装置のいずれか一方から転送されるデータを書き込み、書き込まれたデータを前記第1及び第2の情報処理装置のいずれか他方に転送し、前記書き込みフラグは前記共有メモリへのデータの書き込み完了を示し、前記読み出しフラグは前記共有メモリからデータの読み出し完了を示し、前記共有メモリへ連続したデータの書き込みを実行する場合、データ受信側の前記第1及び第2のデータ受信部のいずれか一方が転送されたデータの書き込み完了通知をデータ受信側の前記第1及び第2の情報処理部のいずれか一方に送信するまでは、データ送信側の前記第1及び第2のデータ送信部いずれか他方がデータ受信側の前記第1及び第2のデータ受信部のいずれか一方にデータの書き込み完了通知を送信しないことを情報処理システム。
【0092】
(付記2) 第1のCPU、第1データ送信部、及び第1のデータ受信部を有するメインプロセッサと、第2のCPU、第2データ送信部、及び第2のデータ受信部を有する専用プロセッサと、共有メモリ、書き込みフラグ、及び読み出しフラグを有する共有部と、データ転送処理を実行するDMAコントローラと、前記メインプロセッサ、前記専用プロセッサ、前記共有部、前記DMAコントローラを接続するバスとを具備し、前記共有メモリは前記DMAコントローラに基づいて前記メインプロセッサ及び前記専用プロセッサのいずれか一方から転送されるデータを書き込み、書き込まれたデータを前記メインプロセッサ及び前記専用プロセッサのいずれか他方に転送し、前記書き込みフラグは前記共有メモリへのデータの書き込み完了を示し、前記読み出しフラグは前記共有メモリからデータの読み出し完了を示し、前記共有メモリへ連続したデータの書き込みを実行する場合、データ受信側の前記第1及び第2のデータ受信部のいずれか一方が転送されたデータの書き込み完了通知をデータ受信側の前記第1及び第2のCPUのいずれか一方に送信するまでは、前記DMAコントローラがデータ受信側の前記第1及び第2のデータ受信部のいずれか一方にデータの書き込み完了通知を送信しない情報処理システム。
【符号の説明】
【0093】
1、2 情報処理装置
3、3a 共有部
11、21 情報処理部
12、12a、22、22a、81a、81b ローカルメモリ
13、13a、23、23a、82a、82b データ送信部
14、14a、24、24a、83a、83b データ受信部
15a、25a、80a、80b CPU
31、31a、72 共有メモリ
32、32a、84 フラグ
41、41a、85 書き込みフラグ
42、42a、86 読み出しフラグ
メディアプロセッサ
51 メインプロセッサ
52 専用プロセッサ
53、73 DMAコントローラ
55、74 主メモリ
57 バス
60 メディアアクセレレータ
61 ベースバンドモデム
70、71 情報処理プロセッサ
75 制御プロセッサ
76 主バス
77、78 ローカルバス
90〜92 情報処理システム

【特許請求の範囲】
【請求項1】
第1の情報処理部及びデータ送信部を有する第1の情報処理装置と、
第2の情報処理部及びデータ受信部を有する第2の情報処理装置と、
前記第1及び第2の情報処理装置の間に設けられ、共有メモリ、書き込みフラグ、及び読み出しフラグを有する共有部と、
を具備し、
前記共有メモリは前記第1の情報処理装置から転送されるデータを書き込み、書き込まれたデータを前記第2の情報処理装置に転送し、
前記書き込みフラグは前記共有メモリへのデータの書き込み完了を示し、
前記読み出しフラグは前記共有メモリからデータの読み出し完了を示し、
前記共有メモリへ連続したデータの書き込みを実行する場合、
前記データ受信部が転送されたデータの書き込み完了通知を前記第2の情報処理部に送信するまでは、前記データ送信部が前記データ受信部にデータの書き込み完了通知を送信しない
ことを特徴とする情報処理システム。
【請求項2】
前記データ受信部は、前記共有メモリに転送され、書き込まれたデータの読み出しが全て完了した場合、或いは前記共有メモリに転送され、データの読み出しが所定回数に達した場合に前記データ送信部にデータの読み出し完了通知を送信することを特徴とする請求項1に記載の情報処理システム。
【請求項3】
第1の情報処理部及びデータ送信部を有する第1の情報処理装置と、
第2の情報処理部及びデータ受信部を有する第2の情報処理装置と、
共有メモリ、書き込みフラグ、及び読み出しフラグを有する共有部と、
データ転送処理を実行するDMAコントローラと、
を具備し、
前記共有メモリは前記DMAコントローラに基づいて前記第1の情報処理装置から転送されるデータを書き込み、書き込まれたデータを前記第2の情報処理装置に転送し、
前記書き込みフラグは前記共有メモリへのデータの書き込み完了を示し、
前記読み出しフラグは前記共有メモリからデータの読み出し完了を示し、
前記共有メモリへ連続したデータの書き込みを実行する場合、
前記データ受信部が転送されたデータの書き込み完了通知を前記第2の情報処理部に送信するまでは、前記DMAコントローラが前記データ受信部にデータの書き込み完了通知を送信しない
ことを特徴とする情報処理システム。
【請求項4】
前記DMAコントローラは、前記共有メモリに転送され、書き込まれたデータの読み出しが全て完了した場合、或いは前記共有メモリに転送され、データの読み出しが所定回数に達した場合に前記データ送信部にデータの読み出し完了通知を送信することを特徴とする請求項3に記載の情報処理システム。
【請求項5】
第1の情報処理部、第1データ送信部、及び第1のデータ受信部を有する第1の情報処理装置と、
第2の情報処理部、第2データ送信部、及び第2のデータ受信部を有する第2の情報処理装置と、
前記第1及び第2の情報処理装置の間に設けられ、共有メモリ、書き込みフラグ、及び読み出しフラグを有する共有部と、
を具備し、
前記共有メモリは前記第1及び第2の情報処理装置のいずれか一方から転送されるデータを書き込み、書き込まれたデータを前記第1及び第2の情報処理装置のいずれか他方に転送し、
前記書き込みフラグは前記共有メモリへのデータの書き込み完了を示し、
前記読み出しフラグは前記共有メモリからデータの読み出し完了を示し、
前記共有メモリへ連続したデータの書き込みを実行する場合、
データ受信側の前記第1及び第2のデータ受信部のいずれか一方が転送されたデータの書き込み完了通知をデータ受信側の前記第1及び第2の情報処理部のいずれか一方に送信するまでは、データ送信側の前記第1及び第2のデータ送信部いずれか他方がデータ受信側の前記第1及び第2のデータ受信部のいずれか一方にデータの書き込み完了通知を送信しない
ことを特徴とする情報処理システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2011−107922(P2011−107922A)
【公開日】平成23年6月2日(2011.6.2)
【国際特許分類】
【出願番号】特願2009−261471(P2009−261471)
【出願日】平成21年11月17日(2009.11.17)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】