図面 (/)

技術 画像処理装置及び画像処理方法

出願人 株式会社ソニー・コンピュータエンタテインメント
発明者 蛯原均佐藤和美杢野雅一原英樹
出願日 2001年3月23日 (20年2ヶ月経過) 出願番号 2001-569639
公開日 2003年9月24日 (17年8ヶ月経過) 公開番号 2003-528394
状態 特許登録済
技術分野 マルチプロセッサ 画像処理 イメージ生成
主要キーワード マージユニット 平均化モード マスターバス マスタータイミング 同期カウント アニメーションモード 立ち下がり端 CRT表示
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2003年9月24日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (20)

課題・解決手段

ディスプレイ画像領域カバーする画像を生成するための画像データを処理する装置であって、複数のグラフィックプロセッサと、制御プロセッサと、1つ以上のマージユニットを有して構成される。各グラフィックプロセッサは画像データをフレーム画像データ内にレンダリングするとともにフレーム画像データを個々のローカルフレームバッファ内に記憶させるために動作する。制御プロセッサは、複数のグラフィックプロセッサに命令を供給するために動作する。マージユニットは、個々のローカルフレームバッファからフレーム画像データを同期的に受領するとともにこれに基づいて統合されたフレーム画像データを同期的に生成するために動作する。

概要

背景

概要

ディスプレイ画像領域カバーする画像を生成するための画像データを処理する装置であって、複数のグラフィックプロセッサと、制御プロセッサと、1つ以上のマージユニットを有して構成される。各グラフィックプロセッサは画像データをフレーム画像データ内にレンダリングするとともにフレーム画像データを個々のローカルフレームバッファ内に記憶させるために動作する。制御プロセッサは、複数のグラフィックプロセッサに命令を供給するために動作する。マージユニットは、個々のローカルフレームバッファからフレーム画像データを同期的に受領するとともにこれに基づいて統合されたフレーム画像データを同期的に生成するために動作する。

目的

効果

実績

技術文献被引用数
0件
牽制数
2件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

表示装置画像領域カバーする画像を生成するために画像データを処理する装置であって、複数のグラフィックプロセッサ制御プロセッサ、1つ以上のマージユニットを有しており、各グラフィックプロセッサは、画像データをフレーム画像データレンダリングし、このフレーム画像データを各々のローカルフレームバッファ内に記憶させるために動作するものであり、制御プロセッサは、複数のグラフィックプロセッサに命令を供給するように動作するものであり、マージユニットは、個々のローカルフレームバッファからフレーム画像データを同期的に受領し、これに基づいて統合された統合フレーム画像データを同期的に生成するように動作するものである、装置。

請求項2

1つ以上のマージユニットの少なくとも1つが、フレーム画像データを個々のローカルフレームバッファから1つ以上のマージユニットに解放するためにグラフィックプロセッサにより使用されるマージ同期信号を生成するように動作する、請求項1記載の装置。

請求項3

少なくとも1つのマージユニットからマージ同期信号を受領するように動作する少なくとも1つの同期ユニット、及び、画像プロセッサに接続され、マージ同期信号を受領し、またフレーム画像データをローカルフレームメモリから少なくとも1つのマージユニットに解放させるグラフィックプロセッサを有してなる、請求項2記載の装置。

請求項4

マージ同期信号は、統合フレーム画像データの個々のフレームがどのように表示されるかを規定する表示に従って同期される、請求項2記載の装置。

請求項5

表示プロトコルは、統合フレーム画像データの一連のフレームが表示されるフレーム速度、及び統合フレーム画像データが何時リフレッシュされるべきかを示すブランク期間の少なくとも1つを規定する、請求項4記載の装置。

請求項6

マージ同期信号は、ブランク期間の終期近接した遷移部を含んでおり、少なくとも1つのマージユニットはブランク期間の少なくとも1つの終期に表示装置に対する表示のために統合フレーム画像データを生成することを開始する、請求項5記載の装置。

請求項7

マージ同期信号の遷移部がブランク期間の終期と実質的に一致する、請求項6記載の装置。

請求項8

マージ同期信号は、ブランク期間の終期に至る遷移部を含んでいる、請求項6記載の装置。

請求項9

複数のグラフィックプロセッサがグラフィックプロセッサの個々のセットにグループ化されており、1つ以上のマージユニットは、グラフィックプロセッサの各セットに結合されたローカルマージユニットと、各ローカルマージユニットに結合されたコアマージユニットを含んでおり、個々のローカルマージユニットは、個々のローカルフレームバッファから画像データを受領し、また、これに基づいてローカル統合フレーム画像データを同期的に生成するために動作し、コアマージユニットは、個々のローカルマージユニットからローカル統合フレーム画像データを同期的に受領し、またこれに基づいて統合フレーム画像データを同期的に生成するように動作する、請求項2記載の装置。

請求項10

グラフィックプロセッサの各セット及び各ローカルマージユニットに結合された個々のローカル同期ユニット、及び、各ローカル同期ユニット並びにコアマージユニットに結合されたコア同期ユニットを更に有しており、コア同期ユニットは、フレーム画像データを個々のローカルフレームバッファから個々のローカルマージユニットに同期的に解放することをグラフィックプロセッサの個々のセットに許可するとともに、個々のローカルマージユニットがローカル統合フレーム画像データをコアマージユニットに同期的に解放することを許可するために、コア同期ユニット及びローカル同期ユニットの少なくとも幾つかにより使用されるマージ同期信号を生成する、請求項9記載の装置。

請求項11

制御プロセッサが、グラフィックプロセッサ及び1つ以上のマージユニットに対して、(i)画像データがレンダリングされたとき、フレーム画像データが個々のローカルフレーム画像バッファから解放されたとき、及びフレーム画像データがマージされたときの間におけるタイミング関係、(ii)統合フレーム画像データを同期的に生成するためにどのようにフレーム画像データをマージするか、の少なくとも1つに影響を与える1つ以上のモードで動作するために指示するために動作をするものである、請求項9記載の装置。

請求項12

コアマージユニットと個々のローカルマージユニットが別の制御データラインを経て機能的に結合されており、これにより制御プロセッサ、コアマージユニット及び個々のローカルマージユニットの間の少なくとも1つ以上のモードにおいて動作するための命令に関する独立した通信が確保される、請求項11記載の装置。

請求項13

表示画面上に画像を生成するために画像データを処理する装置であって、それぞれ同期カウンタを含んで構成される複数のグラフィックプロセッサ、制御プロセッサ、及び、少なくとも1つのマージユニットを有し、各グラフィックプロセッサは、画像データをフレーム画像内にレンダリングしてこのフレーム画像データを個々のローカルフレームバッファ内に記憶するように動作するものであり、各グラフィックプロセッサの同期カウンタは、ローカルフレームバッファからフレーム画像データを何時解放すべきかを示すローカル同期カウントを生成するように動作するものであり、制御プロセッサは、複数のグラフィックプロセッサに命令を供給するように動作するものであり、マージユニットは、個々のローカルフレームバッファからフレーム画像データを同期的に受領し、これに基づいて統合フレーム画像データを同期的に生成するように動作するものである、装置。

請求項14

制御プロセッサが、統合フレーム画像データの個々のフレームをどのように表示するかを規定する表示プロトコルに従って同期された同期信号を生成するように動作する、タイミングジェネレータを含んでいる、請求項13記載の装置。

請求項15

表示プロトコルが、統合フレーム画像データの後続フレームが表示されるフレーム速度、及び統合フレーム画像データが何時更新されるのかを表すブランク期間の少なくとも1つを規定する、請求項14記載の装置。

請求項16

個々の同期カウンタが、タイミングジェネレータからの同期信号に基づいてその同期カウントに対して増加及び減少の一方を行う、請求項14記載の装置。

請求項17

グラフィックプロセッサが更に、それらの個々のローカル同期カウントがしきい値に達した時に、それらの個々のフレーム画像データを少なくとも1つのマージユニットに解放するように動作する、請求項16記載の装置。

請求項18

制御プロセッサからの命令が、個々の同期カウンタがそれらの個々の同期カウントを何時リセットすべきかを示す個々のリセット信号を含んでいる、請求項17記載の装置。

請求項19

制御プロセッサがグラフィックジェネレータに、(i)画像データがレンダリングされたとき、フレーム画像データが個々のローカルフレーム画像バッファから解放されたとき、及びフレーム画像データがマージされたときの間におけるタイミング関係、(ii)統合フレーム画像データを同期的に生成するためにどのようにフレーム画像データがマージされるか、の少なくとも1つに影響を与える1つ以上のモードで動作するように指示する、請求項13記載の装置。

請求項20

少なくとも1つのモードにおいて、1つ以上のグラフィックプロセッサが、各ブランク期間の終期の前に個々のフレームバッファ内に画像データをレンダリングすることを完了すること、1つ以上のグラフィックプロセッサが、整数のブランク期間の終期の前に個々のフレームバッファ内に画像データをレンダリングすることを完了すること、1つ以上のグラフィックプロセッサが、複数のローカルフレームバッファを含んでおり、また1つ以上のグラフィックプロセッサが対応する整数のブランク期間の終期の前に個々のフレームバッファに画像データをレンダリングすることを完了することを行う、請求項19記載の装置。

請求項21

モードが、領域分割、平均化、レイヤブレンディング、Zソート及びレイヤブレンディング、及びフリップアニメーションの少なくとも1つを含んでいる、請求項19記載の装置。

請求項22

複数のグラフィックプロセッサがグラフィックプロセッサの個々のセットにグループ化されており、少なくとも1つのマージユニットが、グラフィックプロセッサの各セットに結合された個々のローカルマージユニット、及び各ローカルマージユニットに結合されたコアマージユニットを含んでおり、個々のローカルマージユニットは、個々のローカルフレームバッファからフレーム画像データを同期的に受領し、またこれに基づいてローカル統合フレーム画像データを同期的に生成し、及びコアマージユニットが、個々のローカルマージユニットからローカル統合フレーム画像データを同期的に受領し、またこれに基づいて統合フレーム画像データを同期的に生成する、請求項13記載の装置。

請求項23

表示装置上の画像領域をカバーする画像を生成するために画像データを処理する装置であって、グラフィックプロセッサの1つ以上のセット、制御プロセッサ、1つ以上のマージユニット、制御データバス、及び、バスコントローラを有しており、各グラフィックプロセッサは、画像データをフレーム画像データにレンダリングするため、及びフレーム画像データを個々のローカルフレームバッファ内に記憶するために動作するものであり、制御プロセッサは、グラフィックプロセッサに命令を提供するように動作するものであり、データバスは、制御プロセッサ及びグラフィックプロセッサに機能的に結合されており、マージユニットは、1つ以上のローカルマージユニット及びコアマージユニットを含み、ローカルマージユニットの各々は、グラフィックプロセッサの各セットに結合され且つ個々のローカルフレームバッファからのフレーム画像データを同期的に受領すると共にこれに基づいてローカル統合フレーム画像データを同期的に生成するために動作するものであり、コアマージユニットは各ローカルマージユニットに結合され且つ個々のローカルマージユニットからローカル統合フレーム画像データを同期的に受領すると共にこれに基づいて統合フレーム画像データを同期的に生成するために動作するものであり、制御データバスは、コアマージユニット及びローカルマージユニットに機能的に結合されており、バスコントローラは、データバスと制御データバスの間に機能的に結合されると共にデータバスと制御データバス上で、優先度に基づいてデータを送出及び受領するように動作するものである、装置。

請求項24

バスコントローラがコアマージユニットと一体に形成される部分である、請求項23記載の装置。

請求項25

制御プロセッサが、グラフィックプロセッサ、ローカルマージユニット、及びコアマージユニットに対して、(i)画像データがレンダリングされたとき、フレーム画像データが個々のローカルフレーム画像バッファから解放されたとき、及びフレーム画像データがマージされたときの間におけるタイミング関係、(ii)統合フレーム画像データを同期的に生成するためにどのようにフレーム画像データがマージされるか、の少なくとも1つに影響を与える1つ以上のモードで動作するように指示する、請求項23記載の装置。

請求項26

制御プロセッサが、少なくとも、個々のローカルマージユニット及びコアマージユニットへの動作の1つ以上のモードに関する命令を、バスコントローラ及び制御データバスを経て送出する、請求項25記載の装置。

請求項27

コアマージユニットが、個々のローカルフレームバッファから個々のローカルマージユニットにフレーム画像データを同期的に解放するために少なくとも幾つかのグラフィックプロセッサにより使用されるマージ同期信号を生成し、個々のローカルマージユニットがローカル統合フレーム画像データをコアマージユニットに同期的に解放することを許容するように動作する、請求項23記載の装置。

請求項28

コアマージユニットが、制御データバス、バスコントローラ、及びデータバスを経て、マージ同期信号を個々のグラフィックプロセッサに送出する、請求項27記載の装置。

請求項29

コアマージユニットがマージ同期信号を生成したときにバスコントローラがデータバスを占有し、これによりマージ同期信号が優先度に基づいてデータバスを経て個々のグラフィックプロセッサに送出される、請求項28記載の装置。

請求項30

表示装置上の画像領域をカバーする画像を生成するために画像データを処理する装置であって、グラフィックプロセッサの複数のセット、制御プロセッサ、パケットスイッチ、1つ以上のマージユニット、制御データバス、及び、パケットスイッチコントローラを有しており、各グラフィックプロセッサは、画像データをフレーム画像データにレンダリングし、このフレーム画像データを個々のローカルフレームバッファ内に記憶するために動作するものであり、制御プロセッサは、グラフィックプロセッサに命令を提供するように動作するものであり、パケットスイッチは、制御プロセッサ及びグラフィックプロセッサの個々のセットに機能的に結合されており、マージユニットは、1つ以上のローカルマージユニット及びコアマージユニットを含み、ローカルマージユニットの各々はグラフィックプロセッサの各セットに結合され且つ個々のローカルフレームバッファからのフレーム画像データを同期的に受領すると共にこれに基づいてローカルな統合フレーム画像データを同期的に生成するために動作するものであり、コアマージユニットは各ローカルマージユニットに結合され且つ個々のローカルマージユニットからローカル統合フレーム画像データを同期的に受領すると共にこれに基づいて統合フレーム画像データを同期的に生成するために動作するものであり、制御データバスは、コアマージユニット及びローカルマージユニットに機能的に結合されており、パケットスイッチコントローラは、パケットスイッチと制御データバスの間に機能的に結合されると共にパケットスイッチと制御データバス上で優先度に基づいてデータを送出及び受領するように動作するものである、装置。

請求項31

パケットスイッチコントローラが、専用データラインを経て、コアマージユニットに結合されている、請求項30記載の装置。

請求項32

パケットスイッチコントローラがコアマージユニットと一体に構成される部分である、請求項30記載の装置。

請求項33

制御プロセッサが、グラフィックプロセッサ、ローカルマージユニット、及びコアマージユニットに対して、(i)画像データがレンダリングされたとき、フレーム画像データが個々のローカルフレーム画像バッファから解放されたとき、及びフレーム画像データがマージされたときの間におけるタイミング関係、(ii)統合フレーム画像データを同期的に生成するためにどのようにフレーム画像データがマージされるか、の少なくとも1つに影響を与える1つ以上のモードで動作するように指示する、請求項32記載の装置。

請求項34

制御プロセッサが、少なくとも個々のローカルマージユニット及びコアマージユニットの動作に関する1つ以上のモードに関する命令を、パケットスイッチ、パケットスイッチコントローラ及び制御データバスを経て送出する、請求項33記載の装置。

請求項35

コアマージユニットが、個々のローカルフレームバッファから個々のローカルマージユニットにフレーム画像データを同期的に解放するために少なくとも幾つかのグラフィックプロセッサにより使用されるマージ同期信号を生成し、個々のローカルマージユニットがローカル統合フレーム画像データをコアマージユニットに同期的に解放することを許容するように動作する、請求項32記載の装置。

請求項36

コアマージユニットが、制御データバス、パケットスイッチコントローラ、及びパケットスイッチを経て、マージ同期信号を個々のグラフィックプロセッサに送出する、請求項35記載の装置。

請求項37

コアマージユニットがマージ同期信号を生成したときにパケットスイッチコントローラがデータバスを占有し、これによりマージ同期信号が優先度に基づいてパケットスイッチを経て個々のグラフィックプロセッサに送出される、請求項36記載の装置。

請求項38

パケット交換ネットワーク上で相互に結合された複数の処理ノードサブセットで形成され、表示装置の画像領域をカバーする画像を生成するために画像データを処理する装置であって、複数のグラフィックプロセッサのセットを含む少なくとも1つのアクセラレータノード、1つ以上のマージユニットを含む1つ以上のマージノード、少なくとも1つのコンフィグレーションノード制御ノード、及び、少なくとも1つのパケットスイッチノードを有しており、各グラフィックプロセッサは、画像データをフレーム画像データにレンダリングし、このフレーム画像データを個々のローカルフレームバッファ内に記憶するために動作するものであり、マージユニットは1つ以上のローカルマージユニット及びコアユニットを含んでおり、ローカルマージユニットの各々はグラフィックプロセッサの各セットと関連し且つ個々のローカルフレームバッファからフレーム画像データを同期的に受領すると共にこれに基づいてローカル統合フレーム画像データを同期的に生成するように動作するものであり、コアマージユニットは各ローカルマージユニットと関連し且つ個々のローカルマージユニットからローカル統合フレーム画像データを同期的に受領すると共にこれに基づいて統合フレーム画像データを同期的に生成するために動作するものであり、コンフィグレーションノードは、処理ノードのサブセットを選択することを容易化するように動作するものであり、制御ノードは、パケット交換ネットワーク上で処理ノードのサブセットに命令を与えるために動作する制御プロセッサを含み、表示のための画像を生成するために画像データを処理することに関与するために処理ノードのサブセットを選択するために動作するものであり、パケットスイッチノードは、処理ノードのサブセット、少なくとも画像データを形成するデータパケット、フレーム画像データ及び統合フレーム画像データの間でデータパケットを経路選択するために動作するものである、装置。

請求項39

コンフィグレーションノードが1つ以上のノードコンフィグレーション要求をパケット交換ネットワーク上で複数の処理ノードに発行するために動作し、1つ以上のノードコンフィグレーション要求が、処理ノードにそれらのデータ処理能力及びそれらのコンフィグレーションノードへの着アドレスに関する少なくとも幾つかの情報を送出することを促す、請求項38記載の装置。

請求項40

