JP6132902B1 - コンピュータグラフィック装置 - Google Patents

コンピュータグラフィック装置 Download PDF

Info

Publication number
JP6132902B1
JP6132902B1 JP2015257541A JP2015257541A JP6132902B1 JP 6132902 B1 JP6132902 B1 JP 6132902B1 JP 2015257541 A JP2015257541 A JP 2015257541A JP 2015257541 A JP2015257541 A JP 2015257541A JP 6132902 B1 JP6132902 B1 JP 6132902B1
Authority
JP
Japan
Prior art keywords
adder
output
data
input
unit
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.)
Active
Application number
JP2015257541A
Other languages
English (en)
Other versions
JP2017120594A (ja
Inventor
ベンジャミン シュミット
ベンジャミン シュミット
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.)
Digital Media Professionals Inc
Original Assignee
Digital Media Professionals Inc
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 Digital Media Professionals Inc filed Critical Digital Media Professionals Inc
Priority to JP2015257541A priority Critical patent/JP6132902B1/ja
Application granted granted Critical
Publication of JP6132902B1 publication Critical patent/JP6132902B1/ja
Publication of JP2017120594A publication Critical patent/JP2017120594A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Complex Calculations (AREA)
  • Image Processing (AREA)
  • Image Generation (AREA)

Abstract

【課題】3D描画装置の融通のきく描画手段と2D描画装置を分け隔てなくシームレスに組み合わせられるようなコンピュータグラフィック装置を提供する。【解決手段】テクスチャーサンンプラーユニットにおける乗算器の個数のウェイト係数を特定し,記憶する手段と,選択されたコンフィギュレーションに応じて,加算器37、39及び乗算器31、33、35の入力部及び出力部の接続を変更することができるテクスチャーサンプラーユニットのコンフィグレーションを選択する手段とを有する。【選択図】図1

Description

