JP2005149199A - テクスチャ処理装置 - Google Patents

テクスチャ処理装置 Download PDF

Info

Publication number
JP2005149199A
JP2005149199A JP2003386769A JP2003386769A JP2005149199A JP 2005149199 A JP2005149199 A JP 2005149199A JP 2003386769 A JP2003386769 A JP 2003386769A JP 2003386769 A JP2003386769 A JP 2003386769A JP 2005149199 A JP2005149199 A JP 2005149199A
Authority
JP
Japan
Prior art keywords
texture
data
texture data
memory
memories
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
JP2003386769A
Other languages
English (en)
Other versions
JP4381778B2 (ja
JP2005149199A5 (ja
Inventor
Akisuke Shigenaga
哲資 重永
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2003386769A priority Critical patent/JP4381778B2/ja
Priority to DE602004004351T priority patent/DE602004004351T2/de
Priority to EP04026216A priority patent/EP1533752B1/en
Priority to US10/983,661 priority patent/US7365751B2/en
Priority to CNB2004100910821A priority patent/CN1293513C/zh
Publication of JP2005149199A publication Critical patent/JP2005149199A/ja
Publication of JP2005149199A5 publication Critical patent/JP2005149199A5/ja
Application granted granted Critical
Publication of JP4381778B2 publication Critical patent/JP4381778B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/00Three-dimensional [3D] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Image Generation (AREA)
  • Image Processing (AREA)

Abstract

【課題】 テクスチャデータをテクスチャメモリに高速に転送可能にし、バイリニアフィルタリング処理を高速に実行可能にする。
【解決手段】 メモリ書き込み部2は、1回の書き込み動作において、1度に転送可能でありかつ1個のアドレスに書き込み可能な個数のテクスチャデータを、共通に、第1〜第4のテクスチャメモリ1a〜1dのいずれか1つに書き込む。また第1〜第4のテクスチャメモリ1a〜1dへのデータ書き込みを、書き込むテクスチャデータのV座標が偶数のときは、第1、第2、第3、第4の順に行う一方、奇数のときは、第3、第4、第1、第2の順に行う。
【選択図】 図1

Description

本発明は、例えばコンピュータ・グラフィックスの分野において用いられるバイリニアフィルタリングを行うテクスチャ処理装置に関するものである。
近年、ゲーム機やカーナビゲーションシステムでは、リアルな表現を得るため、図形に模様を貼り付けるテクスチャマッピングがよく用いられる。テクスチャマッピングでは、図形を構成する各ピクセルの(X,Y)座標に対応するテクスチャ座標(U,V)を計算し、2次元格子状に構成されるテクスチャから、テクスチャ座標(U,V)を基にしてテクスチャデータを取り出し描画する。
テクスチャ座標(U,V)は小数部分を持つため、テクスチャの2次元格子上の座標に一致するとは限らない。テクスチャデータを取り出す方法としては、テクスチャ座標(U,V)を整数に丸め、2次元格子上のテクスチャデータを取り出すポイントサンプリングや、テクスチャ座標(U,V)の小数部分から近傍の4点のテクスチャデータの平均を計算するバイリニアフィルタリング等がある。バイリニアフィルタリングは、テクスチャ座標(U,V)が整数にならなくてもテクスチャデータを補間するので、ポイントサンプリングと比べると、図形を変形させたり回転させたりした場合であっても、一般に高画質である。
図19はバイリニアフィルタリングの概念を示す図である。同図中、Tはテクスチャ座標(U,V)が指す位置であり、pはUの小数部、qはVの小数部であり、0≦p<1、0≦q<1である。T0,T1,T2,T3は、Tの近傍4点の2次元格子上のテクスチャデータであり、Tの整数部を(u,v)とすると、T0の座標は(u,v)、T1の座標は(u+1,v)、T2の座標は(u,v+1)、T3の座標は(u+1,v+1)である。
バイリニアフィルタリングの計算式は、
T=(1−p)×(1−q)×T0+p×(1−q)×T1
+(1−p)×q×T2+p×q×T3
のようになり、T0,T1,T2,T3のRGB値についてそれぞれ計算する。
このように、バイリニアフィルタリングは、1個のテクスチャを生成するのに、4点のテクスチャデータを必要とする。LSIでテクスチャマッピングを行う際、テクスチャを内部メモリに格納してから参照するが、バイリニアフィルタリングを行う際には、1個のテクスチャを生成するのに内部メモリを4回参照する必要があり、処理が低速になる。
従来、バイリニアフィルタリングを高速に処理するため、テクスチャを2次元格子上の座標(2m,2n)、(2m+1,2n)、(2m,2n+1)、(2m+1,2n+1)(m、nは整数)毎に分類し、この分類種に対応させて、テクスチャデータを4個のメモリに個別に格納し、バイリニアフィルタリングを行う際には、これら4個のメモリから同時にテクスチャデータを読み出す方法が提案されている(例えば、特許文献1参照)。
特開平11−154237号公報
上述した従来の方法によると、テクスチャデータを4種類に分類して、それぞれ対応したメモリに格納する必要があるため、例えば、データバスを介して、複数ピクセルのテクスチャデータを同時にメモリまで転送できる場合において、転送動作を最速には実行できないという問題がある。
例えば、テクスチャマッピング装置が16ビット(/pixel)と32ビット(/pixel)のテクスチャデータを扱う場合、内部メモリの各アドレスで記憶するデータのビット数は、通常、32ビットである。そして、内部メモリまでテクスチャデータを転送するデータバスのビット数が32であれば、16ビットのテクスチャデータは一度に2ピクセル分転送することができる。しかしながら、上述の従来の方法によると、この2ピクセル分のテクスチャデータは別々のメモリに格納する必要があるため、メモリにリード・モディファイ・ライトの処理が入ってしまい、これにより、最速で転送することができず、データバスの転送速度が低速になってしまう。
また、従来の方法によれば、バイリニアフィルタリングを行う際、常に4個のメモリからテクスチャデータを読み出すため、メモリ部の消費電力が高くなるといった問題もある。
前記の問題に鑑み、本発明は、バイリニアフィルタリングを行うテクスチャ処理装置において、テクスチャデータをテクスチャメモリに高速に転送可能にし、バイリニアフィルタリング処理を高速に実行可能にすることを課題とする。
前記の課題を解決するために、本発明は、テクスチャ処理装置として、テクスチャデータを格納するための第1、第2、第3および第4のテクスチャメモリと、与えられたテクスチャデータを前記第1〜第4のテクスチャメモリに書き込む制御を行うメモリ書き込み部と、テクスチャ座標の近傍の4点のテクスチャデータを前記第1〜第4のテクスチャメモリから読み出す制御を行うメモリ読み出し部と、前記メモリ読み出し部によって前記第1〜第4のテクスチャメモリから読み出された4点のテクスチャデータを用いて、バイリニアフィルタリング演算を行うバイリニアフィルタリング演算部とを備え、前記メモリ書き込み部は、1回の書き込み動作において、1度に転送可能でありかつ1個のアドレスに書き込み可能な個数のテクスチャデータを共通に前記第1〜第4のテクスチャメモリのうちのいずれか1つに対して書き込み、かつ、前記第1〜第4のテクスチャメモリへのデータ書き込みを、書き込むテクスチャデータのV座標が偶数のときは第1、第2、第3、第4の順に行う一方、奇数のときは第3、第4、第1、第2の順に行うものである。
本発明によると、1回の書き込み動作において、1度に転送可能でありかつ1個のアドレスに書き込み可能な個数のテクスチャデータが、共通に、第1〜第4のテクスチャメモリのうちのいずれか1つに対して書き込まれる。このため、テクスチャデータの転送途中において余分な処理が不要となり、データバスの転送能力を活かした速度でデータ書き込みが実行できる。しかも、第1〜第4のテクスチャメモリへのデータ書き込みは、テクスチャデータのV座標が偶数のときは第1、第2、第3、第4の順に行われ、奇数のときは第3、第4、第1、第2の順に行われる。このため、U座標が同一でV座標が「1」違いのテクスチャデータは、必ず、異なるテクスチャメモリに格納される。これにより、バイリニアフィルタリング処理の際に、必要な4点のテクスチャデータを、一度に読み出すことができる。
そして、前記本発明に係るテクスチャ処理装置におけるメモリ読み出し部は、データ読み出しの際に、前記第1〜第4のテクスチャメモリのうちアクセスが不要のテクスチャメモリに対し、チップイネーブルをディスエーブルにする、または、クロック入力を停止するのが好ましい。これにより、テクスチャ処理装置の消費電力を下げることができる。
また、前記本発明に係るテクスチャ処理装置におけるメモリ書き込み部は、与えられたテクスチャデータ群の先頭V座標が偶数か奇数かを示すVラインモードを受け、このVラインモードに応じて、各テクスチャデータのV座標が偶数か奇数かを判定するのが好ましい。
さらに、前記メモリ書き込み部は、データ書き込みの開始アドレスが、設定可能に構成されているのが好ましい。または、前記メモリ書き込み部は、与えられたテクスチャデータを、指示されたシフト値だけシフトして、前記第1〜第4のテクスチャメモリに書き込むのが好ましい。
また、前記本発明に係るテクスチャ処理装置は、第1のテクスチャデータ群を格納した状態の前記第1〜第4のテクスチャメモリに、次に用いる第2のテクスチャデータ群を書き込む際に、前記第1〜第4のテクスチャメモリ内において、前記第1のテクスチャデータ群のV座標最大のテクスチャデータを、前記第2のテクスチャデータ群のV座標最小のテクスチャデータを格納する位置に移動させるメモリデータ移動制御部を備えているのが好ましい。
また、前記本発明に係るテクスチャ処理装置において、前記メモリ書き込み部は、第1のテクスチャデータ群を格納した状態の前記第1〜第4のテクスチャメモリに、次に用いる第2のテクスチャデータ群を書き込む際に、前記第1のテクスチャデータ群のV座標最大のテクスチャデータに続けて、前記第2のテクスチャデータ群のうちV座標最小のテクスチャデータを除くテクスチャデータを書き込むものとし、前記メモリ読み出し部は、前記第2のテクスチャデータ群のテクスチャデータの読み出しを、前記第1のテクスチャデータ群のV座標最大のテクスチャデータが格納された位置を基準にして行うものとするのが好ましい。
また、前記本発明に係るテクスチャ処理装置は、テクスチャデータの転送を、1ピクセル当たりのテクスチャデータが16ビットのときは2個ずつ行い、32ビットのときは1個ずつ行うものとするのが好ましい。
本発明によると、データバスを介して複数ピクセルのテクスチャデータを一度に転送できる場合に、データバスの転送能力を活かした速度で、テクスチャメモリに書き込むことができる。また、バイリニアフィルタリング処理の際も、必要な4個のテクスチャデータをテクスチャメモリから一度に読み出すことができる。したがって、テクスチャデータの転送を高速に実行できるとともに、バイリニアフィルタリング処理を高速に実行することができる。
以下、本発明の実施の形態について、図面を参照して説明する。
(第1の実施形態)
図1は本発明の第1の実施形態に係るテクスチャ処理装置の構成を示すブロック図である。図1において、第1、第2、第3および第4のテクスチャメモリ1a,1b,1c,1dは、テクスチャデータを格納するためのメモリであり、ここではそれぞれ32ビット×256ワードで構成されているものとする。また当該装置は、32ビットのデータが一度に転送可能なように構成されている。テクスチャメモリ1a〜1dは、クロックの立ち上がりエッジにおいてライトイネーブルやアドレス、データを取り込む。
メモリ書き込み部2は、外部記憶手段等からロードされたテクスチャデータをテクスチャメモリ1a〜1dに対して書き込む制御を行うものであり、書き込みデータDI、書き込みアドレスWADa,WADb,WADc,WADd、およびライトイネーブルNWEa,NWEb,NWEc,NWEdを出力する。ここでは、与えられるテクスチャデータおよび書き込みデータDIは32ビット、書き込みアドレスWADa〜WADdは8ビットとする。またライトイネーブルNWEa〜NWEdは、“0”が書き込み状態を示し、“1”が読み出し状態を示すものとする。
メモリ読み出し部3は、与えられたテクスチャ座標(すでに整数に丸められたもの)に基づいて、テクスチャメモリ1a〜1dからバイリニアフィルタリングに必要なテクスチャデータを読み出す制御を行うものであり、読み出しアドレスRADa,RADb,RADc,RADd、およびチップイネーブルNCEa,NCEb,NCEc,NCEdを出力する。ここでは、読み出しアドレスRADa〜RADdは8ビットとする。またチップイネーブルNCEa〜NCEdは、“0”がメモリ1a〜1dを動作状態にし、“1”がメモリ1a〜1dを停止状態にするものとする。メモリ1a〜1dを停止状態にすることによって消費電力を抑えることができる。
セレクタ4a,4b,4c,4dは、テクスチャメモリ1a〜1dに対応してそれぞれ設けられている。各セレクタ4a〜4dは、テクスチャデータがテクスチャメモリ1a〜1dに書き込まれる期間は、メモリ書き込み部2から出力された書き込みアドレスWADa〜WADdを選択する一方、バイリニアフィルタリング演算処理期間は、メモリ読み出し部3から出力された読み出しアドレスRADa〜RADdを選択し、メモリアドレスADa,ADb,ADc,ADdとして、それぞれ出力する。
テクスチャ選択部5は、テクスチャメモリ1a〜1dから読み出されたデータDOa,DOb,DOc,DOdから、図19に示すような、バイリニアフィルタリング演算処理において必要になる4点のテクスチャデータT0〜T3を選択し出力する。バイリニアフィルタリング演算部6は、テクスチャ選択部5から選択出力された4点のテクスチャデータT0〜T3を用いてバイリニアフィルタリング演算を行い、バイリニアフィルタリングデータを出力する。このバイリニアフィルタリングデータは、図示しないフレームメモリの描画座標(X,Y)に対応する領域に書き込まれ、フレームメモリ上の図形データはディスプレイ等の表示装置で表示される。
以下、メモリ書き込み部2の構成および動作について、詳細に説明する。
図2は図1におけるメモリ書き込み部2の内部構成を示す図である。図2において、制御用カウンタ7は、書き込みカウント値wcntを生成するものであり、加算器8、セレクタ9およびレジスタ10によって構成されている。加算器8はレジスタ10の値に“1”を加算する。セレクタ9は起動信号が“0”のときは加算器8の演算結果を選択する一方、起動信号が“1”のときは“0”を選択する。レジスタ10はセレクタ9の出力を記憶する10ビットのフリップフロップであり、レジスタ10の値が書き込みカウント値wcntとなる。
ここで、『wcnt[9:0]』のようにデータ名の後に付した[]はそのデータのビット位置を示している。すなわち、[i:j]はiビット目からjビット目までの連続した(i−j+1)ビットを指す。例えば、先のwcnt[9:0]は、データwcntの9ビット目から0ビット目までの連続した10ビットを意味する。また、[i]はそのデータのiビット目の1ビットを指し、例えば、wcnt[0]はデータwcntの0ビット目を、wcnt[1]はデータwcntの1ビット目を意味する。
論理回路19aはwcnt[0]とwcnt[1]との論理和をとり、データnwcnt00として出力する。データnwcnt00は、wcnt[1:0]=00(2進数)のときのみ“0”になる。同様に、論理回路19bはwcnt[0]の論理否定とwcnt[1]との論理和をとり、データnwcnt01として出力する。データnwcnt01は、wcnt[1:0]=01(2進数)のときのみ“0”になる。論理回路19cはwcnt[0]とwcnt[1]の論理否定との論理和をとり、データnwcnt10として出力する。データnwcnt10は、wcnt[1:0]=10(2進数)のときのみ“0”になる。論理回路19dはwcnt[0]とwcnt[1]との論理積を論理否定し、データnwcnt11として出力する。データnwcnt11は、wcnt[1:0]=11(2進数)のときのみ“0”になる。
ライトイネーブル生成部11は、テクスチャデータのビット数(1ピクセル当たり)と横幅、および書き込みカウント値wcnt[9:0]を基にして、データnwcnt00,nwcnt01,nwcnt10,nwcnt11のいずれかを、ライトイネーブルNWEa,NWEb,NWEc,NWEdとしてそれぞれ選択する。図3および図4はライトイネーブルNWEa〜NWEdを選択するための条件の例を示す。ライトイネーブル生成部11から出力されたライトイネーブルNWEa〜NWEdはレジスタ12〜15にそれぞれ格納され、決定される。
ここで、書き込むテクスチャデータのV座標が偶数のときは、テクスチャメモリ1a→1b→1c→1d→1a→・・・の順に書き込みを行い、奇数のときは、テクスチャメモリ1c→1d→1a→1b→1c→・・・の順に書き込みを行うように、ライトイネーブルNWEa〜NWEdが生成される。
すなわち、図3に示すような条件によって、書き込むテクスチャデータのV座標が偶数か奇数かを判定する。例えば、テクスチャのビット数が16(bit/pixel)であり、横幅が8(pixel)のとき、転送可能なデータは32ビットであるため、1回のメモリ書き込みによって2ピクセルのテクスチャデータを書き込むことができ、8ピクセルのテクスチャデータをメモリに格納するために、4回のメモリ書き込みを行うことになる。すなわち、4回メモリに書き込む毎にV座標の偶数と奇数が切り替わることになり、wcnt[2]=0のときはV座標が偶数、wcnt[2]=1のときはV座標が奇数となる。
そして、図4に示すように、V座標が偶数か奇数かによって、ライトイネーブルNWEa〜NWEdを切り替える。
レジスタ16は8ビットのフリップフロップであり、wcnt[9:2]すなわち書き込みカウント値の上位8ビットを記憶する。レジスタ16の値は書き込みアドレスWADa〜WADdの共通データとなる。書き込みアドレスWADa〜WADdは、wcnt[9:2]の値を用いているため、メモリ書き込みを4回行う毎に「1」増加する。レジスタ17は32ビットのフリップフロップであり、与えられたテクスチャデータを記憶する。レジスタ17の値は書き込みデータDIとして出力される。書き込み終了判定部18は書き込みカウント値wcnt[9:0]をモニターし、メモリ書き込みの回数が処理に必要な所定数に達したとき、メモリ書き込み処理を終了させる。
図5はメモリ書き込み処理を示すタイミングチャートである。図5では、テクスチャデータのビット数が16(bit/pixel)、横幅が8(pixel)の場合を例にとって示している。図5に示すように、書き込みアドレスWADa〜WADdが“0”の期間は、書き込むテクスチャデータのV座標が偶数であり、ライトイネーブルNWEa〜NWEdはNWEa→NWEb→NWEc→NWEdの順にアサートされる。これにより、第1〜第4のテクスチャメモリ1a〜1dへの書き込みは、第1(1a)、第2(1b)、第3(1c)、第4(1d)の順に行われる。一方、書き込みアドレスWADa〜WADdが“1”の期間は、書き込むテクスチャデータのV座標が奇数であり、ライトイネーブルNWEa〜NWEdはNWEc→NWEd→NWEa→NWEbの順にアサートされる。これにより、第1〜第4のテクスチャメモリ1a〜1dへの書き込みは、第3(1c)、第4(1d)、第1(1a)、第2(1b)の順に行われる。
このように、1回の書き込み動作において、1度に転送可能な1個または複数個のテクスチャデータが、共通に、第1〜第4のテクスチャメモリ1a〜1dのうちのいずれか1つに対して書き込まれるため、連続サイクルで、テクスチャデータをメモリに高速に書き込むことが可能である。
次に、メモリ読み出し部3の構成および動作について、詳細に説明する。
図6は図1におけるメモリ読み出し部3の内部構成を示す図である。図6において、加算器19,20は、与えられたU座標およびV座標に「1」をそれぞれ加算する。そして、T0アドレス生成部21は、座標(U,V)に対応するテクスチャデータのメモリアドレスradr0を生成出力する。同様に、T1アドレス生成部22は座標(U+1,V)に対応するテクスチャデータのメモリアドレスradr1を、T2アドレス生成部23は座標(U,V+1)に対応するテクスチャデータのメモリアドレスradr2を、そしてT3アドレス生成部24は座標(U+1,V+1)に対応するテクスチャデータのメモリアドレスradr3を、それぞれ生成出力する。メモリアドレスradr0〜radr3はそれぞれ8ビットである。
図7はT0アドレス生成部21におけるメモリアドレス生成内容を示す。同図中、例えば{V[5:0],U[4:3]}とあるのは、座標値Vの5ビット目から0ビット目までの連続した6ビットと、座標値Uの4ビット目から3ビット目までの連続した2ビットを連結した8ビットの値を示す。T1アドレス生成部22、T2アドレス生成部23およびT3アドレス生成部24も、同様にしてメモリアドレスを生成する。
セレクタ25は、2ビットのセレクト信号SELaに応じて、メモリアドレスradr0〜radr3のいずれかを選択する。同様に、セレクタ26,27,28はそれぞれ、2ビットのセレクト信号SELb,SELc,SELdに応じて、メモリアドレスradr0〜radr3のいずれかを選択する。セレクタ25〜28は、セレクト信号SELa〜SELdが、“00”(2進数)のときはradr0を選択し、“01”(2進数)のときはradr1を選択し、“10”(2進数)のときはradr2を選択し、“11”(2進数)のときはradr3を選択する。レジスタ29,30,31,32はセレクタ25〜28で選択されたアドレスを記憶し、読み出しアドレスRADa〜RADdとしてそれぞれ出力する。
メモリ読み出し制御部33は、座標(U,V)を基にして、上述したセレクト信号SELa〜SELdを生成するとともに、各テクスチャメモリ1a〜1dのチップイネーブルNCEa〜NCEdを生成する。図8はメモリ読み出し制御部33におけるセレクト信号SELa〜SELdの生成内容を示す。同図中、V[0],U[2:0],SELa〜SELdはそれぞれ2進数で表記している。なお、図8においてハッチを付した部分は、そのときのデータ読み出しにおいてアクセスする必要がないメモリに係るものであり、一応“00”(2進数)と図示しているが、どのような値でもよい。
また、データ読み出しの際に、アクセスが不要のテクスチャメモリに対しては、チップイネーブルをディスエーブルにするのが好ましい。図9はメモリ読み出し制御部33におけるチップイネーブルNCEa〜NCEdの生成内容を示す。同図中、ハッチを付した部分は、図8のハッチを付した部分と同一条件になっており、この場合、メモリに対してアクセスする必要がないため、チップイネーブルを“1”にしてディスエーブル状態にする。これにより、メモリ動作を止めることができ、消費電力を下げることができる。なお、アクセスが不要のテクスチャメモリに対しては、チップイネーブルをディスエーブルにする代わりに、またはこれとともに、クロック入力を停止してもよい。
そして、テクスチャ選択部5は、図10に示すような内容に従って、テクスチャメモリ1a〜1dから読み出されたデータDOa〜DOdから、バイリニアフィルタリング演算に必要な4点のテクスチャデータT0〜T3を選択する。なお、テクスチャデータのビット数が16(bit/pixel)の場合、32ビットのデータDOa〜DOdのうちの16ビットを選択するが、テクスチャデータT0〜T3としては、バイリニアフィルタリング演算部4において演算可能なように、R,G,Bの各値のビット数を拡張して出力する。
図11は本実施形態におけるテクスチャデータの書き込みおよび読み出しを概念的に示す図であり、(a)はビット数が16の場合、(b)はビット数が32の場合である。同図中、a〜dの記号は、それぞれ、第1〜第4のテクスチャメモリ1a〜1dにテクスチャデータが書き込まれることを示している。図11(a)に示すように、テクスチャデータが16ビットの場合、各テクスチャデータは、一度に転送できる2個単位で、各テクスチャメモリ1a〜1dに書き込まれる。すなわち、テクスチャデータを高速に転送することができる。また、破線矩形枠A,B,Cで示すとおり、必要な4個のテクスチャデータは、複数のテクスチャメモリから、同一サイクルで読み出すことができる。なお、例えば矩形枠Aの場合、データ読み出しは第1および第3のテクスチャメモリ1a,1cから行えばよく、第2および第4のテクスチャメモリ1b,1dのアクセスは不要であるので、上述したとおり、チップイネーブルNCEb,NCEdがディセーブルにされる。
以上のように本実施形態によると、テクスチャデータをテクスチャメモリに転送する際、常に、連続サイクルで書き込みを行うことができるので、テクスチャデータを高速に転送することができる。また、バイリニアフィルタリング処理に必要な4点のテクスチャデータを、同一サイクルで、読み出すことができるので、処理を高速に実行することができる。また、データ読み出しの際に、アクセスが必要のテクスチャメモリに対して、チップイネーブルをディスエーブルにしたり、クロック入力を停止することによって、装置の消費電力を下げることができる。
なお、本実施形態では、テクスチャメモリの各アドレスには32ビットのデータが書き込み可能であり、一度に転送可能なデータも32ビットであり、テクスチャデータは16ビットと32ビットとの2種類があるものとしたが、本発明はこれに限られるものではなく、発明の主旨を逸脱しない範囲で様々な態様のものが考えられる。例えば、一度に64ビットのデータが転送可能なように構成されている場合は、テクスチャデータが16ビットのときは、4個のテクスチャデータを転送し、2個ずつ、例えば第1および第2のテクスチャメモリに同時に書き込むようにし、テクスチャデータが32ビットのときは、2個のテクスチャデータを転送し、1個ずつ、第1および第2のテクスチャメモリに同時に書き込むようにしてもよい。すなわち、1度に転送可能でありかつ1個のアドレスに書き込み可能な個数のテクスチャデータを、いずれか1つのテクスチャメモリに共通に書き込むようにすることによって、データバスの転送能力を活かした速度で、データ書き込みが実行できる。
(第2の実施形態)
本発明の第2の実施形態に係るテクスチャ処理装置の構成は、基本的には図1に示すとおりであるが、第1の実施形態とは、メモリ書き込み部2Aの構成が異なっている。図12は本実施形態におけるメモリ書き込み部2Aの構成を示すブロック図である。同図中、第1の実施形態で示した図2と共通の構成要素については図2と同一の符号を付しており、ここではその詳細な説明を省略する。
ライトイネーブル生成部34は、書き込みカウント値wcntおよびデータnwcnt00,nwcnt01,nwcnt10,nwcnt11に加えて、VラインモードVMを受ける。そして、テクスチャデータのビット数と横幅、書き込みカウント値wcnt[9:0]、およびVラインモードVMを基にして、データnwcnt00,nwcnt01,nwcnt10,nwcnt11のいずれかを、ライトイネーブルNWEa,NWEb,NWEc,NWEdとしてそれぞれ選択する。
ここで、VラインモードVMとは、与えられたテクスチャデータ群の先頭V座標が偶数か奇数かを示す信号であり、“0”のときは先頭V座標が偶数、“1”のときは先頭V座標が奇数であることを示す。
VラインモードVMが“0”のとき、すなわち、書き込むテクスチャデータ群のV座標が偶数から始まる場合は、各テクスチャデータのV座標が偶数か奇数か判定する条件は、第1の実施形態で図3に示したものと同様である。一方、Vラインモードが“1”のとき、すなわち、書き込むテクスチャデータ群のV座標が奇数から始まる場合は、各テクスチャデータのV座標が偶数か奇数か判定する条件は、図13のようになる。そして第1の実施形態と同様に、図4に示すように、V座標が偶数か奇数かによって、ライトイネーブルNWEa〜NWEdを切り替える。
レジスタ39は、起動信号を1サイクルディレイさせるためのフリップフロップである。書き込みアドレス生成部40は、書き込みアドレスWADa〜WADdを生成するものであり、加算器41、セレクタ42,43およびレジスタ44によって構成される。加算器41はレジスタ44の値に“1”を加算する。セレクタ42は、起動信号とレジスタ39の値との論理和をとった信号が、“0”のときは加算器41の演算結果を選択する一方、“1”のときは開始アドレスを選択する。この開始アドレスは、当該テクスチャ処理装置の外部から設定可能である。セレクタ43は、データnwcnt00が“0”のときはセレクタ42の出力を選択する一方、“1”のときはレジスタ44の値を選択する。レジスタ44はセレクタ43の出力を記憶する8ビットのフリップフロップである。
レジスタ44の値であるwadr[7:0]は、書き込みアドレスWADa〜WADdの共通データとなる。データnwcnt00は4サイクルに1回“0”になるので、レジスタ44の値は4サイクルに1回更新される。すなわち、書き込みアドレスWADa〜WADdはメモリ書き込みを4回行う毎に「1」増加する。
レジスタ45は32ビットのフリップフロップであり、テクスチャデータload[31:0]をデータload1[31:0]として保持する。左シフター46は、レジスタ45に保持されたデータload1[31:0]と与えられたテクスチャデータload[31:0]とを連結した64ビットのデータを、指示されたシフト値に従って、左シフトする。このシフト値は、当該テクスチャ処理装置の外部から与えることができる。レジスタ47は32ビットのフリップフロップであり、左シフター46の出力の上位32ビットを記憶する。レジスタ47の値は書き込みデータDIとなる。
本実施形態によると、VラインモードVMに応じて、各テクスチャデータのV座標が偶数か奇数かを判定するので、与えられたテクスチャデータ群の先頭V座標が偶数であっても奇数であっても、第1の実施形態と同様のデータ書き込みを実現することができる。また、データ書き込みの開始アドレスが設定可能に構成されているので、与えられたテクスチャデータをテクスチャメモリの任意のアドレスに書き込むことができ、例えば、転送元のテクスチャデータを横1ラインずつ、テクスチャメモリの任意のアドレスに書き込むことができる。このため、第1の実施形態では転送元のテクスチャデータが必ず外部記憶手段の連続するアドレスに格納されている、という制約があるのに対して、本実施形態では、例えば、外部記憶手段上の大きなテクスチャデータの中のある矩形領域部分を切り出して、テクスチャメモリに転送する、といった動作が可能になる。
また、転送中のテクスチャデータをシフトすることができるので、テクスチャデータの開始位置をワード境界上に置く必要がなく、さらに自由度の高いテクスチャデータの転送が可能になる。
(第3の実施形態)
図14は本発明の第3の実施形態に係るテクスチャ処理装置の構成を示すブロック図である。同図中、図1と共通の構成要素には図1と同一の符号を付しており、ここではその詳細な説明を省略する。テクスチャメモリ1a〜1d、メモリ読み出し部3、テクスチャ選択部5およびバイリニアフィルタリング演算部6は第1の実施形態で説明したものと同様であり、メモリ書き込み部2Aは第2の実施形態で説明したものと同様である。
メモリデータ移動制御部48は、前のバイリニアフィルタリング処理のときに第1〜第4のテクスチャメモリ1a〜1dに格納されたテクスチャデータ群のうちV座標最大のテクスチャデータを、第1〜第4のテクスチャメモリ1a〜1d内において、次のバイリニアフィルタリング処理のために用いるテクスチャデータ群のうちV座標最小(ここでは0)のテクスチャデータを格納する領域に、移動させる機能を有する。
図15は外部記憶手段上のテクスチャデータを分割して内部のテクスチャメモリに転送してバイリニアフィルタリングを行う場合のデータ分割の例を示す概念図であり、8ピクセル×5ピクセルの領域でテクスチャを分割する場合を例にとっている。図15では、第1のテクスチャデータ群と第2のテクスチャデータ群とで、領域ARが重複している。すなわち、バイリニアフィルタリングのためにテクスチャデータを分割する際には、境界部分が1ライン重なるようにする。これは、テクスチャデータ群の境界部分についてバイリニアフィルタリングを行うには、隣接するテクスチャデータが必要になるためである。
このため、第1のテクスチャメモリ群をテクスチャメモリ1a〜1dに格納し、バイリニアフィルタリング処理を行った後、第2のテクスチャメモリ群をテクスチャメモリ1a〜1dに格納する場合には、通常は、重複領域ARのテクスチャデータが、テクスチャメモリ1a〜1dに2度書きされることになる。
これに対して本実施形態では、メモリデータ移動制御部48を設けることによって、重複領域ARの2度書きを回避し、外部記憶手段からのテクスチャデータの転送量を削減することができる。すなわち、メモリデータ移動制御部48が、第1のテクスチャメモリ群に対するバイリニアフィルタリング処理が終了した後、メモリデータ移動期間において、重複領域ARのテクスチャデータをテクスチャメモリ1a〜1d内において移動させる処理を行う。
メモリデータ移動制御部48は、データ移動処理用のメモリアドレスMADおよびライトイネーブルNMWEを出力し、セレクタ49、セレクタ50a〜50dおよびセレクタ52a〜52dを制御する。
セレクタ49は、データ移動処理期間はライトイネーブルNMWEを選択し、それ以外の期間はライトイネーブルNWEa〜NWEdを選択し、ライトイネーブルNWEa’〜NWEd’として出力する。
セレクタ50a〜50dは、テクスチャデータをテクスチャメモリ1a〜1dに書き込む期間は書き込みアドレスWADa〜WADdを選択し、バイリニアフィルタリング演算処理期間は読み出しアドレスRADa〜RADdを選択し、データ移動処理期間はアドレスMADを選択し、メモリアドレスADa〜ADdとして出力する。
レジスタ51a〜51dは32ビットのフリップフロップであり、テクスチャメモリ1a〜1dから読み出されたデータDOa〜DOdを記憶する。セレクタ52a〜52dは、データ移動処理期間はレジスタ51a〜51dの出力を選択し、それ以外の期間は書き込みデータDIを選択し、書き込みデータDIa〜DIdとして出力する。
図16はテクスチャメモリ1a〜1d内のデータ移動処理の例を示すタイミングチャートである。なお、4個のテクスチャメモリ1a〜1dそれぞれに対して、同時に処理が行われる。図16では、V座標最大すなわち重複領域のテクスチャデータが2個のアドレスa,bにわたって存在する場合を例にとって示している。
図16に示すように、メモリデータ移動制御部48は、アドレスMADとして「アドレスa」を2サイクル出力し、これに並行して、ライトイネーブルNMWEをメモリ読み出し状態(NMWE=“1”)で2サイクル出力し、テクスチャメモリ1a〜1dからアドレスaにおける各データを読み出し、レジスタ51a〜51dにそれぞれ格納する。
次のサイクルにおいて、アドレスMADとして“0”を1サイクル出力し、これに並行して、ライトイネーブルNMWEをメモリ書き込み状態(NMWE=“0”)で1サイクル出力し、テクスチャメモリ1a〜1dのアドレス0に対応する領域に、レジスタ51a〜51dに格納されたデータをそれぞれ書き込む。その後、「アドレスb」についても同様にしてデータを読み出し、テクスチャメモリ1a〜1dのアドレス1に対応する領域に、書き込む。
このような動作によって、テクスチャメモリ内で、テクスチャデータ群同士の重複領域におけるテクスチャデータが、V座標最大となる領域からV座標が0となる領域に移動される。なお図16では、V座標最大のテクスチャデータが2個のアドレスに存在する場合について示したが、V座標最大のテクスチャデータは、1個のアドレスに存在する場合もあるし、3個以上のアドレスにわたって存在する場合もある。
テクスチャメモリ1a〜1d内で重複領域におけるテクスチャデータを移動した後は、次のテクスチャデータ群をテクスチャメモリ1a〜1dに書き込む際、重複領域のテクスチャデータを除いた分を、移動されたテクスチャデータの続きのアドレスからテクスチャメモリ1a〜1dに書き込めばよい。
以上のように本実施形態によると、外部記憶手段上のテクスチャデータを分割して内部のテクスチャメモリに転送してバイリニアフィルタリングを行う際に、重複領域のテクスチャデータを予めテクスチャメモリ内で移動しておくため、次のテクスチャデータ群の転送量を削減できるので、テクスチャデータの転送をより高速に行うことができる。
(第4の実施形態)
図17は本発明の第4の実施形態に係るテクスチャ処理装置の構成を示すブロック図である。同図中、図1と共通の構成要素には図1と同一の符号を付しており、ここではその詳細な説明を省略する。テクスチャメモリ1a〜1d、メモリ読み出し部3、セレクタ4a〜4d、テクスチャ選択部5およびバイリニアフィルタリング演算部6は第1の実施形態で説明したものと同様であり、メモリ書き込み部2Aは第2の実施形態で説明したものと同様である。
本実施形態では、メモリ書き込み部2Aは、外部記憶手段上のテクスチャデータを分割してテクスチャメモリ1a〜1dに転送してバイリニアフィルタリングを行う際、すでにテクスチャメモリ1a〜1dに格納されたテクスチャデータのうちV座標最大のテクスチャデータが格納されたアドレスの続きに書き込み開始アドレスを設定し、次の分割されたテクスチャデータ群から重複領域のテクスチャデータを除いた分を、テクスチャメモリ1a〜1dに書き込む。
なお、開始アドレスから順にテクスチャデータをテクスチャメモリに書き込む際、書き込みアドレスがテクスチャメモリの最大アドレスを超えた場合は、書き込みアドレスを0に戻し、続きのテクスチャデータを順に書き込む。ここでは、書き込みアドレス生成部40のレジスタ44は8ビットのフリップフロップであり、メモリアドレスを生成できる最低限のものである。このため、最大アドレスを越えたときは、書き込みアドレスは自動的に0に戻ることになる。
ここで、図示していないCPUのような外部制御部が、次のような動作を行う。外部制御部は、書き込みアドレスを把握しており、その続きのアドレスを書き込み開始アドレスに設定する。これにより、V座標最大のテクスチャデータのアドレスが認識されたことになる。また外部制御部は、次のテクスチャデータ群について、重複領域の続きからデータを転送する。これにより、重複領域のテクスチャデータが次のテクスチャデータ群から除かれることになる。
図18は分割されたテクスチャデータ群が順にテクスチャメモリに格納される様子を示す。図18では、32ビットのテクスチャデータを横128ピクセル×縦8ピクセルの領域で分割した場合を例にとっており、4個のテクスチャメモリ1a〜1dのメモリ領域を総合して図示している。
図18(a)は第1のテクスチャデータ群がテクスチャメモリに格納された状態であり、Vaは第1のテクスチャデータ群のV座標である。図18(b)は第2のテクスチャデータ群がテクスチャメモリに格納された状態であり、Vbは第2のテクスチャデータ群のV座標である。第1のテクスチャデータ群との重複領域となるVa=7の領域は、そのままVb=0の領域として用い、Vb=0の領域に続いて、Vb=1〜7のテクスチャデータを格納する。ただし、Vb=0の領域はメモリアドレスの最大アドレスに存在するため、Vb=1以降のテクスチャデータは、アドレス0に戻って順に格納される。
図18(c)は第3のテクスチャデータ群が格納された状態であり、Vcは第3のテクスチャデータ群のV座標である。第2のテクスチャデータ群との重複領域となるVb=7の領域は、そのままVc=0の領域として用い、Vc=0の領域に続いて、Vc=1〜7のテクスチャデータを格納する。ただし、Vc=1の領域はメモリアドレスの最大アドレスに存在するため、Vc=2以降のテクスチャデータは、アドレス0に戻って順に格納される。
テクスチャ座標変換部53は、図18のように格納された各テクスチャデータがメモリ読み出し部3によって正しく読み出せるように、テクスチャ座標(U,V)を(U’,V’)に変換して出力する。すなわち、テクスチャ座標変換部53は、座標値Uはそのまま座標値U’として出力し、座標値Vはテクスチャメモリ1a〜1dに格納されているテクスチャデータのV座標0の領域の位置に応じて、座標値V’に変換する。これは、メモリ読み出し部3では、V座標0の領域がメモリアドレス0に存在することを前提にテクスチャ読み出しを行うからである。ここで、V座標0の領域の位置は、上述のCPUのような外部制御部が覚えておく。そして、外部からテクスチャ座標変換部53に対して、V座標0の領域の位置を設定する。
ここで、テクスチャメモリ1a〜1dに格納されているテクスチャデータのV座標0の領域の位置をVS、テクスチャデータ群の縦方向のピクセル長をTH、そしてTH−VSをVMとすると、座標値VのV’への変換は、
V<VSのとき V’=V+VS
V≧VSのとき V’=V−VM
とすればよい。図18(c)の場合を例にとると、VS=6、TH=8、VM=TH−VS=8−6=2となり、V=1のときは、V<VSなので、V’=V+VS=1+6=7となり、また、V=4のときは、V≧VSなので、V’=V−VM=4−2=2となる。このようにして、テクスチャデータの読み出しが正しく行えるように、テクスチャ座標の変換が行われる。
以上のように本実施形態によると、テクスチャデータを分割してテクスチャメモリに転送してバイリニアフィルタリングを行う際、第3の実施形態のように、重複領域のテクスチャデータを予めテクスチャメモリ内で移動する必要がないため、データを移動させる回路を削減できるだけでなく、テクスチャメモリ内でデータを移動させる処理を省くことができるので、テクスチャデータの転送をさらに高速に実行することができる。
本発明では、テクスチャデータがテクスチャメモリに高速に転送され、バイリニアフィルタリング処理が高速に実行可能になるので、例えば、ゲーム機やカーナビゲーションにおいて、テクスチャマッピングをより高速に実現することができる。
本発明の第1および第2の実施形態に係るテクスチャ処理装置の構成を示すブロック図である。 図1におけるメモリ書き込み部の内部構成を示す図である。 図2のメモリ書き込み部の動作を説明するための図であり、メモリに書き込むテクスチャデータのV座標が偶数か奇数かを判定する条件を示す図である。 図2のメモリ書き込み部の動作を説明するための図であり、ライトイネーブルを決定する条件を示す図である。 メモリ書き込み処理を示すタイミングチャートである。 図1におけるメモリ読み出し部の内部構成を示す図である。 図1のメモリ読み出し部の動作を説明するための図であり、TOアドレス生成部のメモリアドレス生成内容を示す図である。 図1のメモリ読み出し部の動作を説明するための図であり、セレクト信号の生成内容を示す図である。 図1のメモリ読み出し部の動作を説明するための図であり、チップイネーブルの生成内容を示す図である。 テクスチャ選択部の動作を説明するための図であり、テクスチャデータT0〜T3を選択する内容を示す図である。 本発明の第1の実施形態におけるテクスチャデータの書き込みおよび読み出しを概念的に示す図である。 本発明の第2の実施形態におけるメモリ書き込み部の構成を示すブロック図である。 図12のメモリ書き込み部の動作を説明するための図であり、テクスチャデータ群のV座標が奇数から始まる場合において、メモリに書き込むテクスチャデータのV座標が偶数か奇数かを判定する条件を示す図である。 本発明の第3の実施形態に係るテクスチャ処理装置の構成を示すブロック図である。 テクスチャデータを分割転送する際のデータ分割の例を示す概念図である。 テクスチャメモリ内のデータ移動処理の例を示すタイミングチャートである。 本発明の第4の実施形態に係るテクスチャ処理装置の構成を示すブロック図である。 分割したテクスチャデータ群を順にテクスチャメモリに格納する様子を示す図である。 バイリニアフィルタリングの概念を示す図である。
符号の説明
1a 第1のテクスチャメモリ
1b 第2のテクスチャメモリ
1c 第3のテクスチャメモリ
1d 第4のテクスチャメモリ
2,2A メモリ書き込み部
3 メモリ読み出し部
6 バイリニアフィルタリング演算部
48 メモリデータ移動制御部
NCEa,NCEb,NCEc,NCEd チップイネーブル

Claims (9)

  1. テクスチャデータを格納するための第1、第2、第3および第4のテクスチャメモリと、
    与えられたテクスチャデータを、前記第1〜第4のテクスチャメモリに書き込む制御を行うメモリ書き込み部と、
    テクスチャ座標の近傍の4点のテクスチャデータを、前記第1〜第4のテクスチャメモリから読み出す制御を行うメモリ読み出し部と、
    前記メモリ読み出し部によって前記第1〜第4のテクスチャメモリから読み出された4点のテクスチャデータを用いて、バイリニアフィルタリング演算を行うバイリニアフィルタリング演算部とを備え、
    前記メモリ書き込み部は、
    1回の書き込み動作において、1度に転送可能でありかつ1個のアドレスに書き込み可能な個数のテクスチャデータを、共通に、前記第1〜第4のテクスチャメモリのうちのいずれか1つに対して、書き込み、かつ、
    前記第1〜第4のテクスチャメモリへのデータ書き込みを、書き込むテクスチャデータのV座標が偶数のときは、第1、第2、第3、第4の順に行う一方、奇数のときは、第3、第4、第1、第2の順に、行うものである
    ことを特徴とするテクスチャ処理装置。
  2. 請求項1において、
    前記メモリ読み出し部は、データ読み出しの際に、前記第1〜第4のテクスチャメモリのうちアクセスが不要のテクスチャメモリに対し、チップイネーブルをディスエーブルにする
    ことを特徴とするテクスチャ処理装置。
  3. 請求項1において、
    前記メモリ読み出し部は、データ読み出しの際に、前記第1〜第4のテクスチャメモリのうちアクセスが不要のテクスチャメモリに対し、クロック入力を停止する
    ことを特徴とするテクスチャ処理装置。
  4. 請求項1において、
    前記メモリ書き込み部は、与えられたテクスチャデータ群の先頭V座標が偶数か奇数かを示すVラインモードを受け、このVラインモードに応じて、各テクスチャデータのV座標が偶数か奇数かを判定するものである
    ことを特徴とするテクスチャ処理装置。
  5. 請求項4において、
    前記メモリ書き込み部は、データ書き込みの開始アドレスが、設定可能に構成されている
    ことを特徴とするテクスチャ処理装置。
  6. 請求項4において、
    前記メモリ書き込み部は、与えられたテクスチャデータを、指示されたシフト値だけシフトして、前記第1〜第4のテクスチャメモリに書き込むものである
    ことを特徴とするテクスチャ処理装置。
  7. 請求項1において、
    第1のテクスチャデータ群を格納した状態の前記第1〜第4のテクスチャメモリに、次に用いる第2のテクスチャデータ群を書き込む際に、前記第1〜第4のテクスチャメモリ内において、前記第1のテクスチャデータ群のV座標最大のテクスチャデータを、前記第2のテクスチャデータ群のV座標最小のテクスチャデータを格納する位置に移動させるメモリデータ移動制御部を備えた
    ことを特徴とするテクスチャ処理装置。
  8. 請求項1において、
    前記メモリ書き込み部は、
    第1のテクスチャデータ群を格納した状態の前記第1〜第4のテクスチャメモリに、次に用いる第2のテクスチャデータ群を書き込む際に、前記第1のテクスチャデータ群のV座標最大のテクスチャデータに続けて、前記第2のテクスチャデータ群のうちV座標最小のテクスチャデータを除くテクスチャデータを、書き込むものであり、
    前記メモリ読み出し部は、
    前記第2のテクスチャデータ群のテクスチャデータの読み出しを、前記第1のテクスチャデータ群のV座標最大のテクスチャデータが格納された位置を基準にして、行うものである
    ことを特徴とするテクスチャ処理装置。
  9. 請求項1において、
    テクスチャデータの転送を、1ピクセル当たりのテクスチャデータが16ビットのときは、2個ずつ行い、32ビットのときは、1個ずつ行う
    ことを特徴とするテクスチャ処理装置。
JP2003386769A 2003-11-17 2003-11-17 テクスチャ処理装置 Expired - Lifetime JP4381778B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2003386769A JP4381778B2 (ja) 2003-11-17 2003-11-17 テクスチャ処理装置
DE602004004351T DE602004004351T2 (de) 2003-11-17 2004-11-04 Texturprozessor
EP04026216A EP1533752B1 (en) 2003-11-17 2004-11-04 Texture processor
US10/983,661 US7365751B2 (en) 2003-11-17 2004-11-09 Texture processor
CNB2004100910821A CN1293513C (zh) 2003-11-17 2004-11-16 纹理处理器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003386769A JP4381778B2 (ja) 2003-11-17 2003-11-17 テクスチャ処理装置

Publications (3)

Publication Number Publication Date
JP2005149199A true JP2005149199A (ja) 2005-06-09
JP2005149199A5 JP2005149199A5 (ja) 2006-10-26
JP4381778B2 JP4381778B2 (ja) 2009-12-09

Family

ID=34431522

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003386769A Expired - Lifetime JP4381778B2 (ja) 2003-11-17 2003-11-17 テクスチャ処理装置

Country Status (5)

Country Link
US (1) US7365751B2 (ja)
EP (1) EP1533752B1 (ja)
JP (1) JP4381778B2 (ja)
CN (1) CN1293513C (ja)
DE (1) DE602004004351T2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070008333A1 (en) * 2005-07-07 2007-01-11 Via Technologies, Inc. Texture filter using parallel processing to improve multiple mode filter performance in a computer graphics environment
US8444768B2 (en) * 2009-03-27 2013-05-21 Eastman Chemical Company Compositions and methods for removing organic substances
GB2470611B (en) * 2009-06-25 2011-06-29 Tv One Ltd Apparatus and method for processing data

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL72685A (en) * 1983-08-30 1988-08-31 Gen Electric Advanced video object generator
JPH11154237A (ja) 1997-11-20 1999-06-08 Fujitsu Ltd テクスチャマッピング用メモリ装置
US6084601A (en) * 1998-04-30 2000-07-04 Hewlett Packard Company Corner buffer system for improved memory read efficiency during texture mapping
KR100283413B1 (ko) * 1998-12-15 2001-04-02 김영환 텍스처 매핑시스템
US7050063B1 (en) * 1999-02-11 2006-05-23 Intel Corporation 3-D rendering texture caching scheme
US6496193B1 (en) * 1999-12-30 2002-12-17 Intel Corporation Method and apparatus for fast loading of texture data into a tiled memory
US6466226B1 (en) * 2000-01-10 2002-10-15 Intel Corporation Method and apparatus for pixel filtering using shared filter resource between overlay and texture mapping engines
US6993637B1 (en) * 2002-11-07 2006-01-31 Lsi Logic Corporation Unified memory system for multiple processors and method for controlling the same

Also Published As

Publication number Publication date
DE602004004351D1 (de) 2007-03-08
EP1533752A3 (en) 2005-06-29
US7365751B2 (en) 2008-04-29
EP1533752A2 (en) 2005-05-25
JP4381778B2 (ja) 2009-12-09
DE602004004351T2 (de) 2007-05-10
EP1533752B1 (en) 2007-01-17
CN1619590A (zh) 2005-05-25
CN1293513C (zh) 2007-01-03
US20050104891A1 (en) 2005-05-19

Similar Documents

Publication Publication Date Title
US6133923A (en) Method and apparatus for texture data
JP2003517649A (ja) 機械視覚システムにおける画像データ等の論理的に近接したデータサンプル用データ処理システム
JP3623972B2 (ja) 図形描画処理装置
JPH0536276A (ja) メモリーコントロールデバイス
JP4381778B2 (ja) テクスチャ処理装置
EP0827082B1 (en) Semiconductor memory having arithmetic function
KR980010976A (ko) 그래픽 이미지를 고속 역전시키는 그래픽 이미지 디스플레이 장치
US5895502A (en) Data writing and reading method for a frame memory having a plurality of memory portions each having a plurality of banks
JP3305406B2 (ja) プログラム制御のプロセッサ
US6108746A (en) Semiconductor memory having an arithmetic function and a terminal arrangement for coordinating operation with a higher processor
CN115426466A (zh) 一种图像数据的读写控制系统及读写控制方法
US6489967B1 (en) Image formation apparatus and image formation method
JP5310079B2 (ja) 画像描画装置
JP4482996B2 (ja) データ記憶装置とその方法および画像処理装置
JP2009048509A (ja) マルチテクスチャマッピング装置、およびマルチテクスチャデータのメモリ格納方法
JP2557630B2 (ja) 画像縮小装置
JP2656754B2 (ja) 画像データ処理装置及びそれを用いたシステム
JP3247441B2 (ja) 画像処理装置
KR100252648B1 (ko) 그래픽스시스템및그래픽스드로잉방법
JP3671744B2 (ja) 画像合成表示装置
JP2806376B2 (ja) 画像処理装置および画像処理方法
JPH0336676A (ja) ピクセル描画装置
JPH0528399B2 (ja)
JPH09147097A (ja) データ補間装置
JP2007279780A (ja) 画像処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060907

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060908

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090810

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090825

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090916

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

Free format text: PAYMENT UNTIL: 20121002

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4381778

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20131002

Year of fee payment: 4

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term