データ処理に関する少なくとも幾つかの情報が、画像データがフレーム画像データ内で処理されることができる速度、利用可能なフレームバッファ数、フレーム画像データ解像度、グラフィックプロセッサによりサポートされる個々の動作のモードの表示、統合フレーム画像データ内マージングのために個々のフレーム画像データが入力される並列パスの数、マージユニットによりサポートされる個々の動作のモードの表示、データを記憶するために利用可能なメモリサイズ、メモリアクセス速度、及びメモリのスループット、の少なくとも1つを含んでいる、請求項39記載の装置。

請求項41

コンフィグレーションノードが、更に、処理ノードのそれぞれへの1つ以上のノードコンフィグレーション要求に応答された実質的にすべての処理ノードの着アドレスを送出するように動作する、請求項39記載の装置。

請求項42

コンフィグレーションノードが、更に、1つ以上のノードコンフィグレーション要求及びその制御ノードへの着アドレスに応答して、各処理ノードにより提供される情報を送出する、請求項39記載の装置。

請求項43

制御ノードは、1つ以上のノードコンフィグレーション要求への応答に基づいて表示のための画像を生成するため画像データを処理することに関与するために、1つ以上のノードコンフィグレーション要求に応答した処理ノードの中から処理ノードのサブセットを選択するように動作する、請求項42記載の装置。

請求項44

制御ノードは、更に、表示のための画像を生成するために画像データを処理することに関与するための要求を、処理ノードのサブセットのそれぞれに対して、これらがこのような関与を受諾することを促すために送出するように動作する、請求項43記載の装置。

請求項45

制御ノードは、更に、関与への要求に応答した処理ノードのサブセットの1つ以上に対して、1つ以上の別のコンフィグレーション要求を送出するために動作する、請求項44記載の装置。

請求項46

1つ以上の別のノードコンフィグレーション要求が、ノードが送出及び受領することを予測する画像データ、フレーム画像データ、統合フレーム画像データ、及び処理命令の少なくとも1つにおけるフォーマットに関する情報を提供するためのノードに対する要求を少なくとも含んでいる、請求項45記載の装置。

請求項47

制御ノードは、更に、1つ以上のコンフィグレーション要求に応答して提供されたデータ処理能力及びフォーマット情報の少なくとも1つに基づいて、表示のための画像を生成するために画像データを処理することに関与するために、処理ノードのサブセット内にどの処理ノードを保持すべきかを決定するように動作する、請求項46記載の装置。

請求項48

パケット交換ネットワークがローカルエリアネットワーク上に形成されている、請求項38記載の装置。

請求項49

少なくとも1つのビデオハブノードを更に有し、このビデオハブノードが、(i)統合フレーム画像データのフレームの少なくとも1つ及びフレーム画像データの少なくとも1つの外部に供給されたフレームを受領し、(ii)フレーム画像データの一連のフレームの1つ以上、統合フレーム画像データの次のフレームがフレーム画像データの外部に供給されたフレーム及び統合フレーム画像データのフレームの少なくとも1つに基づくものとなるように、フレーム画像データの少なくとも1つの外部に供給されたフレーム及び統合フレーム画像データのフレームの少なくとも1つを少なくとも1つのグラフィックプロセッサに送出するように動作する、請求項38記載の装置。

請求項50

フレーム画像データを個々のローカルフレームバッファからローカルマージユニットに解放するために、コアマージユニットが、グラフィックプロセッサにより使用されるマージ同期信号を生成するために動作し、マージ同期信号が、統合フレーム画像データの個々のフレームがどのように表示されるのかを規定する表示プロトコルに従って同期される、請求項38記載の装置。

請求項51

表示プロトコルが、統合フレーム画像データの一連のフレームが表示されるフレーム速度及び統合フレーム画像データが何時更新されるのかを表すブランク期間の少なくとも1つを規定する、請求項50記載の装置。

請求項52

フレーム画像データの少なくとも1つの外部に供給されたフレームが表示プロトコルの1つに付されており、マージ同期信号が、その表示プロトコルに従って同期されており、これにより、コアマージユニットが、フレーム画像データの少なくとも1つの外部に供給されたフレームに基づいて統合フレーム画像データの一連のフレームを生成するように動作する、請求項50記載の装置。

請求項53

少なくとも1つのメモリハブノードを更に有し、このメモリハブノードが、(i)共通の画像データを受領及びそれを記憶し、(ii)フレーム画像データの一連のフレーム及び統合フレーム画像データの一連のフレームの少なくとも1つが、少なくとも幾つかの共通の画像データを含むように、共通の画像データをグラフィックプロセッサの少なくとも1つに送出する、ために動作する、請求項38記載の装置。

請求項54

共通の画像データがテクスチャデータを含んでいる、請求項53記載の装置。

請求項55

パケット交換ネットワークがオープンネットワーク上に形成されている、請求項38記載の装置。

請求項56

オープンネットワークがインターネットである、請求項55記載の装置。

請求項57

制御ノードが(n)番目のレベルの制御ノードであり、少なくとも1つのマージノードが(n)番目のレベルのマージノードであり、パケット交換ノードが(n)番目のレベルのパケット交換ノードであり、少なくとも1つのアクセラレータノードが、(n−1)番目のレベルの制御ノード及びパケット交換ネットワーク上で(n−1)番目のレベルのパケットスイッチノードを経て一緒に結合された複数の(n−1)番目のレベルのアクセラレータノードを含む(n)番目のレベルのアクセラレータノードである、請求項38記載の装置。

請求項58

(n−1)番目のアクセラレータノードの少なくとも1つが、(n−i−1)番目のレベルの制御ノード及びパケット交換ネットワーク上で(n−i−1)番目のレベルのパケットスイッチノードを経て一緒に結合された複数の(n−i−1)番目のレベルのアクセラレータノードを含んでいる、請求項38記載の装置。

請求項59

少なくとも幾つかのアクセラレータノードがグラフィックプロセッサの個々のセットを形成するためにグループ化されており、少なくとも幾つかのマージノードは、グラフィックプロセッサの個々のセットと関連した個々のローカルマージユニットを含んでおり、これにより、個々のローカルマージユニットは個々のローカルフレームバッファからのフレーム画像データを同期的に受領するため、及びこれに基づいてローカルな統合フレーム画像データを同期的に生成するために動作し、サブセットの処理ノードの少なくとも1つは、個々のローカルマージユニットからのローカルな統合フレーム画像データを同期的に受領するため、及びこれに基づいて統合フレーム画像データを同期的に生成するために機能するコアマージユニットを含んでいる、請求項58記載の装置。

請求項60

(i)命令を含む情報セット、及び(ii)画像の生成において使用される種々のデータを含む情報セットの少なくとも一方である(n)番目のレベルの情報セットを、1つ以上の処理ノードのサブセットに対して、(n)番目のレベルの制御ノードがパケット交換ネットワーク上で送出するように動作する、請求項59記載の装置。

請求項61

グラフィックプロセッサ、ローカルマージユニット、及びコアマージユニットに対して、(i)画像データがレンダリングされたとき、フレーム画像データが個々のローカルフレーム画像バッファから解放されたとき、及びフレーム画像データがマージされたときの間におけるタイミング関係、(ii)統合フレーム画像データを同期的に生成するためにどのようにしてフレーム画像データがマージされるか、の少なくとも1つに影響を与える1つ以上のモードで動作させるための情報を、命令が含んでいる、請求項60記載の装置。

請求項62

画像の生成に使用される種々のデータが、テクスチャデータ、ビデオデータ及びフレーム画像データの外部に供給されるフレームの少なくとも1つを含んでいる、請求項60記載の装置。

請求項63

(n)番目のレベルの情報セットのそれぞれが、(i)所定の情報セットが(n)番目のレベルの制御ノードから発行されたことを示す(n)番目のレベルのヘッダ、(ii)それぞれ1つ以上の(n)番目のレベルのノードのための情報を含む複数の(n)番目のレベルの情報ブロックを含んでいる、請求項60記載の装置。

請求項64

(n)番目のレベルのパケットスイッチノードが、複数の(n)番目のレベルの情報ブロックを個々の(n)番目のレベルのノードに経路選択するように動作する、請求項63記載の装置。

請求項65

複数の(n)番目のレベルの情報ブロックが(n)番目のレベルのアクセラレータノードのための情報を含む、請求項63記載の装置。

請求項66

(n)番目のレベルのアクセラレータノードのための(n)番目のレベルの情報ブロックが、個々の(n−1)番目のノードのための複数の個々の(n−1)番目の情報サブブロックを含む、請求項65記載の装置。

請求項67

(n−1)番目のレベルのパケット交換ノードが、複数の(n−1)番目のレベルの情報サブブロックを個々の(n−1)番目のノードに経路選択するように動作する、請求項66記載の装置。

請求項68

(n−i)番目のレベルのアクセラレータノードのための少なくとも1つの(n−i)番目のレベルの情報サブブロックが、個々の(n−i−1)番目のノードのための複数の個々の情報サブブロックを含む、請求項66記載の装置。

請求項69

少なくとも1つの(n)番目のレベルのビデオハブノードを有し、このビデオハブノードが、(i)統合フレーム画像データのフレーム及びフレーム画像データの少なくとも1つの外部に供給されたフレームの少なくとも1つを受領し、(ii)フレーム画像データの一連のフレームの1つ以上、統合フレーム画像データの次のフレームが、フレーム画像データの外部に供給されたフレーム及び統合フレーム画像データのフレームの少なくとも1つに基づくものとなるように、フレーム画像データの少なくとも1つの外部に供給されたフレーム及び統合フレーム画像データのフレームの少なくとも1つを少なくとも1つのグラフィックプロセッサに送出する、ために動作する、請求項65記載の装置。

請求項70

複数の(n)番目のレベルの情報ブロックの少なくとも1つが、少なくとも1つの(n)番目のレベルのビデオハブノードのための情報を含む、請求項69記載の装置。

請求項71

少なくとも1つの(n)番目のレベルのメモリハブノードを処理ノードのサブセットが含み、このメモリハブノードが、(i)共通の画像データを受領及び記憶するため、(ii)フレーム画像データの一連のフレーム及び統合フレーム画像データの一連のフレームの少なくとも1つが少なくとも幾つかの共通の画像データを含むように、共通の画像データをグラフィックプロセッサの少なくとも1つに送出するために動作する、請求項65記載の装置。

請求項72

複数の(n)番目のレベルの情報ブロックがの少なくとも1つが、少なくとも1つの(n)番目のレベルのメモリハブノードのための情報を含む、請求項71記載の装置。

請求項73

個々のグラフィックプロセッサの個々のローカルフレームバッファが、別のデータラインを経て1つ以上のマージユニットに機能的に結合されており、これにより、個々のローカルフレームバッファから個々の1つ以上のマージユニットへの、フレーム画像データの排他的な送出が確保される、請求項1、23,30,38または57に記載の装置。

請求項74

グラフィックプロセッサの個々のグループの個々のローカルフレームバッファが別のデータラインを経て個々のローカルマージユニットに機能的に連結されており、これにより、個々のローカルフレームバッファから個々のマージユニットへの、フレーム画像データの排他的な送出が確保され、及び、個々のローカルマージユニットは、別のデータラインを経てコアマージユニットに機能的に連結されており、これにより、個々のローカルマージユニットからコアマージユニットへのローカルな統合フレーム画像データの独立な送出が確保される、請求項23,30,38または57記載の装置。

請求項75

フレーム画像データを個々のローカルフレームバッファから個々のローカルマージユニットに同期的に解放するため、及び個々のローカルマージユニットにローカルな統合フレーム画像データをコアマージユニットに対して同期的に解放させるために、コアマージユニットが、グラフィックプロセッサの個々のセットの少なくとも幾つかにより使用されるマージ同期信号を生成するように動作する、請求項1、23,3,38または57に記載の装置

請求項76

統合フレーム画像データの個々のフレームがどのように表示されるかを規定する表示プロトコルに従ってマージ同期信号が同期される、請求項75記載の装置。

請求項77

表示プロトコルが、結合されたフレームデータの一連のフレームが表示されるフレーム速度、統合フレーム画像が何時更新されるのかを表すブランク期間の少なくとの1つを規定する、請求項76記載の装置。

請求項78

マージ同期信号が、ブランク期間の終期に隣接した遷移部を含んでおり、これにより、少なくとも1つのマージユニットが、ブランク期間の少なくとも1つの終期において表示のために統合フレーム画像データを生成することを開始する、請求項77記載の装置。

請求項79

マージ同期信号の遷移部がブランク期間の終期に実質的に一致している、請求項78記載の装置。

請求項80

マージ同期信号が、ブランク期間の終期を導く遷移部を含んでいる、請求項78記載の装置。

請求項81

グラフィックプロセッサのそれぞれが更に、マージ同期信号と同期して、画像データをフレームバッファの個々の1つにレンダリングするように動作する、請求項75記載の装置。

請求項82

グラフィックプロセッサのそれぞれが、更に、制御プロセッサからの1つ以上のレンダリング命令に応答して、画像データの個々のフレームバッファ内へのレンダリングを開始する、請求項81記載の装置。

請求項83

グラフィックプロセッサの少なくとも1つが、更に、フレーム画像データのフレームをレンダリングすることが完了したときに制御プロセッサにレンダリング完了信号を発行するために動作し、またそれをフレームバッファの個々の1つに記憶するように動作する、請求項82記載の装置。

請求項84

制御プロセッサが、グラフィックプロセッサ及び1つ以上のマージユニットに対して、(i)画像データがレンダリングされたとき、フレーム画像データが個々のローカルフレーム画像バッファから解放されたとき、及びフレーム画像データがマージされたときの間におけるタイミング関係、(ii)統合フレーム画像データを同期的に生成するためにどのようにしてフレーム画像データがマージされるか、の少なくとも1つに影響を与える1つ以上のモードで動作するように指示する、請求項1、23、30、38または57記載の装置。

請求項85

制御プロセッサが、グラフィックプロセッサ及び1つ以上のマージユニットに対して、フレーム毎に1つ以上のモードで動作するように指示するように動作する、請求項84記載の装置。

請求項86

モードの少なくとも1つによって、1つ以上のグラフィックプロセッサが各ブランク期間の終期の前に、画像データを個々のフレームバッファ内でレンダリングすることを完了し、1つ以上のグラフィックプロセッサが、整数のブランク期間の終期の前に個々のフレームバッファ内に画像データをレンダリングすることを完了し、1つ以上のグラフィックプロセッサが、複数のフレームバッファうち、対応する整数のブランク期間の終期の前に個々のフレームバッファ内に画像データをレンダリングすることを完了する、請求項84記載の装置。

請求項87

モードが、領域分割、平均化、レイヤブレンディング、Zソート及びレイヤブレンディング、及びフリップアニメーションの少なくとも1つを含む、請求項84記載の装置。

請求項88

少なくとも1つのモードが、少なくとも2つのローカルフレームバッファが画像領域及び非レンダリング領域に各々に対応する個々のレンダリング領域に区分され、レンダリング領域の集合により画像領域のすべての部分に対応する全体的なレンダリング領域が生じることを提供する領域分割モードである、請求項84記載の装置。

請求項89

領域分割モードが、少なくとも2つのグラフィックプロセッサが各ブランク期間の終期の前にフレームバッファの個々のレンダリング領域内に画像データをレンダリングすることを完了することを更に提供するものである、請求項88記載の装置。

請求項90

統合フレーム画像データを生成するためαブレンディング値に基づいて少なくとも2つのグラフィックプロセッサの個々のレンダリング領域からのフレーム画像データを同期的に集合するために1つ以上のマージユニットが更に動作し、また統合フレーム画像データが画像領域をカバーできるものである、請求項88記載の装置。

請求項91

少なくとも1つのモードが、画像領域のすべての部分にそれぞれ対応するレンダリング領域をグラフィックプロセッサの少なくとも2つのローカルフレームバッファが含んでおり、少なくとも2つのローカルフレームバッファからの個々のフレーム画像データが統合フレーム画像データを生成するために平均化されることを提供する平均化モードである、請求項84記載の装置。

請求項92

平均化モードが、更に、各ブランク期間の終期の前に少なくとも2つのグラフィックプロセッサが画像データをフレームバッファの個々のレンダリング領域にレンダリングすることを完了することを提供するものである、請求項91記載の装置。

請求項93

1つ以上のマージユニットが、更に、統合フレーム画像データを生成するためにαブレンディング値に基づいて少なくとも2つのグラフィックプロセッサの個々のレンダリング領域からのフレーム画像データを同期的に平均化するために動作し、また統合フレーム画像データが画像領域をカバーできるものである、請求項91記載の装置。

請求項94

少なくとも1つのモードが、(i)画像データの少なくとも幾つかがグラフィックプロセッサの少なくとも2つのローカルフレームバッファ内にレンダリングされ、これにより、これらローカルフレームバッファのそれぞれが統合フレーム画像データの一部を表すフレーム画像データを含む、(ii)統合フレーム画像データの各一部に優先度が付けられ、及び、(iii)1つ以上のマージユニットが更に優先度に従う順序でフレーム画像データのそれぞれを階層化することにより統合フレーム画像データを同期的に生成するように動作することを提供するレイヤブレンディングモードである、請求項84記載の装置。

請求項95

1つ以上のマージユニットが更に、フレーム画像データを同期的に階層化するように動作し、これにより、レイヤの優先度に依存して、フレーム画像データの1つがフレーム画像データの他のものを上書きする、請求項94記載の装置。

請求項96

レイヤブレンディングモードが更に、各ブランク期間の終期の前に、少なくとも2つのグラフィックプロセッサが画像データを個々のフレームバッファ内にレンダリングすることを完了することを更に提供するものである、請求項94記載の装置。

請求項97

少なくとも1つのモードが、(i)画像データの少なくとも幾つかが少なくとも2つのグラフィックプロセッサのローカルフレームバッファ内にレンダリングされ、これにより、少なくとも2つのローカルフレームバッファのそれぞれが統合フレーム画像データの一部を表すフレーム画像データを含む、(ii)フレーム画像データが画像深さを表すZ値を含む、(iii)1つ以上のマージユニットが更に、画像深さに従ってフレーム画像データのそれぞれをZソート及び階層化することで統合フレーム画像データを同期的に生成するように動作すること、を提供する、Zソート及びレイヤブレンディングモードである、請求項84記載の装置。

請求項98

