(57)【要約】【課題】データ転送時に発生するデータの書き込み完了通知及びデータの読み出し完了通知を抑制する。【解決手段】情報処理システム９０には、情報処理装置１、情報処理装置２、及び共有部３が設けられる。情報処理システム９０では、情報処理装置１及び情報処理装置２の間の共有部３に設けられる共有メモリ３１を介して、情報処理装置１と報処理装置２の間のデータ転送を行っている。連続したデータ転送の場合、データ転送が終了後或いは所定回数のデータ転送が終了後に転送データの完了通知が送信される。【選択図】  図１
2011107922.tif 000002
【特許請求の範囲】
【請求項１】
第１の情報処理部及びデータ送信部を有する第１の情報処理装置と、
第２の情報処理部及びデータ受信部を有する第２の情報処理装置と、
前記第１及び第２の情報処理装置の間に設けられ、共有メモリ、書き込みフラグ、及び読み出しフラグを有する共有部と、
を具備し、
前記共有メモリは前記第１の情報処理装置から転送されるデータを書き込み、書き込まれたデータを前記第２の情報処理装置に転送し、
前記書き込みフラグは前記共有メモリへのデータの書き込み完了を示し、
前記読み出しフラグは前記共有メモリからデータの読み出し完了を示し、
前記共有メモリへ連続したデータの書き込みを実行する場合、
前記データ受信部が転送されたデータの書き込み完了通知を前記第２の情報処理部に送信するまでは、前記データ送信部が前記データ受信部にデータの書き込み完了通知を送信しない
ことを特徴とする情報処理システム。
【請求項２】
前記データ受信部は、前記共有メモリに転送され、書き込まれたデータの読み出しが全て完了した場合、或いは前記共有メモリに転送され、データの読み出しが所定回数に達した場合に前記データ送信部にデータの読み出し完了通知を送信することを特徴とする請求項１に記載の情報処理システム。
【請求項３】
第１の情報処理部及びデータ送信部を有する第１の情報処理装置と、
第２の情報処理部及びデータ受信部を有する第２の情報処理装置と、
共有メモリ、書き込みフラグ、及び読み出しフラグを有する共有部と、
データ転送処理を実行するＤＭＡコントローラと、
を具備し、
前記共有メモリは前記ＤＭＡコントローラに基づいて前記第１の情報処理装置から転送されるデータを書き込み、書き込まれたデータを前記第２の情報処理装置に転送し、
前記書き込みフラグは前記共有メモリへのデータの書き込み完了を示し、
前記読み出しフラグは前記共有メモリからデータの読み出し完了を示し、
前記共有メモリへ連続したデータの書き込みを実行する場合、
前記データ受信部が転送されたデータの書き込み完了通知を前記第２の情報処理部に送信するまでは、前記ＤＭＡコントローラが前記データ受信部にデータの書き込み完了通知を送信しない
ことを特徴とする情報処理システム。
【請求項４】
前記ＤＭＡコントローラは、前記共有メモリに転送され、書き込まれたデータの読み出しが全て完了した場合、或いは前記共有メモリに転送され、データの読み出しが所定回数に達した場合に前記データ送信部にデータの読み出し完了通知を送信することを特徴とする請求項３に記載の情報処理システム。
【請求項５】
第１の情報処理部、第１データ送信部、及び第１のデータ受信部を有する第１の情報処理装置と、
第２の情報処理部、第２データ送信部、及び第２のデータ受信部を有する第２の情報処理装置と、
前記第１及び第２の情報処理装置の間に設けられ、共有メモリ、書き込みフラグ、及び読み出しフラグを有する共有部と、
を具備し、
前記共有メモリは前記第１及び第２の情報処理装置のいずれか一方から転送されるデータを書き込み、書き込まれたデータを前記第１及び第２の情報処理装置のいずれか他方に転送し、
前記書き込みフラグは前記共有メモリへのデータの書き込み完了を示し、
前記読み出しフラグは前記共有メモリからデータの読み出し完了を示し、
前記共有メモリへ連続したデータの書き込みを実行する場合、
データ受信側の前記第１及び第２のデータ受信部のいずれか一方が転送されたデータの書き込み完了通知をデータ受信側の前記第1及び第２の情報処理部のいずれか一方に送信するまでは、データ送信側の前記第１及び第２のデータ送信部いずれか他方がデータ受信側の前記第１及び第２のデータ受信部のいずれか一方にデータの書き込み完了通知を送信しない
ことを特徴とする情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システムに関する。
【背景技術】
【０００２】
プロセッサなどの情報処理装置を複数有する情報処理システムでは、各情報処理装置で特有のドメインを保持している。情報処理装置間でデータの共有を行う場合、双方のドメインである情報処理部のプロトコルを規定し、各情報処理装置からアクセスが可能な共有メモリを介して通信する方法が知られている。共有メモリを用いたデータ転送では、受信側のデータの読み出し完了通知を受けることなく、送信側からデータの書き込みを行い情報処理装置間のデータ転送の高速度化を図っている（例えば、特許文献１参照。）。
【０００３】
ところが、特許文献１に記載される情報処理システムでは、共有メモリを用いて連続したデータ転送を実行する場合、データの受信側でのデータの読み出し完了通知によりデータの送信側の処理を迅速にできないという問題点がある。このため、情報処理装置間のデータ転送時に発生するオーバーヘッドを削減することができない。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１１６５６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、データ転送時に発生するデータの書き込み完了通知及びデータの読み出し完了通知を抑制することができる情報処理システムを提供することにある。
【課題を解決するための手段】
【０００６】
本発明の一態様の情報処理システムは、第１の情報処理部及びデータ送信部を有する第１の情報処理装置と、第２の情報処理部及びデータ受信部を有する第２の情報処理装置と、前記第１及び第２の情報処理装置の間に設けられ、共有メモリ、書き込みフラグ、及び読み出しフラグを有する共有部とを具備し、前記共有メモリは前記第１の情報処理装置から転送されるデータを書き込み、書き込まれたデータを前記第２の情報処理装置に転送し、前記書き込みフラグは前記共有メモリへのデータの書き込み完了を示し、前記読み出しフラグは前記共有メモリからデータの読み出し完了を示し、前記共有メモリへ連続したデータの書き込みを実行する場合、前記データ受信部が転送されたデータの書き込み完了通知を前記第２の情報処理部に送信するまでは、前記データ送信部が前記データ受信部にデータの書き込み完了通知を送信しないことを特徴とする。
【０００７】
更に、本発明の他態様の情報処理システムは、第１の情報処理部及びデータ送信部を有する第１の情報処理装置と、第２の情報処理部及びデータ受信部を有する第２の情報処理装置と、共有メモリ、書き込みフラグ、及び読み出しフラグを有する共有部と、データ転送処理を実行するＤＭＡコントローラとを具備し、前記共有メモリは前記ＤＭＡコントローラに基づいて前記第１の情報処理装置から転送されるデータを書き込み、書き込まれたデータを前記第２の情報処理装置に転送し、前記書き込みフラグは前記共有メモリへのデータの書き込み完了を示し、前記読み出しフラグは前記共有メモリからデータの読み出し完了を示し、前記共有メモリへ連続したデータの書き込みを実行する場合、前記データ受信部が転送されたデータの書き込み完了通知を前記第２の情報処理部に送信するまでは、前記ＤＭＡコントローラが前記データ受信部にデータの書き込み完了通知を送信しないことを特徴とする。
【発明の効果】
【０００８】
本発明によれば、データ転送時に発生するデータの書き込み完了通知及びデータの読み出し完了通知を抑制することができる情報処理システムを提供することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施例１に係る情報処理システムを示す概略ブロック図。
【図２】本発明の実施例１に係る情報処理システムの共有メモリへのデータ書き込み動作を示すフローチャート。
【図３】本発明の実施例１に係る情報処理システムの共有メモリからデータ読み出し動作を示すフローチャート。
【図４】本発明の実施例２に係る情報処理システムを示す概略ブロック図。
【図５】本発明の実施例２に係る情報処理システムのデータ転送動作を示すフローチャート。
【図６】本発明の実施例３に係る情報処理システムを示す概略ブロック図。
【発明を実施するための形態】
【００１０】
以下本発明の実施例について図面を参照しながら説明する。
【実施例１】
【００１１】
まず、本発明の実施例１に係る情報処理システムについて、図面を参照して説明する。図１は情報処理システムを示す概略ブロック図である。本実施例では、情報処理装置でのデータ転送の完了通知を抑制している。
【００１２】
図１に示すように、情報処理システム９０には、情報処理装置１、情報処理装置２、及び共有部３が設けられる。情報処理システム９０では、情報処理装置１及び情報処理装置２の間の共有部３に設けられる共有メモリ３１を介して、情報処理装置１と報処理装置２の間のデータ転送を高速に行っている。ここでは、本発明の趣旨を簡略に説明するために、情報処理装置１、情報処理装置２、及び共有部３を記載しているが、情報処理装置の数が２つに限定されるものではない。また、共有部の数が１つに限定されるものではない。
【００１３】
共有部３は、情報処理装置１と報処理装置２の間に設けられる。共有部３には、共有メモリ３１とフラグ３２が設けられる。情報処理装置１と共有部３の間、共有部３と情報処理装置２の間は、例えば、バスなどでそれぞれ接続され、バスを介して情報のやりとりが行われる。
【００１４】
共有メモリ３１は、情報処理装置１及び報処理装置２のいずれか一方から転送される情報を書き込み、書き込まれた情報を情報処理装置１及び報処理装置２のいずれか他方にデータ転送する。ここで、データ転送とは情報処理装置で情報処理されたデータ、情報処理装置内に格納されているプログラムやデータなどを転送することをいう。
【００１５】
フラグ３２は、データ転送時にどのデータが転送を完了したのかを示すものであり、情報処理装置１と報処理装置２間で転送されるデータの個数分のステータスを保持している。つまり、フラグ３２はデータ転送時でのステータスフラグとして用いられる。フラグ３２には、書き込みフラグ４１と読み出しフラグ４２が設けられる。書き込みフラグ４１は、データの書き込み完了を示すデータ書き込みステータスフラグとして用いられる。読み出しフラグ４２は、データの読み出し完了を示すデータ読み出しステータスフラグとして用いられる。
【００１６】
情報処理装置１には、情報処理部１１、ローカルメモリ１２、データ送信部１３、及びデータ受信部１４が設けられる。情報処理部１１は、各種情報処理を実行し、ローカルメモリ１２、データ送信部１３、及びデータ受信部１４を統括制御する。ローカルメモリ１２は、データやプログラムなどを格納する。
【００１７】
データ送信部１３は、情報処理部１１に基づいて信号処理されたデータ、或いはローカルメモリ１２から読み出されたデータやプログラムなどを共有メモリ３１にデータ転送する。データ送信部１３は、情報処理部１１に基づいてデータ受信側の情報処理部２１に対してデータ転送の完了通知を送信し、フラグ３２の更新を行う。
【００１８】
データ受信部１４は、データ送信側の情報処理部２１からのデータ転送の完了通知とフラグ３２により、データ受信側の情報処理部１１にデータ転送の完了通知を送信し、フラグ３２の更新を行う。
【００１９】
情報処理装置２には、情報処理部２１、ローカルメモリ２２、データ送信部２３、及びデータ受信部２４が設けられる。情報処理部２１は、各種情報処理を実行し、ローカルメモリ２２、データ送信部２３、及びデータ受信部２４を統括制御する。ローカルメモリ２２は、データやプログラムなどを格納する。
【００２０】
データ送信部２３は、情報処理部２１に基づいて信号処理されたデータ、或いはローカルメモリ２２から読み出されたデータやプログラムなどを共有メモリ３１にデータ転送する。データ送信部２３は、情報処理部２１に基づいてデータ受信側の情報処理部１１に対してデータ転送の完了通知を送信し、フラグ３２の更新を行う。
【００２１】
データ受信部２４は、データ送信側の情報処理部１１からのデータ転送の完了通知とフラグ３２により、データ受信側の情報処理部２１にデータ転送の完了通知を送信し、フラグ３２の更新を行う。
【００２２】
ここで、情報処理部１１、ローカルメモリ１２、データ送信部１３、及びデータ受信部１４は、例えばプロセッサを構成する。情報処理部２１、ローカルメモリ２２、データ送信部２３、及びデータ受信部２４は、例えばプロセッサを構成する。情報処理部１１と情報処理部２１は、例えばＣＰＵ（Central Processing Unit）である。
【００２３】
次に、情報処理システムでのデータ転送について図２及び図３を参照して説明する。図２は情報処理システムの共有メモリへのデータ書き込み動作を示すフローチャートである。図３は情報処理システムの共有メモリからデータ読み出し動作を示すフローチャートである。ここでは、共有部３を介して情報処理装置１から情報処理装置２へ連続したデータ転送が行われる。
【００２４】
図２に示すように、まず、データ送信側の情報処理部１１はデータ送信部１３を介して転送すべきデータを共有部３の共有メモリ３１に送信し、共有メモリ３１にこのデータの書き込みを行う（ステップＳ１）。
【００２５】
次に、書き込みが終了すると情報処理部１１はデータ送信部１３に対してデータの書き込み完了通知を送信する（ステップＳ２）。
【００２６】
続いて、データ送信部１３は情報処理部１１からデータの書き込み完了通知を受信すると書き込みフラグ４１の内容を確認する。この確認では、転送されるデータに対応するフラグがアサートされているか、他のデータに対応するフラグがデアサートされているかを確認する（ステップＳ３）。
【００２７】
そして、この確認後、データ送信部１３はフラグのステータスにしたがって、データ受信側の情報処理装置２に対してデータの書き込み完了通知を送信する（ステップＳ４）。
【００２８】
次に、データ送信部１３は転送したデータに対応する書き込みフラグ４１の更新を行う（ステップＳ５）。
【００２９】
続いて、データ送信部１３はフラグのアサート或いはデアサートの判定を行う（ステップＳ６）。
【００３０】
転送されるデータに対応するフラグがアサートされている場合、すでに対応するデータが存在することを示している。このため、直ちに、データ送信部１３は情報処理部１１にエラーを返す（ステップＳ７）。
【００３１】
転送されるデータに対応するフラグがデアサートされている場合、書き込みフラグ４１では転送されるデータに対応するフラグがアサートされる（ステップＳ８）。
【００３２】
そして、データ送信部１３はフラグの全てがデアサートされているかの判定を行う（ステップＳ９）。フラグの全てがデアサートされていない場合、すでに対応するデータが存在することを示いる。このため、情報処理部１１にエラーを返す。フラグの全てがデアサートされている場合、データ送信部１３は受信側のデータ受信部２４にデータの書き込み完了通知を送信する（ステップＳ１０）。
【００３３】
最初のデータ転送に続いて、２番目以降のデータ転送についてもステップ１乃至１０を繰り返し実行する。
【００３４】
次に、繰り返し作業終了後（即ち、最後のデータ転送或いは所定回数のデータ転送後でのデータ送信部１３からデータの書き込み完了通知が行われた後）、データ受信側の情報処理装置２では、データ受信側のデータ受信部２４が情報処理部２１に対してデータ送信部１３からデータ転送が完了したと判断し、情報処理部２１にデータの書き込み完了通知処理を行う。どのデータがデータ転送されたかについては、データ受信部２４は書き込みフラグ４１をチェックすることにより判別する（ステップＳ１１）。
【００３５】
続いて、データ受信部２４はデータの書き込み完了通知を行ったデータに対応するフラグを更新する。ここで言う更新とは、データの書き込み完了通知を行ったデータに対応するフラグをデアサートすることである（ステップＳ１２）。
【００３６】
このように、連続してデータ転送が実行される場合、データ転送毎にデータ送信側の情報処理装置１からデータ受信側の情報処理装置２に対して、その都度データの書き込み完了通知を行っていない。このため、データ受信側の情報処理部２１で発生するデータの書き込み完了通知をデータ転送毎に行う必要がない。この結果、データ転送で発生するデータ受信側の情報処理部２１のオーバーヘッドを削減でき、情報処理装置１と情報処理装置２の間のデータ転送を高速化することができる。
【００３７】
図３に示すように、データ送信側の情報処理装置１からデータがデータ転送され、共有メモリ３１にデータが書き込まれた後、情報処理装置１のデータ送信部１３は読み出しフラグ４２を更新する。この更新では、転送されたデータに対応するフラグをアサートする。
【００３８】
受信側の情報処理部２１は、データ転送され、共有メモリ３１に書き込まれたデータを共有メモリ３１から読み出す。データ受信部２４は読み出しフラグ４２の更新を行う（ステップＳ２１）。
【００３９】
次に、情報処理部２１はデータ受信部２４にデータの読み出し完了通知を送信する（ステップＳ２２）。
【００４０】
続いて、データ受信部２４はデータの読み出し完了通知を受信後、情報処理部２１が読み出したデータに対応する読み出しフラグ４２を更新する（ステップＳ２３）。
【００４１】
そして、データ受信部２４は読み出しフラグ４２が全てデアサートされているかの判定を行う（ステップ２４）。全てデアサートされている場合、データ受信側の情報処理装置２からデータ送信側の情報処理装置１にデータの読み出し完了通知を送信する（ステップＳ２５）。
【００４２】
全てデアサートされていない場合、データ転送され、共有メモリ３１に書き込まれたデータの読み出し作業が終了されるまで、ステップ２１乃至２４が繰り返し実行される。
【００４３】
このように、データ受信側の情報処理装置２で読み出されたデータ毎に、データ受信側の情報処理装置２からデータ送信側の情報処理装置１にデータの読み出し完了通知を送信していない。この結果、データ送信側の情報処理装置１は、データ転送でのオーバーヘッドを抑制でき、他の処理にリソースを適用することができ情報処理装置システム９０の処理速度を高速化することができる。
【００４４】
ここでは、全てのデータのデータ転送が終了するまで実行しているが、所定回数のデータ転送終了後にデータ受信側の情報処理装置２からデータ送信側の情報処理装置１にデータの読み出し完了通知を送信してもよい。
【００４５】
上述したように、本実施例の情報処理システムでは、情報処理装置１、情報処理装置２、及び共有部３が設けられる。情報処理システム９０では、情報処理装置１及び情報処理装置２の間の共有部３に設けられる共有メモリ３１を介して、情報処理装置１と報処理装置２の間のデータ転送を行っている。連続したデータ転送の場合、データ転送が終了後或いは所定回数のデータ転送が終了後に転送データの完了通知を送信する。
【００４６】
このため、情報処理装置１及び情報処理装置２ではデータ転送でのオーバーヘッドを抑制することができ、情報処理装置システム９０の処理速度を高速化することができる。
【００４７】
なお、本実施例では、予め決められたデータの個数の範囲内で、共有メモリ３１を使い回すことを想定しているが、その個数については必ずしも限定しない。フラグ３２には、書き込みフラグ４１と読み出しフラグ４２を設けているが、必ずしも両方が必須というわけではない。また、情報処理装置にデータ転送を高速化するためにＤＭＡ（Direct Memory Access）コントローラを設けてもよい。
【実施例２】
【００４８】
次に、本発明の実施例２に係る情報処理システムについて、図面を参照して説明する。図４は情報処理システムを示す概略ブロック図である。本実施例では、ＤＭＡコントローラを用いて連続したデータ転送を行っている。
【００４９】
図４に示すように、情報処理システム９１には、メディアプロセッサ５０、メディアアクセレレータ６０、及びベースバンドモデム６１が設けられる。情報処理システム９１は、例えば移動体情報機器に適用される。メディアプロセッサ５０は、例えば種々のメディア情報処理を行う。メディアアクセレレータ６０は、例えばオーディオ及びビデオ処理を行う。ベースバンドモデム６１は、例えばベースバンド処理を行う。
【００５０】
メディアプロセッサ５０には、共有部３ａ、メインプロセッサ５１、専用プロセッサ５２、ＤＭＡコントローラ５３、主メモリ５５、及びバス５７が設けられる。共有部３ａ、メインプロセッサ５１、専用プロセッサ５２、ＤＭＡコントローラ５３、及び主メモリ５５は、バス５７を介して接続される。
【００５１】
情報処理装置としてのメインプロセッサ５１は、各種情報処理を行う。メインプロセッサ５１は、共有部３ａ、専用プロセッサ５２、ＤＭＡコントローラ５３、及び主メモリ５５を統括制御するマスターデバイスである。メインプロセッサ５１には、ローカルメモリ１２ａ、データ送信部１３ａ、データ受信部１４ａ、及びＣＰＵ１５ａが設けられる。
【００５２】
ＣＰＵ１５ａは、各種情報処理を実行し、ローカルメモリ１２ａ、データ送信部１３ａ、及びデータ受信部１４ａを統括制御する。ローカルメモリ１２ａは、データやプログラムなどを格納する。
【００５３】
ＣＰＵ１５ａに基づいて信号処理されたデータ、或いはローカルメモリ１２ａから読み出されたデータやプログラムなどは、データ送信部１３ａを介して共有メモリ３１ａにデータ転送される。
【００５４】
データ受信部１４ａは、共有メモリ３１ａから読み出され、転送されるデータが入力される。
【００５５】
情報処理装置としての専用プロセッサ５２は、専用の情報処理を行う。専用プロセッサ５２は、スレーブデバイスである。専用プロセッサ５２には、ローカルメモリ２２ａ、データ送信部２３ａ、データ受信部２４ａ、及びＣＰＵ２５ａが設けられる。
【００５６】
ＣＰＵ２５ａは、専用の情報処理を実行し、ローカルメモリ２２ａ、データ送信部２３ａ、及びデータ受信部２４ａを統括制御する。ローカルメモリ２２ａは、データやプログラムなどを格納する。
【００５７】
ＣＰＵ２５ａに基づいて信号処理されたデータ、或いはローカルメモリ２２ａから読み出されたデータやプログラムなどは、データ送信部２３ａを介して共有メモリ３１ａにデータ転送される。
【００５８】
データ受信部２４ａは、共有メモリ３１ａから読み出され、転送されるデータが入力される。
【００５９】
共有部３ａには、共有メモリ３１ａとフラグ３２ａが設けられる。共有メモリ３１ａは、メインプロセッサ５１及び専用プロセッサ５２のいずれか一方からＤＭＡコントローラ５３に基づいて転送される情報を書き込み、書き込まれた情報をメインプロセッサ５１及び専用プロセッサ５２のいずれか他方にデータ転送する。
【００６０】
フラグ３２ａは、データ転送時にどのデータが転送を完了したのかを示すものであり、メインプロセッサ５１と専用プロセッサ５２の間で転送されるデータの個数分のステータスを保持している。つまり、フラグ３２ａはデータ転送時でのステータスフラグとして用いられる。フラグ３２ａには、書き込みフラグ４１ａと読み出しフラグ４２ａが設けられる。
【００６１】
ＤＭＡコントローラ５３は、メインプロセッサ５１及び専用プロセッサ５２の間に設けられる共有メモリ３１ａのデータ転送を行う。ＤＭＡコントローラ５３は、メインプロセッサ５１のローカルメモリ１２ａと専用プロセッサ５２のローカルメモリ２２ａのデータ転送を行う。ＤＭＡコントローラ５３は、メインプロセッサ５１と専用プロセッサ５２の間のデータ書き込み完了通知及びデータ読み出し完了通知を行う。ＤＭＡコントローラ５３は、フラグ３２ａの更新を行う。
【００６２】
主メモリ５５は、ローカルメモリ１２ａ及び２２ａよりも容量が大きく、ローカルメモリ１２ａ及びローカルメモリ２２ａよりも処理速度が遅い。主メモリ５５は、例えばメディプロセッサ５０に送信される大容量のデータなどを格納する。また、格納されるデータをメディプロセッサ５０の外部に送信する。
【００６３】
次に、情報処理システムでのデータ転送について図５を参照して説明する。図５は情報処理システムのデータ転送動作を示すフローチャートである。ここでは、ＤＭＡコントローラ５３を用いて、共有部３ａを介してメインプロセッサ５１から専用プロセッサ５２に連続したデータ転送が行われる。
【００６４】
図５に示すように、まず、データ送信側のＣＰＵ１５ａは、データ送信部１３ａに対してデータ転送依頼を行う。この場合、少なくともメインプロセッサ５１のローカルメモリ１２ａに置かれているデータ位置と転送サイズを指定する（ステップＳ１１１）。
【００６５】
次に、データ受信部１３ａは、ＣＰＵ１５ａからデータ転送依頼を受信する。データ受信部１３ａは、ＤＭＡコントローラ５３に対してデータ転送依頼を行う。この場合、少なくともメインプロセッサ５１のローカルメモリ１２ａに置かれているデータ位置と転送サイズを指定する（ステップＳ１１２）。
【００６６】
続いて、ＤＭＡコントローラ５３は、データ送信側のデータ送信部１３ａからの依頼に基づいて、データ送信側のローカルメモリ１２ａに格納されるデータを共有メモリ３１ａにデータ転送する（ステップＳ１１３）。
【００６７】
そして、ＤＭＡコントローラ５３は、データ転送終了後、転送されるデータに対応する書き込みフラグ４１ａをアサートする（ステップＳ１１４）。
【００６８】
次に、ＤＭＡコントローラ５３は、フラグが全てデアサートされているかの判定を行う（ステップＳ１１５）。ＤＭＡコントローラ５３は、フラグが全てデアサートされていない場合は、データ受信側の専用プロセッサ５２のデータ受信部２４ａに対して、データの書き込み完了通知を行わない。
【００６９】
ＤＭＡコントローラ５３は、直前にアサートしたフラグ以外のフラグが全てデアサートされている場合、データ受信側のデータ受信部２４ａに対して、データの書き込み完了通知を送信する（ステップＳ１１６）。
【００７０】
最初のデータ転送に続いて、２番目以降のデータ転送についてもステップ１１１乃至１１６を繰り返し実行する。
【００７１】
次に、繰り返し作業終了後（即ち、最後のデータ転送或いは所定回数のデータ転送後でのＤＭＡコントローラ５３からデータの書き込み完了通知が行われた後）、ＤＭＡコントローラ５３は、データの書き込み完了通知をデータ受信側のＣＰＵ２５ａに送信する。このとき、ＤＭＡコントローラ５３は、アサートされるフラグに対応したデータがデータ転送されることをデータの書き込み完了通知として知らせる（ステップＳ１１７）。
【００７２】
続いて、ＤＭＡコントローラ５３は、書き込み完了通知したデータに対応する書き込みフラグ４１ａをデアサートする（ステップＳ１１８）。
【００７３】
このように、ＤＭＡコントローラ５３を用いて連続してデータ転送が実行される場合、データ転送毎にＤＭＡコントローラ５３からデータ受信側の専用プロセッサ５２に対して、その都度データの書き込み完了通知を送信していない。この結果、データ転送で発生するデータ受信側の専用プロセッサ５２のオーバーヘッドを削減でき、メインプロセッサ５１と専用プロセッサ５２の間のデータ転送を高速化することができる。
【００７４】
ここでは、共有メモリ３１ａにデータ転送され、書き込まれたデータの読み出しについては、図示及び説明を省略している。この場合、共有メモリ３１ａから読み出されたデータがＤＭＡコントローラ５３を用いて連続してデータ転送（例えば、共有メモリ３１ａから専用プロセッサ５２にデータ転送）される。ＤＭＡコントローラ５３は、データ受信側の専用プロセッサ５２で読み出されたデータ毎に、データ送信側のメインプロセッサ５１に対して、その都度データの読み出し完了通知を送信していない。この結果、データ送信側のメインプロセッサ５１は、データ転送でのオーバーヘッドを抑制でき、他の処理にリソースを適用することができ情報処理装置システム９１の処理速度を高速化することができる。
【００７５】
上述したように、本実施例の情報処理システムでは、メディアプロセッサ５０、メディアアクセレレータ６０、及びベースバンドモデム６１が設けられる。メディアプロセッサ５０には、共有部３ａ、メインプロセッサ５１、専用プロセッサ５２、ＤＭＡコントローラ５３、主メモリ５５、及びバス５７が設けられる。メディアプロセッサ５０では、メインプロセッサ５１及び専用プロセッサ５２の間の共有部３ａに設けられる共有メモリ３１ａを介して、ＤＭＡコントローラ５３がメインプロセッサ５１及び専用プロセッサ５２の間のデータ転送を行っている。連続したデータ転送の場合、データ転送が終了後或いは所定回数のデータ転送が終了後にＤＭＡコントローラ５３が転送データの完了通知を送信する。
【００７６】
このため、メインプロセッサ５１及び専用プロセッサ５２ではデータ転送でのオーバーヘッドを抑制することができ、情報処理装置システム９１の処理速度を高速化することができる。
【００７７】
なお、本実施例では、書き込みフラグ４１ａ及び読み出しフラグ４２ａを共有部３ａに設けているが、代わりにＤＭＡコントローラ５３に設けてもよい。また、メディアプロセッサ５０に１つの専用プロセッサ５２を設けているが、代わりにメディアプロセッサ５０に専用プロセッサを複数個設けてもよい。
【実施例３】
【００７８】
次に、本発明の実施例３に係る情報処理システムについて、図面を参照して説明する。図６は情報処理システムを示す概略ブロック図である。本実施例では、疎結合型マルチプロセッサでのデータ転送完了通知を抑制している。
【００７９】
図６に示すように、情報処理システム９２には、情報処理プロセッサ７０、情報処理プロセッサ７１、共有メモリ７２、ＤＭＡコントローラ７３、主メモリ７４、制御プロセッサ７５、主バス７６、ローカルバス７７、及びローカルバス７８が設けられる。
【００８０】
情報処理システム９２は、疎結合型マルチプロセッサを有する情報処理システムである。疎結合型マルチプロセッサでは、情報処理プロセッサ７０と情報処理プロセッサ７１の間に共有メモリ７２が配置される。ここでは、情報処理プロセッサを２つ配置しているが必ずしもこれに限定されるものではない。４つ以上の偶数個の情報処理プロセッサを配置してもよい。その場合、２つの情報処理プロセッサ間に共有メモリをそれぞれ配置するのが好ましい。
【００８１】
主バス７６は、情報処理プロセッサ７０、情報処理プロセッサ７１、共有メモリ７２、ＤＭＡコントローラ７３、主メモリ７４、及び制御プロセッサ７５を接続する。ローカルバス７７は、情報処理プロセッサ７０及び共有メモリ７２を接続する。ローカルバス７８は、情報処理プロセッサ７１及び共有メモリ７２を接続する。
【００８２】
共有メモリ７２には、フラグ８４が設けられる。フラグ８４には、書き込みフラグ８５と読み出しフラグ８６が設けられる。情報処理プロセッサ７０には、ＣＰＵ８０ａ、ローカルメモリ８１ａ、データ送信部８２ａ、及びデータ受信部８３ａが設けられる。情報処理プロセッサ７１には、ＣＰＵ８０ｂ、ローカルメモリ８１ｂ、データ送信部８２ｂ、及びデータ受信部８３ｂが設けられる。
【００８３】
ここで、情報処理装置としての情報処理プロセッサ７０及び情報処理プロセッサ７１は、実施例２の専用プロセッサと同様な構成及び動作を行う。共有メモリ７２は、実施例２の共有部と同様な動作を行う。主メモリ７４は、実施例２の主メモリと同様な構成及び動作を行う。このため、これらの構成及び動作の説明を省略する。
【００８４】
制御プロセッサ７５は、情報処理プロセッサ７０、情報処理プロセッサ７１、共有メモリ７２、ＤＭＡコントローラ７３、及び主メモリ７４を統括制御するマスターデバイスである。
【００８５】
ＤＭＡコントローラ７３は、制御プロセッサ７５の指示に基づいてデータ転送、データ転送の完了通知、及びフラグの更新などを行う。具体的には、ＤＭＡコントローラ７３は、情報処理プロセッサ７０及び情報処理プロセッサ７１の間に設けられる共有メモリ７２のデータ転送を行う。ＤＭＡコントローラ７３は、情報処理プロセッサ７０のローカルメモリ８１ａと情報処理プロセッサ７１のローカルメモリ８１ｂのデータ転送を行う。ＤＭＡコントローラ７３は、情報処理プロセッサ７０と情報処理プロセッサ７１の間のデータ書き込み完了通知及びデータ読み出し完了通知を行う。ＤＭＡコントローラ７４は、フラグ８４の更新を行う。
【００８６】
ＤＭＡコントローラ７３による情報処理プロセッサ７０及び情報処理プロセッサ７１の間のデータ転送は実施例２と同様に行われるので説明を省略する。
【００８７】
上述したように、本実施例の情報処理システムでは、情報処理プロセッサ７０、情報処理プロセッサ７１、共有メモリ７２、ＤＭＡコントローラ７３、主メモリ７４、制御プロセッサ７５、主バス７６、ローカルバス７７、及びローカルバス７８が設けられる。情報処理プロセッサ７０及び情報処理プロセッサ７１の間に設けられる共有メモリ７２を介して、ＤＭＡコントローラ７３が情報処理プロセッサ７０及び情報処理プロセッサ７１の間のデータ転送を行っている。連続したデータ転送の場合、データ転送が終了後或いは所定回数のデータ転送が終了後にＤＭＡコントローラ７３が転送データの完了通知を送信する。
【００８８】
このため、情報処理プロセッサ７０及び情報処理プロセッサ７１ではデータ転送でのオーバーヘッドを抑制することができ、情報処理装置システム９２の処理速度を高速化することができる。
【００８９】
本発明は、上記実施例に限定されるものではなく、発明の趣旨を逸脱しない範囲で、種々、変更してもよい。
【００９０】
実施例では、連続したデータ転送を実行しているが、必ずしもこれに限定されない。連続したデータ転送の間に、適宜、割り込みやポーリングなどを挿入させてもよい。
【００９１】
本発明は、以下の付記に記載されているような構成が考えられる。  
（付記１）  第１の情報処理部、第１のローカルメモリ、第１データ送信部、及び第１のデータ受信部を有する第１の情報処理装置と、第２の情報処理部、第２のローカルメモリ、第２データ送信部、及び第２のデータ受信部を有する第２の情報処理装置と、前記第１及び第２の情報処理装置の間に設けられ、共有メモリ、書き込みフラグ、及び読み出しフラグを有する共有部とを具備し、前記第１及び第２のローカルメモリはデータを格納し、前記共有メモリは前記第１及び第２の情報処理装置のいずれか一方から転送されるデータを書き込み、書き込まれたデータを前記第１及び第２の情報処理装置のいずれか他方に転送し、前記書き込みフラグは前記共有メモリへのデータの書き込み完了を示し、前記読み出しフラグは前記共有メモリからデータの読み出し完了を示し、前記共有メモリへ連続したデータの書き込みを実行する場合、データ受信側の前記第１及び第２のデータ受信部のいずれか一方が転送されたデータの書き込み完了通知をデータ受信側の前記第1及び第２の情報処理部のいずれか一方に送信するまでは、データ送信側の前記第１及び第２のデータ送信部いずれか他方がデータ受信側の前記第１及び第２のデータ受信部のいずれか一方にデータの書き込み完了通知を送信しないことを情報処理システム。
【００９２】
（付記２）  第１のＣＰＵ、第１データ送信部、及び第１のデータ受信部を有するメインプロセッサと、第２のＣＰＵ、第２データ送信部、及び第２のデータ受信部を有する専用プロセッサと、共有メモリ、書き込みフラグ、及び読み出しフラグを有する共有部と、データ転送処理を実行するＤＭＡコントローラと、前記メインプロセッサ、前記専用プロセッサ、前記共有部、前記ＤＭＡコントローラを接続するバスとを具備し、前記共有メモリは前記ＤＭＡコントローラに基づいて前記メインプロセッサ及び前記専用プロセッサのいずれか一方から転送されるデータを書き込み、書き込まれたデータを前記メインプロセッサ及び前記専用プロセッサのいずれか他方に転送し、前記書き込みフラグは前記共有メモリへのデータの書き込み完了を示し、前記読み出しフラグは前記共有メモリからデータの読み出し完了を示し、前記共有メモリへ連続したデータの書き込みを実行する場合、データ受信側の前記第１及び第２のデータ受信部のいずれか一方が転送されたデータの書き込み完了通知をデータ受信側の前記第１及び第２のＣＰＵのいずれか一方に送信するまでは、前記ＤＭＡコントローラがデータ受信側の前記第１及び第２のデータ受信部のいずれか一方にデータの書き込み完了通知を送信しない情報処理システム。
【符号の説明】
【００９３】
１、２  情報処理装置
３、３ａ  共有部
１１、２１  情報処理部
１２、１２ａ、２２、２２ａ、８１ａ、８１ｂ  ローカルメモリ
１３、１３ａ、２３、２３ａ、８２ａ、８２ｂ  データ送信部
１４、１４ａ、２４、２４ａ、８３ａ、８３ｂ  データ受信部
１５ａ、２５ａ、８０ａ、８０ｂ  ＣＰＵ
３１、３１ａ、７２  共有メモリ
３２、３２ａ、８４  フラグ
４１、４１ａ、８５  書き込みフラグ
４２、４２ａ、８６  読み出しフラグ
メディアプロセッサ
５１  メインプロセッサ
５２  専用プロセッサ
５３、７３  ＤＭＡコントローラ
５５、７４  主メモリ
５７  バス
６０  メディアアクセレレータ
６１  ベースバンドモデム
７０、７１  情報処理プロセッサ
７５  制御プロセッサ
７６  主バス
７７、７８  ローカルバス
９０〜９２  情報処理システム
【図１】
2011107922.tif 000003
【図２】
2011107922.tif 000004
【図３】
2011107922.tif 000005
【図４】
2011107922.tif 000006
【図５】
2011107922.tif 000007
【図６】
2011107922.tif 000008