JP2003108989A - 画像処理プロセッサ及び情報処理システム - Google Patents

画像処理プロセッサ及び情報処理システム

Info

Publication number
JP2003108989A
JP2003108989A JP2001295108A JP2001295108A JP2003108989A JP 2003108989 A JP2003108989 A JP 2003108989A JP 2001295108 A JP2001295108 A JP 2001295108A JP 2001295108 A JP2001295108 A JP 2001295108A JP 2003108989 A JP2003108989 A JP 2003108989A
Authority
JP
Japan
Prior art keywords
processing
image
data
processor
image processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2001295108A
Other languages
English (en)
Inventor
Nobuhiro Kondo
伸宏 近藤
Seiichiro Saito
誠一郎 齋藤
Kazuhiro Hida
和浩 檜田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2001295108A priority Critical patent/JP2003108989A/ja
Publication of JP2003108989A publication Critical patent/JP2003108989A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 多様な画像処理の可能な画像処理プロセッサ
を提供すること。 【解決手段】 メモリ読み出し装置113は、指定され
たアドレスに対するデータを、メモリ111,連想記憶
装置112から取り出す機能を持つ。演算器114は、
与えられた命令に従って、メモリ読み出し装置113か
らのデータ読み出しや、読み出したデータに対する加工
処理、アドレスの生成などの演算処理を行う。その際、
演算器114の処理結果は、演算器114自身に入力す
ることができる。また、演算器114の処理結果を、ア
ドレスとしてメモリ読み出し装置113に与えることも
できる。この結果、演算器114に、所望の画像処理に
対応する演算命令を与えることによって、当該所望の画
像処理を実行させることが可能になる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、所定の画像処理を
行う機能を有する画像処理プロセッサ、及び該画像処理
プロセッサとマイクロプロセッサとを備えた情報処理シ
ステムに関する。
【0002】
【従来の技術】一般にリアルタイムコンピュータグラフ
ィックの技術分野では、専用の画像処理プロセッサ(L
SI)を用いて画像の表示の高速化を行ってきた。すな
わち、もともとはソフトウェアによりCPU(マイクロ
プロセッサ)で行われていた画像処理をハードウェア化
して1つ(あるいは複数)のLSIで行うようにし、C
PUの負荷を軽減することで全体としてのパフォーマン
スを向上させてきた。
【0003】例えば、ポリゴンベースの3Dグラフィッ
クス処理を例にとると、オブジェクトはポリゴンと呼ば
れる多角形(主に三角形)から構成され、ポリゴンデー
タの生成、透視変換、光源処理、テクスチャマッピン
グ、ブレンド処理、フラグメント処理といった一連の定
型処理を行うハードウェアを通過して、最終的にピクセ
ルと呼ばれる画面上の色データに変換され画面に表示さ
れる。なお、それらの一部分の処理(例えば、透視変
換、光源処理、フラグメント処理)は、CPUで(ソフ
トウェアによって)行われることもある。
【0004】ポリゴンデータの生成はアプリケーション
と密接に結びついているため、通常はアプリケーション
が走るCPUで行われる。例えば、ゲームプログラムな
どでは、オブジェクトの形や位置がプレーヤの意思に従
って変化するため、CPUで処理するのが普通である。
【0005】
【発明が解決しようとする課題】上述したように、従来
の画像処理プロセッサは、定型処理をハードウェア化し
ただけなので、ポリゴンデータはCPUで生成され、バ
スを通じて画像処理プロセッサへ転送されて、定型処理
が行われるだけであった。
【0006】例えば、従来の画像処理プロセッサにおい
て、テクスチャメモリへのアクセス部では、入力された
アドレスに対するデータを、テクスチャメモリおよびカ
ラー・ルックアップ・テーブル(CLUT)から読み出
し、そのデータを加工することなしにブレンド処理の過
程に出力する。あるいは、高々ワンパスの定型処理(加
工処理)をしてブレンド処理の過程に出力するだけであ
る。従って、予め定められていない所望の加工処理をそ
の時々に応じて施すようなことはできなかった。
【0007】また、近年の画像処理技術の向上により、
リアルタイムに生成される画像において、様々な効果を
引き出すために画像データの加工技術の多様化が進んで
きた。さらに、画像処理プロセッサ内に多数配置されて
いる画像処理パイプラインの多目的化の要求も出現して
きた。このような状況下で、従来の画像処理プロセッサ
では、プロセッサ内で画像データを加工できる位置や加
工内容が固定であり、また画像処理パイプラインの目的
も定型処理に限定されており、画像処理技術の多様化に
対応することが困難になっている。
【0008】本発明は、上記事情を考慮してなされたも
ので、多様な画像処理を柔軟に行うことができるように
した画像処理プロセッサ及び情報処理システムを提供す
ることを目的とする。
【0009】
【課題を解決するための手段】本発明は、外部からデー
タを受け取って所定の画像処理を行う機能を有する画像
処理プロセッサであって、外部から命令及びデータを入
力し、処理データを出力する入出力インタフェースと、
入力された命令及びデータに基づいて所定の画像処理を
行う機能を有する少なくとも一つの汎用処理ユニットと
を備え、前記汎用処理ユニットは、所定のメモリから指
定アドレスに対するデータを読み出す機能を有するメモ
リ読み出し装置と、前記メモリ読み出し装置からのメモ
リ読み出しを含む所定の命令群のうちから指定された命
令を実行する演算器と、前記演算器の実行により得られ
た処理データを入力データとして前記演算器に入力する
ためのパスと、前記演算器の実行により得られた処理デ
ータをアドレスとして前記メモリ読み出し装置に入力す
るためのパスとの少なくとも一方を含む回路とを含むこ
とを特徴とする。
【0010】本発明において、メモリ読み出し装置3
は、指定されたアドレスに対するデータを、所定のメモ
リから取り出す機能を持つ。演算器は、与えられた命令
に従って、例えば、メモリ読み出し装置からのデータ読
み出しや、読み出したデータに対する加工処理、アドレ
スの生成などの演算処理を行う。その際、演算器の処理
結果を演算器自身に入力すること、およびまたは演算器
の処理結果をアドレスとしてメモリ読み出し装置に与え
ることができる。
【0011】本発明によれば、汎用処理ユニットに、所
望の画像処理に対応する演算命令を与えることによっ
て、当該所望の画像処理を実行させることが可能にな
る。また、1つの汎用処理ユニットで、画像処理全体に
おける任意の部分の処理を、任意の内容で実現すること
ができる。
【0012】好ましくは、前記回路は、データの流れを
制御する機能を持ち、その動作の入力を上流から行うパ
スを含むようにしてもよい。データの流れを制御する装
置の動作の入力を上流から行うパスは、データと演算器
の制御を同一の経路から入力するのに用いることがで
き、これによって、画像処理に特有のデータストリーム
毎の演算器制御において、データと制御の関連付けを容
易に行うことができるようになる。
【0013】また、好ましくは、前記回路は、データの
流れを制御する機能を持ち、その動作の入力を下流から
行うパスを含むようにしてもよい。
【0014】また、好ましくは、前記汎用処理ユニット
は、前記演算器の実行により得られた処理データを保持
可能な一時記憶領域を更に含むようにしてもよい。この
演算器での演算結果を書き込み可能な一時記憶領域は、
演算器を用いて演算した結果を別の機会に再び演算器を
用いた演算に使用できるようにするための装置であり、
この記憶領域を用いることにより、複数回演算器を使用
する演算を高速に行うことができるようになり、多様な
効果をリアルタイム画像処理に使用できるようになる。
【0015】また、好ましくは、複数の処理をパイプラ
イン的に処理する処理部を備え、前記処理部は、少なく
とも一つの前記汎用処理ユニットを有するようにしても
よい。これによって、多様な画像処理パイプラインを実
現することができる。
【0016】また、本発明に係る情報処理システムは、
本発明の画像処理プロセッサと、該画像処理プロセッサ
を利用するマイクロプロセッサとを備えたことを特徴と
する。
【0017】
【発明の実施の形態】以下、図面を参照しながら発明の
実施の形態を説明する。
【0018】図1に、本実施形態に係る画像処理プロセ
ッサの一構成例およびこれを用いた情報処理システム
(例えば、ゲーム機)の要部の一構成例を示す。
【0019】図1に示されるように、本情報処理システ
ムは、画像処理プロセッサ10、CPU20、メインメ
モリ30、メモリコントローラ50、入出力インタフェ
ース(I/O)40、システムバス60を備えている。
なお、本情報処理システムは、必要に応じて、その他の
種々の装置等を備える。
【0020】本実施形態の画像処理プロセッサ10は、
詳しくは後述するように、適宜、演算命令を与えること
によって、所望の画像処理を実行させることの可能な汎
用処理ユニット11を持っている。画像処理プロセッサ
10内に設けられる汎用処理ユニット11は、1つでも
よいし、複数であってもよい。また、画像処理プロセッ
サ10は、特定の画像処理を行う1又は複数の専用処理
ユニット12を持っていてもよい。また、画像処理プロ
セッサ10は、図示しない入出力インタフェース(I/
O)を持つ。また、画像処理プロセッサ10は、必要に
応じて、その他の種々のユニット等を備える。画像処理
プロセッサ10は、CPU20によって利用されること
になる。
【0021】なお、画像処理プロセッサ10で、1つの
汎用処理ユニット11と1又は複数の専用処理ユニット
12とで、あるいは複数の汎用処理ユニット11と1又
は複数の専用処理ユニット12とで、あるいは複数の汎
用処理ユニット11で、パイプライン処理を実現するこ
ともかのうである。
【0022】また、画像処理プロセッサ10で所定の画
像処理の全部または一部を並列処理させるために、並列
処理に対応する部分について、汎用処理ユニット11
(あるいは汎用処理ユニット11および専用処理ユニッ
ト12)を複数系統備えてもよい。その際に、各系列で
行う処理の全部または一部がパイプライン処理であって
もよい。
【0023】CPU20は、当該CPU用に作成された
アプリケーション(例えば、本情報処理システムがゲー
ム機である場合のゲームソフト)を実行するものであ
り、その際に、必要に応じて、画像処理プロセッサ10
に処理を行わせる。すなわち、本情報処理システムがな
すべき画像処理の部分に関しては、CPU20と画像処
理プロセッサ10とが協働して(あるいは処理を分担し
て)画像処理を行うことになる(なお、全画像処理を画
像処理プロセッサ10に行われることも可能である)。
【0024】ここで、図1では、システム・バス60
に、CPU20、画像処理プロセッサ10、メモリ・コ
ントローラ50等が接続された形態になっている。ま
た、メインメモリ30や入出力インタフェース40は、
メモリコントローラ50に接続される形態になる。オペ
レーティングシステム(OS)については、外部から入
出力インタフェース40を介してメインメモリ30読み
込む形態や、OSを書き込んだROMをメモリコントロ
ーラ50に接続する形態などが可能である。本発明は、
他のアーキテクチャーを持つ情報処理システムにも適用
可能である。
【0025】図1の情報処理システムの起動手順は、例
えば、次のようになる。まず、例えば、情報処理システ
ムの電源が投入され、あるいはリセットスイッチが押さ
れるなどによって、初期化シーケンスが開始される。初
期化シーケンスが開始されると、まず、メモリコントロ
ーラ50を初期化する。ここでの初期化とは、ハードウ
ェア的に初期化するリセットのことである。これと前後
して、画像処理プロセッサ10をハードウェア的に初期
化する。次に、CPU20を初期化する。ここでの初期
化とは、ハードウェア的に初期化するリセットのことで
ある。次に、OSを起動する。OSは、ソフトウェア的
に画像処理プロセッサ10や各周辺機器を初期化する。
すなわち、まず、OSは、割り込みベクタを初期化す
る。次に、周辺機器を初期化する。次に、メディアがあ
るかどうか調べ、メディアがあれば、アプリケーション
の読み出しを行う。次に、アプリケーションを、CPU
20で実行する。
【0026】さて、以下では、本実施形態の画像処理プ
ロセッサが備える汎用処理ユニット11について詳しく
説明する。
【0027】図2に、本汎用処理ユニット11の内部構
成例を示す。
【0028】図2において、111はメモリであり、メ
インメモリ30から転送したデータを保持する部分であ
る。メモリ111は、例えば、テクスチャデータやポリ
ゴンデータなど種々のデータを記憶するためにのメモリ
として利用することができる。また、演算命令を記憶す
るために利用することができる。なお、メモリ111
は、画像処理プロセッサ内に設けたメモリインタフェー
スを介して画像処理プロセッサに外付けする方法も可能
である。
【0029】112は連想記憶装置であり、タグ付けさ
れたデータを保持する部分である。連想記憶装置112
は、例えば、該汎用処理ユニット11をテクスチャデー
タに関する処理のために用いる場合であって、扱うテク
スチャデータがカラー・ルックアップ・テーブルを必要
とするフォーマットである場合に、当該カラー・ルック
アップ・テーブルとして利用することができる。なお、
連想記憶装置112は、画像処理プロセッサ内に設けた
メモリインタフェースを介して画像処理プロセッサに外
付けする方法も可能である。また、連想記憶装置112
を備えない構成も可能である(この場合、例えば、連想
記憶装置112を必要としないデータを扱うことを前提
とするかまたは連想記憶装置112を必要とするデータ
についてはCPU20で処理することになる)。
【0030】113はメモリ読み出し装置であり、指定
されたアドレスに対するデータを、記憶装置111,1
12から取り出す部分である。
【0031】114は演算器であり、メモリ読み出し装
置113からの出力を利用するなどして演算を行う部分
である。
【0032】115は制御装置であり、演算器114の
動作、データフローを制御するためのものである。
【0033】1201は、当該画像処理プロセッサ10
において、このブロック(汎用処理ユニット11)の上
流からの入力である。1202は、当該画像処理プロセ
ッサ10において、このブロック(汎用処理ユニット1
1)の下流への出力である。上流や下流は、画像処理全
体を構成する個々の処理をCPU20と画像処理プロセ
ッサ10のいずれにおいて行うかおよび汎用処理ユニッ
ト11にどの処理を行われるかによって、相違してく
る。例えば、CPU20であることも、当該画像処理プ
ロセッサ10内の専用処理ユニット12であることも、
汎用処理ユニット11自身(または他の汎用処理ユニッ
ト11)であることもある。
【0034】1101は、メモリ読み出し装置113で
読み出したデータを演算器114に入力するパスであ
り、アクセスしたデータ(例えば、テクスチャデータ、
ポリゴンデータ)を用いての演算を可能とする。
【0035】1102は、演算器114が演算を実行し
て得られた結果を再び演算器114の入力に戻す(すな
わち、入力として演算器114自身に与える)パスであ
り、演算器114を複数回使用することを可能にする。
【0036】1103は、演算器114が演算を実行し
て得られた結果をアドレスとしてメモリ読み出し装置1
13へ与えるパスであり、演算結果をアドレスとするデ
ータへのアクセスを可能にする。
【0037】なお、汎用処理ユニット11への入力デー
タや演算命令は、例えば、上流側から直接渡す方法(図
中、1201)や、メモリ111等に書き込んで受け渡
しする方法などが可能である。また、汎用処理ユニット
11からの出力データも、下流側に直接渡す方法(図
中、1202)や、メモリ111等に書き込んで受け渡
しする方法などがある。
【0038】図3に、本画像処理プロセッサの汎用処理
ユニット11の内部構成の他の例を示す。本構成例は、
基本的には、図2と同様の機能を持つものであるが、図
2では、制御装置115が下流側にあるのに対して、図
3では、制御装置116が、上流側にある点が異なって
いる。すなわち、本構成例では、汎用処理ユニット11
の動作の入力を上流から行うことができる構成をとって
いる。図3において、1104は演算器114からの出
力を制御装置に入力するパスで、演算結果を再び演算器
114への入力としたり、演算結果をアドレスとして再
びメモリ111へのアクセスを可能としたりなどするの
に利用される。
【0039】このデータの流れを制御する装置の動作の
入力を上流から行うパスは、データと演算器の制御を同
一の経路から入力するのに用いることができ、これによ
って、画像処理に特有のデータストリーム毎の演算器制
御において、データと制御の関連付けを容易に行うこと
ができるようになる。
【0040】図4に、本画像処理プロセッサの汎用処理
ユニット11の内部構成のさらに他の例を示す。本構成
例は、図2の構成例に対して、制御装置115と演算器
14の間に一時記憶装置17を設けたものである。一時
記憶装置17は、演算器114からの出力を保持するた
めに用いる。図4において、105は一時記憶装置11
7への入力パスで、演算器114からの出力を一時記憶
装置117に入力することを可能にする。図2の構成例
では、演算器114からの出力はただちに演算器114
へ入力されるが、図4の構成例では、任意のタイミング
で演算器114からの出力を演算器114へ入力させる
ことができる(演算器114は、所望のタイミングで、
一時記憶装置117に保持されている所望のデータにア
クセスすることができる)。
【0041】なお、同様に、図3の構成例に対して、制
御装置116と演算器14との間に一時記憶装置を設け
る構成も可能である。
【0042】なお、図2〜図4において、演算器の演算
結果を再び演算器の入力に戻すパスと、演算器の演算結
果をアドレスとしてメモリ読み出し装置へ与えるパスと
のいずれか一方のみ備えた汎用処理ユニット11も構成
可能である。
【0043】以下では、CPU20と画像処理プロセッ
サ10によって実現される画像処理全体において、画像
処理プロセッサ10内の汎用処理ユニット11がどのよ
うにして利用できるかについて説明する。
【0044】図5に、CPU20と画像処理プロセッサ
10によって実現される画像処理全体の概略構成例を示
す。
【0045】透視変換/光源処理部1では、透視変換と
光源処理を行う。
【0046】セットアップ/DDA(digital different
ial analysis)処理部2では、画像処理において、透視
変換/光源処理部1によって決定された視点方向から
の、点や線、多角形、ポリゴンデータの形状を算出し、
そのピクセル情報を得る処理を行う。
【0047】テクスチャアドレス生成部3では、ピクセ
ル情報からアクセスするテクスチャデータのアドレスを
生成する処理を行う。
【0048】テクスチャデータ処理部4では、テクスチ
ャメモリに格納されたテクスチャデータを用いて各ピク
セルに対応するテクスチャの色データを求める処理を行
う。
【0049】ブレンド処理部5では、1ピクセルに対応
する複数の色データを混ぜる処理を行う。
【0050】フラグメント処理部6では、各種編集処理
を行い最終的な描画色を求める処理を行う。
【0051】なお、透視変換/光源処理部1が処理する
もととなるデータは、例えば、CPU20によって与え
られる。また、フラグメント処理部6により得られた最
終的な画像データは、例えば、図示しないフレームメモ
リに保持される。
【0052】ここで、上記の画像処理を、実際にCPU
20と画像処理プロセッサ10を用いてどのように構成
するかについては、種々のバリエーションがある。
【0053】例えば、透視変換/光源処理部1とセット
アップ/DDA処理部2とフラグメント処理部6をCP
U20で実現し(すなわち、ソフトウェアによって処理
を行い)、テクスチャアドレス生成部3とテクスチャデ
ータ処理部4とブレンド処理部5を画像処理プロセッサ
10で実現する構成がある(図5の201が、画像処理
プロセッサ10で実現する範囲を示している)。また、
例えば、上記において、フラグメント処理部6は画像処
理プロセッサ10で実現する構成(図5の202参照)
や、セットアップ/DDA処理部2とフラグメント処理
部6は画像処理プロセッサ10で実現する構成(図5の
203参照)もある。また、例えば、図5の201、2
02または203において、さらに、透視変換/光源処
理部1についても画像処理プロセッサ10で実現する構
成など、種々の方法がある。
【0054】ここで、画像処理プロセッサ10で実現す
る処理については、1つ又は2以上のものを(1又は複
数の)汎用処理ユニット11で行い、その他の1つ又は
2以上ものを(1又は複数の)専用処理ユニット12に
より実現することができる(全部を(1又は複数の)汎
用処理ユニット11で行う構成も可能である)。
【0055】例えば、画像処理プロセッサ10の汎用処
理ユニット11で、テクスチャデータ処理部4を実現し
たり、透視変換/光源処理部1を実現したりすることが
できる。例えば、テクスチャデータ処理部4を汎用処理
ユニット11で実現した場合、テクスチャメモリを読み
出すだけでなく、適宜、演算命令を与えることによっ
て、所望の加工処理をテクスチャメモリに対して施すこ
とができるようになる。透視変換/光源処理やその他の
処理についても同様である。
【0056】例えば、図5の例において、画像処理プロ
セッサ10の汎用処理ユニット11で、テクスチャデー
タ処理部4を実現する場合(なお、テクスチャアドレス
生成部3とブレンド処理部5も画像処理プロセッサ10
内にあるとした場合)には、汎用処理ユニット11の上
流は、テクスチャアドレス生成部3になり、下流は、ブ
レンド処理部5になる。
【0057】また、例えば、図5の例において、画像処
理プロセッサ10内の1つの汎用処理ユニット11で、
テクスチャデータ処理部4と透視変換/光源処理部1の
双方を実現することもできる。図6に、この場合の画像
処理全体の様子を示す。図6に示されるように、画像処
理プロセッサ10の汎用処理ユニット11は、図5の画
像処理において、初回目には、透視変換/光源処理部1
に相当する処理を行う。このときは、汎用処理ユニット
11の上流は、CPU20になり、下流は、セットアッ
プ/DDA処理部2(セットアップ/DDA処理部2が
CPU20にあるときはCPU20、セットアップ/D
DA処理部2が画像処理プロセッサ10内にあるときは
画像処理プロセッサ10内のセットアップ/DDA処理
部2)になる。他方、汎用処理ユニット11は、2回目
には、テクスチャデータ処理部4に相当する処理を行
う。この場合は(なお、テクスチャアドレス生成部3と
ブレンド処理部5も画像処理プロセッサ10内にあると
した場合)、汎用処理ユニット11の上流は、テクスチ
ャアドレス生成部3になり、下流は、ブレンド処理部5
になる。
【0058】このように、1つの汎用処理ユニット11
で、画像処理全体における任意の部分の処理を、任意の
内容で実現することができる。
【0059】もちろん、これまで説明してきた例の他に
も種々のバリエーションがある。
【0060】図7に、画像処理プロセッサ10の汎用処
理ユニット11においてテクスチャデータ処理部4に相
当する処理を実行する場合の処理手順の一例を示す。
【0061】ここでは、メモリ111をテクスチャメモ
リとして利用し、連想記憶装置112をカラー・ルック
アップ・テーブルとして利用するものとする。
【0062】まず、メモリアドレスと演算命令を受け取
る(ステップS11)。
【0063】次に、ステップS11で受け取った演算命
令とメモリアドレスをもとに、メモリ(テクスチャメモ
リ)111および連想記憶装置(カラー・ルックアップ
・テーブル)112からデータの読み出しを行う。
【0064】次に、ステップS11で受け取った演算命
令とステップS12で得たデータをもとに、演算器11
4にて演算処理を行う(ステップS13)。
【0065】次に、演算処理の結果(例えば、処理を施
されたテクスチャデータ)を出力する(ステップS1
4)。
【0066】ステップS11で受け取ったメモリアドレ
スや演算命令が残っていれば(ステップS15)、ステ
ップS11に戻って処理を続行し、もしなければ(ステ
ップS15)、処理を終了する。
【0067】なお、ステップS13で、一時記憶装置1
17を使用することもできる。
【0068】もちろん、ステップS13でテクスチャデ
ータに対する加工処理を行わずに、読み出したテクスチ
ャデータをそのまま出力することも可能である。
【0069】図8に、画像処理プロセッサ10の汎用処
理ユニット11において透視変換/光源処理部1におけ
る三次元座標変換に相当する処理を実行する場合の処理
手順の一例を示す。
【0070】まず、上流より得た命令列番号を用いて、
制御装置(115あるいは116)によりメモリ111
から命令列を読み出す(ステップS21)。
【0071】次いで、ステップS21〜S24の一連の
ループ処理を行う。
【0072】ステップS21で読み出した命令列をもと
に、三次元座標変換に用いるための座標を、メモリ11
1あるいは上流から読み出す(ステップS22)。
【0073】ステップS22で読み出された座標と、ス
テップS21で読み出された命令列とをもとに、演算器
114を用いて行列を合成し、これをレジスタあるいは
ワークメモリ(例えば、一時記憶装置117)に保持す
る(ステップS23)。
【0074】ステップS21で読み出した命令列をもと
に、読み出すべき行列がまだ存在しているかどうかを調
べ、まだ存在していれば(ステップS24)、ステップ
S22に戻って処理を繰り返し、存在していなければ、
ステップS25へと移る。
【0075】次いで、ステップS25〜S28の一連の
ループ処理を行う。
【0076】命令列をもとに頂点情報を上流あるいはメ
モリ111から読み出し、レジスタあるいはワークメモ
リに保持する(ステップS25)。
【0077】読み出した頂点情報を、ステップS23に
おいて生成され保持されている変換行列と合成し(ステ
ップS26)、その合成した結果を、レジスタあるいは
下流へ出力する(ステップS27)。
【0078】ステップS21で読み出した命令列をもと
に、読み出す頂点情報がまだ存在しているかどうかを調
べ(ステップS28)、まだ存在していれば、ステップ
S25へ、存在していなければ、三次元座標変換処理を
終了する。
【0079】ところで、画像を複数に分割して並列処理
することも可能である。例えば、図5において、セット
アップ/DDA処理部2で画像をn(nは複数)の領域
に分割し(例えば、8分割し)、分割したn個の領域毎
に、テクスチャアドレス生成部3とテクスチャデータ処
理部4とブレンド処理部5を行い、フラグメント処理部
6ではもとの1つの画像として処理する構成も可能であ
る。この場合には、例えば、専用処理ユニット12によ
るテクスチャアドレス生成部3と汎用処理ユニット11
によるテクスチャデータ処理部4と専用処理ユニット1
2(あるいは汎用処理ユニット11)によるブレンド処
理部5とからなるパイプラインを、n系統(例えば、8
系統)設けるようにしてもよい。また、例えば、汎用処
理ユニット11をn系統設け、各系統の汎用処理ユニッ
ト11にて時分割でテクスチャアドレス生成とテクスチ
ャデータ処理とブレンド処理を行うようにすることも可
能である。
【0080】図9に、画像を複数に分割して並列処理す
る場合の画像処理プロセッサ(画像処理LSI)の一構
成例およびこれを用いた情報処理システム(例えば、ゲ
ーム機)の要部の一構成例を示す。
【0081】この構成例では、一例として、図10に示
すように、セットアップ/DDA処理部2で画像を4分
割し、各4分割画像に対して、4並列に設けたテクスチ
ャメモリアクセス部16でテクスチャアドレス生成部3
/テクスチャデータ処理部4/ブレンド処理部5に相当
する処理を行い、フラグメント処理部6でもとの1つの
画像として処理する。
【0082】汎用処理ユニット11を含むテクスチャメ
モリアクセス部16の内部構成は、上記のように、種々
のバリエーションが可能である。
【0083】なお、図9では、画像処理プロセッサ内に
設けたメモリインタフェース17を介して、カラー・ル
ックアップ・テーブル18とテクスチャメモリ19を外
画像処理プロセッサに外付けする構成例であるが、カラ
ー・ルックアップ・テーブル18とテクスチャメモリ1
9を外画像処理プロセッサ内に設ける構成も可能であ
る。
【0084】なお、この発明の実施の形態で例示した構
成は一例であって、それ以外の構成を排除する趣旨のも
のではなく、例示した構成の一部を他のもので置き換え
たり、例示した構成の一部を省いたり、例示した構成に
別の機能あるいは要素を付加したり、それらを組み合わ
せたりすることなどによって得られる別の構成も可能で
ある。また、例示した構成と論理的に等価な別の構成、
例示した構成と論理的に等価な部分を含む別の構成、例
示した構成の要部と論理的に等価な別の構成なども可能
である。また、例示した構成と同一もしくは類似の目的
を達成する別の構成、例示した構成と同一もしくは類似
の効果を奏する別の構成なども可能である。また、この
発明の実施の形態で例示した各種構成部分についての各
種バリエーションは、適宜組み合わせて実施することが
可能である。また、この発明の実施の形態は、個別装置
としての発明、関連を持つ2以上の装置についての発
明、システム全体としての発明、個別装置内部の構成部
分についての発明、またはそれらに対応する方法の発明
等、種々の観点、段階、概念またはカテゴリに係る発明
を包含・内在するものである。従って、この発明の実施
の形態に開示した内容からは、例示した構成に限定され
ることなく発明を抽出することができるものである。
【0085】本発明は、上述した実施の形態に限定され
るものではなく、その技術的範囲において種々変形して
実施することができる。
【0086】
【発明の効果】本発明によれば、多様な画像処理を柔軟
に行うことができるようになる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係る画像処理プロセッサ
の一構成例およびこれを用いた情報処理システムの構成
例を示す図
【図2】同実施形態に係る画像処理プロセッサの構成例
を示す図
【図3】同実施形態に係る画像処理プロセッサの他の構
成例を示す図
【図4】同実施形態に係る画像処理プロセッサのさらに
他の構成例を示す図
【図5】同実施形態に係る画像処理プロセッサとCPU
によって実現される画像処理全体の構成例を示す図
【図6】同実施形態に係る汎用処理ユニットで透視変換
/光源処理部とテスクチャデータ処理部を実現する例を
示す図
【図7】同実施形態に係る画像処理プロセッサ内の汎用
処理ユニットの処理手順の一例を示すフローチャート
【図8】同実施形態に係る画像処理プロセッサ内の汎用
処理ユニットの処理手順の他の例を示すフローチャート
【図9】本発明の一実施形態に係る画像処理プロセッサ
の一構成例およびこれを用いた情報処理システムの具体
例を示す図
【図10】同実施形態に係る画像処理プロセッサを並列
に設けて分割画像に対して並列処理を行う例を示す図
【符号の説明】
1…透視変換/光源処理部 2…セットアップ/DDA処理部 3…テクスチャアドレス生成部 4…テクスチャデータ処理部 5…ブレンド処理部 6…フラグメント処理部 10…画像処理プロセッサ 11…汎用処理ユニット 12…専用処理ユニット 16…テクスチャメモリアクセス部 17…メモリインタフェース 18…カラー・ルックアップ・テーブル 19…テクスチャメモリ 20…CPU 30…メインメモリ 40…入出力インタフェース 50…メモリコントローラ 60…システムバス 111…メモリ 112…連想記憶装置 113…メモリ読み出し装置 114…演算器 115,116…制御装置 117…一時記憶装置
───────────────────────────────────────────────────── フロントページの続き (72)発明者 檜田 和浩 神奈川県川崎市幸区小向東芝町1番地 株 式会社東芝マイクロエレクトロニクスセン ター内 Fターム(参考) 5B057 CH01 CH04 CH05 CH11 CH14 5B080 BA04 CA04 CA05 CA09 DA06 FA03 GA22