1つ以上のマージユニットは、更に、フレーム画像データを同期的に階層化するために動作し、これにより、フレーム画像データの1つの少なくとも一部がそのZ値に依存してフレーム画像データの他の部分に上書きされる、請求項97記載の装置。

請求項99

Zソート及びレイヤブレンディングモードが、更に、各ブランク期間の終期の前に、少なくとも2つのグラフィックプロセッサが画像データを個々のフレームバッファ内にレンダリングすることを完了することを提供する、請求項97記載の装置。

請求項100

少なくとも1つのモードが、(i)少なくとも2つのグラフィックプロセッサのローカルフレームバッファが、画像領域をカバーすることが可能なフレーム画像データを含み、及び(ii)1つ以上のマージユニットが更に、少なくとも2つのグラフィックプロセッサからの個々のフレーム画像データを順次的に解放することにより統合フレーム画像データを生成するように動作することを提供するフリップアニメーションモードである、請求項84記載の装置。

請求項101

フリップアニメーションモードが、更に、整数のブランク期間の終期の前に少なくとも2つのグラフィックプロセッサが画像データの個々のフレームバッファ内へのレンダリングを完了することを提供するものである、請求項100記載の装置。

請求項102

整数のブランク期間が、フリップアニメーションモードに関与するグラフィックプロセッサの数に対応する、請求項101記載の装置。

請求項103

整数のブランク期間が、フリップアニメーションモードに関与するローカルフレームバッファの数に対応する、請求項101記載の装置。

請求項104

統合フレーム画像データのフレーム及びフレーム画像データの少なくとも1つの外部に供給されたフレームの少なくとも1つを受領するように動作する少なくとも1つのビデオハブを更に有し、このビデオハブは、複数のグラフィックプロセッサに機能的に連結されており、これにより、(i)1つ以上のグラフィックプロセッサからのフレーム画像データの一連のフレームの少なくとも1つが、フレーム画像データの少なくとも1つの外部に供給されたフレーム及び統合フレーム画像データのフレームの少なくとも1つを含み、(ii)1つ以上のマージユニットが、フレーム画像データの少なくとも1つの外部に供給されたフレーム及び統合フレーム画像データのフレームの少なくとも1つに基づいて、統合フレーム画像データの一連のフレームを生成するように動作する、請求項38または57記載の装置。

請求項105

マージ同期信号が、統合フレーム画像データの個々のフレームがどのように表示されるのかを規定する表示プロトコルに従って同期される、請求項105記載の装置。

請求項106

表示プロトコルが、統合フレーム画像データの一連のフレームが表示されるフレーム速度、及び統合フレーム画像データが何時更新されるべきかを指示するブランク期間の少なくとも1つを規定する、請求項105記載の装置。

請求項107

フレーム画像データの少なくとも1つの外部に供給されるフレームが表示プロトコルの1つに付けられており、また、マージ同期信号がその表示プロトコルに従って同期され、これにより、フレーム画像データの少なくとも1つの外部に供給されるフレームに基づいて統合フレーム画像データの次のフレームを生成するためにマージユニットが動作する、請求項105記載の装置。

請求項108

共通の画像データを受領し及びこれを記憶するように動作する少なくとも1つのメモリハブを更に有し、このメモリハブは複数のグラフィックプロセッサに機能的に連結されており、これにより、(i)1つ以上のグラフィックプロセッサからのフレーム画像データの一連のフレームの少なくとも1つが共通の画像データの少なくとも幾つかを含み、及び(ii)1つ以上のマージユニットが共通の画像データに基づいて統合フレーム画像データの一連のフレームを生成するように動作する、請求項38または57記載の装置。

請求項109

共通の画像データがテクスチャデータを含む、請求項108記載の装置。

請求項110

表示装置の画像領域をカバーする画像を生成するために画像データを処理する方法であって、複数のグラフィックプロセッサにより、画像データをフレーム画像データにレンダリングし、個々のローカルフレームバッファ内にフレーム画像データを記憶し、及び、これに基づいて統合フレーム画像データを同期的に生成するために個々のローカルフレームバッファからのフレーム画像データを同期的にマージする、方法。

請求項111

フレーム画像データをマージするために個々のローカルフレームバッファから同期的に解放するために、複数のグラフィックプロセッサの少なくとも幾つかにより使用されるマージ同期信号を生成することを、更に行う、請求項110記載の方法。

請求項112

統合フレーム画像データの個々のフレームがどのように表示されるのかを規定する表示プロトコルに従ってマージ同期信号が同期される、請求項111記載の方法。

請求項113

表示プロトコルが、統合フレーム画像データの後続フレームが表示されるフレーム速度、及び統合フレーム画像データが何時更新されるのかを表すブランク期間の少なくとも1つを規定する、請求項112記載の方法。

請求項114

マージ同期信号は、ブランク期間の終期に近づく遷移部を含んでおり、これにより、ブランク期間の少なくとも1つの終期において統合フレーム画像データが表示のために利用可能になる、請求項113記載の方法。

請求項115

マージ同期信号の遷移部がブランク期間の終期に実質的に一致する、請求項114記載の方法。

請求項116

マージ同期信号が、ブランク期間の終期を導く遷移部を含んでいる、請求項114記載の方法。

請求項117

画像データが、マージ同期信号に対して同期的に、個々のフレームバッファ内にレンダリングされる、請求項111記載の方法。

請求項118

グラフィックプロセッサが、(i)画像データがレンダリングされた時、フレーム画像データが個々のローカルフレーム画像バッファから解放された時、及びフレーム画像データがマージされた時の間におけるタイミング関係、(ii)統合フレーム画像データを同期的に生成するためにどのようにフレーム画像データがマージされるのか、の少なくとも1つに影響を与える1つ以上のモードで動作できる、請求項110記載の方法。

請求項119

グラフィックプロセッサに、1つ以上のモードでフレーム毎に動作するように指示することを更に含む、請求項118記載の方法。

請求項120

少なくとも1つのモードが、1つ以上のグラフィックプロセッサが、各ブランク期間の終期の前に、画像データを個々のフレームバッファ内にレンダリングすることを完了し、1つ以上のグラフィックプロセッサが、整数のブランク期間の終期の前に、画像データを個々のフレームバッファ内にレンダリングすることを完了し、及び1つ以上のグラフィックプロセッサが整数のローカルフレームバッファを含み、また、1つ以上のグラフィックプロセッサが、整数のブランク期間の対応する整数のブランク期間の終期の前に、画像データを個々の整数のフレームバッファ内にレンダリングすることを完了することを提供する、請求項118記載の方法。

請求項121

モードが、領域分割、平均化、レイヤブレンディング、Zソート及びレイヤブレンディング、及びフリップアニメーションの少なくとも1つを含む、請求項118記載の方法。

請求項122

少なくとも1つのモードが、少なくとも2つのローカルフレームバッファが画像領域及び非レンダリング領域にそれぞれに対応する個々のレンダリング領域に区分され、またレンダリング領域の集合により画像領域のすべての部分に対応する全体的なレンダリング領域が生じることを提供する、領域分割モードである、請求項118記載の方法。

請求項123

少なくとも2つのグラフィックプロセッサが各ブランク期間の終期の前にフレームバッファの個々のレンダリング領域内に画像データをレンダリングすることを完了することを、領域分割モードが更に提供するものである、請求項122記載の方法。

請求項124

統合フレーム画像データを生成するためαブレンディング値に基づいて少なくとも2つのグラフィックプロセッサの個々のレンダリング領域からのフレーム画像データを同期的に集合することを更に有し、また統合フレーム画像データが画像領域をカバーできるものである、請求項122記載の方法。

請求項125

少なくとも1つのモードが、画像領域のすべての部分にそれぞれ対応するレンダリング領域をグラフィックプロセッサの少なくとも2つのローカルフレームバッファが含んでおり、また少なくとも2つのローカルフレームバッファからの個々のフレーム画像データが統合フレーム画像データを生成するために平均化されることを提供する、平均化モードである、請求項118記載の方法。

請求項126

平均化モードが更に、各ブランク期間の終期の前に少なくとも2つのグラフィックプロセッサが画像データをフレームバッファの個々のレンダリング領域にレンダリングを完了することを提供するものである、請求項125記載の方法。

請求項127

統合フレーム画像データを生成するためにαブレンディング値に基づいて少なくとも2つのグラフィックプロセッサの個々のレンダリング領域からのフレーム画像データを同期的に平均化することを更に有し、また統合フレーム画像データが画像領域をカバーできるものである、請求項125記載の方法。

請求項128

少なくとも1つのモードが、(i)画像データの少なくとも幾つかがグラフィックプロセッサの少なくとも2つのローカルフレームバッファ内にレンダリングされ、これにより、これらローカルフレームバッファのそれぞれが統合フレーム画像データの一部を表すフレーム画像データを含む、(ii)統合フレーム画像データの各一部に優先度が付けられる、ことを提供するレイヤブレンディングモードであり、また(iii)優先順位に従った順序でフレーム画像データのそれぞれを階層化することにより統合フレーム画像データを同期的に生成することを更に行う、請求項118記載の方法。

請求項129

フレーム画像データを同期的に階層化し、これにより、レイヤの優先度に依存して、フレーム画像データの1つがフレーム画像データの他のものを上書きする、請求項128記載の方法。

請求項130

レイヤブレンディングモードが更に、各ブランク期間の終期の前に、少なくとも2つのグラフィックプロセッサが画像データを個々のフレームバッファ内にレンダリングすることを完了することを更に提供するものである、請求項128記載の方法。

請求項131

少なくとも1つのモードが、(i)画像データの少なくとも幾つかが少なくとも2つのグラフィックプロセッサのローカルフレームバッファ内にレンダリングされ、これにより、少なくとも2つのローカルフレームバッファのそれぞれが統合フレーム画像データの一部を表すフレーム画像データを含む、(ii)フレーム画像データが画像深さを表すZ値を含む、ことを提供するZソート及びレイヤブレンディングモードであり、また、(iii)画像深さに従ってフレーム画像データのそれぞれをZソート及び階層化することで統合フレーム画像データを同期的に生成することを更に行う、請求項118記載の方法。

請求項132

フレーム画像データを同期的に階層化し、これにより、フレーム画像データの1つの少なくとも一部がそのZ値に依存してフレーム画像データの他の部分に上書きすることを更に行う、請求項131記載の方法。

請求項133

Zソート及びレイヤブレンディングモードは、更に、各ブランク期間の終期の前に、少なくとも2つのグラフィックプロセッサが画像データを個々のフレームバッファ内にレンダリングすることを完了することを提供する、請求項131記載の方法。

請求項134

少なくとも1つのモードが、(i)少なくとも2つのグラフィックプロセッサのローカルフレームバッファが画像領域をカバーすることが可能なフレーム画像データを含む、フリップアニメーションモードであり、また、(ii)少なくとも2つのグラフィックプロセッサからの個々のフレーム画像データを順次的に解放することにより統合フレーム画像データを生成することを更に行う、請求項118記載の方法。

請求項135

フリップアニメーションモードが更に、整数のブランク期間の終期の前に少なくとも2つのグラフィックプロセッサが画像データの個々のフレームバッファ内へのレンダリングを完了することを提供するものである、請求項134記載の方法。

請求項136

整数のブランク期間が、フリップアニメーションモードに関与するグラフィックプロセッサの数に対応する、請求項135記載の方法。

請求項137

整数のブランク期間が、フリップアニメーションモードに関与するローカルフレームバッファの数に対応する、請求項101記載の装置。

請求項138

統合フレーム画像データのフレーム及びフレーム画像データの少なくとも1つの外部に供給されたフレームの少なくとも1つを受領し、統合フレーム画像データ及びフレーム画像データの少なくとも1つの外部に供給されたフレームの少なくとも1つを、複数のグラフィックプロセッサの少なくとも1つに送出し、これにより、(i)1つ以上のグラフィックプロセッサからのフレーム画像データの一連のフレームの少なくとも1つが、フレーム画像データの少なくとも1つの外部に供給されたフレーム及び統合フレーム画像データのフレームの少なくとも1つを含み、及びフレーム画像データの少なくとも1つの外部に供給されたフレーム及び統合フレーム画像データのフレームの少なくとも1つに基づいて、統合フレーム画像データの一連のフレームを生成する、請求項110記載の方法。

請求項139

メモリ内に共通の画像データを受領し、共通の画像データの少なくとも幾つかを複数のグラフィックプロセッサの少なくとも幾つかに送出し、これにより、(i)1つ以上のグラフィックプロセッサからのフレーム画像データの一連のフレームの少なくとも1つが共通の画像データの少なくとも幾つかを含み、及び共通の画像データに基づいて統合フレーム画像データの一連のフレームを生成する、請求項110記載の方法。

請求項140

共通の画像データがテクスチャデータを含む、請求項139記載の方法。

請求項141

表示画面上に表示する画像を生成するための画像データ処理方法であって、複数のグラフィックプロセッサを使用して画像データをフレーム画像データにレンダリングし、フレーム画像データを個々のローカルフレームバッファ内に記憶し、フレーム画像データが個々のローカルフレームバッファから何時解放されるのかを示す個々のローカル同期カウント(synchronization count)を生成し、及び、フレーム画像データから統合フレーム画像データを同期的に生成する、方法。

請求項142

統合フレーム画像データの個々のフレームがどのように表示されるのかを規定する表示プロトコルに従って同期される同期信号を生成することを更に行う、請求項141記載の方法。

請求項143

表示プロトコルが、統合フレーム画像データの一連のフレームが表示されるフレーム速度、及び統合フレームが画像データが何時更新されるのかを表すブランク期間の少なくとも1つを規定する、請求項141記載の方法。

請求項144

同期信号に基づいて個々の同期カウントの増加及び減少の一方を行う、請求項142記載の方法。

請求項145

個々のローカル同期カウントがしきい値に達したときに個々のフレーム画像データをマージのために解放することを更に行う、請求項144記載の方法。

請求項146

個々の同期カウントをリセットすべき時を指示する個々のリセット信号を供給することを更に行う、請求項145記載の方法。

請求項147

表示装置の画像領域をカバーする画像を生成するための画像データを処理する方法であって、パケット交換ネットワーク上で一緒に結合された複数の処理ノードのサブセットにより実行され、複数の処理ノードの中から複数のグラフィックプロセッサのセットを含む少なくとも1つのアクセラレータノードを選択することを行い、各グラフィックプロセッサは画像データをフレーム画像データにレンダリングすると共にフレーム画像データを個々のローカルフレームバッファ内に記憶するために動作し、複数の処理ノードの中から1つ以上のマージユニットを含む1つ以上のマージユニットを選択することを行い、1つ以上のマージユニットは1つ以上のローカルマージユニット及びコアマージユニットを含み、ローカルマージユニットの個々の1つはグラフィックプロセッサの各セットに関連し且つ個々のローカルフレームバッファからフレーム画像データを同期的に受領すると共にこれに基づいてローカルな統合フレーム画像データを同期的に生成するように動作するものであり、コアマージユニットは各ローカルマージユニットと関連し且つ個々のローカルマージユニットから統合フレーム画像データを同期的に受領すると共にこれに基づいて統合フレーム画像データを同期的に生成するように動作するものであり、パケット交換ネットワーク上で処理ノードのサブセットに命令を供給するために動作し且つ表示のための画像を生成するために画像データの処理に関与するために処理ノードのサブセットを選択するように動作する、制御プロセッサを含む制御ノードを確立することを行い、及び、ノードのサブセット間でデータパケットを経路選択するように動作する少なくとも1つのパケット交換ノードを有し、データパケットは画像データ、フレーム画像データ、及び統合フレーム画像データを少なくとも形成する、方法。

請求項148

1つ以上のノードコンフィグレーション要求をパケット交換ノード上で複数の処理ノードに発行することを更に行い、1つ以上のノードコンフィグレーション要求は、処理ノードにそれらのデータ処理能力及びそれらのコンフィグレーションノードへの着アドレスに関する少なくとも幾つかの情報を送出することを促す、請求項147記載の方法。

請求項149

データ処理に関する少なくとも幾つかの情報が、画像データがフレーム画像データ内で処理されることができる速度、利用可能なフレームバッファ数、フレーム画像データ解像度、グラフィックプロセッサによりサポートされる個々の動作のモードの表示、統合フレーム画像データ内にマージングのために個々のフレーム画像データが入力される並列パスの数、マージユニットによりサポートされる個々の動作のモードの表示、データを記憶するために利用可能なメモリサイズ、メモリアクセス速度、及びメモリのスループット、の少なくとも1つを含んでいる、請求項148記載の方法。

請求項150

処理ノードのそれぞれへの1つ以上のノードコンフィグレーション要求に応答された実質的にすべての処理ノードの着アドレスを送出することを更に行う、請求項148記載の方法。

請求項151

1つ以上のノードコンフィグレーション要求及びその制御ノードへの着アドレスに応答して、各処理ノードにより提供される情報を送出する、請求項148記載の方法。

請求項152

1つ以上のノードコンフィグレーション要求への応答に基づいて表示のための画像を生成するために画像データを処理することに関与するために、1つ以上のノードコンフィグレーション要求に応答した処理ノードの中から処理ノードのサブセットを選択することを更に行う、請求項151記載の方法。

請求項153

表示のための画像を生成するために画像データを処理することに関与するための要求を、処理ノードのサブセットのそれぞれに対して、これらがこのような関与を受諾することを促すために送出することを更に行う、請求項152記載の方法。

請求項154

関与への要求に応答した処理ノードのサブセットの1つ以上に対して1つ以上の別のコンフィグレーション要求を送出することを更に行う、請求項153記載の方法。

請求項155

1つ以上の別のノードコンフィグレーション要求は、ノードが送出及び受領することを予測する画像データ、フレーム画像データ、統合フレーム画像データ、及び処理命令の少なくとも1つにおけるフォーマットに関する情報を提供するためのノードに対する要求を少なくとも含んでいる、請求項154記載の方法。

請求項156

1つ以上のコンフィグレーション要求に応答して提供されたデータ処理能力及びフォーマット情報の少なくとも1つに基づいて表示のための画像を生成するために画像データを処理することに関与するため、処理ノードのサブセット内にどの処理ノードを保持すべきかを決定することを更に行う、請求項155記載の方法。

請求項157

パケット交換ネットワークがローカルエリアネットワーク上に形成されている、請求項147記載の方法。

請求項158

