JPH04222070A - コンピュータグラフィックスシステム用演算処理装置 - Google Patents
コンピュータグラフィックスシステム用演算処理装置Info
- Publication number
- JPH04222070A JPH04222070A JP3049833A JP4983391A JPH04222070A JP H04222070 A JPH04222070 A JP H04222070A JP 3049833 A JP3049833 A JP 3049833A JP 4983391 A JP4983391 A JP 4983391A JP H04222070 A JPH04222070 A JP H04222070A
- Authority
- JP
- Japan
- Prior art keywords
- data
- pixel
- cache
- graphics
- frame buffer
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—Three-dimensional [3D] image rendering
- G06T15/50—Lighting effects
- G06T15/80—Shading
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
- Image Processing (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
【産業上の利用分野】本発明はコンピュータグラフィッ
クスシステムにおいて図形プリミティブをフレームバッ
ファに描写する方法と装置に関する。特に本発明はコン
ピュータグラフィックスシステムにおいて算術及び理論
演算を実行する方法と装置に関する。
クスシステムにおいて図形プリミティブをフレームバッ
ファに描写する方法と装置に関する。特に本発明はコン
ピュータグラフィックスシステムにおいて算術及び理論
演算を実行する方法と装置に関する。
【0002】
【従来の技術】コンピュータグラフィックスのワークス
テーションは多様な用途で極めて詳細なグラフィックス
シミュレーションを実行することができる。コンピュー
タ援用設計(CAD)及びコンピュータ援用製造(CA
M)の分野で働く技師及び設計者は一般に、多様な計算
型タスクにグラフィックスシミュレーションを活用する
。従ってコンピュータグラフィックスのワークステーシ
ョン産業は迅速かつ一層細密にグラフィックスシミュレ
ーションを実施できる一層強力なコンピュータグラフィ
ックスのワークステーションを志向してきた。
テーションは多様な用途で極めて詳細なグラフィックス
シミュレーションを実行することができる。コンピュー
タ援用設計(CAD)及びコンピュータ援用製造(CA
M)の分野で働く技師及び設計者は一般に、多様な計算
型タスクにグラフィックスシミュレーションを活用する
。従ってコンピュータグラフィックスのワークステーシ
ョン産業は迅速かつ一層細密にグラフィックスシミュレ
ーションを実施できる一層強力なコンピュータグラフィ
ックスのワークステーションを志向してきた。
【0003】グラフィックス能力を有する新式のワーク
ステーションはグラフィックス処理を組織するため基本
的に「ウィンドウ」システムを利用する。この産業は一
層迅速かつ詳細なグラフィックス能力を得ることを志向
してきているので、コンピュータワークステーションの
技師はグラフィックスワークステーションとユーザとの
高度の対話性を保持する高性能の多重ウィンドウシステ
ムを設計することを試みてきた。
ステーションはグラフィックス処理を組織するため基本
的に「ウィンドウ」システムを利用する。この産業は一
層迅速かつ詳細なグラフィックス能力を得ることを志向
してきているので、コンピュータワークステーションの
技師はグラフィックスワークステーションとユーザとの
高度の対話性を保持する高性能の多重ウィンドウシステ
ムを設計することを試みてきた。
【0004】このようなグラフィックスシステムのウィ
ンドウシステムの主な機能はユーザにワークステーショ
ンでの多重処理への同時的アクセスを付与することであ
る。これらの処理は各々独自の領域を介してワークステ
ーションの表示装置上でユーザへのインタフェースを提
供する。ユーザはワークステーションでの多重処理を表
示する多重ウィンドウを利用して、同時に一つ以上のタ
スクを管理できるので、ユーザにとって全体的に生産性
が高まる。
ンドウシステムの主な機能はユーザにワークステーショ
ンでの多重処理への同時的アクセスを付与することであ
る。これらの処理は各々独自の領域を介してワークステ
ーションの表示装置上でユーザへのインタフェースを提
供する。ユーザはワークステーションでの多重処理を表
示する多重ウィンドウを利用して、同時に一つ以上のタ
スクを管理できるので、ユーザにとって全体的に生産性
が高まる。
【0005】グラフィックスシステムではシステムの画
面に図形プリミティブを「描写(render)」すな
わち作図するため幾つかの体系を実行しなければならな
い。 「図形プリミティブ(graphics primit
ives)」とは多角形ベクトル又はスプラインのよう
な図形画像の基本要素のことである。図形画像は全てこ
れらの図形プリミティブの組合せから形成される。図形
プリミティブの描写を行うため多くの体系を活用するこ
とができる。
面に図形プリミティブを「描写(render)」すな
わち作図するため幾つかの体系を実行しなければならな
い。 「図形プリミティブ(graphics primit
ives)」とは多角形ベクトル又はスプラインのよう
な図形画像の基本要素のことである。図形画像は全てこ
れらの図形プリミティブの組合せから形成される。図形
プリミティブの描写を行うため多くの体系を活用するこ
とができる。
【0006】図形描写手順は一般に「走査変換器」と呼
ばれる図形描写ハードウェアの素子内で実行される。走
査変換器図形プリミティブを処理し、それらを「フレー
ムバッファ」記憶装置に記憶される画素すなわち「画素
」へと変換する。フレームバッファは基本的に画面上に
トレースされる特定の図形プリミティブに対応する、シ
ステムの表示画面での画素の起動に関する情報を記憶す
る複数個のビデオ直接アクセス記憶装置(VRAM)コ
ンピュータチップから成っている。一般にフレームバッ
ファは画素起動データを全て含み、グラフィックスシス
テムがワークステーションの画面にこの情報をトレース
できるようにこの情報を記憶する。フレームバッファは
一般に動的記憶装置であり、周期的に更新される。
ばれる図形描写ハードウェアの素子内で実行される。走
査変換器図形プリミティブを処理し、それらを「フレー
ムバッファ」記憶装置に記憶される画素すなわち「画素
」へと変換する。フレームバッファは基本的に画面上に
トレースされる特定の図形プリミティブに対応する、シ
ステムの表示画面での画素の起動に関する情報を記憶す
る複数個のビデオ直接アクセス記憶装置(VRAM)コ
ンピュータチップから成っている。一般にフレームバッ
ファは画素起動データを全て含み、グラフィックスシス
テムがワークステーションの画面にこの情報をトレース
できるようにこの情報を記憶する。フレームバッファは
一般に動的記憶装置であり、周期的に更新される。
【0007】このように、コンピュータグラフィックス
システムはコンピュータの記憶装置に記憶された画像表
現を人間が理解し易い画像表現に変換する。画像表現は
一般に一連のカラー光線を発するように励振可能である
画素素子のアレイに区分された陰極線管(CRT)素子
上に表示される。画素が発する光線の特定のカラーはそ
の「値」と呼ばれる。CRTのような表示装置は一般に
例えば左から右、及び上から下のような一定の規則的な
順序で順次画素を励振し、毎秒50ないし70回のシー
ケンスを反復して画面の更新を維持する。従って、ディ
スプレイを励振するために画素の値が利用される期間中
、この値を保持するには何らかの機構が必要である。フ
レームバッファはこの「更新」機能を提供するために代
表的に利用される。
システムはコンピュータの記憶装置に記憶された画像表
現を人間が理解し易い画像表現に変換する。画像表現は
一般に一連のカラー光線を発するように励振可能である
画素素子のアレイに区分された陰極線管(CRT)素子
上に表示される。画素が発する光線の特定のカラーはそ
の「値」と呼ばれる。CRTのような表示装置は一般に
例えば左から右、及び上から下のような一定の規則的な
順序で順次画素を励振し、毎秒50ないし70回のシー
ケンスを反復して画面の更新を維持する。従って、ディ
スプレイを励振するために画素の値が利用される期間中
、この値を保持するには何らかの機構が必要である。フ
レームバッファはこの「更新」機能を提供するために代
表的に利用される。
【0008】フレームバッファは通常はVRAMのアレ
イとして実施されるので、これらの表示装置上の画素位
置にフレームバッファのx,y座標が割当てられるよう
に「ビットマップ」される。単一のVRAMが示装置の
画像全体の画素位置に対応するx及びy座標を全て完全
に記憶するのに充分な記憶域を備えていることは稀なの
で、一般には複数のVRAMが使用される。使用される
特定のマッピングアルゴリズムは、どの特定のVRAM
が利用可能であるか、画素をいかに迅速に描写可能であ
るかと同時に、VRAMをいかに迅速にアクセス可能で
あるか、特定のマッピングを支援するためにどの位のハ
ードウェアを要するか、及びその他の要因のような種々
の要因に左右される。
イとして実施されるので、これらの表示装置上の画素位
置にフレームバッファのx,y座標が割当てられるよう
に「ビットマップ」される。単一のVRAMが示装置の
画像全体の画素位置に対応するx及びy座標を全て完全
に記憶するのに充分な記憶域を備えていることは稀なの
で、一般には複数のVRAMが使用される。使用される
特定のマッピングアルゴリズムは、どの特定のVRAM
が利用可能であるか、画素をいかに迅速に描写可能であ
るかと同時に、VRAMをいかに迅速にアクセス可能で
あるか、特定のマッピングを支援するためにどの位のハ
ードウェアを要するか、及びその他の要因のような種々
の要因に左右される。
【0009】高性能のコンピュータワークステーション
システムでは、一般に実際に可能なできるだけ多くの画
素を同時にアクセスすることが望ましい。しかし、出来
るだけ多くの画素を同時にアクセスすることは各VRA
M周期が全てのVRAMをアクセスすることを意味する
。一般に全てのVRAM用に描写された画素データを供
給することが望ましい。更に、高密度VRAMは一般に
画素を描写するハードウェアよりもずっと緩速である。 従ってこの分野では画像を描写するのに必要な程多数の
画素を同時にアクセスでき、それによって画像を完全に
描写するのにフレームバッファに必要なアセクス数を縮
減し、システムの画面に図形プリミティブを最終的に書
き込むのに必要な時間を短縮することとができるコンピ
ュータグラフィックス描写装置とフレームバッファが長
期にわたって待望されてきた。
システムでは、一般に実際に可能なできるだけ多くの画
素を同時にアクセスすることが望ましい。しかし、出来
るだけ多くの画素を同時にアクセスすることは各VRA
M周期が全てのVRAMをアクセスすることを意味する
。一般に全てのVRAM用に描写された画素データを供
給することが望ましい。更に、高密度VRAMは一般に
画素を描写するハードウェアよりもずっと緩速である。 従ってこの分野では画像を描写するのに必要な程多数の
画素を同時にアクセスでき、それによって画像を完全に
描写するのにフレームバッファに必要なアセクス数を縮
減し、システムの画面に図形プリミティブを最終的に書
き込むのに必要な時間を短縮することとができるコンピ
ュータグラフィックス描写装置とフレームバッファが長
期にわたって待望されてきた。
【0010】グラフィックスワークステーションで使用
される代表的なCRT装置は「ラスタ走査」表示装置で
ある。代表的なラスタ走査表示装置は平行線の集合から
成る画素の複数の平行な、非重複帯域である画像を生成
する。このようなシステムの例はロー氏他の米国特許明
細書第4,695,772号に開示されている。ロー氏
他の特許に開示されているラスタ走査装置はタイルのア
レイとして構成されている。ロー氏他の特許明細書の2
段36行を参照されたい。ラスタ走査装置は基本的にC
RTの赤、緑及び青(RGB)チャネル用の複数のビー
ムを利用する。複数のビームは基本的に表示装置のCR
Tの左側から表示装置のCRTの右側へと書き込む。
される代表的なCRT装置は「ラスタ走査」表示装置で
ある。代表的なラスタ走査表示装置は平行線の集合から
成る画素の複数の平行な、非重複帯域である画像を生成
する。このようなシステムの例はロー氏他の米国特許明
細書第4,695,772号に開示されている。ロー氏
他の特許に開示されているラスタ走査装置はタイルのア
レイとして構成されている。ロー氏他の特許明細書の2
段36行を参照されたい。ラスタ走査装置は基本的にC
RTの赤、緑及び青(RGB)チャネル用の複数のビー
ムを利用する。複数のビームは基本的に表示装置のCR
Tの左側から表示装置のCRTの右側へと書き込む。
【0011】一般に、描写アルゴリズムは画素から画素
へとx,yアドレスを僅かに変化させつつ、連続する画
素用の連続する画素値を計算する。このことは画素アド
レスには大幅な「可干渉性(コヒーレンシ)」があるこ
とを意味している。同時的な画素アドレスのためにVR
AMを構成する場合、アクセスされる画素が高度にコヒ
レントであることが望ましい。
へとx,yアドレスを僅かに変化させつつ、連続する画
素用の連続する画素値を計算する。このことは画素アド
レスには大幅な「可干渉性(コヒーレンシ)」があるこ
とを意味している。同時的な画素アドレスのためにVR
AMを構成する場合、アクセスされる画素が高度にコヒ
レントであることが望ましい。
【0012】画素値を生成するための従来の描写体系は
多角形のようなプリミティブを構成する画素の全てを順
次作成する。画像表現を構成する各プリミティブは順次
画素値を生成するために使用される。従って、フレーム
バッファVRAMに記憶される画素値の群が生成される
。どの行及び列アドレスをVRAMに供給すべきかを決
定するため、プリミティブの少なくとも一つの画素のx
,yアドレスが利用される。しかし、群内の全ての画素
を最初のタイルアクセスでアセクス可能ではなく、従っ
てシステムがCRTにプリミティブを書き込むためには
補足のタイルがフレームバッファからアセクスされなけ
ればならない。
多角形のようなプリミティブを構成する画素の全てを順
次作成する。画像表現を構成する各プリミティブは順次
画素値を生成するために使用される。従って、フレーム
バッファVRAMに記憶される画素値の群が生成される
。どの行及び列アドレスをVRAMに供給すべきかを決
定するため、プリミティブの少なくとも一つの画素のx
,yアドレスが利用される。しかし、群内の全ての画素
を最初のタイルアクセスでアセクス可能ではなく、従っ
てシステムがCRTにプリミティブを書き込むためには
補足のタイルがフレームバッファからアセクスされなけ
ればならない。
【0013】ある種の従来のグラフィックスパイプライ
ンシステムはフレームバッファに書き込まれる画素デー
タ用の中間記憶装置として機能する「画素キャッシュ」
を使用することができる。画素キャッシュは一般にフレ
ームバッファをグラフィックスパイプラインシステムの
残りの部分にも接続し、場合によってはデータをフレー
ムバッファに書き込む前にある種の低レベルの描写手順
を提供する。コンピュータグラフィックスシステムにお
ける従来の画素キャッシュは一般に画素データの高レベ
ル処理を行うために利用されず、単にフレームバッファ
VRAMから読み出されるデータ用の一時的記憶装置と
して機能する。画素キャッシュを利用したグラフィック
スシステムの例にはコロラド州フォートコリンズのヒュ
ーレットパッカード社のグラフィックステクノロジー部
門から供給されているTURBO−SRXグラフィック
スシステムがある。
ンシステムはフレームバッファに書き込まれる画素デー
タ用の中間記憶装置として機能する「画素キャッシュ」
を使用することができる。画素キャッシュは一般にフレ
ームバッファをグラフィックスパイプラインシステムの
残りの部分にも接続し、場合によってはデータをフレー
ムバッファに書き込む前にある種の低レベルの描写手順
を提供する。コンピュータグラフィックスシステムにお
ける従来の画素キャッシュは一般に画素データの高レベ
ル処理を行うために利用されず、単にフレームバッファ
VRAMから読み出されるデータ用の一時的記憶装置と
して機能する。画素キャッシュを利用したグラフィック
スシステムの例にはコロラド州フォートコリンズのヒュ
ーレットパッカード社のグラフィックステクノロジー部
門から供給されているTURBO−SRXグラフィック
スシステムがある。
【0014】
【発明が解決しようとする課題】図形プリミティブに対
応する画素値データの高レベル処理を行うことができる
中間画素キャッシュ記憶装置がこの分野では長期にわた
って必要とされてきた。このような画素キャッシュはコ
ンピュータグラフィックスの分野ではこれまで提供され
ていなかった。本明細書で特許請求され、開示これた案
件の発明者はフレームバッファへの図形描写が達成され
る速度を大幅に高め、かつ描写効率を大幅に促進する新
規の画素キャッシュ装置と方法を発明したものである。
応する画素値データの高レベル処理を行うことができる
中間画素キャッシュ記憶装置がこの分野では長期にわた
って必要とされてきた。このような画素キャッシュはコ
ンピュータグラフィックスの分野ではこれまで提供され
ていなかった。本明細書で特許請求され、開示これた案
件の発明者はフレームバッファへの図形描写が達成され
る速度を大幅に高め、かつ描写効率を大幅に促進する新
規の画素キャッシュ装置と方法を発明したものである。
【0015】
【課題を解決するための手段】本発明に基づき提供され
る方法と装置はコンピュータグラフィックスシステムで
描写される図形プリミティブの速度と効率を大幅に促進
する前述の長期にわたる課題を達成するものである。本
発明に従って、ラスタ走査データで算術演算を行うため
の回路は図形プリミティブに対応する画素値データを変
換する算術機能を選択する命令コード装置と、命令コー
ド装置とインタフェースされ、グラフィックス演算子を
グラフィックスデータと乗算して変換された画素値デー
タを得るための乗算器と、乗算器とインタフェースされ
、変換された画素値データを既存の画素値データに加算
する組合せ装置と、組合せ装置とインタフェースされ、
変換された画素値データが組合せ装置からあふれた場合
に組合せからのあふれデータを記憶する処理装置、とか
ら構成されている。
る方法と装置はコンピュータグラフィックスシステムで
描写される図形プリミティブの速度と効率を大幅に促進
する前述の長期にわたる課題を達成するものである。本
発明に従って、ラスタ走査データで算術演算を行うため
の回路は図形プリミティブに対応する画素値データを変
換する算術機能を選択する命令コード装置と、命令コー
ド装置とインタフェースされ、グラフィックス演算子を
グラフィックスデータと乗算して変換された画素値デー
タを得るための乗算器と、乗算器とインタフェースされ
、変換された画素値データを既存の画素値データに加算
する組合せ装置と、組合せ装置とインタフェースされ、
変換された画素値データが組合せ装置からあふれた場合
に組合せからのあふれデータを記憶する処理装置、とか
ら構成されている。
【0016】更に本発明に従って、グラフィックスシス
テムにおいて画素データを処理する方法が提供される。 この方法は画素がキャッシュメモリ内のタイルへと組織
されるキャッシュメモリへと画素データを書き込み、画
素データに一度に1画素つづラスタ算術演算を実行し、
画素データで一度に1タイルつづブール演算を実行し、
画素データを再度キャッシュメモリに書き込み、かつ画
素データをグラフィックスフレームバッファへと描写す
る、各段階から成っている。
テムにおいて画素データを処理する方法が提供される。 この方法は画素がキャッシュメモリ内のタイルへと組織
されるキャッシュメモリへと画素データを書き込み、画
素データに一度に1画素つづラスタ算術演算を実行し、
画素データで一度に1タイルつづブール演算を実行し、
画素データを再度キャッシュメモリに書き込み、かつ画
素データをグラフィックスフレームバッファへと描写す
る、各段階から成っている。
【0017】
【実施例】さて図面を参照すると同一の参照番号は同一
の素子を示しており、図1は10で概略的に示したフレ
ームバッファグラフィックスシステムを示している。ホ
ストプロセッサ20は基本的に高性能CPUと、キャッ
シュメモリとシステムメモリと、母線アダプタとから構
成されている。ホストプロセッサ20は種々の図形ライ
ブラリを用いてグラフィックスシステムの動作システム
を実行する。
の素子を示しており、図1は10で概略的に示したフレ
ームバッファグラフィックスシステムを示している。ホ
ストプロセッサ20は基本的に高性能CPUと、キャッ
シュメモリとシステムメモリと、母線アダプタとから構
成されている。ホストプロセッサ20は種々の図形ライ
ブラリを用いてグラフィックスシステムの動作システム
を実行する。
【0018】ホストプロセッサ20は指令及びテクスチ
ャを含むデータを変形エンジン40、又はフレームバッ
ファ80に直接伝送する。指令がグラフィックスのホス
トプロセッサによって受けられると、これらの指令は変
形エンジン40にディスパッチされ、この変形エンジン
は一般に変換の観察、ライティング計算、クリッピング
、ラジオシティ及びその他のグラフィックス機能の伝統
的なタスクを実行するためにマイクロコード化されてい
る。変形エンジン40には好ましくはカラーテクスチャ
補間器(CTI)50と、ZI60とから成る走査変換
器30がインタフェースされている。CTIは同時に多
くの画素パラメタ、例えば赤、緑及び青(RGB)、反
射及び拡散パラメタ、アルファ(x,y)パラメタ及び
テクスチャパラメタを解読し、一方、ZIはx,y及び
z値を補間するだけである。
ャを含むデータを変形エンジン40、又はフレームバッ
ファ80に直接伝送する。指令がグラフィックスのホス
トプロセッサによって受けられると、これらの指令は変
形エンジン40にディスパッチされ、この変形エンジン
は一般に変換の観察、ライティング計算、クリッピング
、ラジオシティ及びその他のグラフィックス機能の伝統
的なタスクを実行するためにマイクロコード化されてい
る。変形エンジン40には好ましくはカラーテクスチャ
補間器(CTI)50と、ZI60とから成る走査変換
器30がインタフェースされている。CTIは同時に多
くの画素パラメタ、例えば赤、緑及び青(RGB)、反
射及び拡散パラメタ、アルファ(x,y)パラメタ及び
テクスチャパラメタを解読し、一方、ZIはx,y及び
z値を補間するだけである。
【0019】CRT50及びZI60によってラスタ化
が達成された後、本発明に基づく画素キャッシュ/演算
装置(ALU)が例えばガンマ修正、ディザリング、z
比較、ウィンドウクリッピング及び画素カラー値と、フ
レームバッファ80に以前記憶されたデータとの配合、
等の種々のグラフィックス機能を実行する。好ましい実
施例では、フレームバッファ80は基本的にデュアルポ
ートビデオ直接アクセス記憶装置(VRAM)チップか
ら成っている。直列ポート90によりラスタ表示装置1
10の更新が行われ、ランダムポート100により新た
な図形プリミティブデータがフレームバッファ80に供
給される。
が達成された後、本発明に基づく画素キャッシュ/演算
装置(ALU)が例えばガンマ修正、ディザリング、z
比較、ウィンドウクリッピング及び画素カラー値と、フ
レームバッファ80に以前記憶されたデータとの配合、
等の種々のグラフィックス機能を実行する。好ましい実
施例では、フレームバッファ80は基本的にデュアルポ
ートビデオ直接アクセス記憶装置(VRAM)チップか
ら成っている。直列ポート90によりラスタ表示装置1
10の更新が行われ、ランダムポート100により新た
な図形プリミティブデータがフレームバッファ80に供
給される。
【0020】更に他の好ましい実施例では、フレームバ
ッファ80は24面の2048×1024画素から成っ
ている。各々が赤、緑、青の画素の基本的に8つの面が
ある。テクスチャの記憶、字体の記憶、保持されたラス
タの記憶及び図形パイプライン10内のウィンドウで使
用される情報にはオフ画面フレームバッファが使用され
る。更に他の好ましい実施例では、グラフィックスシス
テム10はパイプラインに沿って備えられた種々のハー
ドウェア素子が図形プリミティブの複雑な図形処理を行
うパイプライン形式の体系である。ホストプロセッサ2
0は更に120で概略的に示したパイプラインバイパス
に沿った画素キャッシュ/ALU70とインタフェース
されている。フレームバッファ80内のVRAMアレイ
の出力はカラーマップを励振し、このカラーマップはラ
スタディスプレイ110内のディジタル/アナログ変換
器を励振する。
ッファ80は24面の2048×1024画素から成っ
ている。各々が赤、緑、青の画素の基本的に8つの面が
ある。テクスチャの記憶、字体の記憶、保持されたラス
タの記憶及び図形パイプライン10内のウィンドウで使
用される情報にはオフ画面フレームバッファが使用され
る。更に他の好ましい実施例では、グラフィックスシス
テム10はパイプラインに沿って備えられた種々のハー
ドウェア素子が図形プリミティブの複雑な図形処理を行
うパイプライン形式の体系である。ホストプロセッサ2
0は更に120で概略的に示したパイプラインバイパス
に沿った画素キャッシュ/ALU70とインタフェース
されている。フレームバッファ80内のVRAMアレイ
の出力はカラーマップを励振し、このカラーマップはラ
スタディスプレイ110内のディジタル/アナログ変換
器を励振する。
【0021】更に他の好ましい実施例では、画素キャッ
シュ/ALU70と、フレームバッファ80とアドレス
発生器(図示せず)とがテクスチャマッピングに使用さ
れるフレームバッファサブシステムを形成する。多くの
種類のテクスチャがホストプロセッサ20によって指定
され、記憶されることができる。更に、ホストプロセッ
サ20によってパイプライングラフィックスシステム1
0に沿って他の多数のグラフィックス指令を特定できる
。
シュ/ALU70と、フレームバッファ80とアドレス
発生器(図示せず)とがテクスチャマッピングに使用さ
れるフレームバッファサブシステムを形成する。多くの
種類のテクスチャがホストプロセッサ20によって指定
され、記憶されることができる。更に、ホストプロセッ
サ20によってパイプライングラフィックスシステム1
0に沿って他の多数のグラフィックス指令を特定できる
。
【0022】画素キャッシュ/ALU70はCTI50
によって生成され、ダウンロードされた遠近法修正され
たRGB拡散及びRGB反射データを受ける。他の好ま
しい実施例では、画素キャッシュ/ALU70は光源デ
ータを特定のテクスチャカラーと組合せ、画像画素カラ
ー値を形成し、かつ配合、アンチエイリアズ(別名)ベ
クトルアンチエイリアズ多角形、テクスチャマッピング
、ラジオシティ支援、アルファ透過性、画像構成、Zバ
ッファリング、ウィンドウクリッピング及び拡散RGB
データは反射RGBデータのデュアル補間を行う。算術
演算及びブール演算、すなわち論理演算の双方から成る
これらのグラフィックス演算は前述の変換がフレームバ
ッファ80への最終的な書き込みのために実行された後
、全て画素キャッシュに記憶される。
によって生成され、ダウンロードされた遠近法修正され
たRGB拡散及びRGB反射データを受ける。他の好ま
しい実施例では、画素キャッシュ/ALU70は光源デ
ータを特定のテクスチャカラーと組合せ、画像画素カラ
ー値を形成し、かつ配合、アンチエイリアズ(別名)ベ
クトルアンチエイリアズ多角形、テクスチャマッピング
、ラジオシティ支援、アルファ透過性、画像構成、Zバ
ッファリング、ウィンドウクリッピング及び拡散RGB
データは反射RGBデータのデュアル補間を行う。算術
演算及びブール演算、すなわち論理演算の双方から成る
これらのグラフィックス演算は前述の変換がフレームバ
ッファ80への最終的な書き込みのために実行された後
、全て画素キャッシュに記憶される。
【0023】図2を参照すると、本発明に基づき備えら
れたALUが130で概略的に示されている。好ましい
実施例では、ALU130は他の外部記憶装置から成る
こともできる画素キャッシュの一部である。更に他の好
ましい実施例では、本発明に基づき画素キャッシュ/A
LUを用いるグラフィックスシステムの種類と性質に応
じて、複数個のALU130を一つの画素キャッシュチ
ップに備えてもよい。各々のALU130は、「スライ
ス」と呼ぶことができ、すなわち複数個のスライスを画
素キャッシュ/ALUチップに利用することができる。 各々のスライス130は好ましくはソースキャッシュ1
40、パターンキャッシュ150及び宛先キャッシュ1
60と呼ばれる3つの画素タイルキャッシュから成って
いる。好ましい実施例におけるキャッシュ140,15
0及び160は32画素のデータを記憶するようにされ
た直接アクセス記憶装置から成っている。更に他の好ま
しい実施例では、画素はタイル毎に4つの画素を備えた
8つのタイル内のキャッシュ140,150及び160
に組織されている。
れたALUが130で概略的に示されている。好ましい
実施例では、ALU130は他の外部記憶装置から成る
こともできる画素キャッシュの一部である。更に他の好
ましい実施例では、本発明に基づき画素キャッシュ/A
LUを用いるグラフィックスシステムの種類と性質に応
じて、複数個のALU130を一つの画素キャッシュチ
ップに備えてもよい。各々のALU130は、「スライ
ス」と呼ぶことができ、すなわち複数個のスライスを画
素キャッシュ/ALUチップに利用することができる。 各々のスライス130は好ましくはソースキャッシュ1
40、パターンキャッシュ150及び宛先キャッシュ1
60と呼ばれる3つの画素タイルキャッシュから成って
いる。好ましい実施例におけるキャッシュ140,15
0及び160は32画素のデータを記憶するようにされ
た直接アクセス記憶装置から成っている。更に他の好ま
しい実施例では、画素はタイル毎に4つの画素を備えた
8つのタイル内のキャッシュ140,150及び160
に組織されている。
【0024】ソースキャッシュ140は画素のフレーム
バッファ上にソース領域と対応する画素値データを記憶
する。同様に、宛先キャッシュ160は画素がそこに移
動されるフレームバッファ上のウィンドウ用の宛先デー
タを記憶する。ソース領域と宛先領域は同じウィンドウ
内に配置してもよく、又はソースウィンドウと宛先ウィ
ンドウを実際に分離してもよいことが理解されよう。好
ましい実施例ではパターンキャッシュ150はソース又
は宛先キャッシュ内で画素値データと組み合わされ、最
終的にフレームバッファ又は他の画素データ記憶装置に
記憶される特定のパターンを記憶する。
バッファ上にソース領域と対応する画素値データを記憶
する。同様に、宛先キャッシュ160は画素がそこに移
動されるフレームバッファ上のウィンドウ用の宛先デー
タを記憶する。ソース領域と宛先領域は同じウィンドウ
内に配置してもよく、又はソースウィンドウと宛先ウィ
ンドウを実際に分離してもよいことが理解されよう。好
ましい実施例ではパターンキャッシュ150はソース又
は宛先キャッシュ内で画素値データと組み合わされ、最
終的にフレームバッファ又は他の画素データ記憶装置に
記憶される特定のパターンを記憶する。
【0025】更に好ましい実施例では、ラスタ算術演算
装置(AROP)170がスライス130内でソースパ
ターン及び宛先キャッシュ140,150及び160に
インタフェースされている。AROP170は本発明に
従ってタイルキャッシュ140,150及び160、又
はそれぞれ180及び190で示したデータ及びアルフ
ァ入力ポートを含む多くの動作を実行するようにされて
いる。
装置(AROP)170がスライス130内でソースパ
ターン及び宛先キャッシュ140,150及び160に
インタフェースされている。AROP170は本発明に
従ってタイルキャッシュ140,150及び160、又
はそれぞれ180及び190で示したデータ及びアルフ
ァ入力ポートを含む多くの動作を実行するようにされて
いる。
【0026】データポート180は画素カラーデータを
AROP170に搬送し、一方、好ましい実施例におけ
るアルファポート190は配合に必要な補足データを搬
送する。カラーデータポート180及びアルファポート
190を介して伝送されるデータは、グラフィックス指
令がシステムを介して画素キャッシュ及びスライス13
0で処理されるために出力される例えばホストプロセッ
サのようなソースから到達する。更に好ましい実施例で
は、AROP170は更にタイルキャッシュ140,1
50及び160に記憶された単一の画素で一度に算術演
算だけを実行するようにされている。
AROP170に搬送し、一方、好ましい実施例におけ
るアルファポート190は配合に必要な補足データを搬
送する。カラーデータポート180及びアルファポート
190を介して伝送されるデータは、グラフィックス指
令がシステムを介して画素キャッシュ及びスライス13
0で処理されるために出力される例えばホストプロセッ
サのようなソースから到達する。更に好ましい実施例で
は、AROP170は更にタイルキャッシュ140,1
50及び160に記憶された単一の画素で一度に算術演
算だけを実行するようにされている。
【0027】スライス130内にタイルキャッシュには
更にブールラスタ演算(BROP)装置200がインタ
フェースされている。BROP200は本発明に従って
、タイルキャッシュ140,150及び160内に記憶
されたデータでブール方程式を含む論理演算を行うよう
にされている。更に他の実施例では、BROP200は
1つ又は4つの画素、又は画素値データのタイル全体を
表す4つの画素で動作することができる。
更にブールラスタ演算(BROP)装置200がインタ
フェースされている。BROP200は本発明に従って
、タイルキャッシュ140,150及び160内に記憶
されたデータでブール方程式を含む論理演算を行うよう
にされている。更に他の実施例では、BROP200は
1つ又は4つの画素、又は画素値データのタイル全体を
表す4つの画素で動作することができる。
【0028】BROP200と指定された入力に応じた
取換え規則を提供する。更に他の好ましい実施例では、
BROP200はソースパターン及び宛先キャッシュ1
40,150及び160に対応する3つのオペランド、
すなわちソースパターン及び宛先の8つの可能状態にお
ける機能の出力を記述する取換え規則レジスタである。 本発明に従って、BROP200の基本的機能は次のと
おりである。
取換え規則を提供する。更に他の好ましい実施例では、
BROP200はソースパターン及び宛先キャッシュ1
40,150及び160に対応する3つのオペランド、
すなわちソースパターン及び宛先の8つの可能状態にお
ける機能の出力を記述する取換え規則レジスタである。 本発明に従って、BROP200の基本的機能は次のと
おりである。
【0029】
【表1】
【0030】上記の表でMSBはBROPの取換えレジ
スタの最上位ビットであり、LSBはBROPの取換え
レジスタの最下位ビットである。出力は出力母線210
に沿ってソース、パターン及び宛先キャッシュに伝送可
能である。
スタの最上位ビットであり、LSBはBROPの取換え
レジスタの最下位ビットである。出力は出力母線210
に沿ってソース、パターン及び宛先キャッシュに伝送可
能である。
【0031】AROP170、BROP200及びキャ
ッシュ140,150及び160を相互に接続するため
、スライス130は複数の母線を備えている。ソース母
線220、パターン母線230及び宛先き母線240は
BROP200とAROP170をソース、パターン及
び宛先キャッシュに相互接続する。 比較回路250は比較出力260を供給し、この出力は
画素値の描写中にフレームバッファによってウィンドウ
比較及びz比較を達成するために利用されることができ
る。更に、280でフレームバッファと、又は290で
他のスライスと直接インタフェースされている回転子回
路270はフレームバッファ内に回転される画素値デー
タを供給する。
ッシュ140,150及び160を相互に接続するため
、スライス130は複数の母線を備えている。ソース母
線220、パターン母線230及び宛先き母線240は
BROP200とAROP170をソース、パターン及
び宛先キャッシュに相互接続する。 比較回路250は比較出力260を供給し、この出力は
画素値の描写中にフレームバッファによってウィンドウ
比較及びz比較を達成するために利用されることができ
る。更に、280でフレームバッファと、又は290で
他のスライスと直接インタフェースされている回転子回
路270はフレームバッファ内に回転される画素値デー
タを供給する。
【0032】AROP170及びBROP200からの
結果は3つのタイルキャッシュ140,150及び16
0のいずれかに再度書き込まれることができる。他の実
施例では、書き込まれる特定のキャッシュはフレームバ
ッファ制御装置によって制御される。一般に、画素キャ
ッシュによって実行される動作には3種類ある。すなわ
ち、描写、ブロック移動及び比較である。描写動作中、
タイルはフレームバッファから宛先キャッシュ160へ
と読み込まれ、対応する画素はCTI50及びZI60
から成ることができるグラフィックスシステムの画素プ
ロセッサから受けられる。
結果は3つのタイルキャッシュ140,150及び16
0のいずれかに再度書き込まれることができる。他の実
施例では、書き込まれる特定のキャッシュはフレームバ
ッファ制御装置によって制御される。一般に、画素キャ
ッシュによって実行される動作には3種類ある。すなわ
ち、描写、ブロック移動及び比較である。描写動作中、
タイルはフレームバッファから宛先キャッシュ160へ
と読み込まれ、対応する画素はCTI50及びZI60
から成ることができるグラフィックスシステムの画素プ
ロセッサから受けられる。
【0033】画素は宛先タイル、パターンデータ及び(
又は)アルファデータと組み合わされ、これはパターン
キャッシュ150にロードされ、次にフレームバッファ
に再度書き込まれる宛先キャッシュ160へと再度ロー
ドされる。更に別の実施例では、4つの画素が同時に書
き込み、又は書き込まれ、AROP170は一度に1画
素を処理するだけである。この態様では、宛先キャッシ
ュ160はステージングバッファとして利用される。好
ましい実施例ではz比較及びウィンドウ比較動作で特定
の面を利用できるマスクレジスタがスライスに提供され
る。好ましくは画素と組み合わされるパターンはフレー
ムバッファに記憶されるか、後にパターンキャッシュに
ロードされることができ、又は小さいパターンを画素プ
ロセッサから直接ダウンロードされることができる。
又は)アルファデータと組み合わされ、これはパターン
キャッシュ150にロードされ、次にフレームバッファ
に再度書き込まれる宛先キャッシュ160へと再度ロー
ドされる。更に別の実施例では、4つの画素が同時に書
き込み、又は書き込まれ、AROP170は一度に1画
素を処理するだけである。この態様では、宛先キャッシ
ュ160はステージングバッファとして利用される。好
ましい実施例ではz比較及びウィンドウ比較動作で特定
の面を利用できるマスクレジスタがスライスに提供され
る。好ましくは画素と組み合わされるパターンはフレー
ムバッファに記憶されるか、後にパターンキャッシュに
ロードされることができ、又は小さいパターンを画素プ
ロセッサから直接ダウンロードされることができる。
【0034】ブロック移動動作中、パターンキャッシュ
150には先ずスライス毎に32の画素(タイル毎に8
タイルx4画素)がロードされる。同様に、ソースキャ
ッシュ140及び宛先キャッシュ160がブロック移動
動作で利用される場合はそれらのキャッシュにロードさ
れる。次に処理される各タイルがフレームバッファから
宛先キャッシュ160へと書き込まれる。宛先キャッシ
ュ160にタイルが充填された後、それらのタイルはタ
イルを正しい走査線及びラスタ走査ディスプレイ上に特
定の画素へと位置合わせする回転回路280内の水平及
び垂直位置合わせ回転子を介して再度フレームバッファ
に書き込まれる。基本的にz比較動作は描写中にだけ行
うことができる。古いZ値が宛先キャッシュ160へと
読み込まれ、次に画素ポートが比較に利用されるデータ
をZI60から供給する。次に2つの値が比較器に送ら
れ、その結果、比較されたデータがフレームバッファに
出力される元の値以上、又はこれと等しいかどうかが表
示される。
150には先ずスライス毎に32の画素(タイル毎に8
タイルx4画素)がロードされる。同様に、ソースキャ
ッシュ140及び宛先キャッシュ160がブロック移動
動作で利用される場合はそれらのキャッシュにロードさ
れる。次に処理される各タイルがフレームバッファから
宛先キャッシュ160へと書き込まれる。宛先キャッシ
ュ160にタイルが充填された後、それらのタイルはタ
イルを正しい走査線及びラスタ走査ディスプレイ上に特
定の画素へと位置合わせする回転回路280内の水平及
び垂直位置合わせ回転子を介して再度フレームバッファ
に書き込まれる。基本的にz比較動作は描写中にだけ行
うことができる。古いZ値が宛先キャッシュ160へと
読み込まれ、次に画素ポートが比較に利用されるデータ
をZI60から供給する。次に2つの値が比較器に送ら
れ、その結果、比較されたデータがフレームバッファに
出力される元の値以上、又はこれと等しいかどうかが表
示される。
【0035】スライス130内のウィンドウ動作は描写
中及びブロック移動中の両方で行われることができる。 描写中、書き込まれるウィンドウの識別子が、スライス
130内の別個のレジスタである宛先ウィンドウレジス
タ内に記憶される。次に宛先ウィンドウIDが宛先キャ
ッシュに書き込まれる画素のウィンドウIDと比較され
、その結果がフレームバッファへの線上に出力される。
中及びブロック移動中の両方で行われることができる。 描写中、書き込まれるウィンドウの識別子が、スライス
130内の別個のレジスタである宛先ウィンドウレジス
タ内に記憶される。次に宛先ウィンドウIDが宛先キャ
ッシュに書き込まれる画素のウィンドウIDと比較され
、その結果がフレームバッファへの線上に出力される。
【0036】次にブロック移動中、読み出される画素の
ウィンドウIDはスライス130内の別個のレジスタで
あるソースウィンドウIDレジスタ内の数値と比較する
ことができる。ソースレジスタは好適にソースキャッシ
ュ内のソース画素と比較され、宛先レジスタは好適に宛
先キャッシュ内に宛先画素と比較される。双方が等しい
場合は、等値線、すなわち、「EQ」が「真」にセット
される。更に、どのビットがウィンドウIDの一部であ
るかを特定し、かつソースと宛先の比較の結果が常に等
しいことを確認するためにマスクレジスタを用いること
ができる。
ウィンドウIDはスライス130内の別個のレジスタで
あるソースウィンドウIDレジスタ内の数値と比較する
ことができる。ソースレジスタは好適にソースキャッシ
ュ内のソース画素と比較され、宛先レジスタは好適に宛
先キャッシュ内に宛先画素と比較される。双方が等しい
場合は、等値線、すなわち、「EQ」が「真」にセット
される。更に、どのビットがウィンドウIDの一部であ
るかを特定し、かつソースと宛先の比較の結果が常に等
しいことを確認するためにマスクレジスタを用いること
ができる。
【0037】図3を参照すると、AROP170の構成
図が図示されている。好ましい実施例では、AROP1
70は各々300と310で示された2つの乗算器から
成っている。好ましい実施例における組み合せ回路32
0は10−ビット加算器である。更に、加算によってけ
た上げビットが生じた場合に加算器320の結果をあふ
れ値と取換えるあふれ回路330がデータ選択レジスタ
340とインタフェースされて備えてある。この回路の
出力又はAROP動作の結果は記憶キャッシュの一つに
再度書き込まれる前に更に処理されるため、基本的に3
50で出力される。
図が図示されている。好ましい実施例では、AROP1
70は各々300と310で示された2つの乗算器から
成っている。好ましい実施例における組み合せ回路32
0は10−ビット加算器である。更に、加算によってけ
た上げビットが生じた場合に加算器320の結果をあふ
れ値と取換えるあふれ回路330がデータ選択レジスタ
340とインタフェースされて備えてある。この回路の
出力又はAROP動作の結果は記憶キャッシュの一つに
再度書き込まれる前に更に処理されるため、基本的に3
50で出力される。
【0038】更に他の好ましい実施例では、加算器32
0の各々オペランドは4つの可能な入力の一つから選択
できる。入力として機能する各オペランドはポート36
0(S)で乗算器300へと流れるソースレジスタから
のデータ、又はポート370(D)で乗算器310へと
流れる宛先レジスタからのデータである。S又はD入力
はAレジスタ380内に記憶されたアルファデータ、又
は390での図形プリミティブのテクスチャ配合に対応
する配合レジスタからのデータ、又は画素プロセッサか
らの画素ポートデータと乗算される。このように、第2
の入力は基本的に400で概略的に示される配合入力デ
ータ、又はアルファ又はパターン(A/P)データであ
る。この第2の入力は先ず命令コードレジスタによって
制御されるデータ選択装置410を通過する。加算器へ
の第3の可能な入力は単にゼロであり、第4の入力は一
般にテクスチャ及びラジオシティデータを支援する。
0の各々オペランドは4つの可能な入力の一つから選択
できる。入力として機能する各オペランドはポート36
0(S)で乗算器300へと流れるソースレジスタから
のデータ、又はポート370(D)で乗算器310へと
流れる宛先レジスタからのデータである。S又はD入力
はAレジスタ380内に記憶されたアルファデータ、又
は390での図形プリミティブのテクスチャ配合に対応
する配合レジスタからのデータ、又は画素プロセッサか
らの画素ポートデータと乗算される。このように、第2
の入力は基本的に400で概略的に示される配合入力デ
ータ、又はアルファ又はパターン(A/P)データであ
る。この第2の入力は先ず命令コードレジスタによって
制御されるデータ選択装置410を通過する。加算器へ
の第3の可能な入力は単にゼロであり、第4の入力は一
般にテクスチャ及びラジオシティデータを支援する。
【0039】2つの乗算器300と310はA/Pポー
ト400又は配合レジスタ390及びS又はDポート3
60及び370のいずれかから入力を受ける。乗算器3
00は配合係数1−M機能の近似計算を行うために相補
された配合入力を有している。相補及び1−M関数はそ
れぞれ420,及び430で概略的に示してある。好ま
しい実施例では、M配合係数はホストプロセッサからA
ROP170にダウンロードされ、これは画素キャッシ
ュ内の制御レジスタである命令コード(OPCODE)
レジスタによって制御されて乗算器の間でスワップされ
ることができる。命令コードレジスタ(図3には図示せ
ず)は、AROP170を横切るデータ進行を制御する
。
ト400又は配合レジスタ390及びS又はDポート3
60及び370のいずれかから入力を受ける。乗算器3
00は配合係数1−M機能の近似計算を行うために相補
された配合入力を有している。相補及び1−M関数はそ
れぞれ420,及び430で概略的に示してある。好ま
しい実施例では、M配合係数はホストプロセッサからA
ROP170にダウンロードされ、これは画素キャッシ
ュ内の制御レジスタである命令コード(OPCODE)
レジスタによって制御されて乗算器の間でスワップされ
ることができる。命令コードレジスタ(図3には図示せ
ず)は、AROP170を横切るデータ進行を制御する
。
【0040】画素キャッシュ自体への4つのAROP入
力は16の可能な演算機能の集合を可能にする。本発明
に基づくAROPの更に他の好ましい実施例では、16
の可能な機能が備えられている。これらの16の機能に
よってAROPの単一のパス(機械サイクル)で最も基
本的な配合及び描写動作を実行することが可能である。 状態間でAROP線を切り換えることによって一つ以上
のパスで更に複雑な機能を実行することができる。好ま
しくは、乗算器へのAROP入力がゼロにセットされる
と、命令コードがOPCODEレジスタから取り出され
、それによって任意の可能な機能を実行することができ
る。 更に別の好ましい実施例では、乗算器のバイパスによっ
て、それがない場合は255/256の乗算によって発
生する誤りなしで、フレームバッファの直接的な書き込
みが可能になる。
力は16の可能な演算機能の集合を可能にする。本発明
に基づくAROPの更に他の好ましい実施例では、16
の可能な機能が備えられている。これらの16の機能に
よってAROPの単一のパス(機械サイクル)で最も基
本的な配合及び描写動作を実行することが可能である。 状態間でAROP線を切り換えることによって一つ以上
のパスで更に複雑な機能を実行することができる。好ま
しくは、乗算器へのAROP入力がゼロにセットされる
と、命令コードがOPCODEレジスタから取り出され
、それによって任意の可能な機能を実行することができ
る。 更に別の好ましい実施例では、乗算器のバイパスによっ
て、それがない場合は255/256の乗算によって発
生する誤りなしで、フレームバッファの直接的な書き込
みが可能になる。
【0041】AROP170は本質的に非同期的なデー
タ経路であって、そこでは、OPCODEにより選択さ
れた算術関数の結果が選択された入力から発生されて、
クロック周期の終わりにラッチされる。AROPデータ
経路の制御は、アルファ又はパターン(A/P)バス、
ソースバス(S)及び宛先バス(D)に対してデータを
供給する命令コードレジスタ430を介して提供される
。
タ経路であって、そこでは、OPCODEにより選択さ
れた算術関数の結果が選択された入力から発生されて、
クロック周期の終わりにラッチされる。AROPデータ
経路の制御は、アルファ又はパターン(A/P)バス、
ソースバス(S)及び宛先バス(D)に対してデータを
供給する命令コードレジスタ430を介して提供される
。
【0042】AROP170は多面的で有用な装置であ
り、可能な16の演算機能を簡単に説明することはその
能力を理解する上で有用であろう。これらの16の動作
の第1は命令コードレジスタ及びデータ経路レジスタか
らOPCODE(命令コード)を取り出すことである。 AROPは必ずしも制御装置と配線されていないので、
演算装置に供給される命令コードは命令コードレジスタ
から取り出され、演算装置のS及びA/P母線はデータ
経路レジスタで説明したようにソースからデータを取り
出す。それによってAROP170の迅速な多重経路機
能が可能になる。
り、可能な16の演算機能を簡単に説明することはその
能力を理解する上で有用であろう。これらの16の動作
の第1は命令コードレジスタ及びデータ経路レジスタか
らOPCODE(命令コード)を取り出すことである。 AROPは必ずしも制御装置と配線されていないので、
演算装置に供給される命令コードは命令コードレジスタ
から取り出され、演算装置のS及びA/P母線はデータ
経路レジスタで説明したようにソースからデータを取り
出す。それによってAROP170の迅速な多重経路機
能が可能になる。
【0043】第2の演算機能はソースキャッシュ140
から1バイトのデータを取り出す機能として説明するこ
とができる。このデータは次に修正されずに、ソースパ
ターン又は宛先キャッシュのような異なるキャッシュの
同じバイトのタイル位置へと移動可能である。それによ
って、最初に画素データを配合せずAROP170内に
ガンマ、デガンマ及びダイザーのような修正係数を供給
することができる。この演算機能によって、バイト毎に
並行機能としてウィンドウクリップを実行することがで
きる。
から1バイトのデータを取り出す機能として説明するこ
とができる。このデータは次に修正されずに、ソースパ
ターン又は宛先キャッシュのような異なるキャッシュの
同じバイトのタイル位置へと移動可能である。それによ
って、最初に画素データを配合せずAROP170内に
ガンマ、デガンマ及びダイザーのような修正係数を供給
することができる。この演算機能によって、バイト毎に
並行機能としてウィンドウクリップを実行することがで
きる。
【0044】本発明に基づき得られる第3の演算機能は
宛先キャッシュ160からデータを取り出すことである
。 このデータは次に修正されずに異なるキャッシュの同じ
バイトのタイル位置へと移動可能である。それによって
同様に、最初に画素データを配合せずにAROP170
内にガンマ、デガンマ及びダイザーのような別の修正係
数を供給することができる。
宛先キャッシュ160からデータを取り出すことである
。 このデータは次に修正されずに異なるキャッシュの同じ
バイトのタイル位置へと移動可能である。それによって
同様に、最初に画素データを配合せずにAROP170
内にガンマ、デガンマ及びダイザーのような別の修正係
数を供給することができる。
【0045】AROP170によって行われる第4の算
術演算はキャッシュ線でアドレス指定された特定のキャ
ッシュの同じバイトのタイルアドレスに書き込まれた宛
先画素に基準化なしでソース画素を加算することである
。 このラスタ演算機能は中間結果が作成され、ソース及び
宛先キャッシュに一時的に記憶された任意の多重経路機
能に利用することができる。次に中間結果は互いに加算
されることができる。それによってアンチエイリアーズ
(antialiased)画像用に、より複雑な構成
機能を実行することができる。
術演算はキャッシュ線でアドレス指定された特定のキャ
ッシュの同じバイトのタイルアドレスに書き込まれた宛
先画素に基準化なしでソース画素を加算することである
。 このラスタ演算機能は中間結果が作成され、ソース及び
宛先キャッシュに一時的に記憶された任意の多重経路機
能に利用することができる。次に中間結果は互いに加算
されることができる。それによってアンチエイリアーズ
(antialiased)画像用に、より複雑な構成
機能を実行することができる。
【0046】第5の算術演算は加算器320を8−ビッ
ト加算器に切り換え、けた上げビットをオフチップの他
のスライスにけた上げすることである。けた上げビット
はオフチップから受けられ、それによってユーザは加算
器を互いに連鎖してラジオシティ支援に必要な32−ビ
ット加算器を構成することができる。この特別のモード
から生ずる32−ビット加算器は各多角形利用の様式係
数を合計するために使用される。
ト加算器に切り換え、けた上げビットをオフチップの他
のスライスにけた上げすることである。けた上げビット
はオフチップから受けられ、それによってユーザは加算
器を互いに連鎖してラジオシティ支援に必要な32−ビ
ット加算器を構成することができる。この特別のモード
から生ずる32−ビット加算器は各多角形利用の様式係
数を合計するために使用される。
【0047】スライス170によって利用される第6の
ラスタ演算機能はブロック移動中に画像を配合レジスタ
390から誘導された配合係数と配合することである。 256の画像ソースデータで除算された配合レジスタの
内容は、255マイナス256の画像宛先データで除算
された配合レジスタの内容に加算される。この合成画像
は記憶装置に記憶される。AROP170はこの合成画
像を基本画像配合又は透過性及びアンチエイリアーズ多
角形用に利用する。
ラスタ演算機能はブロック移動中に画像を配合レジスタ
390から誘導された配合係数と配合することである。 256の画像ソースデータで除算された配合レジスタの
内容は、255マイナス256の画像宛先データで除算
された配合レジスタの内容に加算される。この合成画像
は記憶装置に記憶される。AROP170はこの合成画
像を基本画像配合又は透過性及びアンチエイリアーズ多
角形用に利用する。
【0048】AROP170によって利用される第7の
算術演算はデータ経路の単一のパス中の合成モードであ
る。このモード中、新たなアルファデータを用いて新た
な画素データが古い画素データと合成され、アンチエイ
リアーズベクトルが生成される。この算術演算によって
良好なアンチエイリアーズベクトルの性能が得られ、ほ
とんどの条件で良好なアンチエイリアーズベクトルが得
られる。
算術演算はデータ経路の単一のパス中の合成モードであ
る。このモード中、新たなアルファデータを用いて新た
な画素データが古い画素データと合成され、アンチエイ
リアーズベクトルが生成される。この算術演算によって
良好なアンチエイリアーズベクトルの性能が得られ、ほ
とんどの条件で良好なアンチエイリアーズベクトルが得
られる。
【0049】AROP170によって利用される第8の
算術演算は画素プロセッサからの画素カラーデータをア
ドレス指定され、修正されないタイルキャッシュの一つ
へと配分する機能である。BROP200はAROP1
70と直列であるので、ラスタブール演算をデータに適
用することができる。この機能は基本的描写用に利用で
きる。
算術演算は画素プロセッサからの画素カラーデータをア
ドレス指定され、修正されないタイルキャッシュの一つ
へと配分する機能である。BROP200はAROP1
70と直列であるので、ラスタブール演算をデータに適
用することができる。この機能は基本的描写用に利用で
きる。
【0050】第9の算術演算は配合係数がアルファポー
トデータレジスタ380から引き出される配合方程式の
修正である、配合動作である。この算術演算は反射ハイ
ライトを有するテクスチャマップされた画像が古い(宛
先)画像へと配合されなければならないテクスチャマッ
ピングの場合に利用される。テクスチャ画像が以前のサ
イクルで生成され、ソースキャッシュに一時的に記憶さ
れると、この演算機能はAレジスタ380に記憶された
アルファ値を使用して画像を宛先と配合する。この機能
は基本的にテクスチャマップサイクルの第2のパス用に
有用である。
トデータレジスタ380から引き出される配合方程式の
修正である、配合動作である。この算術演算は反射ハイ
ライトを有するテクスチャマップされた画像が古い(宛
先)画像へと配合されなければならないテクスチャマッ
ピングの場合に利用される。テクスチャ画像が以前のサ
イクルで生成され、ソースキャッシュに一時的に記憶さ
れると、この演算機能はAレジスタ380に記憶された
アルファ値を使用して画像を宛先と配合する。この機能
は基本的にテクスチャマップサイクルの第2のパス用に
有用である。
【0051】第10の算術演算は古い宛先画像に加算さ
れる新たな画素カラーデータを画素ポートから取り出す
ことである。この機能は画素ポートからの画素データが
宛先キャッシュ160に記憶された中間結果に加算され
ること以外は前述の第4の演算機能と同一である。好ま
しい実施例では、この機能はテクスチャ画像が宛先画像
と配合された後に反射ハイライトが加算される3−パス
テクスチャマップサイクルの第3のパスに利用される。 次に反射データは宛先キャッシュ160に一時的に記憶
されたテクスチャ画像に加算される。
れる新たな画素カラーデータを画素ポートから取り出す
ことである。この機能は画素ポートからの画素データが
宛先キャッシュ160に記憶された中間結果に加算され
ること以外は前述の第4の演算機能と同一である。好ま
しい実施例では、この機能はテクスチャ画像が宛先画像
と配合された後に反射ハイライトが加算される3−パス
テクスチャマップサイクルの第3のパスに利用される。 次に反射データは宛先キャッシュ160に一時的に記憶
されたテクスチャ画像に加算される。
【0052】第11の算術演算はAROP170が一般
にテクスチャである8−ビットのオペランドをパターン
キャッシュ150から送り、8−ビットオペランドを前
述の第8の算術演算機能で決定された新たな画像データ
へと供給する際に実行される。その結果生じたデータに
は次に図に430で概略的に示したSレジスタの内容が
加算される。Sレジスタ430は画素用の反射データを
含んでいる。第11の演算機能は反射データが配合前に
加算されるテクスチャマップの第1のパスで用いられる
。
にテクスチャである8−ビットのオペランドをパターン
キャッシュ150から送り、8−ビットオペランドを前
述の第8の算術演算機能で決定された新たな画像データ
へと供給する際に実行される。その結果生じたデータに
は次に図に430で概略的に示したSレジスタの内容が
加算される。Sレジスタ430は画素用の反射データを
含んでいる。第11の演算機能は反射データが配合前に
加算されるテクスチャマップの第1のパスで用いられる
。
【0053】AROP170によって実行される第12
の算術演算は単に、使用可能にされない、又は反射デー
タを配合動作の後に加算しようとする反射ハイライト用
の第1パスの場合である。
の算術演算は単に、使用可能にされない、又は反射デー
タを配合動作の後に加算しようとする反射ハイライト用
の第1パスの場合である。
【0054】第13の演算機能は基準化係数として配合
レジスタ390の値を用いてソース画像を基準化された
宛先画像に加算する。この演算機能はフレームバッファ
内の画像が基準化され、新たな画像が基準化された画像
に加算される体積描写用に利用可能である。好ましい実
施例では、この演算機能は更に幾つかの演算パスにおい
て複雑な機能を生成するためにも利用できよう。
レジスタ390の値を用いてソース画像を基準化された
宛先画像に加算する。この演算機能はフレームバッファ
内の画像が基準化され、新たな画像が基準化された画像
に加算される体積描写用に利用可能である。好ましい実
施例では、この演算機能は更に幾つかの演算パスにおい
て複雑な機能を生成するためにも利用できよう。
【0055】AROP170によって利用される第14
の算術演算は、カラー及び基準化係数の双方を備えた新
たなデータがSキャッシュ140及び配合レジスタ39
0の代わりに画素ポートから取り出されること以外は前
述の第13の機能の相補的機能である。ホストプロセッ
サはこの機能を利用してフレームバッファ内のデータを
基準化し、それに新たな値を加算することができる。こ
の機能は体積描写用に利用でき、かつ更に幾つかの演算
パスにおいて複雑な機能を生成するためにも利用できよ
う。
の算術演算は、カラー及び基準化係数の双方を備えた新
たなデータがSキャッシュ140及び配合レジスタ39
0の代わりに画素ポートから取り出されること以外は前
述の第13の機能の相補的機能である。ホストプロセッ
サはこの機能を利用してフレームバッファ内のデータを
基準化し、それに新たな値を加算することができる。こ
の機能は体積描写用に利用でき、かつ更に幾つかの演算
パスにおいて複雑な機能を生成するためにも利用できよ
う。
【0056】第15の演算は暗い背景での光ベクトル用
にアンチエイリアーズを提供し、第16の演算機能は幾
つかのパスにおいて古いアルファデータを利用して様式
を構成するのに利用できる。
にアンチエイリアーズを提供し、第16の演算機能は幾
つかのパスにおいて古いアルファデータを利用して様式
を構成するのに利用できる。
【0057】本発明に基づいて備えられる画素キャッシ
ュALUにおいてAROP170が利用できる他の多く
の種類の演算機能を加えることができることが当業者に
は理解されよう。AROP170は多くの種類の演算機
能を支援するのに有用であり、簡単な修正を加えること
よってより高位のレジスタ及び命令コードを支援できる
ものと考えられる。
ュALUにおいてAROP170が利用できる他の多く
の種類の演算機能を加えることができることが当業者に
は理解されよう。AROP170は多くの種類の演算機
能を支援するのに有用であり、簡単な修正を加えること
よってより高位のレジスタ及び命令コードを支援できる
ものと考えられる。
【0058】AROP装置の結果値を2つの値に限定す
ることによって最終画像を適正なものにするため、AR
OP170にはあふれレジスタ330が備えられている
。加算器は「アンダフロー(下位けたあふれ)」するこ
とがないので、すなわち常に加算するので、下限値はこ
の体系ではゼロの値にセットされる。上限は加算器のけ
た上げビットの組合せ作用によって作成され、あふれ交
換値があふれレジスタ330に書き込まれる。あふれ値
の値は最大値にセットすることが可能であり、それによ
ってAROP170は実世界の構造でみられるような実
際の輝度、すなわち白光プラス白光イコール白光のよう
な輝度を生成しよう。あふれ値は更にユーザが選択でき
る幾つかの独特のカラーにセットすることができ、一定
条件を超えるプログラマーへの「誤り」表示として利用
することができる。
ることによって最終画像を適正なものにするため、AR
OP170にはあふれレジスタ330が備えられている
。加算器は「アンダフロー(下位けたあふれ)」するこ
とがないので、すなわち常に加算するので、下限値はこ
の体系ではゼロの値にセットされる。上限は加算器のけ
た上げビットの組合せ作用によって作成され、あふれ交
換値があふれレジスタ330に書き込まれる。あふれ値
の値は最大値にセットすることが可能であり、それによ
ってAROP170は実世界の構造でみられるような実
際の輝度、すなわち白光プラス白光イコール白光のよう
な輝度を生成しよう。あふれ値は更にユーザが選択でき
る幾つかの独特のカラーにセットすることができ、一定
条件を超えるプログラマーへの「誤り」表示として利用
することができる。
【0059】AROP170は好ましい実施例では追加
の16の演算機能と混合した256までの異なる演算機
能を高性能で利用できるハイブリッドな制御構造を有す
るように設計されている。固定機能は機能性を最大限に
高めるために選択され、一方プログラム可能なAROP
にフレキシビリティを付与することによってユーザの完
全なフレキシビリティが可能になる。AROP170の
4つの入力がゼロにセットされると、画素ポート内の任
意の妥当なサイクルが内部の命令コードレジスタ430
内にプログラムされた演算機能を実行する。4つのポー
トがゼロ以外にセットされた場合、妥当なサイクルは他
の16の機能のいずれかを実行する。好ましい実施例で
は、動作はクロック毎に16の可能な機能の何れかに切
り換えることができる。
の16の演算機能と混合した256までの異なる演算機
能を高性能で利用できるハイブリッドな制御構造を有す
るように設計されている。固定機能は機能性を最大限に
高めるために選択され、一方プログラム可能なAROP
にフレキシビリティを付与することによってユーザの完
全なフレキシビリティが可能になる。AROP170の
4つの入力がゼロにセットされると、画素ポート内の任
意の妥当なサイクルが内部の命令コードレジスタ430
内にプログラムされた演算機能を実行する。4つのポー
トがゼロ以外にセットされた場合、妥当なサイクルは他
の16の機能のいずれかを実行する。好ましい実施例で
は、動作はクロック毎に16の可能な機能の何れかに切
り換えることができる。
【0060】
【発明の効果】以上のように、本発明によれば、図形プ
リミティブに対応する画素値データの高レベル処理を行
うことができる中間画素キャッシュ記憶装置が提供され
る。かくして、本発明によれば、フレームバッファへの
図形描写が達成される速度を大幅に高め、かつ描写効率
を大幅に促進する新規の画素キャッシュ装置が提供され
る。
リミティブに対応する画素値データの高レベル処理を行
うことができる中間画素キャッシュ記憶装置が提供され
る。かくして、本発明によれば、フレームバッファへの
図形描写が達成される速度を大幅に高め、かつ描写効率
を大幅に促進する新規の画素キャッシュ装置が提供され
る。
【0061】本発明に従って実施した演算装置の一定の
好ましい実施例を説明し、開示してきたが、当業者には
本発明の真の精神と範囲内で修正が可能であることが理
解されよう。添付の特許請求の範囲はこのような修正を
全て包括するものである。
好ましい実施例を説明し、開示してきたが、当業者には
本発明の真の精神と範囲内で修正が可能であることが理
解されよう。添付の特許請求の範囲はこのような修正を
全て包括するものである。
【図1】ラスタ型表示装置に図形プリミティブを描写す
るためのパイプライングラフィックスシステムのブロッ
ク図である。
るためのパイプライングラフィックスシステムのブロッ
ク図である。
【図2】画素キャッシュ/ALU内に本発明に基づいて
提供される算術/論理演算ユニットのブロック図である
。
提供される算術/論理演算ユニットのブロック図である
。
【図3】画素値データ上で算術演算を実行するべく、本
発明に基づいて提供される算術ラスタ演算プロセッサの
ブロック図である。
発明に基づいて提供される算術ラスタ演算プロセッサの
ブロック図である。
10…フレームバッファグラフィックスシステム20…
ホストプロセッサ 30…走査変換器 40…変形エンジン 50…CTI 60…ZI 70…画素キャッシュ演算装置 80…フレームバッファ 140…ソースキャッシュ 150…パターンキャッシュ 160…宛先キャッシュ 170…AROP 200…BROP
ホストプロセッサ 30…走査変換器 40…変形エンジン 50…CTI 60…ZI 70…画素キャッシュ演算装置 80…フレームバッファ 140…ソースキャッシュ 150…パターンキャッシュ 160…宛先キャッシュ 170…AROP 200…BROP
Claims (1)
- 【請求項1】ラスタ走査データ上で算術演算を実行する
ための回路であって:図形プリミティブに対応する画素
値データを変形する算術関数を選択するための命令コー
ド手段と;前記命令コード装置とインタフェースされて
、グラフィックス演算子とグラフィックスデータとを乗
算して変換画素値データを得るための乗算器手段と;前
記乗算器手段とインタフェースされて、前記変換画素値
データを既存の画素値データに加算するための組合わせ
手段と;前記組合わせ手段とインタフェースされて、加
算された変換画素値データが前記組合わせ手段からあふ
れた場合に、前記組合わせ手段からのあふれデータを格
納するための処理手段と、から成ることを特徴とする方
法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US07/495,005 US5185856A (en) | 1990-03-16 | 1990-03-16 | Arithmetic and logic processing unit for computer graphics system |
| US495005 | 2000-01-31 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH04222070A true JPH04222070A (ja) | 1992-08-12 |
Family
ID=23966849
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3049833A Pending JPH04222070A (ja) | 1990-03-16 | 1991-03-14 | コンピュータグラフィックスシステム用演算処理装置 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US5185856A (ja) |
| EP (1) | EP0447229A3 (ja) |
| JP (1) | JPH04222070A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2001249843A (ja) * | 1999-12-30 | 2001-09-14 | Stmicroelectronics Inc | 電子装置内でのグラフィックス処理を加速させるメモリシステム |
| CN103020339A (zh) * | 2012-11-29 | 2013-04-03 | 王志欣 | 一种组合式汽车电路图的实现方法 |
Families Citing this family (66)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6336180B1 (en) | 1997-04-30 | 2002-01-01 | Canon Kabushiki Kaisha | Method, apparatus and system for managing virtual memory with virtual-physical mapping |
| US5519823A (en) * | 1991-03-15 | 1996-05-21 | Hewlett-Packard Company | Apparatus for rendering antialiased vectors |
| DE69226839T2 (de) * | 1991-04-15 | 1999-04-22 | Oki Electric Industry Co., Ltd., Tokio/Tokyo | Bildverarbeitungsgerät |
| JP3107452B2 (ja) * | 1992-04-28 | 2000-11-06 | 株式会社日立製作所 | テクスチャマッピング方法およびその装置 |
| GB2267203B (en) * | 1992-05-15 | 1997-03-19 | Fujitsu Ltd | Three-dimensional graphics drawing apparatus, and a memory apparatus to be used in texture mapping |
| US5450562A (en) * | 1992-10-19 | 1995-09-12 | Hewlett-Packard Company | Cache-based data compression/decompression |
| GB2278524B (en) * | 1993-05-28 | 1997-12-10 | Nihon Unisys Ltd | Method and apparatus for rendering visual images employing area calculation and blending of fractional pixel lists for anti-aliasing and transparency |
| EP0661624A1 (en) * | 1994-01-04 | 1995-07-05 | Sun Microsystems, Inc. | Pseudo-superscalar technique for video processing |
| JP3626514B2 (ja) * | 1994-01-21 | 2005-03-09 | 株式会社ルネサステクノロジ | 画像処理回路 |
| US5548709A (en) * | 1994-03-07 | 1996-08-20 | Silicon Graphics, Inc. | Apparatus and method for integrating texture memory and interpolation logic in a computer system |
| EP0681279B1 (en) * | 1994-05-03 | 2001-07-18 | Sun Microsystems, Inc. | Frame buffer random access memory and system |
| US5579473A (en) * | 1994-07-18 | 1996-11-26 | Sun Microsystems, Inc. | Interface controller for frame buffer random access memory devices |
| US5933147A (en) * | 1995-09-21 | 1999-08-03 | Industrial Technology Research Institute | Computer graphics memory architecture which processes a full pixel of 3D color and z value data in a single I/O transaction |
| US5740343A (en) * | 1995-11-03 | 1998-04-14 | 3Dfx Interactive, Incorporated | Texture compositing apparatus and method |
| US5768429A (en) * | 1995-11-27 | 1998-06-16 | Sun Microsystems, Inc. | Apparatus and method for accelerating digital video decompression by performing operations in parallel |
| US5933160A (en) * | 1995-11-27 | 1999-08-03 | Sun Microsystems | High-performance band combine function |
| US5767867A (en) * | 1995-11-27 | 1998-06-16 | Sun Microsystems, Inc. | Method for alpha blending images utilizing a visual instruction set |
| US5754185A (en) * | 1996-02-08 | 1998-05-19 | Industrial Technology Research Institute | Apparatus for blending pixels of a source object and destination plane |
| US5963220A (en) * | 1996-02-08 | 1999-10-05 | Industrial Technology Research Institute | Mip map/rip map texture linear addressing memory organization and address generator |
| US5745739A (en) * | 1996-02-08 | 1998-04-28 | Industrial Technology Research Institute | Virtual coordinate to linear physical memory address converter for computer graphics system |
| US5740344A (en) * | 1996-02-08 | 1998-04-14 | Itri-Industrial Technology Research Institute | Texture filter apparatus for computer graphics system |
| US6023302A (en) * | 1996-03-07 | 2000-02-08 | Powertv, Inc. | Blending of video images in a home communications terminal |
| US5761720A (en) * | 1996-03-15 | 1998-06-02 | Rendition, Inc. | Pixel engine pipeline processor data caching mechanism |
| AUPO648397A0 (en) | 1997-04-30 | 1997-05-22 | Canon Information Systems Research Australia Pty Ltd | Improvements in multiprocessor architecture operation |
| US5835104A (en) * | 1997-04-23 | 1998-11-10 | S3 Incorporated | Variable band size compositing buffer method and apparatus |
| US6414687B1 (en) | 1997-04-30 | 2002-07-02 | Canon Kabushiki Kaisha | Register setting-micro programming system |
| AUPO647997A0 (en) * | 1997-04-30 | 1997-05-22 | Canon Information Systems Research Australia Pty Ltd | Memory controller architecture |
| US6061749A (en) * | 1997-04-30 | 2000-05-09 | Canon Kabushiki Kaisha | Transformation of a first dataword received from a FIFO into an input register and subsequent dataword from the FIFO into a normalized output dataword |
| US6289138B1 (en) | 1997-04-30 | 2001-09-11 | Canon Kabushiki Kaisha | General image processor |
| US6707463B1 (en) | 1997-04-30 | 2004-03-16 | Canon Kabushiki Kaisha | Data normalization technique |
| US6507898B1 (en) | 1997-04-30 | 2003-01-14 | Canon Kabushiki Kaisha | Reconfigurable data cache controller |
| CN1264279A (zh) | 1997-05-23 | 2000-08-23 | 普罗格特-甘布尔公司 | 用作清洁片的结构 |
| US6191793B1 (en) | 1998-04-01 | 2001-02-20 | Real 3D, Inc. | Method and apparatus for texture level of detail dithering |
| US7136068B1 (en) | 1998-04-07 | 2006-11-14 | Nvidia Corporation | Texture cache for a computer graphics accelerator |
| US6259455B1 (en) * | 1998-06-30 | 2001-07-10 | Cirrus Logic, Inc. | Method and apparatus for applying specular highlighting with specular components included with texture maps |
| JP3869947B2 (ja) * | 1998-08-04 | 2007-01-17 | 株式会社日立製作所 | 並列処理プロセッサ、および、並列処理方法 |
| US7050063B1 (en) * | 1999-02-11 | 2006-05-23 | Intel Corporation | 3-D rendering texture caching scheme |
| US6919895B1 (en) | 1999-03-22 | 2005-07-19 | Nvidia Corporation | Texture caching arrangement for a computer graphics accelerator |
| US6181352B1 (en) | 1999-03-22 | 2001-01-30 | Nvidia Corporation | Graphics pipeline selectively providing multiple pixels or multiple textures |
| US6573900B1 (en) * | 1999-12-06 | 2003-06-03 | Nvidia Corporation | Method, apparatus and article of manufacture for a sequencer in a transform/lighting module capable of processing multiple independent execution threads |
| US6801203B1 (en) * | 1999-12-22 | 2004-10-05 | Microsoft Corporation | Efficient graphics pipeline with a pixel cache and data pre-fetching |
| US6919898B2 (en) | 2000-01-21 | 2005-07-19 | Hewlett-Packard Development Company, L.P. | Method and apparatus for ascertaining and selectively requesting displayed data in a computer graphics system |
| US20030171051A1 (en) | 2002-03-08 | 2003-09-11 | 3M Innovative Properties Company | Wipe |
| US8711155B2 (en) * | 2004-05-14 | 2014-04-29 | Nvidia Corporation | Early kill removal graphics processing system and method |
| US7710427B1 (en) * | 2004-05-14 | 2010-05-04 | Nvidia Corporation | Arithmetic logic unit and method for processing data in a graphics pipeline |
| US8743142B1 (en) | 2004-05-14 | 2014-06-03 | Nvidia Corporation | Unified data fetch graphics processing system and method |
| US8687010B1 (en) | 2004-05-14 | 2014-04-01 | Nvidia Corporation | Arbitrary size texture palettes for use in graphics systems |
| US8860722B2 (en) * | 2004-05-14 | 2014-10-14 | Nvidia Corporation | Early Z scoreboard tracking system and method |
| US8736620B2 (en) * | 2004-05-14 | 2014-05-27 | Nvidia Corporation | Kill bit graphics processing system and method |
| US8736628B1 (en) | 2004-05-14 | 2014-05-27 | Nvidia Corporation | Single thread graphics processing system and method |
| US7280112B1 (en) | 2004-05-14 | 2007-10-09 | Nvidia Corporation | Arithmetic logic unit temporary registers |
| US8537168B1 (en) | 2006-11-02 | 2013-09-17 | Nvidia Corporation | Method and system for deferred coverage mask generation in a raster stage |
| US8314803B2 (en) | 2007-08-15 | 2012-11-20 | Nvidia Corporation | Buffering deserialized pixel data in a graphics processor unit pipeline |
| US8521800B1 (en) | 2007-08-15 | 2013-08-27 | Nvidia Corporation | Interconnected arithmetic logic units |
| US9183607B1 (en) | 2007-08-15 | 2015-11-10 | Nvidia Corporation | Scoreboard cache coherence in a graphics pipeline |
| US20090046105A1 (en) * | 2007-08-15 | 2009-02-19 | Bergland Tyson J | Conditional execute bit in a graphics processor unit pipeline |
| US8599208B2 (en) * | 2007-08-15 | 2013-12-03 | Nvidia Corporation | Shared readable and writeable global values in a graphics processor unit pipeline |
| US8736624B1 (en) | 2007-08-15 | 2014-05-27 | Nvidia Corporation | Conditional execution flag in graphics applications |
| US8775777B2 (en) * | 2007-08-15 | 2014-07-08 | Nvidia Corporation | Techniques for sourcing immediate values from a VLIW |
| US9411595B2 (en) | 2012-05-31 | 2016-08-09 | Nvidia Corporation | Multi-threaded transactional memory coherence |
| US9183609B2 (en) | 2012-12-20 | 2015-11-10 | Nvidia Corporation | Programmable blending in multi-threaded processing units |
| US9824009B2 (en) | 2012-12-21 | 2017-11-21 | Nvidia Corporation | Information coherency maintenance systems and methods |
| US10102142B2 (en) | 2012-12-26 | 2018-10-16 | Nvidia Corporation | Virtual address based memory reordering |
| US9317251B2 (en) | 2012-12-31 | 2016-04-19 | Nvidia Corporation | Efficient correction of normalizer shift amount errors in fused multiply add operations |
| US9569385B2 (en) | 2013-09-09 | 2017-02-14 | Nvidia Corporation | Memory transaction ordering |
| US9946331B2 (en) | 2014-06-27 | 2018-04-17 | Samsung Electronics Co., Ltd. | System and method to process signals having a common component |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4488258A (en) * | 1982-09-20 | 1984-12-11 | Allen-Bradley | Programmable controller with control program comments |
| US4727508A (en) * | 1984-12-14 | 1988-02-23 | Motorola, Inc. | Circuit for adding and/or subtracting numbers in logarithmic representation |
| EP0228745A3 (en) * | 1985-12-30 | 1990-03-28 | Koninklijke Philips Electronics N.V. | Raster scan video controller provided with an update cache, update cache for use in such video controller, and crt display station comprising such controller |
| US4958302A (en) * | 1987-08-18 | 1990-09-18 | Hewlett-Packard Company | Graphics frame buffer with pixel serializing group rotator |
| FR2625345A1 (fr) * | 1987-12-24 | 1989-06-30 | Thomson Cgr | Procede de visualisation en trois dimensions d'objets codes numeriquement sous forme arborescente et dispositif de mise en oeuvre |
| US4916531A (en) * | 1988-03-23 | 1990-04-10 | Data Translation, Inc. | Color video processing circuitry |
| US5012163A (en) * | 1990-03-16 | 1991-04-30 | Hewlett-Packard Co. | Method and apparatus for gamma correcting pixel value data in a computer graphics system |
-
1990
- 1990-03-16 US US07/495,005 patent/US5185856A/en not_active Expired - Lifetime
-
1991
- 1991-03-14 EP EP19910302156 patent/EP0447229A3/en not_active Ceased
- 1991-03-14 JP JP3049833A patent/JPH04222070A/ja active Pending
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2001249843A (ja) * | 1999-12-30 | 2001-09-14 | Stmicroelectronics Inc | 電子装置内でのグラフィックス処理を加速させるメモリシステム |
| CN103020339A (zh) * | 2012-11-29 | 2013-04-03 | 王志欣 | 一种组合式汽车电路图的实现方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| US5185856A (en) | 1993-02-09 |
| EP0447229A2 (en) | 1991-09-18 |
| EP0447229A3 (en) | 1993-02-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH04222070A (ja) | コンピュータグラフィックスシステム用演算処理装置 | |
| US5268995A (en) | Method for executing graphics Z-compare and pixel merge instructions in a data processor | |
| US6906720B2 (en) | Multipurpose memory system for use in a graphics system | |
| US5973705A (en) | Geometry pipeline implemented on a SIMD machine | |
| US6816161B2 (en) | Vertex assembly buffer and primitive launch buffer | |
| US6924808B2 (en) | Area pattern processing of pixels | |
| US6795080B2 (en) | Batch processing of primitives for use with a texture accumulation buffer | |
| US6819324B2 (en) | Memory interleaving technique for texture mapping in a graphics system | |
| US6812928B2 (en) | Performance texture mapping by combining requests for image data | |
| US7310103B2 (en) | Pipelined 2D viewport clip circuit | |
| US6859209B2 (en) | Graphics data accumulation for improved multi-layer texture performance | |
| US6784894B2 (en) | Mapping time-sorted to direction-sorted triangle vertices | |
| US6778188B2 (en) | Reconfigurable hardware filter for texture mapping and image processing | |
| US6867778B2 (en) | End point value correction when traversing an edge using a quantized slope value | |
| US6963342B2 (en) | Arbitration scheme for efficient parallel processing | |
| US6943791B2 (en) | Z-slope test to optimize sample throughput | |
| US7145570B2 (en) | Magnified texture-mapped pixel performance in a single-pixel pipeline | |
| US6885375B2 (en) | Stalling pipelines in large designs | |
| US6900803B2 (en) | Method for rasterizing graphics for optimal tiling performance | |
| US6927775B2 (en) | Parallel box filtering through reuse of existing circular filter | |
| US20030164842A1 (en) | Slice blend extension for accumulation buffering | |
| US20030169279A1 (en) | Reconfigurable pixel computation unit | |
| US6847372B2 (en) | Magnified texture-mapped pixel performance in a single-pixel pipeline | |
| US6847368B2 (en) | Graphics system with a buddy / quad mode for faster writes | |
| US6831645B2 (en) | System and method for performing font operations when background color is transparent |