JPH08161509A - テクスチャ・マッピングを行うコンピュータ・システム - Google Patents

テクスチャ・マッピングを行うコンピュータ・システム

Info

Publication number
JPH08161509A
JPH08161509A JP6298618A JP29861894A JPH08161509A JP H08161509 A JPH08161509 A JP H08161509A JP 6298618 A JP6298618 A JP 6298618A JP 29861894 A JP29861894 A JP 29861894A JP H08161509 A JPH08161509 A JP H08161509A
Authority
JP
Japan
Prior art keywords
texture
texel
memory
pixel
value
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.)
Granted
Application number
JP6298618A
Other languages
English (en)
Other versions
JP2637931B2 (ja
Inventor
Katsura Kawase
桂 川瀬
Nobuyasu Tanaka
伸宜 田中
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP6298618A priority Critical patent/JP2637931B2/ja
Priority to US08/566,244 priority patent/US5767858A/en
Publication of JPH08161509A publication Critical patent/JPH08161509A/ja
Application granted granted Critical
Publication of JP2637931B2 publication Critical patent/JP2637931B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping

Abstract

(57)【要約】 【目的】 【構成】複数のテクセルからなるテクスチャ・イメージ
・データをインターリーブして重複がないように各々の
メモリに格納する複数のテクスチャ・メモリ・クラスタ
であって、1のピクセルに対するテクスチャ・イメージ
の座標から、その座標に対応するテクスチャ値を計算す
るのに必要なテクセルを求め、そのテクセル値を複数の
テクスチャ・メモリ・クラスタから収集する収集手段
と、収集したテクセル値から1のピクセルに対するテク
スチャ値を計算する手段とをそれぞれ有するものと、複
数のメモリ・クラスタを接続するバスと、複数のメモリ
・クラスタのうちの1つにそれぞれ接続され、1のピク
セルに対するテクスチャ・イメージの座標を計算する複
数のテクスチャ生成器とを有する。 【効果】メモリに重複するテクセルを保持することな
く、効率的にテクセル値を各メモリ・クラスタ間で交換
できる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、コンピュータ・グラフ
ィクス装置にかかり、特に、コンピュータを用いて所定
の領域へ模様等を張り付けるテクスチャ・マッピングを
用いたコンピュータ・グラフィクス装置に関する。
【0002】
【従来の技術】コンピュータ・グラフィクスでは、様々
な模様、すなわちイメージ(Texture,テクスチャ)を張
り付けるテクスチャ・マッピング(Texture Mapping) に
よって画像を形成することがある。テクスチャ・マッピ
ング(Texture Mapping) とは、滑らかな平面や曲面上
に、木目やスイカの表面の縞模様等の厚みのないパター
ンやイメージ(Texture) を張ること(Mapping、以下、マ
ッピングという。) である。例えば、フライト・シミュ
レータ(米国マイクロソフト社の商標)は、予め撮影し
ておいた景色の写真イメージを背景部分にテクスチャ・
マッピングすることで、仮想現実的な映像を高速で提供
している。
【0003】しかしながら、このテクスチャ・マッピン
グは大量のデータ・アクセス及び演算量を必要とするの
で、実時間処理するためには、広いバンド幅を有するテ
クスチャ・メモリ及び専用のハードウェアを必要として
いた。このテクスチャ・メモリは、張り付けるべきパタ
ーンや背景等のイメージを表す2次元の配列データ(以
下、テクスチャ・イメージ・データという。)を記憶す
るためのメモリである。このテクスチャ・メモリは、高
速なアクセスを必要とすると共に大容量を必要とするた
めに、コスト高であった。
【0004】近年のコンピュータの大容量化、小型化及
び高速化の加速に伴って、コンピュータ・グラフィクス
を利用するコンピュータ・システムでは、高速かつ高効
率にテクスチャ・マッピングが可能なハードウェアを低
価格で提供することが要求されると共に、課題となって
いる。以下、テクスチャ・マッピングについて詳述す
る。
【0005】[テクスチャ・マッピングにおける座標系]
コンピュータ・グラフィクスでは、次の3種類の座標系
を用いて物体を表現することが一般的である。
【0006】第1の座標系は、モデル座標系(Model co
ordinate system)である。このモデル座標系は、個々
の物体に固有な座標系、すなわち、物体を記述するのに
適宜選択される座標系である。図5(A)には、一例と
して、X軸、Y軸、Z軸の各々が直交する直交座標系に
おける、物体としての立方体OBを示した。
【0007】第2の座標系は、視点座標系(Eye coordi
nate system)である。この視点座標系は、物体を実質
的に目視した時の目の位置に合致された座標系、すなわ
ち、図5(C)に示すように、視線と1つの座標軸とが
合致する座標系である。
【0008】第3の座標系は、スクリーン座標系(Scre
en coordinate system)である。このスクリーン座標系
は、図5(D)に示すように、物体を含む3次元のシー
ンが投影された2次元のスクリーンSC(図5(C)参
照)における座標系である。図5(C)おけるスクリー
ン座標系は、直交する横軸のX_S軸、及び縦軸のY_
S軸によって構成されている。
【0009】テクスチャ・マッピングにおいては、上記
の3種類の座標系の他に、図5(B)に示すように、テ
クスチャ・イメージ・データを記述するための座標系
(以下、テクスチャ座標系:Texture coordinate syste
m、という。)が必要である。図5(B)におけるテク
スチャ座標系は、直交する横軸のU軸、及び縦軸のV軸
によって構成されている。テクスチャ・マッピングの実
質的な動作は、スクリーン座標系で本来の物体の色を描
画すべき点に、テクスチャ座標で指定されるテクスチャ
・イメージ・データの色を描画することである。
【0010】上記のモデル座標系は、複数の基本的物体
を組み合わせた複雑な物体を扱うときに、便宜上、各基
本的物体を簡単に記述するための座標系である。従っ
て、複雑な物体に対してテクスチャ・マッピングをして
スクリーン座標系で記述するためには、これら複数の基
本的物体を纏めた複雑な物体を視点座標系に直す。ここ
では、立方体OBに対して、上面にシェーディング(Sh
ading)をすると共に、側面にテクスチャ・マッピング
する場合を説明する(図5(C)の立方体OB1参
照)。この後に、記述された複数の基本的物体をスクリ
ーンSCに投影することを想定する。この時点では、複
雑な物体(立方体OB1 )はスクリーン座標系で記述さ
れる。なお、以下の説明を簡単にするため、取り扱う物
体は、既にスクリーン座標系に変換されているものとす
る。
【0011】[テクスチャ・マッピングの詳細]図6
(A)に示すように、テクスチャ・イメージ・データ
は、平面上に単位正方形(1辺の長さが1の正方形)が
縦横に配置され、所定の大きさの正方形(図6(A)で
は、8×8の単位正方形で形成される正方形領域)を形
成している。この格子点、すなわち、i番目の列(i:
0≦i≦7)でj番目の行(j:0≦j≦7)に対応す
る格子点(図中の×マーク)を中心とする各々の単位正
方形の中心には、張り付けるべきイメージの色情報が格
納されている。
【0012】以下、これらの各単位正方形をテクセル、
単位正方形の中心をテクセル中心、テクセル中心に格納
されている色情報をテクセル値、及びテクセルが配置さ
れた所定の大きさの正方形領域をテクスチャという。ま
た、テクスチャの一辺に含まれるテクセルの個数(図6
(A)では、8個)をテクスチャのサイズという。以下
の説明を簡略にするため、j番目の行でかつi番目の列
のテクセル(i,j)のテクセル値をT[i,j]と略
記する。
【0013】次に、テクスチャを曲面に張り付ける場
合、通常の曲面はポリゴン分割されていており、視点座
標系ではテクスチャ・マッピングとはポリゴンとテクス
チャの間の線形変換になる。これによって、ポリゴン上
の各点とテクスチャ内の各点は厳密に1対1で対応し、
さらに、この対応はテクスチャをポリゴンに張り付ける
時点で完全に決定できる。最終的には、画面上(スクリ
ーン上)に投影されたポリゴン内の各ピクセルの色を決
定しなければならない。従って、スクリーン座標系は視
点座標系の各ピクセルとテクスチャ内の各テクセルの間
で対応しなければならないが、スクリーン座標系は視点
座標系をスクリーンSC上に投影したものであるので、
ピクセル(x_s,y_s)に対応するテクスチャ内の
点P(u,v)の座標は定まっている。この対応を用い
てピクセル(x_s,y_s)の色を決定する。一般に
用いられている色決定のアルゴリズムは、オリジナルの
テクスチャ・イメージ・データと以下に説明するミップ
マップ(Mipmap)と呼ばれるオリジナル・データをさら
に加工したデータを用いる方法、及びミップマップを用
いずにオリジナルのテクスチャ・イメージ・データ等を
用いる方法に大別される。
【0014】ミップマップを用いない方法には2つの方
法があり、その1つは点Pを含むテクセルのテクセル値
をピクセルの色とする方法である。すなわち、点Pに最
も近いテクスチャ内のテクセル(i0 ,j0 )のテクセ
ル値T[i0,j0 ]をピクセルの色とする。引数i0
0は各々u+0.5,v+0.5の整数部として求め
ることができる。これは3次元グラフィクス・インタフ
ェイスのAPI(Application Program Interface )の
1種であるOpenGL(Mar Segal,Akeley, The OpenGL Grap
hics System:A Specification Version 1.0) では、テ
クセル・ニアレスト(Texel Nearest)と呼ばれる方法
である。
【0015】しかしながら、テクスチャ・マッピングさ
れるポリゴンが近くにあり、スクリーン座標系上では非
常に拡大される場合、1つのテクセル値が多数のピクセ
ルに対応することになるので、タイルをはったようにな
り、ギザギザを生ずる。
【0016】他の方法は、上記を改良した第2のテクセ
ル・リニア・インタポーレイテッド(Texel Linear Int
erpolated 、略して、Texel Linearともいう。以下、テ
クセルリニアという)である。この場合、図6(A)に
示すように、点Pを囲む4つのテクセルの値を線形補間
するというものである。すなわち、点P(u,v)を囲
むテクセル中心を(i0 ,j0 ),(i0 +1,j
0 ),(i0 ,j0 +1),(i0 +1,j0 +1)
(図中の太線の×マーク)としてa=uの少数部分、b
=vの少数部分とおいたときに、以下の式で得られる値
をピクセルの色とするものである。 (1-a)×(1-b) ×T[i0 ,j0]+(1-a) ×b ×T[i0 ,j0+1] + a ×(1-b) ×T[i0+1,j0]+ a ×b ×T[i0+1,j0+1] 引数i0 ,j0 はu,vの整数部分として求めることが
できる。他の方法は上式から理解されるように線形補間
を2回続けて行った場合と等価であるのでバイリニアと
もいう。
【0017】次に、ミップマップを用いる方法を説明す
る。上記の方法では、投影されたポリゴン上の各点にお
けるテクセルの縮小拡大率がピクセルの位置によって大
きく変化するので、スクリーンとのなす角度が大きなポ
リゴンが投影された時に不都合を生ずる。すなわち、ス
クリーン上極端に縮小されるテクセルに対しては上記の
ように4テクセルの重みつき平均では足りず、多くのテ
クセルが必要である。この必要とするテクセルは、ピク
セル−テクセル間の縮小拡大率(Level Of Detail,ピク
セルとテクセルの対応関係から演算できる。線型補間計
算を行う時に必ず生ずる。以下、LODという。)から
求めることができる。このようにピクセル毎に平均のと
り方を変化させる方法(コンボリューションと呼ばれる
方法)は効果的だが、効率的でなく、実装が困難である
ので以下に説明するミップマップを用いて代用するのが
一般的である。
【0018】ミップマップは、先ずオリジナルのテクス
チャ中のテクセルを、図6(A)の太線で囲まれる縦横
2個ずつのテクセルをブロックに纏める。次に、ブロッ
ク内に含まれる4つのテクセルのテクセル値を平均する
ことによってブロックのテクセル値を求める。次に、図
6(B)に示すように、求めたテクセル値に対応させる
ための新しい1つのテクセルを生成すると共に、元のテ
クスチャにおけるブロックの順序に配列し、全てのブロ
ックについて行うことによって新しいテクスチャを生成
する。このブロックで纏めることにより生成された新し
いテクスチャと、生成前のオリジナル・テクスチャとを
区別するために、オリジナル・テクスチャ(図6
(A))をレベル0のミップマップ、そしてここではサ
イズが半分になった新しいテクスチャ(図6(B))を
レベル1のミップマップという。次に、レベル1のミッ
プマップを同様に処理してレベル2のミップマップを生
成する。この生成されたテクスチャが、サイズ1のテク
スチャになるまで上記と同様の処理を繰り返し、高レベ
ルのミップマップを生成する。なお、このときのテクセ
ル値がミップマップのレベルに依存することは勿論であ
る。これを表すため上記の記号を拡張してレベルkのミ
ップマップ中のテクセル(i,j)のテクセル値をT
[i,j:k]と表記する。
【0019】このミップマップを使ってテクスチャ・マ
ッピングするのに先だって、上記のLODから用いるべ
きミップマップのレベルを決定しなければならない。Op
enGLでは細かい規定がなされているが、ここでは必要な
部分のみに簡単化して説明する。上記のテクセル・ニア
レスト、テクセル・リニアと同様にミップマップ・ニア
レスト、ミップマップ・リニアの概念があり、合計4種
類のテクセル・ミップマップ法がある。なお、各レベル
のミップマップ中のピクセルに対応する点の座標P
(u,v)はレベルkに依存したP(uk ,vk )とな
るので、注意しなければならない。
【0020】次に、テクセル・ミップマップ法の4種類
1から4の各々を説明する。 1.ニアレスト−ミップマップ−ニアレスト(Nearest-M
ipmap-Nearest) k=(LOD+0.5の整数部分)としてレベルkのミ
ップマップ中にピクセルに対応する点Pk (u,v)を
求め、点Pk を含むテクセル値T[i0 ,j0:k]を
ピクセルの色とする。 2.リニア−ミップマップ−ニアレスト(Liner-Mipmap-
Nearest) k=(LOD+0.5の整数部分)としてレベルkのミ
ップマップ中にピクセルに対応する点Pk (uk ,v
k )を求め、点Pk を囲む4つのテクセルのテクセル値
を線形補間する。これは「レベルk」ということ以外は
上記で説明したテクセルリニアと同様である。 3.ニアレスト−ミップマップ−リニア(Nearest-Mipma
p-Liner) k=(LODの整数部分)としてレベルkとレベルk+
1の各々のミップマップ中のピクセルに対応する点:P
k ,Pk+1 を各々含むテクセルのテクセル値をd=(L
ODの少数部分)を内分比として線形補間する。 4.リニア−ミップマップ−リニア(Liner-Mipmap-Line
r) k=(LODの整数部分)とする。レベルkのミップマ
ップ中のピクセルに対応する点Pk を含む4つのテクセ
ルのテクセル値を線形補間した(テクセルリニア)結果
と、レベルk+1のミップマップ中のピクセルに対応す
る点Pk+1 を含む4つのテクセルのテクセル値を線形補
間した(テクセルリニア)結果を、d=(LODの少数
部分)を内分比として線形補間(ミップマップリニア)
する。
【0021】以上説明したようなミップマップ法を用い
て、高速にテクスチャ・マッピングを行うためのコンピ
ュータ・グラフィクス装置には、次の点が要求される。 ・テクスチャ・メモリの容量が大きいこと ・テクスチャ・メモリとして用いるメモリのアクセス速
度が高速なこと ・テクスチャ・メモリを効率的に利用すること
【0022】容量の点を考えると、テクスチャ・メモリ
はテクスチャのテクスチャ・イメージ・データを格納す
る関係上、数Mバイトの容量が必要である。このため、
テクスチャ・メモリには一般的に低コストのDRAMが
用いられる。
【0023】そして速度の点を考えると、このDRAM
のサイクルタイムは80ns程度なので、12.5Mテ
クセル/秒程度で動作させることができる。但し、上記
で述べたようにリニア−ミップマップ−リニア方式では
同時に8つのテクセル値を参照しなければならない。8
つのテクセル値を同時に参照するには、ミップマップの
レベル毎にインターリーブをかけ、さらに各々のレベル
をi,jごとにインターリーブして8つのメモリに格納
してリニア−ミップマップ−リニアに必要なテクセル値
を同時に参照できるような構成にしなければならない。
そうしないと、100Mテクセル/秒程度のアクセス速
度を出すことができない。
【0024】また、線形補間の計算をする回路(補間回
路、Interpolator)が8つのメモリチップに直結してい
る必要がある。各メモリチップに対するアドレスバスと
各メモリチップから補間回路へのデータバスのビット幅
は、アドレスが20ビット、テクスチャ・イメージ・デ
ータが16ビットとしても、(20+16)×8=28
8ビットとなり、配線が複雑化すると共に、チップのピ
ンネック(1チップから出すことのできる信号線の制
限)という問題も発生する。
【0025】[従来例]上記の要求を満たす一例として、
コンピュータ・グラフィクス装置に対応するテクスチャ
・マッピング処理方法がある(特開昭62−14018
1号公報参照)。このテクスチャ・マッピング処理方法
では、プロセッサ素子内部にテクスチャ・イメージ・デ
ータを分割して有し、プロセッサ間通信路を介して他の
プロセッサ素子内部のテクスチャ・イメージ・データを
受けとっている。
【0026】しかしながら、このコンピュータ・グラフ
ィクス装置では、次のような問題がある。 ・基本的にソフトウエアによって処理するための機構で
あり、動作が複雑でハードウエア化が困難であり、高速
動作が期待できない。 ・描画を処理する部分とテクスチャを処理する部分が1
対1に対応しているので、各々の比率を変化できない。
このため、描画プリミティブの種類や大きさ、それに貼
付けるテクスチャイメージの大きさに対する、パフォー
マンス要求に対して、テクスチャを処理する部分の量を
変化させることができない。 ・他のプロセッサ素子に対してプロセッサ間通信路を介
して、表示すべき画素の情報を送り、その送信した情報
に基づく演算結果を受けとるというプロトコルなので、
プロトコルのオーバーヘッドが大きい。また、ミップマ
ップを用いた方法を直接適用しようとすると、テクセル
を全く重複しないように保持することができないので、
各プロセッサ内のメモリの容量が大きくなければならな
い。
【0027】また、他例であるコンピュータ・グラフィ
クス装置として、リアリティ・エンジン・グラフィクス
(Reality Engine Graphics、COMPUTER GRAPHICS Procee
dings,Annual Conference Series,1993pp-116 参照)が
ある。
【0028】図7に示すように、このコンピュータ・グ
ラフィクス装置90は、コマンド・プロセッサ12を備
えている。コマンド・プロセッサ12は、コマンド・バ
ス16を介してフラグメント生成器(Fragment Generato
r)72、74、76、78に接続されている。
【0029】フラグメント生成器72の出力側の一方は
テクスチャ・メモリとしてのテクスチャ・メモリ・クラ
スタ(TEXTURE MEMORY CLUSTER)22を介して描画プロセ
ッサ(Drawing Processor) 42に接続されており、出力
側の他方は描画プロセッサ42に直接接続されている。
描画プロセッサ42はフレーム・バッファ52に接続さ
れている。このフレーム・バッファ52の出力側は、デ
ィスプレイ60に接続されている。テクスチャ・メモリ
・クラスタ22は、アドレス生成器62、メモリ(メモ
リ・バンク)64A,64B,64C,64D,64
E,64F,64G,64H及びフィルタ66から構成
されており、アドレス生成器62は各メモリ64A〜6
4Hに接続され、各メモリ64A〜64Hはフィルタ6
6に接続されている。
【0030】また、フラグメント生成器74の出力側の
一方はテクスチャ・メモリ・クラスタ24を介してフレ
ーム・バッファ54に接続された描画プロセッサ44に
接続されており、他方は描画プロセッサ44に直接接続
されている。同様に、フラグメント生成器76の一方は
テクスチャ・メモリ・クラスタ26を介してフレーム・
バッファ56に接続された描画プロセッサ46に接続さ
れており、他方は描画プロセッサ46に直接接続されて
いる。フラグメント生成器78の出力側の一方はテクス
チャ・メモリ・クラスタ28を介してフレーム・バッフ
ァ58に接続された描画プロセッサ48に接続されてお
り、他方は描画プロセッサ48に直接接続されている。
また、上記のフレーム・バッファ54、56、58の出
力側は、ディスプレイ60に接続されている。
【0031】なお、テクスチャ・メモリ・クラスタ2
4、26、28は、テクスチャ・メモリ・クラスタ22
と同様の構成のため、詳細な説明を省略する。
【0032】また、このコンピュータ・グラフィクス装
置90では、スクリーンについて縦方向を4列に分割し
て、分割された各々に属するピクセルをテクスチャ・メ
モリ・クラスタ22、24、26、28が担当し処理し
ている。
【0033】次に、コンピュータ・グラフィクス装置9
0の動作を説明する。先ず、コマンド・プロセッサ12
は、その下流にあるフラグメント生成器72〜78、テ
クスチャ・メモリ・クラスタ22〜28、及び描画プロ
セッサ42〜48の各プロセッサに対する命令を解釈す
ると共に、その命令等をコマンドバス16に出力する。
この命令には、各々のプロセッサ42〜48中の図示し
ないレジスタにデータを格納するコントロール・コマン
ドや描画コマンドがある。スクリーン上における描画
は、三角形単位(ポリゴン単位)で行われる。コマンド・
プロセッサ12は、この描画コマンドを受け取ると、そ
れに続く三角形の頂点単位のデータ(三角形の頂点座標
等)を受け取る。このデータのフォーマットを以下の図
8に示す。 但し、x_s,y_s:三角形の頂点のスクリーン座標
系での座標 R,G,B,A:スクリーンSC上の座標(x_s,y
_s)における色情報 u,v :座標(x_s,y_s)にテクスチャ
・マッピングすべきテクスチャ・イメージ・データのテ
クスチャ座標系における座標
【0034】これらのデータは、フラグメント生成器7
2、74、76、78の各々に、コマンドバス16を介
して同時にブロードキャストされる。各フラグメント生
成器は、得られたデータを補間して三角形内部のピクセ
ル単位のデータを生成する。このとき生成されたピクセ
ルのデータが、フラグメント生成器自身が担当するピク
セルのデータであれば、ピクセル単位に補間されたデー
タ(以下の図9に示す)を、対応する描画プロセッサ4
2〜48に出力する。
【0035】これと共に、フラグメント生成器は,以下
の図10に示すデータ、すなわち、三角形の頂点のスク
リーン座標系での座標、及び座標(x_s,y_s)に
テクスチャ・マッピングすべきテクスチャ・イメージ・
データのテクスチャ座標系における座標(u,v)を、
対応するテクスチャ・メモリ・クラスタに出力する。
【0036】このとき、フラグメント生成器自身が担当
するピクセルでない場合は、描画プロセッサにおいてデ
ータは破棄されるが、ピクセルは必ず何れかのフラグメ
ント生成器が担当しているので、全く処理されないピク
セルが生じることはない。テクスチャ・メモリ・クラス
タのアドレス生成器は、この座標(u,v)に基づい
て、上述した例えばリニア−ミップマップ−リニアの計
算に必要なテクセルを求め、そのテクセルのメモリにお
ける物理アドレスを計算し、出力する。この物理アドレ
スをもとにメモリはテクセル値をフィルタに出力し、フ
ィルタは出力されたテクセル値をもとに例えばリニア−
ミップマップ−リニアに必要な計算を行って、ピクセル
に張り付けるべき、テクスチャ・メモリ・クラスタから
の色情報を、対応する描画プロセッサに出力する。描画
プロセッサでは、予め入力されたピクセルの色情報とテ
クスチャ・メモリ・クラスタからの色情報を考慮して、
対応するフレーム・バッファに格納されている該当ピク
セルの値に反映させる。
【0037】なお、各テクスチャ・メモリ・クラスタ2
2〜28には、予め全て同一の内容のテクスチャ・イメ
ージ・データが重複して格納されている。従って、4つ
のテクスチャ・メモリ・クラスタ22〜28による並列
効果によって性能向上、特に処理速度の高速化を図るこ
とができが、重複してデータを保持すれば高価なメモリ
の容量は増大する。
【0038】
【発明が解決しようとする課題】本発明は、上記事実を
考慮して、コンピュータ・グラフィクス・インタフェイ
スにあるテクスチャ・マッピングの機能を効率良く実行
させることができるコンピュータ・グラフィクス装置を
得ることが目的である。
【0039】特に、必要とするメモリの容量を劇的に減
少させても効率が許容範囲内の悪化で済むシステムを得
ることが目的である。
【0040】
【課題を解決するための手段】上記目的を達成する本発
明は、複数のテクセルからなるテクスチャ・イメージ・
データをインターリーブして重複がないように各々のメ
モリに格納する複数のテクスチャ・メモリ・クラスタで
あって、ある1つのピクセルに対するテクスチャ・イメ
ージの座標から、その座標に対応するテクスチャ値を計
算するのに必要なテクセルを求め、そのテクセルの色情
報であるテクセル値を複数のテクスチャ・メモリ・クラ
スタから収集する収集手段と、収集したテクセル値から
1のピクセルに対するテクスチャ値を計算する手段とを
それぞれ有する複数のテクスチャ・メモリ・クラスタ
と、複数のテクスチャ・メモリ・クラスタを接続するバ
スと、複数のテクスチャ・メモリ・クラスタのうちの1
つにそれぞれ接続され、前述の1のピクセルに対するテ
クスチャ・イメージの座標を計算する複数のテクスチャ
生成器と、複数のテクスチャ・メモリ・クラスタのうち
の1つにそれぞれ接続され、前述の1のピクセルに対す
るテクスチャ値を用いて前述の1のピクセルに表示すべ
きデータを生成する複数の描画プロセッサとを有するテ
クスチャ・マッピングを行うコンピュータ・システムで
ある。このようにすると、各テクスチャ・メモリ・クラ
スタ内のメモリに重複するテクセルを保持することな
く、効率的にテクセル値を各テクスチャ・メモリ・クラ
スタ間で交換することができる。
【0041】また、上述の収集手段は、ある1つのピク
セルに対するテクスチャ・イメージの座標から、その座
標に対応するテクスチャ値を計算するのに必要なテクセ
ルを求め、複数のテクスチャ・メモリ・クラスタに通知
する手段と、メモリを検索し、通知されたテクセルのテ
クセル値を得る検索手段と、テクセル値をテクセルの通
知元のテクスチャ・メモリ・クラスタに送信する手段
と、テクセル値を受信する手段とを含むようにすること
も考えられる。
【0042】さらに、上述のメモリは複数のバンクに別
れており、各バンクは、テクスチャ・メモリ・クラスタ
が格納するテクスチャ・イメージ・データをインターリ
ーブして重複を生じないように格納するようにすること
も考えられる。これにより、同一テクスチャ・メモリ・
クラスタ内のメモリに同一テクセル値を重複して保持す
る、ということを完全に排除することができる。
【0043】また、先の複数のバンクは、入力FIFO
バッファと、出力FIFOバッファとを含むことも考え
られる。このようにすると、テクセルをそのアドレスで
インターリーブして格納した場合に、同一バンクに対す
るアクセスの集中によるパフォーマンス低下を抑えるこ
とができる。
【0044】また、上述の検索手段は、通知されたテク
セルのアドレスを計算する手段と、計算されたアドレス
から該当するメモリのバンクにアドレスを分配する分配
手段と、メモリのバンクからテクセル値を得る手段とを
含むことも考えられる。このように分配することによ
り、効率よくメモリにアクセスすることができる。
【0045】さらに、先の必要なテクセルの通知元のテ
クスチャ・メモリ・クラスタのIDを記憶するFIFO
バッファをテクスチャ・メモリ・クラスタの各々がさら
に有するようすることも考えられる。このようにする
と、必要なテクセルのテクセル値を必要なテクスチャ・
メモリ・クラスタに送信することができる。
【0046】また、先の計算されたアドレスを分配した
前記メモリのバンクのIDを記憶するFIFOバッファ
をテクスチャ・メモリ・クラスタの各々がさらに有する
ようにすることも考えられる。このようにすると、検索
結果を適切なメモリ・バンクから出力させることができ
る。
【0047】さらに、上述の収集手段が、ある1つのピ
クセルに対するテクスチャ・イメージの座標を複数のテ
クスチャ・メモリ・クラスタに通知する手段と、座標か
ら、その座標に対応するテクスチャ値を計算するのに必
要なテクセルであって、自己のメモリが保持するテクセ
ルを計算する手段と、テクセルのテクセル値をメモリか
ら取り出す手段と、テクセル値をテクセルの通知元のテ
クスチャ・メモリ・クラスタに送信する手段と、テクセ
ル値を受信する手段とを含むようにすることも考えられ
る。
【0048】本発明の他の態様としては、複数のテクセ
ルからなるテクスチャ・イメージと、そのテクスチャ・
イメージを1以上の段階で縮小したデータであり且つ1
又は複数のテクセルからなる縮小テクスチャ・イメージ
とを含むテクスチャ・イメージ・データをインターリー
ブして重複を生じないよう各々のメモリに格納する複数
のテクスチャ・メモリ・クラスタであって、ある1つの
ピクセルに対するテクスチャ・イメージの座標及びピク
セルとテクスチャ・イメージのテクセルの縮小率から前
述の1のピクセルに対するテクスチャ値を計算するのに
必要なテクセルを求め、そのテクセルの色情報であるテ
クセルの値を複数のテクスチャ・メモリ・クラスタが出
力するように要求する手段と、要求されたテクセルの値
を検索し、要求したテクスチャ・メモリ・クラスタに出
力する手段と、テクセルの値を収集する手段と、収集さ
れたテクセルの値からテクスチャ値を計算する手段とを
それぞれ有する先の複数のテクスチャ・メモリ・クラス
タと、複数のテスクチャ・メモリ・クラスタを接続する
バスと、複数のテクスチャ・メモリ・クラスタのうちの
1つにそれぞれ接続され、前述の1のピクセルに対する
テクスチャ・イメージの座標及び縮小率を計算する複数
のテクスチャ生成器と、複数のテクスチャ・メモリ・ク
ラスタのうちの1つにそれぞれ接続され、前述の1のピ
クセルに対するテクスチャ値を用いて前述の1のピクセ
ルに表示すべきデータを生成する複数の描画プロセッサ
とを有するテクスチャ・マッピングを行うコンピュータ
・システムがある。これによれば、ミップマップを用い
るようなテクスチャ・マッピングにおいてテクスチャ・
メモリ・クラスタのメモリを有効利用することができ
る。
【0049】
【作用】第1に述べた本発明の構成では、各テクスチャ
生成器が1のピクセルに対するテクスチャ・イメージの
座標を生成して(ラスタライズ)、それぞれに接続され
たテクスチャ・メモリ・クラスタに送る。そして、各テ
クスチャ・メモリ・クラスタでは、収集手段がそのテク
スチャ・イメージの座標から必要なテクスチャ・イメー
ジ・データのテクセルを計算する。そして、そのテクセ
ルを有する、自己を含むテクスチャ・メモリ・クラスタ
からそのテクセルのテクセル値を収集する。必要なテク
セル値を収集できれば、先の1のピクセルに対するテク
スチャ値を計算する。計算されたテクスチャ値は、計算
を行ったテクスチャ・メモリ・クラスタに接続された描
画プロセッサで、その1のピクセルに表示すべきデータ
を計算する時に用いられる。そして、その表示すべきデ
ータはフレーム・バッファに入れられる。
【0050】上述の収集手段が通知手段と検索手段と送
信手段と受信手段に別れる場合には、通知手段が、必要
なテクセルを自己を含む複数のテクスチャ・メモリ・ク
ラスタに通知する。そして、検索手段がそのテクセルを
有しているかメモリを検索し、有していればそのテクセ
ルのテクセル値を出力する。出力があれば送信手段によ
り要求元に送信し、要求元のテクスチャ・メモリ・クラ
スタの受信手段がそのテクセル値を受信する。
【0051】上述のようにメモリを複数のバンクに分け
ており、各バンクでもテクスチャ・イメージのインター
リーブが行われている場合には、その各バンクに目的と
するテクセルが格納されているかを記録しておき、その
バンクからデータを引き出す必要がある。
【0052】上述のように各メモリ・バンクに入力FI
FOと出力FIFOを有していれば、必要なテクセル値
が同一のメモリ・バンクに格納されている場合でも、一
旦FIFOに格納しておくことにより、同一メモリ・バ
ンクへのアクセスがあっても全体のパフォーマンスの低
下を抑えることができる。
【0053】また、上述の検索手段が、アドレス計算手
段と分配手段とテクセル値を得る手段とを含む場合に
は、通知されたテクセルのメモリ中のアドレスをそのア
ドレス計算手段が計算し、分配手段がそのアドレスに応
じて該当メモリ・バンクにそのアドレスを分配する。そ
して、そのメモリ・バンクから目的のテクセル値を得る
ことができる。
【0054】さらに、必要なテクセルの通信元のテクス
チャ・メモリ・クラスタのIDを記憶するFIFOバッ
ファを有していれば、そのテクセルの要求を受信した際
に要求したテクスチャ・メモリ・クラスタをこのFIF
Oに入力し、目的のテクセル値を格納したメモリ・バン
クからの出力をそのFIFOの記憶内容の順(要求の受
信順)に送信するようにできる。
【0055】計算されたアドレスを分配したメモリ・バ
ンクのIDを記憶するFIFOバッファを有している場
合には、アドレスの分配を行う際に分配したメモリ・バ
ンクのIDをこのFIFOに記憶しておき、先のテクス
チャ・メモリ・クラスタのFIFOと併せてどのバンク
出力をどのテクスチャ・メモリ・クラスタに出力するか
を対応付けする。
【0056】収集手段の他の態様の場合には、テクスチ
ャ・イメージの座標をそのまま、自己を含む複数のテク
スチャ・メモリ・クラスタに送信し、受信したテクスチ
ャ・メモリ・クラスタで、計算手段が必要なテクセルで
あって保持しているテクセルを計算する。このテクセル
のテクセル値を取り出し、要求元(通信元)のテクスチャ
・メモリ・クラスタに送信する。そのテクスチャ・メモ
リ・クラスタは、送られてきたテクセル値を受信し、フ
ィルタにてテクスチャ値を計算することになる。
【0057】さらに他の本発明の態様の場合には、テク
スチャ生成器が、1のピクセルに対するテクスチャ・イ
メージの座標とそのピクセルとテクセルの縮小率を計算
し、それを接続されているテクスチャ・メモリ・クラス
タに送信する。そして、要求されたテクセルの値を検索
し、要求したテクスチャ・メモリ・クラスタに送信す
る。そして必要なテクセル値を収集してテクスチャ値を
計算する。計算されたテクスチャ値は、そのテクスチャ
・メモリ・クラスタに接続された描画プロセッサによっ
て、上述のピクセルの表示すべきデータの計算に用いら
れる。その表示すべきデータはフレーム・バッファに入
力され、表示装置に表示される。
【0058】
【実施例】図1に本願発明の用いられるシステムの全体
を示す。ワークステーション1は、メインCPU、メイ
ン・メモリ、キーボード、プリンタ等の入出力装置、及
びFDDやHDDといった記憶装置を含む。このワーク
ステーション1のバスに接続されているのが、グラフィ
ック・サブシステム3であり、このサブシステム3の出
力が表示装置11にて表示される。グラフィック・サブ
システム3は、ジオメトリ計算部5とラスタ計算部7と
テクスチャ計算部9により構成される。
【0059】この図1の動作を説明する。ワークステー
ション1のCPUは、表示装置11に何等かの表示を行
いたい場合には、グラフィック・サブシステム3に描画
を命令する。例えば、CPUがある位置(全体座標)に
おける、ある物体に、あるテクスチャ・イメージを張り
付けて描くことを命令した場合、ジオメトリ計算部5は
ポリゴン分割をし、ポリゴンの頂点におけるスクリーン
上の座標を求め、その座標におけるテクスチャ・イメー
ジの座標を計算する。もし、色の指定がさらにある場合
にはその色情報も計算する。この結果を用いてラスタ計
算部7が、そのポリゴン内部の各ピクセルごとにスクリ
ーン上の座標及びテクスチャ・イメージの座標(あれば
色情報も)を計算する。このテクスチャ・イメージの座
標とテクセルの拡大縮小率LOD(縮小率ともいう。)
からテクスチャ計算部9が、そのピクセルに対応するテ
クスチャの値を生成する。そして、そのテクスチャの値
を用いて表示すべきデータを生成し、フレーム・バッフ
ァに格納する。格納されたデータにより表示装置11の
スクリーン上に上述の物体を描き出すようになってい
る。
【0060】このグラフィック・サブシステムの詳細を
図2に示す。ジオメトリ計算部5は、バス13により複
数のテクスチャ生成器/フラグメント生成器15,1
7,19,21,23,25,27,29(ここでは8
つ)に接続されている。そして、各テクスチャ生成器/
フラグメント生成器は、1のテクスチャ・メモリ・クラ
スタに接続されている。このテクスチャ・メモリ・クラ
スタ33,35,37,39,41,45,47は、そ
れぞれアドレス分配バス31とデータ交換バス95で接
続されている。また、各テクスチャ・メモリ・クラスタ
は描画プロセッサ51,53,55,57,59,6
1,65にそれぞれ接続されている。この描画プロセッ
サは、フラグメント生成器も直接接続されている。そし
て各描画プロセッサは、フレーム・バッファ67,6
9,71,73,75,77,79,81にそれぞれ接
続されている。
【0061】テクスチャ・メモリ・クラスタの概略はテ
クスチャ・メモリ・クラスタ33にのみ示してある。他
のテクスチャ・メモリ・クラスタに関しては、その内容
は同一であり説明を省略する。テクスチャ生成器15か
らの出力はアドレス生成器83に接続されており、アド
レス生成器83の出力はアドレス分配バスに接続されて
いる。また、他の出力はアドレス選択器85に接続され
ている。アドレス選択器85の出力は、アドレス分配器
87に接続され、このアドレス分配器87は複数のメモ
リ・バンク89(ここでは8つ)に接続される。メモリ
・バンク89の出力はデータ収集器91に接続されてい
る。このデータ収集器91の出力はデータ交換バス95
にも接続されており、他のテクスチャ・メモリ・クラス
タにデータを出力するようになっている。このデータ収
集器91の出力は、フィルタ93にも接続されている。
フィルタ93では、このデータ収集器91からの出力と
ともに、データ交換バス95に接続されており、他のテ
クスチャ・メモリ・クラスタからの出力を受信するよう
になっている。そして、フィルタ93は生成したテクス
チャ値を担当の描画プロセッサ51に出力するようにな
っている。
【0062】以下、図2に示した装置の動作を説明す
る。ジオメトリ計算部5は、上述したように各ポリゴン
の頂点に係るピクセルの座標とテクスチャ・イメージの
座標、その点での色情報を計算し出力する。この出力は
バス13でブロードキャストされ、各テクスチャ生成器
/フラグメント生成器で受信される。各テクスチャ生成
器はポリゴン内部のピクセルを補間計算し、各ピクセル
ごとの、スクリーン上の座標、テクスチャ・イメージの
座標を計算する。また、フラグメント生成器は、同様に
ポリゴン内部のピクセルを補間計算し、各ピクセルごと
の、スクリーン上の座標、色情報を計算する。この補間
計算の際には、ピクセルとテクセルの縮小率LODも同
時に計算される。但し、各テクスチャ生成器及びフラグ
メント生成器は担当するピクセルを予め割り当てられて
おり、担当するピクセル以外のデータは生成されない。
なお、ラスタ計算器7は図2では、テクスチャ生成器/
フラグメント生成器に対応する。
【0063】ここで、各テクスチャ・メモリ・クラスタ
がどのようにテクスチャ・イメージを保持しているかを
簡単に説明する。なお、一般のアプリケーションでは従
来技術で述べたリニア−ミップマップ−リニアが用いら
れており、この方式でテクスチャ・マッピングを行う際
にパフォーマンスを最大にすることを目的とした例を述
べることを予め断っておく。このリニア−ミップマップ
−リニアでは、同時に8つのテクセル値にアクセスでき
なければならない。よって、必要なテクセル値が8つの
テクスチャ・メモリ・クラスタに分散されて記憶されて
いるようにする。すなわち図2の例では、例えばテクス
チャ・メモリ・クラスタ33(クラスタ0)は縮小率L
ODが偶数で、iが偶数、jが偶数のテクセル、テクス
チャ・メモリ・クラスタ35(クラスタ1)は縮小率L
ODが偶数で、iが奇数、jが偶数のテクセル、テクス
チャ・メモリ・クラスタ37(クラスタ2)は縮小率L
ODが偶数で、iが偶数、jが奇数のテクセル、テクス
チャ・メモリ・クラスタ39(クラスタ3)は縮小率L
ODが偶数で、iが奇数、jが奇数のテクセル、テクス
チャ・メモリ・クラスタ41(クラスタ4)は縮小率L
ODが奇数で、iが偶数、jが偶数のテクセル、テクス
チャ・メモリ・クラスタ43(クラスタ5)は縮小率L
ODが奇数で、iが奇数、jが偶数のテクセル、テクス
チャ・メモリ・クラスタ45(クラスタ6)は縮小率L
ODが奇数で、iが偶数、jが奇数のテクセル、テクス
チャ・メモリ・クラスタ47(クラスタ7)は縮小率L
ODが奇数で、iが奇数、jが奇数のテクセル、とす
る。
【0064】元のテクスチャ・イメージが8×8の場合
の例を、図3に示す。図3(A)は、LODが0のテク
スチャ・イメージを示している。この各枠内の数字は、
そのテクセル値が格納されるテクスチャ・メモリ・クラ
スタの番号(上記のカッコ内の数字)を表す。このよう
にLODが0、すなわち偶数の場合には、クラスタ0か
らクラスタ3までに格納される。またLODが1(図3
(B))の場合には、クラスタ4からクラスタ7までに
格納される。図3(C)の場合も同様である。
【0065】このようにテクスチャ・イメージが各テク
スチャ・メモリ・クラスタに格納されていることを前提
に以下動作の説明を続行する。テクスチャ生成器からテ
クスチャ・イメージの座標及び縮小率LODを受信した
テクスチャ・メモリ・クラスタは、アドレス生成器が必
要なテクセルを見い出す。すなわち、計算されたLOD
の整数部分の値とそれに+1した値(必ず偶数と奇数に
なる)と、そのレベル毎のテクセルの座標(i,j)を
計算する。そして、それをアドレス分配バス31に出力
するとともに、接続されたアドレス選択器にも出力す
る。アドレス分配バス31の出力も、それを出力したテ
クスチャ・メモリ・クラスタ以外のクラスタのアドレス
選択器に入力される。例えば、アドレス生成器が計算し
たテクセルの座標を左下として、1つのLODのミップ
マップにつき4つのテクセル値を参照するので、各アド
レス選択器は受信した座標のテクセルではなく、その4
つの内の自己が保持しているテクセルが要求されている
と認識し、そのテクセルの座標を計算する。他のLOD
の4つのテクセルについても同様である。但し、ここで
はアドレス選択器で計算していた処理は、要求元のアド
レス生成器が1つのLODごとに4つのテクセルの座標
を生成し、保持しているテクスチャ・メモリ・クラスタ
に送信しても同様である。
【0066】このようにして、各アドレス選択器には、
直接接続されたアドレス生成器からの要求も含めて、8
つのテクセルについての要求が入力される。そして、こ
のアドレス選択器は8つの要求を順にアドレス分配器に
出力する。アドレス分配器は、テクセルの座標に対応す
る、メモリの物理アドレスを計算し、その物理アドレス
に対応するメモリ・バンクにその物理アドレスを出力す
る。そして目的とするテクセル値がデータ収集器に出力
され、要求元のテクスチャ・メモリ・クラスタにデータ
交換バスにて送られる。もし、そのテクセル値が自己の
テクスチャ・メモリ・クラスタの要求であった場合に
は、フィルタに直接送られる。フィルタは、上述のよう
にデータ交換バスにて送られてきた7つのテクセル値
と、自己のデータ収集器から送られてきた1つのテクセ
ル値で所定の計算を行い、テクスチャ値を生成する。生
成されたテクスチャ値は、接続された描画プロセッサに
出力される。描画プロセッサは、そのテクスチャ値が対
応するスクリーン上のピクセルに対応する、フラグメン
ト生成器により生成された色情報と、フレーム・バッフ
ァの値を参照して、そのピクセウに関する表示データを
生成し、所定のフレーム・バッファに格納する。フレー
ム・バッファに入力されたデータは、コントローラによ
り読み出され、表示装置に表示される。
【0067】以上、図2の動作を述べたが、メモリ・バ
ンクについてさらに述べる。上で述べたように、アドレ
ス分配器は、物理アドレスに対応するメモリ・バンクに
その物理アドレスを出力する。すなわち、各テクスチャ
・メモリ・クラスタ内のメモリ・バンクでも、物理アド
レスでインターリーブして記憶している。ここではメモ
リ・バンクは8つであるから、物理アドレスの下位3桁
で、インターリーブするとよい。このようにすれば、1
つのテクセル値も重複することなく、テクスチャ・イメ
ージをテクスチャ・メモリ・クラスタに格納することが
でき、メモリ容量の削減に有効である。例えば、第1の
従来例では、通信して各プロセッサで輝度計算を行うた
め、各プロセッサ内のメモリに格納されるテクセルに重
複が必ず生じていた。また、第2の従来例でも、1Mb
yteのテクスチャ・イメージを格納する際には8Mb
yteのメモリが必要になる。これに対し、本発明は1
Mbyteのテクスチャ・イメージを格納するのに1M
byteしか必要なく、大容量化しつつあるテクスチャ
・イメージを大量に格納することができ、有効である。
【0068】図2に示したテクスチャ・メモリ・クラス
タの詳細を図4に示す。テクスチャ生成器の出力は、偶
LODアドレス生成器83aと奇LODアドレス生成器
83bに接続されている。また、この2つのアドレス生
成器の出力は、アドレス分配バス31に接続される。さ
らに、そのテクスチャ・メモリ・クラスタの格納してい
るテクセルに依存して、2つのアドレス生成器のどちら
かの出力が、アドレス選択器85に接続される。このア
ドレス選択器85には、バッファ109を介して他のテ
クスチャ・メモリ・クラスタからの出力が入力されるよ
うになっている。そして、アドレス選択器85はアドレ
ス分配器87に接続されており、このアドレス分配器8
7は複数のメモリ・バンク105(ここでは、8つ)に
接続されている。各メモリ・バンクには、入力FIFO
バッファ105aとDRAM105cと出力FIFOバ
ッファ105bがある。またアドレス選択器87は、タ
グFIFOバッファ115とあて先FIFOバッファ1
03に接続されている。このメモリ・バンク及びタグF
IFO115及びあて先FIFO103の出力はデータ
収集器91に接続され、このデータ収集器91の出力
は、一方はバッファ113を介して他のテクスチャ・メ
モリ・クラスタに出力され、他方はフィルタ93に出力
されるようになっている。フィルタ93には他のテクス
チャ・メモリ・クラスタからの出力がバッファ111を
介して入力されるようになっている。フィルタ93の出
力は、上述のように描画プロセッサに接続されている。
【0069】以下、図4の動作を説明する。図2のアド
レス生成器は、偶LODアドレス生成器83aと奇LO
Dアドレス生成器83bで構成されている。この偶LO
Dアドレス生成器は、偶数のLODに係るテクスチャ・
イメージを格納するテクスチャ・メモリ・クラスタに接
続されている。同様に、奇LODアドレス生成器は、奇
数のLODに係るテクスチャ・イメージを格納するテク
スチャ・メモリ・クラスタに接続されている。当然、自
己のテクスチャ・メモリ・クラスタもテクセルを格納し
ているから、自己の格納しているテクスチャ・イメージ
のLODによりマルチプレクサ101を操作して、アド
レス選択器85に出力する。そして、テクスチャ値を計
算するのに必要な定数を定数FIFO107に格納す
る。必要な定数は従来技術の説明でa,b,dと言って
いたものである。
【0070】他のテクスチャ・メモリ・クラスタでも同
様にして、例えば必要なテクセルの左下のテクセルの座
標を出力するので、その出力がバッファ109に入力さ
れる。アドレス選択器は、バッファ109及びマルチプ
レクサ101の出力から1つづつ選択してきて、先ほど
述べたように、左下のテクセルの座標に対応し且つ必要
とする4つのテクセルの内の自己の格納しているテクセ
ルを認識する。そしてそのテクセルの座標を計算する。
但し、左下のテクセルの座標を得た段階で、必要なテク
セルの格納された物理アドレスを出力するような構成に
すれば、より効率的である。図2の説明では、話の流れ
上前者のような動作であるとしたが、対応関係は明瞭で
あるから後者のようにすることは何等の困難もない。ア
ドレス選択器85で生成された物理アドレスは、アドレ
ス分配器がそのアドレスの下位3桁で、分配するメモリ
・バンクを認識し、そのメモリ・バンクのID(又はタ
グ)をタグFIFO115に入力する。また、その物理
アドレスに格納されたテクセル値を要求したテクスチャ
・メモリ・アドレスのIDをあて先FIFO103に入
力する。これにより、どのメモリ・バンクからの出力
が、どのテクスチャ・メモリ・クラスタに出力されるか
が順番を誤ることなく認識できる。物理アドレスは対応
するメモリ・バンクの入力FIFOバッファ105aに
入力される。このFIFOは、アドレスによりインター
リーブしているために、入力される物理アドレスがある
1つのメモリ・バンクに集中する場合がある。このよう
な場合であっても、順番を誤ることなく、且つあふれる
ことなく、出力を得るために設けたものである。出力F
IFOバッファ105bも同様の理由で設けられるもの
である。
【0071】但し、入力FIFOを設けたとしてもあふ
れる場合も考えられるので、あふれたかどうかもアドレ
ス分配器は検査する。もしあふれた場合には、そのメモ
リ・バンクの処理が進み、入力FIFOバッファ105
aに空きが生ずるまで、入力FIFOバッファ105a
への入力を停止する。そして、テクセル値は出力FIF
Oバッファ105bに入力される。ここでデータ収集器
91は、タグFIFO115とあて先FIFO103を
1づつそれぞれ読み出す。そして、タグFIFO115
の示すメモリ・バンクの出力FIFO105bからテク
セル値を読み出し、対応するバッファ113に出力す
る。または、自己の要求に基づく場合にはフィルタ93
に出力する。そして、バッファ113から要求元のテク
スチャ・メモリ・クラスタに出力される。
【0072】このようにしてデータ交換バスを介して得
たテクセル値は、まず、バッファ111に格納され、そ
してフィルタ93に入力される。これにより8つの必要
なテクセル値が集まったので、定数FIFO107から
必要な定数を読み出し、従来技術の説明で示した計算を
フィルタ93が行う。この計算によりテクスチャ値が生
成され、描画プロセッサに与えられる。
【0073】以上述べたように、これによりメモリの有
効利用を行うと共に、この例ではラスタ計算部以下を並
列に行うことにより、テクスチャ・メモリ・クラスタ間
の通信を行うにしても、パフォーマンスを許容範囲内の
悪化にとどめることができた。しかし、これは一例であ
って、例えば、テクスチャ・メモリ・クラスタの数はそ
の同時アクセスが必要なテクセルの数に合わせること、
又はパフォーマンスを落とすのであれば複数回テクスチ
ャ・メモリ・アクセスするようにして、テクスチャ・メ
モリ・クラスタの数を減らす等の変更を行うことができ
る。さらに、アドレス生成器をテクスチャ生成器に接続
している例を示したが、縮小率LODとテクスチャ・イ
メージの座標をそのまま複数のテクスチャ・メモリ・ク
ラスタにブロードキャストし、アドレス選択器で計算し
てもよい。また、メモリ・バンクの数も、アクセスが集
中しないような数に変更することは可能である。さら
に、入力FIFOバッファ及び出力FIFOバッファの
段数も、同様にメモリ・バンクの容量等に依存するの
で,変更可能である。
【0074】さらに、あて先FIFO及びタグFIFO
の段数もメモリ・アクセスの速度等に依存するので、変
更可能である。また、8つのテクセルを同時に必要とす
る例を示したが、この数が増加した場合、減少した場合
にも、そのインターリーブの仕方及びテクスチャ・メモ
リ・クラスタの数にて対応可能である。
【0075】
【発明の効果】以上説明したように、コンピュータ・グ
ラフィクス・インタフェイスにあるテクスチャ・マッピ
ングの機能を効率良く実行させることができるコンピュ
ータ・グラフィクス装置を得ることができた。
【0076】また、必要とするメモリの容量を劇的に減
少させても効率が許容範囲内の悪化で済むシステムを得
ることもできた。
【0077】具体的には、メモリ・バンクの数を8、物
理アドレスはランダムである、DRAMのアクセス時間
は60nsである、各FIFOは7.5nsで動作可
能、物理アドレスは7.5nsごとに入力され、アドレ
ス分配器は7,5nsごとに分配することができる。デ
ータ収集器は7.5nsで出力FIFOからデータを回
収できる、との条件でシミュレーションを行った結果、
DRAMの利用率は85パーセントとなり、アクセスレ
ートとしては約113MHzであった。
【図面の簡単な説明】
【図1】本発明が適用可能される装置の全体図である。
【図2】本発明が適用可能な一実施例のコンピュータ・
グラフィクス装置の要部構成を示すブロック図である。
【図3】テクスチャ・メモリ・クラスタに記憶するテク
セルの格納方法を示す概念図である。
【図4】テクスチャ・メモリ・クラスタ内の詳細なブロ
ック図である。
【図5】コンピュータ・グラフィクスにおいて用いる座
標系を示す線図である。
【図6】ミップマップを説明するための説明図であり、
(A)はレベル0のミップマップであるテクスチャイメ
ージを示す線図、(B)はサイズが半分のレベル1のミ
ップマップであるテクスチャ示す線図である。
【図7】従来のコンピュータグラフィクス装置の要部構
成を示すブロック図である。
【図8】従来例のデータ・フォマットを示すブロック図
である。
【図9】従来例のデータ・フォマットを示すブロック図
である。
【図10】従来例のデータ・フォマットを示すブロック
図である。
【符号の説明】
1 ワークステーション 3 グラフィック・サブ
システム 5 ジオメトリ計算部 7 ラスタ計算部 9 テクスチャ計算部 11 表示装置 13 バス 15から29 テクスチャ生成器/フラグメント生成
器 31 アドレス分配バス 33から47 テクスチャ・メモリ・クラスタ 51から65 描画プロセッサ 67から81 フレーム・バッファ 83 アドレス生成器 85 アドレス選択器 87 アドレス分配器 89 メモリ・バンク 91 データ収集器 93 フィルタ 95 データ交換バス 101 マルチプレクサ 103 あて先FIFO 105 メモリ・バン
ク 107 定数FIFO 109 バッファ 111 バッファ 113 バッファ 115 タグFIFO
───────────────────────────────────────────────────── フロントページの続き (72)発明者 田中 伸宜 神奈川県大和市下鶴間1623番地14 日本ア イ・ビー・エム株式会社 大和事業所内

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】複数のテクセルからなるテクスチャ・イメ
    ージ・データをインターリーブして重複がないように各
    々のメモリに格納する複数のテクスチャ・メモリ・クラ
    スタであって、1のピクセルに対するテクスチャ・イメ
    ージの座標から、その座標に対応するテクスチャ値を計
    算するのに必要なテクセルを求め、そのテクセルの色情
    報であるテクセル値を前記複数のテクスチャ・メモリ・
    クラスタから収集する収集手段と、収集した前記テクセ
    ル値から前記1のピクセルに対するテクスチャ値を計算
    する手段とをそれぞれ有する前記複数のテクスチャ・メ
    モリ・クラスタと、 前記複数のテクスチャ・メモリ・クラスタを接続するバ
    スと、 前記複数のテクスチャ・メモリ・クラスタのうちの1つ
    にそれぞれ接続され、前記1のピクセルに対するテクス
    チャ・イメージの座標を計算する複数のテクスチャ生成
    器と、 前記複数のテクスチャ・メモリ・クラスタのうちの1つ
    にそれぞれ接続され、前記1のピクセルに対するテクス
    チャ値を用いて前記1のピクセルに表示すべきデータを
    生成する複数の描画プロセッサとを有するテクスチャ・
    マッピングを行うコンピュータ・システム。
  2. 【請求項2】前記収集手段が、 1のピクセルに対するテクスチャ・イメージの座標か
    ら、その座標に対応するテクスチャ値を計算するのに必
    要なテクセルを求め、前記複数のテクスチャ・メモリ・
    クラスタに通知する手段と、 前記メモリを検索し、通知された前記テクセルのテクセ
    ル値を得る検索手段と、 前記テクセル値を前記テクセルの通知元のテクスチャ・
    メモリ・クラスタに送信する手段と、 前記テクセル値を受信する手段とを含む請求項1記載の
    テスクチャ・マッピングを行うコンピュータ・システ
    ム。
  3. 【請求項3】前記メモリは複数のバンクに別れており、 各バンクは、前記テクスチャ・メモリ・クラスタが格納
    するテクスチャ・イメージ・データをインターリーブし
    て重複を生じないように格納することを特徴とする請求
    項1又は2記載のテスクチャ・マッピングを行うコンピ
    ュータ・システム。
  4. 【請求項4】前記複数のバンクは、入力FIFOバッフ
    ァと、出力FIFOバッファとを含む請求項3記載のテ
    スクチャ・マッピングを行うコンピュータ・システム。
  5. 【請求項5】前記検索手段は、 前記通知されたテクセルのアドレスを計算する手段と、 計算された前記アドレスから該当する前記メモリのバン
    クに前記アドレスを分配する分配手段と、 前記メモリのバンクからテクセル値を得る手段とを含む
    請求項3又は4記載のテスクチャ・マッピングを行うコ
    ンピュータ・システム。
  6. 【請求項6】前記必要なテクセルの通知元のテクスチャ
    ・メモリ・クラスタのIDを記憶するFIFOバッファ
    を前記テクスチャ・メモリ・クラスタの各々がさらに有
    することを特徴とする請求項2乃至5のいずれか記載の
    テスクチャ・マッピングを行うコンピュータ・システ
    ム。
  7. 【請求項7】前記計算されたアドレスを分配した前記メ
    モリのバンクのIDを記憶するFIFOバッファを前記
    テクスチャ・メモリ・クラスタの各々がさらに有するこ
    とを特徴とする請求項5記載のテスクチャ・マッピング
    を行うコンピュータ・システム。
  8. 【請求項8】前記収集手段が、 前記1のピクセルに対するテクスチャ・イメージの座標
    を前記複数のテクスチャ・メモリ・クラスタに通知する
    手段と、 前記座標から、その座標に対応するテクスチャ値を計算
    するのに必要なテクセルであって、自己の前記メモリが
    保持するテクセルを計算する手段と、 前記テクセルのテクセル値を前記メモリから取り出す手
    段と、 前記テクセル値を前記テクセルの通知元のテクスチャ・
    メモリ・クラスタに送信する手段と、 前記テクセル値を受信する手段とを含む請求項1記載の
    テスクチャ・マッピングを行うコンピュータ・システ
    ム。
  9. 【請求項9】複数のテクセルからなるテクスチャ・イメ
    ージと、そのテクスチャ・イメージを1以上の段階で縮
    小したデータであり且つ1又は複数のテクセルからなる
    縮小テクスチャ・イメージとを含むテクスチャ・イメー
    ジ・データをインターリーブして重複を生じないよう各
    々のメモリに格納する複数のテクスチャ・メモリ・クラ
    スタであって、1のピクセルに対する前記テクスチャ・
    イメージの座標及びピクセルと前記テクスチャ・イメー
    ジのテクセルの縮小率から前記1のピクセルに対するテ
    クスチャ値を計算するのに必要なテクセルを求め、その
    テクセルの色情報であるテクセルの値を前記複数のテク
    スチャ・メモリ・クラスタが出力するように要求する手
    段と、要求された前記テクセルの値を検索し、要求した
    前記テクスチャ・メモリ・クラスタに出力する手段と、
    前記テクセルの値を収集する手段と、収集された前記テ
    クセルの値から前記テクスチャ値を計算する手段とをそ
    れぞれ有する前記複数のテクスチャ・メモリ・クラスタ
    と、 前記複数のテスクチャ・メモリ・クラスタを接続するバ
    スと、 前記複数のテクスチャ・メモリ・クラスタのうちの1つ
    にそれぞれ接続され、前記1のピクセルに対するテクス
    チャ・イメージの座標及び前記縮小率を計算する複数の
    テクスチャ生成器と、 前記複数のテクスチャ・メモリ・クラスタのうちの1つ
    にそれぞれ接続され、前記1のピクセルに対するテクス
    チャ値を用いて前記1のピクセルに表示すべきデータを
    生成する複数の描画プロセッサとを有するテクスチャ・
    マッピングを行うコンピュータ・システム。
JP6298618A 1994-12-01 1994-12-01 テクスチャ・マッピングを行うコンピュータ・システム Expired - Lifetime JP2637931B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP6298618A JP2637931B2 (ja) 1994-12-01 1994-12-01 テクスチャ・マッピングを行うコンピュータ・システム
US08/566,244 US5767858A (en) 1994-12-01 1995-12-01 Computer graphics system with texture mapping

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6298618A JP2637931B2 (ja) 1994-12-01 1994-12-01 テクスチャ・マッピングを行うコンピュータ・システム

Publications (2)

Publication Number Publication Date
JPH08161509A true JPH08161509A (ja) 1996-06-21
JP2637931B2 JP2637931B2 (ja) 1997-08-06

Family

ID=17862066

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6298618A Expired - Lifetime JP2637931B2 (ja) 1994-12-01 1994-12-01 テクスチャ・マッピングを行うコンピュータ・システム

Country Status (2)

Country Link
US (1) US5767858A (ja)
JP (1) JP2637931B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998050887A1 (fr) * 1997-05-07 1998-11-12 Sega Enterprises, Ltd. Processeur d'images et procede de traitement d'images
US7161603B2 (en) 2003-04-28 2007-01-09 Kabushiki Kaisha Toshiba Image rendering device and image rendering method
JPWO2005088548A1 (ja) * 2004-03-10 2007-08-30 株式会社東芝 描画装置、描画方法、及び描画プログラム
US7528842B2 (en) 2004-04-23 2009-05-05 Sony Computer Entertainment Inc. Image processing apparatus and image processing method

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6078332A (en) * 1997-01-28 2000-06-20 Silicon Graphics, Inc. Real-time lighting method using 3D texture mapping
US6124858A (en) * 1997-04-14 2000-09-26 Adobe Systems Incorporated Raster image mapping
US6043821A (en) * 1997-06-30 2000-03-28 Ati Technologies, Inc. Method and apparatus for rendering pixel information from blended texture maps
US6417848B1 (en) * 1997-08-25 2002-07-09 Ati International Srl Pixel clustering for improved graphics throughput
US6002407A (en) * 1997-12-16 1999-12-14 Oak Technology, Inc. Cache memory and method for use in generating computer graphics texture
JP3985321B2 (ja) * 1998-01-29 2007-10-03 ソニー株式会社 演算装置および画像処理装置
US6144392A (en) * 1998-04-30 2000-11-07 Ati Technologies, Inc. Method and apparatus for formatting a texture in a frame buffer
US6246422B1 (en) * 1998-09-01 2001-06-12 Sun Microsystems, Inc. Efficient method for storing texture maps in multi-bank memory
US6353438B1 (en) * 1999-02-03 2002-03-05 Artx Cache organization—direct mapped cache
US6567092B1 (en) * 1999-02-10 2003-05-20 Microsoft Corporation Method for interfacing to ultra-high resolution output devices
US6362828B1 (en) * 1999-06-24 2002-03-26 Microsoft Corporation Method and system for dynamic texture replication on a distributed memory graphics architecture
US6762763B1 (en) * 1999-07-01 2004-07-13 Microsoft Corporation Computer system having a distributed texture memory architecture
US6396502B1 (en) 1999-10-15 2002-05-28 Hewlett-Packard Company System and method for implementing accumulation buffer operations in texture mapping hardware
US6618048B1 (en) 1999-10-28 2003-09-09 Nintendo Co., Ltd. 3D graphics rendering system for performing Z value clamping in near-Z range to maximize scene resolution of visually important Z components
US6717577B1 (en) 1999-10-28 2004-04-06 Nintendo Co., Ltd. Vertex cache for 3D computer graphics
US6618053B1 (en) * 2000-01-10 2003-09-09 Vicarious Visions, Inc. Asynchronous multilevel texture pipeline
US6914605B2 (en) * 2000-03-21 2005-07-05 Matsushita Electric Industrial Co., Ltd. Graphic processor and graphic processing system
US7119813B1 (en) * 2000-06-02 2006-10-10 Nintendo Co., Ltd. Variable bit field encoding
FR2820874B1 (fr) * 2001-02-13 2003-05-30 St Microelectronics Sa Procede de gestion a acces aleatoire et rapide d'une memoire dram
US7576748B2 (en) 2000-11-28 2009-08-18 Nintendo Co. Ltd. Graphics system with embedded frame butter having reconfigurable pixel formats
US6811489B1 (en) 2000-08-23 2004-11-02 Nintendo Co., Ltd. Controller interface for a graphics system
US6700586B1 (en) 2000-08-23 2004-03-02 Nintendo Co., Ltd. Low cost graphics with stitching processing hardware support for skeletal animation
US7538772B1 (en) 2000-08-23 2009-05-26 Nintendo Co., Ltd. Graphics processing system with enhanced memory controller
US7196710B1 (en) 2000-08-23 2007-03-27 Nintendo Co., Ltd. Method and apparatus for buffering graphics data in a graphics system
US6636214B1 (en) 2000-08-23 2003-10-21 Nintendo Co., Ltd. Method and apparatus for dynamically reconfiguring the order of hidden surface processing based on rendering mode
US6707458B1 (en) 2000-08-23 2004-03-16 Nintendo Co., Ltd. Method and apparatus for texture tiling in a graphics system
JP3775580B2 (ja) * 2001-11-21 2006-05-17 ソニー株式会社 画像処理装置および方法、記録媒体、並びにプログラム
US6819324B2 (en) 2002-03-11 2004-11-16 Sun Microsystems, Inc. Memory interleaving technique for texture mapping in a graphics system
JP4193990B2 (ja) * 2002-03-22 2008-12-10 ディーリング,マイケル,エフ. スケーラブルな高性能3dグラフィックス
US6876362B1 (en) 2002-07-10 2005-04-05 Nvidia Corporation Omnidirectional shadow texture mapping
DE10345080A1 (de) * 2003-09-26 2005-05-12 Peguform Gmbh Verfahren und Vorrichtung zur schichtabtragenden 3-dimensionalen Materialbearbeitung
US8144156B1 (en) * 2003-12-31 2012-03-27 Zii Labs Inc. Ltd. Sequencer with async SIMD array
JP2005332195A (ja) 2004-05-19 2005-12-02 Sony Computer Entertainment Inc テクスチャユニット、画像描画装置、テクセル転送方法
US7508390B1 (en) 2004-08-17 2009-03-24 Nvidia Corporation Method and system for implementing real time soft shadows using penumbra maps and occluder maps
US8462156B1 (en) 2005-12-22 2013-06-11 Nvidia Corporation Method and system for generating shadows in a graphics processing unit
US20070211070A1 (en) * 2006-03-13 2007-09-13 Sony Computer Entertainment Inc. Texture unit for multi processor environment
US7912279B2 (en) * 2006-10-26 2011-03-22 Qualcomm Incorporated Automatic white balance statistics collection
US7969444B1 (en) * 2006-12-12 2011-06-28 Nvidia Corporation Distributed rendering of texture data
US8234558B2 (en) * 2007-06-22 2012-07-31 Apple Inc. Adaptive artwork for bandwidth- and/or memory-limited devices
US20140098096A1 (en) * 2012-10-08 2014-04-10 Nvidia Corporation Depth texture data structure for rendering ambient occlusion and method of employment thereof
US9679342B2 (en) * 2013-07-12 2017-06-13 Arm Limited Result data stream coding for repeating workloads
US9483843B2 (en) 2014-01-13 2016-11-01 Transgaming Inc. Method and system for expediting bilinear filtering
US9870339B2 (en) * 2015-06-26 2018-01-16 Intel Corporation Hardware processors and methods for tightly-coupled heterogeneous computing
GB2602687B (en) * 2021-06-25 2022-12-28 Imagination Tech Ltd Efficient convolution operations

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2270243B (en) * 1992-08-26 1996-02-28 Namco Ltd Image synthesizing system
CA2103395C (en) * 1992-11-24 2004-08-17 Masakazu Suzuoki Apparatus and method for providing texture of a moving image to a surface of an object to be displayed
US5490240A (en) * 1993-07-09 1996-02-06 Silicon Graphics, Inc. System and method of generating interactive computer graphic images incorporating three dimensional textures

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998050887A1 (fr) * 1997-05-07 1998-11-12 Sega Enterprises, Ltd. Processeur d'images et procede de traitement d'images
US7161603B2 (en) 2003-04-28 2007-01-09 Kabushiki Kaisha Toshiba Image rendering device and image rendering method
JPWO2005088548A1 (ja) * 2004-03-10 2007-08-30 株式会社東芝 描画装置、描画方法、及び描画プログラム
JP4521399B2 (ja) * 2004-03-10 2010-08-11 株式会社東芝 描画装置、描画方法、及び描画プログラム
US7528842B2 (en) 2004-04-23 2009-05-05 Sony Computer Entertainment Inc. Image processing apparatus and image processing method

Also Published As

Publication number Publication date
JP2637931B2 (ja) 1997-08-06
US5767858A (en) 1998-06-16

Similar Documents

Publication Publication Date Title
JP2637931B2 (ja) テクスチャ・マッピングを行うコンピュータ・システム
US6288730B1 (en) Method and apparatus for generating texture
JP2673101B2 (ja) コンピュータ・グラフィクス装置
US6259460B1 (en) Method for efficient handling of texture cache misses by recirculation
JP4203128B2 (ja) 3次元の三角形描画におけるブロック及びバンド志向走査
US7151544B2 (en) Method for improving texture cache access by removing redundant requests
US7330188B1 (en) Texture caching arrangement for a computer graphics accelerator
US6828978B2 (en) Bucket-sorting graphical rendering apparatus and method
US20080150951A1 (en) 3-d rendering engine with embedded memory
KR20070064337A (ko) 그래픽 처리 서브시스템 및 픽셀 단편에 대해 적어도하나의 값을 결정하기 위한 방법
US20070211070A1 (en) Texture unit for multi processor environment
EP1598784A2 (en) Texture mapping apparatus and texel transfer method
US7069387B2 (en) Optimized cache structure for multi-texturing
US6933945B2 (en) Design for a non-blocking cache for texture mapping
US9633458B2 (en) Method and system for reducing a polygon bounding box
US20040012610A1 (en) Anti-aliasing interlaced video formats for large kernel convolution
KR100243179B1 (ko) 그래픽 시스템의 신호처리방법 및 장치
US20040008204A1 (en) Switching sample buffer context in response to sample requests for real-time sample filtering and video generation
US5657436A (en) Preprocessing apparatus and method for line scan conversion in a computer graphics system
US6816162B2 (en) Data management to enable video rate anti-aliasing convolution
US11748933B2 (en) Method for performing shader occupancy for small primitives
US11379944B2 (en) Techniques for performing accelerated point sampling in a texture processing pipeline
US7023444B2 (en) Multi-texturing by walking an appropriately-sized supertile over a primitive
US20030231180A1 (en) Image processing apparatus and method of same
US6985153B2 (en) Sample request mechanism for supplying a filtering engine

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080425

Year of fee payment: 11

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080425

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080425

Year of fee payment: 11

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090425

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090425

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100425

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110425

Year of fee payment: 14

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120425

Year of fee payment: 15

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120425

Year of fee payment: 15

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130425

Year of fee payment: 16

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130425

Year of fee payment: 16

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140425

Year of fee payment: 17

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term