(i)統合フレーム画像データのフレームの少なくとも1つ及びフレーム画像データの少なくとも1つの外部に供給されたフレームを受領し、(ii)フレーム画像データの一連のフレームの1つ以上、統合フレーム画像データの次のフレームが、フレーム画像データの外部に供給されたフレーム及び統合フレーム画像データのフレームの少なくとも1つに基づくものとなるように、フレーム画像データの少なくとも1つの外部に供給されたフレーム及び統合フレーム画像データのフレームを少なくとも1つを少なくとも1つのグラフィックプロセッサに送出する、ために動作する少なくとも1つのビデオハブノードを複数の処理ノードの中から選択することを行う、請求項147記載の方法。

請求項159

(i)共通の画像データを受領及び記憶するため、(ii)フレーム画像データの一連のフレーム及び統合フレーム画像データの一連のフレームの少なくとも1つが少なくとも幾つかの共通の画像データを含むように、共通の画像データをグラフィックプロセッサの少なくとも1つに送出するように動作する少なくとも1つのメモリハブノードを複数の処理ノードの中から選択することを更に行う、請求項155記載の方法。

請求項160

パケット交換ネットワークがオープンネットワーク上に形成されている、請求項147記載の方法。

請求項161

オープンネットワークがインターネットである、請求項160記載の方法。

請求項162

制御ノードが(n)番目のレベルの制御ノードであり、少なくとも1つのマージノードが(n)番目のレベルのマージノードであり、パケット交換ノードが(n)番目のレベルのパケット交換ノードであり、及び少なくとも1つのアクセラレータノードが、(n−1)番目のレベルの制御ノード、及びパケット交換ネットワーク上で(n−1)番目のレベルのパケットスイッチノードを経て一緒に結合された複数の(n−1)番目のレベルのアクセラレータノードを含む(n)番目のレベルのアクセラレータノードであるように、処理ノードのサブセットの中から階層を確立することを更に行う、請求項147記載の方法。

請求項163

(n−i)番目のアクセラレータノードの少なくとも1つが、(n−i−1)番目のレベルの制御ノード、及びパケット交換ネットワーク上で(n−i−1)番目のレベルのパケットスイッチノードを経て一緒に結合された複数の(n−i−1)番目のレベルのアクセラレータノードを含んでいる、請求項162記載の方法。

請求項164

(i)命令を含む情報セット、(ii)画像の生成において使用される種々のデータを含む情報セットの少なくとも一方である(n)番目のレベルの情報セットを、1つ以上の処理ノードのサブセットに対してパケット交換ネットワーク上で送出することを更に行う、請求項163記載の方法。

請求項165

グラフィックプロセッサ、ローカルマージユニット、及びコアマージユニットに対して、(i)画像データがレンダリングされたとき、フレーム画像データが個々のローカルフレーム画像バッファから解放されたとき、及びフレーム画像データがマージされたときの間におけるタイミング関係、(ii)統合フレーム画像データを同期的に生成するためにどのようにしてフレーム画像データがマージされるか、の少なくとも1つに影響を与える1つ以上のモードで動作させるための情報を、命令が含んでいる、請求項164記載の方法。

請求項166

画像の生成に使用される種々のデータが、テクスチャデータ、ビデオデータ、及びフレーム画像データの外部に供給されるフレームの少なくとも1つを含んでいる、請求項164記載の方法。

請求項167

(n)番目のレベルの情報セットのそれぞれが、(i)所定の情報セットが(n)番目のレベルの制御ノードから発行されたことを示す(n)番目のレベルのヘッダ、(ii)それぞれ1つ以上の(n)番目のレベルのノードのための情報を含む複数の(n)番目のレベルの情報ブロック、を含んでいる、請求項164記載の方法。

請求項168

複数の(n)番目のレベルの情報ブロックを個々の(n)番目のレベルのノードに経路選択することを更に行う、請求項167記載の方法。

請求項169

複数の(n)番目のレベルの情報ブロックが(n)番目のレベルのアクセラレータノードのための情報を含む、請求項167記載の方法。

請求項170

(n)番目のレベルのアクセラレータノードのための(n)番目のレベルの情報ブロックが、個々の(n−1)番目のノードのための複数の個々の(n−1)番目の情報サブブロックを含む、請求項169記載の方法。

請求項171

複数の(n−1)番目のレベルの情報サブブロックを個々の(n−1)番目のノードに経路選択することを更に行う、請求項170記載の方法。

請求項172

(n−i)番目のレベルのアクセラレータノードのための少なくとも1つの(n−i)番目のレベルの情報サブブロックが、個々の(n−i−1)番目のノードのための複数の個々の情報サブブロックを含む、請求項170記載の方法。

請求項173

(i)統合フレーム画像データのフレーム及びフレーム画像データの少なくとも1つの外部に供給されたフレームの少なくとも1つを受領し、(ii)フレーム画像データの一連のフレームの1つ以上、統合フレーム画像データの次のフレームが、フレーム画像データの外部に供給されたフレーム及び統合フレーム画像データのフレームの少なくとも1つに基づくものとなるように、フレーム画像データの少なくとも1つの外部に供給されたフレーム及び統合フレーム画像データのフレーム少なくとも1つを少なくとも1つのグラフィックプロセッサに送出する、ために動作する少なくとも1つの(n)番目のレベルのビデオハブノードを複数の処理ノードの中から選択することを更に行う、請求項169記載の装置方法

請求項174

複数の(n)番目のレベルの情報ブロックの少なくとも1つが、少なくとも1つの(n)番目のレベルのビデオハブノードのための情報を含む、請求項173記載の方法。

請求項175

(i)共通の画像データを受領及び記憶するため、(ii)フレーム画像データの一連のフレーム及び統合フレーム画像データの一連のフレームの少なくとも1つが少なくとも幾つかの共通の画像データを含むように、共通の画像データをグラフィックプロセッサの少なくとも1つに送出するように動作する少なくとも1つの(n)番目のレベルのメモリハブノードを複数の処理ノードの中から選択することを更に行う、請求項169記載の方法。

請求項176

複数の(n)番目のレベルの情報ブロックの少なくとも1つが、少なくとも1つの(n)番目のレベルのメモリハブノードのための情報を含む、請求項175記載の方法。

0001

本発明は、表示画面上で表示される画像を生成するための装置、特に、比較的大きな表示画面上に高品質画像を表示するための画像データを処理する装置に関するものである。

0002

映画のような「大画面」上で表示用に生成されるもののような動画は、比較的大きな画面上で映し出されるように35mmフィルムにより供給される。動画を作成するために従来のグラフィックプロセッサコンピュータマイクロプロセッサなどを用いる)を使用することは、グラフィックプロセッサがより高性能になっており、また質の高い画像を作成できる現在の技術状態においては、益々一般的になっている。

0003

実際には、しかしながら、従来のグラフィックプロセッサは、17インチモニタのようなコンピュータの表示画面、あるいは従来型テレビ画面上などで動画を生成するためにデザインされており、映画のような、比較的大きな画面上で動画を生成するためにはデザインされていない。

0004

実際のところ、従来のグラフィックプロセッサは、特に比較的大画面上で表示されるときには、十分な品質の動画を十分な速度で生成するために画像データを処理することができない。

0005

従来のグラフィックプロセッサの処理上の限界は、2つの根本的な基本的な事項、即ち解像度、例えば、画像データの各フレームに対して利用可能な全ピクセル数が比較的大きな表示画面に対して不十分であること、及びフレーム速度、例えば、各秒毎に生成される画像データのフレーム数が35mmフィルム映画のプロトコル用のフレーム速度に合致あるいは超えるために不十分であることにおいて、画質に影響を及ぼしている。

0006

図1を参照すると、従来のグラフィックプロセッサ10は、3つの基本的な構成要素、即ち、処理ユニットプロセッサ)12、レンダリングユニット14,及びフレームバッファ16を含んでいる。そのコア部分において、従来のグラフィックプロセッサ10は、プリミティブ、例えば、表示される1以上の画像をモデリングするために使用されるポリゴンに関するデータを含む画像データを受領すると共に、画像データの一連のフレームを生成する。ここで、画像データの各フレームは、表示画面上の画像の1つのフレームを表示するために必要な情報を含んでいる。画像データのこれらのフレームを十分なフレーム速度で表示することにより、動きのある画像を表現できるようになる。

0007

処理ユニット12は、レンダリングユニット14に対する入力のための、ポリゴン命令のような一連の命令を得るために画像データを操作する。レンダリングユニット14は、一連の命令を受領し、例えば、ピクセルの位置、色、密度などを表す画像データを生成する。この画像データはフレームバッファ16に記憶される。本明細書において、画像データの全体のフレームはフレーム画像データと称される。

0008

フレームバッファ16は、通常は表示画面の解像度に対応した大きさに作られており、これにより、表示画面の全体のフレームをカバーするために十分な画像データが記憶される。画像データのすべてのフレームがフレームバッファ16に記憶されると、フレーム画像データは、表示画面上に表示されるために、フレームバッファ16から解放される。

0009

処理速度に影響を及ぼす図1の従来のグラフィックプロセッサ10により起因する処理上のボトルネックは、処理ユニット12及びレンダリングユニット14がフレーム画像データを生成できる速度で動作しない点である。このボトルネックを改善するために、図2に例示したような並列的なソフトウェアレンダリングユニット18を有するグラフィックプロセッサ20を設けることが提案されている。

0010

これらの並列的なユニット18からの出力は、単一のフレームバッファ16に入力され、ここからフレーム画像データが表示画面上での表示のために解放される。

0011

図2のグラフィックプロセッサ20は、画像データが処理され、レンダリングされる速度を高速にすることで、上記の処理上のボトルネックの一つは改善できるが、タマネギの皮を剥くのと同様に、別の処理上のボトルネックが生じる。

0012

すなわち、フレーム画像データがフレームバッファ16内に記憶され、且つ、ここから解放することができる速度は、比較的大きな表示画面上に高品質で動画を生成するためのデータ処理能力の各要求に十分に応える速度ではない。

0013

従って、この分野においては、処理速度を著しく増大させて、高解像度の動画を大きな表示画面上に表示するために生成できるグラフィック処理を提供するための新規な装置及び/または方法に対する需要がある。

0014

本発明の1つの特徴によれば、表示装置上の画像領域をカバーするための画像を生成するために画像データを処理するための装置が提供される。この装置は、複数のグラフィックプロセッサ、制御プロセッサ及び1つ以上のマージユニットを備えて構成される。

0015

各グラフィックプロセッサは、画像データをフレーム画像データ内にレンダリングするため及びフレーム画像データを個々のローカルフレームバッファ内に記憶させるために動作する。制御プロセッサは、複数のグラフィックプロセッサに命令を供給するように動作する。マージユニットは、個々のローカルフレームバッファからフレーム画像データを同期的に受領するため及びこれに基づいて統合された統合フレーム画像データを同期的に生成するように動作する。

0016

好ましくは、複数のグラフィックプロセッサがグラフィックプロセッサの個々のセットにグループ化されており、1つ以上のマージユニットはグラフィックプロセッサの各セットに結合されたローカルマージユニットと各ローカルマージユニットに結合されたコアマージユニットを含むようにする。

0017

個々のローカルマージユニットは、個々のローカルフレームバッファから画像データを受領し、これに基づいてローカル統合フレーム画像データを同期的に生成するために動作し、コアマージユニットは個々のローカルマージユニットからローカル統合フレーム画像データを同期的に受領し、これに基づいて統合フレーム画像データを同期的に生成するように動作する。

0018

本発明の少なくとも1つの他の特徴によれば、本発明の装置は、好ましくは統合フレーム画像データのフレーム及びフレーム画像データの少なくとも1つの外部に供給されるフレームの少なくとも1つを受領するように動作するビデオハブを含むようにする。そして、(i)グラフィックプロセッサの1以上からのフレーム画像データの一連のフレームの少なくとも1つが、フレーム画像データの少なくとも1つの外部に供給されるフレーム及び統合フレーム画像データのフレームの少なくとも1つを含み、及び(ii)マージユニットが、フレーム画像データの少なくとも1つの外部に供給されるフレーム及び統合フレーム画像データのフレームの少なくとも1つに基づいて統合フレーム画像データの一連のフレームを生成するように動作する。

0019

好ましくは、本発明の装置が、共通の画像データを受領するように動作するメモリハブを含むようにする。メモリハブは複数のグラフィックプロセッサを機能的に連結し、これにより、(i)1以上のグラフィックプロセッサからのフレーム画像データの一連のフレームの少なくとも1つが共通の画像データの少なくとも幾つかを含んでおり、また(ii)マージユニットは、共通の画像データに基づいて統合フレーム画像データのフレームを生成するために機能するものである。

0020

本発明の少なくとも1つの他の特徴によれば、コアマージユニット及び個々のローカルマージユニットは、別の制御データラインを経て制御プロセッサに機能的に結合される。これにより、制御プロセッサ、コアマージユニット、及び個々のローカルマージユニットの間において、少なくとも1つ以上のモードにおいて動作するための命令に関する独立した通信が確保される。

0021

本発明の少なくとも1つの他の特徴によれば、本発明の装置が、それぞれ同期カウンタを含む複数のグラフィックプロセッサ、制御プロセッサ、及び、少なくとも1つのマージユニットを備えて構成される。

0022

各グラフィックプロセッサは、画像データをフレーム画像データ内にレンダリングするため、及びフレーム画像データを個々のローカルフレームバッファ内に記憶するように動作する。同期カウンタは、ローカルフレームバッファからフレーム画像データを何時解放すべきかを示すローカル同期カウントを生成するように動作する。制御プロセッサは、複数のグラフィックプロセッサに命令を供給するように動作する。マージユニットは、個々のローカルフレームバッファからフレーム画像データを同期的に受領するため、及びこれに基づいて統合フレーム画像データを同期的に生成するように動作する。

0023

本発明の少なくとも1つの他の特徴によれば、本発明の装置が、制御プロセッサ及びグラフィックプロセッサの個々のセットに機能的に結合されたデータバスと、グラフィックプロセッサの各セットに結合されると共に個々のフレームバッファからのフレーム画像データを同期的に受領し、これに基づいてローカル統合フレーム画像データを同期的に生成するように動作する個々のローカルマージユニットと、各ローカルマージユニットに結合されていると共に個々のローカルマージユニットからローカル統合フレーム画像データを同期的に受領し、これに基づいて統合フレーム画像データを同期的に生成するコアマージユニットと、コアマージユニット及びローカルマージユニットに機能的に結合された制御データバスと、データバスと制御データバスとの間に機能的に連結されていると共にデータバスと制御データバス上で優先度に基づいてデータを送出及び受領するように動作するバスコントローラとを有している。

0024

好ましくは、コアマージユニットが、バスコントローラ及びデータバスを経て個々のグラフィックプロセッサにマージ同期信号を送出するように動作する。更に、好ましくは、制御プロセッサが、バスコントローラ及び制御データバスを経て、少なくとも、動作の1つ以上のモードに関する命令を個々のローカルマージユニットに送出するように動作する。

0025

本発明の少なくとも1つの他の特徴によれば、グラフィックプロセッサの個々のグループの個々のローカルフレームバッファは、別のデータラインを経て個々のローカルマージユニットに機能的に結合され、これにより個々のローカルフレームバッファから個々のローカルマージユニットへのフレーム画像データの排他的な送出が確保されるようにする。また、個々のローカルマージユニットは別のデータラインを経てコアマージユニットに機能的に連結され、これにより個々のローカルマージユニットからコアマージユニットへのローカル統合フレーム画像データの排他的な送出が確保されるようにする。

0026

本発明の少なくとも1つの他の特徴によれば、本発明の装置は、制御プロセッサ及びグラフィックプロセッサの個々のセットに機能的に結合されたパケットスイッチと、グラフィックプロセッサの各セットに結合されると共に個々のローカルフレームバッファからフレーム画像データを同期的に受領し、これに基づいてローカル統合フレーム画像データを同期的に生成する複数のローカルマージユニットと、各ローカルマージユニットに結合されると共に個々のローカルマージユニットからローカル統合フレーム画像データを同期的に受領し、これに基づいて統合フレーム画像データを同期的に生成するコアマージユニットと、コアマージユニット及びローカルマージユニットに機能的に結合された制御データバスと、パケットスイッチと制御データバスとの間に機能的に結合されると共に優先度に基づいてパケットスイッチ及び制御データバス上でデータを送出及び受領するように動作するパケットスイッチコントローラとを有している。

0027

好ましくは、制御プロセッサが、パケットスイッチ、パケットスイッチコントローラ及び制御データバスを経て、少なくとも、個々のローカルマージユニット及びコアマージユニットへの動作の1つ以上のモードに関する命令を送出するように動作する。更に、好ましくは、コアマージユニットが、パケットスイッチコントローラ、及びパケットスイッチを経て、個々のグラフィックプロセッサにマージ同期信号を送出するように動作する。

0028

本発明の少なくとも1つの他の特徴によれば、本発明の装置が、パケット交換ネットワーク上で一緒に結合された複数の処理ノードサブセットにより構成される。

0029

この装置は、好ましくは、グラフィックプロセッサの複数のセットを含む少なくとも1つのアクセラレータノードと、1つ以上のマージモードと、少なくとも1つのコンフィグレーションノードと、制御ノードと、少なくとも1つのパケットスイッチノードとを含むものである。

0030

各グラフィックプロセッサは画像データをフレーム画像データ内にレンダリングすると共にフレーム画像データを個々のローカルフレームバッファ内に記憶するように動作する。

0031

マージモードは1つ以上のローカルマージユニット及びコアマージユニットを含んでいる。ローカルマージユニットの個々の1つはグラフィックプロセッサの各セットに関連すると共に個々のローカルフレームバッファからのフレーム画像データを同期的に受領し、これに基づいてローカル統合フレーム画像データを同期的に生成するように動作する。コアマージユニットは、各ローカルマージユニットと関連すると共に個々のローカルマージユニットからのローカル統合フレーム画像データを同期的に受領し、これに基づいて統合フレーム画像データを同期的に生成するように動作する。

0032

コンフィグレーションノードは、処理ノードのサブセットを選択することを容易化するように動作する。

0033

制御ノードは、パケット交換ネットワーク上で処理ノードのサブセットに命令を与えるために動作する制御プロセッサを含み、また、表示のための画像を生成するために画像データを処理することに関与するために処理ノードのサブセットを選択するように動作する。

0034

パケットスイッチノードは、ノードのサブセット、少なくとも1つの画像データを形成するデータパケット、フレーム画像データ、及び統合フレーム画像データの間でデータパケットを経路選択するように動作する。

