(57)【要約】【課題】  画像の描画速度を向上させる。【解決手段】  図形分割部２は、順次入力される図形データに基づいて、図形データが示す図形における画像描画領域を構成する複数の部分領域に対応する部分をそれぞれ示す複数の処理単位データを順次生成する。描画処理部６は、複数の部分領域の少なくともいずれかにそれぞれ対応し、対応する部分領域に対して処理単位データを用いた描画処理を互いに独立してそれぞれ実施する。処理割当部４は、図形分割部により順次生成される処理単位データに含まれる描画位置情報に基づいて、処理単位データを処理すべき描画処理部６を順次特定する。【選択図】    図１
2006202211.tif 000002
【特許請求の範囲】
【請求項１】
順次入力される図形データに基づいて、図形データが示す図形における画像描画領域を構成する複数の部分領域に対応する部分をそれぞれ示す複数の処理単位データを順次生成する図形分割部と、
前記複数の部分領域の少なくともいずれかにそれぞれ対応し、対応する部分領域に対して処理単位データを用いた描画処理を互いに独立してそれぞれ実施する複数の描画処理部と、
前記図形分割部により順次生成される処理単位データに含まれる描画位置情報に基づいて、処理単位データを処理すべき描画処理部を順次特定する処理割当部とを備えていることを特徴とする画像描画装置。
【請求項２】
請求項１記載の画像描画装置において、
前記各描画処理部は、処理単位データを用いた描画処理の実施中に、少なくとも１つの後続の処理単位データを一時的に保持する処理単位データ保持回路を備えていることを特徴とする画像描画装置。
【請求項３】
請求項１記載の画像描画装置において、
前記各描画処理部は、ユーザプログラムに応じて命令を実行するプロセッサで構成されていることを特徴とする画像描画装置。
【請求項４】
請求項１記載の画像描画装置において、
前記処理割当部は、複数の図形の重なりを持たない部分領域に対応する処理単位データを処理する複数の描画処理部を並行して処理させることを特徴とする画像描画装置。
【請求項５】
請求項１記載の画像描画装置において、
前記処理割当部は、複数の図形の重なりを持つ部分領域に対応する処理単位データを処理する複数の描画処理部を並行して処理させないことを特徴とする画像描画装置。
【請求項６】
請求項１記載の画像描画装置において、
前記各描画処理部は、
描画処理の実施毎に、描画処理に用いられた処理単位データに含まれる描画位置情報を保持する位置情報保持回路と、
描画処理の実施毎に、描画処理により得られた処理結果データを格納する記憶回路と、
今回の描画処理を実施するために以前の描画処理により得られた処理結果データが必要であるときに、今回の描画処理に用いる処理単位データに含まれる描画位置情報と前記位置情報保持回路が保持している描画位置情報とについて、双方が一致する場合、前記記憶回路に格納されている前回の描画処理により得られた処理結果データを用いて描画処理を実施し、双方が一致しない場合、前記記憶回路に格納されている前回の描画処理により得られた処理結果データを外部記憶回路に格納した後に、前記外部記憶回路から所望の処理結果データを取得し、取得した処理結果データを用いて描画処理を実施する処理回路とを備えていることを特徴とする画像描画装置。
【請求項７】
請求項１記載の画像描画装置において、
前記画像描画領域の同一列の部分領域に対応する描画処理部は同一であることを特徴とする画像描画装置。
【請求項８】
請求項１記載の画像描画装置において、
前記画像描画領域の互いに隣接する２つの部分領域に対応する描画処理部は互いに異なることを特徴とする画像描画装置。
【請求項９】
順次入力される図形データに基づいて、図形データが示す図形における画像描画領域を構成する複数の部分領域に対応する部分をそれぞれ示す複数の処理単位データを順次生成し、
順次生成される処理単位データに含まれる描画位置情報に基づいて、前記複数の部分領域の少なくともいずれかにそれぞれ対応する複数の描画処理部の中から、処理単位データを送出すべき描画処理部を順次特定し、
順次特定される描画処理部により、対応する部分領域に対して処理単位データを用いた描画処理を互いに独立してそれぞれ実施することを特徴とする画像描画方法。
【請求項１０】
請求項９記載の画像描画方法において、
前記各描画処理部は、処理単位データを用いた描画処理の実施中に、少なくとも１つの後続の処理単位データを一時的に保持することを特徴とする画像描画方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像描画装置および画像描画方法に関し、特に、画像の描画速度を向上させる技術に関する。
【背景技術】
【０００２】
３次元グラフィックス等の画像描画装置では、描画対象画像を複数の図形（例えば、三角形）の集合とみなして図形毎に描画処理を実施することで、描画対象画像が描画される。このような画像描画装置では、一般に、描画性能を向上させるために、互いに独立して実施可能な複数の処理（ステージ）を同時に実施するパイプライン処理方式が採用されている。また、複数の画像描画装置を並列に動作させることで、画像描画の高速化を図ることも可能である。
【０００３】
画像処理システム（画像処理装置）の処理速度を向上させる技術として、例えば、特許文献１には、画像処理システムでの１回の画像データの入出力動作において、複数のフィルタリング処理を逐次的に実行することで、フィルタリング処理に必要なデータを格納するメモリへのアクセス時間を削減して全体の処理時間を短縮する技術が開示されている。また、特許文献２には、多数の演算器を効率的に利用し、回路規模およびコストを増大させることなく演算処理を高速に実施する画像処理装置が開示されている。
【特許文献１】特開平７−３３４６７１号公報
【特許文献２】特開２００４−１４５８３８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は、以下に示す課題を解決するためになされた。パイプライン処理方式の画像描画装置では、パイプラインの各段においてステージ間で処理結果を受け渡しながら各ステージが順次実施される。このため、例えば、図形Ａの描画処理が完了する前に、図形Ａとの重複部分を有する図形Ｂの描画処理が開始されると、図形Ｂにおける図形Ａとの重複部分の描画処理を実施する際に、図形Ａの描画処理の処理結果を必要とする処理（半透明合成処理や深度比較処理など）が誤った処理結果を用いて実施されてしまう場合がある。これを防止するために、図形Ａの描画処理が完了するまで、図形Ｂの描画処理の実施を待ち合わせる必要がある。この結果、互いに重なる図形の数が多いほど、画像の描画速度が低下してしまう。このような問題は、複数の画像描画装置を並列に動作させる場合にも発生し、ある描画装置が図形Ａの描画処理を実施しているときに、別の描画装置は、図形Ａとは重ならない図形の描画処理しか実施できない。すなわち、図形Ａの描画処理と図形Ｂの描画処理とを並列に実施することはできない。
【０００５】
本発明の目的は、画像の描画速度を向上できる画像描画装置および画像描画方法を提供することにある。
【課題を解決するための手段】
【０００６】
本発明の一形態では、図形分割部は、順次入力される図形データに基づいて、図形データが示す図形における画像描画領域を構成する複数の部分領域に対応する部分をそれぞれ示す複数の処理単位データを順次生成する。描画処理部は、複数の部分領域の少なくともいずれかにそれぞれ対応し、対応する部分領域に対して処理単位データを用いた描画処理を互いに独立してそれぞれ実施する。処理割当部は、図形分割部により順次生成される処理単位データに含まれる描画位置情報に基づいて、処理単位データを処理すべき描画処理部を順次特定する。
【０００７】
これにより、処理割当部により順次特定される描画処理部により、図形データが示す図形の描画処理が部分領域毎に並列して実施される。例えば、互い重なる図形Ａ、Ｂをそれぞれ示す図形データが順次入力されたときに、図形Ｂにおける図形Ａとは重複しない部分の描画処理を、図形Ａの描画処理を実施している描画処理部とは別の描画処理部に実施させることができる。従って、図形Ａの描画処理と図形Ｂにおける図形Ａとは重複しない部分の描画処理とを並列に実施できる。換言すれば、図形Ａの描画処理が完了するまで、図形Ｂの描画処理を待ち合わせる必要がなくなる。従って、画像の描画速度を向上でき、互いに重なる図形の数が多いほど多大な効果を奏する。
【０００８】
本発明の前記一形態の好ましい例では、各描画処理部の処理単位データ保持回路は、処理単位データを用いた描画処理の実施中に、少なくとも１つの後続の処理単位データを一時的に保持する。従って、新たな処理単位データが処理割当部から入力されたときに、以前に入力された入力データを用いた描画処理が実施されている場合、その描画処理が完了するまで新たに入力された入力データが一時的に保持される。このため、処理割当部により特定された描画処理部が描画処理を実施しているときに、処理割当部がその描画処理部に処理単位データを送出できなくなることを防止でき、処理単位データ保持回路により保持可能なデータ数が多いほど、多数の図形の重複を許容できる。
【０００９】
本発明の前記一形態の好ましい例では、各描画処理部は、ユーザプログラムに従って命令を実行するプロセッサで構成される。このため、ユーザプログラムを変更するだけで、描画処理部による描画処理の内容を変更できる。この結果、描画処理部の回路構成を変更することなく、様々な描画モードに対応できる。
本発明の前記一形態の好ましい例では、処理割当部は、複数の図形の重なりを持たない部分領域に対応する処理単位データを処理する複数の描画処理部を並行して処理させる。
【００１０】
本発明の前記一形態の好ましい例では、処理割当部は、複数の図形の重なりを持つ部分領域に対応する処理単位データを処理する複数の描画処理部を並行して処理させない。
本発明の前記一形態の好ましい例では、各描画処理部の位置情報保持回路は、描画処理の実施毎に、描画処理に用いられた処理単位データに含まれる描画位置情報を保持する。各描画処理部の記憶回路は、描画処理の実施毎に、描画処理により得られた処理結果データを格納する。各描画処理部の処理回路は、今回の描画処理を実施するために以前の描画処理により得られた処理結果データが必要であるときに、今回の描画処理に用いる処理単位データに含まれる描画位置情報と位置情報保持回路が保持している描画位置情報とについて、双方が一致する場合、記憶回路に格納されている前回の描画処理により得られた処理結果データを用いて描画処理を実施し、双方が一致しない場合、記憶回路に格納されている前回の描画処理により得られた処理結果データを外部記憶回路に格納した後に、外部記憶回路から所望の処理結果データを取得し、取得した処理結果データを用いて描画処理を実施する。今回の描画処理に用いる処理単位データに含まれる描画位置情報と保持回路が保持している描画位置情報とが一致する場合には、描画処理部による外部記憶回路へのアクセスが発生しないため、画像の描画速度をさらに向上できる。
【００１１】
本発明の前記一形態の好ましい例では、画像描画領域の同一列の部分領域に対応する描画処理部は同一である。これにより、処理単位データの送出先となる描画処理部が描画位置情報から容易に特定されるため、処理割当部における描画処理部を特定するための回路を簡易な回路で構成できる。
本発明の前記一形態の好ましい例では、画像描画領域の互いに隣接する２つの部分領域に対応する描画処理部は互いに異なる。このため、単一の図形の描画処理に関与する描画処理部の数を増加させることができ、描画処理の並列度を向上できる。
【発明の効果】
【００１２】
本発明では、互いに重なる複数の図形について、各図形における他の図形とは重複しない部分の描画処理を並列に実施でき、画像の描画速度の向上に大きく寄与できる。
【発明を実施するための最良の形態】
【００１３】
以下、図面を用いて本発明の実施形態を説明する。図１は、本発明の基本原理を示している。画像描画装置１は、図形分割部２、処理割当部４、複数の描画処理部６を有している。図形分割部２は、順次入力される図形データに基づいて、図形データが示す図形における画像描画領域を構成する複数の部分領域に対応する部分をそれぞれ示す複数の処理単位データを順次生成する。描画処理部６は、複数の部分領域の少なくともいずれかにそれぞれ対応し、対応する部分領域に対して処理単位データを用いた描画処理を互いに独立してそれぞれ実施する。処理割当部４は、図形分割部により順次生成される処理単位データに含まれる描画位置情報に基づいて、処理単位データを送出すべき描画処理部６を順次特定する。
【００１４】
図２は、本発明の第１実施形態を示している。グラフィックス描画装置（画像描画装置）ＧＤＤは、例えば、グラフィックス表示機能を有するカーナビゲーションシステムＳＹＳにＣＰＵ装置ＣＤや表示用メモリ装置ＤＭＤ等と共に搭載され、セットアップエンジンＳＥ、ＹＤＤＡエンジンＹＥ、ラスタディスパッチャＲＤ（処理割当部）、ラスタエンジンＲＥ０〜ＲＥ１５（描画処理部）、メモリディスパッチャＭＤを有している。
【００１５】
グラフィックス描画装置ＧＤＤは、例えば、４０９６（Ｘ方向）×４０９６（Ｙ方向）個のピクセル（画素）で構成されるグラフィックス描画領域（画像描画領域）に対して描画処理を実施する。従って、各ピクセルの座標は、２４ビット（Ｘ座標：１２ビット、Ｙ座標：１２ビット）で表される。また、グラフィックス描画領域は、１６×１個のピクセルでそれぞれ構成される２５６×４０９６個の部分領域で構成されている。
【００１６】
セットアップエンジンＳＥは、ＣＰＵ装置ＣＤからシステムバスＳＢを介して順次入力される図形データ（例えば、三角形の各頂点に対応するピクセルの座標と、色コードやＺ値（深度情報）等のパラメータ値とを含む）に基づいて、ラスタ（描画対象の三角形を行単位（Ｙ方向１ピクセル）で分割して得られるピクセル集合）毎に、ラスタの先頭ピクセルの座標、ラスタのピクセル数（ラスタの長さ）、パラメータ値のＸ方向の増分値およびＹ方向の増分値をそれぞれ算出してＹＤＤＡエンジンＹＤに順次出力する。
【００１７】
ＹＤＤＡエンジンＹＥは、セットアップエンジンＳＥから順次入力されるデータに基づいて、ラスタの先頭ピクセルにおけるパラメータ値を算出する。そして、ＹＤＤＡエンジンＹＥは、算出したラスタの先頭ピクセルにおけるパラメータ値を、ラスタの先頭ピクセルの座標、ピクセル数およびパラメータ値のＸ方向の増分値と共にラスタディスパッチャＲＤに順次出力する。
【００１８】
ラスタディスパッチャＲＤは、ＹＤＤＡエンジンＹＥから順次入力されるデータに基づいて、部分領域毎に、部分領域での先頭ピクセルの座標、先頭ピクセルにおけるパラメータ値およびピクセル数を算出する。そして、ラスタディスパッチャＲＤは、算出した部分領域での先頭ピクセルの座標および先頭ピクセルにおけるパラメータ値およびピクセル数をパラメータ値のＸ方向の増分値と共に、算出した部分領域での先頭ピクセルの座標（描画位置情報）に応じてラスタエンジンＲＥ０〜ＲＥ１５のいずれかに出力する。このように、セットアップエンジンＳＥ、ＹＤＤＡエンジンＹＥ、ラスタディスパッチャＲＤは、順次入力される図形データに基づいて、図形データが示す図形における画像描画領域を構成する複数の部分領域に対応する部分をそれぞれ示す複数の処理単位データを順次生成する図形分割部として機能する。
【００１９】
ラスタエンジンＲＥｎ（ＲＥ０〜ＲＥ１５）は、ラスタディスパッチャＲＤから順次入力されるデータに基づいて、Ｘ方向順に、部分領域内の各ピクセルにおけるパラメータ値を算出して描画処理（ピクセルデータ生成）を実施する。ラスタエンジンＲＥｎは、メモリバスＭＢを介してメモリディスパッチャＭＤに接続されており、メモリディスパッチャＭＤとの間でデータの授受が可能である。メモリディスパッチャＭＤは、ラスタエンジンＲＥ０〜ＲＥ１５からのアクセス要求を調停して受け付け、受け付けたアクセス要求に対応する表示用メモリ装置ＤＭＤへのアクセスを実施する。ここで、表示用メモリ装置ＤＭＤは、カーナビゲーションシステムＳＹＳの表示装置（図示せず）に表示される画像データを格納するメモリ装置である。
【００２０】
図３は、第１実施形態のラスタエンジンＲＥｎ（ＲＥ０〜ＲＥ１５）の詳細を示している。ラスタエンジンＲＥｎは、例えば、ユーザプログラムに従って命令を実行するプロセッサで構成され、ラスタコアＲＣ（処理回路）、ワークメモリＷＭ（記憶回路）、タグ保持回路ＴＨ（位置情報保持回路）、メモリアクセス制御回路ＭＡＣ（処理回路）を有している。
【００２１】
ラスタコアＲＣは、ラスタディスパッチャＲＤからのデータを格納するＦＩＦＯメモリＦＭ（処理結果データ保持回路）を有し、ＦＩＦＯメモリＦＭへの格納順にデータを読み出して描画処理を実施する。ワークメモリＷＭは、ラスタコアＲＣによる描画処理の実施毎に、処理結果データを格納する。タグ保持回路ＴＨは、ラスタディスパッチャＲＤからのデータに含まれる部分領域での先頭ピクセルの座標データ（実際には、座標データの一部）をタグデータとして保持するための回路であり、描画処理の実施毎にラスタコアＲＣによりデータが書き込まれる。
【００２２】
メモリアクセス制御回路ＭＡＣは、ラスタコアＲＣによりワークメモリＷＭから表示用メモリ装置ＤＭＤへのデータ転送が指示されると、メモリディスパッチャＭＤにライトアクセス要求を出力し、メモリディスパッチャＭＤからアクセス許可通知を受けるとメモリバスＭＢおよびメモリディスパッチャＭＤを介してワークメモリＷＭに格納されている処理結果データを表示用メモリ装置ＤＭＤに格納する。また、メモリアクセス制御回路ＭＡＣは、ラスタコアＲＣにより表示用メモリ装置ＤＭＤからワークメモリＷＭへのデータ転送が指示されると、メモリディスパッチャＭＤにリードアクセス要求を出力し、メモリディスパッチャＭＤからアクセス許可通知を受けるとメモリバスＭＢおよびメモリディスパッチャＭＤを介して表示用メモリ装置ＤＭＤに格納されている所望の処理結果データをワークメモリＷＭに格納する。なお、ラスタコアＲＣは、メモリアクセス制御回路ＭＡＣを起動するための命令を認識したときに、描画モードに応じて表示用メモリ装置ＤＭＤへのアクセスを指示する。例えば、ラスタコアＲＣは、ユーザにより設定された描画モードが深度比較処理（Ｚ値比較処理）を実施する描画モードである場合にのみ、メモリアクセス制御回路ＭＡＣに表示用メモリ装置ＤＭＤへのアクセスを指示する。このため、描画モードのユーザ設定を変更するだけで、同一のプログラムを複数の描画モードに共通して使用できる。
【００２３】
図４は、第１実施形態のラスタコアＲＣによるデータ処理を示している。
ステップＳ１０において、ラスタコアＲＣは、ラスタディスパッチャＲＤからデータを受けるとＦＩＦＯメモリＦＭに格納し、以前のデータを用いた描画処理を実施している場合、その描画処理が終了するまで、次の描画処理に用いるデータのＦＩＦＯメモリＦＭからの読み出しを待ち合わせる。以前のデータを用いた描画処理が終了すると、処理はステップＳ２０に移行する。
【００２４】
ステップＳ２０において、ラスタコアＲＣは、ＦＩＦＯメモリＦＭから最も以前に格納されたデータを読み出し、そのデータに含まれる先頭ピクセルの座標データとタグ保持回路ＴＨが保持しているタグデータ（すなわち、前回の描画処理に用いられたデータに含まれる先頭ピクセルの座標データ）とが一致する否かを判定する。双方が一致すると判定された場合、処理はステップＳ６０に移行し、双方が一致しないと判定された場合、処理はステップＳ３０に移行する。
【００２５】
ステップＳ３０において、ラスタコアＲＣは、メモリアクセス制御回路ＭＡＣに表示用メモリ装置ＤＭＤへのライトアクセス（ワークメモリＷＭから表示用メモリ装置ＤＭＤへのデータ転送）を指示する。これにより、ワークメモリＷＭに格納されている前回の描画処理により得られた処理結果データが表示用メモリ装置ＤＭＤに格納される。この後、処理はステップＳ４０に移行する。
【００２６】
ステップＳ４０において、ラスタコアＲＣは、描画モードに基づいて、表示用メモリ装置ＤＭＤへのリードアクセス（表示用メモリ装置ＤＭＤからワークメモリＷＭへのデータ転送）が必要であるか否かを判定する。例えば、現在の描画モードが深度比較処理を実施する描画モードであり、表示用メモリ装置ＤＭＤへのリードアクセスが必要であると判定された場合、処理はステップＳ５０に移行する。表示用メモリ装置ＤＭＤへのリードアクセスが必要ではないと判定された場合、処理はステップＳ６０に移行する。
【００２７】
ステップＳ５０において、ラスタコアＲＣは、メモリアクセス制御回路ＭＡＣに表示用メモリ装置ＤＭＤへのリードアクセスを指示する。これにより、表示用メモリ装置ＤＭＤに格納されている所望の処理結果データがワークメモリＷＭに格納される。この後、処理はステップＳ６０に移行する。
ステップＳ６０において、ラスタコアＲＣは、ＦＩＦＯメモリＦＭから読み出したデータとワークメモリＷＭから読み出したデータとを用いて描画処理を実施し、描画処理により得られた処理結果データをワークメモリＷＭに格納する。
【００２８】
図５は、第１実施形態のラスタディスパッチャＲＤにおけるデータ送出先の特定方法を示している。ラスタディスパッチャＲＤは、部分領域での先頭ピクセルの座標データＹ［１１：０］、Ｘ［１１：０］におけるビットＸ［７：４］のビット値に基づいて、データ送出先を特定する。具体的には、ビットＸ［７：４］のビット値が示す１０進数がａであるとき、ラスタコアＲＥａにデータが送出される。従って、グラフィックス描画領域の同一列の部分領域については、同一のラスタエンジンが描画処理を担当する。なお、ラスタエンジンＲＥｎにおけるタグ保持回路ＴＨに保持されるタグデータは、ビットＹ［１１：０］、Ｘ［１１：８］のビット値である。
【００２９】
図６は、第１実施形態におけるグラフィックス描画の概要を示している。前述のような構成のグラフィック描画装置ＧＤＤでは、三角形Ａ（図の左側の三角形）の描画処理をラスタエンジンＲＥ１５、ＲＥ０〜ＲＥ２が並列して実施しているときに、三角形Ｂ（図の右側の三角形）における三角形Ａとは重ならない部分の描画処理をラスタエンジンＲＥ３、ＲＥ４も並列して実施される。このため、グラフィックス描画性能が向上する。
【００３０】
図７は、本発明との比較例を示している。本発明の比較例を説明するにあたって、第１実施形態で説明した要素と同一の要素については、同一の符号を付し、詳細な説明を省略する。グラフィックス描画装置ＧＤＤｚは、カーナビゲーションシステムＳＹＳｚにＣＰＵ装置ＣＤや表示用メモリ装置ＤＭＤ等と共に搭載され、セットアップエンジンＳＥ、ＹＤＤＡエンジンＹＥ、ＸＤＤＡエンジンＸＥ、ピクセルエンジンＰＥ、メモリディスコントローラＭＣを有している。グラフィックス描画装置ＧＤＤｚは、パイプライン処理方式を採用している。
【００３１】
ＸＤＤＡエンジンＸＥは、ＹＤＤＡエンジンＹＥから順次入力されるデータに基づいて、Ｘ方向順に、各ピクセルの座標およびパラメータ値を算出してピクセルエンジンＰＥ順次に出力する。ピクセルエンジンＰＥは、ＸＤＤＡエンジンＸＥから順次入力されるデータを用いて描画処理を実施する。メモリディスコントローラＭＣは、ピクセルエンジンＰＥからのアクセス要求を受けたときに、アクセス要求に対応する表示用メモリ装置ＤＭＤへのアクセスを実施する。
【００３２】
このような構成のグラフィックス描画装置ＧＤＤｚでは、例えば、第１実施形態の三角形Ａの描画処理が完了する前に、三角形Ｂの描画処理が開始されると、三角形Ｂにおける三角形Ａとの重複部分の描画処理が誤った処理結果を用いて実施されてしまう。このため、三角形Ａの描画処理が完了するまで、三角形Ｂの描画処理の実施を待ち合わせる必要がある。この結果、互いに重なる図形の数が多いほど、グラフィックス描画速度が低下してしまう。
【００３３】
以上、第１実施形態では、互いに重なる複数の図形について、各図形における他の図形とは重複しない部分の描画処理を並列に実施でき、グラフィックス描画性能の向上に大きく寄与できる。また、今回の描画処理に用いるデータに含まれる座標データとタグ保持回路ＨＣが保持しているタグデータとが一致する場合には、ラスタエンジンＲＥｎによる表示用メモリ装置ＤＭＤへのアクセスが発生しないため、グラフィックス描画速度をさらに向上できる。
【００３４】
図８は、本発明の第２実施形態を示している。第２実施形態を説明するにあたって、第１実施形態で説明した要素と同一の要素については、同一の符号を付し、詳細な説明を省略する。第２実施形態のグラフィックス描画装置は、ラスタディスパッチャを除いて第１実施形態のグラフィックス描画装置と同一である。第２実施形態のラスタディスパッチャは、部分領域での先頭ピクセルの座標データＹ［１１：０］、Ｙ［１１：０］におけるビットＹ［３：０］およびビットＸ［４］のビット値に基づいて、データ送出先を特定する。具体的には、ビットＸ［４］のビット値が”０”であるときに、ビットＹ［３：０］のビット値が示す１０進数がａであるとき、ラスタコアＲＥａにデータが送出される。ビットＸ［４］のビット値が”１”であるときに、ビットＹ［３：０］のビット値の反転値が示す１０進数がｂであるとき、ラスタコアＲＥｂに出力データが送出される。従って、グラフィックス描画領域の互いに隣接する２列の部分領域について、一方の列の部分領域に対する描画処理をラスタエンジンＲＥｎが昇順で担当し、他方の列の部分領域に対する描画処理をラスタエンジンＲＥｎが降順で担当する。なお、ラスタエンジンＲＥｎにおけるタグ保持回路ＴＨに保持されるタグデータは、ビットＹ［１１：４］、Ｘ［１１：４］のビット値である。
【００３５】
図９および図１０は、第２実施形態におけるグラフィックス描画の概要を示している。一般に、描画処理は、図の左上から右下へ向かう順序で実施されるため、前述のような構成の第２実施形態のグラフィック描画装置では、各ラスタエンジンＲＥｎでの描画処理の競合が生じ難く、図９に示すように、三角形Ａの描画処理を実施する際に、第１実施形態に比べて多数のラスタエンジンが並列して描画処理を実施する。また、図１０に示すように、３つの三角形が重なる場合にも、各三角形における互いに重ならない部分の描画処理が並列して実施される。以上、第２実施形態でも、第１実施形態と同様の効果が得られる。さらに、ラスタエンジンＲＥｎでの描画処理の競合が生じ難くでき、第１実施形態に比べて多数のラスタエンジンを並列動作させることができ、描画速度をさらに向上できる。
【００３６】
図１１は、本発明の第３実施形態を示している。第３実施形態を説明するにあたって、第１実施形態で説明した要素と同一の要素については、同一の符号を付し、詳細な説明を省略する。第３実施形態のグラフィックス描画装置は、第１実施形態のグラフィックス描画装置ＧＤＤに、４個のピクセルブレンダＰＢおよび４個のピクセルテスタＰＴを加えて構成され、ラスタエンジンＲＥ０〜ＲＥ１５に代えてラスタエンジンＲＥ０ａ〜ＲＥ１５ａを有している。第３実施形態のグラフィックス描画装置のその他の構成は、第１実施形態のグラフィックス描画装置ＧＤＤと同一である。
【００３７】
ラスタエンジンＲＥｎａ（ＲＥ０ａ〜ＲＥ１５ａ）は、第１実施形態のラスタコアＲＣに代えてラスタコアＲＣａを有することを除いて、第１実施形態のラスタエンジンＲＥｎと同一である。ラスタコアＲＣａは、ピクセルブレンダＰＢを起動するための命令、およびピクセルテスタＰＴを起動するための命令を実行可能であることを除いて、第１実施形態のラスタコアＲＣと同一である。ラスタコアＲＣａは、ピクセルブレンダ起動命令の実行時に、アルファブレンド（半透明合成）ありの描画モードである場合、ピクセルブレンダＰＢにアルファブレンド処理の実行を指示する。ラスタコアＲＣａは、アルファブレンドなしの描画モードである場合、ピクセルブレンダＰＢにアルファブレンド処理の実行を指示しない。ラスタコアＲＣａは、ピクセルテスタ起動命令の実行時に、深度比較ありの描画モードである場合、ピクセルテスタＰＴに深度比較処理の実行を指示する。ラスタコアＲＣａは、深度比較なしの描画モードである場合、ピクセルテスタＰＴに深度比較処理の実行を指示しない。
【００３８】
各ピクセルブレンダＰＢは、４個のラスタエンジンに対応して設けられ、対応するラスタエンジンＲＥｎａのラスタコアＲＣａからの指示に応答して、ワークメモリＷＭからピクセルデータを読み出し、例えば所定のアルファ値（半透明率）を用いてアルファブレンド処理を実施し、処理結果のピクセルデータをワークメモリＷＭに書き戻す。各ピクセルテスタＰＴは、４個のラスタエンジンに対応して設けられ、対応するラスタエンジンＲＥｎａのラスタコアＲＣａからの指示に応答して、ワークメモリＷＭからピクセルデータを読み出し、ピクセルデータに含まれるＺ値を用いて、深度比較処理を実施する。処理結果のピクセルデータをワークメモリＷＭに書き戻す。このように、描画処理において多用されるアルファブレンド処理および深度比較処理を専用のハードウェアにより実施することで、描画処理がより高速に実施される。
【００３９】
以上、第３実施形態でも、第１実施形態と同様の効果が得られる。さらに、描画処理で多用される演算処理をラスタエンジンＲＥｎａとは別のハードウェアに実施させることで、高速な描画処理を実現できる。また、ラスタエンジンＲＥｎａは、演算器を起動するか否かを描画モードにより判定するため、異なる描画モードに対して同一のプログラムを適用できる。
【００４０】
なお、第１〜第３実施形態では、三角形の描画処理に本発明を適用した例について述べたが、本発明はかかる実施形態に限定されるものではない。例えば、直線、矩形などのその他の図形の描画処理に本発明を適用してもよい。
第３実施形態では、４個のラスタエンジン毎に共通してピクセルブレンダＰＢおよびピクセルテスタＰＴを設けた例について述べたが、本発明はかかる実施形態に限定されるものではない。例えば、ピクセルブレンダＰＢおよびピクセルテスタＰＴは、描画性能を更に向上させるためにラスタコアに１対１で対応して設けられてもよいし、２個のラスタエンジン毎に共通して設けてもよい。また、ピクセルブレンダＰＢおよびピクセルテスタＰＴは、回路規模を低減するために１６個のラスタエンジンに共通に設けられてもよい。
【００４１】
第１〜第３実施形態では、ラスタエンジンＲＥｎがプロセッサで構成された例について述べたが、本発明はかかる実施形態に限定されるものではない。例えば、描画処理の変更が不要である場合には、ラスタエンジンＲＥｎは、所定の描画処理のみを実施可能な回路で構成されてもよい。
以上の実施形態において説明した発明を整理して、付記として開示する。
（付記１）
順次入力される図形データに基づいて、図形データが示す図形における画像描画領域を構成する複数の部分領域に対応する部分をそれぞれ示す複数の処理単位データを順次生成する図形分割部と、
前記複数の部分領域の少なくともいずれかにそれぞれ対応し、対応する部分領域に対して処理単位データを用いた描画処理を互いに独立してそれぞれ実施する複数の描画処理部と、
前記図形分割部により順次生成される処理単位データに含まれる描画位置情報に基づいて、処理単位データを処理すべき描画処理部を順次特定する処理割当部とを備えていることを特徴とする画像描画装置。
（付記２）
付記１記載の画像描画装置において、
前記各描画処理部は、処理単位データを用いた描画処理の実施中に、少なくとも１つの後続の処理単位データを一時的に保持する処理単位データ保持回路を備えていることを特徴とする画像描画装置。
（付記３）
付記１記載の画像描画装置において、
前記各描画処理部は、ユーザプログラムに応じて命令を実行するプロセッサで構成されていることを特徴とする画像描画装置。
（付記４）
付記３記載の画像描画装置において、
複数の描画モードのうち所定の描画モードに対応する演算処理を実施する演算器を備え、
前記各描画処理部は、前記演算器を起動するための命令を認識したときに、描画モードに応じて前記演算器に演算処理の実施を指示することを特徴とする画像描画装置。
（付記５）
付記４記載の画像描画装置において、
前記演算器は、前記演算処理として半透明合成処理を実施することを特徴とする画像描画装置。
（付記６）
付記４記載の画像描画装置において、
前記演算器は、前記演算処理として深度比較処理を実施することを特徴とする画像描画装置。
（付記７）
付記１記載の画像描画装置において、
前記処理割当部は、複数の図形の重なりを持たない部分領域に対応する処理単位データを処理する複数の描画処理部を並行して処理させることを特徴とする画像描画装置。
（付記８）
付記１記載の画像描画装置において、
前記処理割当部は、複数の図形の重なりを持つ部分領域に対応する処理単位データを処理する複数の描画処理部を並行して処理させないことを特徴とする画像描画装置。
（付記９）
付記１記載の画像描画装置において、
前記各描画処理部は、
描画処理の実施毎に、描画処理に用いられた処理単位データに含まれる描画位置情報を保持する位置情報保持回路と、
描画処理の実施毎に、描画処理により得られた処理結果データを格納する記憶回路と、
今回の描画処理を実施するために以前の描画処理により得られた処理結果データが必要であるときに、今回の描画処理に用いる処理単位データに含まれる描画位置情報と前記位置情報保持回路が保持している描画位置情報とについて、双方が一致する場合、前記記憶回路に格納されている前回の描画処理により得られた処理結果データを用いて描画処理を実施し、双方が一致しない場合、前記記憶回路に格納されている前回の描画処理により得られた処理結果データを外部記憶回路に格納した後に、前記外部記憶回路から所望の処理結果データを取得し、取得した処理結果データを用いて描画処理を実施する処理回路とを備えていることを特徴とする画像描画装置。
（付記１０）
付記１記載の画像描画装置において、
前記画像描画領域の同一列の部分領域に対応する描画処理部は同一であることを特徴とする画像描画装置。
（付記１１）
付記１記載の画像描画装置において、
前記画像描画領域の互いに隣接する２つの部分領域に対応する描画処理部は互いに異なることを特徴とする画像描画装置。
（付記１２）
付記１１記載の画像描画装置において、
前記複数の描画処理部は、前記画像描画領域の互いに隣接する２列の部分領域について、一方の列の部分領域に所定順序で対応し、他方の列の部分領域に前記所定順序とは逆の順序で対応することを特徴とする画像描画装置。
（付記１３）
順次入力される図形データに基づいて、図形データが示す図形における画像描画領域を構成する複数の部分領域に対応する部分をそれぞれ示す複数の処理単位データを順次生成し、
順次生成される処理単位データに含まれる描画位置情報に基づいて、前記複数の部分領域の少なくともいずれかにそれぞれ対応する複数の描画処理部の中から、処理単位データを送出すべき描画処理部を順次特定し、
順次特定される描画処理部により、対応する部分領域に対して処理単位データを用いた描画処理を互いに独立してそれぞれ実施することを特徴とする画像描画方法。
（付記１４）
付記１３記載の画像描画方法において、
前記各描画処理部は、処理単位データを用いた描画処理の実施中に、少なくとも１つの後続の処理単位データを一時的に保持することを特徴とする画像描画方法。
（付記１５）
付記１３記載の画像描画方法において、
前記各描画処理部は、ユーザプログラムに応じて命令を実行することを特徴とする画像描画方法。
（付記１６）
付記１５記載の画像描画方法において、
前記各描画処理部は、複数の描画モードのうち所定の描画モードに対応する演算処理を実施する演算器を起動するための命令を認識したときに、描画モードに応じて前記演算器に演算処理の実施を指示することを特徴とする画像描画方法。
（付記１７）
付記１６記載の画像描画方法において、
前記演算器は、前記演算処理として半透明合成処理を実施することを特徴とする画像描画方法。
（付記１８）
付記１６記載の画像描画方法において、
前記演算器は、前記演算処理として深度比較処理を実施することを特徴とする画像描画方法。
（付記１９）
付記１３記載の画像描画方法において、
前記各描画処理部は、
描画処理の実施毎に、描画処理に用いられた処理単位データに含まれる描画位置情報を保持し、
描画処理の実施毎に、描画処理により得られた処理結果データを記憶し、
今回の描画処理を実施するために以前の描画処理により得られた処理結果データが必要であるときに、今回の描画処理に用いる処理単位データに含まれる描画位置情報と保持している描画位置情報とについて、双方が一致する場合、記憶している前回の描画処理により得られた処理結果データを用いて描画処理を実施し、双方が一致しない場合、記憶している前回の描画処理により得られた処理結果データを外部記憶回路に格納した後に、前記外部記憶回路から所望の処理結果データを取得し、取得した処理結果データを用いて描画処理を実施することを特徴とする画像描画方法。
（付記２０）
付記１３記載の画像描画方法において、
前記画像描画領域の同一列の部分領域に対して、同一の描画処理部を対応させることを特徴とする画像描画方法。
（付記２１）
付記１３記載の画像描画方法において、
前記画像描画領域の互いに隣接する２つの部分領域に対して、互いに異なる描画処理部を対応させることを特徴とする画像描画方法。
（付記２２）
付記２１記載の画像描画方法において、
前記画像描画領域の互いに隣接する２列の部分領域について、一方の列の部分領域に対して前記複数の描画処理部を所定順序で対応させ、他方の列の部分領域に対して前記複数の描画処理部を前記所定順序とは逆の順序で対応させることを特徴とする画像描画方法。
【００４２】
以上、本発明について詳細に説明してきたが、前述の実施形態およびその変形例は発明の一例に過ぎず、本発明はこれらに限定されるものではない。本発明を逸脱しない範囲で変形可能であることは明らかである。
【図面の簡単な説明】
【００４３】
【図１】本発明の原理ブロック図である。
【図２】本発明の第１実施形態を示すブロック図である。
【図３】第１実施形態のラスタエンジンの詳細を示すブロック図である。
【図４】第１実施形態のラスタコアＲＣによるデータ処理を示すフローチャートである。
【図５】第１実施形態のラスタディスパッチャにおけるデータ出力先の特定方法を示す説明図である。
【図６】第１実施形態におけるグラフィックス描画の概要を示す説明図である。
【図７】本発明の比較例を示すブロック図である。
【図８】本発明の第２実施形態を示す説明図である。
【図９】第２実施形態におけるグラフィックス描画の概要を示す説明図である。
【図１０】第２実施形態におけるグラフィックス描画の概要を示す説明図である。
【図１１】本発明の第３実施形態を示すブロック図である。
【符号の説明】
【００４４】
１  画像描画装置
２  図形分割部
４  処理割当部
６  描画処理部
ＣＤ  ＣＰＵ装置
ＤＭＤ  表示用メモリ装置
ＦＭ  ＦＩＦＯメモリ
ＧＤＤ  グラフィックス描画装置
ＭＡＣ  メモリアクセス制御回路
ＭＤ  メモリディスパッチャ
ＲＣ、ＲＣａ  ラスタコア
ＲＤ  ラスタディスパッチャ
ＲＥ０〜ＲＥ１５、ＲＥ０ａ〜ＲＥ１５ａ  ラスタエンジン
ＳＥ  セットアップエンジン
ＳＹＳ  カーナビゲーションシステム
ＴＨ  タグ保持回路
ＷＭ  ワークメモリ
ＹＥ  ＹＤＤＡエンジン
【図１】
2006202211.tif 000003
【図２】
2006202211.tif 000004
【図３】
2006202211.tif 000005
【図４】
2006202211.tif 000006
【図５】
2006202211.tif 000007
【図６】
2006202211.tif 000008
【図７】
2006202211.tif 000009
【図８】
2006202211.tif 000010
【図９】
2006202211.tif 000011
【図１０】
2006202211.tif 000012
【図１１】
2006202211.tif 000013