本発明は,コンピュータグラフィック装置に関する。本発明は,基本的には,3次元(3D)グラフィックスパイプラインのテクスチャーユニットを2D処理にも用いることができるようにした装置に関する。
グラフィック処理ユニット(GPU)は,テクスチャ処理オペレーションを行うためのテクスチャーユニットを含むことが多い。テクスチャーサンプラーユニットは,テクスチャーユニットともよばれる要素であり,たとえば,米国特許第9076254号,米国特許第8570336号,米国特許出願公開2015/0187089号明細書,米国特許出願公開2015/0130826号明細書,米国特許出願2011/0025700号明細書にも記載される通り公知の要素である。テクスチャーサンプラーユニットは3次元(3D)コンピュータグラフィックを描画するために用いられるが,2次元(2D)グラフィックスとは使用が異なる。このため,コンピュータグラフィック装置は,通常,3D描画装置と,2D描画装置を備え,それらとGPUとをパイプラインで接続し,必要に応じて,パイプラインの接続を切り替える必要があった。たとえば,特許5240588号公報には,コンピュータグラフィックス用のパイプライン処理のためのシステムが開示されている。
米国特許第9076254号 米国特許第8570336号 米国特許出願公開2015/0187089号明細書 米国特許出願公開2015/0130826号明細書 米国特許出願2011/0025700号明細書 特許5240588号公報
本発明は,3D描画装置の融通のきく描画手段と2D描画装置を分け隔てなくシームレスに組み合わせられるようなコンピュータグラフィック装置を提供することを目的とする。
本出願の最初の発明は,A個の加算器とB個の乗算器を有するテクスチャーサンプラーユニットと,メモリMとを含む,コンピュータグラフィック装置に関する。
この装置は,(1)テクスチャーサンンプラーユニットにおける乗算器の個数であるB個のウェイト係数Wを特定し,記憶する手段と,(2)メモリMの番地X(x,y)におけるデータと,番地Xに近接する番地のデータとを取得する手段と,(3)テクスチャーサンプラーユニットのコンフィグレーションを選択する手段と,(4)メモリから読み出されたデータと,ウェイト係数Wとを用い,選択されたコンフィグレーションに基づいた演算を行う手段と,(5)演算により得られた演算結果を出力する手段と,を有する。
そして,テクスチャーサンプラーユニットのコンフィグレーションを選択する手段は,選択されたコンフィギュレーションに応じて,加算器及び乗算器の入力部及び出力部の接続を変更するものである。
上記の装置の好ましいものは以下のものである。
メモリMの番地Xに近接する番地が,
{(xi−1,y),(xi+1,y)},{(x,yj−1),(x,yj+1)},及び{(xi+1,y),(x,yj+1)}のいずれかである。
そして,番地X及び隣接する番地のデータを,第1,第2及び第3のデータD,D,Dとする。そして,加算器と乗算器の(最低)含有個数Aが2,Bが3である。
テクスチャーサンプラーユニットは,第1の乗算器31,第2の乗算器33,第3の乗算器35,第1の加算器37及び第2の加算器39を有する。
ウェイト係数Wは,第1,第2及び第3のウェイト係数w,w,wを含む。
第1の乗算器31には,第1のウェイト係数w及び第1のデータDが入力され,w*Dが求められる。
第2の乗算器33には,第2のウェイト係数w及び第2のデータDが入力され,w*Dが求められる。
第3の乗算器35には,第3のウェイト係数w及び第3のデータDが入力され,w*Dが求められる。
第1の加算器37は,第2の乗算器33及び第3の乗算器35と接続され,
第1の加算器37には,w*Dとw*Dが入力され,w*D+w*Dが求められる。
第2の加算器39は,第1の乗算器31及び第1の加算器37と接続される。
第2の加算器39には,w*Dとw*D+w*Dが入力され,w*D
+w*D+w*Dが求められる。
上記の装置の好ましいものは以下のものである。
Aは,5であり,Bは1であり,Wは,0.5又は1/2である。
テクスチャーサンプラーユニットは,
第1,第2,第3,第4及び第5の加算器51,53,55,57,59及び第1の乗算器61を有する。
第1,第2,第3,及び第4の加算器51,53,55,57は,それぞれ2つの入力部と,一方の入力部に接続された符号反転器と,正負判定部と,2つの出力部を有する。
番地Xに近接する番地は,番地Xに隣接する3つの番地である。
番地X及び隣接する番地のデータを,第1,第2,第3及び第4のデータD,D,D,Dとする。
第1の加算器51には,第1及び第2のデータD,Dが入力され,第1及び第2のデータD,Dのうち小さい方Sが第1の加算器51の第1の出力部から出力されるとともに,第1及び第2のデータD,Dのうち大きい方Lが第1の加算器51の第2の出力部から出力される。
第2の加算器53には,第3及び第4のデータD,Dが入力され,第3及び第4のデータD,Dのうち小さい方Sが第2の加算器53の第1の出力部から出力されるとともに,第3及び第4のデータD,Dのうち大きい方Lが第2の加算器53の第2の出力部から出力される。
第3の加算器55は,第1の加算器51の第1の出力部,及び第2の加算器の第1の出力部と接続され,第1及び第2のデータD,Dのうち小さい方S及び第3及び第4のデータD,Dのうち小さい方Sが入力され,第3の加算器55に入力された値S,Sのうち小さい方S21が第3の加算器55の第1の出力部から出力されるとともに,第3の加算器55に入力された値S,Sのうち大きい方L21が第3の加算器55の第2の出力部から出力される。
第4の加算器57は,第1の加算器51の第2の出力部,及び第2の加算器の第2の出力部と接続され,第1及び第2のデータD,Dのうち大きい方L及び第3及び第4のデータD,Dのうち大きい方Lが入力され,第4の加算器57に入力された値L,Lのうち小さい方S22が第4の加算器57の第1の出力部から出力されるとともに,第4の加算器57に入力された値L,Lのうち大きい方L22が第4の加算器57の第2の出力部から出力される。
第5の加算器59は,第3の加算器55の第2の出力部及び第4の加算器57の第1の出力部と接続され,第3の加算器55に入力された値S,Sのうち大きい方L21,第4の加算器57に入力された値L,Lのうち小さい方S22が入力され,入力された2つの値の和L21+S22が,第5の加算器59の出力部から出力される。
第1の乗算器61は,第5の加算器57の出力部と接続された第1の入力部と,ウェイト係数が入力される第2の入力部とを有し,入力された情報を掛け合わせた値((L21+S22)/2)を出力部から出力するものである。
上記の装置の好ましいものは以下のものである。
Aは,5であり,Bは0である。
テクスチャーサンプラーユニットは,
第1,第2,第3,第4及び第5の加算器71,73,75,77,79を有する。
第1,第2,第3,第4及び第5の加算器71,73,75,77,79は,それぞれ2つの入力部と,一方の入力部に接続された符号反転器と,正負判定部と,2つの出力部を有する。
番地Xに近接する番地は,番地Xに隣接する3つの番地である。
番地X及び隣接する番地のデータを,第1,第2,第3及び第4のデータD,D,D,Dとする。
第1の加算器71には,第1及び第2のデータD,Dが入力され,第1及び第2のデータD,Dのうち小さい方Sが第1の加算器71の第1の出力部から出力されるとともに,第1及び第2のデータD,Dのうち大きい方Lが第1の加算器71の第2の出力部から出力される。
第2の加算器73には,第3及び第4のデータD,Dが入力され,第3及び第4のデータD,Dのうち小さい方Sが第2の加算器73の第1の出力部から出力されるとともに,第3及び第4のデータD,Dのうち大きい方Lが第2の加算器73の第2の出力部から出力される。
第3の加算器75は,第1の加算器71の第1の出力部,及び第2の加算器の第1の出力部と接続され,第1及び第2のデータD,Dのうち小さい方S及び第3及び第4のデータD,Dのうち小さい方Sが入力され,第3の加算器75に入力された値S,Sのうち小さい方S21が第3の加算器75の第1の出力部から出力されるとともに,第3の加算器75に入力された値S,Sのうち大きい方L21が第3の加算器75の第2の出力部から出力される。
第4の加算器77は,第1の加算器71の第2の出力部,及び第2の加算器の第2の出力部と接続され,第1及び第2のデータD,Dのうち大きい方L及び第3及び第4のデータD,Dのうち大きい方Lが入力され,第4の加算器77に入力された値L,Lのうち小さい方S22が第4の加算器77の第1の出力部から出力されるとともに,第4の加算器77に入力された値L,Lのうち大きい方L22が第4の加算器77の第2の出力部から出力される。
第5の加算器79は,第3の加算器75の第2の出力部及び第4の加算器77の第1の出力部と接続され,第3の加算器75に入力された値S,Sのうち大きい方L21,第4の加算器77に入力された値L,Lのうち小さい方S22が入力され,第5の加算器79に入力された2つの値L21,S22のうち小さい方S31が,第5の加算器79の第1の出力部から出力され,第5の加算器79に入力された2つの値L21,S22のうち大きい方L31が,第5の加算器79の第2の出力部から出力される。
上記の装置の好ましいものは以下のものである。
テクスチャーサンプラーユニットのコンフィグレーションを選択する手段は,
(1)コンボリューション演算用のコンフィグレーション,(2)中間,最少及び最大を求める演算のためのコンフィグレーション,及び(3)最少,2番目,3番目及び最大を求める演算のためのコンフィグレーションのうち,2又は3つ以上を含むコンフィグレーションを選択可能なものである。
そして,(1)コンボリューション演算用のコンフィグレーションは,
番地Xに近接する番地は,
{(xi−1,y),(xi+1,y)}, {(x,yj−1),(x,yj+1)},及び {(xi+1,y),(x,yj+1)}のいずれかであり,
番地X及び隣接する番地のデータを,第1,第2及び第3のデータD,D,Dとし,
Aは2,Bは3であり,
テクスチャーサンプラーユニットは,
第1の乗算器31,第2の乗算器33,第3の乗算器35,第1の加算器37及び第2の加算器39を有し,
ウェイト係数Wは,第1,第2及び第3のウェイト係数w,w,wを含み,
第1の乗算器31には,第1のウェイト係数w及び第1のデータDが入力され,w*Dが求められ,
第2の乗算器33には,第2のウェイト係数w及び第2のデータDが入力され,w*Dが求められ,
第3の乗算器35には,第3のウェイト係数w及び第3のデータDが入力され,w*Dが求められ,
第1の加算器37は,第2の乗算器33及び第3の乗算器35と接続され,
第1の加算器37には,w*Dとw*Dが入力され,w*D+w*Dが求められ,
第2の加算器39は,第1の乗算器31及び第1の加算器37と接続され,
第2の加算器39には,w*Dとw*D+w*Dが入力され,w*D
+w*D+w*Dが求められる。
(2)中間,最少及び最大を求める演算のためのコンフィグレーションは,
Aは,5であり,Bは1であり,Wは,0.5又は1/2であり,
テクスチャーサンプラーユニットは,
第1,第2,第3,第4及び第5の加算器51,53,55,57,59及び第1の乗算器61を有し,
第1,第2,第3,及び第4の加算器51,53,55,57は,それぞれ2つの入力部と,一方の入力部に接続された符号反転器と,正負判定部と,2つの出力部を有し,
番地Xに近接する番地は,番地Xに隣接する3つの番地であり,
番地X及び隣接する番地のデータを,第1,第2,第3及び第4のデータD,D,D,Dとし,
第1の加算器51には,第1及び第2のデータD,Dが入力され,第1及び第2のデータD,Dのうち小さい方Sが第1の加算器51の第1の出力部から出力されるとともに,第1及び第2のデータD,Dのうち大きい方Lが第1の加算器51の第2の出力部から出力され,
第2の加算器53には,第3及び第4のデータD,Dが入力され,第3及び第4のデータD,Dのうち小さい方Sが第2の加算器53の第1の出力部から出力されるとともに,第3及び第4のデータD,Dのうち大きい方Lが第2の加算器53の第2の出力部から出力され,
第3の加算器55は,第1の加算器51の第1の出力部,及び第2の加算器の第1の出力部と接続され,第1及び第2のデータD,Dのうち小さい方S及び第3及び第4のデータD,Dのうち小さい方Sが入力され,第3の加算器55に入力された値S,Sのうち小さい方S21が第3の加算器55の第1の出力部から出力されるとともに,第3の加算器55に入力された値S,Sのうち大きい方L21が第3の加算器55の第2の出力部から出力され,
第4の加算器57は,第1の加算器51の第2の出力部,及び第2の加算器の第2の出力部と接続され,第1及び第2のデータD,Dのうち大きい方L及び第3及び第4のデータD,Dのうち大きい方Lが入力され,第4の加算器57に入力された値L,Lのうち小さい方S22が第4の加算器57の第1の出力部から出力されるとともに,第4の加算器57に入力された値L,Lのうち大きい方L22が第4の加算器57の第2の出力部から出力され,
第5の加算器59は,第3の加算器55の第2の出力部及び第4の加算器57の第1の出力部と接続され,第3の加算器55に入力された値S,Sのうち大きい方L21,第4の加算器57に入力された値L,Lのうち小さい方S22が入力され,入力された2つの値の和L21+S22が,第5の加算器59の出力部から出力され,
第1の乗算器61は,第5の加算器57の出力部と接続された第1の入力部と,ウェイト係数が入力される第2の入力部とを有し,入力された情報を掛け合わせた値((L21+S22)/2)を出力部から出力するものである。
(3)最少,2番目,3番目及び最大を求める演算のためのコンフィグレーションは,
Aは,5であり,Bは0であり,
テクスチャーサンプラーユニットは,
第1,第2,第3,第4及び第5の加算器71,73,75,77,79を有し,
第1,第2,第3,第4及び第5の加算器71,73,75,77,79は,それぞれ2つの入力部と,一方の入力部に接続された符号反転器と,正負判定部と,2つの出力部を有し,
番地Xに近接する番地は,番地Xに隣接する3つの番地であり,
番地X及び隣接する番地のデータを,第1,第2,第3及び第4のデータD,D,D,Dとし,
第1の加算器71には,第1及び第2のデータD,Dが入力され,第1及び第2のデータD,Dのうち小さい方Sが第1の加算器71の第1の出力部から出力されるとともに,第1及び第2のデータD,Dのうち大きい方Lが第1の加算器71の第2の出力部から出力され,
第2の加算器73には,第3及び第4のデータD,Dが入力され,第3及び第4のデータD,Dのうち小さい方Sが第2の加算器73の第1の出力部から出力されるとともに,第3及び第4のデータD,Dのうち大きい方Lが第2の加算器73の第2の出力部から出力され,
第3の加算器75は,第1の加算器71の第1の出力部,及び第2の加算器の第1の出力部と接続され,第1及び第2のデータD,Dのうち小さい方S及び第3及び第4のデータD,Dのうち小さい方Sが入力され,第3の加算器75に入力された値S,Sのうち小さい方S21が第3の加算器75の第1の出力部から出力されるとともに,第3の加算器75に入力された値S,Sのうち大きい方L21が第3の加算器75の第2の出力部から出力され,
第4の加算器77は,第1の加算器71の第2の出力部,及び第2の加算器の第2の出力部と接続され,第1及び第2のデータD,Dのうち大きい方L及び第3及び第4のデータD,Dのうち大きい方Lが入力され,第4の加算器77に入力された値L,Lのうち小さい方S22が第4の加算器77の第1の出力部から出力されるとともに,第4の加算器77に入力された値L,Lのうち大きい方L22が第4の加算器77の第2の出力部から出力され,
第5の加算器79は,第3の加算器75の第2の出力部及び第4の加算器77の第1の出力部と接続され,第3の加算器75に入力された値S,Sのうち大きい方L21,第4の加算器77に入力された値L,Lのうち小さい方S22が入力され,第5の加算器79に入力された2つの値L21,S22のうち小さい方S31が,第5の加算器79の第1の出力部から出力され,第5の加算器79に入力された2つの値L21,S22のうち大きい方L31が,第5の加算器79の第2の出力部から出力される,
本発明によれば,選択されたコンフィギュレーションに応じて,加算器及び乗算器の入力部及び出力部の接続を変更することができるので,3D描画装置と2D描画装置をそれぞれ設計しなくてもよくなる。本発明を用いれば,2D画像をも効率良く描画できるため,2D描画装置を別途設ける必要がなくなる。本発明によれば,3D描画装置の融通のきく描画手段と2D描画装置を分け隔てなくシームレスに組み合わせられるようになるので、3Dモードから2Dモードへ,さらに3Dモードへとパイプラインを止めて描画する必要が無くなり,3D及び2D描画がすべて3D描画の範疇に収まることとなる。
3Dのサンプラユニットは、不連続な座標軸でテクセルを参照するように設計された装置なので、周辺のテクセルを一度に読むように設計されていない。3D用のサンプラに対する拡張であるからこそ意味があります。本発明の装置は,周辺のテクセルを一度に読むため,テクスチャ用のキャッシュにヒットしやすくなる。
図1は,コンボリューション演算用のコンフィグレーションを示すブロック図である。 図2は,中間,最少及び最大を求める演算のためのコンフィグレーションを示すブロック図である。 図3は,最少,2番目,3番目及び最大を求める演算のためのコンフィグレーションを示すブロック図である。
以下,図面を用いて本発明を実施するための形態について説明する。本発明は,以下に説明する形態に限定されるものではなく,以下の形態から当業者が自明な範囲で適宜修正したものも含む。
本発明の第1の側面は, コンピュータグラフィック装置に関する。この装置は,コンピュータ内に搭載され,又はコンピュータそのものであり,コンピュータグラフィックスを描画するための装置である。このコンピュータグラフィックスは,そのまま又はほかの画像処理と合わせて,表示画像に用いられ,たとえばモニタなどの表示部に表示されることとなる。
3Dグラフィックスの前提
3Dグラフィックスパイプラインは、テクスチャ画像をオブジェクトに張り付ける作業を行う。テクスチャをサンプルする装置は、普通は球面など矩形でないところに画像を張り付ける事が前提で設計される。描画画像は,テレビ画面に張り付くイメージで位置が不変であるが,参照されるテクスチャは歪んだり傾いたり逆さまになったりすることが普通であり、テクスチャから参照するテクセルの座標が規則的でない事が多い。そのような前提で設計されるテクスチャサンプラは、テクスチャ画像のサンプリングに必要なピクセルだけをなるべく速くサンプルすることを目標として設計される。たとえば,描画結果で右隣のピクセルに対応するテクスチャのテクセルは、テクスチャ上では右隣どころか全く異なる点を参照することも多々ある。このため,3Dグラフィックスにおいては,多くの場合,テクセルの周辺を多く先読みしても意味がない。3Dのテクスチャサンプルユニットは、いろいろな拡大・縮小率に応じて変化する座標でも速く動作するように設計される。
2Dグラフィックスの前提
2Dグラフィックスでは、参照されるテクスチャ画像の座標系と描画する画像の座標系は,ほぼ一緒する。2Dグラフィックスにおいて,全体を赤みがからせるとか、白黒にするとか、ぼかすといった処理には座標の移動が必要ない。たとえば,ある描画画素の右の点は、参照されるテクスチャでも右隣にある。参照される画像と描画される画像の画素は対応する。このため、最初に纏まった画素を読みこんで、隣接するピクセルを処理するときに融通しあうことができる。処理の前に先読みをすれば,先読みしたテクスチャを利用することができる。
本発明は、本来3D画像の前提で設計されたテクスチャサンプラの能力を拡張することで、2Dの前提が成り立った場合に2Dで設計された装置のように速く動作できるものである。本発明によれば,テクスチャのキャッシュにも当たりやすくなるので、先読みをしたような効果が得られることとなる。3次元グラフィック用に設計された装置に本発明の装置を搭載して、3D処理のみならず2D処理で使う場合に最も高い効果が得られることとなる。
コンピュータグラフィック装置又はコンピュータグラフィック装置を含むコンピュータは,入力部,出力部,記憶部,演算部及び制御部を有している。そして,各要素は,情報の授受を行うことができるように,たとえばバスにより接続されている。入力部から所定の制御情報が入力されると,制御部は記憶部に記憶されるか制御プログラムを読み出し,制御プログラムからの制御プログラムの指令に従い,適宜記憶部に記憶されたデータを読み出して,演算部に所定の演算処理を行わせる。この演算がどのような処理であるかについてのコンフィギュレーションも制御プログラムの指示に従う。演算部が演算して得られる演算結果であるデータは,適宜記憶部に記憶され,出力部から出力される。
本発明のコンピュータグラフィック装置は,A個の加算器とB個の乗算器を有するテクスチャーサンプラーユニットと,メモリMとを含む。テクスチャーサンプラーユニットは,テクスチャーユニットともよばれる要素であり,たとえば,米国特許第9076254号,米国特許第8570336号,米国特許出願公開20150187089号明細書,米国特許出願公開20150130826号明細書,米国特許出願20110025700号明細書にも記載される通り公知の要素である。テクスチャーサンプラーユニットは,例えば,コンピュータグラフィックスを構成するポリゴンの各頂点における画像データを入手し,ポリゴンの画像データを作成する。
グラフィック処理ユニット(GPU)は,テクスチャ処理オペレーションを行うためのテクスチャーユニットを含むことが多い。テクスチャーユニットは、メモリに記憶されたテクスチャーデータにアクセスしてテクスチャーオペレーションを行う。テクスチャーユニットは、通常、テクスチャーパイプライン及びパイプラインバッファを含んでいる。例えば、テクスチャーパイプラインは、隣接ピクセルを分析して、テクスチャにおいてそれらピクセルの各々がどのくらい離れているかを決定することにより,LOD(Level of Detail:詳細度のレベル)の計算を行うために、各スロットがクロックサイクル当たり4つのピクセルを受け取ることができるようにし得る。
A個及びB個は,テクスチャーサンプラーユニット内の加算器及び乗算器の数である。A,Bは整数であることが好ましい。加算器及び乗算器は,ハードウェアにより構築してもよいし,シェーダコードなどのソフトウェアにより加算手段及び乗算手段として構築してもよい。本発明においては,加算器及び乗算器は,ハードウェアにより構築されることが好ましい。ハードウェアの例は,回路である。
コンピュータグラフィック装置は,テクスチャーサンンプラーユニットにおける乗算器の個数であるB個のウェイト係数Wを特定し,記憶する。これらのウェイト係数は,w,w,...wとも表される。このウェイト係数は,ユーザがあらかじめ設定し,記憶部に記憶しておいてもよい。その場合,コンピュータグラフィック装置は,記憶部からウェイト係数を読み出すことにより, テクスチャーサンンプラーユニットにおける乗算器の個数であるB個のウェイト係数Wを特定し,記憶することとなる。また,このウェイト係数Wを演算により求めてもよい。
コンピュータグラフィック装置は,メモリMの番地X(x,y)におけるデータと,番地Xに近接する番地のデータとを取得する手段を有する。この手段は,メモリにアクセスし,メモリにおける描画対象の番地に対応する情報を読み出すものである。
コンピュータグラフィック装置は,テクスチャーサンプラーユニットのコンフィグレーションを選択する手段を有する。コンフィグレーションは,コンピュータグラフィックスを作成する際の加算器及び乗算器の接続関係を意味する。必要な加算器及び乗算器及びこれらの演算要素の接続関係は,対象となる演算処理により,適宜変更される。演算処理の例は,線形補間である。記憶部には,各種演算処理とともに,各演算処理を行うためのコンフィギュレーション(必要な加算器及び乗算器,及びそれらの接続関係)が記憶されている。そして,例えば,ユーザが所定の演算処理を選択した場合,その選択情報は,入力部を介してコンピュータに入力され,記憶部に記憶される。そして,その入力された演算処理に適したコンフィギュレーション情報が読み出されて,各演算要素の接続関係や,入力データが調整されることとなる。
具体的に説明すると,選択されたコンフィギュレーションに応じて,加算器及び乗算器の入力部及び出力部の接続が変更される。つまり,各加算器及び乗算器は,2つの入力部及び1つの出力部を有している。各演算要素には,2つのデータが入力され,加算又は乗算されて,出力部から出力される。この手段は,コンフィグレーションに応じて,加算器及び乗算器の接続関係を変化させる。これにより,限られた加算器及び乗算器を用いても,様々な演算処理を行うことができることとなる。
コンピュータグラフィック装置は,メモリから読み出されたデータと,ウェイト係数Wとを用い,選択されたコンフィグレーションに基づいた演算を行う手段を有する。この手段は,行う演算処理に応じて,加算器や乗算器を接続する。そして,各乗算器にウェイト係数を入力する。加算器及び乗算器には,メモリから読み出されたデータや,加算又は乗算といった演算が行われたデータが入力される。そして,加算器及び乗算器は,それぞれ加算及び乗算を行い,演算結果を出力する。このようにして,選択されたコンフィグレーションに基づいた演算が行われることとなる。
コンピュータグラフィック装置は,演算により得られた演算結果を出力する手段を有する。
本発明のコンピュータグラフィック装置の例は,番地Xに近接する番地が,{(xi−1,y),(xi+1,y)},{(x,yj−1),(x,yj+1)},及び{(xi+1,y),(x,yj+1)}のいずれかのものである。番地X及び隣接する番地のデータを,第1,第2及び第3のデータD,D,Dとする。番地Xのデータが第1のデータとは限らない。そして,Dの例はM(x,y)である。iとjとは同じ値であってもよいし,異なる値であってもよい。
図1は,コンボリューション演算用のコンフィグレーション例を示すブロック図である。図1に示されるように,この例のテクスチャーサンプラーユニットは,第1の乗算器31,第2の乗算器33,第3の乗算器35,第1の加算器37及び第2の加算器39を有する。なお,図1は,仮想的なものであり,最初に第2及び第3の乗算器を用いたのち,次に第1の加算器37による演算が行われる際に,第2及び第3の乗算器のいずれかを第1の乗算器として用いてもよい。さらに,第1の加算器を第2の加算器としても用いてもよい。その場合,第1の乗算器の出力と,第1の加算器の出力とが,第1の加算器の入力に接続される。
ウェイト係数Wは,第1,第2及び第3のウェイト係数w,w,wを含む。
第1の乗算器31には,第1のウェイト係数w及び第1のデータDが入力され,w*Dが求められる。
第2の乗算器33には,第2のウェイト係数w及び第2のデータDが入力され,w*Dが求められる。
第3の乗算器35には,第3のウェイト係数w及び第3のデータDが入力され,w*Dが求められる。
第1の加算器37は,第2の乗算器33及び第3の乗算器35と接続されている。
第1の加算器37には,w*Dとw*Dが入力され,w*D+w*Dが求められる。
第2の加算器39は,第1の乗算器31及び第1の加算器37と接続されている。
第2の加算器39には,w*Dとw*D+w*Dが入力され,w*D
+w*D+w*Dが求められる。
このようにすると,ある画像上の点Xに関して,隣接する座標におけるデータを考慮した画像データを得ることができる。
この例では,各加算器及び乗算器は,2つの入力部と1つの出力部とを有している。そして,第2及び第3の乗算器の出力が,第1の加算器の入力と接続されている。そして,第1の乗算器の出力及び第1の加算器の出力が,第2の加算器の入力と接続されている。 この例と等価の回路は,第1及び第2の乗算器と第1の加算器が接続され,第1の加算器及び第3の乗算器と第2の加算器が接続されたものである。
この例は,テクスチャーサンプラーユニットのコンフィグレーションを選択する手段により選択されるコンフィグレーションの1種である。
図2は,中間,最少及び最大を求める演算のためのコンフィグレーション例を示すブロック図である。加算器は,入力される2つのデータの一方の入力値の符号を変え,その後に加算し,加算後の値が正負のいずれかを判定することで,大小比較器として機能する。すなわち,比較器は,例えば,加算器の一方の入力部と接続された符号反転部と,出力部と接続された正負判定部とを有している。
この例は,加算器の数Aは,5であり,乗算器の数Bは1である。そして,ウェイト係数Wは,0.5又は1/2である。以下,ウェイト係数を1/2として説明する。テクスチャーサンプラーユニットは,第1,第2,第3,第4及び第5の加算器51,53,55,57,59及び第1の乗算器61を有する。
第1,第2,第3,及び第4の加算器51,53,55,57は,それぞれ2つの入力部と,一方の入力部に接続された符号反転器と,正負判定部と,2つの出力部を有している。このため,加算器を含む要素は,比較器を構成する。図では,加算器を含む比較器部分を示している。
番地Xに近接する番地は,番地Xに隣接する3つの番地である。隣接する番地の組み合わせ例は,{(xi−1,y),(xi+1,y),(xi+2,y)}, {(x,yj−1),(x,yj+1),(x,yj+2)}及び {(xi+1,y),(x,yj+1),(xi+1,yj+1)}である。
番地X及び番地Xに隣接する番地のデータを,第1,第2,第3及び第4のデータD,D,D,Dとする。
第1の加算器51には,第1及び第2のデータD,Dが入力される。そして,第1及び第2のデータD,Dのうち小さい方Sが第1の加算器51の第1の出力部から出力される。また,第1及び第2のデータD,Dのうち大きい方Lが第1の加算器51の第2の出力部から出力される。先に説明したとおり,第1の加算器51の一方の入力部には,符号変換器が接続されている。すると,例えば,第1の加算器51は,第1のデータDと第2のデータDの符号が変換された値−Dが入力される。第1の加算器51は,これらの値を加算するD−Dが得られる。そして,第1の加算器51は,符号判定部を有しているので,加算された値D−Dの正負が判断される。加算された値D−Dが正の場合,第1のデータDが第2のデータDより大きいこととなる。この場合,第1データDが第1及び第2のデータD,Dのうち大きい方Lとなり,第2のデータDが第1及び第2のデータD,Dのうち小さい方Sとなる。以下,他の加算器においても同様である。
第2の加算器53には,第3及び第4のデータD,Dが入力される。そして,第3及び第4のデータD,Dのうち小さい方Sが第2の加算器53の第1の出力部から出力される。また,第3及び第4のデータD,Dのうち大きい方Lが第2の加算器53の第2の出力部から出力される。
第3の加算器55は,第1の加算器51の第1の出力部,及び第2の加算器の第1の出力部と接続される。第1及び第2のデータD,Dのうち小さい方S及び第3及び第4のデータD,Dのうち小さい方Sが第3の加算器55に入力される。第3の加算器55に入力された値S,Sのうち小さい方S21が第3の加算器55の第1の出力部から出力される。また,第3の加算器55に入力された値S,Sのうち大きい方L21が第3の加算器55の第2の出力部から出力される。
第3の加算器55に入力された値S,Sのうち小さい方S21は,最小値Minである。そして,この値は,この装置から最小値として出力される。
第4の加算器57は,第1の加算器51の第2の出力部,及び第2の加算器の第2の出力部と接続される。第1及び第2のデータD,Dのうち大きい方L及び第3及び第4のデータD,Dのうち大きい方Lが第4の加算器57に入力される。第4の加算器57に入力された値L,Lのうち小さい方S22が第4の加算器57の第1の出力部から出力される。また,第4の加算器57に入力された値L,Lのうち大きい方L22が第4の加算器57の第2の出力部から出力される。
第4の加算器57に入力された値L,Lのうち大きい方L22は,最大値Maxである。そして,この値は,この装置から最大値として出力される。
第5の加算器59は,第3の加算器55の第2の出力部及び第4の加算器57の第1の出力部と接続される。そして,第3の加算器55に入力された値S,Sのうち大きい方L21,第4の加算器57に入力された値L,Lのうち小さい方S22が第5の加算器59に入力される。第5の加算器59は,入力された2つの値の和L21+S22を求め,入力された2つの値の和L21+S22は第5の加算器59の出力部から出力される。
第1の乗算器61は,第5の加算器57の出力部と接続された第1の入力部と,ウェイト係数が入力される第2の入力部とを有する。第1の乗算器61入力された情報を掛け合わせ,掛け合わせて得られる値((L21+S22)/2)を出力部から出力する。この2つの入力値を掛け合わせて得られる値は,2番目及び3番目に大きい数値の平均であり,これが中央値(メディアン)として出力される。
なお,テクスチャーサンプラーユニットが5個の加算器を有していない場合,各加算器が1又は2以上の加算器の役割を果たせばよい。たとえばテクスチャーサンプラーユニットが2つの加算器のみを有する場合,テクスチャーサンプラーユニットのコンフィグレーションを選択する手段は,1つ目の加算器を第1,第3及び第5の加算器として機能させ,2つめの加算器を第2及び第4の加算器として機能させるようにすればよい。この場合,第1のステップで,1つ目及び2つ目の加算器がそれぞれ第1及び第2の加算器51,53として機能し,次のステップでは,1つ目及び2つ目の加算器がそれぞれ第3及び第4の加算器55,57として機能し,次のステップで1つ目の加算器が第5の加算器59として機能する。
また,大小比較において,比較対象が同じ大きさの場合,どちらの値を大きいものとして出力してもよい。
この装置の別の例は,入力されたデータを多き順に並べる演算を行うものである。図3は,最少,2番目,3番目及び最大を求める演算のためのコンフィグレーション例を示すブロック図である。図3に示されるようにこのコンフィグレーションは,加算器が5個あり,乗算器が0個のものである。テクスチャーサンプラーユニットは,第1,第2,第3,第4及び第5の加算器(71,73,75,77,79)を有し,第1,第2,第3,第4及び第5の加算器(71,73,75,77,79)は,それぞれ2つの入力部と,一方の入力部に接続された符号反転器と,正負判定部と,2つの出力部を有する。
番地Xに近接する番地は,番地Xに隣接する3つの番地であり,番地X及び前記隣接する番地のデータを,第1,第2,第3及び第4のデータD,D,D,Dとする。
第1の加算器71には,第1及び第2のデータD,Dが入力され,第1及び第2のデータD,Dのうち小さい方Sが第1の加算器71の第1の出力部から出力されるとともに,第1及び第2のデータD,Dのうち大きい方Lが第1の加算器71の第2の出力部から出力され,
第2の加算器73には,第3及び第4のデータD,Dが入力され,第3及び第4のデータD,Dのうち小さい方Sが第2の加算器73の第1の出力部から出力されるとともに,第3及び第4のデータD,Dのうち大きい方Lが第2の加算器73の第2の出力部から出力され,
第3の加算器75は,第1の加算器71の第1の出力部,及び第2の加算器の第1の出力部と接続され,第1及び第2のデータD,Dのうち小さい方S及び第3及び第4のデータD,Dのうち小さい方Sが入力され,第3の加算器75に入力された値S,Sのうち小さい方S21が第3の加算器75の第1の出力部から出力されるとともに,第3の加算器75に入力された値S,Sのうち大きい方L21が第3の加算器75の第2の出力部から出力され,
第4の加算器77は,第1の加算器71の第2の出力部,及び第2の加算器の第2の出力部と接続され,第1及び第2のデータD,Dのうち大きい方L及び第3及び第4のデータD,Dのうち大きい方Lが入力され,第4の加算器77に入力された値L,Lのうち小さい方S22が第4の加算器77の第1の出力部から出力されるとともに,第4の加算器77に入力された値L,Lのうち大きい方L22が第4の加算器77の第2の出力部から出力され,
第5の加算器79は,第3の加算器75の第2の出力部及び第4の加算器77の第1の出力部と接続され,第3の加算器75に入力された値S,Sのうち大きい方L21,第4の加算器77に入力された値L,Lのうち小さい方S22が入力され,第5の加算器79に入力された2つの値L21,S22のうち小さい方S31が,第5の加算器79の第1の出力部から出力され,第5の加算器79に入力された2つの値L21,S22のうち大きい方L31が,第5の加算器79の第2の出力部から出力される。
第5の加算器79の第1の出力部から出力される第5の加算器79に入力された2つの値L21,S22のうち小さい方S31が2番目に小さい値である。また,第5の加算器79の第2の出力部から出力される第5の加算器79に入力された2つの値L21,S22のうち大きい方L31が3番目に小さい値である。
この例は,先に説明した中間,最少及び最大を求める演算のためのコンフィグレーション例と同様に機能する。
本発明の装置は,例えば,上記した(1)コンボリューション演算用のコンフィグレーション,(2)中間,最少及び最大を求める演算のためのコンフィグレーション,及び(3)最少,2番目,3番目及び最大を求める演算のためのコンフィグレーションのうち,2又は3つ以上を含むコンフィグレーションを選択可能なものに関する。そして,ユーザがこのコンフィギュレーションと関連する演算を選択した場合,選択情報がコンピュータに入力され,記憶部が演算処理と関連したコンフィグレーションに関する情報を読み出す。そして,コンピュータは,読み出されたコンフィギュレーションに従って,加算器及び乗算器を接続し,また適宜記憶部からウェイト係数を読み出して,対応した演算処理を行う。通常であれば,それぞれの演算を行うための回路が固定されているものの,本発明の装置を用いれば少ないハードウェア資源を効果的に利用することができ,しかも少ない演算ステップでコンピュータグラフィックスに用いられる演算を行うことができる。この例は,複数の加算器及び乗算器を用意しておき,それらの接続関係を変更可能にしておく。そして,それらの接続関係を変更できるようにしておくことで,上記の(1)〜(3)のコンフィギュレーションを変更可能とされている。
本発明は,コンピュータグラフィックスに用いる演算処理に用いられる装置に関するため,コンピュータ関連の製造業や,グラフィックスを利用したゲーム機や家電産業、アミューズメント機器などにおいても用いられうる。
31: 第1の乗算器 33: 第2の乗算器 35: 第3の乗算器
37: 第1の加算器 39: 第2の加算器

