JPH03244023A - 上位桁あふれ及び下位桁あふれを訂正する方法及び装置 - Google Patents

上位桁あふれ及び下位桁あふれを訂正する方法及び装置

Info

Publication number
JPH03244023A
JPH03244023A JP2311219A JP31121990A JPH03244023A JP H03244023 A JPH03244023 A JP H03244023A JP 2311219 A JP2311219 A JP 2311219A JP 31121990 A JP31121990 A JP 31121990A JP H03244023 A JPH03244023 A JP H03244023A
Authority
JP
Japan
Prior art keywords
overflow
depth
pixel
range
bit
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
Application number
JP2311219A
Other languages
English (en)
Inventor
Brian M Kelleher
ブライアン マイケル ケラハー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Digital Equipment Corp
Original Assignee
Digital Equipment 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 Digital Equipment Corp filed Critical Digital Equipment Corp
Publication of JPH03244023A publication Critical patent/JPH03244023A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49905Exception handling
    • G06F7/4991Overflow or underflow
    • G06F7/49921Saturation, i.e. clipping the result to a minimum or maximum value

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Processing (AREA)
  • Image Generation (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、固定少数点データ表示を用いる実数の計算に
関し、特に、斯かる計算で伝播する誤りの訂正に関する
(従来技術とその問題点) コンピューターシステムでは、整数精度が不十分である
と共に、不動小数点数のダイナミックレンジが不要であ
るか又は不動小数点演算の計算オーハーヘソドが望まし
くないので、固定小数点データ表示で実数を模するのが
好都合であることがしばしばある。残念ながら、固定小
数点データ表示には精度が木来欠けている。即ち、有理
数から固定小数点数への1対1写像は無いので、この表
示は不正確である。更に、固定小数点数で計算を繰り返
すと、データを加算し、減算し、又はエラーを伝播する
何らかの演算を行うと、表示のエラーが増大することが
ある。
よって、固定小数点データ表示における数範囲の上位桁
あふれ(overflow)又は下位桁あふれ(und
erf low)を制御する方法が必要とされていた。
本発明は、この必要を満たずものである。
(発明の概要) 本発明は、−面において、2進データの下位桁あふれを
訂正すると共に計算装置からの2進データの上位桁あふ
れを訂正して固定小数点範囲の2進データを作るための
装置及び付随の方法を提供するものである。この装置は
、計算装置により作られた2進データの固定小数点範囲
からの下位桁あふれ又は上位桁あふれを検出する検出器
を包含する。出力メカニズムは、固定小数点範囲の2進
出力データを提供する。インバータば、該検出器に応答
して、該計算装置により固定小数点範囲に作られた2進
データの全てのビットを反転させ、その反転2進データ
を該出力メカニズムに提供する。
よって、固定小数点範囲からの2進データの下位桁あふ
れ又は上位桁あふれに起因するエラーを訂正する装置及
び方法が提供される。
本発明のこれらの特徴及び利点並びにその他の特徴及び
利点は、添付図面に示した模範的実施例に関する以下の
記述から明らかとなろう。
(実施例) 本発明は、固定範囲データ計算における」二位桁あふれ
及び下位桁あふれを訂正する新規な装置及び方法から成
るものである。以下の記述は、当業者が発明を作り、使
用出来る様に、特定の応用及びその要件の文脈で与えら
れたものである。当業者は好適な実施例の種々の変形に
容易に想到するであろうし、本書で定義される一般的原
理は、本発明の範囲から逸脱せずに他の実施例及び応用
に適用出来るものである。よって、本発明は図示した実
施例に限定されるものではなくて、本書に開示した原理
及び特徴と矛盾しない最大限の範囲が与えられなければ
ならない。
第4図には、本発明の現在好適な実施例の処理システム
40のブロック図が示されている。処理システム40は
、主プロセツサ41 (破線の中)と、グラフィックス
装置42 (破線の中)とを包含する。主プロセツサ4
1は、幾何学情報及びカラー情報をライン56上に提供
する。グラフィックス装置42は、その幾何学情報及び
カラー情報を処理してディジタル絵素カラー情報及び絵
素深度情報を出す。ビデオDA(ディジタル−アナログ
)変換器43ば、該ディジタル絵素カラー情報をアナロ
グ情報に変換し、グラフィックス表示装置47は、この
アナログ情報を使って、線分PP2のイメージなどのイ
メージをグラフィックス表示スクリーン48上に描く。
本発明は固定小数点範囲内における下位桁あふれ及び上
位桁あふれを訂正する新規な方法及び装置を提供するも
のである。計算装置の出力が監視される。下位桁あふれ
又は上位桁あぶれが検出されると、該計算装置の全ての
範囲内出力ビットが反転される。その結果としての反転
されたビットが出力として提供される。
主プロセツサ41は、中央処理装置44、不動小数点処
理装置46、キャッシュメモリー50及び主メモリー5
2を包含しており、これら全てが32ビツトハス54に
接続されている。主プロセソサ41は、グラフィックス
装置42により処理されることの出来る幾何学情報及び
カラー情報を産出するアプリケーションプログラムを走
らせる。
グラフィックス装置42は、インターフェース装置58
、第1及び第2のグラフィックスプロセッサ60.62
及び第1及び第2の記憶装置64.66を包含する。イ
ンターフェース装置58は、主プロセツサ゛4]から幾
何学情報及びカラー情報を受は取って、この情報を使っ
てパラメータを産出し、第1及び第2のグラフィックス
プロセッサ60.62は該パラメータを使って、それぞ
れ第1及び第2の記憶装置64.66に格納される絵素
カラー及び深度情報を産出する。
作動時には、主プロセツサ41上を走るアプリケーショ
ンは、例えば、表示スクリーン48上に作られるべき複
数の異なる、そして重なることのあり得るイメージの幾
何学情報及びカラー情報を提供することが出来る。グラ
フィックス装置42は、その様な異なるイメー゛ジの各
々についての情報を個別に処理して、その結果得られた
情報をその記憶装置64.66に格納する。その様な異
なるイメージの各々について、インターフェース装置5
8はパラメータの異なる組を産出する。第1及び第2の
グラフィックスプロセッサ60,62は、インターフェ
ース58の産出したパラメータを使って、該イメージを
描くためにスクリーン48上のどの絵素をどんなカラー
で照明するか決定する。
より詳しく言えば、第1及び第2のグラフィックスプロ
セッサ60.62は、インターフェース装置58の産出
したパラメータに応じて、第1及び第2の記憶装置64
.66に格納されるべき絵素カラー及び深度情報を決定
するために線型補間を行う。更に、グラフィックスプロ
セッサ60.62は、スクリーン48上に描かれるべき
イメージの描写に係わる絵素を決定するために、そのイ
メージの幾何学的「エツジjを特定するエツジ探索アル
ゴリズムを使用する。各絵素カラー記憶素子はRGBカ
ラー情報の24ピッl−(赤のための8ビツト、緑のた
めの8ビット、及び青のための8ビツト)を含む。更に
、各絵素深度記憶素子も、深度情報の24ビツトを含む
。第1及び第2のグラフィックスプロセッサ60.62
ば、各々、度に五個の絵素についての絵素情報(カラー
又は深度)を、即ち、−度に120ビツトの情報を、処
理する。よって、2個のグラフィックスプロセッサ60
.62は、−度に10個の絵素についてのカラー又は深
度情報(240ビツト)を同時に処理することが出来る
第1及び第2の記憶装置64.66は、複数の2ポート
・ランダムアクセスメモリーから成る。
グラフィックス表示スクリーン48上の各絵素は、それ
ぞれ、第1及び第2の記憶装置64.66のうちのいず
れか一方の異なる24ピツト絵素カラー記憶素子に対応
する。また、該スクリーン上の各絵素は、それぞれ、異
なる24ビット絵素深度記憶装置に対応する。格納され
ている絵素カラー情報に基づいてスクリーン48上に視
覚イメージを生成するために、格納されている絵素カラ
ー情報が記憶装置64.66から読み出されてビデオD
A変換器43に提供される。変換器43は、グラフィッ
クス表示装置47に使用されてイメージを生成させるア
ナログ信号を産出する。よって、各2ポートRAMにつ
いて、一つのポートはグラフィックスプロセッサ60.
62の一つによりアクセスされ、他方のポートはビデオ
DA変換器43によりアクセスされる。
スクリーン48上に描かれたイメージが連続的に又は滑
らかに運動するのが見える様にするために、イメージは
典型的には少なくとも毎秒10回程度更新される。イメ
ージの各更新の過程で、スクリーン48」二〇絵素のた
めの絵素カラー記憶素子の内容が初期設定される。各初
期設定時に、第1及び第2の記憶装置64.66の各絵
素カラー記憶素子及び各絵素深度記憶素子の内容はバン
クグラウンド・カラー値にセットされる。その後、主プ
ロセツサ41が提供する幾何学情報及びカラー情報は、
上記の様にグラフィックス装置42により使用されて、
該装置42は、スクリーン48上のどの絵素をパンクグ
ラウンドカラー以外のカ0 ラーで照明するかを決定し、その異なるカラーに対応す
る絵素カラー情報を格納するために対応する各絵素カラ
ー記憶素子にアクセスする。
絵素深度記4.1素子及び絵素カラー記憶素子の初期設
定のプロセスについて、ここで−層詳しく説明をする。
第4b図を参照すると、第1記憶装置64の詳細を示す
ブロック図が示されている。第1及び第2の記憶装置6
4.66は実質的に同一であり、以下の記述は第2記憶
装置66にもあてはまるものであることが理解されよう
。第1記憶装置64は、深度バッファー(Zバッファー
)86、ダブルバッファー88及びフレームバッファー
90を包含しており、その全てが共有の120ビツト・
データバス92に接続されている。第1制御ライン94
は、行/読み出し/書込み制御信号ヲ深度バッファー8
6、ダブルバッファー88、フレームバッファ−90に
与える。第2制御ライン96は、これら三つのバッファ
ーの各々に別のチップイネーブル信号を提供する。
表示スクリーン48上の各絵素は、深度バッファ−86
の24ビット絵素深度記憶素子、ダブルバッファー88
の24ビツト絵素カラー記憶素子、及びフレームバッフ
ァー90の別の24ビツト絵素カラー記憶素子に対応す
る。後述する様に、この三つのバッファーの絵素深度記
憶素子及び絵素カラー記憶素子は、それぞれの5×2タ
イル素子の10個の絵素のうちの5個に対応する5素子
装置として論理的に組織されている。それぞれのタイル
素子の他の5個の絵素ば第2メモリーシステム66のそ
れぞれの絵素深度記憶素子及び絵素カラー記憶素子に対
応する。
第4C図を参照すると、24ビット絵素カラー記憶素子
の概念図が示されている。8ビツトが赤を表し、8ビッ
トが緑を表し、8ビツトが青を表す。ダブルバッファー
88の各絵素カラー記憶素子の各々について、フレーム
バッファー90の同一の対応する絵素カラー記憶素子が
ある。第4d図を参照すると、24ビット絵素深度記t
a素子の概念図が示されている゛。24ビット全部を使
って深度を表すことが出来る。
冊 2 イメージを表示スクリーン上につくり出すために、格納
されている絵素カラー情報がフレームバッファー90か
ら読み出されてビデオDA変換器(DAC)43に提供
される。DAC4,3は、これらのディジタル値をアナ
ログ信号値に変換し、グラフィックス表示装置47は、
そのアナログ信号値を使ってイメージをスクリーン48
上に作る。
滑らかに躍動するイメージを作るために、フレームバッ
ファー90内の絵素カラー情報は、少なくとも毎秒10
回程度更新されてDAC43に提供されるべきである。
フレームバッファ−90の内容を更新するプロセスは、
最初にダブルバッファー88の内容を更新し、次にダブ
ルバッファー88の内容をフレームバッファー90の中
に複写することを含む。
別の実施例(図示せず)では、例えば、ダブルバッファ
ーの内容が更新された後に該ダブルバッファーの内容を
フレームバッファーの中に複写する代わりに、該ダブル
バッファー及び該フレームバッファーからの出力を、こ
れら二つのバッファーの役割が逆転することとなる様に
多重化(又はスイッチング)することが出来る。その場
合、その二つのバッファーのうちの、一番最近に更新さ
れた方が絵素カラー情報を提供するべくDACに直接接
続される。他方のバッファーはダブルバッファーとして
作動し、新しい絵素カラー情報で更新される。
ダブルバッファー88の更新は、深度バッファー86及
びダブルバッファー88の両方を同時に初期設定するこ
とを含む。初期設定は、単一の24ビット絵素深度値を
深度バッファー86の全ての絵素深度記憶素子に書き込
むことを含み、単一の24ビツト絵素カラー値をダブル
バッファー88の全ての絵素カラー記憶素子に書き込む
ことを含む。本発明により、初期設定時に、同じ24ビ
ツト値が深度バッファー86及びダブルバッファー88
の両方の全ての絵素記憶素子に書き込まれる。特に、そ
の同じ24ビツト値は、主プロセツサ41上を走ってい
るアプリケーションプログラムにより指定されるパック
グラウンドカラーを3 4 表す24値である。
第1グラフイツクスプロセツサ60ば、その同時初期設
定を制御して、共有されている120ビツトバス92か
らの情報を書く様に深度バッファー86及びダブルバッ
ファ−88に命令する読み出し/書込み制御信号を第1
制御ライン94上に提供する。その書込み信号を提供す
る過程で、第1グラフイツクスプロセツサ60は、チッ
プイネーブル信号を第2制御ライン96上に提供し、こ
のチップイネーブル信号は、深度バッファー86及びダ
ブルバッファ−88の両方に、第1グラフイツクスプロ
セツサ60から提供されたディジタル情報を共有ハス9
2」二に同時に書かせる。深度及び記憶素子の全ての絵
素記憶素子が、その全てへの同じ絵素値の装填により初
期設定され終わるまで、グラフィソクスプロセソザ60
は、−度に5個の絵素について24ビツト絵素(ハック
グラウンド)カラー値を120ビツト共有バス92上に
提供する。
現在好適な実施例においては、フレームハソファ−90
を更新するプロセスも、陰面除去技術の適用を包含する
。この技術は、成る視野内で複数のイメージが相互に重
なり合う場合、それらのイメージのうちの近いものだけ
がその視野内で見えることを保証する。より近いイメー
ジを描くことは、その重なり合うイメージのうちの、よ
り近いものについての絵素カラー情報が、該イメージが
重なる絵素についてダブルバッファー88に格納される
ことを保証することを含む。陰面除去技術の実施には、
深度バッファー86が使用される。
第1グラフイツクスプロセツサ60は、スクリーン48
上のイメージの表示に係わる絵素について、補間された
絵素深度及び補間された絵素カラー情報を計算する。斯
かる絵素の各々について、第1グラフイツクスプロセツ
サ60は、深度バッファー86の対応する絵素深度素子
から現在格納されている深度値を読み出す。該プロセッ
サは、その絵素について現在格納されている深度値を、
該絵素についての計算された(補間された)深度値と比
較する。若し計算された深度値が、現在格納さ5 6 れている深度値より近いならば、第1グラフイツクスプ
ロセソザは、新たに計算された深度値を、当該絵素に対
応する深度記憶素子に書き込むと共に、その絵素につい
て新たに計算されたカラー値を、該絵素に対応するカラ
ー記憶素子に書き込む。
そうでない場合には、該プロセッサは、当該絵素につい
て現在格納されている深度値及びカラー値を変えないで
おく。
陰面除去技術を適用する過程で、主プロセツサ41上を
走るアプリケーションプログラムにより提供される0≦
Z≦1の範囲の不動小数点深度値(Z)は24ビット2
進深度値を変換される。この変換は、深度バッファー8
6に現在格納されている24ビツト値との比較のために
、提供された深度値を使って深度計算値(補間値)を容
易に計算出来る様にするために行われるのである。更に
、深度バッファーの各絵素記憶素子は、ハックグラウン
ドカラーに対応する24ビット深度値で初期設定される
ので、この初期設定を補償するために、該アプリケーシ
ョンプロセスにより提供された変換された深度値のスケ
ーリングを行う必要がある。
現在好適な実施例においては、このスケーリングは次の
通りに行われる。2進バツクグラウンドカラー値は不動
小数点値に変換される。22)より小さな2進バツクグ
ラウンドカラー値については、変換された2進深度値は
: 深度−(バンクグラウンドカラー値)+((2”1)−
ハックグラウンドカラー値)*Zである。22)より大
きな2進バンクグラウンドカラー値については、変換さ
れた2進深度値:深度−(バンクグラウンドカラー値)
*Zである。この様なスケーリングを行えば、陰面除去
技術適用時に、より広い範囲のスケーリングされた深度
値を確実に使用出来ることが理解されよつO 第1グラフイツクスプロセツサ60は、視野内の複数の
イメージについて絵素深度情報及び絵素カラー情報を出
すことの出来るものであることが理解されよう。イメー
ジが重なり合う場合には、上記の陰面除去技術は遠くの
イメージ(又はその7 8 遠くの部分)が近くのイメージの背後に隠れることが保
証される。
スクリーン48上に線分のイメージを作るブタ処理シス
テム40の動作について、後述する実施例の文脈で詳細
に説明をする。この実施例では、第5a図に示されてい
る線分PI B2のイメージを作るために絵素を照明す
るステップに焦点を当てる。
グラフィソクスプロセソザ60.62ば、下記の形の平
面方程式: %式% を使って線型補間を行うことにより、記憶装置64.6
6に格納される絵素カラー、深度及び強度の値を作る。
ここで、 Q1=AX1+Byl+C Q2=AX2+By2+C Q3=AX3+By3+C であり、Qは、カラー補間については赤、緑、又は青の
値を表し、深度補間についてはZ値を表し、強度補間に
ついてはα値を表す。
線型補間が、現在好適な実施例で用いられているが、絵
素カラー及び深度情報を計算するために、例えば二次補
間法などの、別の方法を用いることも出来ることが理解
されよう。
主プロセツサ41は、インターフェース装置58に、線
分PIP2の端の点についての幾何情報及びP、  (
X、Y、R,G、BI  Zl )及びP 2  (X
2 Y2 R2G2 B272 )を提供する。
座標対(x+ Yl )及び(xz Y2 )は、端の
点P+及びB2を包含する絵素のグラフィックススクリ
ーン48の絵素アレーにおける位置を提供する。カラー
情報(R+ G+ B+ )及び(R2G2B2)は、
それぞれ、端の点P、及びB2のカラーを提供する。最
後に、深度情報2.及びZ2は、端の点の深度(観察者
からの距離)を提供する。
深度情報は、例えば、陰面除去において、スクリーン4
8上の成るイメージが該スクリーン上の他のイメージ上
に位置する場合に使われる。この様に重なる場合、「よ
り近い」深度値を有する面は9 0 描かれ、「より遠い」深度値を有する面は隠される。
幾何情報及びカラー情報に応じて、インターフェース装
置58は、平行四辺形の座標、強度値くα)スケール、
線型補間を行うのに使われる選択された出発値、及び線
型補間を行うのに使われる定数値などのパラメータを作
る。第5b図を参照すると、平行四辺形(B3 B4 
PS Pb )が示されており、この平行四辺形は、線
分PI  B2により1分されており、該線分の端の点
P、及びB2を含む絵素を包含する平行な対向するエツ
ジを有する。この平行四辺形が、表示スクリーン48の
平らな領域を表すことが理解されよう。
インターフェース装置58は、強度スケーリング係数α
を作り、このαは、後述づ−るように、線分PIP2か
ら垂直方向に遠くはなれた絵素がより弱く照明されるこ
ととなる様に、該線分を描くのに使われる絵素の照明の
強度を漸次にスケーリングするのムこ使われる。特に、
下記の表と第5c図とを参照すると、該平行四辺形の左
側エツジ上の強度値は、B3でのα−0,0からP、で
のα−1,0へ、B5でのα−2,0まで変化する。同
様に、強度値は、該平行四辺形の左側エツジに沿ってB
4でのα−0,0から、B2でのα−1,0へ、B6で
のα−2,0へと変化する。後述するように、該線分か
らの垂直距離が増大するに従って漸次減少するα強度値
を作るために、1.0から2.0までの範囲内のαの値
は、補間計算の過程で1.0から0.0までの範囲に写
像される。
下記の表1は、該平行四辺形のエツジに沿って第5C図
に示されている点に対して指定されたα値を示す。
1 2 夫−一一七 点 F3  、P。
P 7  、P e F9 、P、。
Plい F12 P+  、F2 PI3、P+4 F15、P+6 P+7、pie Ps  、P+。
α 0.0 0.25 0.50 0.75 1.00 1.25 1.50 1.75 2.00 インターフェース装置58は、該平行四辺形に囲まれる
絵素についてのカラー、深度、及び強度情報(RGBZ
α)を補間するのに使われる該平行四辺形に囲まれる(
そして該平行四辺形のエツジ上の)三つの点も選択する
。例えば、装置58は点P3 P、及びF5を選択する
ことが出来る。
選択された3点についての(RGBZ)(ffiは、a
     dQ      −b      dQc 
    dx       c      dyを計算
するためにインターフェース装置58により使われる。
QはRGB、Z又はαを表すことが出来る。よって、イ
ンターフェース装置58は、dR/dx、dR/dy、
dG/dx dG/dy、dB/dx、dB/dy d Z/d x、 d Z/d y、  d α/d 
x及びdα/dyを計算する。現在好適な実施例では、
a= (Y4−Y3)(Q5−Q4) (Y5−Y4.)(QIQ3) b= (Q4−Q3)(X5−X4) (Q5−Q4)  (X4.−X3) c−(X4−X3)(Y5−Y4) (X5−X4)(Y4−Y3) であり、ここで、選択された点P3 F4及びP。
の(x y)座標は、(X3Y3)、  (X4Y4)
及び(X5Y5)である。
インターフェース装置58が平行四辺形座標を作り、α
値を指定し、該平行四辺形に囲まれる33 4 点を選択し、」―に列挙した定数値を計算した後、第1
及び第2のグラフィックスプロセッサ60.62は、こ
の情報を使って、PI  F2線分のイメージを描写す
るためにどの絵素イメージカラー記憶素子を新しい絵素
カラー情報で更新するべきかを決定すると共に、更新さ
れた絵素カラー情報及び絵素深度情報を実際に補間する
より詳しく言えば、第1及び第2のグラフィックスプロ
セッサ60.62は、エツジ探索アルゴリズムを使って
、どの絵素を更新するべきかを決定する。現在好適な実
施例では、「タイル」要素を採用するエツジ探索アルゴ
リズムを用いる。
「タイル」要素は、スクリーン48」二に5×2絵素ア
レーをなして配列された物理的に隣接する10個の24
ビツト絵素である。第6図は、10個の絵素(1番から
10番まで)から成る5×2タイル要素を示す。
スクリーン48は、多数のこの様なタイル要素に分割さ
れている。これに対応して、記憶装置64.66は、各
タイル要素について、カラー情報を格納するだめの、論
理的に隣接する絵素記憶素子が10個ある様に組織され
る。また、深度情報を格納するだめの、論理的に隣接す
る絵素記憶素子が10個ある。
要約すると、エツジ探索アルゴリズムは次の通りに作用
する。即ち、出発タイル要素が選択される。第7図にお
いて、そのタイル要素には「1」が付されている。本発
明の現在好適な形では、出発タイル要素は、問題の幾何
学図形(この例では、三角形T1、T2、T3)の一番
上の頂点を含むタイル要素である。該アルゴリズムは、
最初にいずれかのタイル要素を通って走るエツジについ
て出発タイル要素「1」の左側にあるタイル要素を探す
。この例では、一つも発見しない。次に、該アルゴリズ
ムは、最初にいずれのタイル要素を通って走るエツジに
ついて出発タイル要素「I J (D右側にあるタイル
要素を探す。該アルゴリズムは、「2」が付されている
タイル要素を通ってエツジが走っていると判断する。次
に、このアルゴリズムは、出発タイル要素「1」の真下
にあるタイル5 6 要素「3」の座標へ下る。タイル要素「3」の座標から
、再び左右を探索する。該アルゴリズムは、タイル要素
「3」ないし「6」は三角形T1、Tz、T:+のエツ
ジにより完全に又は部分的に囲まれていることを発見す
る。アルゴリズムは、タイル要素「3」を通る三角形の
底辺は無いことを発見する。そこで、該アルゴリズムは
、タイル要素「7」の座標へ下り、左右の探索を反復し
、タイル要素「8」及び「7」及び「9」ないし「14
」が完全に又は部分的に囲まれていることを識別する。
該アルゴリズムは、完全に又は部分的に囲まれている最
後の2個のタイル要素を特定するまで、この様に動作す
る。それらには、それぞれ、「52」及び「53」が付
されている。
エツジ探索アルゴリズムの上記の用例は三角形T、T2
T3についてのものであるが、それを直に第5a図ない
し第5d図の平行四辺形にも適用出来ることが分かる。
更に、現在好適な実施例はエツジ探索アルゴリズムを用
いているが、他の、もっと広く使用されてきた方法を使
って、該平行四辺形に囲まれた絵素又はタイル要素を特
定することが出来る。
第1及び第2のグラフインクスプロセソサ60.62は
、問題の幾何学図形により完全に又は部分的に囲まれて
いると分かったタイル要素の絵素についてカラー、深度
及び強度の値を補間する。第5d図を参照すると、例え
ば、エツジ探索アルコリズムの適用を通じて、平行四辺
形P3P4 PSP6に(部分的に)囲まれていると分
かった絵素「1」ないし「10」の5×2アレーから成
るタイル要素が示されている。絵素「1」ないし「4」
及び「6」ないし「9」は、該平行四辺形の中に含まれ
ている。絵素「5」及び「10」は、該平行四辺形の外
に位置する。該タイル要素は該平行四辺形に(部分的に
)囲まれているので、上記した平面方程式を該タイル要
素内の各絵素に用いて、それぞれの絵素についてカラー
(RGB)値、深度(Z)値、及び強度(α)値を補間
する。
該タイル要素内の各絵素について、それぞれの補間済み
赤、緑及び青カラー値と、それぞれの補7 8 間済み強度値とから、最終の赤、緑及び青カラー値が次
の様にして計算される: C0LORr111−t−cOLORH□Grl+0L
RtQd*αiI、terpoLataa(最終カラー
値−補間法カラー値*補間済強度値)線分からの垂直距
離が増大すると強度値(α)は減少するので、該線分か
ら垂直方向に遠くはなれた絵素は漸次に溶暗してゆき、
段階効果が小さくなる。
上記した様に、1.0〈α≦2.0の範囲内のα(強度
)値は、C0LORf、、、a、(最終カラー値)を計
算するのに使われる上記方程式に適用される前に1.0
〈α≦0.0の範囲に写像されなげればならない。本発
明の本実施例では、その写像を達成するために、第8図
に略図示されている下位桁あふれ/上位桁あふれ(Ul
o)訂正回路68が使われる。
このU10回路68は、9ビツト加算器70の形の計算
装置と、9個の排他的ORゲート72の形の複数の反転
メカニズムと、ANDゲート74の形の制御装置とを含
む。9ビツト加算器70は、桁上げチェーンを成して接
続された9個の1ビット加算器70−0ないし70−8
から成る。9ビツト加算器72のそれぞれの1ビツト加
算器700ないし70−8の出力は、それぞれの排他的
ORゲート72−0ないし72−8のそれぞれの第1人
カフ6−0ないし76−8に接続されている。ANDゲ
ート74の出カフ3は、排他的ORゲー1−72−0な
いし72−8のそれぞれの第2人カフ8−0ないし78
−8に接続されている。
ANDゲート74の第1人力80は、前記桁上げチェー
ン中の最高桁1ビット加算器である9番目の1ビット加
算器70−8の出力に接続されている。ANDゲート7
4の第2人力82は制御信号を受は取る。
作動するとき、U10回路68は、次の強度値α7を補
間し、その補間した強度値を 1.0〈α≦2.0の範囲から1.0〈α≦0.0の範
囲に写像することが出来る。特に、9ビット加算器70
のrAJ入力は、9ビツト(αpOないしαP8)から
成る先に補間された8ビツト強度値α2を受9 0 け取る。9ビツト加算器70のrBJ入力は、例えば、
定数値dα/ d xを受は取るが、これは9ビy h
 dα、/dx(dαo/d xないしdα8/ d 
x )から成る。最下桁の先に補間された強度値及び定
数ピッ)dα。/dxが1ビット加算器70−0に提供
される。最高桁の先に補間された強度値ビットαp8及
び定数ピッl−dα8/dxが1ビット加算器70−7
に提供される。以下の説明をdα/dyの計算にも適用
出来ることが理解されなげればならない。
U10回路68ば、8ビツトのa、、i (α。。ない
しα、、8)から成る9ビツトの次の強度値α7を補間
する。次の強度値α。の実数値 0.0≦α9≦1.0の範囲内にあれば、次に高い桁の
強度ビットα。8は論理「0」である。最高桁の強度値
αゎの実数値が1.0〈α7≦2.0の範囲内にあれば
、次に高い桁の強度値α。8は論理「1」である。
論理「1」制御信号をANDゲート74の第2人力82
に与えると、ANDゲート74は、最高桁強度ビットα
ゎ。が論理「1」であるときに限って論理「1」信号を
ライン73上に提供する。ライン73上に論理「1」信
号が提供されると、それぞれの排他的ORゲー1−72
−0ないし727は、それぞれの1ビット加算器70−
0ないし70−7から該ゲートに与えられるビットを反
転させる。この反転を利用して、次の表2に示されてい
る様に、1.0〈α、≦2.0の範囲内の強度値を0.
0〈α7≦1.0の範囲内に写像することが出来る。
犬−−−−λ α 指 定   α指定 占     Hex o、 o     o x o 。
O,250X40 0.50   0X80 1、 OOX F F l、5    0X180 1.75   0XICO 2、00X I F F α写像 Hex 0 ×7 F O×3 F O×0 1 2 第5C図と表1.2を参照すれば、U10回路68の動
作を用いて、16進数の形の次の強度値αゎを1.0〈
αゎ≦2.0の範囲から0.0〈α。<1.0の範囲に
写像出来ることが分かる。更に、U10回路68ば、絵
素について次の補間された強度値α□が、線分からの絵
素の垂直距離が増大するに従って減少することとなる様
にこの写像を行うことが分かる。更に、この減少は、線
分P、P2の下にある絵素についての割合とほぼ同じ割
合で、該線分の上にある絵素についても生じる。
第6図のU/○訂正回路68を用いて、排他的ORゲー
ト72−0ないし72−7の出力により表される固定デ
ータ範囲の下位桁あふれ及び上位桁あふれを訂正出来る
ことが理解されよう。より詳しく言えば、排他的ORゲ
ー)72−0ないし72〜7の提供する8ビツトにより
表すことの出来るデータ範囲は、0から2551゜の範
囲にわたる。よって、256.。(OXlooとして表
される)の値は範囲外にあり、排他的ORゲート720
ないし72−7の出力により表される8ビ・ノド範囲か
らあふれる。逆に、  1.10の植(2の補数の表記
法ではQXIFFと表される)も範囲外にあり、排他的
○Rゲー1−72−0ないし727の出力により表され
る8ビツト範囲からの下位桁あふれを表す。
本書に記載したグラフィックス処理システム40におい
て、例えば、平面方程式についてのdQ/dx又はdQ
/dyの計算が不正確であることに起因して小さなエラ
ーが発生することがある。その様な不正確さは、ディジ
タル計算システムにおける除算の実行に固有のものであ
る。その上、実際の絵素カラー、深度及び強度の値の補
間を繰り返し行うと、元のエラーを増大させる様な値が
加わり合うので、その補間の結果として、上記の小さな
エラーが増大することがある。結局、その増大したエラ
ーが、固定数範囲の下位桁あふれ又は上位桁あふれとな
って現れることがある。
U10回路68は、有益なことに、固定小数点データ範
囲からの下位桁あふれ又は上位桁あふれ3 4 を生じさせる小さなエラーを訂正することを可能にする
ものである。例えば、OXO(0,。)という値は、排
他的ORゲート72−0ないし727の8個の範囲内出
力の全てに論理「0」を出現させる。若し1だけ下位桁
あぶれが発生ずると、2の補数の表記法では結果は0X
IFF(1+o)という値となる。この様な下位桁あぶ
れの場合には、9番目の1ビット加算器70−8の出力
は論理「1」であり、他の8個の1ビツト加算器の出力
は全て論理「1」である。
論理「1」制御信号をANDケート74のライン82に
提供すると、排他的ORゲート72−0ないし72−7
が提供する8個の範囲内出力は全て、oxo  ((L
o)を表ず出力として論理「0」を提供する。この様に
して、下位桁あぶれが訂正される。
逆に、固定小数点範囲における最大値0XFF(255
10)の1だけの上位桁あふれは、0x100  (2
56,。)の値を生じさせる。
0XFFの値は、排他的ORゲート72−0ないし72
−7が提供する8個の範囲内出力の全てを論理「1」と
する。上位桁あふれは、8個の範囲内1ビット加算器7
0−0ないし70−7の全てから論理「0」出力を出力
させる。9番目の1ビン1〜加算器70−8は論理「1
」出力を提供する。
論理「1」制御信号をANDゲート74のライン82に
提供すると、排他的ORゲー)72−0ないし72−7
により提供される8個の範囲内出力は全て論理「0」と
なるが、これは0XFF(255,、)表す。この様に
して、上位桁あぶれが訂正される。
従って、最高桁1ピッl−加算器70−8は、ANDゲ
ート74と関連して、9番目の1ピッ1−加算器70−
8が提供する範囲外保護ピッI・を監視するごとによっ
て下位桁あふれ又は上位桁あふれを検出する。8個の排
他的ORゲー)72−0ないし72−7は、8個の下位
1ビット加算器70−0ないし70−7の出力を反転さ
せ、8個の範囲内加算器出力を全て反転させて、その反
転した値を排他的ORゲー1−72−0ないし725 6 7の範囲内出力として提供することによって、下位桁あ
ふれ又は上位桁あふれを訂正する。
固定小数点範囲内の結果を作る加算器の形の計算装置に
関して本発明を説明したけれども、減算器や乗算器など
の、下位桁あふれエラー又は上位桁あふれエラーが生じ
得る他の種類の計算素子からの下位桁あふれ及び上位桁
あふれを訂正するために本発明の原理を適用出来ること
が理解されよう。
第9図を参照すると、平行四辺形が示されており、この
平行四辺形の対向する水平軸に沿う点に強度値(α)ス
ケールが割り当てられている。第9図における平行四辺
形のための強度値スケールは、次の表3に記載されてい
る。
表    3 占 P、、Po、Pp、P9    0.0Pr、PS+ 
PL+ Pu      o、 5P、  P。
1.0 第9図の平行四辺形の場合、グラフィックス装置42は
、線分pt p、により1分された二つの平行四辺影領
域P、、P、PLP、及びP、P、PI、P9でのカラ
ー、深度及び強度の値を補間する。U10補正回路68
は、強度値(α)に対して既に適切にスケーリングが行
われているので、強度値を写像するためには使われない
本発明の1実施例について本書に詳細に説明したが、本
発明の範囲から逸脱せずに、この好適な実施例を様々に
修正出来ることが理解されよう。
よって、叙上は、特許請求の範囲の欄で定義された発明
を限定するものではない。
7 8
【図面の簡単な説明】
第1図は従来の代表的処理システムのブロック図である
。 第2図は、第1図の処理システJ8のクラフィックスス
クリーン上の線分の例であり、階段効果を示す。 第3図は、第2図の線分の例であり、縮小した階段効果
を示す。 第4al”lは、本発明の現在好適な実施例による処理
システムのブロック図である。 第4b図は、第4a図のシステムの第1記jt装置の詳
細を示すブロック図である。 第4C図は、第4b図の第1記憶装置のフレームハソフ
ァ−(又はダブルバッファー)の絵素カラー要素の概念
図である。 第4d図は、第4b図の第1記憶装置の深度バッファー
の絵素深度要素の概念図である。 第5a図は、第4a図の好適な実施例のグラフィックス
スクリーン」二の線分の例である。 第5b図は、第4a図の好適な実施例のインク−フェー
ス装置により作られる平行四辺形を示す。 第5C図は、第5b図の平行四辺形を示し、この場合、
対向する垂直エツジに沿う個々の絵素には異なる強度(
α)値が割り当てられている。 第5d図は、第5b図の平行四辺形を示すと共にタイル
要素を示す。 第6図は、第4a図の実施例の表示スクリーンのタイル
要素を示す。 第7図は4、幾何学図形を示し、この場合、この幾何学
図形に囲まれる絵素を識別するために工・ノジ探索アル
ゴリズムが適用される。 第8図は、第4a図の実施例のグラフィ・ノクスプロセ
ソサの下位桁あふれ/上位桁あふれ訂正回路の略図であ
る。 第9図は、対向する水平エツジに沿って強度値が割り当
てられた別の平行四辺形を示す。 9 0 第50図 第5b図 第5C区 第6図 第7図 第5d因 第8図 2 第9図 手 続 袖 正 書 (方式) 1、事件の表示 平成2年特許願第31 1219号 2、発明の名称 上位桁あふれ及び下位桁あふれを 訂正する方法及び装置 3、補正をする者 事件との関係 出 願人 4、代 理 人