0035

本発明の他の1つの特徴によれば、制御ノードが(n)番目のレベルの制御ノードであり、少なくとも1つのマージノードが(n)番目のレベルのマージノードであり、パケット交換ノードが(n)番目のレベルのパケット交換ノードであり、及び少なくとも1つのアクセラレータノードが、(n−1)番目のレベルの制御ノード、及びパケット交換ネットワーク上で(n−1)番目のレベルのパケットスイッチノードを経て一緒に結合された複数の(n−1)番目のレベルのアクセラレータノードを含む(n)番目のレベルのアクセラレータノードである。

0036

本発明の1つの特徴によれば、表示画面に画像を表示させるために画像データを処理する方法が提供される。

0037

この方法は、複数のグラフィックプロセッサを使用して画像データをフレーム画像データ内にレンダリングし、個々のローカルフレームバッファ内にフレーム画像データを記憶し、及びこれに基づいて統合フレーム画像データを同期的に生成するために個々のローカルフレームバッファからのフレーム画像データを同期的にマージする、ことを含む。

0038

本発明の方法の少なくとも1つの他の特徴によれば、この方法は、複数のグラフィックプロセッサを使用して画像データをフレーム画像データ内にレンダリングし、フレーム画像データを個々のローカルフレームバッファ内に記憶させ、フレーム画像データを個々のローカルフレームバッファから何時解放すべきかを示す個々のローカル同期カウントを生成し、及びフレーム画像データから統合フレーム画像データを同期的に生成する、ことを含む。

0039

本発明の方法の少なくとも1つの他の特徴によれば、この方法は、パケット交換ネットワーク上で一緒に結合された複数のノードのサブセットの協働により実現される。好ましくは、この方法は、複数のノードの中から複数のグラフィックプロセッサのセットを含む少なくとも1つのアクセラレータノードを選択すること、複数のノードの中から1つ以上のマージユニットを選択すること、少なくとも1つのパケット交換ノードを確立すること、一つの処理ノードを制御ノードとして確立することを含む。

0040

各グラフィックプロセッサは、画像データをフレーム画像データにレンダリングすると共にフレーム画像データを個々のローカルフレームバッファ内に記憶するために動作するものである。

0041

マージユニットは1つ以上のローカルマージユニット及びコアマージユニットを含むものである。ローカルマージユニットの個々の1つは、グラフィックプロセッサの各セットに関連し且つ個々のローカルフレームバッファからフレーム画像データを同期的に受領すると共にこれに基づいてローカルな統合フレーム画像データを同期的に生成するように動作するものであり、コアマージユニットは各ローカルマージユニットと関連し且つ個々のローカルマージユニットから統合フレーム画像データを同期的に受領すると共にこれに基づいて統合フレーム画像データを同期的に生成するように動作するものである。

0042

制御ノードは、パケット交換ネットワーク上で処理ノードのサブセットに命令を供給するために動作し、且つ表示のための画像を生成するために画像データの処理に関与するために処理ノードのサブセットを選択するように動作するものである。パケット交換ノードは、ノードのサブセット間で画像データ、フレーム画像データ及び統合フレーム画像データを形成するためのデータパケットの経路を選択するように動作するものである。

0043

本発明の他の特徴、特色、及び利点は、添付の図面と関連した、本明細書の開示内容から当業者には自明になるであろう。

0044

図3は、表示画面に表示される画像を生成するための画像データを処理するための装置100のブロック図である。

0045

画像データは、装置100のメモリ、あるいは、ハードディスク装置CD−ROM、DVD−ROM、通信ネットワークに関連したメモリのような補助記憶装置から読み取られる。この画像データは、表示されるオブジェクト画像に使用される、3D及び/または2Dのポリゴンモデルのような、オブジェクトモデルを表すためのデータ、あるいは、適切なプロセッサ上で動作するソフトウェアプログラムに従って生成されたシーケンシャルポリゴン画像命令である。

0046

装置100は、好ましくは、制御プロセッサ102(及び関連したメモリ)、複数のグラフィックプロセッサ104、少なくとも1つのマージユニット106、及び同期ユニット108を含んでいる。また、制御プロセッサ102は、好ましくは、バス126を介して、複数のグラフィックプロセッサ104、マージユニット106、及び同期ユニット108と通信する。

0047

本発明の少なくとも1つの特徴によれば、別の独立したデータライン127が、各グラフィックプロセッサ104をマージユニット106に結合させ、これによって、個々のグラフィックプロセッサ104とマージユニット106との間で、他とは独立な通信を行えるようにしている。更に、好ましくは独立した同期ライン129が、同期ユニット108を各グラフィックプロセッサ104及びマージユニット106に結合させ、これにより、これらの間で、他とは独立な通信を行えるようにしている。

0048

グラフィックプロセッサ104の少なくとも幾つか、好ましくはそれぞれは、画像データをフレーム画像データ、例えばフレーム毎のピクセルデータ群にレンダリングし、このフレーム画像データを個々のローカルフレームバッファ112に記憶するように動作する。

0049

より詳しくは、グラフィックプロセッサ104の少なくとも幾つかは、レンダリング機能を実行するためのレンダリングユニット110と、フレーム画像データを少なくとも一時的に記憶するためのローカルフレームバッファ112とを含んでいる。

0050

より好ましくは、処理ユニット114をもグラフィックプロセッサ104内に含める。処理ユニット114は、ポリゴン画像の変形、例えば、ポリゴン画像の平行移動、回転、拡大縮小透視変換などによる3次元画像から2次元画像への変換、あるいは、ポリゴン画像のシーケンシャルな描画命令のような種々のプロセスを実行することを容易化するように動作するものである。

0051

各グラフィックプロセッサ104は、好ましくは更に、バス126上での通信を容易化するのに適したI/O(入力/出力)インタフェース116と、後で詳細に説明する、付加的なローカル同期回路118を含んでいる。

0052

なお、図3では、1つの好ましい態様で機能ブロックが区切られているが、本発明の技術思想及び範囲を逸脱しない複数の他のいずれかの態様で機能ブロックを区切ることができるものである。

0053

フレーム画像データは、好ましくは、マージユニット106と同期ユニット108の一方により生成されたマージ同期信号によりマージユニット106に同期的に受領される。各グラフィックプロセッサ104は、同期ライン129を通じて同期的に画像データを受領する。

0054

マージユニット106は、好ましくは、個々のローカルフレームバッファ112からフレーム画像データを同期的に受領するため、及びこれに基づいて統合されたフレーム画像データ(統合フレーム画像データ)を同期的に生成するために動作する。

0055

グラフィックプロセッサ104は、好ましくは、マージ同期信号に応答して、フレーム画像データを個々のローカルフレームバッファ112から同期的に解放する。

0056

マージ同期信号は、好ましくは、統合フレーム画像データの個々のフレームがどのように表示されるかを規定する表示プロトコルに従って生成される。この表示プロトコルは、公知のNTSCプロトコル、HDTVプロトコル、35mm映画プロトコル、PALプロトコルなどを含む。

0057

表示プロトコルは、他のものとの間で、統合フレーム画像データの一連のフレームが表示されるべきフレーム速度、統合フレーム画像データのフレームが更新される時点を決めるブランク期間を決定する。

0058

このブランク期間は、NTSCプロトコルの場合のように、例えば統合フレーム画像データの所定のフレームが更新前にどの位休止(dwell)されるべきかを定めるする。あるいは、35mm映画プロトコルの場合のように、統合フレーム画像データの所定のフレームが更新前に何時除去されるかを指示する。

0059

表示画面が従来型のCRTである場合、表示プロトコルはNTSCプロトコルであり、ブランク期間は垂直ブランキング期間となる。

0060

NTSCプロトコルでは、垂直ブランキング期間は、CRTの走査ビームが表示画面の右下部から左上部に戻るタイミングで周期的に生じる。本発明がNTSCプロトコルを採用して実施される場合、マージユニット106からの統合フレーム画像データは、CRT表示画面の各垂直ブランキング期間が終了する前に次の表示のための準備がなされるようにすることが好ましい。

0061

上記の説明は、CRT表示画面での使用に関係した場合の例であるが、ブランク期間という用語は、例えば35mm映画画像、あるいは他の表示プロトコルに利用されるブランク期間を示すような、より広い意味で使用される。

0062

好都合なことに、所定の表示プロトコルのブランク期間と同期させてマージユニット106から統合フレーム画像データを生成することで、異なる表示プロトコル、及び/または、フレーム画像データの異なるソースからのフレーム画像データを統合することができる。

0063

例えば、35mmフィルムからのフレーム画像データは、コンピュータグラフィックスによって生成されるフレーム画像データと統合される。よって、広義において、マージ同期信号は、統合フレーム画像データが供給される所定のフレーム速度に従って生成することができる。あるいは所定のフレーム速度に定めることができる。

0064

統合フレーム画像データがCRT画面上に表示されるとき、マージ同期信号は、好ましくは、CRT表示画面の垂直ブランキング期間、つまりフレーム速度と同期される。あるいは、統合フレーム画像データがマージされ、あるいは35mmフィルムの映画と一致する映画画像を生成するために利用されるとき、マージ同期信号は、当該プロトコルと一致するフレーム速度に同期される。

0065

図4は、図3の装置100の動作と表示プロトコルの特定の特徴との関係を例示したタイミング図である。

0066

図では、その上部から順に、ブランク期間、マージ同期信号、レンダリング期間、及びマージ期間の間における関係が示されている。

0067

タイミング波形の上部に示したように、フレームは、画像フレームが表示もしくは更新される間の間隔(論理ローレベルで示される)と、画像フレームが表示のための準備がされる間の期間、例えばブランク期間(論理ハイレベルで示される)を有している。

0068

本発明の少なくとも1つの特徴によれば、マージ同期信号132は、立ち上がり端部あるいは立ち下がり端部のような遷移部を有している。これらは、ブランク期間の端部142、142、すなわち、論理ハイレベルと論理ローレベルとの切り替わりをごく短時間で実現するものである。

0069

マージ同期信号132は、このような遷移部により、ブランク期間を開始させ、あるいは、終わらせる。これらのタイミングは、好ましくは、表示プロトコルにより指示されるフレーム速度と同期しており、これにより、マージユニット106は、ブランク期間の少なくとも1つの終期において、表示のために統合フレーム画像データを生成し、または統合フレーム画像を解放する。

0070

ブランク期間の端部142、144の終期において表示のために統合フレーム画像データを解放する準備をローカルフレームバッファ112にさせるために、136A−Dのようなブランク期間の端部142、144の終期の前に、グラフィックプロセッサ104の少なくとも幾つかは、好ましくは、画像データのレンダリングを開始する。図示したように、時間136A−Dにおいて4つのレンダリング処理が始まるが、本発明の範囲を逸脱することなく、いずれかの数のグラフィックプロセッサ104を使用していずれかの数のレンダリング処理を行うようにすることもできる。すなわち、各グラフィックプロセッサ104におけるレンダリング処理は、同時に開始されてもよく、あるいは異なる時間に開始されるようにしてもよい。本発明の少なくとも1つの特徴によれば、グラフィックプロセッサ104のレンダリングユニット110は、好ましくは、マージ同期信号132と非同期で、画像データを個々のフレームバッファ112内にレンダリングすることを開始する。例えば、制御プロセッサ102は、グラフィックプロセッサ104に「レンダリング開始」命令、つまりトリガを発行する。このレンダリング開始命令は、マージ同期信号132に関して非同期なものである。このレンダリング開始命令には、「DRAWNEXT」のような適切な名前が与えられる。

0071

処理ユニット114は、制御プロセッサ102からの特別なトリガなしにソフトウェアプログラムの実行の結果としてレンダリング処理を開始する。

0072

グラフィックプロセッサ104のそれぞれ、あるいはグループは、いずれのとき、例えば138A−Dの時間であっても、画像データの各フレームバッファ112内へのレンダリング処理を完了することができる。グラフィックプロセッサ104の少なくとも1つは、フレーム画像データの各フレームについてのレンダリング処理が完了すると、レンダリング完了信号を制御プロセッサ102に通知する。レンダリング完了信号には、「DRAWDONE」のような適切な名前が与えられる。

0073

マージ同期信号132に応答して、個々のグラフィックプロセッサ104は、好ましくは、個々のローカルフレームバッファ112からマージユニット106にフレーム画像データを送出する。これにより、マージユニット106は、統合フレーム画像データを同期的に生成する。

0074

統合画像フレーム画像データは、好ましくは、1つのブランク期間の終期と論理ハイレベルが維持される期間140で示される次のブランク期間の始期との間に、マージユニット106により生成される。

0075

図3を参照すると、1つ以上のグラフィックプロセッサ104は、同期ユニット108またはマージユニット106から同期ライン129を介してマージ同期信号132を受け取るために動作するローカル同期回路118を含んでいる。

0076

各ローカル同期ユニット118は、好ましくは更に、グラフィックプロセッサ104の各部分に同期信号を送るために動作する。これによって、同期信号が送られた部分がローカルフレームバッファ112からマージユニット106に送出するためにフレーム画像データを同期的に解放する。

0077

ローカル同期回路118は、マージ同期信号132の個々の遷移部間の時間を計数するためのカウンタを備えている。

0078

本発明の1つの特徴によれば、制御プロセッサ102は、好ましくは、(i)画像データがレンダリングされるとき、フレーム画像データが個々のローカルフレームバッファ112から解放されるとき、及びフレーム画像データがマージされるときのタイミング関係、及び(ii)統合フレーム画像データを同期的に生成するためにフレーム画像データがどのようにマージされるか、の少なくとも1つに影響を与える1つ以上のモードで動作するために、個々のグラフィックプロセッサ104及びマージユニット106に指示するように動作する。

0079

図4を示して説明したように、これらモードの1つは、各ブランク期間の終期の前に、グラフィックプロセッサ104の少なくとも幾つかが、画像データのレンダリング処理を完了させるようにする。

0080

これらモードの他のものは、好ましくは、グラフィックプロセッサ104の1つ以上が、ブランク期間の終期の前に、画像データのレンダリング処理を完了させる。図5に例示されるのは、あるモードにおける、フレーム速度、ブランク期間、マージ同期信号132、レンダリング期間、及び図3の装置100により実行されるマージ期間の間の関係を示すタイミングダイアグラムである、複数のグラフィックプロセッサ104は、制御プロセッサ102または処理ユニット114などから送られるレンダリング開始命令(DRAWNEXT)に応答して、同期的または非同期的に、画像データのレンダリング処理を開始する(例えば、136A−Dにおいて)。最も好ましくは、少なくともグラフィックプロセッサ104のグループ単位で、ブランク期間の間の特定の時点において、実質的に同時にレンダリング処理を開始する。各グラフィックプロセッサ104は、138A−Dにより示される異なる時間にレンダリング処理を完了する。

0081

このモードの動作では、しかしながら、レンダリング処理を各ブランク期間が終了する前に完了させておく必要はなく、むしろ、図示した2つのブランク期間の終期の前までに完了させるようにすることができる。

0082

グラフィックプロセッサ104の少なくとも幾つかは、第1のブランク期間142の終期前にはレンダリング処理を完了していないが、第2のブランク期間144の終期前までにはレンダリング処理を完了させるのである。好都合なことに、このモードの動作においては、各グラフィックプロセッサ104は、画像データを各フレームバッファ112に描画するための付加的な時間を享受することができる。

0083

マージ同期信号132に応答して、個々のグラフィックプロセッサ104は、好ましくは、符号144で示される2つのブランク期間毎に、個々のローカルフレームバッファ112からマージユニット106にフレーム画像データを解放する。新たな画像データは、例えば符号146において始まる期間内に、ローカルフレームバッファ112へのレンダリングがなされる。

0084

なお、図5に示した例では、ブランク期間は2つであるが、このモードの動作において他のブランク期間も使用できる。

0085

本発明の別の動作モードのタイミングダイヤグラム図6Aに示される。

0086

図6Aを参照すると、グラフィックプロセッサ104の1つ以上は、複数のフレームバッファ112をそれぞれ含んでいる。例えば所謂ダブルバッファと称される2つのローカルフレームバッファがそれである。

0087

表示プロトコルの所定のフレームにおいては、所定のグラフィックプロセッサ104の複数のローカルフレームバッファ112の1つだけがフレーム画像データの全フレームを含むことを必要とする。よって、グラフィックプロセッサ104は、対応する整数のブランク期間の終期がくる前に、複数のローカルフレームバッファ112の各々に、画像データをレンダリングすることを完了することだけが必要となる。

0088

例えば、第1のグラフィックプロセッサ104は、2つのローカルフレームバッファ112A、112A’を含み、第2のグラフィックプロセッサ104も、2つのフレームバッファ112B、112B’を含む。

0089

この動作モードによれば、第1のグラフィックプロセッサ104は、第1のブランク期間142の終期(例えば138A)の前、好ましくはレンダリング処理を開始するための次のトリガが受領される前に、ローカルフレームバッファ112Aへのレンダリング処理を完了しておく必要がある。言い換えれば、第1のグラフィックプロセッサ104は、第2のブランク期間の終期144の前まで(例えば138A’において)は、好ましくは、レンダリングを開始する更に別のトリガが受領されるまで、ローカルフレームバッファ112A’内に画像データをレンダリングすることを完了させる必要はない。より具体的には、第1のグラフィックプロセッサ104は、画像データが第1のローカルフレームバッファ112Aにレンダリングされる後まで、ローカルフレームバッファ112A’内にレンダリングを開始する必要さえもない。

0090

同様に、第2のグラフィックプロセッサ104は、第1のブランク期間142の終期142(例えば138Bにおいて)の前に画像データをローカルフレームバッファ112Bへのレンダリングを完了すべきである一方、第2のグラフィックプロセッサ104は、第2のブランク期間の終期144の前に画像データをローカルフレームバッファ112B’内へのレンダリングを完了させる必要はない。フレーム画像データが第1のブランク期間の終期142の前にローカルフレームバッファ112A及びローカルフレームバッファ112Bから解放のために利用可能であるので、このようなフレーム画像データは、好ましくは、図6Aにおいて符号140Aで示されるように、マージユニット106へのマージ同期信号132に応答して解放される。第2のブランク期間の終期144の前にローカルフレームバッファ112A’及びローカルフレームバッファ112B’のそれぞれにおいてフレーム画像データが利用可能であるで、このようなフレーム画像データは、好ましくは、140A’B’に示したように、マージユニット106へのマージ同期信号132に応答して解放される。

