(57)【特許請求の範囲】
【請求項１】
複数の処理装置の動作を制御する制御手段を備え、個々の処理装置が、各々前記制御手段から送られる実行許可信号の受信を契機に自己に割り当てられた処理の実行を開始するとともに処理実行後は処理結果及び実行終了信号を前記制御手段宛に送出するものにおいて、
前記制御手段が、前記実行許可信号を送出すべき１又は複数の処理装置の識別情報と前記処理結果及び前記実行終了信号を受信すべき１又は複数の処理装置の識別情報とを所定順序で格納した処理テーブルをアプリケーション毎に具備し、あるアプリケーションからの処理要求の受信を契機に、当該アプリケーション用の処理テーブルに格納されている順序で、前記実行許可信号を該当する処理装置宛に送出するとともに該当する処理装置からの描画終了信号を受信し、この描画終了信号の受信を契機に各処理装置による一部又は全部の処理結果を所定の出力装置に出力するように構成されていることを特徴とする、
データ処理システム。
【請求項２】
各々連携して共同処理を行うＮ（Ｎは１より大きい自然数）個の処理装置の動作を調停する第１調停手段と、Ｍ（Ｍは１より大きい自然数）個の前記第１調停手段の動作を調停する第２調停手段と、これらの動作を制御する制御手段とを備え、個々の処理装置が、各々前記制御手段から送られる実行許可信号の受信を契機に自己に割り当てられた処理の実行を開始するとともに処理実行後は処理結果及び実行終了信号を前記制御手段宛に送出するものにおいて、
前記制御手段は、前記実行許可信号を送出すべき１又は複数の処理装置の識別情報と前記処理結果及び前記実行終了信号を受信すべき１又は複数の処理装置の識別情報とを所定順序で格納した処理テーブルをアプリケーション毎に具備し、あるアプリケーションからの処理要求の受信を契機に、当該アプリケーション用の処理テーブルに格納されている順序で、前記実行許可信号を該当する処理装置宛に送出するとともに該当する処理装置からの描画終了信号を受信し、この描画終了信号の受信を契機に各処理装置による一部又は全部の処理結果を所定の出力装置に出力するように構成されていることを特徴とする、
データ処理システム。
【請求項３】
個々の処理装置が所定の画像を細分割した分割画像に対するフレーム画像データを他の処理装置と共同して生成し、生成したフレーム画像データを前記処理結果として出力するように構成されている、
請求項１又は２記載のデータ処理システム。
【請求項４】
個々の処理装置は、所定の画像の描画処理を行う描画処理手段と、所定の画像表示命令に基づくジオメトリ処理を行う複数のジオメトリ処理手段と、これらの間に介在する画像インタフェースとを含み、
前記描画処理手段は、前記ジオメトリ処理手段毎に異なる複数組のパラメータセットとなる描画コンテクストをその識別情報と共に記憶するためのバッファと、前記画像インタフェースからの描画指示の入力を契機に前記バッファから特定の描画コンテクストを読み出し、読み出した描画コンテクストに基づいて画像の描画処理を行う手段とを備えるものであり、
前記複数のジオメトリ処理手段は、それぞれ前記画像表示命令に基づくジオメトリ処理を独立に行い、該処理の結果得られる描画コンテクストの識別情報を含む画像転送要求をその優先度を表す情報と共に前記画像インタフェースに送出するものであり、
前記画像インタフェースは、より優先度の高い画像転送要求を受け付けて前記描画処理手段に前記描画指示を入力するものであり、前記描画処理手段による描画処理結果を前記処理結果として出力するように構成されている、
請求項１又は２記載のデータ処理システム。
【請求項５】
複数の処理装置における前記描画処理結果を一つの表示画面上に同時期に表示させる手段をさらに備えてなる、
請求項４記載のデータ処理システム。
【請求項６】
複数の処理装置における前記描画処理結果を一つの表示画面上にシーケンシャルに表示させる手段をさらに備えてなる、
請求項４記載のデータ処理システム。
【請求項７】
複数の処理装置の動作を制御するシステムであって、個々の処理装置が、実行許可信号の受信を契機に自己に割り当てられた処理の実行を開始するとともに処理実行後は処理結果及び実行終了信号を送出するものにおいて、
前記実行許可信号を送出すべき１又は複数の処理装置の識別情報と前記処理結果及び前記実行終了信号を受信すべき１又は複数の処理装置の識別情報とを所定順序で格納した処理テーブルをアプリケーション毎に保持する第１の手段と、
あるアプリケーションからの処理要求の受信を契機に、当該アプリケーション用の処理テーブルを特定する第２の手段と、
特定した処理テーブルに格納されている順序で、前記実行許可信号を該当する処理装置宛に送出するとともに該当する処理装置からの描画終了信号を受信し、この描画終了信号の受信を契機に各処理装置による一部又は全部の処理結果を所定の出力装置に出力する第３の手段とを備えたことを特徴とする、
データ処理システム。
【請求項８】
各々連携して共同処理を行うＮ（Ｎは１より大きい自然数）個の処理装置の動作を調停する第１調停手段、及び、Ｍ（Ｍは１より大きい自然数）個の前記第１調停手段の動作を調停する第２調停手段の動作を制御するシステムであって、個々の処理装置が、実行許可信号の受信を契機に自己に割り当てられた処理の実行を開始するとともに処理実行後は処理結果及び実行終了信号を送出するものにおいて、
前記実行許可信号を送出すべき１又は複数の処理装置の識別情報と前記処理結果及び前記実行終了信号を受信すべき１又は複数の処理装置の識別情報とを所定順序で格納した処理テーブルをアプリケーション毎に保持する第１の手段と、
あるアプリケーションからの処理要求の受信を契機に、当該処理要求の処理テーブルを特定する第２の手段と、
特定した処理テーブルに格納されている順序で、前記実行許可信号を該当する処理装置宛に送出するとともに該当する処理装置からの描画終了信号を受信し、この描画終了信号の受信を契機に各処理装置による一部又は全部の処理結果を所定の出力装置に出力する第３の手段とを備えたことを特徴とする、
データ処理システム。
【請求項９】
前記複数の処理装置の各々が通信機能を有するコンピュータであり、少なくともこれらの処理装置との間でコンピュータネットワークを通じて前記実行許可信号及び実行終了信号の受け渡しを行うように構成されている、
請求項７又は８記載のデータ処理システム。
【請求項１０】
それぞれ実行許可信号の受信を契機に自己に割り当てられた描画処理の実行を開始するとともに描画処理の実行後はその処理結果及び実行終了信号を出力する複数の処理装置の動作を制御する制御手段が実行する方法であって、
一のアプリケーションからの処理要求を受けとる段階と、
前記実行許可信号を送出すべき１又は複数の処理装置の識別情報と前記処理結果及び前記実行終了信号を受信すべき１又は複数の処理装置の識別情報とがアプリケーション毎に所定順序で格納されている処理テーブルから、前記処理要求を受け取ったアプリケーション用の処理テーブルを特定する段階と、
特定したアプリケーション用の処理テーブルに格納されている前記順序で、前記実行許可信号を該当する処理装置宛に送出するとともに該当する処理装置からの描画終了信号を受信し、この描画終了信号の受信を契機に各処理装置による一部又は全部の処理結果を所定の出力装置に出力する段階とを含む、
複数の処理装置によるデータ処理方法。
【請求項１１】
コンピュータを、それぞれ実行許可信号の受信を契機に自己に割り当てられた処理の実行を開始するとともに処理実行後は処理結果及び実行終了信号を送出する複数の処理装置の動作を制御するデータ処理システムとして動作させるためのコンピュータプログラムであって、
前記コンピュータを、前記実行許可信号を送出すべき１又は複数の処理装置の識別情報と前記処理結果及び前記実行終了信号を受信すべき１又は複数の処理装置の識別情報とを所定順序で格納した処理テーブルをアプリケーション毎に保持する第１の手段、あるアプリケーションからの処理要求の受信を契機に、当該アプリケーション用の処理テーブルを特定する第２の手段、特定した処理テーブルに格納されている順序で前記実行許可信号を該当する処理装置宛に送出するとともに該当する処理装置からの描画終了信号を受信し、この描画終了信号の受信を契機に各処理装置による一部又は全部の処理結果を所定の出力装置に出力する第３の手段として機能させるためのコンピュータプログラム。
【請求項１２】
請求項１１に記載されたコンピュータプログラムを記録してなる、コンピュータ読みとり可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明が属する技術分野】
本発明は、複数の処理装置、例えば画像処理装置を連携させて大画面の動画表示等を効率的に行うためのデータ処理技術に関する。
【０００２】
【発明の背景】
コンピュータなどの処理装置の高性能化に伴い、このような処理装置を用いて従来よりも高度の情報処理を行う環境が整備されてきている。最近は、複数の画像処理装置を協同で動作させて大画面の動画処理を行うことに対する期待も高まっている。
しかし、個々の処理装置の処理能力が高まっても、装置間のデータ処理形態を効率的に調整しないと、各処理装置が有する処理能力を正しく発揮することができない。画像処理装置の場合は、そのまま大画面の動画表示を行おうとすると、１秒あたりのコマ数が低下し、最悪の場合にはシステムダウンを起こす場合もある。
【０００３】
このような問題を解消する手段として、 複数の処理装置を連携させて一つの画面上の表示領域や処理範囲を分担することが考えられるが、一つのアプリケーション（アプリケーションプログラム）からの処理要求を複数の処理装置で分担処理する場合は、各々処理装置における制御形態が複雑となるという課題が残る。
【０００４】
本発明は、複数の処理装置を用いた場合の処理能力を簡易に調整できるようにするためのデータ処理技術を提供することを、主たる課題とする。
【０００５】
【課題を解決するための手段】
上記課題を解決するため、本発明は、複数の処理装置の動作を制御する制御手段を備え、個々の処理装置が、各々前記制御手段から送られる実行許可信号の受信を契機に自己に割り当てられた処理の実行を開始するとともに処理実行後は処理結果及び実行終了信号を前記制御手段宛に送出するものにおいて、前記制御手段が、前記実行許可信号を送出すべき１又は複数の処理装置の識別情報と前記処理結果及び前記実行終了信号を受信すべき１又は複数の処理装置の識別情報とを所定順序で格納した処理テーブルをアプリケーション毎に具備し、あるアプリケーションからの処理要求の受信を契機に、当該アプリケーション用の処理テーブルに格納されている順序で、前記実行許可信号を該当する処理装置宛に送出するとともに該当する処理装置からの描画終了信号を受信し、この描画終了信号の受信を契機に各処理装置による一部又は全部の処理結果を所定の出力装置に出力するように構成されているデータ処理システムを提供する。実行許可信号は、処理の実行を許可するための一種の制御信号であり、実行終了信号は、処理の実行が終了したことを示す一種の通知信号である。
【０００６】
本発明は、また、各々連携して共同処理を行うＮ（Ｎは１より大きい自然数）個の処理装置の動作を調停する第１調停手段と、Ｍ（Ｍは１より大きい自然数）個の前記第１調停手段の動作を調停する第２調停手段と、これらの動作を制御する制御手段とを備え、個々の処理装置が、各々前記制御手段から送られる実行許可信号の受信を契機に自己に割り当てられた処理の実行を開始するとともに処理実行後は処理結果及び実行終了信号を前記制御手段宛に送出するデータ処理システムを提供する。このデータ処理システムにおいて、前記制御手段は、前記実行許可信号を送出すべき１又は複数の処理装置の識別情報と前記処理結果及び前記実行終了信号を受信すべき１又は複数の処理装置の識別情報とを所定順序で格納した処理テーブルをアプリケーション毎に具備し、あるアプリケーションからの処理要求の受信を契機に、当該アプリケーション用の処理テーブルに格納されている順序で、前記実行許可信号を該当する処理装置宛に送出するとともに該当する処理装置からの描画終了信号を受信し、この描画終了信号の受信を契機に各処理装置による一部又は全部の処理結果を所定の出力装置に出力するように構成されていることを特徴とする。
【０００７】
個々の処理装置は、所定の画像を細分割した分割画像に対するフレーム画像データを他の処理装置と共同して生成し、生成したフレーム画像データを前記処理結果として出力するように構成される。あるいは、所定の画像の描画処理を行う描画処理手段と、所定の画像表示命令に基づくジオメトリ処理を行う複数のジオメトリ処理手段と、これらの間に介在する画像インタフェースとを含み、前記描画処理手段は、ジオメトリ処理手段毎に異なる複数組のパラメータセットとなる描画コンテクストをその識別情報と共に記憶するためのバッファと、前記画像インタフェースからの描画指示の入力を契機に前記バッファから特定の描画コンテクストを読み出し、読み出した描画コンテクストに基づいて画像の描画処理を行う手段とを備えるものであり、前記複数のジオメトリ処理手段は、それぞれ前記画像表示命令に基づくジオメトリ処理を独立に行い、該処理の結果得られる描画コンテクストの識別情報を含む画像転送要求をその優先度を表す情報と共に前記画像インタフェースに送出するものであり、前記画像インタフェースは、より優先度の高い画像転送要求を受け付けて前記描画処理手段に前記描画指示を入力するものであり、前記描画処理手段による描画処理結果を前記処理結果として出力するように構成される。
【０００８】
本発明が提供する他のデータ処理システムは、複数の処理装置の動作を制御するシステムであって、個々の処理装置が、実行許可信号の受信を契機に自己に割り当てられた処理の実行を開始するとともに処理実行後は処理結果及び実行終了信号を送出するものにおいて、前記実行許可信号を送出すべき１又は複数の処理装置の識別情報と前記処理結果及び前記実行終了信号を受信すべき１又は複数の処理装置の識別情報とを所定順序で格納した処理テーブルをアプリケーション毎に保持する第１の手段と、あるアプリケーションからの処理要求の受信を契機に、当該アプリケーション用の処理テーブルを特定する第２の手段と、特定した処理テーブルに格納されている順序で、前記実行許可信号を該当する処理装置宛に送出するとともに該当する処理装置からの描画終了信号を受信し、この描画終了信号の受信を契機に各処理装置による一部又は全部の処理結果を所定の出力装置に出力する第３の手段とを備えたことを特徴とする。
【０００９】
本発明は、また、それぞれ実行許可信号の受信を契機に自己に割り当てられた描画処理の実行を開始するとともに描画処理の実行後はその処理結果及び実行終了信号を出力する複数の処理装置の動作を制御する制御手段が実行する方法であって、一のアプリケーションからの処理要求を受けとる段階と、前記実行許可信号を送出すべき１又は複数の処理装置の識別情報と前記処理結果及び前記実行終了信号を受信すべき１又は複数の処理装置の識別情報とがアプリケーション毎に所定順序で格納されている処理テーブルから、前記処理要求を受け取ったアプリケーション用の処理テーブルを特定する段階と、特定したアプリケーション用の処理テーブルに格納されている前記順序で、前記実行許可信号を該当する処理装置宛に送出するとともに該当する処理装置からの描画終了信号を受信し、この描画終了信号の受信を契機に各処理装置による一部又は全部の処理結果を所定の出力装置に出力する段階とを含む、複数の処理装置によるデータ処理方法を提供する。
【００１０】
本発明は、さらに、コンピュータを、それぞれ実行許可信号の受信を契機に自己に割り当てられた処理の実行を開始するとともに処理実行後は処理結果及び実行終了信号を送出する複数の処理装置の動作を制御するデータ処理システムとして動作させるためのコンピュータプログラムを提供する。このコンピュータプログラムは、前記コンピュータを、前記実行許可信号を送出すべき１又は複数の処理装置の識別情報と前記処理結果及び前記実行終了信号を受信すべき１又は複数の処理装置の識別情報とを所定順序で格納した処理テーブルをアプリケーション毎に保持する第１の手段、あるアプリケーションからの処理要求の受信を契機に、当該アプリケーション用の処理テーブルを特定する第２の手段、特定した処理テーブルに格納されている順序で前記実行許可信号を該当する処理装置宛に送出するとともに該当する処理装置からの描画終了信号を受信し、この描画終了信号の受信を契機に各処理装置による一部又は全部の処理結果を所定の出力装置に出力する第３の手段として機能させるためのものである。このコンピュータプログラムは、通常は、コンピュータ読みとり可能な記録媒体に記録されることにより実体化される。
【００１１】
【発明の実施の形態】
以下、本発明の実施形態を説明する。
［第１実施形態］
まず、本発明のデータ処理システムを、各々連携して共同処理を行う複数の画像処理装置を備えた統合型画像処理装置に適用した場合の実施形態を説明する。
処理装置は画像処理装置であり、これによるデータ処理は、画像（生成）処理となる。また、実行許可信号は、画像処理装置から出力される描画完了信号（DrawDone）であり、実行終了信号は画像処理装置へ出力される描画許可信号（DrowNext）となる。
＜全体構成＞
図１は、本実施形態による統合型画像処理装置の全体的な構成を示すブロック図である。この統合型画像処理装置は、４つの画像処理装置（以下、「ＧＳＢ」）１００と、各ＧＳＢ１００の後段に位置して各々の出力データを統合する統合装置（以下、「主ＭＧ」）２００と、各ＧＳＢ１００に対して同期信号（Ｖ−ＳＹＮＣ）及び描画許可信号（DrawNext）を供給するともに各ＧＳＢ１００からの描画完了信号（DrawDone）を主ＭＧ２００に伝えるための同期回路（以下、「主ＳＹＮＣ」）３００と、装置全体を統括的に制御する制御装置（以下、「主ＣＰ」）４００と、すべてのＧＳＢ１００を連携させるためのネットワーク制御回路（以下、「主ＮＥＴ」）５００とを備えている。
主ＭＧ２００の出力側にはディスプレイ装置DＰが接続され、統合型画像処理装置による画像処理結果が統合的に表示されるようになっている。
主ＳＹＮＣ３００から後述のＧＳＭ１へのデータの発出タイミング及び各ＧＳＭ１から主ＭＧ２００へのデータの発出タイミングは、主ＣＰ４００と連携する主ＭＧ２００によって制御される。主ＣＰ４００には、主ＭＧ２００、外部記憶装置４１０及び主ＮＥＴ５００が接続されている。
【００１２】
＜ＧＳＢ＞
ＧＳＢ１００は、それぞれ入力された画像データ列に対応するフレーム画像データを生成する４つの情報処理装置（以下、「ＧＳＭ」）１と、ＧＳＭ１の各々から出力されるフレーム画像データをマージして一つのフレーム画像データとし、これを後段処理に出力するマージャ（以下、「従ＭＧ」）３と、各ＧＳＭ１にＶ−ＳＹＮＣ及び描画許可信号（DrawNext）を供給するとともに各ＧＳＭ１から発出される描画完了信号（DrawDone）を主ＳＹＮＣ３００に伝えるための同期回路（以下、「従ＳＹＮＣ」）４と、各ＧＳＭ１の動作を制御する制御装置（以下、「従ＣＰ」）５と、同一ＧＳＢ内のすべてのＧＳＭ１及び他のＧＳＢのＧＳＭ１との連携をとるためのネットワーク制御回路（以下、「従ＮＥＴ」）６を備えている。
【００１３】
各ＧＳＭ１は、同期回路（以下、「ＳＹＮＣ・ＧＳＭ」）２を備えており、このＳＹＮＣ・ＧＳＭ２から、Ｖ−ＳＹＮＣ及び描画許可信号（ＧＳＢNext）が内部回路に供給されるようになっている。
従ＭＧ３及び主ＭＧ２００は、出力すべきフレーム画像データを一時的に格納するためのレジスタを備えている。
【００１４】
従ＣＰ５は、ＧＳＢ全体の動作制御を行う。従ＣＰ５は、入力データを４分配するデマルチプレクサ（図示省略）を備えており、４つのＧＳＭ１のそれぞれに、生成対象となる動画像についての画像データ列を分配する。分配の形態については、本装置を使用するアプリケーションに応じて、種々の形態がある。例えば最終的に表示すべき画像をその範囲について４分割したものとしても良いし、最終的に表示すべき画像で重ね合わせて表示されるそれぞれの層を表示するための画像データ列に４分割することもできる。或いは、４フレーム分の画像データを一まとめとし、これを４分割したものとしても良い。
【００１５】
従ＮＥＴ６は、画像データ列の一部又は全部を相互に他のＧＳＢに受け渡すための回路である。画像データ列の受け渡しは、主として、画像処理におけるＧＳＢ間での処理負担のバランスをとるために行われる。
【００１６】
なお、従ＭＧ３におけるマージは、ＧＳＢ全体の動作を司る絶対時間軸に同期して行われる。すなわち、絶対時間軸に同期したタイミングで入力されている複数のフレーム画像データをマージして一つのフレーム画像データを生成する。
【００１７】
各ＧＳＢ１００には、画像データ列（従ＣＰ５経由主ＣＰ４００より）とＶ−ＳＹＮＣ及び描画許可信号（DrawNext）（従ＳＹＮＣ４経由、主ＳＹＮＣ３００より）とが供給されるようになっている。この描画許可信号（DrawNext）を受信したＧＳＭ１は、画像データ列に対する画像処理を開始する。
【００１８】
ＳＹＮＣ・ＧＳＭ２、従ＳＹＮＣ４、主ＳＹＮＣ３００は、それぞれデータレジスタ及び複数のカウンタを内蔵している。各カウンタもカウント値を保持するためのレジスタを内蔵しており、カウント値が特定の値に達したときに割込処理を起こすようになっている。第１のカウンタは、複数のＧＳＭ１間で同期動作を行うためのカウンタであり、入力される同期信号（「Ｖ−ＳＹＮＣ」）の立ち下がりでカウントアップする。Ｖ−ＳＹＮＣは、バスのクロックとは非同期であるため、Ｖ−ＳＹＮＣを第１クロックでサンプルして使用している都合により、カウントアップのタイミングがＧＳＭ間で第１クロック分ずれる可能性がある。カウント値は主ＣＰ４００からのリセット信号でリセットされるが、このリセット信号は、カウンタモジュールの非同期クリア端子に接続されている。そのために、第１クロックを基準として見ると、ＧＳＭ間で１クロックのゆらぎが出る可能性があるのである。
第２のカウンタは、Ｖ−ＳＹＮＣ間のより高精度な時間計測を行うためのアップカウンタである。Ｖ−ＳＹＮＣの立ち下がりを検出して、毎回強制的にゼロリセットされる。
【００１９】
＜ＧＳＭ＞
ＧＳＭ１は、ＳＹＮＣ・ＧＳＭ２におけるＶ−ＳＹＮＣのタイミングで動作し、描画許可信号（DrawNext）の受信を契機に画像処理を行い、画像データ列に対応するフレーム画像データを生成する。画像データ列をなす個々の画像データは、主ＣＰ４００に接続されている外部記憶装置４１０から読み出されて供給されるデータであり、所定の画像処理を経てフレーム画像データとなるデータである。フレーム画像データは、ディスプレイ装置DＰに画像を表示できるようにするものである。
ＧＳＭ１は、自己に割り当てられた処理の実行後は、処理結果を従ＭＧ３を経由して主ＭＧ２００に送出するとともに、描画完了信号（DrawDone）をＳＹＮＣ・ＧＳＭ２及び従ＳＹＮＣ４を経由して主ＳＹＮＣ３００宛に送出する。
【００２０】
このように、統合型画像処理装置において、ＧＳＭ１は、画像処理の中枢を担う。本実施形態によるＧＳＭ１の機能構成を図２に詳細に示す。
【００２１】
図２において、ＧＳＭ１は、メインバスＢ１とサブバスＢ２の２本のバスを有している。これらのバスＢ１，Ｂ２は、バスインタフェースＩＮＴを介して互いに接続され又は切り離されるようになっている。メインバスＢ１には、マイクロプロセッサやＶＰＵ０（ＶＰＵ：Vector Processing Unit：ベクトル処理装置、以下、「第１ＶＰＵ」）２０を含んで構成されるメインＣＰＵ（Central Processing Unit）１０、ＲＡＭ（Random Access Memory）で構成されるメインメモリ１１、メインDＭＡＣ（Direct Memory Access Controller）１２、ＭＰＥＧ（Moving Picture Experts Group）デコーダ（ＭＤＥＣ）１３、ＶＰＵ１（以下、「第２ＶＰＵ」）２１、および第１ＶＰＵ２０及び第２ＶＰＵ２１の調停器として機能するＧＩＦ（Graphical Synthesizer Interface）３０が接続され、さらに、ＧＩＦ３０を介して描画処理手段（「ＧＳ」）３１が接続される。ＧＳ３１には、フレーム画像データ（ビデオ出力）を生成するＣＲＴＣ（CRT controller）３３が接続される。従ＭＧ３へのフレーム画像データの出力は、このＣＲＴＣ３３からなされる。
【００２２】
メインＣＰＵ１０は、起動時にサブバスＢ２上のＲＯＭ１７から、バスインタフェースＩＮＴを介して起動プログラムを読み込み、その起動プログラムを実行してオペレーティングシステムを動作させる。また、複数の基本図形（ポリゴン）で構成された３次元オブジェクトデータ（ポリゴンの頂点（代表点）の座標値など）に対して、第１ＶＰＵ２０と共同してジオメトリ処理を行う。メインＣＰＵ１０内には、第１ＶＰＵ２０との協同処理結果を一時的に保持しておくためのＳＰＲ（Scratch Pad RAM）と呼ばれる高速メモリが設けられている。
第１ＶＰＵ２０は、浮動小数点の実数を演算する複数の演算素子を有し、これらの演算素子によって並列に浮動小数点演算を行う。すなわち、メインＣＰＵ１０と第１ＶＰＵ２０は、ジオメトリ処理のうちのポリゴン単位での細かな操作を必要とする演算処理を行う。そして、この演算処理により得られた頂点座標列やシェーディングモード情報等のポリゴン定義情報をその内容とするディスプレイリストを生成する。
【００２３】
ポリゴン定義情報は、描画領域設定情報とポリゴン情報とからなる。描画領域設定情報は、描画領域のフレームバッファアドレスにおけるオフセット座標と、描画領域の外部にポリゴンの座標があった場合に、描画をキャンセルするための描画クリッピング領域の座標からなる。ポリゴン情報は、ポリゴン属性情報と頂点情報とからなり、ポリゴン属性情報は、シェーディングモード、αブレンディングモード、およびテクスチャマッピングモード等を指定する情報であり、頂点情報は、頂点描画領域内座標、頂点テクスチャ領域内座標、および頂点色等の情報である。
【００２４】
第２ＶＰＵ２１は、第１ＶＰＵ２０と同様のもので、浮動小数点の実数を演算する複数の演算素子を有し、これらの演算素子で並列に浮動小数点演算を行う。また、演算結果をその内容とするディスプレイリストを生成する。
【００２５】
第１ＶＰＵ２０及び第２ＶＰＵ２１は同一構成であるが、それぞれ異なる内容の演算処理を分担するジオメトリエンジンとして機能する。通常、第１ＶＰＵ２０には複雑な挙動計算が要求されるキャラクタの動き等の処理（非定型的なジオメトリ処理）を割り当て、第２ＶＰＵ２１には単純であるが多くのポリゴン数が要求されるオブジェクト、例えば背景の建物等の処理（定型的なジオメトリ処理）を割り当てる。また、第１ＶＰＵ２０はビデオレートに同期するマクロな演算処理を行い、第２ＶＰＵ２１はＧＳ３１に同期して動作できるようにしておく。このために、第２ＶＰＵ２１はＧＳ３１と直結するダイレクトパスを備えている。逆に、第１ＶＰＵ２０は複雑な処理のプログラミングが容易になるように、メインＣＰＵ１０内のマイクロプロセッサと密接合される。
第１ＶＰＵ２０及び第２ＶＰＵ２１により生成されたディスプレイリストは、ＧＩＦ３０を介してＧＳ３１に転送される。
【００２６】
ＧＩＦ３０は、第１ＶＰＵ２０及び第２ＶＰＵ２１で生成されるディスプレイリストをＧＳ３１に転送する際に衝突しないように調停（Arbiter）する。本実施形態では、これらのディスプレイリストを優先度の高いものから順に調べ、上位のものからＧＳ３１に転送する機能をＧＩＦ３０に付加している。ディスプレイリストの優先度を表す情報は、通常は、各ＶＰＵ２０，２１がディスプレイリストを生成する際に、そのタグ領域に記述されるが、ＧＩＦ３０において独自に判定できるようにしても良い。
ＧＳ３１は、描画コンテクストを保持しており、ＧＩＦ３０から通知されるディスプレイリストに含まれる画像コンテクストの識別情報に基づいて該当する描画コンテクストを読み出し、これを用いてレンダリング処理を行い、フレームバッファ３２にポリゴンを描画する。フレームメモリ３２は、テクスチャメモリとしても使用できるため、フレームバッファ上のピクセルイメージをテクスチャとして、描画するポリゴンに貼り付けることができる。
【００２７】
メインDＭＡＣ１２は、メインバスＢ１に接続されている各回路を対象としてDＭＡ転送制御を行うとともに、バスインタフェースＩＮＴの状態に応じて、サブバスＢ２に接続されている各回路を対象としてDＭＡ転送制御を行う。
ＭDＥＣ１３は、メインＣＰＵ１０と並列に動作し、ＭＰＥＧ（Moving Picture Experts Group）方式あるいはＪＰＥＧ（Joint Photographic Experts Group）方式等で圧縮されたデータを伸張する。
【００２８】
サブバスＢ２には、マイクロプロセッサを含んで構成されるサブＣＰＵ１４、ＲＡＭで構成されるサブメモリ１５、サブDＭＡＣ１６、オペレーティングシステムなどのプログラムが記憶されているＲＯＭ１７、サウンドメモリ４１に蓄積された音データを読み出してオーディオ出力として出力する音声処理装置（ＳＰＵ（Sound Processing Unit））４０、データの送受信を行う通信制御部（ＡＴＭ）５０、入力部７０が接続されている。
ＳＹＮＣ・ＧＳＭ２は、このサブバスＢ２に接続され、従ＮＥＴ６は、ＡＴＭ５０に接続される。
【００２９】
入力部７０は、外部から画像データを入力するためのビデオ入力回路７３、外部から音声データを入力するためのオーディオ入力回路７４を有している。
この実施形態では、ビデオ入力回路７３を介して、従ＣＰ５（主ＣＰ４００から分配されたもの）より画像データ列が入力される。サブＣＰＵ１４は、ＲＯＭ１７に記憶されているプログラムに従って各種動作を行う。サブDＭＡＣ１６は、バスインタフェースＩＮＴがメインバスＢ１とサブバスＢ２を切り離している状態においてのみ、サブバスＢ２に接続されている各回路を対象としてDＭＡ転送などの制御を行う。
【００３０】
＜データ処理＞
次に、統合型画像処理装置で行われるデータ処理形態の一例を説明する。
図３は、ＧＳＭ１とその後段処理装置である主ＳＹＮＣ３００及び主ＭＧ２００との間で交換される信号の説明図である。
本実施形態では、描画許可信号（DrawNext）を送出すべきＧＳＭ１のＩDと処理結果及び描画完了信号（DrawDone）を受信すべきＧＳＭ１のＩDとを所定順序で格納した表示順序テーブルＴＢをアプリケーション毎に用意する。表示順序テーブルＴＢは、主ＣＰ４００側の外部記憶装置４１０、主ＭＧ２００のデータレジスタ、主ＳＹＮＣ３００内のデータレジスタのいずれかに備えられる。要は、主ＳＹＮＣ３００がポイントすることができる領域に備えられる。
【００３１】
表示順序テーブルＴＢの内容は、各ＧＳＭ１が、画像処理結果であるフレーム画像データの格納及びその読み出しを一つのフレームメモリ３２によって実現する「シングルバッファ方式」と、二つのフレームメモリ３２によって切り替えながら実現する「ダブルバッファ方式」とでやや異なる。
【００３２】
図４は、表示順序テーブルＴＢの内容例であり、図４（ａ）はシングルバッファ方式の場合、（ｂ）はダブルバッファ方式の場合の例である。いずれも、アプリケーション番号によって、個性化されており、アプリケーションが指定されたときに、それに対応する表示順序テーブルＴＢの内容も特定されるようになっている。
図４において、ＧＳＭ１−０〜ＧＳＭ１−３は第１ＧＳＢに備えられる４つのＧＳＭ、ＧＳＭ２−０〜ＧＳＭ２−３は第２ＧＳＢに備えられる４つのＧＳＭ、ＧＳＭ３−０〜ＧＳＭ３−３は第３ＧＳＢに備えられる４つのＧＳＭ、ＧＳＭ４−０〜ＧＳＭ４−３は第４ＧＳＢに備えられる４つのＧＳＭである。各々、１つのＶ−ＳＹＮＣのタイミングでグループ化されるものが規定されている。
【００３３】
主ＳＹＮＣ３００は、表示順序テーブルＴＢを、「表示開始」、「表示終了」の二つのインデックスでポイントする。
「表示開始」は、描画が完了して（描画完了信号（DrawDone）を受信して）、その処理結果に基づいてディスプレイ装置DＰに表示を行う予定のＧＳＭであり、「表示完了」は、ディスプレイ装置DＰにおける１フレーム分の表示期間が終了して、次フレームの描画許可信号を発行しても良いＧＳＭである。シングルバッファ方式の場合は、表示終了を待って表示を開始し、ダブルバッファ方式の場合は、表示終了と表示開始とを同時期に行う。従って、図４（ａ），（ｂ）に示されるように、シングルバッファ方式の場合はダブルバッファ方式の場合よりも１つのＶ−ＳＹＮＣ分表示タイミングが遅れる。
【００３４】
＜運用形態＞
次に、上記のように構成される統合型画像処理装置の運用形態の一例を説明する。前提として、外部記憶装置４１０にアプリケーションがロードされており、画像データ列が、主ＣＰ４００、各ＧＳＢ１００の従ＣＰ５を通じて各ＧＳＭ１に供給できるようになっているものとする。
そのアプリケーションが主ＣＰ４００によって起動され、そのアプリケーションからの処理要求があると、主ＣＰ４００は、主ＭＧ２００を介して主ＳＹＮＣ３００に描画指示を出す。主ＳＹＮＣ３００は、当該アプリケーション用の表示順序テーブルＴＢに格納されている順序で、描画許可信号（DrawNext）を該当するＧＳＭ１宛に送出する。
【００３５】
ＧＳＭ１は、以下のようにして画像処理を行う。
シングルバッファ方式の場合は、図５（ａ）の手順で処理を行う。
すなわち、描画許可信号（DrawNext）の受信を契機に自己に割り当てられた描画処理を行う（ステップＳ１０１）。具体的には、フレームバッファの内容を変更する。描画処理後は描画完了信号（DrawDone）を出力する（ステップＳ１０２）。描画された画像がディスプレイ装置ＤＰに表示されている間は、描画許可信号（DrowNext）の受信を待つ（ステップＳ１０３、Ｓ１０４）。つまり、描画完了信号（DrawDone）の出力時点から描画許可信号（DrawNext）の受信までの間が画像表示期間となる（最低１つのＶ−ＳＹＮＣ分待たされる）。描画処理の対象となる画像データがなくなった場合は処理を終える（ステップＳ１０５：Yes）。描画対象となる画像データがまだある場合はステップＳ１０１以降の処理を繰り返す（ステップＳ１０５：No）。
【００３６】
ダブルバッファ方式の場合、ＧＳＭ１は、図５（ｂ）の手順で処理を行う。
描画許可信号（DrawNext）の受信を契機に自己に割り当てられた描画処理を行う点は、シングルバッファ方式の場合と同じである。ダブルバッファ方式の場合は、フレームバッファ（図２：フレームメモリ３２）を、描画処理に使用した前回のＶ−ＳＹＮＣのフレームバッファから切り替えた他方のフレームバッファに切り替えることで描画処理を行う（ステップＳ２０４、Ｓ２０１）。
これにより、描画処理の結果を直ちにディスプレイ装置ＤＰに表示できるようになる（描画処理のための待ち時間が存在しない）。描画処理後は描画完了信号（DrawDone）を出力するとともに（ステップＳ２０２）、描画許可信号（DrawNext）の受信を待つ（ステップＳ２０３）。次の描画処理のためにフレームバッファを切り替える（ステップＳ２０４）。描画処理の対象となる画像データがなくなった場合は処理を終える（ステップＳ２０５：Yes）。描画対象となる画像データがまだある場合はステップＳ２０１以降の処理を繰り返す（ステップＳ２０５：No）。
【００３７】
以上のようなＧＳＭ１による処理の結果、主ＭＧ２００には、統合されたフレーム画像データが蓄積される。主ＭＧ２００は、主ＳＹＮＣ３００及び主ＣＰ４００と共同して図６の手順で処理を行う。
すなわち、「表示開始」の指すエントリ上のすべてのＧＳＭで描画が完了していることを確認する（ステップＳ３０１）。描画が完了していることを確認した場合は、その処理結果（描画を完了したフレーム画像データ）をディスプレイＤＰに出力する（ステップＳ３０２：Yes、Ｓ３０３）。描画が完了していなかった場合は、何らかの異常が考えられるので、処理を終える（ステップＳ３０２：No）。
【００３８】
ディスプレイ装置ＤＰへの出力後は、「表示終了」の指すエントリ上のＧＳＭに対して、次のフレームの描画を指示する。つまり、描画許可信号（DrawNext）を主ＳＹＮＣ３００から出力させる（ステップＳ３０４）。その後、「表示開始」、「表示終了」の各インデックスを一つ進める（ステップＳ３０５）。最終エントリに達した場合は最初のエントリに戻る（ステップＳ３０６：Yes、Ｓ３０７）。最終エントリでない場合、あるいは最初のエントリに戻った後、次のデータ等がある場合はステップＳ３０１以降の処理を繰り返す（ステップＳ３０８：Yes）。次のデータ等がない場合は処理を終える（ステップ３０８：No）。
【００３９】
このようにして、複数のＧＳＭ１で共同で処理を行う場合の調整を図り、大画面の画像を表示する場合であっても、そのための処理を円滑に行うことができ、より高画質の大画面の画像を得ることができる。
なお、個々のＧＳＭ１で連携をとりながら描画処理を行う必要がある場合は、主ＮＥＴ５００を通じて各ＧＳＢ１００の従ＮＥＴ６に指示を出し、矛盾が発生しないように調整を図る。
【００４０】
なお、これらのＧＳＭ１の描画処理を統合した結果は、ディスプレイ装置ＤＰの一つの画面上に同時期に表示させるようにしても良く、個々のＧＳＭ１による描画処理結果を一つの画面上にシーケンシャルに表示させるようにしても良い。
【００４１】
図７〜図９は、一つの画面上に同時期に表示させる場合、図１０は、シーケンシャルに表示させる場合の例である。
図７は、４つのＧＳＭ１ａ〜１ｂによる処理結果をディスプレイ装置ＤＰ上で領域合成する場合の例であり、各ＧＳＭが、一画面中に、それぞれ  別の有効領域を持っている。有効領域は、フレーム画像データのα値により識別されており、主ＭＧ２００は、各画面に対し、αブレンディングを行うことにより、領域合成を実現し、一枚の画面として合成出力する。
図８は、４つのＧＳＭ１ａ〜１ｄの処理結果からシーンアンチェリアスを実現する場合の例である。ＧＳＭ１ａ〜１ｄがそれぞれサブピクセル単位でずれている同一の画像を持っている。これらの画像に対し、画面毎にαブレンディングを行うことにより、加算平均を行い、シーンアンチェリアスを実現する。
図９は、４つのＧＳＭ１ａ〜１ｄの処理結果のレイヤ合成を行う場合の例である。ＧＳＭ１ａ〜１ｂがそれぞれ持っている画像を固定の有線順位を持ったレイヤとして、レイヤ順にα値により合成する。レイヤの順番は、レジスタにより選択できる。
図１０は、４つのＧＳＭ１ａ〜１ｄの処理結果に基づいてフリップアニメーションを行う場合の例である。ＧＳＭ１ａ〜１ｄがそれぞれ持っている画像をフレーム単位でフリップアニメーションで順次表示する。
以上のような表示形態は、表示順序テーブルＴＢに表示順序等を規定することによって、きわめて容易に実現される。
【００４２】
このように、本実施形態の統合型画像処理装置では、表示順序テーブルＴＢを設け、この表示順序テーブルＴＢに規定した順序で、該当するＧＳＭ１に描画許可信号（DrawNext）を送出し、各ＧＳＭ１からの描画終了信号（DrawDone）の受信を契機にディスプレイ装置ＤＰに処理結果を出力するようにしたので、連携すべきＧＳＭ１の数が多くなっても、矛盾なく描画処理を行うことができる。
【００４３】
なお、本実施形態では、画像処理を行う場合のデータ処理技術について説明したが、本発明のデータ処理技術は、他の種類の情報処理、例えば音響生成に適用することもできる。これによると、例えばオーケストラの演奏のような高精細、高品位の音の生成も可能となる。この場合は、音響生成のためのデータも、各ＧＳＭ１で個々に処理することになる。また、画像処理と音響生成とをリンクさせて、複合的な処理を行う形態も考えられる。図２に示したように、本実施形態のＧＳＭ１によれば、その処理は可能である。音響生成を伴う場合、これにより得られた音響データは、所定のスピーカから出力音を出力させるための信号となり、上述の従ＭＧ３、主ＭＧ２００によって、上述のフレーム画像データと同期させて出力するようにする。なお、各ＧＳＭ１への音声データの入力は、図２におけるオーディオ入力回路７４から行い、音声データの出力は、ＳＰＵ４０から行うことになる。
【００４４】
［第２実施形態］
第１実施形態では、各々連携して共同処理を行う複数の画像処理装置を備えた統合型画像処理装置に含まれるデータ処理システムの例について説明したが、本発明は、ネットワーク型のデータ処理システムとして実施することも可能である。
すなわち、各々がまったく異なる場所に設置されている複数の情報処理端末をインターネット等のコンピュータネットワークを介して接続し、これらを本発明にいう処理装置、調停手段及び制御手段として動作させるとともに、これらの情報処理端末の間で、コンピュータネットワークを通じて相互に各種信号、例えば上述の描画許可信号（DrawNext）及び描画終了信号（DrawDone）の送受を行うことによっても実現することが可能である。
【００４５】
この場合の複数の情報処理端末のいくつかは第１実施形態で説明したＧＳＢ１００として動作する。さらにいくつかの情報処理端末は、各ＧＳＢ１００として動作する情報処理端末の出力データを統合する主ＭＧ２００の機能、各ＧＳＢ１００に対して同期信号（Ｖ−ＳＹＮＣ）その他の動作用データを供給するための主ＳＹＮＣ３００の機能、画像処理や通信手順を統括的に制御する主ＣＰ４００の機能、すべてのＧＳＢ１００を連携させるための主ＮＥＴ５００の機能をそれぞれ分担して備えるようにする。
主ＭＧ２００として動作する情報処理端末の出力側にはディスプレイ装置が接続されるようにする。また、主ＳＹＮＣ３００からＧＳＭ１００への各種データの発出タイミングは、主ＭＧ２００によって制御されるようにする。さらに、主ＣＰ４００として動作する情報処理端末には、主ＭＧ２００として動作する情報処理端末、外部記憶装置及び主ＮＥＴとして動作する情報処理端末が接続されるようになっている。
このようなネットワーク型のデータ処理システムの動作は、第１実施形態の場合とほぼ同様となる。
【００４６】
［第３実施形態］
本発明は、共同処理を行うための複数の処理装置（画像処理の場合には例えば上述のＧＳＭ１００のようなもの）をコンピュータネットワークを通じて制御するデータ処理システムとして実施することも可能である。
このようなデータ処理システムは、例えばコンピュータネットワークに接続可能なサーバと、そのサーバがアクセス可能な外部記録装置とを備えて構成する。サーバ（それに搭載されているＣＰＵ）は、上記の外部記録媒体又はＣＤ−ＲＯＭ等の可搬性の記録媒体に記録されているコンピュータプログラムを読み込んで実行することにより、主制御部としての機能を形成する。
主制御部は、以下の三つの機能モジュールを備えるものである。
第１の機能モジュールは、実行許可信号、例えば上述の描画許可信号（DrawNext）を送出すべき１又は複数の処理装置の識別情報と処理結果及び実行終了信号、例えば上述の描画終了信号（DrawDone）を受信すべき１又は複数の処理装置の識別情報とを所定順序で格納した処理テーブルを上記の外部記録装置にアプリケーション毎に保持させておく機能を有する。
第２の機能モジュールは、あるアプリケーションからの処理要求の受信を契機に、当該アプリケーション用の処理テーブルを特定する機能を有する。
第３の機能モジュールは、第２の機能モジュールによって特定された処理テーブルに格納されている順序で実行許可信号（DrawNext）を該当する処理装置宛に送出するとともに処理結果及び実行終了信号（DrawDone）を該当する処理装置から受信する機能を有する。
このようなデータ処理システムの動作は、主制御部が主体的に各処理装置を制御する点以外は、上述の第１及び第２実施形態の場合と同じであり、これによって、複数の処理装置を用いた場合の処理能力を簡易に調整できるようになる。
【００４７】
【発明の効果】
以上のように、本発明によれば、複数の処理装置を用いた場合の処理能力を簡易に調整することができるようになる。
【図面の簡単な説明】
【図１】本発明の一実施形態に係る統合型画像処理装置のブロック図。
【図２】ＧＳＭの機能構成図。
【図３】  ＧＳＭと主ＳＹＮＣとの間で交換される信号の説明図。
【図４】  表示順序テーブルの内容説明図で、（ａ）はシングルバッファの場合、（ｂ）はダブルバッファの場合の例を示す。
【図５】（ａ）はシングルバッファ方式の場合の画像処理手順、（ｂ）はダブルバッファ方式の場合の画像処理手順の説明図。
【図６】主ＭＧ等による全体的な処理手順の説明図。
【図７】  領域合成を行う場合の画像表示例。
【図８】シーンアンチェリアスを行う場合の画像表示例。
【図９】レイヤ合成を行う場合の画像表示例。
【図１０】フリップアニメーションを行う場合の画像表示例。
【符号の説明】
１００  画像処理装置（ＧＳＢ）
２００  統合装置（主ＭＧ）
３００  同期回路（主ＳＹＮＣ）
４００  制御装置（主ＣＰ）
５００  ネットワーク制御回路（主ＮＥＴ）
１      ＧＳＭ
２      ＳＹＮＣ・ＧＳＭ
３      従ＭＧ
４      従ＳＹＮＣ
５      従ＣＰ
６      従ＮＥＴ
ＴＢ    表示順序テーブル
【図１】
0003688618.tif 000002
【図２】
0003688618.tif 000003
【図３】
0003688618.tif 000004
【図４】
0003688618.tif 000005
【図５】
0003688618.tif 000006
【図６】
0003688618.tif 000007
【図７】
0003688618.tif 000008
【図８】
0003688618.tif 000009
【図９】
0003688618.tif 000010
【図１０】
0003688618.tif 000011