Claims (2)

    【特許請求の範囲】
  1. (1)固定小数点範囲内の2進データを作る計算手段か
    らの2進データの下位桁あふれを訂正すると共に該手段
    からの上位桁あふれを訂正する装置であって、 該計算手段が作った2進データの該固定小数点範囲から
    の下位桁あふれ又は上位桁あふれを検出する検出手段と
    、 該固定小数点範囲内の2進出力データを提供する出力手
    段と、 前記検出手段に応答して、該計算手段により該固定小数
    点範囲内に作られた2進データの全てのビットを反転し
    て、その反転した2進データを前記出力手段に提供する
    反転手段とから成ることを特徴とする装置。
  2. (2)固定小数点範囲内の2進データを作る計算手段か
    らの2進データの下位桁あふれを訂正すると共に該手段
    からの上位桁あふれを訂正する方法であって、 該計算手段が作った2進データの該固定小数点範囲から
    の下位桁あふれ又は上位桁あふれを検出し、 該計算手段が該固定小数点範囲内に作った2進データの
    全てのビットを反転させ、 その反転した2進データを出力として提供するステップ
    から成ることを特徴とする方法。
JP2311219A 1989-11-17 1990-11-16 上位桁あふれ及び下位桁あふれを訂正する方法及び装置 Pending JPH03244023A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US438636 1989-11-17
US07/438,636 US5038314A (en) 1989-11-17 1989-11-17 Method and apparatus for correction of underflow and overflow