0091

図6Bは、第1及び第2のグラフィックプロセッサ104の一方または両方が、それぞれ、ブランク期間の終期144の前に、ローカルフレームバッファ112A’及び112B’の一方または両方内へのレンダリングを完了することを失敗し、エラー状態が生じる状態を示している。この場合、ローカルフレームバッファ112A’(及び/または112B’)からマージユニット106へのフレームデータの解放は許可されず、ローカルフレームバッファ112Aと112Bの内容が、マージユニット106に再び送出される(140AB2において)。第1のグラフィックプロセッサ104が個々のローカルフレームバッファ112A’、112B’へのレンダリングを完了したとき、その中のフレーム画像データは、次のブランク期間、つまり符号140A’B’で示される期間において解放される。これにより、エラー状態の影響が最小化される。

0092

なお、上記の例では、それぞれ2つのローカルフレームバッファ112を含む2つのグラフィックプロセッサ104について説明したが、本発明は、いくつかのローカルフレームバッファ112を含むグラフィックプロセッサ104を想定しているし、上記の動作モードは、それぞれ1つだけのローカルフレームバッファ112を含むグラフィックプロセッサ104のグループにも同様に適用できるものである。この場合、各グラフィックプロセッサ104は、この動作モードに関与するグラフィックプロセッサ104あるいはローカルフレームバッファ112の数に応じたレンダリングが行われる間の時間間隔を享受する。各グラフィックプロセッサ104は、この動作モードに関与するグラフィックプロセッサ104またはフレームバッファ112の数に応じた整数のブランク期間の終期の前に、所定のローカルフレームバッファ112へのレンダリングを完了させる。

0093

例えば、4つのグラフィックプロセッサ104がこの動作モードに関与し、また各グラフィックプロセッサ104が単一のローカルフレームバッファ112を備える場合、各グラフィックプロセッサ104は、表示プロトコルの4つのフレームに対応した、レンダリングが実行される間の時間期間を享受することができる。

0094

図7A−Eを参照すると、本発明の1つの特徴に従う動作モードは、領域分割、均一化、レイヤブレンディング、Zソート、レイヤブレンディング、及びフリップアニメーションの少なくとも1つの動作モードを含んでいる。

0095

図7Aは領域分割の動作モードを示すものである。この動作モードでは、好ましくは、ローカルフレームバッファ112の少なくとも2つ(例えば図示したような4つのローカルフレームバッファ112A〜D)は、統合フレーム画像データ122によりカバーされる表示画面の4つの領域に対応する個々のレンダリング領域120A−D、及びフレーム画像データを記憶するために利用されない非レンダリング領域124A−Dに区切られる。

0096

領域分割モードでは、レンダリング領域120A−Dが集まる結果として、統合フレーム画像データ122によりカバーされる表示画面のすべてがレンダリング領域となる。このような動作モードにおいて、マージユニット106は、好ましくは、統合フレーム画像データを生成するために公知のαブレンディング技術に基づいてグラフィックプロセッサ104の個々のレンダリング領域120A−Dから個々の画像データを同期的に集めるように動作する。

0097

ローカルフレームバッファ112A−Dは、別のグラフィックプロセッサ104のために使用されるか、あるいはより少ない数に分配されたグラフィックプロセッサ104のために使用される。

0098

領域分割モードは、図4、5及び6Aに関して、上述したタイミング関係の1つ以上の特徴を利用しており、好ましくは、各ブランク期間の終期の前に、ローカルフレームバッファ112A−Dの個々のレンダリング領域120A−Dへの画像データのレンダリングが完了するようにしておく(例えば、図4参照)。

0099

図7Bは、平均化モードを表している。この平均化モードでは、好ましくは、グラフィックプロセッサ104の少なくとも2つのローカルフレームバッファ112(4つのローカルフレームバッファ112A−Dが考えられる)が、統合フレーム画像データ122によりカバーされるすべての領域にそれぞれ対応するレンダリング領域120A−Dとなる。平均化モードは、更に、表示のための統合フレーム画像データを作成するために、ローカルフレームバッファ112からの個々のフレーム画像データをマージユニット106で平均化させる。平均化の処理は、十分に当業者の知識内にあるものであるが、あるシーンアンチエイリアス化、例えばシーン毎のαブレンディング、重み付け平均化などの少なくとも1つの手法を採用することができる。

0100

平均化モードでも、図4、5及び6Aに関して、上述した1つ以上のタイミング関係を利用しており、好ましくは、この動作モードに関与する各グラフィックプロセッサが、各ブランク期間の終期の前に、ローカルフレームバッファ112A−Dの個々のレンダリング領域120A−Dへの画像データのレンダリングを完了するようにしておく(例えば、図4参照)。

0101

図7Cは、レイヤブレンディングモードを表している。レイヤブレンディングモードは、好ましくは、画像データの少なくとも幾つかが、少なくとも2つのグラフィックプロセッサ104のローカルフレームバッファ112(4つのローカルフレームバッファ112A−Dが考えられる)内にレンダリングする。これにより、ローカルフレームバッファ112A−Dのそれぞれが、統合フレーム画像データの少なくとも一部を表すフレーム画像データを含むようにする。統合フレーム画像データの各部が、最終的な画像のオブジェクトとなる。

0102

レイヤブレンディングモードでは、好ましくは更に、統合フレーム画像データ領域が、奥行きを表すZデータのようなものにより、それぞれ優先度が付けられる。レイヤブレンディングモードでは、好ましくは更に、マージユニット106が、個々のローカルフレームバッファ112A−Dのフレーム画像データのそれぞれをその優先度の順序階層化することで、統合フレーム画像データを同期的に生成するように動作する。

0103

例えば、第1のフレーム画像データ上に第2のフレーム画像データを重畳することで、レイヤ(層)の優先度に基づいて第1のフレーム画像データの幾つかを上書きすることができる。レイヤの優先度は、統合フレーム画像データの一部、例えば、画像のオブジェクトの相対的な奥行きに対応する場合、フレーム画像データの1つのレイヤは、フレーム画像データの他のレイヤよりも視点に対して、より近くになるようにデザインされる。よって、奥行きの錯覚は、視点に対してより近い位置にあるようにデザインされたフレーム画像データのレイヤが視点からより遠くのフレーム画像データのレイヤの少なくとも一部分を上書きすることによって生じる(例えば、図7Cの122を参照)。

0104

レイヤブレンディングモードは、図4,5に関して、上述した1つ以上のタイミング関係を利用しており、好ましくは、レイヤブレンディングモードに関与するグラフィックプロセッサ104が、各ブランク期間の終期の前に、個々のローカルフレームバッファ112A−Dへの画像データのレンダリングを完了しておくようにする。

0105

図7Dは、Zソート及びレイヤブレンディングモードを表している。このZソート及びレイヤブレンディングモードでは、好ましくは、少なくとも幾つかの画像データが少なくとも2つのグラフィックプロセッサ104のローカルフレームバッファ(ローカルフレームバッファ112A−Dの4つが考えられる)にレンダリングされるようにする。ローカルフレームバッファ112A−Dは、統合フレーム画像データの少なくとも一部を示すフレーム画像データを含んでいる。

0106

レイヤブレンディングモードでは、上述したように、統合フレーム画像データの各部は、表示される画像のオブジェクトとなっている。

0107

Zソート及びレイヤブレンディングモードは、好ましくは、フレーム画像データが、ピクセル毎にその奥行きを示すZ値を含む。また、マージユニット106が、奥行きに従って、フレーム画像データのそれぞれをZソート及び階層化することにより、統合フレーム画像データを同期的に生成するように動作する。好都合なことには、図7Dに示したように、ローカルフレームバッファ112A内に記憶されるような統合フレーム画像データの幾つかの部分が、ローカルフレームバッファ112B内に記憶されたフレーム画像データの他の部分を上書きし、Z値により表される相対的な奥行きのデータがこのような上書きのために提供される。

0108

Zソート及びレイヤブレンディングモードは、図4,5及び6Aに関して、上述した1つ以上のタイミング関係を利用しており、好ましくは、各ブランク期間の終期の前に、個々のローカルフレームバッファ112内に画像データをレンダリングすることを完了させておく(例えば、図4参照)。

0109

図7Eは、フリップアニメーションモードを表している。フリップアニメーションモードは、好ましくは、少なくとも2つのグラフィックプロセッサ104のローカルフレームバッファ112(4つのローカルフレームバッファ112A−Dが考えられる)が、統合フレーム画像データによりカバーされるすべての領域をカバーするフレーム画像データを含み、また、マージユニット106が、グラフィックプロセッサ104のローカルフレームバッファ112からの個々のフレーム画像データを順次解放することにより統合フレーム画像データを生成するように動作する。フリップアニメーションモードは、図4,5,6Aに関して、上述した時間関係を利用しており、好ましくは、整数のブランク期間の終期の前に、個々のフレームバッファ112A−Dに画像データのレンダリングを完了しておくようにする。

0110

整数のブランク期間は、フリップアニメーションモード内に関与するグラフィックプロセッサ104の数に対応する(図5,6A参照 )。整数のブランク期間は、フィリップアニメーションモードにおいて関与するローカルフレームバッファ112の数に対応する。

0111

図8を参照すると、本発明により採用されるマージユニット106を実施する際に適した回路もしくは機能構成が示されている。

0112

マージユニット106は、好ましくは、シザリングブロック202、αテストブロック204、Zソートブロック206、及びαブレンディングブロック208を有している。

0113

シザリングブロック202は、好ましくは、複数のサブブロック202A、202B,202C、202Dなどを含み、受領したフレーム画像データ(あるいはパス)のそれぞれに対して1つのこのようなサブブロックを含んでいる。

0114

シザリングブロック202全体、特にサブシザリングブロック202A〜Dは、好ましくは、フレーム画像データの特定部分を価値があるものにし、フレーム画像データの他の部分を無価値なものにする。例えば、統合フレーム画像データを生成する際に使用するための所定の矩形領域に対応するフレーム画像データの一部を価値があるものとする。この機能は、領域分割モードの動作時に特に有効となる(図7A及び対応する上記説明を参照)。

0115

シザリングブロック202の出力は、αテストブロック204により受領され、ここで、フレーム画像データの中のあるものは、フレーム画像データのα値と定数との間の比較に基づいて無価値なものとされる。

0116

αテストブロック204は、好ましくは、複数のサブブロック204A、204B、204C、204Dなどを含み、受領したフレーム画像データ、あるいはパスのそれぞれに対してαテストを行う。αテストブロック204の機能は、統合フレーム画像データを生成する際に利用される1つ以上のオブジェクトに関する有用な情報を含むときに特に効果的となる。この場合、フレーム画像データの他の部分は、有用な情報を含まないものとなる。

0117

例えば、フレーム画像データが、木、すなわち、最終画像が表示される際に利用されるオブジェクトを表すとき、木のピクセルに関連するα値は、データが有効であることを示すのに非常に重要であるが、木以外の領域に関連するフレーム画像データのピクセルは重要でなく、また使用できないため、好適には破棄される。

0118

Zソートブロック206は、好ましくは、ピクセル毎にフレーム画像データのZソートを実行する。あるいは、Zソートブロック206は、フレーム画像データに基づいてZソートを実行してもよい。例えば、最も近い画像を示すフレーム画像データの4つのソース、あるいはパスの1つを選択し、次に近い画像としてフレーム画像データのソースの次の1つを選択する、などである。

0119

αブレンドブロック208は、好ましくは、
(1-a’)・(pixel, n-1)+a’・(pixel ,n)

0120

のような既知公式に従ってαブレンディングを実行する。図示したように、αブレンディングは、好ましくは、受領されたフレームデータのそれぞれの間で実行される。

0121

図3,4と関連する図9を参照すると、本発明の装置110の1つ以上の特徴に関する付加的な詳細手順が詳細に示されている。

0122

アクション170、172は、複数のグラフィックプロセッサ104、マージユニット106、及び同期ユニット108の初期化に関係する。特に、アクション170において、制御プロセッサ102は、好ましくは、グラフィックプロセッサ104にプログラムデータ及びフォーマットデータを送出する。本発明に従い、プログラムデータ及びフォーマットデータは、好ましくは、図4図7に関して上述した1つ以上の動作モードを実行するために必要な機能をグラフィックプロセッサ104に与える。

0123

例えば、プログラムデータは、画像データを処理するために、グラフィックプロセッサ104によって使用される1つ以上のソフトウェアアプリケーションプログラムの少なくとも一部を含んでいる。このようなソフトウェアアプリケーションプログラムは、ポリゴン化画像への変換、3次元画像と2次元画像との間の変換、画像の拡大/縮小スケーリング)・回転・照明陰影・着色などの特定の処理機能を容易にする。プログラムデータは、好ましくは、画像データから生成されると共にローカルフレームバッファ112へのレンダリングに適した一連のポリゴン命令のような、シーケンシャルな命令の生成を容易にする。好ましくは、このプログラムデータは、バス126を経由して複数のグラフィックプロセッサ104に送出される。

0124

フォーマットデータは、好ましくは、少なくとも1つの動作モード(例えば、タイミング関係、領域分割、平均化、レイヤブレンディング、Zソート及びレイヤブレンディング、フィリップアニメーションなど)、NTSCプロトコル、HDTVプロトコル、35mm映画撮影プロトコルなどの表示プロトコルに関するものである。より詳しくは、表示プロトコルは、所望のフレーム速度、ブランク期間、表示サイズ、アスペクト比(表示高さと幅の比)、画像の解像度などに関する情報を表している。

0125

フォーマットデータは、一般的には、画像データをレンダリングし、またはフレーム画像データをマージユニット106へ解放するために呼び出される前に、グラフィックプロセッサ104に特定の動作モードを実行させる。好ましくは、このフォーマットデータは、バス126を経由して複数のグラフィックプロセッサ104に送出される。

0126

アクション172では、初期のセットアップデータがマージユニット106に送出される。初期のセットアップデータは、好ましくは、フォーマットデータと実質的に類似するデータのセットを含んでいる。このようにして、グラフィックプロセッサ104とマージユニット106は、同様の動作モードを実行するように構成される。好ましくは、初期のセットアップデータはバス126を経由してマージユニット106に送出される。

0127

グラフィックプロセッサ104は、好ましくは、プログラムデータとフォーマットデータに従って初期化されるとき、個々のローカル同期ユニット118と制御プロセッサ102の少なくとも1つにシステムレディ信号を送出する(アクション174)。システムレディ信号には、「SYSREADY」のようないずれかの適切な名前が付与される。システムレディ信号は、バス126を経由して制御プロセッサ102に送出される。

0128

同期回路108は、好ましくは、制御プロセッサ102及びグラフィックプロセッサ104へ、マージ同期信号132を周期的に送出する。あるいは、マージユニット106は、マージ同期信号132をグラフィックプロセッサ104に周期的に送出する。いずれの場合でも、マージ同期信号132は、所定の表示プロトコルに関連するフレーム速度及びブランク期間と同期する(アクション176)。

0129

マージ同期信号132は、好ましくは、専用の同期ライン129を経由して(もしくはマージユニット106を経由して)グラフィックプロセッサ104へ、及びバス126を経由して制御プロセッサ102へ送出される。

0130

各グラフィックプロセッサ104は、ローカル同期回路118を有する場合、フレーム画像データが適切な時間に解放されることを確保するために、マージ同期信号132の遷移間で予め定められた数のクロック信号カウントする(アクション178)。

0131

アクション180において、制御プロセッサ102は、グラフィックプロセッサ104が画像データのフレームバッファ112へのレンダリングを開始することを示すトリガであるレンダリング開始命令DRAWNEXTを送出する。

0132

好ましくは、トリガは、バス126を経由してグラフィックプロセッサ104へ送出される。好ましくは、トリガは同期ユニット108を通ってグラフィックプロセッサ104の個々のローカル同期ユニット118へ発行される。

0133

上述したように、処理ユニット114上で局部的に実行されるアプリケーションソフトウェアプログラムレンダリング命令自体を供給する場合、グラフィックプロセッサ104は、制御プロセッサ102からの明示的なトリガを受領する必要はない。しかしながら、個々のローカルフレームバッファ112への画像データのレンダリングを開始時点を示すトリガを少なくとも幾つかのグラフィックプロセッサ104へ発行するときには、ある特徴が得られる。アクション182において、個々のグラフィックプロセッサ104は、画像データに関するレンダリング機能を実行してフレーム画像データを生成し、また、これを個々のローカルフレームバッファ112に記憶する。

0134

アクション184において、制御プロセッサ102は、例えば、フレーム毎に動作モードを変更するために、一連のセットアップデータをグラフィックプロセッサ104及びマージユニット106へ送出する。

0135

アクション186において、グラフィックプロセッサ104の少なくとも1つは、好ましくは、レンダリング完了信号DRAWDONEを制御プロセッサ102に発行する。レンダリング完了信号は、バス126を経由して制御プロセッサ102へ送出され、制御プロセッサ102へ伝達される前にローカル同期回路118を介して同期ユニット108に伝達される。

0136

アクション188において、適切なグラフィックプロセッサ104は、例えば、マージ同期信号132が適切なブランク期間の終期に達したことを示すときに、個々のローカルフレームバッファ112からマージユニット106へフレーム画像データを出力する。マージユニット106は、表示のために、統合フレーム画像データを生成する(アクション190)。これらの処理の少なくとも幾つかは、表示画面上での表示のための高品質の動画像を生成するためにフレーム毎に繰り返される。

0137

好都合なことに、装置100は、付加的な処理能力が必要となるときにスケーラビリティが容易に対応できるようになってる。

0138

図10には、本発明の1つ以上の特徴に従って表示される画像を生成するために画像データを処理する装置200が示されている。

0139

この装置200は、制御プロセッサ102、複数のグラフィック装置100A〜D、コアマージユニット106N、及びコア同期ユニット108Nを有している。図10において、個々のグラフィック装置100A、100B、100Cなどは、好ましくは、図3に示した装置100のものと、好ましくは実質的に類似するものとされる。図3のマージユニット106は、グラフィックプロセッサ104の各セットと連結された、個々のローカルマージユニット106A、106B,106Cなどに対応している。ローカルマージユニット106A、106B、106Cなどは、好ましくは、それぞれ、上述した動作モードと一致するローカル統合フレーム画像データを生成する。各ローカルマージユニット106A、106B、106Cなどは、好ましくは、コアマージユニット106Nに連結される。そして、ローカル統合フレーム画像データを同期的に受領するために、また、表示される統合フレーム画像データを同期的に生成するように動作する。

