JP2002032779A - データ処理装置及びデータ処理方法、並びに記憶媒体 - Google Patents

データ処理装置及びデータ処理方法、並びに記憶媒体

Info

Publication number
JP2002032779A
JP2002032779A JP2000218922A JP2000218922A JP2002032779A JP 2002032779 A JP2002032779 A JP 2002032779A JP 2000218922 A JP2000218922 A JP 2000218922A JP 2000218922 A JP2000218922 A JP 2000218922A JP 2002032779 A JP2002032779 A JP 2002032779A
Authority
JP
Japan
Prior art keywords
arithmetic processing
read request
memory
unit
data 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
JP2000218922A
Other languages
English (en)
Inventor
Yuji Yamaguchi
裕司 山口
Hitoshi Ishikawa
仁 石川
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2000218922A priority Critical patent/JP2002032779A/ja
Publication of JP2002032779A publication Critical patent/JP2002032779A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)
  • Image Input (AREA)
  • Image Processing (AREA)

Abstract

(57)【要約】 【課題】 メモリ上にあらかじめ格納された演算処理に
必要な2次パラメータの取得に伴う時間を短縮すること
により、高速に演算処理を行う。 【解決手段】 実際の演算処理を行なう演算処理部を経
由することなく、メモリ部に対してアドレスを直接発行
することで、演算処理に必要な2次パラメータの取得に
伴う時間を短縮して、高速に演算処理を行う。本発明を
画像処理に適用した場合、実際の色計算を行う演算処理
部を経由することなく、テクスチャ座標のパースペクテ
ィブ・コレクション、LODの算出を行ない、アドレス
を算出するので、テクスチャ・マップを高速に行なうこ
とができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、所定の演算を行な
うデータ処理装置及び方法に係り、特に、あらかじめメ
モリ上に格納された必要なパラメータを取り出してから
演算を行なうデータ処理装置及び方法に関する。
【0002】
【従来の技術】昨今の技術革新に伴い、各種の計算機シ
ステムが開発・市販され、企業内のオフィスや研究機
関、さらには一般家庭などに、広汎に普及してきてい
る。計算機システムは、一般に、プログラム・コードの
形式で与えられた演算その他のデータ処理を高速に繰り
返し実行することを得意とする。
【0003】計算機システム上で行なわれる演算処理の
中には、あらかじめメモリ上に格納されたパラメータ・
テーブルから演算に必要なパラメータを取り出して、こ
れを利用して演算を行う場合がある。
【0004】例えば、いわゆるコンピュータ・グラフィ
ックス処理においては、ピクセル・レベルでの色計算の
品質を向上させるために、テクスチャ・マップや環境マ
ップという手法が採り入れられている。これは、パラメ
ータ・テーブルとして、2次元のテーブル及び6面体の
テーブルを用いることによって実現される。
【0005】以下、色計算処理の過程でパラメータ・テ
ーブルを参照する手順の概要について説明する。但し、
演算処理に関わるパラメータについて、演算処理部への
与えられ方により、1次パラメータ、2次パラメータと
区別して表記することにする。また、あらかじめメモリ
に格納されたパラメータ・テーブル内のパラメータを2
次パラメータとし、演算処理部に直接与えられるパラメ
ータを1次パラメータと呼ぶことにする。
【0006】図10には、パラメータ・テーブルを参照
する従来のデータ処理装置50の機能構成を図解してい
る。同図に示すように、データ処理装置50は、演算処
理を行なう演算処理部51と、演算処理に必要な2次パ
ラメータ・テーブル52Aを格納するメモリ部52とで
構成される。
【0007】演算処理部51は、演算処理に関する1次
パラメータをD01から取得して、この1次パラメータ
を基にして演算処理を行ない、求めた演算結果をD10
を介して後段の処理に出力するようになっている。
【0008】また、演算処理部51は、D01から得ら
れた1次パラメータ以外に、2次パラメータ・テーブル
52Aの内容を利用して演算処理を行なうことが可能で
ある。この場合には、演算処理部51は、必要な2次パ
ラメータのアドレスをR12を介してメモリ部52に出
力してメモリ要求を発行する。
【0009】これに対し、メモリ部52では、メモリ要
求で指定されたアドレスに相当する2次パラメータ・テ
ーブル52Aの内容を、D21を介して演算処理部51
に供給する。
【0010】そして、演算処理部51は、D21経由で
得られた2次パラメータを用いて演算処理を行うことが
できる。
【0011】図11には、演算処理部51において実行
される処理手順をフローチャートの形式で示している。
以下、このフローチャートに従って説明する。
【0012】まず、演算処理に必要な1次パラメータ
を、D01を介して取得する(ステップS1)。
【0013】次いで、D01を介して取得した1次パラ
メータから、2次パラメータのアドレスを計算する(ス
テップS2)。
【0014】次いで、演算処理に必要な2次パラメータ
のアドレスを、R12を介してメモリ部52に対して出
力して、指定したアドレスに相当する2次パラメータを
D21を介して取得する(ステップS3)。
【0015】ここで、他に必要な2次パラメータがある
か否かをチェックして(ステップS4)、まだ必要なパ
ラメータが残っている場合にはステップS2に戻って上
記と同様の処理を繰り返し実行する。
【0016】次いで、取得した1次パラメータ及び2次
パラメータを用いて演算処理を行なう(ステップS
5)。
【0017】そして、演算結果を、D10を介して後段
に出力して(ステップS6)、本処理ルーチン全体を終
了する。
【0018】また、図12には、図11に示した処理手
順をテクスチャ・マップに適用した場合の例を示してい
る。以下、このフローチャートに従って説明する。
【0019】まず、描画したいピクセルのカラー値及び
テクスチャ座標値(s,t,q)、テクスチャ座標の画
面上での横方向の変化分(dsdx,dtdx,dqd
x)、テクスチャ座標の画面上での縦方向の変化分(d
sdy,dtdy,dqdy)を、D01を介して取得
する(ステップS11)。
【0020】次いで、D01を介して取得したテクスチ
ャ座標とその縦/横方向の変化分から、テクスチャのア
ドレスを計算する(ステップS12)。
【0021】テクスチャのアドレスの計算に際して、ま
ず、テクスチャ座標(s,t,q)に対してパースペク
ティブ・コレクションを行ない、正規化テクスチャ座標
(s,t)を得る(ステップS12A)。正規化テクス
チャ座標値は、以下の式に従って求めることができる。
【0022】
【数1】s=s/q t=t/q
【0023】次いで、LODを正規化テクスチャ座標や
その縦方向/横方向の変化分から算出する(ステップS
12B)。LODの求め方には様々な方法が考えられる
が、例えば以下の式により求めることができる。
【0024】
【数2】 dudx=(dsdx×q−dqdx×s)/q2 dvdx=(dtdx×q−dqdx×t)/q2 dudy=(dsdy×q−dqdy×s)/q2 dvdy=(dtdy×q−dqdy×t)/q2 LOD=log2(max(dudx,dvdx,du
dy,dvdy))
【0025】次いで、正規化テクスチャ座標(s,t)
とLODより、メモリ内アドレスaddrを求める(ス
テップS12C)。これは、アドレッシング方法に依存
するが、例えば以下の式のように求めることができる。
【0026】
【数3】addr=s+t×マップの幅+ベース・アド
レス(LOD)
【0027】テクスチャのアドレスを計算し終えると、
次いで、R12を介してアドレスaddrをメモリ部5
2に発行して、指定したアドレスに相当するテクスチャ
を、D21を介して取得する(ステップS13)。
【0028】次いで、テクスチャとカラー値とから、描
画カラー値を計算する(ステップS14)。
【0029】そして、描画カラー値を、D10を介して
描画系に出力して(ステップS15)、本処理ルーチン
全体を終了する。
【0030】また、図13には、図11に示した処理フ
ローについての、環境マップの実現方法をフローチャー
トの形式で示している。以下、このフローチャートに従
って説明する。
【0031】ここで言う環境マップとは、視線の反射ベ
クトルから6面体マップの面番号face及びその面内
のテクスチャ座標(s,t)を計算して、該当するテク
スチャを用いて色計算することで、光る物体に環境が映
り込む様子を表現する手法のことである。
【0032】まず、描画したいピクセルのカラー値及び
視線の反射ベクトル(vx,vy,vz)を、D01を
介して取得する(ステップS21)。
【0033】次いで、D01を介して取得した視線の反
射ベクトルから、テクスチャのアドレスを計算する(ス
テップS22)。
【0034】テクスチャのアドレスの計算に際して、ま
ず、視線の反射ベクトル(vx,vy,vz)から6面
体マップの面番号face及びテクスチャ座標(s,
t)を計算する(ステップS22A)。
【0035】6面体マップの面番号face及びテクス
チャ座標(s,t)は、例えば、以下の[数4]に擬似
コード形式で示す手順に従って並べ替えと符号変化を行
った後、[数5]に示す式により算出することができ
る。なお、(s,t)の範囲を−1〜1であったものを
0〜1に変換する処理も下式[数5]で行なっている。
【0036】
【数4】 if (|vx|=max(|vx|,|vy|,|vz|)) { vc=vx if (vc≧0) { face=0 va=vz vb=vy } else { face=1 va=vz vb=−vy } } else if (|vx|=max(|vx|,|vy|,|vz|)) { vc=vy if (vc≧0) { face=2 va=vz vb=−vx } else { face=3 va=−vz vb=−vx } else { vc=vz if (vc≧0) { face=4 va=−vx vb=vy } else { face=5 va=−vx vb=−vy } }
【0037】
【数5】s=(va/vc+1)/2 t=(vb/vc+1)/2
【0038】次いで、テクスチャ座標(s,t)と面番
号faceより、メモリ内アドレスaddrを求める
(ステップS22B)。これは、アドレッシング方法に
依存するが、例えば以下の式のように求めることができ
る。
【0039】
【数6】addr=s+t×マップの幅+ベース・アド
レス(face)
【0040】テクスチャのアドレスを計算し終えると、
次いで、R12を介してアドレスaddrをメモリ部5
2に発行して、指定したアドレスに相当するテクスチャ
をD21を介して取得する(ステップS23)。
【0041】次いで、テクスチャとカラー値とから、描
画カラー値を計算する(ステップS24)。
【0042】そして、描画カラー値をD10を介して描
画系に出力して(ステップS25)、本処理ルーチン全
体を終了する。
【0043】上述したように、演算処理に必要な2次パ
ラメータをメモリから取得して、これにより計算を行う
ということは、計算機システム上での演算処理、とりわ
けコンピュータ・グラフィックスにおけるマッピング処
理においては一般的である。
【0044】
【発明が解決しようとする課題】上述したような2次パ
ラメータをメモリから取得するという従来方式におけ
る、演算処理に要する時間(クロック数)について考え
てみる。
【0045】図11に示したような処理手順において、
各ステップ毎に要する時間をそれぞれT1,T2,T
3,T4,T5,T6とおく。すると演算処理全体に要
する時間は、当然、(T1+T2+T3+T4+T5+
T6)となる。図14には、図11に示した処理フロー
の各ステップに要する時間を模式的に図解している。
【0046】ここで、T3と言う処理時間には、メモリ
・アクセス時のレイテンシ(メモリ要求してから結果が
出力されるまでの遅延時間)が含まれている。メモリ・
アクセスは一般に時間がかかるため、結果として演算処
理のレイテンシ及びスループットの両方が増大してしま
う。
【0047】このようなメモリのレイテンシを隠す方法
の1つとしてパイプライン制御を挙げることができる。
パイプライン制御とは、一連の演算処理を、独立に実行
可能なより細かいステージに分割して、それぞれのステ
ージは異なるデータに関する演算を同時に行なえること
を利用して、各データの演算処理を並列に(オーバーラ
ップさせて)行なうものである。図9には、パイプライ
ン制御の仕組みを模式的に示している。
【0048】しかしながら、このようなパイプライン制
御を行なうためには、図10に示した演算処理部51は
レイテンシを隠せるだけのステージを備えていなければ
ならない。すなわち、図9に示す例では、メモリ部52
への2次パラメータ読み出しの要求を発行してから、メ
モリ部52から2次パラメータを読み込めるまでの間
に、何らかの動作できる処理ステージを挿入して、スト
ールが発生しないようにしなければならない。
【0049】一方、機能的な問題として、最近特に画像
処理の技術分野においては、演算処理は用途に応じて多
様化してきている。これは、描画品質の向上の要求が高
まることによって、色計算方法が唯一ではなくなり、表
現したい内容に応じて異なる色計算方法を適用したい場
合が多くなってきていることにも依拠する。
【0050】このため、演算処理部1を、すべてハード
ワイヤードに構成するのではなく、プログラム・コード
等のソフトウェアにより柔軟に処理手順をカスタマイズ
できることが好ましくなってきている。
【0051】演算処理部1における処理手順をプログラ
ム・コードによって実装する場合、上述したようなメモ
リ部52からの2次パラメータの読み込みも、当然プロ
グラムにより記述しなければならない。
【0052】ところが、このような場合、メモリ部52
に対して2次パラメータ読み出し要求を発行してから、
メモリ部52より2次パラメータを読み込めるようにな
るまでの間、何らかの動作できる処理ステージを挿入す
ることが著しく困難になってしまう。
【0053】ソフトウェア的に命令を並べ替えてストー
ルが発生しにくくするようにすることは、技術的には可
能であるが、プログラム作成上多大な労力を要するの
で、結果としてコスト増大を招来する。
【0054】また、そもそも2次パラメータを取得でき
ない限り、演算処理をほとんど行えないことも多い。こ
のような場合には、挿入すべき処理ステージが存在しな
いことになる。
【0055】本発明は、上述したような技術的課題を鑑
みたものであり、その目的は、あらかじめメモリ上に格
納された必要なパラメータを取り出してから演算を好適
に行なうことができる、優れたデータ処理装置及び方法
を提供することにある。
【0056】本発明の更なる目的は、メモリ上にあらか
じめ格納された演算処理に必要な2次パラメータの取得
に伴う時間を短縮することにより、高速に演算処理を行
うことができる、優れたデータ処理装置及び方法、並び
に、画像処理装置及び方法を提供することにある。
【0057】
【課題を解決するための手段】本発明は、上記課題を参
酌してなされたものであり、その第1の側面は、演算処
理を行なう演算処理部と、演算に必要なパラメータを格
納するメモリ部と、演算に必要なパラメータの読み出し
要求を前記メモリ部に対して発行する読み出し要求部と
を備え、前記読み出し要求部は、前記演算処理部が必要
なパラメータの読み出し要求を前記メモリ部に対して発
行し、前記メモリ部は該読み出し要求に応答して要求さ
れたパラメータを前記演算処理部に出力する、ことを特
徴とするデータ処理装置である。
【0058】ここで、前記読み出し要求部は、前記演算
処理部が必要とするパラメータのアドレスが事前に分か
る場合のみ前記メモリ部に対する読み出し要求を発行す
るようにしてもよい。
【0059】また、前記演算処理部は演算処理の途中結
果を前記読み出し要求部に出力するとともに、前記読み
出し要求部は該演算処理の途中結果を基に前記メモリ部
に対してパラメータの読み出し要求を発行するようにし
てもよい。
【0060】また、本発明の第1の側面に係るデータ処
理装置は、演算処理部及び/又は読み出し要求部を複数
備えていてもよい。また、演算処理部及び/又は読み出
し要求部の少なくとも一部をプログラム・コードに従っ
て処理動作をプログラム可能に構成してもよい。
【0061】また、前記演算処理部がピクセルに対する
色計算を行うようにして、データ処理装置を画像処理装
置に適用するようにしてもよい。
【0062】また、前記読み出し要求部は、テクスチャ
座標に対するパースペクティブ・コレクション、LOD
(Level Of Detail)の算出、並びに2次元マップ内の
アドレスの算出により、前記メモリ部に対する2次元マ
ップの参照を高速で行なうようにしてもよい。
【0063】また、前記読み出し要求部は、6面体の面
番号の算出、テクスチャ座標の算出、並びに6面体マッ
プ内アドレスの算出により、前記メモリ部に対する6面
体マップの参照を高速で行なうようにしてもよい。
【0064】また、本発明の第2の側面は、演算に必要
なパラメータをメモリから読み出して所定の演算処理を
行なうデータ処理方法であって、演算処理に必要なパラ
メータの読み出し要求を前記メモリに対して発行する読
み出し要求ステップと、該読み出し要求に応答して前記
メモリから読み出されたパラメータを用いて演算処理を
行なう演算処理ステップと、を具備することを特徴とす
るデータ処理方法である。
【0065】ここで、前記読み出し要求ステップでは、
演算処理に必要なパラメータのアドレスが事前に分かる
場合のみ前記メモリに対する読み出し要求を発行するよ
うにしてもよい。
【0066】また、前記読み出し要求では、前記演算処
理ステップにおける演算処理の途中結果を基に前記メモ
リに対するパラメータの読み出し要求を発行するように
してもよい。
【0067】また、前記読み出し要求ステップでは、テ
クスチャ座標に対するパースペクティブ・コレクショ
ン、LOD(Level Of Detail)の算出、並びに2次元
マップ内のアドレスの算出により、前記メモリ部に対す
る2次元マップの参照を高速で行なうようにしてもよ
い。
【0068】また、前記読み出し要求ステップでは、6
面体の面番号の算出、テクスチャ座標の算出、並びに6
面体マップ内アドレスの算出により、前記メモリ部に対
する6面体マップの参照を高速で行なうようにしてもよ
い。
【0069】また、本発明の第3の側面は、演算に必要
なパラメータをメモリから読み出して所定の演算処理を
行なうデータ処理をコンピュータ・システム上で実行す
るように記述されたコンピュータ・ソフトウェアをコン
ピュータ可読形式で物理的に格納した記憶媒体であっ
て、前記コンピュータ・ソフトウェアは、演算処理に必
要なパラメータの読み出し要求を前記メモリに対して発
行する読み出し要求ステップと、該読み出し要求に応答
して前記メモリから読み出されたパラメータを用いて演
算処理を行なう演算処理ステップと、を具備することを
特徴とする記憶媒体である。
【0070】本発明の第3の側面に係る記憶媒体は、例
えば、様々なプログラム・コードを実行可能な汎用性の
コンピュータ・システムに対して、コンピュータ・ソフ
トウェアをコンピュータ可読な形式で物理的に提供する
媒体である。このような媒体は、例えば、CD(Compac
t Disc)やFD(Floppy Disc)、MO(Magneto-Optic
al disc)などの着脱自在で可搬性の記憶媒体である。
あるいは、ネットワーク(ネットワークは無線、有線の
区別を問わない)などの伝送媒体などを経由してコンピ
ュータ・ソフトウェアを特定のコンピュータ・システム
にコンピュータ可読形式で提供することも技術的に可能
である。
【0071】このような記憶媒体は、コンピュータ・シ
ステム上で所定のコンピュータ・ソフトウェアの機能を
実現するための、コンピュータ・ソフトウェアと記憶媒
体との構造上又は機能上の協働的関係を定義したもので
ある。換言すれば、本発明の第3の側面に係る記憶媒体
を介して所定のコンピュータ・ソフトウェアをコンピュ
ータ・システムにインストールすることによって、コン
ピュータ・システム上では協働的作用が発揮され、本発
明の第1及び第2の各側面に係るデータ処理装置及び方
法と同様の作用効果を得ることができる。
【0072】
【作用】本発明によれば、実際の演算処理を行なう演算
処理部を経由することなく、メモリ部に対してアドレス
を直接発行することで、演算処理に必要な2次パラメー
タの取得に伴う時間を短縮して、高速に演算処理を行う
ことができる。
【0073】また、本発明を画像処理に適用した場合、
実際の色計算を行う演算処理部を経由することなく、テ
クスチャ座標のパースペクティブ・コレクション、LO
Dの算出を行ない、アドレスを算出するので、テクスチ
ャ・マップを高速に行なうことができる。
【0074】また、本発明を画像処理に適用した場合、
実際の色計算を行う演算処理部を経由することなく、6
面体マップの面番号及びテクスチャ座標の算出を行な
い、アドレスを算出するので、環境マップを高速に行な
うことができる。
【0075】本発明のさらに他の目的、特徴や利点は、
後述する本発明の実施例や添付する図面に基づくより詳
細な説明によって明らかになるであろう。
【0076】
【発明の実施の形態】以下、図面を参照しながら本発明
の実施例を詳解する。
【0077】図1には、本発明の実施に供されるデータ
処理装置10の機能構成を模式的に示している。同図に
示すように、データ処理装置10は、演算処理部1と、
メモリ部2と、読み出し要求部3とで構成される。
【0078】読み出し要求部3は、2次パラメータのア
ドレスを計算するために必要な1次パラメータをD03
経由で取得して、この1次パラメータを基にしてアドレ
スを算出して、算出したアドレスをR32経由でメモリ
部2に発行する。
【0079】メモリ部2は、指定されたアドレスに相当
する2次パラメータの内容を、D21を介して演算処理
部1に出力する。
【0080】演算処理部1は、D21を介して入力され
た2次パラメータを用いて演算処理を行ない、演算結果
をD10を介して後段に出力する。
【0081】勿論、演算処理部1は、2次パラメータの
アドレス計算に必要というのではない、そのまま演算処
理に利用される1次パラメータを、D01経由で取得し
て演算処理を行なうことも可能である。
【0082】また、演算処理部1は、演算処理の途中
に、演算の途中結果をD13を介して読み出し要求部3
に出力することによって、メモリ部2への2次パラメー
タを要求することもできる。
【0083】図2には、読み出し要求部3において実行
される処理手順をフローチャートの形式で示している。
以下、このフローチャートに従って、読み出し要求部3
の動作について説明する。
【0084】まず、演算処理に必要な2次パラメータの
アドレスを計算するための1次パラメータを、D03を
介して取得する(ステップS31)。
【0085】次いで、D03を介して取得した1次パラ
メータから、2次パラメータのアドレスを計算する(ス
テップS32)。
【0086】次いで、必要なアドレスを、R32を介し
てメモリ部2に発行する(ステップS33)。
【0087】そして、演算処理のために必要な2次パラ
メータが他にもあるか否かを判別する(ステップS3
4)。必要な2次パラメータが他にもあるならば、ステ
ップS31に戻って、上述と同様の処理を繰り返し実行
する。また、なければ、本処理ルーチン全体を終了す
る。
【0088】また、図3には、演算処理部1において実
行される処理手順をフローチャートの形式で示してい
る。但し、同図中において、説明の便宜上、D01を介
したメモリ・アクセスとは関係しない1次パラメータの
取得や、D13を介して演算処理部1より発行される2
次パラメータの読み出し要求などの処理ステップについ
ては省略している。以下、このフローチャートに従っ
て、演算処理部1の動作について説明する。
【0089】まず、演算処理に必要な2次パラメータ
を、D21を介して取得する(ステップS41)。
【0090】演算処理に必要な2次パラメータが他にも
存在するならば、ステップS41に戻る(ステップS4
2)。
【0091】次いで、取得した2次パラメータを用いて
演算処理を行なう(ステップS43)。
【0092】次いで、演算結果を、D10を介して後段
の描画系に出力し(ステップS44)、ステップS41
に戻って、上述と同様の処理を繰り返し実行する。
【0093】図4には、図3に示した処理フローの各ス
テップに要する時間を模式的に示している。各ステップ
S41〜S44に要する時間をそれぞれT11,T1
2,T13,T14とおくと、演算処理全体に要する時
間は(T11+T12+T13+T14)となる。
【0094】図14に示したタイム・チャートでは、メ
モリ・アクセスに要するレイテンシがそのまま演算処理
時間に影響を及ぼしていた(前述)。これに対し、本実
施例すなわち図4に示すタイム・チャートの場合、演算
処理部1の処理とは独立にメモリ部2への読み出し要求
が発行されるので、メモリ・アクセスに要するレイテン
シを、演算処理から隠蔽することができる。
【0095】本実施例では、読み出し要求部3は、固定
的な処理内容が多くなるので、ハードウェアで実装する
ことが有効となる場合が多い。また、1つのデータ処理
装置10内に複数個の読み出し要求部3を装備しても有
効である。さらに、複数ある読み出し要求部3のうちの
一部をプログラム可能とすることで、より柔軟なデータ
処理を行うことが可能となる。
【0096】ここで、本発明を画像処理に適用した場合
を例にとると、演算処理部1についても、フォギング、
アルファブレンドなどの処理は比較的汎用的に用いられ
るので、演算処理部1をハードウェアで実装することが
有効である。このような場合、1つのデータ処理装置1
0内に複数の演算処理部1を装備するとともに、その一
部についてハードウェアで構成するようにすれば、より
高速な演算処理を行うことができる。
【0097】図5には、本実施例に係るデータ処理装置
10を適用した画像処理装置(図示しない)によりテク
スチャ・マップを行う場合に、読み出し要求部3が実行
する処理手順をフローチャートの形式で示している。以
下、このフローチャートに従って、読み出し要求部3の
動作について説明する。
【0098】まず、テクスチャ座標(s,t,q)、テ
クスチャ座標の画面上での横方向の変化分(dsdx,
dtdx,dqdx)、テクスチャ座標の画面上での縦
方向の変化分(dsdy,dtdy,dqdy)を、D
01を介して取得する(ステップS51)。
【0099】次いで、D01を介して取得したテクスチ
ャ座標とその縦/横方向の変化分から、テクスチャのア
ドレスを計算する(ステップS52)。
【0100】テクスチャのアドレス計算に際し、まず、
テクスチャ座標(s,t,q)に対してパースペクティ
ブ・コレクションを行ない、正規化テクスチャ座標
(s,t)を得る(ステップS52A)。正規化テクス
チャ座標の座標値は、以下の式により求めることができ
る。
【0101】
【数7】s=s/q t=t/q
【0102】次いで、LODを正規化テクスチャ座標や
その縦方向/横方向の変化分から算出する(ステップS
52B)。
【0103】LODの求め方には様々な方法が考えられ
るが、例えば以下の式により求めることができる。
【0104】
【数8】 dudx=(dsdx×q−dqdx×s)/q2 dvdx=(dtdx×q−dqdx×t)/q2 dudy=(dsdy×q−dqdy×s)/q2 dvdy=(dtdy×q−dqdy×t)/q2 LOD=log2(max(dudx,dvdx,du
dy,dvdy))
【0105】次いで、正規化テクスチャ座標(s,t)
とLODより、メモリ内アドレスaddrを求める(ス
テップS52C)。これは、アドレッシング方法に依存
するが、例えば以下の式のように求めることができる。
【0106】
【数9】addr=s+t×マップの幅+ベース・アド
レス(LOD)
【0107】そして、R12を介してアドレスaddr
をメモリ部2に対して発行する(ステップS53)。
【0108】また、図6には、本実施例に係るデータ処
理装置10を適用した画像処理装置(図示しない)によ
りテクスチャ・マップを行う場合に、演算処理部1が実
行する処理手順をフローチャートの形式で示している。
以下、このフローチャートを参照しながら、演算処理部
1の動作について説明する。
【0109】まず、カラー値をD01から取得する(ス
テップS61)。
【0110】次いで、テクスチャをD21から取得する
(ステップS62)。
【0111】次いで、テクスチャとカラー値とから描画
カラー値を計算する(ステップS63)。
【0112】そして、算出した描画カラー値を、D10
を介して描画系に出力する(ステップS64)。
【0113】また、図7には、本実施例に係るデータ処
理装置10を適用した画像処理装置(図示しない)によ
り環境マップを行う場合に、読み出し要求部3が実行す
る処理手順をフローチャートの形式で示している。以
下、このフローチャートに従って、読み出し要求部3の
動作について説明する。
【0114】まず、視線の反射ベクトル(vx,vy,
vz)を、D01を介して取得する(ステップS7
1)。
【0115】次いで、D01を介して取得した視線の反
射ベクトルから、テクスチャのアドレスを計算する(ス
テップS72)。
【0116】テクスチャのアドレス計算に際し、まず、
視線の反射ベクトル(vx,vy,vz)から6面体マ
ップの面番号face及びテクスチャ座標(s,t)を
計算する(ステップS72A)。
【0117】6面体マップの面番号face及びテクス
チャ座標(s,t)の計算は、例えば、以下の[数1
0]に擬似コード形式で示す手順に従って並べ替えと符
号変化を行った後、[数11]に示す式により算出する
ことができる。なお、(s,t)の範囲を−1〜1であ
ったものを0〜1に変換する処理も下式[数11]で行
なっている。
【0118】
【数10】 if (|vx|=max(|vx|,|vy|,|vz|)) { vc=vx if (vc≧0) { face=0 va=vz vb=vy } else { face=1 va=vz vb=−vy } } else if (|vx|=max(|vx|,|vy|,|vz|)) { vc=vy if (vc≧0) { face=2 va=vz vb=−vx } else { face=3 va=−vz vb=−vx } else { vc=vz if (vc≧0) { face=4 va=−vx vb=vy } else { face=5 va=−vx vb=−vy } }
【0119】
【数11】s=(va/vc+1)/2 t=(vb/vc+1)/2
【0120】次いで、テクスチャ座標テクスチャ座標
(s,t)と面番号faceより、メモリ内アドレスa
ddrを求める(ステップS72B)。これは、アドレ
ッシング方法に依存するが、例えば以下の式のように求
めることができる。
【0121】
【数12】addr=s+t×マップの幅+ベース・ア
ドレス(face)
【0122】次いで、算出したアドレスを、R12を介
してメモリ部2に対して出力する(ステップS73)。
【0123】また、図8には、本実施例に係るデータ処
理装置10を適用した画像処理装置(図示しない)によ
り環境マップを行う場合に、演算処理部1が実行する処
理手順をフローチャートの形式で示している。以下、こ
のフローチャートに従って、演算処理部1の動作につい
て説明する。
【0124】まず、カラー値をD01から取得する(ス
テップS81)。
【0125】次いで、テクスチャをD21から取得する
(ステップS82)。
【0126】次いで、テクスチャとカラー値とから描画
カラー値を計算する(ステップS83)。
【0127】そして、算出した描画カラー値を、D10
を介して描画系に出力する(ステップS84)。
【0128】[追補]以上、特定の実施例を参照しなが
ら、本発明について詳解してきた。しかしながら、本発
明の要旨を逸脱しない範囲で当業者が該実施例の修正や
代用を成し得ることは自明である。すなわち、例示とい
う形態で本発明を開示してきたのであり、限定的に解釈
されるべきではない。本発明の要旨を判断するために
は、冒頭に記載した特許請求の範囲の欄を参酌すべきで
ある。
【0129】
【発明の効果】以上詳記したように、本発明によれば、
あらかじめメモリ上に格納された必要なパラメータを取
り出してから演算を好適に行なうことができる、優れた
データ処理装置及び方法を提供することができる。
【0130】また、本発明によれば、メモリ上にあらか
じめ格納された演算処理に必要な2次パラメータの取得
に伴う時間を短縮することにより、高速に演算処理を行
うことができる、優れたデータ処理装置及び方法、並び
に、画像処理装置及び方法を提供することができる。
【0131】本発明によれば、実際の演算処理を行なう
演算処理部を経由することなく、メモリ部に対してアド
レスを直接発行することで、演算処理に必要な2次パラ
メータの取得に伴う時間を短縮して、高速に演算処理を
行うことができる。
【0132】また、本発明を画像処理に適用した場合、
実際の色計算を行う演算処理部を経由することなく、テ
クスチャ座標のパースペクティブ・コレクション、LO
Dの算出を行ない、アドレスを算出するので、テクスチ
ャ・マップを高速に行なうことができる。
【0133】また、本発明を画像処理に適用した場合、
実際の色計算を行う演算処理部を経由することなく、6
面体マップの面番号及びテクスチャ座標のの算出を行な
い、アドレスを算出するので、環境マップを高速に行な
うことができる。
【図面の簡単な説明】
【図1】本発明の実施に供されるデータ処理装置10の
機能構成を模式的に示した図である。
【図2】読み出し要求部3において実行される処理手順
を示したフローチャートである。
【図3】演算処理部1において実行される処理手順を示
したフローチャートである。
【図4】図3に示した処理フローの各ステップに要する
時間を模式的に示したタイム・チャートである。
【図5】本実施例に係るデータ処理装置10を適用した
画像処理装置によりテクスチャ・マップを行う場合に、
読み出し要求部3が実行する処理手順を示したフローチ
ャートである。
【図6】6本実施例に係るデータ処理装置10を適用し
た画像処理装置によりテクスチャ・マップを行う場合
に、演算処理部1が実行する処理手順を示したフローチ
ャートである。
【図7】本実施例に係るデータ処理装置10を適用した
画像処理装置により環境マップを行う場合に、読み出し
要求部3が実行する処理手順を示したフローチャートで
ある。
【図8】本実施例に係るデータ処理装置10を適用した
画像処理装置により環境マップを行う場合に、演算処理
部1が実行する処理手順を示したフローチャートであ
る。
【図9】パイプライン制御の仕組みを模式的に示した図
である。
【図10】パラメータ・テーブルを参照するデータ処理
装置50(従来例)の機能構成を示した図である。
【図11】演算処理部51において実行される処理手順
を示したフローチャートである。
【図12】図11に示した処理手順をテクスチャ・マッ
プに適用した場合の例を示した図である。
【図13】図11に示した処理フローについての、環境
マップの実現方法を示したフローチャートである。
【図14】図11に示した処理フローの各ステップに要
する時間を模式的に示したタイム・チャートである。
【符号の説明】
1…演算処理部 2…メモリ部 3…読み出し要求部 10…データ処理装置(本実施例) 50…データ処理装置(従来例) 51…演算処理部 52…メモリ部
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5B047 AB04 EA01 EB12 5B057 CA01 CA08 CA12 CA16 CB01 CB08 CB13 CB16 CC01 CD14 CE17 CH20 5B080 CA09 GA22

Claims (15)

    【特許請求の範囲】
  1. 【請求項1】演算処理を行なう演算処理部と、 演算に必要なパラメータを格納するメモリ部と、 演算に必要なパラメータの読み出し要求を前記メモリ部
    に対して発行する読み出し要求部とを備え、 前記読み出し要求部は前記演算処理部が必要なパラメー
    タの読み出し要求を前記メモリ部に対して発行し、前記
    メモリ部は該読み出し要求に応答して要求されたパラメ
    ータを前記演算処理部に出力する、ことを特徴とするデ
    ータ処理装置。
  2. 【請求項2】前記読み出し要求部は、前記演算処理部が
    必要とするパラメータのアドレスが事前に分かる場合の
    み前記メモリ部に対する読み出し要求を発行することを
    特徴とする請求項1に記載のデータ処理装置。
  3. 【請求項3】前記演算処理部は演算処理の途中結果を前
    記読み出し要求部に出力し、 前記読み出し要求部は該演算処理の途中結果を基に前記
    メモリ部に対してパラメータの読み出し要求を発行す
    る、 ことを特徴とする請求項1に記載のデータ処理装置。
  4. 【請求項4】演算処理部及び/又は読み出し要求部を複
    数備えたことを特徴とする請求項1に記載のデータ処理
    装置。
  5. 【請求項5】演算処理部及び/又は読み出し要求部の少
    なくとも一部をプログラム・コードに従って処理動作を
    プログラム可能に構成したことを特徴とする請求項1に
    記載のデータ処理装置。
  6. 【請求項6】前記演算処理部は、ピクセルに対する色計
    算を行うことを特徴とする請求項1に記載のデータ処理
    装置。
  7. 【請求項7】前記読み出し要求部は、テクスチャ座標に
    対するパースペクティブ・コレクション、LOD(Leve
    l Of Detail)の算出、並びに2次元マップ内のアドレ
    スの算出により、前記メモリ部に対する2次元マップの
    参照を行なうことを特徴とする請求項1に記載のデータ
    処理装置。
  8. 【請求項8】前記読み出し要求部は、6面体の面番号の
    算出、テクスチャ座標の算出、並びに6面体マップ内ア
    ドレスの算出により、前記メモリ部に対する6面体マッ
    プの参照を行なうことを特徴とする請求項1に記載のデ
    ータ処理装置。
  9. 【請求項9】演算に必要なパラメータをメモリから読み
    出して所定の演算処理を行なうデータ処理方法であっ
    て、 演算処理に必要なパラメータの読み出し要求を前記メモ
    リに対して発行する読み出し要求ステップと、 該読み出し要求に応答して前記メモリから読み出された
    パラメータを用いて演算処理を行なう演算処理ステップ
    と、 を具備することを特徴とするデータ処理方法。
  10. 【請求項10】前記読み出し要求ステップでは、演算処
    理に必要なパラメータのアドレスが事前に分かる場合の
    み前記メモリに対する読み出し要求を発行することを特
    徴とする請求項9に記載のデータ処理方法。
  11. 【請求項11】前記読み出し要求では、前記演算処理ス
    テップにおける演算処理の途中結果を基に前記メモリに
    対するパラメータの読み出し要求を発行することを特徴
    とする請求項9に記載のデータ処理方法。
  12. 【請求項12】前記演算処理ステップではピクセルに対
    する色計算を行なうことを特徴とする請求項9に記載の
    データ処理方法。
  13. 【請求項13】前記読み出し要求ステップでは、テクス
    チャ座標に対するパースペクティブ・コレクション、L
    OD(Level Of Detail)の算出、並びに2次元マップ
    内のアドレスの算出により、前記メモリ部に対する2次
    元マップの参照を行なうことを特徴とする請求項9に記
    載のデータ処理方法。
  14. 【請求項14】前記読み出し要求ステップでは、6面体
    の面番号の算出、テクスチャ座標の算出、並びに6面体
    マップ内アドレスの算出により、前記メモリ部に対する
    6面体マップの参照を行なうことを特徴とする請求項9
    に記載のデータ処理方法。
  15. 【請求項15】演算に必要なパラメータをメモリから読
    み出して所定の演算処理を行なうデータ処理をコンピュ
    ータ・システム上で実行するように記述されたコンピュ
    ータ・ソフトウェアをコンピュータ可読形式で物理的に
    格納した記憶媒体であって、前記コンピュータ・ソフト
    ウェアは、 演算処理に必要なパラメータの読み出し要求を前記メモ
    リに対して発行する読み出し要求ステップと、 該読み出し要求に応答して前記メモリから読み出された
    パラメータを用いて演算処理を行なう演算処理ステップ
    と、を具備することを特徴とする記憶媒体。
JP2000218922A 2000-07-19 2000-07-19 データ処理装置及びデータ処理方法、並びに記憶媒体 Pending JP2002032779A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000218922A JP2002032779A (ja) 2000-07-19 2000-07-19 データ処理装置及びデータ処理方法、並びに記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000218922A JP2002032779A (ja) 2000-07-19 2000-07-19 データ処理装置及びデータ処理方法、並びに記憶媒体

Publications (1)

Publication Number Publication Date
JP2002032779A true JP2002032779A (ja) 2002-01-31

Family

ID=18713798

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000218922A Pending JP2002032779A (ja) 2000-07-19 2000-07-19 データ処理装置及びデータ処理方法、並びに記憶媒体

Country Status (1)

Country Link
JP (1) JP2002032779A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005101320A1 (ja) * 2004-04-13 2005-10-27 Sony Computer Entertainment Inc. 画像生成装置および画像生成方法
US7719544B2 (en) 2002-06-20 2010-05-18 Microsoft Corporation Systems and methods for providing controllable texture sampling

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7719544B2 (en) 2002-06-20 2010-05-18 Microsoft Corporation Systems and methods for providing controllable texture sampling
WO2005101320A1 (ja) * 2004-04-13 2005-10-27 Sony Computer Entertainment Inc. 画像生成装置および画像生成方法
US8319789B2 (en) 2004-04-13 2012-11-27 Sony Computer Entertainment Inc. Image generation device and image generation method

Similar Documents

Publication Publication Date Title
TW504660B (en) Method and apparatus for texture level of detail dithering
JP2008176788A (ja) 3次元グラフィック加速器及びそのピクセル分配方法
KR100277803B1 (ko) 3차원 그래픽 표시장치
US6339430B1 (en) Video game machine and method for changing texture of models
JP3349871B2 (ja) 画像処理装置
JP2002032779A (ja) データ処理装置及びデータ処理方法、並びに記憶媒体
JP3350473B2 (ja) オクルージョンカリングを行う3次元グラフィックス描画装置および方法
US6522337B1 (en) Image processing apparatus, image processing method, and recording medium
JP2001022781A5 (ja)
JPH06274653A (ja) グラフィック表示装置
TW484113B (en) Method and apparatus for ensuring backward compatibility in a bucket rendering system
US9437031B2 (en) Virtual memory based noise textures
JP2007122188A (ja) 画像形成装置及び画像処理方法、並びにプログラム
CN113064539A (zh) 特效控制方法、装置、电子设备及存储介质
JP4869290B2 (ja) プログラム可能なオフセット位置を用いてテクスチャサンプルを処理するための方法及びシステム
JP3110975B2 (ja) 文字マスク機能付表示装置
JP3422278B2 (ja) グラフィックアクセラレータ
JP2726746B2 (ja) 図形情報管理方法およびシステム
JPH09244527A (ja) 地図シミュレーション結果の表示方法
JP3330841B2 (ja) 三次元画像生成方法及びその装置
JP3306139B2 (ja) 画像処理装置およびゲーム機
JP3971448B2 (ja) 描画装置及び描画方法
JP2003187260A (ja) 描画処理プログラム、描画処理プログラムを記録した記録媒体、描画処理装置及び方法
KR20080064528A (ko) 3차원 그래픽 가속기 그리고 텍스쳐 데이터 패치 방법
JPH06150017A (ja) 三次元図形表示装置