JP2001125771A - 固定小数点グラフィックス装置、方法、及びデータ処理システム - Google Patents

固定小数点グラフィックス装置、方法、及びデータ処理システム

Info

Publication number
JP2001125771A
JP2001125771A JP2000269509A JP2000269509A JP2001125771A JP 2001125771 A JP2001125771 A JP 2001125771A JP 2000269509 A JP2000269509 A JP 2000269509A JP 2000269509 A JP2000269509 A JP 2000269509A JP 2001125771 A JP2001125771 A JP 2001125771A
Authority
JP
Japan
Prior art keywords
fixed
bits
point
value
color
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2000269509A
Other languages
English (en)
Other versions
JP3504599B2 (ja
Inventor
Gordon Clyde Fossum
ゴードン・クライド・フッサム
Thomas Winters Fox
トーマス・ウインタース・フォックス
Bimal I Poddar
バイマル・ポダール・インディア
Jean Smit Harald
ハラルド・ジーン・スミット
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2001125771A publication Critical patent/JP2001125771A/ja
Application granted granted Critical
Publication of JP3504599B2 publication Critical patent/JP3504599B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/14Conversion to or from non-weighted codes
    • H03M7/24Conversion to or from floating-point codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)
  • Image Processing (AREA)

Abstract

(57)【要約】 (修正有) 【課題】精密度の損失なしに、固定小数点演算によるグ
ラフィックスライディングを実行する。 【解決手段】ライティング・パラメータは、ソフトウェ
ア・アプリケーションから浮動小数点数として与えられ
る。浮動小数点数は、予め選択されたビット数を有する
固定小数点表示へ変換される。このビット数は、フレー
ム・バッファによって必要とされる所定のビット数に従
って選択され、各々の値のビット数内で精密度を維持す
るため、固定小数点エンジンの中の表示は、フレーム・
バッファへ送られるカラー値のビット数と比較して追加
のビットを含む。固定小数点演算は、ライティング・モ
デルに従ってライティング信号値を発生し、その中のビ
ット数が、フレーム・バッファによって必要とされる各
々のデータ値のビット数に対応するように縮小され、ラ
イティング・データ値がカラー値としてフレーム・バッ
ファへ送られる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、一般的にはデータ
処理システムに関し、具体的には、固定小数点算術を使
用してグラフィックス・オブジェクトをレンダリングす
ることに関する。
【0002】
【従来の技術】データ処理システム、特にパーソナル・
コンピュータ(PCS)、及びワークステーションで普
通に実現されるグラフィックス・アプリケーション・プ
ログラミング・インタフェース(API)によって、ア
プリケーションはライティング(lighting)パラメータ
を浮動小数点数として定義することができる。その結
果、グラフィックス・ハードウェア、又はエンジンは、
基礎に存在して浮動小数点演算を使用するライティング
・モデルに応答して、ライティング値を発生する。次
に、これらのライティング値がフレーム・バッファへロ
ードされ、フレーム・バッファは、所定数nのビットを
有する固定小数点数としてディスプレイ装置を駆動す
る。例えば、フレーム・バッファ内のデータ値は、25
6のカラー・レベルに対応する8ビット値であってよ
い。
【0003】
【発明が解決しようとする課題】グラフィックス・ハー
ドウェアでは、浮動小数点演算よりも固定小数点演算を
実行する方が、リソースの見地から速度が早く費用がか
からない。従って、浮動小数点計算を使用して実行され
るグラフィックス・ライティングと比較して、精密度の
損失を受けることなく、固定小数点演算を使用してグラ
フィックス・ライティングを実行する装置及び方法に対
する必要性が当技術分野に存在する。
【0004】
【課題を解決するための手段】前記の必要性は、本発明
によって対処されている。従って、第1の形式では、固
定小数点グラフィックス装置が提供される。装置は、第
1のオペランドを、予め選択されたビット数を有する第
1の固定小数点データ値へ変換するように操作可能な第
1のロジックを含む。第1のロジックは、予め選択され
たビット数に応答する第1の所定の基準を使用して、第
1の固定小数点データ値を発生する。更に、装置は、第
2のオペランドを、予め選択されたビット数を有する第
2の固定小数点データ値へ変換するように操作可能な第
2のロジックを含む。第2のロジックは、予め選択され
たビット数及びカラー・データ値のビット数に応答する
第2の所定の基準を使用して、第2の固定小数点データ
値を発生する。第1及び第2の固定小数点データ値は、
予め選択されたライティング・モデルに従ったカラー・
データ値を発生するように操作可能である。
【0005】更に、第2の形式では、固定小数点グラフ
ィックス方法が提供される。方法は、第1のオペランド
を、予め選択されたビット数を有する第1の固定小数点
データ値へ変換することを含む。方法は、予め選択され
たビット数に応答する第1の所定の基準を使用して変換
する。第2のオペランドは、予め選択されたビット数及
びカラー・データ値のビット数に応答する第2の所定の
基準を使用して、予め選択されたビット数を有する第2
の固定小数点データ値へ変換される。第1及び第2の固
定小数点データ値は、予め選択されたライティング・モ
デルに従ったカラー・データ値を発生するように操作可
能である。
【0006】更に、第3の形式では、データ処理システ
ムが提供される。データ処理システムは、メモリ、中央
処理ユニット(CPU)、及び固定小数点グラフィック
ス・ユニットを含む。固定小数点グラフィックス・ユニ
ットは、予め選択されたグラフィックス・アプリケーシ
ョン・プログラミング・インタフェース(API)に対
応するメモリ内に記憶された命令の少なくとも1つに応
答して、1つ又は複数の第1及び第2の浮動小数点オペ
ランドをCPUから受け取るように操作可能である。固
定小数点グラフィックス・ユニットは、第1のオペラン
ドを、予め選択されたビット数を有する対応する固定小
数点データ値へ変換するように操作可能なロジックを含
む。ロジックは、予め選択されたビット数に応答する所
定の基準を使用して、固定小数点データ値を発生する。
更に、固定小数点ユニットは、第2のオペランドを、予
め選択されたビット数を有する対応する第2の固定小数
点データ値へ変換するように操作可能なロジックを含
む。第2の固定小数点データ値は、予め選択されたビッ
ト数及びカラー・データ値のビット数に応答する第2の
所定の基準を使用して、ロジックによって発生する。第
1及び第2の固定小数点データ値は、APIに対応する
予め選択されたライティング・モデルに従ったカラー・
データ値を発生するように操作可能である。
【0007】これまでの説明は、以下に述べる本発明の
詳細な説明を、より良好に理解するため、本発明の特徴
及び技術的利点を、どちらかと言えば広く概説したもの
である。本発明の請求項の主題を形成する追加の特徴及
び利点は、以下に説明される。
【0008】
【発明の実施の形態】ライティング・パラメータは、ア
プリケーション・プログラミング・インタフェース(A
PI)を介して、ソフトウェア・アプリケーションから
浮動小数点数として受け取られる。浮動小数点数は、予
め選択されたビット数を有する固定小数点表示へ変換さ
れる。このビット数は、フレーム・バッファによって必
要とされる所定数のビットに従って選択され、それによ
ってフレーム・バッファは、グラフィックス表示システ
ムによってサポートされるカラー値の数を確立する。フ
レーム・バッファにおける各々の値のビット数内で精密
度を維持するため、固定小数点エンジンの中の表示は、
フレーム・バッファへ送られるカラー値のビット数と比
較して追加のビットを含む。グラフィックスAPIを介
して受け取られた浮動小数点値は、最初に前もって基準
化されることによって、固定小数点表示へ変換される。
固定小数点演算は、ライティング・モデルに従ってライ
ティング信号値を発生し、そのビット数は、フレーム・
バッファによって必要とされる各々のデータ値のビット
数に対応するように縮小され、ライティング・データ値
がカラー値としてフレーム・バッファへ送られる。
【0009】以下の説明では、本発明の完全な理解を提
供するため、ワード又はバイトの特定の長さなど、多く
の具体的詳細が示される。しかし、本発明は、そのよう
な具体的詳細なしに実施されてよいことが当業者に明ら
かであろう。他の例では、不必要なほど詳細に説明して
本発明を不明瞭にすることがないように、周知の回路は
ブロック図で示されている。大体において、タイミング
の考慮事項その他に関する詳細は、本発明の完全な理解
を得るためには必要でなく、当業者のスキルの範囲内に
あるので省略されている。
【0010】ここで図面を参照する。描かれた要素は必
ずしも一定の比率で示されておらず、同様又は類似の要
素は、幾つかの図面を通して同じ参照番号で示されてい
る。
【0011】本発明を実施するための代表的なハードウ
ェア環境は図1に示される。図1は、本発明に従ったデ
ータ処理システム100の典型的なハードウェア構成を
示す。データ処理システム100は、通常のマイクロプ
ロセッサのような中央処理ユニット(CPU)110、
及びシステム・バス112を介して相互接続された多数
の他のユニットを有する。データ処理システム100
は、ランダム・アクセス・メモリ(RAM)114、読
み出し専用メモリ(ROM)116、ディスク・ユニッ
ト120及びテープ・ドライブのような周辺装置をバス
112へ接続する入力/出力(I/O)アダプタ11
8、キーボード124、マウス126及び、又はタッチ
・スクリーン装置(図示されていない)のような他のユ
ーザ・インタフェース装置をバス112へ接続するユー
ザ・インタフェース・アダプタ122、データ処理シス
テム100をデータ処理ネットワークへ接続する通信ア
ダプタ134、及びバス112をディスプレイ装置13
8へ接続するディスプレイ・アダプタ136を含む。デ
ィスプレイ・アダプタ136は、ライティング・モデル
及び対応するアプリケーション・プログラミング・イン
タフェース(API)に従って、ライティング・パラメ
ータをCPU110から受け取る。ライティング・パラ
メータは固定小数点エンジン135へ入力され、エンジ
ン135は表示されるべき各々のピクセルのためにカラ
ー値を発生する。カラー値は、フレーム・バッファ13
7へロードされ、ディスプレイ138を制御する信号を
提供するためにディスプレイ・ドライバ139によって
使用される。ディスプレイ138は応答して、可視出力
を発生する。
【0012】CPU110は、ここに示されない他の回
路を含んでよい。そのような回路は、マイクロプロセッ
サ内で普通に見出される回路、例えば実行ユニット、バ
ス・インタフェース・ユニット、算術論理ユニットなど
を含む。更に、CPU110は、単一の集積回路に存在
してよい。
【0013】図2は、単精度浮動小数点システムで得ら
れる精密度を維持するように、様々なライティング・パ
ラメータに十分なビットを保有する固定小数点ハードウ
ェア・ライティング・エンジンを示す。目標のフレーム
・バッファ、例えば図1のフレーム・バッファ137
は、赤、緑、及び青のカラー・チャネルごとにmビット
を含む。現在のフレーム・バッファの典型的な実施形態
は、カラー・チャネルごとに8ビットを含む。エンジン
135は、ライティング・パラメータを浮動小数点値と
してグラフィックスAPIから受け取る。この値は、例
えばIEEE32ビット浮動小数点数として表されてよ
い。図3に関連して更に説明するように、エンジン13
5は浮動小数点ライティング・パラメータをnビットの
固定小数点値へ変換し、フレーム・バッファから要求さ
れるように、mビット・カラー値をフレーム・バッファ
へ出力する。典型的なライティング・モデルは、ライテ
ィング・パラメータの累乗を必要とする鏡面反射項を含
む。必要な累乗を発生するために、ルックアップ・テー
ブル202が固定小数点エンジン135に含まれる。代
替の実施形態では、力任せの累乗計算を使用することが
できよう。しかし、ルックアップ・テーブル202の使
用は、精度は低くなるが、より少ないリソースで、より
早いパフォーマンスを提供する。nビットを有する所定
の固定小数点表示に関連づけられた誤差は、図3と関連
して以下で詳細に説明されるであろう。
【0014】ライティング方程式の各々の段階で、乗法
及びスペキュラ指数計算のような近似によって、多少の
精度が失われる。カラー・チャネルごとに8ビットを有
する例示の実施形態を使用する誤差分析は、各々のチャ
ネルに対する最終値が9ビット中の1又は1/512よ
りも少ない誤差を有するように、いくつのビットが各々
の属性のために使用される必要があるかを実際に示す。
この誤差を超えない限り、どのような誤差も通常の丸め
誤差から区別できないであろう。
【0015】ここで図3を参照する。図3は、本発明に
従った固定小数点ライティング方法300をフローチャ
ート形式で示す。ステップ302で、浮動小数点ライテ
ィング・パラメータが、OpenGL(商標)及びgr
aPHIGS(商標)APIのようなグラフィックスA
PIから受け取られる。ステップ304で、浮動小数点
値は、固定小数点表示へ変換される。前に説明したよう
に、固定小数点表示におけるビット数nは、フレーム・
バッファによって要求されるカラー値のビット数に従っ
て、前もって決定される。ビット数nは、固定小数点表
示によって導入された量子化誤差が、最終カラー値へ伝
搬しないように決定される。OpenGL(商標)AP
Iについて、例示の解が提供されるであろう。graP
HIGS(商標)APIについても、同様の解が発生し
得ることが当業者に理解されるであろう。
【0016】ライティングに対するOpenGL方程式
の一般的な形は、次のとおりである。
【0017】
【数1】
【0018】ここで、演算子及びオペランドは、次のよ
うに定義される。 ・ ゼロでクランプされる点乗積演算(即ち、結果は決
して負にならない) ecm 素材の放射カラー acm 素材の環境カラー dcm 素材の拡散カラー scm 素材のスペキュラ・カラー acs 環境モデル・カラー又はシーンの環境カラー acli 光源番号iの環境強度 dcli 光源番号iの拡散強度 scli 光源番号iのスペキュラ強度 N 頂点における表面法線ベクトル(正規化された) Li 頂点から光源iを指すベクトル(正規化された) Hi 光源iに対応する半ベクトル(正規化された) ここで、(0,0,∞)における観察者について、非正
規化Hi=Li+(0,0,1) srm 素材のスペキュラ指数 atti 減衰ファクタ。これは、方向性光源につい
て、1.0である。 spoti スポットライト効果。これは、180°の
スポットライト・カットオフ角(スポットライトではな
い光)について、1.0である。 fi = 1.0(N・Li>0のとき)= 0.0
(その他の場合)
【0019】OpenGL(商標)及びgraPHIG
S(商標)は、双方ともにグラフィックス処理技術で既
知のグラフィックスAPIである。graPHIGS
(商標)は、PHIGS APIのIBM社による実現
形式である。
【0020】無限の観察点及び方向性光源について、O
penGLライティング方程式は次のようになる。
【0021】
【数2】
【0022】1つの仮定として、シーン、素材、及び光
源に対する全てのカラー値は、範囲[0.0,1.0]
にあるとする。これはOpenGLからの要件ではない
が、この範囲を使用することが普通であり、カラーは、
もしこの範囲の外にあれば、容易に検出される。
【0023】方程式の項の各々は固定小数点値によって
近似されるので、量子化誤差が導入される。各々の要素
に対して量子化誤差を含むように前記の方程式を書き直
すと、次のようになる。
【0024】
【数3】
【0025】
【数4】
【0026】 N・Liは、次のように展開することが
できる。
【0027】
【数5】
【0028】ベクトル成分の各々の表現における誤差は
同一であると仮定すれば、前記の方程式は次のように変
形される。
【0029】
【数6】
【0030】
【数7】
【0031】ここで、εLiは、ベクトルLiの任意の成
分(x,y,又はz)における誤差である。最大のεN
・Liは、
【数8】 で起こる。
【0032】従って、
【数9】
【0033】スペキュラ項は、2つのベクトルの点乗積
の累乗を含む。この指数は、頂点の大数について通常一
定であり、また本発明の実施形態では、値[0.0,1
28.0]に制限されるから、図2のテーブル202の
ようなルックアップ・テーブルを使用し、テーブル・ル
ックアップ及び補間を実行して指数関数を近似すること
ができる。テーブル・ルックアップは、力任せの累乗法
と比較して、精度が小さくなる犠牲を払って、より少な
いリソースで、より早いパフォーマンスを提供する。し
かし、後に示すように、ルックアップに伴う精度の損失
は、8ビット・カラー・チャネルの最終精度に影響を及
ぼさない。下記の値及び分析は、64の16ビット・エ
ントリーのテーブル・サイズに対応するものである。以
下で説明するように、指定されたテーブルについて、ス
ペキュラ・ルックアップの誤差(εslu)は、最悪の場
合で2-10よりもやや大きいだけである。もし望むなら
ば、この誤差は、更にテーブル・エントリーを追加すれ
ば、縮小することができよう。
【0034】前記の誤差項、仮定、及びmが8に等しい
mビット表現を有するカラー値について最大誤差が2-9
であるとする最初の命題の全てを組み合わせると、次の
方程式が得られる。
【0035】
【数10】
【0036】誤差項を集めて、ε=εecm=εacm=ε
dcm=εscm=εacs=εacli=εdcli=εscli=εLi
εNiと定義すれば(なぜなら、これらのパラメータの各
々は、同じ数のビットを有するから)、次のようにな
る。
【0037】
【数11】
【0038】光の強度acli、dcli、scli、及びシー
ン環境acsは、誤差を最大にするため1.0へ設定され
る。
【0039】
【数12】
【0040】次に、誤差を最大にするため、N・L=N
・H=1.0と設定し、正の誤差項を使用する。
【0041】
【数13】
【0042】
【数14】
【0043】次に、OpenGL(商標)及びgraP
HIGS(商標)API仕様の中で誤差を最大にするた
め、8つの光源を使用する。
【0044】
【数15】
【0045】OpenGL及びgraPHIGS AP
Iの双方は、少なくとも8つの光源がサポートされるこ
とを指定している。より多くの光源が可能性として活動
的にされる場合、固定小数点表示のビット数はそれに従
って増加すること、及び方程式(12)の加法で追加項
を生じるので、方程式(13)の係数は増加すること
が、当業者によって理解されよう。これらの実施形態は
本発明の趣旨及び範囲の中にあることが、当業者によっ
て認識されるであろう。
【0046】次に、素材特性εcm、acm、dcm、s
cmは、最終フレーム・バッファ・カラーが飽和しないよ
うに設定される(ここでは、1/26に設定される)。
【0047】
【数16】
【0048】最終カラーにおけるこの誤差は、2-9より
も小さくなければならない。なぜなら、例示の実施形態
において、フレーム・バッファはカラー・チャネルごと
に8ビットだからである。
【0049】
【数17】
【0050】8ビット・カラーを有するフレーム・バッ
ファについては、
【数18】
【0051】128.0のスペキュラ指数及び2-10
カットオフ値が選ばれると、スペキュラ・ルックアップ
εslu=0.0013502669となる。ベクトルN
及びHは正規化されるから、スカラー積N・Hは、前記
のように1によって境界を定められる。従って、指数ル
ックアップ・テーブルにおける最大誤差は、最大スペキ
ュラ指数se=128で起こることが予想される。なぜ
なら、そのとき関数(N・H)seは最も急激に変化して
いるからである。即ち、関数(N・H)seは、最大値1
28よりも小さな(固定)指数について、その引数の関
数として、より少ない度合いで変化なる。更に、カラー
解像度のnビットについて、選択されたカットオフ値よ
りも小さな全てのN・H値は、(N・H)seに対してゼ
ロ値を発生するように取られてよい。即ち、N・Hのカ
ットオフ値は、それより下の値では(N・H)seがカラ
ー解像度の損失なしにゼロとなるように取られてよい所
定の値である。カットオフの使用によって、ルックアッ
プ・テーブルの粒度をより大きくすることができる。テ
ーブル・エントリーは、N・H値の区間としてカットオ
フ値と1(1.0)との間をスパンする必要があるだけ
である。所定のルックアップ・テーブルについて、ルッ
クアップ・テーブルを使用することによって生じる誤差
は、テーブル・エントリーの間のN・H値に対して、各
々のテーブル・エントリーにおける指数関数値と計算処
理によって計算された指数関数値とを比較することによ
って見出されてよい。スペキュラ指数se=128に対
しては、前記のεslu=0.0013502669の値
が見出される。最大スペキュラ指数又は選択されたカッ
トオフについて異なった値を有する本発明の実施形態
は、誤差εsluとして異なった値を生じること、及び、
そのような実施形態における誤差は、前述した方法と同
じようにして見出されてよいことが、当業者に理解され
るであろう。従って、前記の多項方程式を解くと、ε≦
0.5483×10-4を生じる。
【0052】ここで、ε値2-15=0.0000305
1757は0.00005483483よりも小さい。
従って、浮動小数点システムと同じ精密度を維持するよ
うに各々のパラメータで必要となるビット数は、カラー
・チャネルごとにm=8ビットを有する例示の実施形態
に対しては、14である。他のm値を有する実施形態で
は、同じようにして類似の誤差分析を実行してよく、m
>8のとき、固定小数点表示は14よりも多いビットを
有し、m<8のとき、逆であることが、当業者に理解さ
れるであろう。そのような実施形態は本発明の趣旨及び
範囲の中にあることを、当業者は認識するであろう。
【0053】注意すべきは、代替の実施形態では、もし
幾つかのパラメータ(例えば素材特性)に関連した精密
度の低減が、残りのパラメータ(例えば光源特性)の、
より多くのビットで補償されるならば、前記の幾つかの
パラメータについて、より少ないビットを選択すること
ができる。又は、もし、より多くの光源に対して精密度
が小さくなることを許容する実現形式であれば、他の代
替の実施形態では、ビット数を縮小して、同時に、より
少ない数の光源に対して2-9の精密度を依然として維持
することができよう。そのような代替の実施形態は本発
明の趣旨及び範囲の中にあることを、当業者は理解する
であろう。
【0054】 変換ステップ304は、2つのサブステ
ップ306及び308を含む。ライティング方程式、例
えば、方程式(1)のOpenGL APIにおけるラ
イティング方程式の表示で、オペランドのペアを形成す
るライティング・パラメータは、本発明では、それぞれ
異なるように変換される。このようにして、前述したよ
うに、カラー値の精密度を保存するために必要な量子化
誤差限界によって要求されるビット数を超えて、固定小
数点表示内のビット数を増加する必要なしに、中間の再
基準化演算が避けられる。
【0055】典型的には、浮動小数点数が整数を用いて
表現されるとき、変換は(2n−1)のファクタを使用
する。ここで、nは整数形式に使用されるビット数であ
る。この表現では、nビット空間における2つの数の加
法は、nビット表現を維持する。従って、もし
【数19】An+Bn=Cn であれば、浮動小数点への変換が加法の前になされる
か、後になされるかは問題ではなく、結果は同じにな
る。従って、
【数20】
【0056】数Cnもnビット空間に存在する。乗法に
対しては、この事実が、同じように当てはまるわけでは
ない。次の式を考える。
【0057】
【数21】AnxBn=Cn
【0058】この場合、
【数22】
【0059】Cnを浮動小数点空間へ逆変換するために
は、Cnを(2n−1)2で割ることが必要である。従っ
て、数の整数表現を使用する乗法では、一般的に各々の
段階で結果を再基準化して、nビット空間へ変換する
か、又は数を整数形式で表現するため更に多くのビット
を使用することによって、誤差を補償する必要がある。
【0060】数を表すために、1つの追加ビットを使用
する。即ち、整数表現への変換は、2nのファクタを使
用してなされる。
【0061】
【数23】
【0062】この方法の欠点は、それが2つの追加ビッ
ト、即ち、各々の被乗数について1つの追加ビットを必
要とすることである。
【0063】本発明は、最終カラー値で必要なmビット
よりも大きな中間結果のビット数を利用することによっ
て、被乗数を表すための追加ビットを使用することな
く、方程式(21)を使用する。A及びBの双方が(2
n−1)を使用して表される計画と同じビット数を使用
して、より大きな精密度を得ることができる。
【0064】例えば、最終結果が8ビット空間(0〜2
55)で望まれ、中間値が14ビット空間(0〜163
83)に存在する場合を考える。2つの数を16383
空間で乗じることは、方程式(20)で説明したような
問題を生じる。従って、双方の数を16384空間に保
持する。方程式(21)で言及したように、2つの数の
積の結果は、163842空間に存在する。これは16
384空間と同じである。
【0065】
【数24】(Afx16384)x(Bfx16384)
=(Cfx16384)x16384
【0066】Af及びBfが浮動小数点数であるとき、A
f及びBfの双方を表すためには15ビットを必要とす
る。この方程式は、次のように書き直すことができる。
【0067】
【数25】
【0068】ただ再配列することによって、今やAに必
要なビット数を縮小した。今やAは14ビットを必要と
するが、Bは依然として15ビットを必要とし、整数へ
変換される前に(16384/16383)によって乗
じられる。この場合、Bfの最終変換は、(163842
/16383)のファクタを必要とし、これは依然とし
て[0.0,1.0]内のBfを[0,163842/1
6383]内のBへ変換する。
【0069】ここで、Cは255空間で必要とされるか
ら、前もって(255/256)で乗じる(256は、
まさしく基数点のシフトに対応する)。
【0070】
【数26】
【0071】又は
【数27】(Af×16383)×(Bf×16320.
996)=(Cf×255)+基数点のシフト
【0072】今や、Bfは、16383よりも小さい1
6320.996のファクタを使用して変換される。従
って、1.0の最大Bf値でも、整数として単に163
21へ変換される。これは16383よりも小さく、従
って14ビットを必要とするのみである。
【0073】このようにして、一般的な場合に戻ると、
ステップ306で、最初のオペランドが2n−1によっ
て再基準化される。ステップ308で、2番目のオペラ
ンドが(22n/(2n−1))・((2m−1)/2m
によって再基準化される。前記の方程式(24)におけ
る例示のスケール・ファクタは、m=8及びn=14に
対応する。ステップ310で、ライティング・モデル、
例えばOpenGL(商標)APIの方程式(1)、又
は他のAPI、例えばgraPHIGS(商標)API
の対応するモデルに従って、固定小数点nビット・ライ
ティング値が発生する。mの所与の値に対するnの特定
の値は、使用されるAPIに依存するかも知れないが、
本発明に従った固定小数点ライティング値の発生は、使
用される特定のAPIに依存しないことが、当業者に理
解されるであろう。
【0074】ステップ312で、nビット・ライティン
グ値が、フレーム・バッファによって必要とされるmビ
ット・カラー値へ縮小される。本発明の実施形態では、
縮小ステップは強制された切り捨て丸めであってよい。
そのような実施形態では、最小有意(n−m)ビットが
切り捨てられて丸められ、カラー値を表す結果のmビッ
ト値がフレーム・バッファへ送られる。しかし、丸めは
強制される。即ち、丸められた場合に最上位のmビット
がロール・オーバ(roll over)するような値を有する
nビット・ライティング信号は切り捨てられる。即ち、
上位のmビットが強制される。更に、代替の実施形態で
は、縮小ステップ312は、(n−m)の最小有意ビッ
トを切り捨てることによって実現されてよい。mビット
へ縮小された後に、ステップ314で、結果のカラー値
がフレーム・バッファへ送られる。
【0075】このようにして、固定小数点ライティング
・メカニズムが提供される。メカニズムは、固定小数点
演算を使用してライティングAPIからカラー値信号を
発生し、同時に誤差をフレーム・バッファの粒度内に維
持する。
【0076】本発明及びその利点が詳細に説明された
が、従属項によって限定されるような本発明の趣旨及び
範囲から逸脱することなく、様々な変更、置換、及び改
変が可能であることを理解すべきである。
【0077】まとめとして、本発明の構成に関して以下
の事項を開示する。 (1)第1のオペランドを、予め選択されたビット数を
有する第1の固定小数点データ値へ変換するように操作
可能な第1のロジックであって、前記予め選択されたビ
ット数に応答する第1の所定の基準を使用して、前記第
1の固定小数点データ値を発生する第1のロジックと、
第2のオペランドを、前記予め選択されたビット数を有
する第2の固定小数点データ値へ変換するように操作可
能な第2のロジックであって、前記予め選択されたビッ
ト数及びカラー・データ値のビット数に応答する第2の
所定の基準を使用して、前記第2の固定小数点データ値
を発生する第2のロジックとを含み、前記第1及び第2
の固定小数点データ値は、予め選択されたライティング
・モデルに従ったカラー・データ値を発生するように操
作可能である固定小数点グラフィックス装置。 (2)前記第1及び第2のオペランドが、前記予め選択
されたライティング・モデルに従ったライティング・パ
ラメータに対応する、上記(1)に記載の装置。 (3)更に、1つ又は複数の第1及び第2の固定小数点
データ値に応答して1つ又は複数のカラー・データ値を
発生するように操作可能な固定小数点算術ユニットを含
む、上記(1)に記載の装置。 (4)前記固定小数点算術ユニットが、指数ルックアッ
プ・テーブルを含む、上記(3)に記載の装置。 (5)前記予め選択されたビット数が、前記予め選択さ
れたライティング・モデル及び前記カラー値の前記ビッ
ト数に応答して決定される、上記(1)に記載の装置。 (6)前記予め選択されたビット数に関連づけられた前
記ライティング・モデルの出力における量子化誤差が、
前記カラー値の最小有意ビットによって表される値より
も小さい、上記(5)に記載の装置。 (7)前記固定小数点算術ユニットが、前記第1及び第
2の固定小数点データ値に応答して発生した固定小数点
出力データ値を前記出力カラー・データ値へ縮小するよ
うに操作可能な第3のロジックを含む、上記(3)に記
載の装置。 (8)前記第3のロジックが、前記固定小数点出力デー
タ値を、対応するカラー・データ値へ切り捨てるように
操作可能である、上記(7)に記載の装置。 (9)前記第3のロジック回路が、前記固定小数点出力
データ値を、対応するカラー・データ値へ強制的に丸め
るように操作可能である、上記(7)に記載の装置。 (10)前記第1及び第2のオペランドが、グラフィッ
クス・アプリケーション・プログラミング・インタフェ
ース(API)から受け取られる、上記(1)に記載の
装置。 (11)更に、前記出力カラー・データ値をフレーム・
バッファへ送るように操作可能な第4のロジックを含
む、上記(7)に記載の装置。 (12)前記第1の所定の基準が(2n−1)であり、
前記第2の所定の基準が(22n/(2n−1))・
((2m−1)/2m)であり、前記予め選択されたビッ
ト数がnであり、前記カラー・データ値の前記ビット数
がmである、上記(1)に記載の装置。 (13)予め選択されたビット数に応答する第1の所定
の基準を使用して、第1のオペランドを、前記予め選択
されたビット数を有する第1の固定小数点データ値へ変
換し、前記予め選択されたビット数及びカラー・データ
値のビット数に応答する第2の所定の基準を使用して、
第2のオペランドを、前記予め選択されたビット数を有
する第2の固定小数点データ値へ変換するステップを含
み、前記第1及び第2の固定小数点データ値は、予め選
択されたライティング・モデルに従ったカラー・データ
値を発生するように操作可能である固定小数点グラフィ
ックス方法。 (14)前記第1及び第2のオペランドが、前記予め選
択されたライティング・モデルに従ったライティング・
パラメータに対応する、上記(13)に記載の方法。 (15)更に、1つ又は複数の第1及び第2の固定小数
点データ値に応答して1つ又は複数のカラー・データ値
を発生するステップを含む、上記(13)に記載の方
法。 (16)前記予め選択されたビット数が、前記予め選択
されたライティング・モデル及び前記カラー値の前記ビ
ット数に応答して決定される、上記(13)に記載の方
法。 (17)前記予め選択されたビット数に関連づけられた
前記ライティング・モデルの出力の量子化誤差が、前記
カラー値の最小有意ビットによって表される値よりも小
さい、上記(16)に記載の方法。 (18)更に、前記第1及び第2の固定小数点データ値
に応答して発生した固定小数点出力データ値を、前記出
力カラー・データ値へ縮小するステップを含む、上記
(15)に記載の方法。 (19)縮小する前記ステップが、前記固定小数点出力
データ値を対応するカラー・データ値へ切り捨てるステ
ップを含む、上記(18)に記載の方法。 (20)縮小する前記ステップが、前記固定小数点出力
データ値を対応するカラー・データ値へ強制的に丸める
ステップを含む、上記(18)に記載の方法。 (21)前記第1及び第2のオペランドが、グラフィッ
クス・アプリケーション・プログラミング・インタフェ
ース(API)から受け取られる、上記(13)に記載
の方法。 (22)更に、前記出力カラー・データ値をフレーム・
バッファへ送るステップを含む、上記(18)に記載の
方法。 (23)前記第1の所定の基準が(2n−1)であり、
前記第2の所定の基準が(22n/(2n−1))・
((2m−1)/2m)であり、前記予め選択されたビッ
ト数がnであり、前記カラー・データ値の前記ビット数
がmである、上記(13)に記載の方法。 (24)メモリと、1つ又は複数の命令を前記メモリか
ら受け取るように操作可能な中央処理ユニット(CP
U)と、前記1つ又は複数の命令の少なくとも1つに応
答して、1つ又は複数の第1及び第2の浮動小数点オペ
ランドを前記CPUから受け取るように操作可能な固定
小数点グラフィックス・ユニットとを含み、前記少なく
とも1つの命令は、予め選択されたグラフィックス・ア
プリケーション・プログラミング・インタフェース(A
PI)に対応し、前記固定小数点グラフィックス・ユニ
ットは、前記1つ又は複数の第1のオペランドを、予め
選択されたビット数を有する1つ又は複数の第1の固定
小数点データ値へ変換するように操作可能な第1のロジ
ックであって、前記予め選択されたビット数に応答する
第1の所定の基準を使用して、前記第1の固定小数点デ
ータ値を発生する第1のロジックと、前記1つ又は複数
の第2のオペランドを、前記予め選択されたビット数を
有する1つ又は複数の第2の固定小数点データ値へ変換
するように操作可能な第2のロジックであって、前記予
め選択されたビット数及びカラー・データ値のビット数
に応答する第2の所定の基準を使用して、前記第2の固
定小数点データ値を発生する第2のロジックとを含み、
前記第1及び第2の固定小数点データ値は、前記API
に対応する予め選択されたライティング・モデルに従っ
たカラー・データ値を発生するように操作可能であるデ
ータ処理システム。 (25)前記予め選択されたビット数が、前記予め選択
されたライティング・モデル及び前記カラー値の前記ビ
ット数に応答して決定される、上記(24)に記載のデ
ータ処理システム。 (26)前記予め選択されたビット数に関連づけられた
前記ライティング・モデルの出力における量子化誤差
が、前記カラー値の最小有意ビットによって表される値
よりも小さい、上記(25)に記載のデータ処理システ
ム。 (27)前記固定小数点グラフィックス・ユニットが、
前記1つ又は複数の第1及び第2の固定小数点値に応答
して1つ又は複数のカラー値を発生するように操作可能
な固定小数点算術ユニットを含む、上記(24)に記載
のデータ処理システム。 (28)前記固定小数点算術ユニットが、前記第1及び
第2の固定小数点データ値に応答して発生する固定小数
点出力データ値を前記出力カラー・データ値へ縮小する
ように操作可能な第3のロジックを含む、上記(27)
に記載のデータ処理システム。 (29)前記第3のロジックが、前記固定小数点出力デ
ータ値を、対応するカラー・データ値へ切り捨てるよう
に操作可能である、上記(28)に記載のデータ処理シ
ステム。 (30)前記第3のロジックが、前記固定小数点出力デ
ータ値を、対応するカラー・データ値へ強制的に丸める
ように操作可能である、上記(28)に記載のデータ処
理システム。 (31)前記第1の所定の基準が(2n−1)であり、
前記第2の所定の基準が(22n/(2n−1))・
((2m−1)/2m)であり、前記予め選択されたビッ
ト数がnであり、前記カラー・データ値の前記ビット数
がmである、上記(24)に記載のデータ処理システ
ム。
【図面の簡単な説明】
【図1】本発明に従ったデータ処理システムのブロック
図である。
【図2】本発明の実施形態と結合した固定小数点グラフ
ィックス・エンジンのブロック図である。
【図3】本発明の実施形態に従った固定小数点グラフィ
ックス・レンダリング方法のフローチャートである。
【符号の説明】
100 データ処理システム 110 中央処理ユニット(CPU) 112 システム・バス 114 ランダム・アクセス・メモリ(RAM) 116 読み出し専用メモリ(ROM) 118 入力/出力(I/O)アダプタ 120 ディスク・ユニット 122 ユーザ・インタフェース・アダプタ 124 キーボード 126 マウス 134 通信アダプタ 135 固定小数点エンジン 136 ディスプレイ・アダプタ 137 フレーム・バッファ 138 ディスプレイ装置 139 ディスプレイ・ドライバ 202 ルックアップ・テーブル 300 固定小数点ライティング方法
フロントページの続き (72)発明者 ゴードン・クライド・フッサム アメリカ合衆国78758−2725 テキサス州、 オースティン、 ウィロウ・ワイルド・ ドライブ 12315 #ビー (72)発明者 トーマス・ウインタース・フォックス アメリカ合衆国78626 テキサス州、 ジ ョージタウン、 サウス・キャリッジ・ヒ ルス・ドライブ 109 (72)発明者 バイマル・ポダール・インディア アメリカ合衆国95762 カリフォルニア州、 エル・ドラド・ヒルス、 フレノ・ウェ イ 4710 (72)発明者 ハラルド・ジーン・スミット アメリカ合衆国78730 テキサス州、 オ ースティン、 インショア・ドライブ 10116

Claims (31)

    【特許請求の範囲】
  1. 【請求項1】第1のオペランドを、予め選択されたビッ
    ト数を有する第1の固定小数点データ値へ変換するよう
    に操作可能な第1のロジックであって、前記予め選択さ
    れたビット数に応答する第1の所定の基準を使用して、
    前記第1の固定小数点データ値を発生する第1のロジッ
    クと、 第2のオペランドを、前記予め選択されたビット数を有
    する第2の固定小数点データ値へ変換するように操作可
    能な第2のロジックであって、前記予め選択されたビッ
    ト数及びカラー・データ値のビット数に応答する第2の
    所定の基準を使用して、前記第2の固定小数点データ値
    を発生する第2のロジックとを含み、 前記第1及び第2の固定小数点データ値は、予め選択さ
    れたライティング・モデルに従ったカラー・データ値を
    発生するように操作可能である固定小数点グラフィック
    ス装置。
  2. 【請求項2】前記第1及び第2のオペランドが、前記予
    め選択されたライティング・モデルに従ったライティン
    グ・パラメータに対応する、請求項1に記載の装置。
  3. 【請求項3】更に、1つ又は複数の第1及び第2の固定
    小数点データ値に応答して1つ又は複数のカラー・デー
    タ値を発生するように操作可能な固定小数点算術ユニッ
    トを含む、請求項1に記載の装置。
  4. 【請求項4】前記固定小数点算術ユニットが、指数ルッ
    クアップ・テーブルを含む、請求項3に記載の装置。
  5. 【請求項5】前記予め選択されたビット数が、前記予め
    選択されたライティング・モデル及び前記カラー値の前
    記ビット数に応答して決定される、請求項1に記載の装
    置。
  6. 【請求項6】前記予め選択されたビット数に関連づけら
    れた前記ライティング・モデルの出力における量子化誤
    差が、前記カラー値の最小有意ビットによって表される
    値よりも小さい、請求項5に記載の装置。
  7. 【請求項7】前記固定小数点算術ユニットが、前記第1
    及び第2の固定小数点データ値に応答して発生した固定
    小数点出力データ値を前記出力カラー・データ値へ縮小
    するように操作可能な第3のロジックを含む、請求項3
    に記載の装置。
  8. 【請求項8】前記第3のロジックが、前記固定小数点出
    力データ値を、対応するカラー・データ値へ切り捨てる
    ように操作可能である、請求項7に記載の装置。
  9. 【請求項9】前記第3のロジック回路が、前記固定小数
    点出力データ値を、対応するカラー・データ値へ強制的
    に丸めるように操作可能である、請求項7に記載の装
    置。
  10. 【請求項10】前記第1及び第2のオペランドが、グラ
    フィックス・アプリケーション・プログラミング・イン
    タフェース(API)から受け取られる、請求項1に記
    載の装置。
  11. 【請求項11】更に、前記出力カラー・データ値をフレ
    ーム・バッファへ送るように操作可能な第4のロジック
    を含む、請求項7に記載の装置。
  12. 【請求項12】前記第1の所定の基準が(2n−1)で
    あり、前記第2の所定の基準が(22n/(2n−1))
    ・((2m−1)/2m)であり、前記予め選択されたビ
    ット数がnであり、前記カラー・データ値の前記ビット
    数がmである、請求項1に記載の装置。
  13. 【請求項13】予め選択されたビット数に応答する第1
    の所定の基準を使用して、第1のオペランドを、前記予
    め選択されたビット数を有する第1の固定小数点データ
    値へ変換し、 前記予め選択されたビット数及びカラー・データ値のビ
    ット数に応答する第2の所定の基準を使用して、第2の
    オペランドを、前記予め選択されたビット数を有する第
    2の固定小数点データ値へ変換するステップを含み、 前記第1及び第2の固定小数点データ値は、予め選択さ
    れたライティング・モデルに従ったカラー・データ値を
    発生するように操作可能である固定小数点グラフィック
    ス方法。
  14. 【請求項14】前記第1及び第2のオペランドが、前記
    予め選択されたライティング・モデルに従ったライティ
    ング・パラメータに対応する、請求項13に記載の方
    法。
  15. 【請求項15】更に、1つ又は複数の第1及び第2の固
    定小数点データ値に応答して1つ又は複数のカラー・デ
    ータ値を発生するステップを含む、請求項13に記載の
    方法。
  16. 【請求項16】前記予め選択されたビット数が、前記予
    め選択されたライティング・モデル及び前記カラー値の
    前記ビット数に応答して決定される、請求項13に記載
    の方法。
  17. 【請求項17】前記予め選択されたビット数に関連づけ
    られた前記ライティング・モデルの出力の量子化誤差
    が、前記カラー値の最小有意ビットによって表される値
    よりも小さい、請求項16に記載の方法。
  18. 【請求項18】更に、前記第1及び第2の固定小数点デ
    ータ値に応答して発生した固定小数点出力データ値を、
    前記出力カラー・データ値へ縮小するステップを含む、
    請求項15に記載の方法。
  19. 【請求項19】縮小する前記ステップが、前記固定小数
    点出力データ値を対応するカラー・データ値へ切り捨て
    るステップを含む、請求項18に記載の方法。
  20. 【請求項20】縮小する前記ステップが、前記固定小数
    点出力データ値を対応するカラー・データ値へ強制的に
    丸めるステップを含む、請求項18に記載の方法。
  21. 【請求項21】前記第1及び第2のオペランドが、グラ
    フィックス・アプリケーション・プログラミング・イン
    タフェース(API)から受け取られる、請求項13に
    記載の方法。
  22. 【請求項22】更に、前記出力カラー・データ値をフレ
    ーム・バッファへ送るステップを含む、請求項18に記
    載の方法。
  23. 【請求項23】前記第1の所定の基準が(2n−1)で
    あり、前記第2の所定の基準が(22n/(2n−1))
    ・((2m−1)/2m)であり、前記予め選択されたビ
    ット数がnであり、前記カラー・データ値の前記ビット
    数がmである、請求項13に記載の方法。
  24. 【請求項24】メモリと、 1つ又は複数の命令を前記メモリから受け取るように操
    作可能な中央処理ユニット(CPU)と、 前記1つ又は複数の命令の少なくとも1つに応答して、
    1つ又は複数の第1及び第2の浮動小数点オペランドを
    前記CPUから受け取るように操作可能な固定小数点グ
    ラフィックス・ユニットとを含み、 前記少なくとも1つの命令は、予め選択されたグラフィ
    ックス・アプリケーション・プログラミング・インタフ
    ェース(API)に対応し、前記固定小数点グラフィッ
    クス・ユニットは、 前記1つ又は複数の第1のオペランドを、予め選択され
    たビット数を有する1つ又は複数の第1の固定小数点デ
    ータ値へ変換するように操作可能な第1のロジックであ
    って、前記予め選択されたビット数に応答する第1の所
    定の基準を使用して、前記第1の固定小数点データ値を
    発生する第1のロジックと、 前記1つ又は複数の第2のオペランドを、前記予め選択
    されたビット数を有する1つ又は複数の第2の固定小数
    点データ値へ変換するように操作可能な第2のロジック
    であって、前記予め選択されたビット数及びカラー・デ
    ータ値のビット数に応答する第2の所定の基準を使用し
    て、前記第2の固定小数点データ値を発生する第2のロ
    ジックとを含み、 前記第1及び第2の固定小数点データ値は、前記API
    に対応する予め選択されたライティング・モデルに従っ
    たカラー・データ値を発生するように操作可能であるデ
    ータ処理システム。
  25. 【請求項25】前記予め選択されたビット数が、前記予
    め選択されたライティング・モデル及び前記カラー値の
    前記ビット数に応答して決定される、請求項24に記載
    のデータ処理システム。
  26. 【請求項26】前記予め選択されたビット数に関連づけ
    られた前記ライティング・モデルの出力における量子化
    誤差が、前記カラー値の最小有意ビットによって表され
    る値よりも小さい、請求項25に記載のデータ処理シス
    テム。
  27. 【請求項27】前記固定小数点グラフィックス・ユニッ
    トが、前記1つ又は複数の第1及び第2の固定小数点値
    に応答して1つ又は複数のカラー値を発生するように操
    作可能な固定小数点算術ユニットを含む、請求項24に
    記載のデータ処理システム。
  28. 【請求項28】前記固定小数点算術ユニットが、前記第
    1及び第2の固定小数点データ値に応答して発生する固
    定小数点出力データ値を前記出力カラー・データ値へ縮
    小するように操作可能な第3のロジックを含む、請求項
    27に記載のデータ処理システム。
  29. 【請求項29】前記第3のロジックが、前記固定小数点
    出力データ値を、対応するカラー・データ値へ切り捨て
    るように操作可能である、請求項28に記載のデータ処
    理システム。
  30. 【請求項30】前記第3のロジックが、前記固定小数点
    出力データ値を、対応するカラー・データ値へ強制的に
    丸めるように操作可能である、請求項28に記載のデー
    タ処理システム。
  31. 【請求項31】前記第1の所定の基準が(2n−1)で
    あり、前記第2の所定の基準が(22n/(2n−1))
    ・((2m−1)/2m)であり、前記予め選択されたビ
    ット数がnであり、前記カラー・データ値の前記ビット
    数がmである、請求項24に記載のデータ処理システ
    ム。
JP2000269509A 1999-09-09 2000-09-06 固定小数点グラフィックス装置、方法、及びデータ処理システム Expired - Fee Related JP3504599B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/392835 1999-09-09
US09/392,835 US6559856B1 (en) 1999-09-09 1999-09-09 Apparatus for fixed-point graphics and method therefor

Publications (2)

Publication Number Publication Date
JP2001125771A true JP2001125771A (ja) 2001-05-11
JP3504599B2 JP3504599B2 (ja) 2004-03-08

Family

ID=23552188

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000269509A Expired - Fee Related JP3504599B2 (ja) 1999-09-09 2000-09-06 固定小数点グラフィックス装置、方法、及びデータ処理システム

Country Status (3)

Country Link
US (1) US6559856B1 (ja)
JP (1) JP3504599B2 (ja)
DE (1) DE10038500B4 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021144879A1 (ja) * 2020-01-15 2021-07-22 富士通株式会社 演算処理装置、演算処理プログラム及び演算処理方法

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6898615B2 (en) * 2000-07-24 2005-05-24 Matsushita Electric Industrial Co., Ltd. Signal processing unit and signal processing method including using an exponent part and a mantissa part for power generation
DE10056047C1 (de) * 2000-11-11 2002-04-18 Bosch Gmbh Robert Verfahren und Rechenvorrichtung zur automatischen Wandlung eines arithmetischen Ausdrucks von Gleitkomma-Arithmetik in Festkomma-Arithmetik
US6847378B2 (en) * 2002-03-07 2005-01-25 Sun Microsystems, Inc. System and method for performing scale and bias operations by preclamping input image data
US7928997B2 (en) * 2003-02-06 2011-04-19 Nvidia Corporation Digital image compositing using a programmable graphics processor
US7139005B2 (en) * 2003-09-13 2006-11-21 Microsoft Corporation Optimized fixed-point mathematical library and graphics functions for a software-implemented graphics rendering system and method using a normalized homogenous coordinate system
US7593010B2 (en) * 2003-09-18 2009-09-22 Microsoft Corporation Software-implemented transform and lighting module and pipeline for graphics rendering on embedded platforms using a fixed-point normalized homogenous coordinate system
US9304739B1 (en) * 2006-12-11 2016-04-05 Nvidia Corporation Optimized 3D lighting computations using a logarithmic number system
US10283032B2 (en) * 2015-10-07 2019-05-07 Samsung Display Co., Ltd. Integrated circuit for nonlinear data encoding

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5561615A (en) * 1994-12-02 1996-10-01 Hewlett-Packard Company Method and apparatus for floating point to fixed point conversion with compensation for lost precision
US5936629A (en) * 1996-11-20 1999-08-10 International Business Machines Corporation Accelerated single source 3D lighting mechanism
CA2227531C (en) * 1997-01-20 2003-03-18 Hitachi, Ltd. Graphics processing unit and graphics processing system
US5905663A (en) * 1997-06-02 1999-05-18 Hewlett-Packard Company Minimal circuit for detecting loss of precision in floating point numbers
US6014144A (en) * 1998-02-03 2000-01-11 Sun Microsystems, Inc. Rapid computation of local eye vectors in a fixed point lighting unit

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021144879A1 (ja) * 2020-01-15 2021-07-22 富士通株式会社 演算処理装置、演算処理プログラム及び演算処理方法

Also Published As

Publication number Publication date
DE10038500A1 (de) 2001-03-22
US6559856B1 (en) 2003-05-06
JP3504599B2 (ja) 2004-03-08
DE10038500B4 (de) 2005-11-10

Similar Documents

Publication Publication Date Title
JP2610095B2 (ja) イメージ表示装置及び方法
US9519460B1 (en) Universal single instruction multiple data multiplier and wide accumulator unit
US7330864B2 (en) System and method for using native floating point microprocessor instructions to manipulate 16-bit floating point data representations
US6369725B1 (en) Method for binary to decimal conversion
JP2000506646A (ja) ブレンド論理を使用して色空間変換を行う方法および装置
US7405736B2 (en) Efficient perceptual/physical color space conversion
JP2010517435A (ja) 対数ルックアップテーブルを用いた任意の冪乗関数
US7991811B2 (en) Method and system for optimizing floating point conversion between different bases
JP3504599B2 (ja) 固定小数点グラフィックス装置、方法、及びデータ処理システム
GB2376310A (en) Floating point arithmetic and dot product pipeline operations
US5542068A (en) Method and system for storing floating point numbers to reduce storage space
TW202319909A (zh) 用於將輸入集相乘之硬體電路及方法,以及非暫時性機器可讀儲存裝置
JP3146308B2 (ja) マトリツクス演算回路
TWI774093B (zh) 用於轉換資料類型的轉換器、晶片、電子設備及其方法
JP3556950B2 (ja) 高速算術演算装置のけた上げ先見加算器段の数を減少させる構造及び方法
US6499046B1 (en) Saturation detection apparatus and method therefor
US20240176585A1 (en) Data processing method, computer device and storage medium
KR102559930B1 (ko) 수학적 함수들을 연산하기 위한 시스템 및 방법들
JPH09288722A (ja) 高性能バンド結合機能
US5473558A (en) Method for generating hardware description of multiplier and/or multiplier-adder
US5815164A (en) Image rescaling in a parallel processor
CN115718586B (zh) 像素颜色混合操作方法、图形绘制方法、装置和设备
US7075539B1 (en) Apparatus and method for processing dual format floating-point data in a graphics processing system
KR100505134B1 (ko) 3차원 컴퓨터 그래픽 시스템의 제산유니트
US9304739B1 (en) Optimized 3D lighting computations using a logarithmic number system

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20031203

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20031210

LAPS Cancellation because of no payment of annual fees