Claims (14)

    【特許請求の範囲】
  1. 【請求項1】外部からデータを受け取って所定の画像処
    理を行う機能を有する画像処理プロセッサであって、 外部から命令及びデータを入力し、処理データを出力す
    る入出力インタフェースと、 入力された命令及びデータに基づいて所定の画像処理を
    行う機能を有する少なくとも一つの汎用処理ユニットと
    を備え、 前記汎用処理ユニットは、 所定のメモリから指定アドレスに対するデータを読み出
    す機能を有するメモリ読み出し装置と、 前記メモリ読み出し装置からのメモリ読み出しを含む所
    定の命令群のうちから指定された命令を実行する演算器
    と、 前記演算器の実行により得られた処理データを入力デー
    タとして前記演算器に入力するためのパスと、前記演算
    器の実行により得られた処理データをアドレスとして前
    記メモリ読み出し装置に入力するためのパスとの少なく
    とも一方を含む回路とを含むことを特徴とする画像処理
    プロセッサ。
  2. 【請求項2】前記回路は、データの流れを制御する機能
    を持ち、その動作の入力を上流から行うパスを含むこと
    を特徴とする請求項1に記載の画像処理プロセッサ。
  3. 【請求項3】前記回路は、データの流れを制御する機能
    を持ち、その動作の入力を下流から行うパスを含むこと
    を特徴とする請求項1に記載の画像処理プロセッサ。
  4. 【請求項4】前記汎用処理ユニットは、前記演算器の実
    行により得られた処理データを保持可能な一時記憶領域
    を更に含むことを特徴とする請求項1に記載の画像処理
    プロセッサ。
  5. 【請求項5】前記汎用処理ユニット内で前記演算器が所
    望のタイミングで前記一時記憶領域に保持されている所
    望のデータをアクセス可能としたことを特徴とする請求
    項4に記載の画像処理プロセッサ。
  6. 【請求項6】前記汎用処理ユニットに行わせる処理は、
    透視変換/光源処理、セットアップ/DDA処理、テク
    スチャアドレス生成、テクスチャデータ処理、ブレンド
    処理又はフラグメント処理のうちの少なくとも一つであ
    ることを特徴とする請求項1に記載の画像処理プロセッ
    サ。
  7. 【請求項7】1つの前記汎用処理ユニットに、透視変換
    /光源処理、セットアップ/DDA処理、テクスチャア
    ドレス生成、テクスチャデータ処理、ブレンド処理又は
    フラグメント処理のうちの2以上を行わせるようにした
    ことを特徴とする請求項1に記載の画像処理プロセッ
    サ。
  8. 【請求項8】複数の処理をパイプライン的に処理する処
    理部を備え、 前記処理部は、少なくとも一つの前記汎用処理ユニット
    を有することを特徴とする請求項1に記載の画像処理プ
    ロセッサ。
  9. 【請求項9】1つの画像を複数の部分に分割した分割画
    像の各々を並列に処理するための複数の処理部を備え、 前記処理部の各々は、少なくとも一つの前記汎用処理ユ
    ニットを有することを特徴とする請求項1に記載の画像
    処理プロセッサ。
  10. 【請求項10】予め定められた所定の画像処理のみを行
    う機能を有する少なくとも一つの専用処理ユニットを更
    に備えたことを特徴とする請求項1のいずれか1項に記
    載の画像処理プロセッサ。
  11. 【請求項11】前記専用処理ユニットに行わせる処理
    は、透視変換/光源処理、セットアップ/DDA処理又
    はフラグメント処理のうちの少なくとも一つであること
    を特徴とする請求項1に記載の画像処理プロセッサ。
  12. 【請求項12】前記メモリ読み出し装置は、所定の連想
    記憶装置からデータを読み出す機能を更に有することを
    特徴とする請求項1に記載の画像処理プロセッサ。
  13. 【請求項13】請求項1ないし12のいずれか1項に記
    載の画像処理プロセッサと、該画像処理プロセッサを利
    用するマイクロプロセッサとを備えたことを特徴とする
    情報処理システム。
  14. 【請求項14】前記画像処理プロセッサにより、透視変
    換/光源処理、セットアップ/DDA処理、テクスチャ
    アドレス生成、テクスチャデータ処理、ブレンド処理又
    はフラグメント処理のうちの少なくとも1つを実行し、 前記透視変換/光源処理、セットアップ/DDA処理、
    テクスチャアドレス生成、テクスチャデータ処理、ブレ
    ンド処理又はフラグメント処理のうち、前記画像処理プ
    ロセッサにより実行する処理以外の処理を、前記マイク
    ロプロセッサで実行することを特徴とする請求項13に
    記載の画像処理プロセッサ。