Publications (1)

Publication Number Publication Date
JPH03244023A true JPH03244023A (ja) 1991-10-30

Family

ID=23741409

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2311219A Pending JPH03244023A (ja) 1989-11-17 1990-11-16 上位桁あふれ及び下位桁あふれを訂正する方法及び装置

Country Status (5)

Country Link
US (1) US5038314A (ja)
EP (1) EP0430441B1 (ja)
JP (1) JPH03244023A (ja)
CA (1) CA2030188A1 (ja)
DE (1) DE69033190D1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5905662A (en) * 1996-09-13 1999-05-18 Kabushiki Kaisha Toshiba Digital processing system for binary addition/subtraction

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5189636A (en) * 1987-11-16 1993-02-23 Intel Corporation Dual mode combining circuitry
US5164914A (en) * 1991-01-03 1992-11-17 Hewlett-Packard Company Fast overflow and underflow limiting circuit for signed adder
DE69424626T2 (de) * 1993-11-23 2001-01-25 Hewlett Packard Co Parallele Datenverarbeitung in einem Einzelprozessor
US5448509A (en) * 1993-12-08 1995-09-05 Hewlett-Packard Company Efficient hardware handling of positive and negative overflow resulting from arithmetic operations
US5553015A (en) * 1994-04-15 1996-09-03 International Business Machines Corporation Efficient floating point overflow and underflow detection system
JP2003153006A (ja) * 2001-11-16 2003-05-23 Ricoh Co Ltd 画像処理装置
US20080034027A1 (en) * 2006-08-01 2008-02-07 Linfeng Guo Method for reducing round-off error in fixed-point arithmetic
CN102654920B (zh) * 2011-03-02 2014-05-14 扬智科技股份有限公司 用于向量图形的线段溢位修正方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63211431A (ja) * 1987-02-27 1988-09-02 Rohm Co Ltd 加算回路
JPS63262910A (ja) * 1987-04-20 1988-10-31 Matsushita Electric Ind Co Ltd デイジタル演算回路
JPS63262909A (ja) * 1987-04-20 1988-10-31 Matsushita Electric Ind Co Ltd デイジタル演算回路

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL203878A (ja) * 1955-01-24
US3016193A (en) * 1960-02-19 1962-01-09 Ibm Overflow indicator
US3789206A (en) * 1972-04-04 1974-01-29 Bell Telephone Labor Inc Threshold logic overflow detector for a three-input adder
US4215415A (en) * 1977-09-19 1980-07-29 Nippon Electric Company, Ltd. Recursive digital filter comprising a circuit responsive to first sum and feedback sign bits and second sum sign and integer bits for detecting overflow in the second sum
JPS5674774A (en) * 1979-11-22 1981-06-20 Nec Corp Arithmetic circuit with overflow detector
JPS5776635A (en) * 1980-10-31 1982-05-13 Hitachi Ltd Floating multiplying circuit
US4429370A (en) * 1981-04-23 1984-01-31 Data General Corporation Arithmetic unit for use in a data processing system for computing exponent results and detecting overflow and underflow conditions thereof
JPS5921104A (ja) * 1982-07-27 1984-02-03 Matsushita Electric Ind Co Ltd デイジタル制御発振器
DE3677051D1 (de) * 1985-05-17 1991-02-28 Nec Corp Verarbeitungsschaltung, die es erlaubt den akkumulationsdurchsatz zu erhoehen.
US4845666A (en) * 1985-07-01 1989-07-04 Pixar Computer system for processing binary numbering format and determining the sign of the numbers from their two most significant bits
JPS6211933A (ja) * 1985-07-09 1987-01-20 Nec Corp 演算回路
DE3524981A1 (de) * 1985-07-12 1987-01-22 Siemens Ag Anordnung mit einem saettigbaren carry-save-addierer
US4722066A (en) * 1985-07-30 1988-01-26 Rca Corporation Digital signal overflow correction apparatus
JPH069028B2 (ja) * 1986-02-18 1994-02-02 日本電気株式会社 演算装置
JPH0650462B2 (ja) * 1986-02-18 1994-06-29 日本電気株式会社 シフト数制御回路
JP2600293B2 (ja) * 1988-06-10 1997-04-16 日本電気株式会社 オーバーフロー補正回路
US4893267A (en) * 1988-11-01 1990-01-09 Motorola, Inc. Method and apparatus for a data processor to support multi-mode, multi-precision integer arithmetic

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63211431A (ja) * 1987-02-27 1988-09-02 Rohm Co Ltd 加算回路
JPS63262910A (ja) * 1987-04-20 1988-10-31 Matsushita Electric Ind Co Ltd デイジタル演算回路
JPS63262909A (ja) * 1987-04-20 1988-10-31 Matsushita Electric Ind Co Ltd デイジタル演算回路

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5905662A (en) * 1996-09-13 1999-05-18 Kabushiki Kaisha Toshiba Digital processing system for binary addition/subtraction