Claims (4)

  1. A個の加算器とB個の乗算器を有するテクスチャーサンプラーユニットと,メモリMとを含む,コンピュータグラフィック装置であって,
    前記装置は,
    前記テクスチャーサンンプラーユニットにおける乗算器の個数であるB個のウェイト係数Wを特定し,記憶する手段と,
    前記メモリMの番地X(x ,y )におけるデータと,前記番地Xに近接する番地のデータとを取得する手段と,
    前記テクスチャーサンプラーユニットのコンフィグレーションを選択する手段と,
    前記メモリから読み出されたデータと,前記ウェイト係数Wとを用い,前記選択されたコンフィグレーションに基づいた演算を行う手段と,
    前記演算により得られた演算結果を出力する手段と,を有し,
    前記テクスチャーサンプラーユニットのコンフィグレーションを選択する手段は,選択されたコンフィギュレーションに応じて,前記加算器及び乗算器の入力部及び出力部の接続を変更し,
    前記番地Xに近接する番地は,
    {(xi−1,y),(xi+1,y)}, {(x,yj−1),(x,yj+1)},及び {(xi+1,y),(x,yj+1)}のいずれかであり,
    番地X及び前記隣接する番地のデータを,第1,第2及び第3のデータD,D,Dとし,
    前記Aは2,前記Bは3であり,
    前記テクスチャーサンプラーユニットは,
    第1の乗算器(31),第2の乗算器(33),第3の乗算器(35),第1の加算器(37)及び第2の加算器(39)を有し,
    前記ウェイト係数Wは,第1,第2及び第3のウェイト係数w,w,wを含み,
    第1の乗算器(31)には,第1のウェイト係数w及び第1のデータDが入力され,w*Dが求められ,
    第2の乗算器(33)には,第2のウェイト係数w及び第2のデータDが入力され,w*Dが求められ,
    第3の乗算器(35)には,第3のウェイト係数w及び第3のデータDが入力され,w*Dが求められ,
    第1の加算器(37)は,第2の乗算器(33)及び第3の乗算器(35)と接続され,
    第1の加算器(37)には,w*Dとw*Dが入力され,w*D+w*Dが求められ,
    第2の加算器(39)は,第1の乗算器(31)及び第1の加算器(37)と接続され,
    第2の加算器(39)には,w*Dとw*D+w*Dが入力され,w*D
    +w*D+w*Dが求められる,
    装置。
  2. A個の加算器とB個の乗算器を有するテクスチャーサンプラーユニットと,メモリMとを含む,コンピュータグラフィック装置であって,
    前記装置は,
    前記テクスチャーサンンプラーユニットにおける乗算器の個数であるB個のウェイト係数Wを特定し,記憶する手段と,
    前記メモリMの番地X(x ,y )におけるデータと,前記番地Xに近接する番地のデータとを取得する手段と,
    前記テクスチャーサンプラーユニットのコンフィグレーションを選択する手段と,
    前記メモリから読み出されたデータと,前記ウェイト係数Wとを用い,前記選択されたコンフィグレーションに基づいた演算を行う手段と,
    前記演算により得られた演算結果を出力する手段と,を有し,
    前記テクスチャーサンプラーユニットのコンフィグレーションを選択する手段は,選択されたコンフィギュレーションに応じて,前記加算器及び乗算器の入力部及び出力部の接続を変更し,
    前記Aは,5であり,前記Bは1であり,前記Wは,0.5又は1/2であり,
    前記テクスチャーサンプラーユニットは,
    第1,第2,第3,第4及び第5の加算器(51,53,55,57,59)及び第1の乗算器(61)を有し,
    第1,第2,第3,及び第4の加算器(51,53,55,57)は,それぞれ2つの入力部と,一方の入力部に接続された符号反転器と,正負判定部と,2つの出力部を有し,
    前記番地Xに近接する番地は,番地Xに隣接する3つの番地であり,
    番地X及び前記隣接する番地のデータを,第1,第2,第3及び第4のデータD,D,D,Dとし,
    第1の加算器(51)には,第1及び第2のデータD,Dが入力され,第1及び第2のデータD,Dのうち小さい方Sが第1の加算器(51)の第1の出力部から出力されるとともに,第1及び第2のデータD,Dのうち大きい方Lが第1の加算器(51)の第2の出力部から出力され,
    第2の加算器(53)には,第3及び第4のデータD,Dが入力され,第3及び第4のデータD,Dのうち小さい方Sが第2の加算器(53)の第1の出力部から出力されるとともに,第3及び第4のデータD,Dのうち大きい方Lが第2の加算器(53)の第2の出力部から出力され,
    第3の加算器(55)は,第1の加算器(51)の第1の出力部,及び第2の加算器の第1の出力部と接続され,第1及び第2のデータD,Dのうち小さい方S及び第3及び第4のデータD,Dのうち小さい方Sが入力され,第3の加算器(55)に入力された値S,Sのうち小さい方S21が第3の加算器(55)の第1の出力部から出力されるとともに,第3の加算器(55)に入力された値S,Sのうち大きい方L21が第3の加算器(55)の第2の出力部から出力され,
    第4の加算器(57)は,第1の加算器(51)の第2の出力部,及び第2の加算器の第2の出力部と接続され,第1及び第2のデータD,Dのうち大きい方L及び第3及び第4のデータD,Dのうち大きい方Lが入力され,第4の加算器(57)に入力された値L,Lのうち小さい方S22が第4の加算器(57)の第1の出力部から出力されるとともに,第4の加算器(57)に入力された値L,Lのうち大きい方L22が第4の加算器(57)の第2の出力部から出力され,
    第5の加算器(59)は,第3の加算器(55)の第2の出力部及び第4の加算器(57)の第1の出力部と接続され,第3の加算器(55)に入力された値S,Sのうち大きい方L21,第4の加算器(57)に入力された値L,Lのうち小さい方S22が入力され,入力された2つの値の和L21+S22が,第5の加算器(59)の出力部から出力され,
    第1の乗算器(61)は,第5の加算器(57)の出力部と接続された第1の入力部と,前記ウェイト係数が入力される第2の入力部とを有し,入力された情報を掛け合わせた値((L21+S22)/2)を出力部から出力するものである,
    装置。
  3. A個の加算器とB個の乗算器を有するテクスチャーサンプラーユニットと,メモリMとを含む,コンピュータグラフィック装置であって,
    前記装置は,
    前記テクスチャーサンンプラーユニットにおける乗算器の個数であるB個のウェイト係数Wを特定し,記憶する手段と,
    前記メモリMの番地X(x ,y )におけるデータと,前記番地Xに近接する番地のデータとを取得する手段と,
    前記テクスチャーサンプラーユニットのコンフィグレーションを選択する手段と,
    前記メモリから読み出されたデータと,前記ウェイト係数Wとを用い,前記選択されたコンフィグレーションに基づいた演算を行う手段と,
    前記演算により得られた演算結果を出力する手段と,を有し,
    前記テクスチャーサンプラーユニットのコンフィグレーションを選択する手段は,選択されたコンフィギュレーションに応じて,前記加算器及び乗算器の入力部及び出力部の接続を変更し,
    前記Aは,5であり,前記Bは0であり,
    前記テクスチャーサンプラーユニットは,
    第1,第2,第3,第4及び第5の加算器(71,73,75,77,79)を有し,
    第1,第2,第3,第4及び第5の加算器(71,73,75,77,79)は,それぞれ2つの入力部と,一方の入力部に接続された符号反転器と,正負判定部と,2つの出力部を有し,
    前記番地Xに近接する番地は,番地Xに隣接する3つの番地であり,
    番地X及び前記隣接する番地のデータを,第1,第2,第3及び第4のデータD,D,D,Dとし,
    第1の加算器(71)には,第1及び第2のデータD,Dが入力され,第1及び第2のデータD,Dのうち小さい方Sが第1の加算器(71)の第1の出力部から出力されるとともに,第1及び第2のデータD,Dのうち大きい方Lが第1の加算器(71)の第2の出力部から出力され,
    第2の加算器(73)には,第3及び第4のデータD,Dが入力され,第3及び第4のデータD,Dのうち小さい方Sが第2の加算器(73)の第1の出力部から出力されるとともに,第3及び第4のデータD,Dのうち大きい方Lが第2の加算器(73)の第2の出力部から出力され,
    第3の加算器(75)は,第1の加算器(71)の第1の出力部,及び第2の加算器の第1の出力部と接続され,第1及び第2のデータD,Dのうち小さい方S及び第3及び第4のデータD,Dのうち小さい方Sが入力され,第3の加算器(75)に入力された値S,Sのうち小さい方S21が第3の加算器(75)の第1の出力部から出力されるとともに,第3の加算器(75)に入力された値S,Sのうち大きい方L21が第3の加算器(75)の第2の出力部から出力され,
    第4の加算器(77)は,第1の加算器(71)の第2の出力部,及び第2の加算器の第2の出力部と接続され,第1及び第2のデータD,Dのうち大きい方L及び第3及び第4のデータD,Dのうち大きい方Lが入力され,第4の加算器(77)に入力された値L,Lのうち小さい方S22が第4の加算器(77)の第1の出力部から出力されるとともに,第4の加算器(77)に入力された値L,Lのうち大きい方L22が第4の加算器(77)の第2の出力部から出力され,
    第5の加算器(79)は,第3の加算器(75)の第2の出力部及び第4の加算器(77)の第1の出力部と接続され,第3の加算器(75)に入力された値S,Sのうち大きい方L21,第4の加算器(77)に入力された値L,Lのうち小さい方S22が入力され,第5の加算器(79)に入力された2つの値L21,S22のうち小さい方S31が,第5の加算器(79)の第1の出力部から出力され,第5の加算器(79)に入力された2つの値L21,S22のうち大きい方L31が,第5の加算器(79)の第2の出力部から出力される,
    装置。
  4. A個の加算器とB個の乗算器を有するテクスチャーサンプラーユニットと,メモリMとを含む,コンピュータグラフィック装置であって,
    前記装置は,
    前記テクスチャーサンンプラーユニットにおける乗算器の個数であるB個のウェイト係数Wを特定し,記憶する手段と,
    前記メモリMの番地X(x ,y )におけるデータと,前記番地Xに近接する番地のデータとを取得する手段と,
    前記テクスチャーサンプラーユニットのコンフィグレーションを選択する手段と,
    前記メモリから読み出されたデータと,前記ウェイト係数Wとを用い,前記選択されたコンフィグレーションに基づいた演算を行う手段と,
    前記演算により得られた演算結果を出力する手段と,を有し,
    前記テクスチャーサンプラーユニットのコンフィグレーションを選択する手段は,選択されたコンフィギュレーションに応じて,前記加算器及び乗算器の入力部及び出力部の接続を変更し,
    前記前記テクスチャーサンプラーユニットのコンフィグレーションを選択する手段は,
    (1)コンボリューション演算用のコンフィグレーション,(2)中間,最少及び最大を求める演算のためのコンフィグレーション,及び(3)最少,2番目,3番目及び最大を求める演算のためのコンフィグレーションのうち,2又は3つ以上を含むコンフィグレーションを選択可能なものであり,
    (1)コンボリューション演算用のコンフィグレーションは,
    前記番地Xに近接する番地は,
    {(xi−1,y),(xi+1,y)}, {(x,yj−1),(x,yj+1)},及び {(xi+1,y),(x,yj+1)}のいずれかであり,
    番地X及び前記隣接する番地のデータを,第1,第2及び第3のデータD,D,Dとし,
    前記Aは2,前記Bは3であり,
    前記テクスチャーサンプラーユニットは,
    第1の乗算器(31),第2の乗算器(33),第3の乗算器(35),第1の加算器(37)及び第2の加算器(39)を有し,
    前記ウェイト係数Wは,第1,第2及び第3のウェイト係数w,w,wを含み,
    第1の乗算器(31)には,第1のウェイト係数w及び第1のデータDが入力され,w*Dが求められ,
    第2の乗算器(33)には,第2のウェイト係数w及び第2のデータDが入力され,w*Dが求められ,
    第3の乗算器(35)には,第3のウェイト係数w及び第3のデータDが入力され,w*Dが求められ,
    第1の加算器(37)は,第2の乗算器(33)及び第3の乗算器(35)と接続され,
    第1の加算器(37)には,w*Dとw*Dが入力され,w*D+w*Dが求められ,
    第2の加算器(39)は,第1の乗算器(31)及び第1の加算器(37)と接続され,
    第2の加算器(39)には,w*Dとw*D+w*Dが入力され,w*D+w*D+w*Dが求められ,
    (2)中間,最少及び最大を求める演算のためのコンフィグレーションは,
    前記Aは,5であり,前記Bは1であり,前記Wは,0.5又は1/2であり,
    前記テクスチャーサンプラーユニットは,
    第1,第2,第3,第4及び第5の加算器(51,53,55,57,59)及び第1の乗算器(61)を有し,
    第1,第2,第3,及び第4の加算器(51,53,55,57)は,それぞれ2つの入力部と,一方の入力部に接続された符号反転器と,正負判定部と,2つの出力部を有し,
    前記番地Xに近接する番地は,番地Xに隣接する3つの番地であり,
    番地X及び前記隣接する番地のデータを,第1,第2,第3及び第4のデータD,D,D,Dとし,
    第1の加算器(51)には,第1及び第2のデータD,Dが入力され,第1及び第2のデータD,Dのうち小さい方Sが第1の加算器(51)の第1の出力部から出力されるとともに,第1及び第2のデータD,Dのうち大きい方Lが第1の加算器(51)の第2の出力部から出力され,
    第2の加算器(53)には,第3及び第4のデータD,Dが入力され,第3及び第4のデータD,Dのうち小さい方Sが第2の加算器(53)の第1の出力部から出力されるとともに,第3及び第4のデータD,Dのうち大きい方Lが第2の加算器(53)の第2の出力部から出力され,
    第3の加算器(55)は,第1の加算器(51)の第1の出力部,及び第2の加算器の第1の出力部と接続され,第1及び第2のデータD,Dのうち小さい方S及び第3及び第4のデータD,Dのうち小さい方Sが入力され,第3の加算器(55)に入力された値S,Sのうち小さい方S21が第3の加算器(55)の第1の出力部から出力されるとともに,第3の加算器(55)に入力された値S,Sのうち大きい方L21が第3の加算器(55)の第2の出力部から出力され,
    第4の加算器(57)は,第1の加算器(51)の第2の出力部,及び第2の加算器の第2の出力部と接続され,第1及び第2のデータD,Dのうち大きい方L及び第3及び第4のデータD,Dのうち大きい方Lが入力され,第4の加算器(57)に入力された値L,Lのうち小さい方S22が第4の加算器(57)の第1の出力部から出力されるとともに,第4の加算器(57)に入力された値L,Lのうち大きい方L22が第4の加算器(57)の第2の出力部から出力され,
    第5の加算器(59)は,第3の加算器(55)の第2の出力部及び第4の加算器(57)の第1の出力部と接続され,第3の加算器(55)に入力された値S,Sのうち大きい方L21,第4の加算器(57)に入力された値L,Lのうち小さい方S22が入力され,入力された2つの値の和L21+S22が,第5の加算器(59)の出力部から出力され,
    第1の乗算器(61)は,第5の加算器(57)の出力部と接続された第1の入力部と,前記ウェイト係数が入力される第2の入力部とを有し,入力された情報を掛け合わせた値((L21+S22)/2)を出力部から出力するものであり,
    (3)最少,2番目,3番目及び最大を求める演算のためのコンフィグレーションは,
    前記Aは,5であり,前記Bは0であり,
    前記テクスチャーサンプラーユニットは,
    第1,第2,第3,第4及び第5の加算器(71,73,75,77,79)を有し,
    第1,第2,第3,第4及び第5の加算器(71,73,75,77,79)は,それぞれ2つの入力部と,一方の入力部に接続された符号反転器と,正負判定部と,2つの出力部を有し,
    前記番地Xに近接する番地は,番地Xに隣接する3つの番地であり,
    番地X及び前記隣接する番地のデータを,第1,第2,第3及び第4のデータD,D,D,Dとし,
    第1の加算器(71)には,第1及び第2のデータD,Dが入力され,第1及び第2のデータD,Dのうち小さい方Sが第1の加算器(71)の第1の出力部から出力されるとともに,第1及び第2のデータD,Dのうち大きい方Lが第1の加算器(71)の第2の出力部から出力され,
    第2の加算器(73)には,第3及び第4のデータD,Dが入力され,第3及び第4のデータD,Dのうち小さい方Sが第2の加算器(73)の第1の出力部から出力されるとともに,第3及び第4のデータD,Dのうち大きい方Lが第2の加算器(73)の第2の出力部から出力され,
    第3の加算器(75)は,第1の加算器(71)の第1の出力部,及び第2の加算器の第1の出力部と接続され,第1及び第2のデータD,Dのうち小さい方S及び第3及び第4のデータD,Dのうち小さい方Sが入力され,第3の加算器(75)に入力された値S,Sのうち小さい方S21が第3の加算器(75)の第1の出力部から出力されるとともに,第3の加算器(75)に入力された値S,Sのうち大きい方L21が第3の加算器(75)の第2の出力部から出力され,
    第4の加算器(77)は,第1の加算器(71)の第2の出力部,及び第2の加算器の第2の出力部と接続され,第1及び第2のデータD,Dのうち大きい方L及び第3及び第4のデータD,Dのうち大きい方Lが入力され,第4の加算器(77)に入力された値L,Lのうち小さい方S22が第4の加算器(77)の第1の出力部から出力されるとともに,第4の加算器(77)に入力された値L,Lのうち大きい方L22が第4の加算器(77)の第2の出力部から出力され,
    第5の加算器(79)は,第3の加算器(75)の第2の出力部及び第4の加算器(77)の第1の出力部と接続され,第3の加算器(75)に入力された値S,Sのうち大きい方L21,第4の加算器(77)に入力された値L,Lのうち小さい方S22が入力され,第5の加算器(79)に入力された2つの値L21,S22のうち小さい方S31が,第5の加算器(79)の第1の出力部から出力され,第5の加算器(79)に入力された2つの値L21,S22のうち大きい方L31が,第5の加算器(79)の第2の出力部から出力される,
    装置。
