JP2004510270A - フルシーン・アンチエイリアシング・スーパーサンプリング実施のための方法および装置 - Google Patents
フルシーン・アンチエイリアシング・スーパーサンプリング実施のための方法および装置 Download PDFInfo
- Publication number
- JP2004510270A JP2004510270A JP2002531365A JP2002531365A JP2004510270A JP 2004510270 A JP2004510270 A JP 2004510270A JP 2002531365 A JP2002531365 A JP 2002531365A JP 2002531365 A JP2002531365 A JP 2002531365A JP 2004510270 A JP2004510270 A JP 2004510270A
- Authority
- JP
- Japan
- Prior art keywords
- graphics
- polygon
- cache
- cpu
- image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Image Generation (AREA)
- Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)
- Other Investigation Or Analysis Of Materials By Electrical Means (AREA)
- Measurement Of Velocity Or Position Using Acoustic Or Ultrasonic Waves (AREA)
Abstract
一実施形態により、コンピュータ・システムを開示する。このコンピュータ・システムは、グラフィックス・アクセラレータとそのグラフィックス・アクセラレータに結合されたグラフィックス・キャッシュを含む。このグラフィックス・キャッシュはテクスチャ・データ、カラー・データ、深度データを記憶する。
Description
【0001】
(発明の分野)
本発明は、コンピュータ・システムに関する。さらに詳細には、本発明は、3次元グラフィックス処理に関する。
【0002】
(背景)
コンピュータが生成するグラフィックスは、一般に産業、事務、教育および娯楽の様々な分野で使用される。コンピュータ・グラフィックスは、表示モニタ上のピクセルによって表される。しかし、表示装置には、限られた数のピクセルしか含まれていないので、しばしばエイリアシングが生じる。アナログ・データをデジタル形式で表す必要から引き起こされるエイリアシングにより、表示された画像の端部がギザギザになる。
【0003】
エイリアシングを少なくするために使用される技法の適用は、通常、アンチエイリアシングと呼ばれる。フルシーン・アンチエイリアシングに使用される一技法は、スーパーサンプリングとして知られている。スーパーサンプリングは、元のグラフィックス・シーンを高解像度でレンダリングし、その後、元の表示解像度にフィルタ・ダウンする手法である。したがって、スーパーサンプリングは、本質的に、エイリアシング効果をより高い空間周波数にシフトする。
【0004】
しかし、スーパーサンプリング技法を使用中、コンピュータ・システムによって生じるパフォーマンス上の欠陥がある。スーパーサンプリングに関する問題点は、画像を高解像度でレンダリングし、その後その画像をフィルタ・ダウンするため、追加の処理が必要で、その上余分な記憶装置と帯域幅が必要になることである。たとえば、表示装置の各XとY方向で2倍(2×)にスーパーサンプリングするには、記憶装置と帯域幅を4倍(4×)にする必要がある。したがって、記憶装置と帯域幅を追加せずにスーパーサンプリングを有効に実現することが望ましい。
【0005】
本発明は、本発明の様々な実施形態についての以下の詳細な説明および添付の図面から、さらによく理解されるであろう。ただし、図面は、本発明を特定の実施形態に限定するものではなく、例示および理解のためのものであることを留意されたい。
【0006】
(詳細な説明)
スーパーサンプリングを有効に実施するための方法および装置を開示する。本発明の以下の詳細な説明では、本発明の完全な理解をもたらすため、多くの具体的な詳細を記載する。しかし、本発明は、こうした具体的な詳細なしで実施できることが、当業者には明らかであろう。他の例では、本発明を不明瞭にしないために、詳細にではなく、周知の構造およびデバイスを構成図で示した。
【0007】
本明細書において「一実施形態」または「ある実施形態」との引用は、実施形態に関連して述べる具体的な特徴、構造、または特性が、本発明の少なくとも1つの実施形態に含まれることを意味する。本明細書の様々な箇所に現れる表現「一実施形態では」は、必ずしもすべて同じ実施形態を指すのではない。
【0008】
図1は、コンピュータ・システム100の一実施形態の構成図である。コンピュータ・システム100は、プロセッサ・バス110に結合された中央処理装置(プロセッサ)105を含む。一実施形態では、プロセッサ105は、カリフォルニア州サンタクララのインテル・コーポレーションから市販されているPentium(登録商標)IIファミリおよびモバイルPentium(登録商標)およびPentium(登録商標)IIプロセッサを含むPentium(登録商標)プロセッサ・ファミリのプロセッサである。あるいは、他のプロセッサを使用することもできる。
【0009】
チップ・セット120もプロセッサ・バス110に結合される。チップ・セット120は、メイン・メモリ113を制御するメモリコントローラを備えることができる。さらに、チップ・セット120は、カリフォルニア州サンタクララのインテル・コーポレーションが開発したAGP(Accelerated Graphics Port:アクセラレイテッド・グラフィックス・ポート)仕様2.0に準拠したインターフェースを備えることもできる。チップ・セット120は、ビデオ・デバイス125に結合され、メイン・メモリ113へのアクセスを求めるビデオ・データ要求を処理する。メイン・メモリ113は、チップ・セット120を介してプロセッサ・バス110に結合される。
【0010】
メイン・メモリ113はチップ・セット120を介してプロセッサ・バス110に結合される。メイン・メモリ113は、プロセッサ105によって実行される命令シーケンスを記憶する。一実施形態では、メイン・メモリ113は、DRAM(ダイナミック・ランダム・アクセス・メモリ)システムを含む。しかし、メイン・メモリ113は他の構成でもよい。プロセッサ105によって実行される命令シーケンスは、メイン・メモリ113または他のどの記憶デバイスによっても検索することができる。複数のプロセッサおよび/または複数のメイン・メモリ・デバイスなど、追加のデバイスをプロセッサ・バス110に結合することもできる。コンピュータ・システム100は単一のプロセッサを用いて記載してあるが、複数のプロセッサをプロセッサ・バス110に結合することもできる。ビデオ・デバイス125もチップ・セット120に結合される。一実施形態では、ビデオ・デバイスは陰極線管(CRT)や液晶表示装置(LCD)などのビデオ・モニタとそれに必要なサポート回路を含む。
【0011】
プロセッサ・バス110はチップ・セット120によってシステム・バス130に結合される。一実施形態では、システム・バス130は、カリフォルニア州サンタクララのインテル・コーポレーションが開発したPCI(Peripheral Component Interconnect:周辺装置相互接続)仕様2.1に準拠した標準バスであるが、他のバス標準を使用することもできる。オーディオ・デバイス127などの多数のデバイスをシステム・バス130に結合することもできる。
【0012】
バス・ブリッジ140はシステム・バス130を2次バス150に結合する。一実施形態では、2次バス150は、ニューヨーク州アーモンクのインターナショナル・ビジネス・マシーンズ・コーポレーションが開発したISA(Industry Standard Architecture:産業標準構成)仕様1.0aに準拠したバスである。しかし、他のバス標準、たとえば、コンパック・コンピュータ他が開発したEISA(Extended Industry Standard Architecture:拡張産業標準構成)仕様3.12も使用することができる。ハード・ディスク153やディスク駆動装置154など、複数のデバイスを2次バス150に結合することができる。カーソル制御デバイス(図1に図示せず)など他のデバイスを2次バス150に結合することもできる。
【0013】
図2は、プロセッサ105の一実施形態の構成図である。プロセッサ105は、CPUコア210、CPUキャッシュ220、グラフィックス・コア230、グラフィックス・キャッシュ240およびバス・インターフェース250を備える。CPUコア210は、コンピュータ・システム100で受け取る非グラフィック命令を実行する。CPUキャッシュ220は、CPUコア210に結合される。一実施形態によれば、CPUキャッシュ220は、データおよびCPUコア210が実行する命令シーケンスを記憶するための高速記憶装置である。
【0014】
バス・インターフェース250はCPUキャッシュ220に結合される。バス・インターフェース250は、データがプロセッサ105に送られまたそれから配信されるように、CPUキャッシュ220とグラフィックス・キャッシュ240をプロセッサ・バス110に接続する。
【0015】
グラフィックス・コア230は、グラフィック変換を計算するための専用のグラフィックス・アクセラレータを含む。グラフィックス・コア230がグラフィック計算を処理している間、グラフィックス・コア230は、CPUコア210が非グラフィック命令を有効に実行できるようにする。一実施形態によれば、グラフィックス・コアは、タイルベース・レンダリング・アーキテクチャに従って動作する。レンダリングは、ピクセル単位で異なるカラーおよび位置情報を計算する動作である。それによって、見る人は、ビデオ・デバイス125の2次元モニタ上で深さを感知することができる。
【0016】
レンダリングは、1組の頂点としてのみ以前に記憶された対象物の表面上の点を埋める。そうすると、3次元効果のための陰影をつけた立体の対象物が画面上に描かれる。対象物をレンダリングするには、カラーおよび位置情報を決定することが必要である。有効に行うには、対象物の多数の頂点を複数の三角形にセグメント化し、次いで、これらの三角形(3つの頂点の組)をグラフィックス・コア230で1度に1つずつ処理する。
【0017】
タイルベース・レンダリングでは、グラフィックス・コア230は、シーンが完了するまで、三角形を1つずつ用いて、特定のグラフィックス・シーン(または画像)内に多角形を形成する。しかし、シーンをレンダリングする前に、グラフィックス・コア230は、シーンを一連の三角形に細分化する。その後、三角形を、各三角形のバウンディング・ボックスを調べることによってタイルにソートする(またはビニングする(binned))。タイル・ビニングは、どのタイル内に三角形があるかを決定する。一実施形態では、グラフィックス・キャッシュ240は、シーンの各タイルのためのバッファを含む。このバッファは、バッファ内に含まれる特定の三角形を指すポインタを含む。各三角形がビニングされた後、シーンの各タイルは1度に1つずつレンダリングされる。
【0018】
グラフィックス・キャッシュ240はグラフィックス・コア230とバス・インターフェース250に結合される。一実施形態によれば、グラフィックス・キャッシュ240は、128×64ピクセル・サイズのタイルを収容できる統合型グラフィックス・キャッシュであり、各ピクセルは、32ビットのカラー値および深度値を含む。他の実施形態では、グラフィックス・キャッシュ240は、カラー・データと深度データに加えて、テクスチャ・データを記憶する。他の実施形態では、グラフィックス・キャッシュ240は、タイル・サイズ128×64を収容するための64キロバイトの静的ランダム・アクセス・メモリである。しかし、グラフィックス・キャッシュ240としては、他のサイズやタイプの記憶デバイスも使用することができることを当業者は理解されたい。
【0019】
図3は、グラフィックス・キャッシュ240の一実施形態の構成図である。グラフィックス・キャッシュ240は、グラフィックス・テクスチャ・キャッシュ320およびグラフィックス・カラー/Zタイル・バッファ340を含む。グラフィックス・テクスチャ・キャッシュ320は、対象物をテクスチャ・マッピングするために使用されるテクスチャ・データを記憶する。テクスチャ・マッピングは、色や輝度などの2次元特性に加えて、3次元特性(たとえば、対象物の透過性および反射性の程度)でテクスチャを符号化するものである。テクスチャが決定されると、そのテクスチャで3次元対象物を包むことができる。
【0020】
グラフィックス・カラー/Zタイル・バッファ340は、1つまたは複数のグラフィック・シーンの各タイル内のピクセルごとにカラー・データと深度データを記憶する。タイル・サイズは、カラーと深度フォーマット、およびグラフィックス・カラー/Zタイル・バッファ340のサイズに基づいて決定することができる。したがって、一実施形態によれば、グラフィックス・カラー/Zタイル・バッファ340は、特定のタイルの内部に含まれるすべての三角形に対して、中間のカラー・データと深度データのアクセスを実施できるのに十分な大きさである。他の実施形態によれば、カラー・データと深度データは、タイルの最後の三角形のレンダリング完了後に、メイン・メモリ113に書き込まれる。
【0021】
一実施形態によれば、グラフィックス・キャッシュ240の使用で、余分な記憶装置と帯域幅の必要性をなくすことによって、グラフィックス・コア230が、スーパーサンプリングを有効に実施できるようになる。図4は、グラフィックス・コア230によるスーパーサンプリング中のデータ流れの一実施形態の流れ図である。説明のため、値k=4はXおよびY方向に2倍(2×)にスーパーサンプリングしたものと仮定する。さらに、タイル・サイズを128×64とし、多角形は、仮想タイル・サイズ64×32にビニングされると仮定する。ただし、このプロセスは、他の値kおよびタイル・サイズを使用しても実施できることを当業者は理解されたい。
【0022】
図4を参照すると、プロセス・ブロック410で、1つのタイルのためのの複数の多角形が、グラフィックス・コア230でメイン・メモリ113から、チップ・セット120内にあるAGPポートを介して受け取られる。プロセス・ブロック420で、多角形はグラフィックス・コア230で拡大される。この例はk=4であるので、多角形は元のサイズの4倍(4×)に拡大される。この拡大は、グラフィックス・コア230がサポートするビューポート変換を使用することによって実施される。ビューポート変換では、ワールド座標がグラフィックス・コア230によって表示画面の座標上にマッピングされる。その後、グラフィックス・コア230が変換を加速させる。ビューポート変換の適用により、タイルにレンダリングするために最終画像を拡大するため、ビューポートの寸法を操作することができる。
【0023】
プロセス・ブロック430で、拡大された多角形をセットアップする。一実施形態によれば、セットアップ段階で、各頂点に関連する入力データを取り込み、走査変換に必要な様々なパラメータを計算する。他の実施形態によれば、多角形の様々な頂点属性を補間するために必要な勾配も計算される。
【0024】
プロセス・ブロック440で、多角形のラスタ化およびテクスチャリングのためのテクスチャ・データをグラフィックス・コア230で実行する。ラスタ化の間、多角形内のピクセルが処理される。さらに、テクスチャリングできる場合は、テクスチャをピクセルに適用する。プロセス・ブロック450で、タイルのレンダリングを完了する。タイル内の最後の三角形のレンダリング完了後、グラフィックス・カラー/Zタイル・バッファ340は、元のサイズの4×のタイルの完全な画像を含む。プロセス・ブロック460で、伸縮(stretch)ビット・アライン・ブロック転送(bit aligned block transfer:BLT)を実行する。BLTは、ピクセル、または他のデータを1つの記憶場所から他へコピーするプロセスである。伸縮BLTは、物理的タイル・サイズから仮想タイル・サイズへ画像をダウン・サンプリングするために実施する。
【0025】
伸縮BLTは、物理的タイル・サイズと等しいサイズの(2つの多角形でできた)長方形をレンダリングすることによって完了する。物理的タイルにおいて(たとえば、グラフィックス・カラー/Zタイル・バッファ340において)スーパーサンプリングされた画像は伸縮BLTのソースであると考えられるが、その宛先は、メモリ113内に割り当てられる。一実施形態によれば、グラフィックス・コア230は、宛先三角形用の宛先のためのテクスチャ・マップとして伸縮BLTのソースを処理する。このため、グラフィックス・テクスチャ・キャッシュ320は、タイル中のテクスチャ・データの良好な利用を維持するため、じゃまされずに維持される。
【0026】
プロセス・ブロック470で、グラフィックス・カラー/Zタイル・バッファ340でタイルをさらにレンダリングする必要があるかどうかを決定する。タイルをさらにレンダリングする必要があると決定した場合、制御はブロック410に戻り、別のタイルの多角形をグラフィックス・コア230でグラフィックス・カラー/Zタイル・バッファ340から受け取る。一実施形態によれば、グラフィックス・コア230はパイプライン・エンジンを含む。それによって、グラフィックス・コア230での次のタイルのレンダリングを、前のタイルの伸縮BLTの実行中に開始することができる。
【0027】
上記のように、タイルベースのレンダリング用の統合型グラフィックス・キャッシュを使用すると、外部の記憶装置と帯域幅の要求を増加させる必要なく、有効にスーパーサンプリングした画像を得ることができる。
【0028】
通常、非タイル・ベースのレンダリングを利用するグラフィックス・エンジンは、まず、スーパーサンプリングした画像全体を記憶場所にレンダリングしなければならず、それは、ダウンサンプリングする前は、元の表示解像度のk倍である。この記憶は、通常、グラフィックス・エンジンと同じ半導体デバイスで実施するには大きすぎる。したがって、メイン・メモリ内の記憶装置と帯域幅を増大することが必要である。
【0029】
上記のように、統合型グラフィックス・キャッシュは、スーパーサンプリングされた画像を(たとえば伸縮BLTを介して)後でフィルタ・ダウンするための一時的記憶域を提供する。その結果、元のサイズの最終画像をメモリ113などのメイン・システム・メモリ内に書き出し、記憶することのみが必要とされる。したがって、余分な記憶装置と帯域幅を必要としない、スーパーサンプリングの有効な実施について記載した。
【0030】
本発明の多くの変更および修正は、上記の説明を読んだ後、当業者には疑いなく明らかになるであろうが、例によって示しかつ説明した特定の実施形態はどれも限定的ではないと見なすべきものとする。したがって、様々な実施形態の詳細に対する参照は、本発明とみなされるこれらの特徴のみを記載する特許請求の範囲を限定するものではない。
【図面の簡単な説明】
【図1】
コンピュータ・システムの一実施形態の構成図である。
【図2】
プロセッサの一実施形態の構成図である。
【図3】
グラフィックス・キャッシュの一実施形態の構成図である。
【図4】
スーパーサンプリング中のデータ流れの一実施形態の流れ図である。
(発明の分野)
本発明は、コンピュータ・システムに関する。さらに詳細には、本発明は、3次元グラフィックス処理に関する。
【0002】
(背景)
コンピュータが生成するグラフィックスは、一般に産業、事務、教育および娯楽の様々な分野で使用される。コンピュータ・グラフィックスは、表示モニタ上のピクセルによって表される。しかし、表示装置には、限られた数のピクセルしか含まれていないので、しばしばエイリアシングが生じる。アナログ・データをデジタル形式で表す必要から引き起こされるエイリアシングにより、表示された画像の端部がギザギザになる。
【0003】
エイリアシングを少なくするために使用される技法の適用は、通常、アンチエイリアシングと呼ばれる。フルシーン・アンチエイリアシングに使用される一技法は、スーパーサンプリングとして知られている。スーパーサンプリングは、元のグラフィックス・シーンを高解像度でレンダリングし、その後、元の表示解像度にフィルタ・ダウンする手法である。したがって、スーパーサンプリングは、本質的に、エイリアシング効果をより高い空間周波数にシフトする。
【0004】
しかし、スーパーサンプリング技法を使用中、コンピュータ・システムによって生じるパフォーマンス上の欠陥がある。スーパーサンプリングに関する問題点は、画像を高解像度でレンダリングし、その後その画像をフィルタ・ダウンするため、追加の処理が必要で、その上余分な記憶装置と帯域幅が必要になることである。たとえば、表示装置の各XとY方向で2倍(2×)にスーパーサンプリングするには、記憶装置と帯域幅を4倍(4×)にする必要がある。したがって、記憶装置と帯域幅を追加せずにスーパーサンプリングを有効に実現することが望ましい。
【0005】
本発明は、本発明の様々な実施形態についての以下の詳細な説明および添付の図面から、さらによく理解されるであろう。ただし、図面は、本発明を特定の実施形態に限定するものではなく、例示および理解のためのものであることを留意されたい。
【0006】
(詳細な説明)
スーパーサンプリングを有効に実施するための方法および装置を開示する。本発明の以下の詳細な説明では、本発明の完全な理解をもたらすため、多くの具体的な詳細を記載する。しかし、本発明は、こうした具体的な詳細なしで実施できることが、当業者には明らかであろう。他の例では、本発明を不明瞭にしないために、詳細にではなく、周知の構造およびデバイスを構成図で示した。
【0007】
本明細書において「一実施形態」または「ある実施形態」との引用は、実施形態に関連して述べる具体的な特徴、構造、または特性が、本発明の少なくとも1つの実施形態に含まれることを意味する。本明細書の様々な箇所に現れる表現「一実施形態では」は、必ずしもすべて同じ実施形態を指すのではない。
【0008】
図1は、コンピュータ・システム100の一実施形態の構成図である。コンピュータ・システム100は、プロセッサ・バス110に結合された中央処理装置(プロセッサ)105を含む。一実施形態では、プロセッサ105は、カリフォルニア州サンタクララのインテル・コーポレーションから市販されているPentium(登録商標)IIファミリおよびモバイルPentium(登録商標)およびPentium(登録商標)IIプロセッサを含むPentium(登録商標)プロセッサ・ファミリのプロセッサである。あるいは、他のプロセッサを使用することもできる。
【0009】
チップ・セット120もプロセッサ・バス110に結合される。チップ・セット120は、メイン・メモリ113を制御するメモリコントローラを備えることができる。さらに、チップ・セット120は、カリフォルニア州サンタクララのインテル・コーポレーションが開発したAGP(Accelerated Graphics Port:アクセラレイテッド・グラフィックス・ポート)仕様2.0に準拠したインターフェースを備えることもできる。チップ・セット120は、ビデオ・デバイス125に結合され、メイン・メモリ113へのアクセスを求めるビデオ・データ要求を処理する。メイン・メモリ113は、チップ・セット120を介してプロセッサ・バス110に結合される。
【0010】
メイン・メモリ113はチップ・セット120を介してプロセッサ・バス110に結合される。メイン・メモリ113は、プロセッサ105によって実行される命令シーケンスを記憶する。一実施形態では、メイン・メモリ113は、DRAM(ダイナミック・ランダム・アクセス・メモリ)システムを含む。しかし、メイン・メモリ113は他の構成でもよい。プロセッサ105によって実行される命令シーケンスは、メイン・メモリ113または他のどの記憶デバイスによっても検索することができる。複数のプロセッサおよび/または複数のメイン・メモリ・デバイスなど、追加のデバイスをプロセッサ・バス110に結合することもできる。コンピュータ・システム100は単一のプロセッサを用いて記載してあるが、複数のプロセッサをプロセッサ・バス110に結合することもできる。ビデオ・デバイス125もチップ・セット120に結合される。一実施形態では、ビデオ・デバイスは陰極線管(CRT)や液晶表示装置(LCD)などのビデオ・モニタとそれに必要なサポート回路を含む。
【0011】
プロセッサ・バス110はチップ・セット120によってシステム・バス130に結合される。一実施形態では、システム・バス130は、カリフォルニア州サンタクララのインテル・コーポレーションが開発したPCI(Peripheral Component Interconnect:周辺装置相互接続)仕様2.1に準拠した標準バスであるが、他のバス標準を使用することもできる。オーディオ・デバイス127などの多数のデバイスをシステム・バス130に結合することもできる。
【0012】
バス・ブリッジ140はシステム・バス130を2次バス150に結合する。一実施形態では、2次バス150は、ニューヨーク州アーモンクのインターナショナル・ビジネス・マシーンズ・コーポレーションが開発したISA(Industry Standard Architecture:産業標準構成)仕様1.0aに準拠したバスである。しかし、他のバス標準、たとえば、コンパック・コンピュータ他が開発したEISA(Extended Industry Standard Architecture:拡張産業標準構成)仕様3.12も使用することができる。ハード・ディスク153やディスク駆動装置154など、複数のデバイスを2次バス150に結合することができる。カーソル制御デバイス(図1に図示せず)など他のデバイスを2次バス150に結合することもできる。
【0013】
図2は、プロセッサ105の一実施形態の構成図である。プロセッサ105は、CPUコア210、CPUキャッシュ220、グラフィックス・コア230、グラフィックス・キャッシュ240およびバス・インターフェース250を備える。CPUコア210は、コンピュータ・システム100で受け取る非グラフィック命令を実行する。CPUキャッシュ220は、CPUコア210に結合される。一実施形態によれば、CPUキャッシュ220は、データおよびCPUコア210が実行する命令シーケンスを記憶するための高速記憶装置である。
【0014】
バス・インターフェース250はCPUキャッシュ220に結合される。バス・インターフェース250は、データがプロセッサ105に送られまたそれから配信されるように、CPUキャッシュ220とグラフィックス・キャッシュ240をプロセッサ・バス110に接続する。
【0015】
グラフィックス・コア230は、グラフィック変換を計算するための専用のグラフィックス・アクセラレータを含む。グラフィックス・コア230がグラフィック計算を処理している間、グラフィックス・コア230は、CPUコア210が非グラフィック命令を有効に実行できるようにする。一実施形態によれば、グラフィックス・コアは、タイルベース・レンダリング・アーキテクチャに従って動作する。レンダリングは、ピクセル単位で異なるカラーおよび位置情報を計算する動作である。それによって、見る人は、ビデオ・デバイス125の2次元モニタ上で深さを感知することができる。
【0016】
レンダリングは、1組の頂点としてのみ以前に記憶された対象物の表面上の点を埋める。そうすると、3次元効果のための陰影をつけた立体の対象物が画面上に描かれる。対象物をレンダリングするには、カラーおよび位置情報を決定することが必要である。有効に行うには、対象物の多数の頂点を複数の三角形にセグメント化し、次いで、これらの三角形(3つの頂点の組)をグラフィックス・コア230で1度に1つずつ処理する。
【0017】
タイルベース・レンダリングでは、グラフィックス・コア230は、シーンが完了するまで、三角形を1つずつ用いて、特定のグラフィックス・シーン(または画像)内に多角形を形成する。しかし、シーンをレンダリングする前に、グラフィックス・コア230は、シーンを一連の三角形に細分化する。その後、三角形を、各三角形のバウンディング・ボックスを調べることによってタイルにソートする(またはビニングする(binned))。タイル・ビニングは、どのタイル内に三角形があるかを決定する。一実施形態では、グラフィックス・キャッシュ240は、シーンの各タイルのためのバッファを含む。このバッファは、バッファ内に含まれる特定の三角形を指すポインタを含む。各三角形がビニングされた後、シーンの各タイルは1度に1つずつレンダリングされる。
【0018】
グラフィックス・キャッシュ240はグラフィックス・コア230とバス・インターフェース250に結合される。一実施形態によれば、グラフィックス・キャッシュ240は、128×64ピクセル・サイズのタイルを収容できる統合型グラフィックス・キャッシュであり、各ピクセルは、32ビットのカラー値および深度値を含む。他の実施形態では、グラフィックス・キャッシュ240は、カラー・データと深度データに加えて、テクスチャ・データを記憶する。他の実施形態では、グラフィックス・キャッシュ240は、タイル・サイズ128×64を収容するための64キロバイトの静的ランダム・アクセス・メモリである。しかし、グラフィックス・キャッシュ240としては、他のサイズやタイプの記憶デバイスも使用することができることを当業者は理解されたい。
【0019】
図3は、グラフィックス・キャッシュ240の一実施形態の構成図である。グラフィックス・キャッシュ240は、グラフィックス・テクスチャ・キャッシュ320およびグラフィックス・カラー/Zタイル・バッファ340を含む。グラフィックス・テクスチャ・キャッシュ320は、対象物をテクスチャ・マッピングするために使用されるテクスチャ・データを記憶する。テクスチャ・マッピングは、色や輝度などの2次元特性に加えて、3次元特性(たとえば、対象物の透過性および反射性の程度)でテクスチャを符号化するものである。テクスチャが決定されると、そのテクスチャで3次元対象物を包むことができる。
【0020】
グラフィックス・カラー/Zタイル・バッファ340は、1つまたは複数のグラフィック・シーンの各タイル内のピクセルごとにカラー・データと深度データを記憶する。タイル・サイズは、カラーと深度フォーマット、およびグラフィックス・カラー/Zタイル・バッファ340のサイズに基づいて決定することができる。したがって、一実施形態によれば、グラフィックス・カラー/Zタイル・バッファ340は、特定のタイルの内部に含まれるすべての三角形に対して、中間のカラー・データと深度データのアクセスを実施できるのに十分な大きさである。他の実施形態によれば、カラー・データと深度データは、タイルの最後の三角形のレンダリング完了後に、メイン・メモリ113に書き込まれる。
【0021】
一実施形態によれば、グラフィックス・キャッシュ240の使用で、余分な記憶装置と帯域幅の必要性をなくすことによって、グラフィックス・コア230が、スーパーサンプリングを有効に実施できるようになる。図4は、グラフィックス・コア230によるスーパーサンプリング中のデータ流れの一実施形態の流れ図である。説明のため、値k=4はXおよびY方向に2倍(2×)にスーパーサンプリングしたものと仮定する。さらに、タイル・サイズを128×64とし、多角形は、仮想タイル・サイズ64×32にビニングされると仮定する。ただし、このプロセスは、他の値kおよびタイル・サイズを使用しても実施できることを当業者は理解されたい。
【0022】
図4を参照すると、プロセス・ブロック410で、1つのタイルのためのの複数の多角形が、グラフィックス・コア230でメイン・メモリ113から、チップ・セット120内にあるAGPポートを介して受け取られる。プロセス・ブロック420で、多角形はグラフィックス・コア230で拡大される。この例はk=4であるので、多角形は元のサイズの4倍(4×)に拡大される。この拡大は、グラフィックス・コア230がサポートするビューポート変換を使用することによって実施される。ビューポート変換では、ワールド座標がグラフィックス・コア230によって表示画面の座標上にマッピングされる。その後、グラフィックス・コア230が変換を加速させる。ビューポート変換の適用により、タイルにレンダリングするために最終画像を拡大するため、ビューポートの寸法を操作することができる。
【0023】
プロセス・ブロック430で、拡大された多角形をセットアップする。一実施形態によれば、セットアップ段階で、各頂点に関連する入力データを取り込み、走査変換に必要な様々なパラメータを計算する。他の実施形態によれば、多角形の様々な頂点属性を補間するために必要な勾配も計算される。
【0024】
プロセス・ブロック440で、多角形のラスタ化およびテクスチャリングのためのテクスチャ・データをグラフィックス・コア230で実行する。ラスタ化の間、多角形内のピクセルが処理される。さらに、テクスチャリングできる場合は、テクスチャをピクセルに適用する。プロセス・ブロック450で、タイルのレンダリングを完了する。タイル内の最後の三角形のレンダリング完了後、グラフィックス・カラー/Zタイル・バッファ340は、元のサイズの4×のタイルの完全な画像を含む。プロセス・ブロック460で、伸縮(stretch)ビット・アライン・ブロック転送(bit aligned block transfer:BLT)を実行する。BLTは、ピクセル、または他のデータを1つの記憶場所から他へコピーするプロセスである。伸縮BLTは、物理的タイル・サイズから仮想タイル・サイズへ画像をダウン・サンプリングするために実施する。
【0025】
伸縮BLTは、物理的タイル・サイズと等しいサイズの(2つの多角形でできた)長方形をレンダリングすることによって完了する。物理的タイルにおいて(たとえば、グラフィックス・カラー/Zタイル・バッファ340において)スーパーサンプリングされた画像は伸縮BLTのソースであると考えられるが、その宛先は、メモリ113内に割り当てられる。一実施形態によれば、グラフィックス・コア230は、宛先三角形用の宛先のためのテクスチャ・マップとして伸縮BLTのソースを処理する。このため、グラフィックス・テクスチャ・キャッシュ320は、タイル中のテクスチャ・データの良好な利用を維持するため、じゃまされずに維持される。
【0026】
プロセス・ブロック470で、グラフィックス・カラー/Zタイル・バッファ340でタイルをさらにレンダリングする必要があるかどうかを決定する。タイルをさらにレンダリングする必要があると決定した場合、制御はブロック410に戻り、別のタイルの多角形をグラフィックス・コア230でグラフィックス・カラー/Zタイル・バッファ340から受け取る。一実施形態によれば、グラフィックス・コア230はパイプライン・エンジンを含む。それによって、グラフィックス・コア230での次のタイルのレンダリングを、前のタイルの伸縮BLTの実行中に開始することができる。
【0027】
上記のように、タイルベースのレンダリング用の統合型グラフィックス・キャッシュを使用すると、外部の記憶装置と帯域幅の要求を増加させる必要なく、有効にスーパーサンプリングした画像を得ることができる。
【0028】
通常、非タイル・ベースのレンダリングを利用するグラフィックス・エンジンは、まず、スーパーサンプリングした画像全体を記憶場所にレンダリングしなければならず、それは、ダウンサンプリングする前は、元の表示解像度のk倍である。この記憶は、通常、グラフィックス・エンジンと同じ半導体デバイスで実施するには大きすぎる。したがって、メイン・メモリ内の記憶装置と帯域幅を増大することが必要である。
【0029】
上記のように、統合型グラフィックス・キャッシュは、スーパーサンプリングされた画像を(たとえば伸縮BLTを介して)後でフィルタ・ダウンするための一時的記憶域を提供する。その結果、元のサイズの最終画像をメモリ113などのメイン・システム・メモリ内に書き出し、記憶することのみが必要とされる。したがって、余分な記憶装置と帯域幅を必要としない、スーパーサンプリングの有効な実施について記載した。
【0030】
本発明の多くの変更および修正は、上記の説明を読んだ後、当業者には疑いなく明らかになるであろうが、例によって示しかつ説明した特定の実施形態はどれも限定的ではないと見なすべきものとする。したがって、様々な実施形態の詳細に対する参照は、本発明とみなされるこれらの特徴のみを記載する特許請求の範囲を限定するものではない。
【図面の簡単な説明】
【図1】
コンピュータ・システムの一実施形態の構成図である。
【図2】
プロセッサの一実施形態の構成図である。
【図3】
グラフィックス・キャッシュの一実施形態の構成図である。
【図4】
スーパーサンプリング中のデータ流れの一実施形態の流れ図である。
Claims (24)
- グラフィックス・コア、および前記グラフィックス・コアに結合された統合型グラフィックス・キャッシュを含み、前記統合型グラフィックス・キャッシュが、テクスチャ・データ、カラー・データ、および深度データを記憶するコンピュータ・システム。
- 前記グラフィックス・キャッシュが、テクスチャ・データを記憶するテクスチャ・キャッシュと、カラー・データと深度データを記憶するカラー/深度バッファを備える請求項1に記載のコンピュータ・システム。
- CPU(中央処理装置)コアと、前記CPUコアに結合されたCPUキャッシュをさらに含む請求項1に記載のコンピュータ・システム。
- 前記CPUキャッシュおよび前記グラフィックス・キャッシュに結合されたバス・インターフェースをさらに含む請求項3に記載のコンピュータ・システム。
- 前記グラフィックス・コアが、タイルベース・レンダリング・アーキテクチャに従って動作する請求項1に記載のコンピュータ・システム。
- 前記バス・インターフェースに結合されたメイン・メモリをさらに含む請求項1に記載のコンピュータ・システム。
- 前記グラフィックス・コアが、画像の多角形を拡大し、前記多角形を前記グラフィックス・キャッシュにレンダリングする請求項2に記載のコンピュータ・システム。
- 前記画像の多角形の拡大を、ビューポート変換を介して実施する請求項7に記載のコンピュータ・システム。
- 前記多角形がレンダリングされた後、前記グラフィックス・コアが、前記画像の多角形をダウンサンプリングする請求項7に記載のコンピュータ・システム。
- 前記画像の多角形の前記ダウンサンプリングが、ビット・アライン・ブロック転送を実行することによって実施される請求項9に記載のコンピュータ・システム。
- 画像をスーパーサンプリングするための方法であって、グラフィックス・コアで最初のタイルの多角形を受け取ることと、前記最初のタイルの多角形を統合型グラフィックス・キャッシュにレンダリングすることを含み、前記統合型グラフィックス・キャッシュが、前記画像のテクスチャ・データ、カラー・データ、深度データを記憶する方法。
- グラフィックス・コアで多角形を受け取った後、前記多角形を拡大することをさらに含む請求項11に記載の方法。
- 前記多角形を前記画像の元のサイズの4倍に拡大する請求項12に記載の方法。
- ビューポート変換を使用して拡大を実施する請求項12に記載の方法。
- 前記多角形をレンダリングするプロセスが画像の多角形をセットアップすることと、前記画像の多角形内のピクセルをラスタ化することを含む請求項11に記載の方法。
- 前記画像の多角形内のピクセルをテクスチャリングすることをさらに含む請求項15に記載の方法。
- 前記多角形をレンダリングした後、前記多角形をダウンサンプリングすることをさらに含む請求項11に記載の方法。
- 前記ダウンサンプリングをビット・アライン・ブロック転送を介して実施する請求項17に記載の方法。
- 統合型グラフィックス・キャッシュがレンダリングすべきタイルをさらに含むかどうかを決定することと、その場合、グラフィックス・コアで画像の第2のタイルの多角形を受け取ることと、前記第2のタイルの多角形を前記統合型グラフィックス・キャッシュにレンダリングすることとをさらに含む請求項11に記載の方法。
- グラフィックス・アクセラレータと、前記グラフィックス・アクセラレータに結合された統合型グラフィックス・キャッシュとを備えており、前記統合型グラフィックス・キャッシュが、テクスチャ・データ、カラー・データ、および深度データを記憶するCPU(中央処理装置)。
- 前記グラフィックス・キャッシュが、テクスチャ・データを記憶するテクスチャ・キャッシュと、カラー・データと深度データを記憶するカラー/深度バッファとを備える請求項20に記載のCPU。
- CPUコアと、前記CPUコアに結合されたCPUキャッシュとをさらに備える請求項20に記載のCPU。
- 前記CPUキャッシュおよび前記グラフィックス・キャッシュに結合されたバス・インターフェースをさらに備える請求項22に記載のCPU。
- 前記グラフィックス・アクセラレータが、タイルベース・レンダリング・アーキテクチャに従って動作する請求項23に記載のCPU。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/675,096 US6885378B1 (en) | 2000-09-28 | 2000-09-28 | Method and apparatus for the implementation of full-scene anti-aliasing supersampling |
PCT/US2001/030360 WO2002027661A2 (en) | 2000-09-28 | 2001-09-26 | Method and apparatus for the anti-aliasing supersampling |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004510270A true JP2004510270A (ja) | 2004-04-02 |
JP2004510270A5 JP2004510270A5 (ja) | 2007-08-09 |
Family
ID=24709035
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002531365A Pending JP2004510270A (ja) | 2000-09-28 | 2001-09-26 | フルシーン・アンチエイリアシング・スーパーサンプリング実施のための方法および装置 |
Country Status (12)
Country | Link |
---|---|
US (1) | US6885378B1 (ja) |
EP (1) | EP1323131B1 (ja) |
JP (1) | JP2004510270A (ja) |
KR (1) | KR100547258B1 (ja) |
CN (1) | CN1251155C (ja) |
AT (1) | ATE355569T1 (ja) |
AU (1) | AU2001293158A1 (ja) |
CA (1) | CA2423497C (ja) |
DE (1) | DE60126967T2 (ja) |
HK (1) | HK1054110B (ja) |
TW (1) | TW591547B (ja) |
WO (1) | WO2002027661A2 (ja) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008027418A (ja) * | 2006-07-20 | 2008-02-07 | Samsung Electronics Co Ltd | 半平面エッジ関数を用いたタイルビニング方法およびシステム |
JP2008090673A (ja) * | 2006-10-03 | 2008-04-17 | Mitsubishi Electric Corp | キャッシュメモリ制御装置 |
JP2008533628A (ja) * | 2005-03-21 | 2008-08-21 | クゥアルコム・インコーポレイテッド | タイル化されたプリフェッチ及びキャッシングされたデプスバッファ |
JP2011070672A (ja) * | 2009-09-25 | 2011-04-07 | Arm Ltd | グラフィックス処理システム |
JP2011090664A (ja) * | 2009-10-20 | 2011-05-06 | Samsung Electronics Co Ltd | タイルベースのレンダリング装置および方法 |
JP2014517385A (ja) * | 2011-05-04 | 2014-07-17 | クゥアルコム・インコーポレイテッド | 低解像度バッファベースのピクセルカリング |
US8988443B2 (en) | 2009-09-25 | 2015-03-24 | Arm Limited | Methods of and apparatus for controlling the reading of arrays of data from memory |
US9195426B2 (en) | 2013-09-20 | 2015-11-24 | Arm Limited | Method and apparatus for generating an output surface from one or more input surfaces in data processing systems |
US9349156B2 (en) | 2009-09-25 | 2016-05-24 | Arm Limited | Adaptive frame buffer compression |
US9406155B2 (en) | 2009-09-25 | 2016-08-02 | Arm Limited | Graphics processing systems |
US9640131B2 (en) | 2014-02-07 | 2017-05-02 | Arm Limited | Method and apparatus for overdriving based on regions of a frame |
US9881401B2 (en) | 2009-09-25 | 2018-01-30 | Arm Limited | Graphics processing system |
US9996363B2 (en) | 2011-04-04 | 2018-06-12 | Arm Limited | Methods of and apparatus for displaying windows on a display |
US10194156B2 (en) | 2014-07-15 | 2019-01-29 | Arm Limited | Method of and apparatus for generating an output frame |
US10832639B2 (en) | 2015-07-21 | 2020-11-10 | Arm Limited | Method of and apparatus for generating a signature representative of the content of an array of data |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3543942B2 (ja) * | 2000-03-02 | 2004-07-21 | 株式会社ソニー・コンピュータエンタテインメント | 画像生成装置 |
US20030210267A1 (en) * | 2002-05-13 | 2003-11-13 | Kylberg Robert Lee | Systems and methods for providing asynchronous client rendering in a graphical user interface (GUI) environment |
TW569097B (en) * | 2002-09-11 | 2004-01-01 | Via Tech Inc | Personal computer system and core logic chip applied to same |
JP2004164618A (ja) * | 2002-10-14 | 2004-06-10 | Oce Technol Bv | 携帯端末における選択メカニズム |
US7307667B1 (en) * | 2003-06-27 | 2007-12-11 | Zoran Corporation | Method and apparatus for an integrated high definition television controller |
US7812844B2 (en) * | 2004-01-28 | 2010-10-12 | Lucid Information Technology, Ltd. | PC-based computing system employing a silicon chip having a routing unit and a control unit for parallelizing multiple GPU-driven pipeline cores according to the object division mode of parallel operation during the running of a graphics application |
US9098943B1 (en) * | 2003-12-31 | 2015-08-04 | Ziilabs Inc., Ltd. | Multiple simultaneous bin sizes |
US7460175B2 (en) * | 2004-04-02 | 2008-12-02 | Nvidia Corporation | Supersampling of digital video output for multiple analog display formats |
JP4656862B2 (ja) * | 2004-05-28 | 2011-03-23 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
US7348988B2 (en) * | 2005-05-06 | 2008-03-25 | Via Technologies, Inc. | Texture cache control using an adaptive missing data table in a multiple cache computer graphics environment |
KR101177125B1 (ko) * | 2005-06-11 | 2012-08-24 | 엘지전자 주식회사 | 멀티-코어 프로세서의 합성모드 구현 방법 및 장치 |
US7737988B1 (en) * | 2005-11-14 | 2010-06-15 | Nvidia Corporation | Using font filtering engines for texture blitting |
US8009172B2 (en) * | 2006-08-03 | 2011-08-30 | Qualcomm Incorporated | Graphics processing unit with shared arithmetic logic unit |
CN101252687B (zh) * | 2008-03-20 | 2010-06-02 | 上海交通大学 | 实现多通道联合的感兴趣区域视频编码及传输的方法 |
EP2422316B1 (en) | 2009-04-20 | 2018-07-04 | Barco, Inc. | Using gpu for network packetization |
KR101683556B1 (ko) * | 2010-01-06 | 2016-12-08 | 삼성전자주식회사 | 타일 기반의 렌더링 장치 및 렌더링 방법 |
CN102208112B (zh) * | 2011-05-25 | 2015-08-05 | 威盛电子股份有限公司 | 景深消隐方法、三维图形处理方法及其装置 |
US9098938B2 (en) * | 2011-11-10 | 2015-08-04 | The Directv Group, Inc. | System and method for drawing anti-aliased lines in any direction |
CN103164838B (zh) * | 2011-12-12 | 2015-11-04 | 扬智科技股份有限公司 | 图形数据处理方法 |
US9734548B2 (en) * | 2012-10-26 | 2017-08-15 | Nvidia Corporation | Caching of adaptively sized cache tiles in a unified L2 cache with surface compression |
US9720858B2 (en) | 2012-12-19 | 2017-08-01 | Nvidia Corporation | Technique for performing memory access operations via texture hardware |
US9697006B2 (en) | 2012-12-19 | 2017-07-04 | Nvidia Corporation | Technique for performing memory access operations via texture hardware |
US9595075B2 (en) * | 2013-09-26 | 2017-03-14 | Nvidia Corporation | Load/store operations in texture hardware |
US10163180B2 (en) * | 2015-04-29 | 2018-12-25 | Qualcomm Incorporated | Adaptive memory address scanning based on surface format for graphics processing |
US10262456B2 (en) * | 2015-12-19 | 2019-04-16 | Intel Corporation | Method and apparatus for extracting and using path shading coherence in a ray tracing architecture |
US10235811B2 (en) | 2016-12-29 | 2019-03-19 | Intel Corporation | Replicating primitives across multiple viewports |
US10262393B2 (en) * | 2016-12-29 | 2019-04-16 | Intel Corporation | Multi-sample anti-aliasing (MSAA) memory bandwidth reduction for sparse sample per pixel utilization |
US10510133B2 (en) * | 2017-06-20 | 2019-12-17 | Think Silicon Sa | Asymmetric multi-core heterogeneous parallel processing system |
US10628910B2 (en) | 2018-09-24 | 2020-04-21 | Intel Corporation | Vertex shader with primitive replication |
US10902265B2 (en) * | 2019-03-27 | 2021-01-26 | Lenovo (Singapore) Pte. Ltd. | Imaging effect based on object depth information |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03212775A (ja) * | 1989-11-17 | 1991-09-18 | Digital Equip Corp <Dec> | アンチエイリアス多角形の描図方法及び装置 |
JPH08503563A (ja) * | 1992-11-13 | 1996-04-16 | ザ・ユニヴァーシティ・オヴ・ノース・キャロライナ・アト・チャペル・ヒル | 画像発生アーキテクチャおよび装置 |
JPH11296154A (ja) * | 1998-04-15 | 1999-10-29 | Hitachi Ltd | 図形処理装置及び図形処理方法 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5307451A (en) | 1992-05-12 | 1994-04-26 | Apple Computer, Inc. | Method and apparatus for generating and manipulating graphical data for display on a computer output device |
KR100277803B1 (ko) * | 1995-03-10 | 2001-01-15 | 가나이 쓰도무 | 3차원 그래픽 표시장치 |
US5651104A (en) * | 1995-04-25 | 1997-07-22 | Evans & Sutherland Computer Corporation | Computer graphics system and process for adaptive supersampling |
US5682522A (en) * | 1995-07-18 | 1997-10-28 | Silicon Integrated Systems Corp. | Shared memory architecture of graphics frame buffer and hard disk cache |
US5977977A (en) | 1995-08-04 | 1999-11-02 | Microsoft Corporation | Method and system for multi-pass rendering |
US5960213A (en) | 1995-12-18 | 1999-09-28 | 3D Labs Inc. Ltd | Dynamically reconfigurable multi-function PCI adapter device |
US6111584A (en) | 1995-12-18 | 2000-08-29 | 3Dlabs Inc. Ltd. | Rendering system with mini-patch retrieval from local texture storage |
JPH09245179A (ja) * | 1996-03-08 | 1997-09-19 | Mitsubishi Electric Corp | コンピュータグラフィックス装置 |
EP0821324A3 (en) | 1996-07-26 | 1999-05-06 | International Business Machines Corporation | Cache memory for Z-buffer |
US5828382A (en) * | 1996-08-02 | 1998-10-27 | Cirrus Logic, Inc. | Apparatus for dynamic XY tiled texture caching |
US6104417A (en) * | 1996-09-13 | 2000-08-15 | Silicon Graphics, Inc. | Unified memory computer architecture with dynamic graphics memory allocation |
US5860060A (en) * | 1997-05-02 | 1999-01-12 | Texas Instruments Incorporated | Method for left/right channel self-alignment |
US6094203A (en) * | 1997-09-17 | 2000-07-25 | Hewlett-Packard Company | Architecture for a graphics processing unit using main memory |
US5986677A (en) * | 1997-09-30 | 1999-11-16 | Compaq Computer Corporation | Accelerated graphics port read transaction merging |
US6496187B1 (en) * | 1998-02-17 | 2002-12-17 | Sun Microsystems, Inc. | Graphics system configured to perform parallel sample to pixel calculation |
US6483516B1 (en) * | 1998-10-09 | 2002-11-19 | National Semiconductor Corporation | Hierarchical texture cache |
US6448968B1 (en) * | 1999-01-29 | 2002-09-10 | Mitsubishi Electric Research Laboratories, Inc. | Method for rendering graphical objects represented as surface elements |
GB9915012D0 (en) * | 1999-06-29 | 1999-08-25 | Koninkl Philips Electronics Nv | Z-buffering graphics system |
-
2000
- 2000-09-28 US US09/675,096 patent/US6885378B1/en not_active Expired - Lifetime
-
2001
- 2001-08-20 TW TW090120378A patent/TW591547B/zh not_active IP Right Cessation
- 2001-09-26 CN CNB018164188A patent/CN1251155C/zh not_active Expired - Fee Related
- 2001-09-26 AU AU2001293158A patent/AU2001293158A1/en not_active Abandoned
- 2001-09-26 KR KR1020037004456A patent/KR100547258B1/ko not_active IP Right Cessation
- 2001-09-26 CA CA002423497A patent/CA2423497C/en not_active Expired - Fee Related
- 2001-09-26 DE DE60126967T patent/DE60126967T2/de not_active Expired - Lifetime
- 2001-09-26 WO PCT/US2001/030360 patent/WO2002027661A2/en active IP Right Grant
- 2001-09-26 JP JP2002531365A patent/JP2004510270A/ja active Pending
- 2001-09-26 EP EP01973598A patent/EP1323131B1/en not_active Expired - Lifetime
- 2001-09-26 AT AT01973598T patent/ATE355569T1/de not_active IP Right Cessation
-
2003
- 2003-09-06 HK HK03106358.0A patent/HK1054110B/zh not_active IP Right Cessation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03212775A (ja) * | 1989-11-17 | 1991-09-18 | Digital Equip Corp <Dec> | アンチエイリアス多角形の描図方法及び装置 |
JPH08503563A (ja) * | 1992-11-13 | 1996-04-16 | ザ・ユニヴァーシティ・オヴ・ノース・キャロライナ・アト・チャペル・ヒル | 画像発生アーキテクチャおよび装置 |
JPH11296154A (ja) * | 1998-04-15 | 1999-10-29 | Hitachi Ltd | 図形処理装置及び図形処理方法 |
Non-Patent Citations (2)
Title |
---|
CSNG199800335010, 池戸恒雄, ""MIMD拡張構造グラフィックプロセッサ"", 電子情報通信学会技術研究報告, 19961220, 第96巻, 第436号, p.73−87, JP, 社団法人電子情報通信学会 * |
JPN6010010028, 池戸恒雄, ""MIMD拡張構造グラフィックプロセッサ"", 電子情報通信学会技術研究報告, 19961220, 第96巻, 第436号, p.73−87, JP, 社団法人電子情報通信学会 * |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4861403B2 (ja) * | 2005-03-21 | 2012-01-25 | クゥアルコム・インコーポレイテッド | タイル化されたプリフェッチ及びキャッシングされたデプスバッファ |
JP2008533628A (ja) * | 2005-03-21 | 2008-08-21 | クゥアルコム・インコーポレイテッド | タイル化されたプリフェッチ及びキャッシングされたデプスバッファ |
JP2012033173A (ja) * | 2005-03-21 | 2012-02-16 | Qualcomm Inc | タイル化されたプリフェッチ及びキャッシングされたデプスバッファ |
US8089486B2 (en) | 2005-03-21 | 2012-01-03 | Qualcomm Incorporated | Tiled prefetched and cached depth buffer |
JP4521391B2 (ja) * | 2006-07-20 | 2010-08-11 | 三星電子株式会社 | 半平面エッジ関数を用いたタイルビニング方法およびシステム |
JP2008027418A (ja) * | 2006-07-20 | 2008-02-07 | Samsung Electronics Co Ltd | 半平面エッジ関数を用いたタイルビニング方法およびシステム |
JP2008090673A (ja) * | 2006-10-03 | 2008-04-17 | Mitsubishi Electric Corp | キャッシュメモリ制御装置 |
JP2011070672A (ja) * | 2009-09-25 | 2011-04-07 | Arm Ltd | グラフィックス処理システム |
US8988443B2 (en) | 2009-09-25 | 2015-03-24 | Arm Limited | Methods of and apparatus for controlling the reading of arrays of data from memory |
US9349156B2 (en) | 2009-09-25 | 2016-05-24 | Arm Limited | Adaptive frame buffer compression |
US9406155B2 (en) | 2009-09-25 | 2016-08-02 | Arm Limited | Graphics processing systems |
US9881401B2 (en) | 2009-09-25 | 2018-01-30 | Arm Limited | Graphics processing system |
JP2011090664A (ja) * | 2009-10-20 | 2011-05-06 | Samsung Electronics Co Ltd | タイルベースのレンダリング装置および方法 |
US9996363B2 (en) | 2011-04-04 | 2018-06-12 | Arm Limited | Methods of and apparatus for displaying windows on a display |
JP2014517385A (ja) * | 2011-05-04 | 2014-07-17 | クゥアルコム・インコーポレイテッド | 低解像度バッファベースのピクセルカリング |
US9195426B2 (en) | 2013-09-20 | 2015-11-24 | Arm Limited | Method and apparatus for generating an output surface from one or more input surfaces in data processing systems |
US9640131B2 (en) | 2014-02-07 | 2017-05-02 | Arm Limited | Method and apparatus for overdriving based on regions of a frame |
US10194156B2 (en) | 2014-07-15 | 2019-01-29 | Arm Limited | Method of and apparatus for generating an output frame |
US10832639B2 (en) | 2015-07-21 | 2020-11-10 | Arm Limited | Method of and apparatus for generating a signature representative of the content of an array of data |
Also Published As
Publication number | Publication date |
---|---|
CA2423497C (en) | 2009-07-28 |
TW591547B (en) | 2004-06-11 |
EP1323131A2 (en) | 2003-07-02 |
CN1251155C (zh) | 2006-04-12 |
HK1054110B (zh) | 2007-08-31 |
KR20030046474A (ko) | 2003-06-12 |
AU2001293158A1 (en) | 2002-04-08 |
WO2002027661A2 (en) | 2002-04-04 |
DE60126967D1 (de) | 2007-04-12 |
HK1054110A1 (en) | 2003-11-14 |
CN1466738A (zh) | 2004-01-07 |
EP1323131B1 (en) | 2007-02-28 |
US6885378B1 (en) | 2005-04-26 |
CA2423497A1 (en) | 2002-04-04 |
DE60126967T2 (de) | 2007-10-31 |
WO2002027661A3 (en) | 2002-06-13 |
KR100547258B1 (ko) | 2006-01-26 |
ATE355569T1 (de) | 2006-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6885378B1 (en) | Method and apparatus for the implementation of full-scene anti-aliasing supersampling | |
US11301956B2 (en) | Varying effective resolution by screen location by altering rasterization parameters | |
US10885607B2 (en) | Storage for foveated rendering | |
JP4234217B2 (ja) | サイズ変更ビットブロック転送処理の一部として透過イネーブルビットの埋込みを行うシステム、装置および方法 | |
EP3559914B1 (en) | Foveated rendering in tiled architectures | |
JPH04222071A (ja) | テキスチュア・マッピング方法及びその装置 | |
US5831637A (en) | Video stream data mixing for 3D graphics systems | |
US5878216A (en) | System and method for controlling a slave processor | |
US5760792A (en) | Fifo logical addresses for control and error recovery | |
US5794037A (en) | Direct access to slave processing by unprotected application using context saving and restoration | |
US7898549B1 (en) | Faster clears for three-dimensional modeling applications | |
US7027047B2 (en) | 3D graphics rendering engine for processing an invisible fragment and a method therefor | |
WO2016022281A1 (en) | High order filtering in a graphics processing unit | |
US7616200B1 (en) | System for reducing aliasing on a display device | |
US5801714A (en) | Vertex list management system | |
EP3178062A1 (en) | High order filtering in a graphics processing unit | |
US6982719B2 (en) | Switching sample buffer context in response to sample requests for real-time sample filtering and video generation | |
US7492373B2 (en) | Reducing memory bandwidth to texture samplers via re-interpolation of texture coordinates | |
US6529196B1 (en) | Efficient stroking of vectors with arbitrary endpoints | |
US20030169271A1 (en) | Magnified texture-mapped pixel performance in a single-pixel pipeline | |
JP2008299852A (ja) | プログラム可能なオフセット位置を用いてテクスチャサンプルを処理するための方法及びシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070622 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070622 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100309 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100817 |