Also Published As

Publication number Publication date
EP0430441A3 (en) 1992-09-30
EP0430441B1 (en) 1999-06-30
CA2030188A1 (en) 1991-05-18
EP0430441A2 (en) 1991-06-05
DE69033190D1 (de) 1999-08-05
US5038314A (en) 1991-08-06

Similar Documents

Publication Publication Date Title
US6246421B1 (en) Apparatus and method for parallel rendering of image pixels
JP2854866B2 (ja) イメージ処理システム及びその画素データの処理法
US5185856A (en) Arithmetic and logic processing unit for computer graphics system
JP2910979B2 (ja) コンピュータグラフィックシステムのサブピクセルマスク発生方法および装置
JPH05307610A (ja) テクスチャマッピング方法およびその装置
US5008838A (en) Method for simultaneous initialization of a double buffer and a frame buffer
JPH03244023A (ja) 上位桁あふれ及び下位桁あふれを訂正する方法及び装置
US5206628A (en) Method and apparatus for drawing lines in a graphics system
EP0644509A2 (en) Method and apparatus for filling polygons
US5265210A (en) Method and apparatus for plotting pixels to approximate a straight line on a computer display device without substantial irregularities
US6008796A (en) Software-based dithering method and apparatus using ramp probability logic
US5748863A (en) Method and system for fast interpolation of depth buffer values in a computer graphics display system
JPH03144782A (ja) 三次元図形処理装置
KR920003702B1 (ko) 3차원 2치 화상의 체적 및 중심을 구하는데 적합한 화상 처리 장치 및 방법
JP4300650B2 (ja) 演算処理回路およびその方法と画像処理装置
CA2261245C (en) Division circuit and graphic display processing apparatus
US20020158856A1 (en) Multi-stage sample position filtering
EP0431776A2 (en) Method of drawing a line segment in a graphics system
JPS5843747B2 (ja) エンスイキヨクセンハツセイソウチ
JPH10207694A (ja) ディジタルべき乗演算装置及びそれを用いたグラフィックスシステム
JP2854867B2 (ja) イメージ処理システム及び画素データ転送法
JP4244444B2 (ja) データ処理装置、除算回路および画像処理装置
JP2674755B2 (ja) カラー描画装置
JPS62204389A (ja) 任意多角形によるクリツピング・シ−ルデイング方法
JPH04225481A (ja) 記憶装置