0140

コアマージユニット106Nは、好ましくは、マージ同期信号を生成するために動作する。各装置100A,100B、100Cなどは、好ましくは、それぞれローカル同期ユニット108A、108B、108Cなど(図3の同期ユニット108に対応する)を含んでいる。個々のローカル同期ユニット108A、108B、108Cなどは、好ましくは、フレーム画像データがローカルマージユニット106A、106B、106Cと同期的に解放され、最終的にコアマージユニット106Nに出力されることを確定するためにマージ同期信号132を使用する。

0141

好ましくは、グラフィックプロセッサ104A−Dの各グループの各ローカルフレームバッファ112は、独立したデータライン127を経由して各ローカルマージユニット106A−Dに機能的に連結されており、これにより、各ローカルフレームバッファと各ローカルマージユニットとの間で他のものとは独立した通信を行うことができる。例えば、ローカルマージユニット106A、106B、106Cなどへのフレーム画像データの独立した送出が確保される。好ましくは、独立した各データライン127A−Dは、各ローカルマージユニット106A、106B、106Cをコアマージユニット106Nに連結しており、これにより、それらの間での独立な通信が確保される。例えば、各ローカルマージユニット106A−Dからコアマージユニット106Nへの統合フレーム画像データの独立した送出が可能になる。更に、独立した各同期ラインは、好ましくは、各ローカル同期ユニット108A−Dをコア同期ユニット108Nに連結しており、これにより、それらの間での独立した通信が確保される。明示していないが、図3のバス126と実質的に類似するバスが、制御プロセッサ102から、各グラフィックプロセッサ104A、104B、104Cなど、コアマージユニット106N及びコア同期ユニット108Nまで延在している。

0142

図9に関連して、装置200は、好ましくは、ハイレベルフローダイヤグラムに従って動作する。これにより、上述した1つ以上の動作モード(図4図7参照)が、好ましくはフレーム毎に実行される。より詳しくは、制御プロセッサ102は、好ましくは、後続のセットアップデータを、フレーム毎に、各装置100A−Dのグラフィックプロセッサ104、ローカルマージユニット106A−D及びコアマージユニット106Nに送出するように動作する。

0143

好ましくは、コアマージユニット106N及び各ローカルマージ106ユニットA−Dは、独立した制御ライン131によって制御プロセッサ102に機能的に連結されており、これにより、少なくとも1つのフレームから次のフレームへ異なるモードで動作するための命令に関して、制御プロセッサ102、コアマージユニット106N及び各ローカルマージユニット106A−Dの間において独立した通信が確保される。

0144

図11を参照すると、各グラフィックプロセッサ104は、好ましくは、図示されたブロック図と一致するように実施される。上述した顕著な機能は、レンダリング部110、フレームバッファリング部112,処理部114などのように分類されており、またこの構成の動作に関する具体的な詳細は、2000年2月11日出願の「GAME MACHINE WITH GRAPHICS PROCESSOR」の名称で、本発明の譲受人に譲渡された米国特許出願番号09/502,671号に記載されており、その開示のすべてを本明細書に参考として組み入れる。

0145

次に、本発明の1つ以上の特徴に従った、表示用画像を生成するために画像データを処理する装置300を例示した、図12を参照する。

0146

この装置300は、好ましくは、制御プロセッサ302、複数のグラフィックプロセッサ304、及びマージユニット306を含んで構成される。

0147

制御プロセッサ302は、好ましくは、複数のグラフィックプロセッサ304に命令を供給するように動作する。制御プロセッサ302は、また、マスタータイミングジェネレータ308、コントローラ310、及びカウンタ312を含んでいる。

0148

マスタータイミングジェネレータは、好ましくは上述した1つ以上の表示プロトコルのような表示プロトコルのブランク期間に同期した同期信号を生成するように動作する。

0149

コントローラ310は、好ましくは複数のグラフィックプロセッサ304に、図3の制御プロセッサ102が装置100のグラフィックプロセッサ104に与える命令と類似した命令を提供するように動作する。制御プロセッサ302は、好ましくは、詳細は後述するが、マージユニット306へのフレーム画像データの解放を同期させるために、複数のグラフィックプロセッサ304にリセット信号を提供し、これが同期信号と合わせて利用されるように動作する。

0150

各グラフィックプロセッサ304は、好ましくは、フレーム画像データ内に画像データをレンダリングし、このフレーム画像データを個々のローカルフレームバッファ(図示せず)に記憶するように動作するレンダリングユニット314を含んでいる。より具体的には、各グラフィックプロセッサ304は、好ましくは、図3のグラフィックプロセッサ104において採用された機能ブロックの少なくとも幾つかを有している。加えて、各グラフィックプロセッサ304は、好ましくは、フレーム画像データがローカルフレームバッファから解放される時点を示す同期カウンタを生成するように動作する同期カウンタ318を含んでいる。

0151

個々の同期カウンタ318は、好ましくは、タイミングジェネレータ308からの同期信号に基づいてそれらの個々の同期カウンタを増加または減少させる。

0152

各グラフィックプロセッサ304は、好ましくは、個々のローカル同期カウントが所定のしきい値に達したときにマージユニットそられの個々のフレーム画像データを解放するように動作する。

0153

制御プロセッサ302のコントローラ310により発行されたリセット信号は、好ましくは、個々のグラフィックプロセッサ304の同期カウンタをリセットする際に利用される。この方法において、制御プロセッサ302は、好ましくは、各レンダリングユニット314からのフレーム画像データの解放のタイミングを操作するように動作する。よって、装置300は、図4図7に示した動作モード、例えば、タイミング関係、領域分割、均一化、レイヤブレンディング、Zソート及びレイヤブレンディング、及びフリップアニメーション、を容易にすることができる。

0154

図13Aには、タイミングジェネレータ308により発行される同期信号、リセット信号、及び同期カウンタ318の個々の1つの間における時間関係が示されている。

0155

特に、同期カウンタ318は、同期信号が遷移する度に増加もしくは減少する。リセット信号は、ゼロ値のような、予め定められたレベルからの計数を開始するために同期カウンタ318をリセットする。

0156

図13Bを参照すると、この代替えの構成は、タイミング精度をより厳密にするために採用される。特に、同期カウンタ318は、サブ同期カウンタ(図示せず)によって代用され、あるいは共同で動作する。タイミングジェネレータ308は、同期信号よりも高い周波数で動作するサブ同期信号を生成する。サブ同期カウンタは、好ましくは、サブ同期信号の遷移に応答して増加あるいは減少し、また制御プロセッサ302からのリセット信号の受領によりリセットされる。このようにアレンジメントすることで、グラフィックプロセッサ304は、好ましくは、各サブ同期カウンタが所定のしきい値(図13Aのタイミングを利用して採用されるしきい値よりも高い)に達したときに、それらの個々のフレーム画像データをマージユニット306に解放するように動作する。

0157

図10及び12を参照すると、装置300は、図10に示したものと実質的に同様な要素により構成される。すなわち、複数のグラフィックプロセッサ304は各セットにグループ化され、各セットはローカルマージユニットに連結され、また、各ローカルマージユニットはコアマージユニットに連結される。

0158

コアマージユニットは、好ましくは、各ローカルマージユニットから統合フレーム画像データを同期的に受領し、この統合フレーム画像データを更に同期的に統合するように動作する。

0159

次に、本発明の1つ以上の別の特徴に従って動作する装置350のブロック図である、図14を参照する。

0160

いくつかの点において、装置350は、図3の装置300と実質的に類似している。例えば、装置350は、複数のグラフィックプロセッサ104を有しており、これらの1つ以上は、好ましくは、画像データをフレーム画像データへレンダリングし、このフレーム画像データを個々のローカルフレームバッファに記憶するように動作する。より具体的には、装置350のグラフィックプロセッサ104は、好ましくは、図3のグラフィックプロセッサ104と実質的に同様なものとする。

0161

装置350は、また、複数のグラフィックプロセッサに機能的に連結されると共にグラフィックプロセッサ104の各ローカルフレームバッファからフレーム画像データを同期的に受領し、これに基づいて統合フレーム画像データを同期的に生成するために動作する少なくとも1つのマージユニット106を含んでいる。装置350はまた、各グラフィックプロセッサ及びマージユニット106に作動的に連結された制御プロセッサ102を含んでいる。この点について説明した装置350の各部は、実質的に図3のものと同様である。装置350の機能は図3の装置350の機能に実質的に同様であることが最も好ましい。

0162

装置350は、同様に、好ましくは、マージユニット106の出力に機能的に連結された、つまり、統合フレーム画像データの少なくとも1つのフレームを受領するように動作する、ビデオ転送ハブ(VTH、あるいは単純にビデオハブ)352を含んでいる。

0163

ビデオハブ352は、好ましくは更に、フレーム画像データ356の少なくとも外部に供給されたフレームを受領するように動作する。ビデオハブ352は、好ましくは、バス126を経て複数のグラフィックプロセッサ104及び制御プロセッサ102に連結されている。装置350は、また、好ましくは、ビデオハブ352に機能的に連結されると共に、統合フレーム画像データの少なくとも1つのフレーム及び外部フレーム画像データ356の少なくとも1つのフレームのいずれかあるいは両方を受領し、記憶し、その後にこれを解放することができる、キャプチャメモリ354を含んでいる。

0164

1つ以上のグラフィックプロセッサ104、あるいは制御プロセッサ102による命令があると、ビデオハブ352は、好ましくは、統合フレーム画像データの少なくとも1つのフレーム及び/または1以上のグラフィックプロセッサ104への外部フレーム画像データ356の少なくとも1つの送出を促進する。1以上のグラフィックプロセッサ104は、次いで、フレーム画像データの一連の連続したフレームを生成するために、ビデオハブ352により送出されたフレーム画像データを利用する。更に、マージユニット106は、このフレーム画像データのフレームを受領し、これに基づいて統合フレーム画像データの次のフレームを生成する。

0165

一例として、ビデオハブ352は、外部ソース、例えば、デジタル化されたフィルム、別のグラフィック処理ユニットプロセッサ、ストリーミングビデオからのフレーム画像データを統合するために利用され、また1以上のフレーム画像データは、装置350により処理される。この機能は、最終的な動画における所望の特殊効果を得るために、35mm映画のようなフィルムがデジタル的に生成した画像と統合されるときに特に有用である。

0166

装置350が、外部フレーム画像データ356の表示プロトコルのような、表示プロトコルに従ってマージユニット106により達成されるマージ機能と同期できるので、高品質の統合画像が得られる。更に、装置350が容易に基準化できるので、フィルムのような、外部画像画像品質基準適合あるいはそれを超える非常に高い品質のデータ出力が得られる。

0167

ここで、図14の装置350は、図10及び図3の装置100のものと実質的に同様な方法で規準化される。より具体的には、1以上のビデオハブ352及び1以上のキャプチャメモリ354が、より高い精度のデータ出力を達成するために図10と実質的に同様な回路技術で採用される。

0168

次に、本発明の1以上の別の特徴に従った使用に適した装置360を例示した、図15を参照する。

0169

装置360は、好ましくは、図3のものと実質的に同様な幾つかの機能及び/または回路ブロック、すなわち少なくとも1つのマージユニット106及び制御プロセッサ102に連結された複数のグラフィックプロセッサ104を含んでいる。

0170

より具体的には、装置360は、好ましくは、これらの機能ブロックに関しては図3の装置100と実質的に同様のものとする。装置360は、しかしながら、共通画像データを例えば、バス126上で受領し、これを記憶するように動作するメモリ転送ハブ(MTHあるいは単にメモリハブ)362を更に含んでいる。

0171

メモリ364は、好ましくはメモリハブ362に機能的に連結されており、これにより、共通画像データが記憶され、及びこれから検索される。共通画像データは、ポリゴンが個々のローカルフレームバッファにレンダリングされたときに使用されるテクスチャデータのような、いずれかの形態を採ることができる。

0172

このようなテクスチャデータは、それが展開されたときには、メモリ量の比較的大きな部分を占有する。複数のグラフィックプロセッサ104のそれぞれにおいて必要とされるメモリ量を減じるため、テクスチャデータのような共通画像データが、好ましくはメモリ364内に記憶されることが重要である。1以上のグラフィックプロセッサ104が共通画像データを必要とするときには、メモリハブ362は、好ましくは、メモリ363から共通画像データを検索し、またこのデータを1以上のグラフィックプロセッサ104に転送する。

0173

メモリハブ362及び関連するメモリ364は、アプリケーションの必要性に応じて、図10及び/または図14に示されたような基準化されたシステムにおいて利用される。

0174

本発明の1以上の特徴に従って使用されるのに適合された装置400を例示したブロック図である、図16を次に参照する。

0175

多くの点において、装置400は、図10の装置200に実質的に類似している。特に、装置400は、制御プロセッサ102、複数のグラフィックプロセッサ100A−D、及びコアマージユニット106Nを含んでいる。この装置400は、図10の装置200のように、コア同期ユニット108Nは必要としない。これらの機能及び/または回路ブロックの機能は、図3及び図10において説明したものと実質的に類似しており、繰り返しの説明は省略する。

0176

装置400のコアマージユニット106Nは、バス126と制御データバス404との間に機能的に連結されたバスコントローラ機能部402を含んでいる。制御データバス404は、ローカルマージユニット106A−AD及びコアマージユニット106Nと通信する。ローカルマージユニット106A−Dは、また、好ましくは、バスコントローラ機能部402を有している。各バス機能部402は、図示したようにコアマージユニット106Nの内部及びローカルマージユニット106A−Dの内部に組み込まれるが、これらの機能部は、本発明の範囲を逸脱することなしに、コアマージユニット106N及びローカルマージユニット106A−Dから分離ないし独立させるようにしてもよい。

0177

個々のローカルマージユニット106A−Dは、別のデータライン127A−Dによりコアマージユニット106Nに機能的に結合されており、これにより、個々のローカルマージユニット106A−Dからコアマージユニット106Nへローカル統合フレーム画像データが他のものと独立に送出されるようになる。

0178

図9に関して説明したように、装置400は、装置200と同様、好ましくは図9の詳細なフローチャートに従って動作する。これにより、好ましくはフレーム毎に、図4図7に示した1つ以上の動作モードが実行される。特に、制御プロセッサ102は、好ましくは、フレーム毎に、個々の装置100A−Dに次のセットアップデータを送出するために動作する。このセットアップデータは、グラフィックプロセッサ104及びマージユニット106の動作モードを確立する。制御プロセッサ102は、1以上の動作モードに関する命令、つまり、セットアップデータを、バスコントローラ機能部402と制御データバス404を経由して各ローカルマージユニット106A−D及びコアマージユニット106Nに送出する。

0179

図10の装置200及び図3の装置100に関して述べてきたように、コアマージユニット106Nは、好ましくは、フレーム画像データの同期的な解放、ローカル統合フレーム画像データ及び統合フレーム画像データの生成を容易にするため、マージ同期信号132を生成する。コアマージユニット106Nは、制御データバス404及びデータバス126を経て、マージ同期信号132を個々のグラフィックプロセッサ104へ送出する。

0180

マージ同期信号132が迅速に送出され且つ装置100A−Dにより迅速に受領されることを確保するため、バスコントローラ機能部402は、好ましくは、制御データバス404上でマージ同期信号132の受領の際にはデータバス126の制御を占有(seize)する。また、マージ同期信号132を個々の装置100A−Dに優先度に基づいて送出する。このようにして、バスコントローラ機能部402は、マスターバスコントローラの機能を提供する。

0181

なお、コアマージユニット106Nは、制御データバス404及びローカルマージユニット106A−Dを経由して、個々のグラフィックプロセッサ104にマージ同期信号132を送出するようにしてもよい。

0182

図16の装置400において実施された本発明の1以上の特徴によれば、共通の制御データバス404によって、制御プロセッサ102,ローカルマージユニット106A−D及びコアマージユニット106Nの間における別の各制御データラインを省けるという特長が得られる。よって、全体の装置の規模が簡略化され、異なる方法による機能ブロックの分割の自由度が得られる。

0183

本発明の1以上の更に別の特徴に従って使用するために適合した装置500を例示したブロック図である、図17を次に参照する。

0184

当業者にとっては、複数のグラフィックプロセッサ104、複数のローカルマージユニット106A−D、コアマージユニット106N、及び制御プロセッサ102などの、共通の機能的及び/または回路ブロックに注意払うことで、多くの点において、図17の装置500は、図10及び16の装置に実質的に類似していることが自明である。従って、これら機能的及び/または回路ブロックに関する詳細は、便宜上省略する。

0185

装置500は、好ましくは、特定の機能的及び/または回路ブロックの間のデータ伝送がパケット交換ネットワーク上で経路選択される、「コネクションレスネットワーク」の機能を利用して動作する。データは、パケット交換ネットワークの制御プロトコル(TCP)レイヤに従ってパケット編成される。各パケットは、特定のパケットのグループに関連していることを識別する識別番号、及びパケット交換ネットワーク上での機能的及び/または回路ブロックの着アドレス宛先アドレス)を含んでいる。宛先において、TCPはパケットを元のデータに再構築する。

0186

次に、装置500の特別な特徴に注目すると、パケットスイッチ504は、コアマージユニット106N及び個々のローカルマージユニット106A−D内において、制御プロセッサ102、各装置100A−D、複数のグラフィックプロセッサ104及び1つ以上のパケットスイッチコントローラ機能部502に機能的に連結されている。

0187

ここで、パケットスイッチコントローラ機能部502は、本発明の範囲を逸脱することなしに、コアマージユニット106N及び/またはローカルマージユニット106A−Dとは別に実施される。

0188

パケット交換ネットワークによって各グラフィックプロセッサ104が制御プロセッサ102に連結されているので、プログラムデータとフォーマットデータは、パケット化された形態でグラフィックプロセッサ104に送出される。よって、例えば、ポリゴン画像の変形、3次元画像−2次元画像の変換、その拡大・減少・回転・照明・陰影・色付けなどを容易にする1つ以上のソフトウェアプログラムがパケットスイッチ504を介してグラフィックプロセッサに送出される。

0189

ここで、装置500の機能的及び/または回路ブロック間での特定の相互連結は、パケット交換ネットワークによってなされてはいない。例えば、複数のグラフィックプロセッサ104は、専用のデータライン127によって各ローカルマージユニット106に連結される。同様に、複数のローカルマージユニット106は、専用のデータライン127A−Dによってコアマージユニット106Nに連結される。更に、制御プロセッサ102からローカルマージユニット106A−Dへのコアマージユニット106Nへの命令の転送は、図16に関して説明した共通制御バス404を介して少なくとも部分的に送出される。