JP2015257541A 2015-12-28 2015-12-28 コンピュータグラフィック装置 Active JP6132902B1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015257541A JP6132902B1 (ja) 2015-12-28 2015-12-28 コンピュータグラフィック装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015257541A JP6132902B1 (ja) 2015-12-28 2015-12-28 コンピュータグラフィック装置

Publications (2)

Publication Number Publication Date
JP6132902B1 true JP6132902B1 (ja) 2017-05-24
JP2017120594A JP2017120594A (ja) 2017-07-06

Family

ID=58745674

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015257541A Active JP6132902B1 (ja) 2015-12-28 2015-12-28 コンピュータグラフィック装置

Country Status (1)

Country Link
JP (1) JP6132902B1 (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004118713A (ja) * 2002-09-27 2004-04-15 Sony Corp 画像処理装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004118713A (ja) * 2002-09-27 2004-04-15 Sony Corp 画像処理装置

Also Published As

Publication number Publication date
JP2017120594A (ja) 2017-07-06

Similar Documents

Publication Publication Date Title
US10362289B2 (en) Method for data reuse and applications to spatio-temporal supersampling and de-noising
JP6309620B2 (ja) 頂点シェーダのフロント・エンドとしてコンピュート・シェーダを使用すること
US8111264B2 (en) Method of and system for non-uniform image enhancement
JP4938850B2 (ja) 拡張型頂点キャッシュを備えたグラフィック処理装置
US8441497B1 (en) Interpolation of vertex attributes in a graphics processor
JP7096661B2 (ja) キューブマップをテクスチャリングするためのlodを決定する方法、装置、コンピュータプログラム及び記録媒体
US20070008333A1 (en) Texture filter using parallel processing to improve multiple mode filter performance in a computer graphics environment
US9142060B2 (en) Computation reduced tessellation
US20170011542A1 (en) Method, Display Adapter and Computer Program Product for Improved Graphics Performance by Using a Replaceable Culling Program
US20140071124A1 (en) Image processing apparatus
WO2006095481A1 (ja) テクスチャ処理装置、描画処理装置、およびテクスチャ処理方法
KR102477265B1 (ko) 그래픽스 프로세싱 장치 및 그래픽스 파이프라인의 텍스쳐링을 위한 LOD(level of detail)를 결정하는 방법
US20160005191A1 (en) Mipmap generation method and apparatus
US10417813B2 (en) System and method for generating temporally stable hashed values
JPWO2013005366A1 (ja) アンチエイリアス画像生成装置およびアンチエイリアス画像生成方法
WO1996028794A1 (fr) Dispositif d'affichage graphique tridimensionnel
JP6104914B2 (ja) テクスチャ座標導関数を用いた高速化テクスチャ検索
US6914609B2 (en) Multiple scan line sample filtering
US20210358174A1 (en) Method and apparatus of data compression
JP6132902B1 (ja) コンピュータグラフィック装置
JP2004317878A (ja) グラフィックスプロセッサ、グラフィックスカード及びグラフィックス処理システム
KR101227155B1 (ko) 저해상도 그래픽 영상을 고해상도 그래픽 영상으로 실시간 변환하는 그래픽 영상 처리 장치 및 방법
WO2017189105A1 (en) Constant multiplication with texture unit of graphics processing unit
US20030169274A1 (en) System and method for performing scale and bias operations by preclamping input image data
JP4756107B1 (ja) グラフィックス処理装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170321

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: 20170411

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170418

R150 Certificate of patent or registration of utility model

Ref document number: 6132902

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250