JP2001295108A 2001-09-26 2001-09-26 画像処理プロセッサ及び情報処理システム Pending JP2003108989A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001295108A JP2003108989A (ja) 2001-09-26 2001-09-26 画像処理プロセッサ及び情報処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001295108A JP2003108989A (ja) 2001-09-26 2001-09-26 画像処理プロセッサ及び情報処理システム

Publications (1)

Publication Number Publication Date
JP2003108989A true JP2003108989A (ja) 2003-04-11

Family

ID=19116599

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001295108A Pending JP2003108989A (ja) 2001-09-26 2001-09-26 画像処理プロセッサ及び情報処理システム

Country Status (1)

Country Link
JP (1) JP2003108989A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006318066A (ja) * 2005-05-10 2006-11-24 Digital Media Professional:Kk 幾何演算装置
JP2007081716A (ja) * 2005-09-13 2007-03-29 Ricoh Co Ltd 画像形成装置、画像処理ユニット、画像処理方法及び画像処理プログラム
JP2011113234A (ja) * 2009-11-26 2011-06-09 Mega Chips Corp 画像処理装置、および画像処理装置の動作方法
JP2012018668A (ja) * 2010-07-07 2012-01-26 Arm Ltd 専用機能ハードウェア間の切り替えおよび結果データを生成するソフトウェアルーチンの使用

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006318066A (ja) * 2005-05-10 2006-11-24 Digital Media Professional:Kk 幾何演算装置
JP4683623B2 (ja) * 2005-05-10 2011-05-18 株式会社ディジタルメディアプロフェッショナル 幾何演算装置
JP2007081716A (ja) * 2005-09-13 2007-03-29 Ricoh Co Ltd 画像形成装置、画像処理ユニット、画像処理方法及び画像処理プログラム
US8059285B2 (en) 2005-09-13 2011-11-15 Ricoh Company, Ltd. Image forming apparatus, image processing unit, image processing method, and recording medium having image processing control program with task management
JP2011113234A (ja) * 2009-11-26 2011-06-09 Mega Chips Corp 画像処理装置、および画像処理装置の動作方法
US8723989B2 (en) 2009-11-26 2014-05-13 Megachips Corporation Image distortion processing apparatus, and method of operating an image distortion processing apparatus
JP2012018668A (ja) * 2010-07-07 2012-01-26 Arm Ltd 専用機能ハードウェア間の切り替えおよび結果データを生成するソフトウェアルーチンの使用
US8922568B2 (en) 2010-07-07 2014-12-30 Arm Limited Switching between dedicated function hardware and use of a software routine to generate result data
US9417877B2 (en) 2010-07-07 2016-08-16 Arm Limited Switching between dedicated function hardware and use of a software routine to generate result data