0190

制御プロセッサ102は、本発明の他の構成に関して詳細に述べたように、フレーム毎に1つ以上の動作モードにおいて動作する、グラフィックプロセッサ104、ローカルマージユニット106A−D、及びコアマージユニット106Nに命令を与えるために動作する。

0191

特に、制御プロセッサ102は、好ましくは、パケットスイッチ504を経て各宛先の機能的及び/または回路ブロックに、1つ以上の動作モードに関する命令を送出する。各命令はTCPレイヤに従ってパケット化される。更に、コアマージユニット106Nは、好ましくは、上述したように、マージ同期信号132を生成するように動作する。コアマージユニット106Nは、制御データバス404、パケットスイッチコントローラ機能部502、及びパケットスイッチ504を経て、種々の宛先の機能的及び/または回路ブロックにマージ同期信号132を送出するように動作する。

0192

パケットスイッチコントローラ機能部504は、制御データバス404上でコアマージユニット106Nがマージ同期信号132を送出するときに、パケットスイッチ504の制御を占有することができる。これにより、マージ同期信号132が宛先の機能的及び/または回路ブロックに迅速に送出される。

0193

TCPレイヤが所定の待ち時間(latency)内に宛先の機能的及び/または回路ブロックのいずれかに命令のすべてのパケットの非常に迅速な送出及び経路指定保証を行うことができるときには、パケットスイッチコントローラ502は、パケットスイッチ504を占有する必要がない。むしろ、マージ同期信号132が受容可能な許容範囲内で、宛先の機能的及び/またはグラフィックプロセッサ104のような回路ブロックに受領されるように、デザインの推定がなされる。あるいは、コアマージンユニット106Nは、制御データバス404及びローカルマージユニット106A−Dを経て各グラフィックプロセッサ104にマージ同期信号132を送出する。

0194

次に、本発明の1以上の別の特徴による、表示装置上に画像を生成するために画像データを処理するための装置600のブロック図である、図18を参照する。

0195

この装置600は、好ましくは、ローカルエリアネットワーク(LAN)のような、パケット交換ネットワーク上で一緒に結合されており、少なくともその1つが制御ノードである、複数の処理ノード602を含んでいる。

0196

パケット交換ネットワーク(ここでは、LAN)及び関連するTCPレイヤは、画像を生成する上述の同期スキーマを支持するため、ソースノードから宛先ノードへの十分に高いデータ伝送速度を享受する。

0197

制御ノード604は、好ましくは、表示用画像を生成するための画像データの処理に関与する複数の処理ノード602の中から処理ノードのサブセットを選択するために機能する。処理ノードのサブセットは、好ましくは、少なくとも1つのアクセラレータノード606、少なくとも1つのマージノード608、少なくとも1つのパケットスイッチノード610、及び少なくとも1つのコンフィグレーションノード612を含んでいる。

0198

装置600は、付随的ないし付加的に、少なくとも1つのコアマージノード614、少なくとも1つのビデオハブノード616、及び少なくとも1つのメモリハブノード618を含んで構成される。

0199

少なくとも一つのアクセラレータノード606は、好ましくは少なくとも図3、10及び14−17に関して上述した1つ以上のグラフィックプロセッサ104を好ましくは含んでいる。より詳しくは、少なくとも1つのアクセラレータノード606は、1つ以上のグラフィックプロセッサ104に関して上述した機能を享受するが、この機能に関しては、便宜上、繰り返して詳細に説明することは省略する。

0200

少なくとも1つのマージノード608は、好ましくは、図3、10及び14−17に関して上述した少なくとも1つのマージユニット106を有している。好ましくは、少なくとも1つのマージノード608は、少なくとも1つのマージユニット106の機能を享受するが、この機能の詳述は、便宜上、省略する。制御ノード604は、好ましくは、図3、10及び14−17で上述した制御プロセッサ102を有するが、制御プロセッサ102の詳述は、便宜上、省略する。

0201

パケットスイッチノード610は、好ましくは、画像データ、フレーム画像データ、統合フレーム画像データ、いずれかの命令示、及び/または複数の処理ノード602間でのいずれかの他のデータを経路選択するように動作する。

0202

複数の処理ノード602は、表示のための画像の生成を達成するためにタップ(tap)されるリソースを示している。これらのリソースは、パケット交換ネットワークを介して分配されるので、画像生成に関与するためにこれらリソースサブセットを選択する処理を設けることが望ましい。より具体的には、幾つかのリソースは、画像生成に関与するために利用可能でないが、画像の生成に関与するための機能を持たない他のリソースが利用可能となる。

0203

図18及び図19を参照すると、コンフィグレーションノード612は、好ましくは、1つ以上のノードコンフィグレーション要求をパケット交換ネットワークを介して複数の処理ノード602へ発行するように動作する(アクション650)。

0204

これらのノードコンフィグレーション要求は、好ましくは、処理ノード602に対して、データ処理能力、利用可能性、宛先アドレスなどに関する少なくとも1つの情報を送出することを促す。より詳しくは、データ処理能力に関して求められた情報は、少なくとも以下にリストされるものを含んでいる。
(i)画像データがフレーム画像データへ処理される速度(例えば、グラフィックプロセッサ104の能力)、
(ii)利用可能な多数のフレームバッファないし利用可能なフレームバッファの数(例えば、グラフィックプロセッサ104の能力)、
(iii)フレーム画像データの解像度(例えば、グラフィックプロセッサ104の能力)、
(iv)所定のノードの画像処理装置によって支持される各動作モードの表示ないし指示、
(v)各フレーム画像データ(例えばマージノード608の能力)がマージされるために合成されたフレーム画像データへ入力される多数の対応するパス、
(vi)マージユニットによって支持される動作モードの表示ないし指示、
(vii)データを記憶するために利用可能なメモリのサイズ(例えば、メモリハブノード618の能力)、
(viii)メモリのアクセス速度(例えば、メモリハブノード618の能力)、及び(ix)メモリの処理能力(例えば、メモリハブノード618の能力)。

0205

なお、上記リストは一例であり、完全なものではない。

0206

アクション652において、好ましくは、少なくとも幾つかの画像処理ノード602は、パケット交換ネットワークを介して、それらのデータ処理能力、宛先アドレス、またはコンフィグレーションノード612の利用可能性に関する情報を送出する。コンフィグレーションノード612は、好ましくは、受領した宛先アドレスをノードコンフィグレーション要求に応答する各処理ノードへ分配するように動作する(アクション654)。

0207

アクション656において、コンフィグレーションノード612は、好ましくは、制御ノード604へのノードコンフィグレーション要求に応答して各処理ノード602により供給された情報を送出するように動作する。

0208

アクション658では、制御ノードは、好ましくは、表示のための画像を生成するために画像データを処理する際に関与するためにノードコンフィグレーション要求に応答する処理ノード602の中から処理ノード602のサブセットを選択するように動作する。この選択プロセスは、好ましくは、ノードコンフィグレーション供給に対する処理ノード602からの応答に基づくものである。

0209

アクション660において、制御ノード604は、好ましくは、画像データを処理する際に関与するための要求を処理ノード602の各サブセットに対して送出するために動作する。これにより、これらサブセットは、画像データの処理への関与を迅速に受諾する。

0210

制御ノード604は、好ましくは更に、関与に対する要求に応答した処理ノード602の1以上のサブセットに対して1以上の別のコンフィグレーション要求を送出するように動作する(アクション662)。好ましくは、この別のノードコンフィグレーション要求は、ノードが、画像データ、フレーム画像データ、統合フレーム画像データ、処理命令のようなデータを送出及び受領するためにノードが期待するフォーマットに関する情報を提供するためのノードのための少なくとも1つの命令を含むようにする。

0211

アクション664において、制御ノードは、好ましくは、画像データを処理する際に関与する処理ノードのサブセットに処理ノード602のどれを残すべきかを決定するように動作する。この決定は、好ましくは、ノードコンフィグレーション要求に応答して処理ノード602によって提供される、データ処理能力、フォーマット情報、利用可能性(可用度)などの少なくとも1つに基づくものである。

0212

アクション660において、装置600は、好ましくは、図9において述べた処理の流れに実質的に従って動作する。これは、特に、フレーム画像データ及び統合フレーム画像データの解放を少なくとも1つのマージノード608の1以上のマージユニット106に対して同期するためのマージ同期信号の使用に関して行われる。グラフィックプロセッサ104,マージユニット106,制御プロセッサ102、同期ユニット108などの間のデータ流れはパケット交換ネットワーク上で容易化されることは理解されよう。

0213

更に、図18の装置600は、好ましくは、上記した装置のいずれか、例えば、図3の装置100、図10の装置200、図14の装置350,図15の装置360,図16の装置400,図17の装置500,あるいはこれらのいずれかの組み合わせ、を実施するために必要なリソースを提供するように動作する。

0214

好都合なことに、図18の装置600は、表示用の画像の所望の品質を達成するのに必要なソースを実質的に含むように容易に変更することができる。より具体的には、アクセラレータノード606、マージノード608、コアマージノード614、ビデオハブノード616、メモリハブノード618などは、画像生成に関与する処理ノード602のサブセットに容易に付加あるいは除去されることから、どのようなレベルの処理能力が必要とされる場合であっても、所望の処理能力が、ケース毎に得られる。

0215

表示用の画像イメージを生成するために画像データを処理する装置700のブロック図を示した図20を、次に参照する。

0216

装置700は、好ましくは、図18に例示された処理ノード602と実質的に同様な全体的な構成を有する。特に、装置700は、図18に示したように、制御ノード604、アクセラレータノード606,マージノード608、パケットスイッチノード610、コンフィグレーションノード612、及び付加的にコアマージノード614、ビデオハブノード616、及びメモリハブノード618を含んでいるが、明確化のためにこれらのノードの特定のものだけを図20に示した。装置700は、図18の装置600と図19処理フローに関して述べた機能を享受するが、この機能の詳細に関する詳細な記述は便宜上省略する。

0217

装置700の処理ノードは、インターネットのような開かれたパケット交換ネットワークに連結されるのが望ましい。

0218

パケット交換ネットワークは、好ましくは、画像生成する上述した同期スキーマをサポートするために十分に高いデータ伝達速度を享受する適したハードウェア及びTCPレイヤを使用する。

0219

装置700は、処理ノードが階層毎に配置されることを意図しており、1以上のアクセラレータノード606(明確化のために、アクセラレータ606を1つ図示した)は、n番目のレベルでパケットスイッチノードに連結されている。その延長として、制御ノード604、マージノード608、614(図示せず)、パケットスイッチノード610、コンフィグレーションノード612(図示せず)、ビデオハブノード616(図示せず)、及びメモリハブノード618(図示せず)もまたn番目のレベルに配置される。

0220

少なくともn番目のレベルのアクセラレータノード606の1つは、(n−1)番目のレベルのパケットスイッチノード610によって連結される(n−1)番目のレベルの制御ノード604、及び複数の(n−1)番目のレベルのアクセラレータノード606を有する。

0221

図20に示したように、n番目のレベルのアクセラレータノード606は、(n−1)番目のレベルの制御ノード604A、(n−1)番目のレベルのパケットスイッチノード610A、及び7(n−1)番目のレベルのアクセラレータノード606A1−7を有している。

0222

好ましくは、(n)番目のレベルのアクセラレータノードは、図18のアクセラレータノード606の少なくとも1つに関して述べたように、集合体で実質的に同様に機能するが、n番目のレベルのアクセラレータノード606は、7つのアクセラレータノード606A1−7を有するために、高レベルの処理能力を有している。各アクセラレータノードは、1以上のグラフィックプロセッサ104を有するものである。また、それぞれ1つ以上のグラフィックプロセッサ104などを有するので、(n−1)番目のレベルのアクセラレータノード606A1−7は、好ましくは、図18に関して述べたアクセラレータノード606の機能を有するものとなる。7(n−1)番目のレベルのアクセラレータノード606A1−7が例示されているが、本発明の範囲を逸脱することなしに、(n−1)番目のレベルのアクセラレータノードをどのような数でも採用することができる。

0223

好ましくは、(n−1)番目のレベルのアクセラレータノード606A6のような、1つ以上の(n−1)番目のレベルのアクセラレータノード606A1−7は、(n−2)番目のレベルのパケットスイッチノード610A6により一緒に連結された、(n−2)番目のレベルの制御ノード604A6と(n−2)番目のレベルの複数のアクセラレータノード606A6、1−m(mは7のようないかなる数字でもよい)を有する。

0224

(n−2)番目のレベルのアクセラレータノード606A6、1−mは、図18のアクセラレータノード606に関して上述した機能を享受する。本発明によれば、レベル数、n、は、いかなる整数でもよい。

0225

(n−2)番目のレベルのアクセラレータノード606A6,4のような、1つ以上の(n−2)番目のレベルのアクセラレータノード606A6、1-mは、(n−3)番目のレベルのパケットスイッチノード610A6、4によって連結される(n−3)レベルの制御ノード604A6,4、及び(n−3)番目のレベルの複数のアクセラレータノード606A6,4、1−m(mは7のようないかなる数字でもよい)を有している。

0226

(n−3)番目のレベルのアクセラレータノード606A6,41−mは、図18のアクセラレータノード606に関して上述した機能を享受する。この発明と同様、レベル数、n、はいかなる整数でもよい。

0227

図18の装置600のように、制御ノード604は、好ましくは、複数の処理ノード602間から、表示用の画像を生成するために画像データの処理に関与するために複数の処理ノード602から処理ノードのサブセットを選択するように動作する(上記の図19の説明を参照)。

0228

図20の装置700に関して、選択処理の結果は、nレベルを含む処理ノード602のサブセットが得られる。

0229

図20及び21Aに関して、処理ノード602のサブセットの選択が完了すると、n番目のレベルの制御ノード604は、好ましくは、パケット交換ネットワークを介して、1つ以上のn番目のレベルの情報セット750を、1つ以上の処理ノード602のサブセットへ送出する。情報セット750は、好ましくは、命令及び画像生成の際に使用されるデータの少なくとも1つを含む。例えば、命令は、好ましくは、上述したフレーム毎に動作する、グラフィックプロセッサ104、ローカルマージユニット106、コアマージユニット108などの1つもしくはそれ以上の動作モードに関する情報を有している。データは、テクスチャデータ、ビデオデータ(最終的な画面を生成するために統合されるために外部から供給された画像データのフレームのような)などである。

0230

n番目のレベルの情報セット750のそれぞれは、好ましくは、所定の情報セットがn番目のレベルの制御ノード604から出力されることを示すn番目のレベルのヘッダ752を有する。ヘッダ752は、情報セットを命令情報、データ、あるいはこれらの組み合わせとして認識される。n番目のレベルの情報セット750は、好ましくは更に、複数のn番目のレベルのブロック754を有しており、各ブロックは、n番目のレベルのアクセラレータノード756、n番目のレベルのマージノード758、n番目のレベルのビデオハブノード760、n番目のレベルのメモリハブノード762などのような、1つ以上のn番目のレベルのノードに関する情報及び/またはデータを有している。

0231

n番目のレベルのスイッチノード610は、好ましくは、命令セット750を分析し、その結果、各n番目のレベルの情報ブロック756−762は、各n番目のレベルのノードへ経路選択される。

0232

図21Bを参照すると、情報セット750Aのような1以上のn番目のレベルの情報セット750は、複数の(n−1)番目のレベルの情報サブブロック606A1−mを有する、n番目のレベルの情報ブロック606Aのような、n番目のレベルのアクセラレータノードに関するn番目のレベルの情報ブロックを有する。

0233

n番目のレベルの情報ブロック756Aは、好ましくは更に、情報サブブロック772が命令、データなどを含むかどうかを示すヘッダ770を有している。

0234

図20を参照すると、n番目のレベルのスイッチノード610は、情報セット750を受領し、そこからn番目のレベルのアクセラレータノード606に関するn番目のレベルの情報ブロック756Aを分析し、及びn番目のレベルの情報ブロック756Aを(n−1)番目のレベルの制御ノード604へ送出するように動作する。

0235

(n−1)番目のレベルの制御ノード604Aは、好ましくは、n番目のレベルの情報ブロック756Aの各(n−1)レベルの情報サブブロック772を(n−1)レベルのパケットスイッチノード610Aへ送出するために動作する。これにより、各(n−1)番目のレベルの情報サブブロック772は、各(n−1)番目のレベルのアクセラレータノード606A1−mへ送出される。この機能と処理は、アクセラレータノードの各レベルで好ましくは繰り返される。

0236

装置700は、上述したあらゆる装置を実施するのに必要なリソースを提供するように動作する。例えば、図3の装置100、図10の装置200、図14の装置350、図15の装置360、図16の装置400、図17の装置500、図18の装置600、及びこれらの組み合わせである。

0237

好都合なことに、図20の装置700は、表示用の画面の所望の品質を得るために必要なこれらのソースを実質的に有するように容易に変更される。より具体的には、処理ノードの数とレベルを容易に増加もしくは減少できるので、どのレベルの処理能力が必要とされても、所望の量の処理能力がケース毎に得られる。

0238

本発明の少なくとも1つの別の特徴によれば、表示画面に表示する画像を生成するための画像データを生成する方法を実施することができる。この方法の実施に際しては、好ましくは、図3、8、10〜18、及び20に例示された適切なハードウェア、及び/または手動もしくは自動処理を利用することができる。

0239

自動処理は、ソフトウェアプログラムの命令を実行する公知のいずれかの処理装置を利用して実施される。ソフトウェアプログラムによって、プロセッサ(及び/または、いずれかの周辺装置システム)は、本発明の1つ以上の特徴に従って、特定の処理ステップを実行する。手動処理においては、各ステップ自体はマニュアル技術手法を用いて実行される。いずれの場合でも、方法の処理ステップ及び/または動作は、図3、8、10−18または20のハードウェアの少なくとも一部の上述した機能に対応する。

0240

以上、本発明をその特定の実施形態を参照して説明したが、これらの実施形態は、本発明の原理と応用を単に例示したものにすぎない。よって、これら例示した実施形態の多くの変更を行うことが可能であり、また、請求の範囲によって定められる本発明の技術思想及び範囲から逸脱しない他の構成を案出できるものである。

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