Similar Documents

Publication Publication Date Title
US11023996B2 (en) Graphics processing architecture employing a unified shader
US8237705B2 (en) Hierarchical processor array
US6891544B2 (en) Game system with graphics processor
US7522171B1 (en) On-the-fly reordering of 32-bit per component texture images in a multi-cycle data transfer
EP0486239A2 (en) Rasterization processor for a computer graphics system
US7525547B1 (en) Programming multiple chips from a command buffer to process multiple images
JPH0727571B2 (ja) ラスタ走査表示装置及び図形データ転送方法
JP2001319243A (ja) 画像生成装置、画像生成装置におけるジオメトリ処理形態の切換方法、記録媒体、コンピュータプログラム、半導体デバイス
JP2001243481A (ja) 画像生成装置
US7484076B1 (en) Executing an SIMD instruction requiring P operations on an execution unit that performs Q operations at a time (Q<P)
JP2003108989A (ja) 画像処理プロセッサ及び情報処理システム
JP3642259B2 (ja) マルチスクリーン表示装置
US6885375B2 (en) Stalling pipelines in large designs
JPH0785219B2 (ja) データ処理システム及びデータ制御方法
JP3468985B2 (ja) グラフィック描画装置、グラフィック描画方法
JP3306139B2 (ja) 画像処理装置およびゲーム機
JPH08315179A (ja) 3次元図形処理装置
JPH0661039B2 (ja) メモリアクセス制御回路
JPH06187457A (ja) 図形表示装置
JPH06282657A (ja) 図形表示方法及びその装置
JPS62219062A (ja) マルチ・プロセツサ方式