JPH11212955A - 演算装置および画像処理装置 - Google Patents

演算装置および画像処理装置

Info

Publication number
JPH11212955A
JPH11212955A JP10017434A JP1743498A JPH11212955A JP H11212955 A JPH11212955 A JP H11212955A JP 10017434 A JP10017434 A JP 10017434A JP 1743498 A JP1743498 A JP 1743498A JP H11212955 A JPH11212955 A JP H11212955A
Authority
JP
Japan
Prior art keywords
value
bit
coefficient
arithmetic
arithmetic unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP10017434A
Other languages
English (en)
Other versions
JP3985321B2 (ja
Inventor
Toshio Horioka
俊男 堀岡
Ryohei Iida
亮平 飯田
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP01743498A priority Critical patent/JP3985321B2/ja
Priority to CA002260345A priority patent/CA2260345C/en
Priority to US09/237,833 priority patent/US6373494B1/en
Publication of JPH11212955A publication Critical patent/JPH11212955A/ja
Application granted granted Critical
Publication of JP3985321B2 publication Critical patent/JP3985321B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/00Three-dimensional [3D] image rendering
    • G06T15/005General purpose rendering architectures

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)
  • Complex Calculations (AREA)

Abstract

(57)【要約】 【課題】補間係数α=1.0の場合においても適切に元
のデータが得られるような演算を行うことができる線形
補間演算装置が要望されている。 【解決手段】補正項Fは、α=0xFF(α=1.0)
の場合にはAを、それ以外の場合にはBを選択する。各
部分積out_0〜out_7は、αの各ビットごと
に、そのビットが1であればAを選択し、0であればB
を選択した値である。これらの選択したデータは、αの
そのビット番号分左にシフトさせて加算の要素とされ
る。積和演算項Cは、8ビット×8ビットの乗算結果の
上位8ビットをとって8ビットの演算結果を得た結果に
さらにこの積和演算項Cが加算できるように、左に8ビ
ットシフトさせて加算される。加算器130は、前述し
たように得られて、各々桁がシフトされた補正項F、各
部分積out_0〜out_7および積和演算項Cを加
算し、その上位8ビットを演算結果として出力する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、たとえば線形補間
や補正などを行うための積和演算を高速に行うことので
きる演算装置、および、特にコンピュ−タグラフィクス
分野などにおいて3次元画像を生成するのに好適な画像
処理装置に関する。
【0002】
【従来の技術】種々のCADシステムや、アミューズメ
ント装置などにおいて、コンピュータグラフィクスがし
ばしば用いられている。特に、近年の画像処理技術の進
展に伴って、3次元コンピュータグラフィクス技術を用
いたシステムが急速に普及している。この3次元コンピ
ュータグラフィックスを行う場合において、最も広く使
用されている手法の1つに、ポリゴンレンダリングシス
テムがある。これは、立体モデルを3角形の単位図形
(ポリゴン)の張り合わせとして表現しておき、このポ
リゴンを描画することで表示画面の各画素の色を決定し
ディスプレイに表示するシステムである。
【0003】ところで、そのようなレンダリング処理に
おいては、たとえば、三角形の頂点に基づいて各頂点間
あるいは三角形内部の画素データを生成する場合、テク
スチャデータに対してハイライト効果を施す場合、テク
スチャマッピング時、フォグ効果を施す場合など、頻繁
に線形補間演算処理が行われる。このような場合に行わ
れる線形補間演算を式で示すと、式1のように表すこと
ができる。
【0004】
【数1】 A×α+B×(1−α) …(1)
【0005】式1に示すような線形補間演算を行う場
合、通常であれば、2個の乗算器と1個の加算器、また
は、1個の乗算器と1個の減算器と1個の加算器を使う
ような構成が容易に推測できる。また、図5に示すよう
な演算器で構成することも考えられる。図5に示す演算
器は、A×α+B×(1−α)を、A×α+B× ̄α+
B(ただし、 ̄αはαのビット反転を示す。)と展開
し、加算項Bと、変数αのビットに対応して選択された
部分積out_0〜out7を図示のごとくシフトさせ
た値とを加算することにより求めるものである。なお、
各部分積out_0〜out_7は、αの各ビットごと
に、そのビットが1であればAを選択し、0であればB
を選択した値である。
【0006】
【発明が解決しようとする課題】ところで、式1に示す
ような一般的な線形補間演算を、たとえば各変数が8ビ
ットの変数であるような8ビットの処理系で行う場合に
おいて、A=1,α=1,B=0として通常の乗算を行
うと、式2に示すような演算が行われ、上位8ビットを
乗算結果として出力すると0xFEとなる。
【0007】
【数2】 0xFF×0xFF+0×(1−0xFF)=0xFE01 …(2)
【0008】これは、数学的に0から1.0を0x00
から0xFFに対応させて考えた場合、1.0×1.0
≠1.0ということになり、正しい演算結果が得られな
くなることを意味している。したがって、たとえばこの
線形補間演算を前述したような3次元コンピュータグラ
フィクスシステムのフォグ演算などに適用した場合に
は、フォグ効果を全く出さないようにフォグ係数を1.
0に設定した場合にも、入力した元の画素データが何ら
かの影響を受けてしまい元の画素データが維持できない
ことになるという問題が生じる。
【0009】そのため、これまでは図5に示したような
演算器から出力された演算結果に対しては、α=1.0
の場合は補正を行って使用するようにしている場合が多
いが、これでは回路規模が大きくなるという問題があ
る。特に、近年このような演算回路は集積回路上に構成
したいという要望があるが、その場合にこのような補正
回路は、集積回路の外部に設けると装置規模が大きくな
り、また内部に設けるとチップ上の回路面積が大きくな
るという問題が生じ、回路構成上無くしたいという要望
がある。
【0010】また、このような3次元コンピュータグラ
フィクスシステムに係わる画像処理回路を集積回路上に
構成する場合には、このような線形補間演算器を使用し
て積和演算を行わせたいという要望がある。しかしなが
ら、これまでは、積を算出する部分と和を算出する部分
が2段階となり2つの演算器で構成する形となり、回路
規模的にも処理速度的にも改善が望まれていた。
【0011】したがって、本発明の目的は、補間係数α
=1.0の場合においても適切に元のデータが得られる
ような演算を行うことができる線形補間演算装置であっ
て、積和演算をも高速に行うことができ、一方で回路規
模はほとんど増加せず集積回路化に適したような演算装
置を提供することにある。また、本発明の目的は、その
ような演算装置を適用することにより、たとえば、テク
スチャマッピング処理、フォグ演算、ハイライト演算な
どの画像処理が高速に効率よく行え、さらには集積回路
化に適したような画像処理装置を提供することにある。
【0012】
【課題を解決するための手段】本願発明者は、前述した
ような誤差は、αについて、0xFF(255)を1.
0に対応させようとしているために誤差が生じることを
考えると、この場合にさらにAを加算し、α+1が25
6となるようにすることで誤差をなくすことができると
考えた。そして、図5に示した回路の基本式であるA×
α+B× ̄α+Bに対して、α=1.0の時に+Bの項
を+Aに切り替えれば、このAの加算が行えることを見
いだした。そして、さらに積和演算を行うための新たな
項をも付加して、補正乗算、線形補間演算、および、積
和演算を行える演算装置およびそれを好適に画像処理に
適用できるようにした画像処理装置を発明した。
【0013】したがって、本発明の演算装置は、各々所
定ビット幅の任意の値A,Bと、所定のビット幅で0≦
α≦1の値をとる係数αに対して、A×α+B×(1−
α)の演算を行い、上位所定ビットを演算結果として得
る演算装置であって、α=1の場合、加算値Fとして値
Aを選択し、α≠1の場合、前記加算値Fとして値Bを
選択する加算値選択手段と、前記選択された加算値Fに
基づいて、A×α+B× ̄α+F(ただし、 ̄αはαの
ビット反転を示す。)の演算を行う演算手段とを有す
る。
【0014】好適には、前記演算手段は、係数αの各ビ
ットごとに、当該ビットが1の場合は値Aを選択し、当
該ビットが0の場合は値Bを選択し、該選択された値を
当該ビットに対応する位置にシフトさせて部分積を生成
する部分積生成手段と、前記選択された加算値Fおよび
前記生成された前記αのビット数分の部分積とを加算す
る加算手段とを有する。特定的には、前記加算手段は、
1ビットの加算器をツリー状に構成したwallace
_tree型アーキテクチャーにより構成される。
【0015】また、本発明の他の演算装置は、各々所定
ビット幅の任意の値A,B,Cと、所定のビット幅で0
≦α≦1の値をとる係数αに対して、A×α+B×(1
−α)+Cの演算を行い、上位所定ビットを演算結果と
して得る演算装置であって、α=1の場合、加算値Fと
して値Aを選択し、α≠1の場合、前記加算値Fとして
値Bを選択する加算値選択手段と、前記選択された加算
値Fに基づいて、A×α+B× ̄α+F+C(ただし、
 ̄αはαのビット反転を示す。)の演算を行う演算手段
とを有する。
【0016】また、本発明の画像処理装置は、各々所定
ビット幅の任意の値A,Bと、所定のビット幅で0≦α
≦1の値をとる係数αに対して、A×α+B×(1−
α)の演算を行い、上位所定ビットを演算結果として得
る演算装置であって、α=1の場合、加算値Fとして値
Aを選択し、α≠1の場合、前記加算値Fとして値Bを
選択する加算値選択手段と、前記選択された加算値Fに
基づいて、A×α+B× ̄α+F(ただし、 ̄αはαの
ビット反転を示す。)の演算を行う演算手段とを有する
演算装置と、所定の第1のモードの時に、前記演算装置
に対して、前記値Aとしてテクスチャマッピングデータ
を、前記係数αとしてテクスチャが張り付けられる側の
画像データを、前記値Bとして0を、各々入力する入力
制御手段とを有する。
【0017】好適には、前記入力制御手段は、所定の第
2のモードの時に、前記演算装置に対して、前記値Aと
して画素データを、係数αとしてフォグ係数を、前記値
Bとしてフォグカラーを、各々入力する。
【0018】また、本発明の他の画像処理装置は、各々
所定ビット幅の任意の値A,BおよびCと、所定のビッ
ト幅で0≦α≦1の値をとる係数αに対して、A×α+
B×(1−α)+Cの演算を行い、上位所定ビットを演
算結果として得る演算装置であって、α=1の場合、加
算値Fとして値Aを選択し、α≠1の場合、前記加算値
Fとして値Bを選択する加算値選択手段と、前記選択さ
れた加算値Fに基づいて、A×α+B× ̄α+F+C
(ただし、 ̄αはαのビット反転を示す。)の演算を行
う演算手段とを有する演算装置と、所定の第1のモード
の時に、前記演算装置に対して、前記値Aとしてテクス
チャマッピングデータを、前記係数αとしてテクスチャ
が張り付けられる側の画像データを、前記値Bおよび値
Cとして0を、各々入力する入力制御手段とを有する。
【0019】好適には、前記入力制御手段は、所定の第
2のモードの時に、前記演算装置に対して、前記値Aと
して画素データを、係数αとしてフォグ係数を、前記値
Bとしてフォグカラーを、前記値Cとして0を、各々入
力する。また好適には、前記入力制御手段は、所定の第
3のモードの時に、前記演算装置に対して、前記値Aと
してテクスチャマッピングデータを、前記係数αとして
環境光を示す値を、前記値Bとして0を、前記値Cとし
て特定の光源の光を示す値を、各々入力する。
【0020】
【発明の実施の形態】本発明の一実施の形態について図
1〜図5を参照して説明する。本実施の形態において
は、家庭用ゲーム機などに適用される、任意の3次元物
体モデルに対する所望の3次元画像をディスプレイ上に
高速に表示する3次元コンピュータグラフィックスシス
テムに、本発明の演算装置および画像処理装置を適用し
た場合について説明する。
【0021】まず、その3次元コンピュータグラフィッ
クスシステムについて図1を参照して説明する。この3
次元コンピュータグラフィックスシステム1は、立体モ
デルを単位図形である三角形(ポリゴン)の張り合わせ
として表現しておき、このポリゴンを描画することで表
示画面の各画素の色を決定しディスプレイに表示するポ
リゴンレンダリング処理を行うシステムである。また、
3次元コンピュータグラフィックスシステム1において
は、平面を表わす(x、y)座標のほかに、奥行きを表
わすz座標を用いて3次元物体を表わし、またこのx、
y、zの3つの座標で3次元空間内の任意の1点を特定
する。
【0022】図1は、その3次元コンピュータグラフィ
ックスシステム1の構成を示すブロック図である。3次
元コンピュータグラフィックスシステム1は、入力部
2、3次元画像生成装置3および表示装置4を有する。
また、3次元画像生成装置3は、ジオメトリ演算部3
2、パラメータ演算部33、画素発生部34、マッピン
グ部35、テクスチャメモリ36、メモリ制御部37、
画像メモリ38およびディスプレイ制御部39を有す
る。
【0023】まず、各部の構成・機能について説明す
る。入力部2は、3次元画像生成装置3に対して、表示
対象の立体モデルのデータを入力する入力部である。本
実施の形態においては、3次元コンピュータグラフィッ
クスシステム1は家庭用ゲーム機に適用されているの
で、入力部2は、その家庭用ゲーム機のゲーム自体を制
御する主制御装置などに接続される。その主制御装置に
おいては、ゲームの進行状況などに基づいて表示する画
面を決定し、その画面表示に必要な立体モデルを選択
し、その表示方法の情報を生成する。したがって入力部
2は、家庭用ゲーム機の主制御装置より、この表示対象
の立体モデルのポリゴンデータなどの情報を受け取り、
3次元画像生成装置3へ入力するのに適した形態に変換
するなどして、3次元画像生成装置3のジオメトリ演算
部32に入力する。なお、その入力されるポリゴンのデ
ータは、各頂点のx,y,z座標データおよびカラー、
透明度、テクスチャなどの付随データである。
【0024】ジオメトリ演算部32は、入力部2より入
力されたポリゴンを、3次元空間中の所望の位置に配置
させその位置におけるポリゴンデータを生成する。具体
的には、ポリゴンの各頂点(x、y、z)ごとに、並進
変換、平行変換および回転変換などの幾何学的変換処理
(ジオメトリ変換処理という場合もある)を行う。ジオ
メトリ変換処理を行ったポリゴンデータは、パラメータ
演算部33に出力される。
【0025】パラメータ演算部33は、ジオメトリ演算
部32から入力されたポリゴンのデータ、すなわち、ポ
リゴンの各頂点のデータに基づいて、画素発生部34に
おいてポリゴン内部の画素データを発生するために必要
なパラメータを求め、画素発生部34に出力する。具体
的にはたとえば、カラー、奥行きおよびテクスチャの傾
きの情報などを求める。
【0026】画素発生部34は、ジオメトリ演算部32
でジオメトリ変換処理が行われたポリゴンデータ、およ
び、パラメータ演算部33で求められたパラメータに基
づいて、ポリゴンの各頂点間を線形補間してポリゴン内
部およびエッジ部分のの画素データを発生する。また画
素発生部34は、画素データの表示に対応した所定の2
次元平面上でのアドレスの生成を行う。生成された画素
データおよびアドレスは順次マッピング部35に入力さ
れる。
【0027】マッピング部35は、画素発生部34で生
成された画素データおよびアドレスを読み出し、テクス
チャマッピング処理などを行って、各画素に対するカラ
ー値を決定する。具体的には、マッピング部35は、テ
クスチャメモリ36に格納されているテクスチャデータ
を用いてテクスチャマッピング処理を行い、さらに所望
のフォグカラーおよびフォグ係数のデータを用いてフォ
グ演算を行う。なお、これらの処理は後に詳細に説明す
る演算装置を用いて行う。これらの処理を行った画素デ
ータおよびアドレスは、メモリ制御部37に出力され
る。
【0028】テクスチャメモリ36は、マッピング部3
5でテクスチャマッピングする際に用いるテクスチャパ
タンを記憶しておくメモリである。本実施の形態におい
て、このテクスチャメモリ36には、テクスチャデータ
がインデックスデータで記憶されている。
【0029】メモリ制御部37は、マッピング部35か
ら入力される画素データおよびアドレス、および、既に
画像メモリ38に記憶されている対応する画素データに
基づいて、新たな画素データを生成し、画像メモリ38
に記憶する。すなわち、メモリ制御部37は、マッピン
グ部35から入力されるアドレスに対応した画素データ
を画像メモリ38から読み出し、その画素データと、マ
ッピング部35から入力された画素データとを用いて、
所望の画素演算処理を行い、得られた画素データを画像
メモリ38へ書き込む。また、メモリ制御部37は、デ
ィスプレイ制御部39から表示領域が指定された場合に
は、その表示領域の画素データを、画像メモリ38から
読み出し、ディスプレイ制御部39に出力する。
【0030】画像メモリ38は、表示用の画像データを
記録するメモリであり、実質的に同時にアクセスするこ
とができる2つのメモリバッファ、フレームバッファと
Zバッファを有する。フレームバッファには、各画素の
カラー情報であるフレームデータが格納される。また、
Zバッファには、各画素の奥行き情報(Z値)であるZ
データが格納される。
【0031】ディスプレイ制御部39は、メモリ制御部
37を介して画像メモリ38より読み出した表示領域の
画素データを、表示装置4により表示可能なたとえば所
定のアナログ信号に変換し、表示装置4に出力する。な
お、これに先立ちディスプレイ制御部39は、メモリ制
御部37に対して、表示すべき表示領域の画素データの
要求を行う。
【0032】表示装置4は、本実施の形態においては、
通常家庭などで用いられているビデオ入力端子などを有
するテレビジョン受信機である。3次元画像生成装置3
のディスプレイ制御部39からは、ビデオ信号入力端子
を介してアナログビデオ信号が入力され、その信号に基
づいて3次元映像を画面上に表示する。
【0033】次に、この3次元コンピュータグラフィッ
クスシステム1の動作について説明する。まず、家庭用
ゲーム機のゲーム自体を制御する主制御装置などにおい
て、表示する3次元画像が決定されると、その画面表示
に必要な立体モデルの情報が入力部2に入力される。入
力部2はこの情報に基づいて、その画像を表示するため
の立体モデルのポリゴンデータを3次元画像生成装置3
に入力する。3次元画像生成装置3に入力された各ポリ
ゴンデータは、まず、ジオメトリ演算部32において、
画面表示のために3次元空間中の所望の位置に配置され
るように、並進変換、平行変換および回転変換などのジ
オメトリ変換処理が行われる。
【0034】次に、座標変換の行われたポリゴンデータ
に対して、パラメータ演算部33においてポリゴン内部
の画素データを発生するために必要なパラメータが求め
られ、画素発生部34において、実際にポリゴンの各頂
点間を線形補間してポリゴン内部およびエッジ部分の画
素データが発生される。発生された画素データは、順次
マッピング部35に入力される。マッピング部35にお
いては、テクスチャメモリ36に記録されているインデ
ックスデータであるテクスチャパタンデータを、リアル
カラーデータに変換し、これを用いてテクスチャマッピ
ング処理を行い、さらにフォグ演算を行い、生成した画
素データをメモリ制御部37を介して画像メモリ38に
記憶する。なお、この時に、ハイライト処理を行う場合
には、テクスチャパタンデータに対して予めハイライト
演算を行っておく。
【0035】画像メモリ38に記憶された画素データ
は、同様の経路により入力される他の画素データや任意
の制御データに基づいて適宜所望の処理が行われる。こ
れにより画像メモリ38には常に最新の画像データが格
納され、画面表示に供される。すなわち、表示装置4に
表示するための所定の領域のデータの出力の要求がディ
スプレイ制御部39からメモリ制御部37に対して行わ
れ、その領域の画素データが適宜画像メモリ38から読
み出され、ディスプレイ制御部39において画面表示用
の所定の信号に変換され、表示装置4に出力される。こ
れにより、表示装置4には、所望の画像が画面に表示さ
れる。
【0036】次に、マッピング部34内に設けられ、前
述したようなテクスチャマッピング処理、フォグ演算お
よびハイライト演算を行うための演算装置について、図
2を参照して説明する。図2は、その演算装置の構成を
示すブロック図である。演算装置100は、マルチプレ
クサ110、演算器120およびレジスタ140を有す
る。
【0037】マルチプレクサ110は、演算器120で
所望の演算が行われるように、演算装置100に対して
印加される複数の変数より所定の変数を選択して演算器
120に入力する。マルチプレクサ110には、外部よ
り、テクスチャーマッピングデータRt、テクスチャが
張り付けられる側の画像データRf、フォグカラーRf
g、フォグ係数f、特定の環境光Dおよび特定の光源の
光Eなどが、また、フォグ演算される前のデータRrと
して後述するレジスタ140の出力が、各々入力され
る。マルチプレクサ110は、図示せぬ3次元画像生成
装置3の制御部より別途入力される、乗算を行うのか積
和演算を行うのかフォグ演算を行うのかを示すモードコ
ントロール信号に基づいて、A×α+B×(1−α)+
Cの演算の各変数となるデータをこれらの入力データよ
り各々選択し、後述する演算器120に出力する。
【0038】より具体的には、テクスチャマッピングを
行う場合で、乗算を行う場合には、演算器120の変数
AとしてテクスチャーマッピングデータRtを、変数α
としてテクスチャが張り付けられる側の画像データRf
を、変数Bおよび変数Cとして0を各々選択し、演算器
120に出力する。また、フォグ演算を行う場合には、
演算器120の変数Aとしてフォグ演算される前のデー
タRrを、変数αとしてフォグ係数fを、変数Bとして
フォグカラーRfgを、変数Cとして0を各々選択し、
演算器120に出力する。さらに、ハイライト演算など
の乗算を行う場合には、演算器120の変数Aとしてテ
クスチャマッピングデータRtを、変数αとして環境光
Dを、変数Bとして0を、変数Cとして特定の光源の光
Eを各々選択し、演算器120に出力する。
【0039】演算器120は、本発明に係わり、8ビッ
トのA×α+B×(1−α)+Cの演算を、α=1.0
(0xFF)の場合でも適切な結果が得られるように行
う演算器である。この演算器120の構成について図3
〜図5を参照して説明する。図3は、演算器120にお
ける演算方法およびその構成を説明するための図であ
り、A×α+B×(1−α)+Cが、補正項F、変数α
のビットに対応して選択された部分積out_0〜ou
t7、および、積和演算項Cを、図示のごとくシフトさ
せて加算することにより求めることを示している。
【0040】補正項Fは、α=0xFF(α=1.0)
の場合にはAを、それ以外の場合にはBを選択した値で
ある。各部分積out_0〜out_7は、αの各ビッ
トごとに、そのビットが1であればAを選択し、0であ
ればBを選択した値である。これらの選択したデータ
は、αのそのビット番号分左にシフトさせて加算の要素
とされる。なお、αのビット番号はLSB(20 の桁)
がビット0であり、MSB(27 の桁)がビット7であ
る。したがって、αのLSB(20 の桁)の値が1であ
ればout_0はAであり、0であればout_0はB
となる。また、αのMSB(27 の桁)値が1であれば
out_7はAであり、0であればout_0はBであ
り、この値を左に7ビットシフトさせた値が加算され
る。積和演算項Cは、8ビット×8ビットの乗算結果の
上位8ビットをとって8ビットの演算結果を得た結果に
さらにこの積和演算項Cが加算できるように、左に8ビ
ットシフトさせて加算される。
【0041】演算器120の加算器130は、前述した
ように得られて、各々桁がシフトされた補正項F、各部
分積out_0〜out_7および積和演算項Cを加算
し、さらにその上位8ビットを演算結果として出力す
る。本実施の形態において、加算器130は、wall
ace_tree型のア−キテクチャーの加算器であ
る。この、wallace_tree型ア−キテクチャ
ーの加算器は、その構成の一部を図4に示すように、1
ビットの加算器を順にツリ−状に配置した構成の加算器
である。
【0042】レジスタ140は、演算器120行われた
演算結果を一旦記憶し、外部に出力するとともに、マル
チプレクサ110に再入力するためのレジスタである。
テクスチャマッピングを行ったデータに対してフォグ演
算を行う場合などに、このレジスタ140に記憶された
結果がマルチプレクサ110を介して演算器120に再
入力される。
【0043】このような構成の演算装置100におい
て、テクスチャマッピング、フォグ演算、および、ハイ
ライト演算などの3次元画像生成装置3のマッピング部
35における処理が行われる。これらの処理について具
体的に説明する。なお、本実施の形態においては、テク
スチャマッピングの際は通常の乗算を行い、フォグ演算
の場合には線形補間演算を行い、ハイライト演算の際に
は積和演算を行うものとする。
【0044】テクスチャマッピングを行う場合には、乗
算モードを示すモードコントロール信号がマルチプレク
サ110に入力される。これによりマルチプレクサ11
0において、前述したように、演算器120における変
数AとしてテクスチャーマッピングデータRtが、変数
αとしてテクスチャが張り付けられる側の画像データR
fが、変数Bおよび変数Cとして0が各々選択され、演
算器120に入力される。その結果、演算器120で
は、Rt×Rfの乗算が行われ、テクスチャマッピング
が行われる。
【0045】フォグ演算を行う場合には、線形補間演算
モードを示すモードコントロール信号がマルチプレクサ
110に入力される。これによりマルチプレクサ110
において、演算器120における変数Aとしてフォグ演
算される前のデータRrが、変数αとしてフォグ係数f
が、変数BとしてフォグカラーRfgが、変数Cとして
0が各々選択され、演算器120に入力される。その結
果、演算器120では、Rr×f+Rfg×(1−f)
の線形補間演算が行われ、各画素にフォグ効果が印加さ
れる。なおこの時、演算器120においては前述したよ
うな補正が行われているので、フォグ係数fが1.0
(0xFF)の場合には、フォグカラーRfgに全く影
響されないフォグ演算される前のデータが演算器120
より出力される。
【0046】さらに、ハイライト演算を行う場合には、
積和演算モードを示すモードコントロール信号がマルチ
プレクサ110に入力される。これによりマルチプレク
サ110において、変数Aとしてテクスチャマッピング
データRtが、変数αとして環境光Dが、変数Bとして
0が、変数Cとして特定の光源の光Eが各々選択され、
演算器120に入力される。その結果、演算器120で
は、Rt×D+Eの積和演算が行われ、各画素のハイラ
イト効果が印加される。
【0047】このように、本実施の形態の演算装置10
0においては、演算器120において、A×α+B×
(1−α)を計算する際に、αが0xFFの時にはAを
加算する補正を行っており、αが0xFFの時、すなわ
ち数学的には1.0の時の計算結果の誤差を無くすこと
ができる。またこの補正を行う際に、A×α+B×(1
−α)を展開したA×α+B× ̄α+Bの+Bの部分を
+Aに置き換えるようにして補正を行っているので、α
の値によってAかBかを選択するセレクタを追加するの
みでこの補正を行うことができる。
【0048】またこの演算器120においては、A×α
+B×(1−α)+Cの演算が行えるので、変数として
入力する値に応じて、補正乗算、積和演算、線形補間演
算などを全て行うことができる。また、その際に、演算
器120はwallace_tree型ア−キテクチャ
ーの加算器により各部分積や補正項、積和演算項を加算
しているので、回路規模や遅延時間の増加を最小限にす
ることができる。たとえば集積回路上にこの演算器12
0を構成する場合には、この回路の面積の増加を最小限
に抑え、ほぼ面積の増加なくしてこの演算器120の回
路を実現できる。
【0049】またこれにより、この演算装置100を適
用した3次元画像生成装置3においては、フォグ係数f
が1.0(0xFF)の場合には、フォグカラーRfg
に全く影響されないフォグ演算される前のデータが得ら
れ、適切な画像データが得られる。また、テクスチャマ
ッピング、フォグ演算、ハイライト演算などを、全てこ
の演算装置100を用いて行うことができるので、たと
えば3次元画像生成装置3を集積回路上に構成する場合
には、効率よく回路を構成することができ、回路規模が
小さく高機能な3次元画像生成装置3を提供することが
できる。
【0050】なお、本発明は本実施の形態に限られるも
のではなく、種々の改変が可能である。たとえば、前述
した演算装置100の演算器120においては、補正項
Fとして、α=0xFF(α=1.0)の場合にはA
を、それ以外の場合にはBを選択するようにした。しか
し、α=0xFF(α=1.0)の場合の補正項は、A
にすることに限られるものではない。A以上の値であれ
ば、適切に補正が行えるので、たとえば、A+Bを補正
項とするようにしてもよい。また、たとえば他の構成部
により生成されるA以上の値をとることが確かな任意の
値を用いて、α=0xFFの場合の補正項としてよい。
【0051】また、演算器120の加算器130は、w
allace_tree型アーキテクチャーの加算器と
したが、適切な演算結果が得られることのみを目的とす
るのであれば、この加算器の構成は任意でよい。たとえ
ば、アレイ型、キャリーセーブ型など、通常知られてい
る任意の加算器で構成してよい。ただし、遅延時間や回
路面積などを考慮すると、本実施の形態のようなwal
lace_tree型アーキテクチャーの加算器が有効
である。
【0052】また、前述した演算器120においては、
8ビットの処理系を用いて説明したが、この変数などの
ビット幅は8ビットに限られるものではなく、16ビッ
ト、32ビットなどを初めとして、任意のビット幅でよ
い。また、本実施の形態においては、演算器120を3
次元画像生成装置3に適用した場合を例示したが、その
他の任意の装置に適用してよい。
【0053】
【発明の効果】以上説明したように、本発明によれば、
補間係数α=1.0の場合においても適切に元のデータ
が得られるような演算を行うことができる線形補間演算
装置であって、積和演算をも高速に行うことができ、一
方で回路規模はほとんど増加せず集積回路化に適したよ
うな演算装置を提供することができる。また、たとえ
ば、テクスチャマッピング処理、フォグ演算、ハイライ
ト演算などの画像処理が高速に効率よく行え、さらには
集積回路化に適したような画像処理装置を提供すること
ができる。
【図面の簡単な説明】
【図1】本発明の一実施の形態の3次元コンピュータグ
ラフィックスシステムの構成を示すブロック図である。
【図2】図1に示した3次元コンピュータグラフィック
スシステムのマッピング部内に設けられる、本発明に係
わる演算装置の構成を示すブロック図である。
【図3】図2に示した演算装置の演算器における演算方
法およびその構成を説明するための図である。
【図4】図3に示した演算器の加算器の構成を説明する
ための図である。
【図5】従来の乗算器の演算方法およびその構成を説明
するための図である。
【符号の説明】
1…3次元コンピュータグラフィックスシステム、2…
入力部、3…3次元画像生成装置、4…表示装置、32
…ジオメトリ演算部、33…パラメータ演算部、34…
画素発生部、35…マッピング部、36…テクスチャメ
モリ、37…メモリ制御部、38…画像メモリ、39…
ディスプレイ制御部、100…演算装置、110…マル
チプレクサ、120…演算器、130…加算器、140
…レジスタ

Claims (14)

    【特許請求の範囲】
  1. 【請求項1】各々所定ビット幅の任意の値A,Bと、所
    定のビット幅で0≦α≦1の値をとる係数αに対して、
    A×α+B×(1−α)の演算を行い、上位所定ビット
    を演算結果として得る演算装置であって、 α=1の場合、加算値Fとして値Aを選択し、α≠1の
    場合、前記加算値Fとして値Bを選択する加算値選択手
    段と、 前記選択された加算値Fに基づいて、A×α+B× ̄α
    +F(ただし、 ̄αはαのビット反転を示す。)の演算
    を行う演算手段とを有する演算装置。
  2. 【請求項2】前記演算手段は、 係数αの各ビットごとに、当該ビットが1の場合は値A
    を選択し、当該ビットが0の場合は値Bを選択し、該選
    択された値を当該ビットに対応する位置にシフトさせて
    部分積を生成する部分積生成手段と、 前記選択された加算値Fおよび前記生成された前記αの
    ビット数分の部分積とを加算する加算手段とを有する請
    求項1記載の演算装置。
  3. 【請求項3】前記加算手段は、1ビットの加算器をツリ
    ー状に構成したwallace_tree型アーキテク
    チャーにより構成されることを特徴とする請求項2記載
    の演算装置。
  4. 【請求項4】各々所定ビット幅の任意の値A,B,C
    と、所定のビット幅で0≦α≦1の値をとる係数αに対
    して、A×α+B×(1−α)+Cの演算を行い、上位
    所定ビットを演算結果として得る演算装置であって、 α=1の場合、加算値Fとして値Aを選択し、α≠1の
    場合、前記加算値Fとして値Bを選択する加算値選択手
    段と、 前記選択された加算値Fに基づいて、A×α+B× ̄α
    +F+C(ただし、 ̄αはαのビット反転を示す。)の
    演算を行う演算手段とを有する演算装置。
  5. 【請求項5】前記演算手段は、 係数αの各ビットごとに、当該ビットが1の場合は値A
    を選択し、当該ビットが0の場合は値Bを選択し、該選
    択された値を当該ビットに対応する位置にシフトさせて
    部分積を生成する部分積生成手段と、 前記選択された加算値F、前記生成された前記αのビッ
    ト数分の部分積および前記Cとを加算する加算手段とを
    有する請求項4記載の演算装置。
  6. 【請求項6】前記各手段は、集積回路上に構成されるこ
    とを特徴とする請求項5記載の演算装置。
  7. 【請求項7】各々所定ビット幅の任意の値A,Bと、所
    定のビット幅で0≦α≦1の値をとる係数αに対して、
    A×α+B×(1−α)の演算を行い、上位所定ビット
    を演算結果として得る演算装置であって、α=1の場
    合、加算値Fとして値Aを選択し、α≠1の場合、前記
    加算値Fとして値Bを選択する加算値選択手段と、前記
    選択された加算値Fに基づいて、A×α+B× ̄α+F
    (ただし、 ̄αはαのビット反転を示す。)の演算を行
    う演算手段とを有する演算装置と、 所定の第1のモードの時に、前記演算装置に対して、前
    記値Aとしてテクスチャマッピングデータを、前記係数
    αとしてテクスチャが張り付けられる側の画像データ
    を、前記値Bとして0を、各々入力する入力制御手段と
    を有する画像処理装置。
  8. 【請求項8】前記入力制御手段は、所定の第2のモード
    の時に、前記演算装置に対して、前記値Aとして画素デ
    ータを、係数αとしてフォグ係数を、前記値Bとしてフ
    ォグカラーを、各々入力する請求項7記載の画像処理装
    置。
  9. 【請求項9】前記演算手段は、 係数αの各ビットごとに、当該ビットが1の場合は値A
    を選択し、当該ビットが0の場合は値Bを選択し、該選
    択された値を当該ビットに対応する位置にシフトさせて
    部分積を生成する部分積生成手段と、 前記選択された加算値Fおよび前記生成された前記αの
    ビット数分の部分積とを加算する加算手段とを有する請
    求項8記載の画像処理装置。
  10. 【請求項10】各々所定ビット幅の任意の値A,Bおよ
    びCと、所定のビット幅で0≦α≦1の値をとる係数α
    に対して、A×α+B×(1−α)+Cの演算を行い、
    上位所定ビットを演算結果として得る演算装置であっ
    て、α=1の場合、加算値Fとして値Aを選択し、α≠
    1の場合、前記加算値Fとして値Bを選択する加算値選
    択手段と、前記選択された加算値Fに基づいて、A×α
    +B× ̄α+F+C(ただし、 ̄αはαのビット反転を
    示す。)の演算を行う演算手段とを有する演算装置と、 所定の第1のモードの時に、前記演算装置に対して、前
    記値Aとしてテクスチャマッピングデータを、前記係数
    αとしてテクスチャが張り付けられる側の画像データ
    を、前記値Bおよび値Cとして0を、各々入力する入力
    制御手段とを有する画像処理装置。
  11. 【請求項11】前記入力制御手段は、所定の第2のモー
    ドの時に、前記演算装置に対して、前記値Aとして画素
    データを、係数αとしてフォグ係数を、前記値Bとして
    フォグカラーを、前記値Cとして0を、各々入力する請
    求項10記載の画像処理装置。
  12. 【請求項12】前記入力制御手段は、所定の第3のモー
    ドの時に、前記演算装置に対して、前記値Aとしてテク
    スチャマッピングデータを、前記係数αとして環境光を
    示す値を、前記値Bとして0を、前記値Cとして特定の
    光源の光を示す値を、各々入力する請求項11記載の画
    像処理装置。
  13. 【請求項13】前記演算手段は、 係数αの各ビットごとに、当該ビットが1の場合は値A
    を選択し、当該ビットが0の場合は値Bを選択し、該選
    択された値を当該ビットに対応する位置にシフトさせて
    部分積を生成する部分積生成手段と、 前記選択された加算値F、前記生成された前記係数αの
    ビット数分の部分積および前記Cとを加算する加算手段
    とを有する請求項12記載の画像処理装置。
  14. 【請求項14】前記各手段は、集積回路上に構成される
    ことを特徴とする請求項13記載の画像処理装置。
JP01743498A 1998-01-29 1998-01-29 演算装置および画像処理装置 Expired - Lifetime JP3985321B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP01743498A JP3985321B2 (ja) 1998-01-29 1998-01-29 演算装置および画像処理装置
CA002260345A CA2260345C (en) 1998-01-29 1999-01-25 Signal processing apparatus and image processing apparatus
US09/237,833 US6373494B1 (en) 1998-01-29 1999-01-27 Signal processing apparatus and image processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP01743498A JP3985321B2 (ja) 1998-01-29 1998-01-29 演算装置および画像処理装置

Publications (2)

Publication Number Publication Date
JPH11212955A true JPH11212955A (ja) 1999-08-06
JP3985321B2 JP3985321B2 (ja) 2007-10-03

Family

ID=11943926

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01743498A Expired - Lifetime JP3985321B2 (ja) 1998-01-29 1998-01-29 演算装置および画像処理装置

Country Status (3)

Country Link
US (1) US6373494B1 (ja)
JP (1) JP3985321B2 (ja)
CA (1) CA2260345C (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007219714A (ja) * 2006-02-15 2007-08-30 Dainippon Printing Co Ltd 線形補間演算器およびその設計方法
JP2007226422A (ja) * 2006-02-22 2007-09-06 Dainippon Printing Co Ltd 線形補間演算器およびその設計方法
JP2008112391A (ja) * 2006-10-31 2008-05-15 Fujitsu Ltd フォグ効果処理方法、グラフィックス装置、グラフィックス用半導体集積回路装置及びフォグ効果処理プログラム
US7840623B2 (en) 2005-09-26 2010-11-23 Dai Nippon Printing Co., Ltd. Interpolator and designing method thereof

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6950083B1 (en) * 1997-12-18 2005-09-27 Mustek Systems Inc. Electronic projector capable of saving and displaying a user-defined logo
JP2001118049A (ja) * 1999-10-14 2001-04-27 Sega Corp マトリクス演算器を有する画像処理装置
JP2003162410A (ja) * 2001-11-27 2003-06-06 Mitsubishi Electric Corp リニアフィルタ回路
USD838288S1 (en) * 2009-02-24 2019-01-15 Tixtrack, Inc. Display screen or portion of a display screen with a computer generated venue map and a pop-up window appearing in response to an electronic pointer
CN104011658B (zh) * 2011-12-16 2017-04-05 英特尔公司 用于提供向量线性内插功能的指令和逻辑

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
JP2637931B2 (ja) * 1994-12-01 1997-08-06 インターナショナル・ビジネス・マシーンズ・コーポレイション テクスチャ・マッピングを行うコンピュータ・システム
US5835096A (en) * 1995-03-24 1998-11-10 3D Labs Rendering system using 3D texture-processing hardware for accelerated 2D rendering
US6111584A (en) * 1995-12-18 2000-08-29 3Dlabs Inc. Ltd. Rendering system with mini-patch retrieval from local texture storage
US5844567A (en) * 1996-08-12 1998-12-01 Silicon Graphics, Inc. Computer graphics system and method for texture mapping using triangular interpolation
US6016151A (en) * 1997-09-12 2000-01-18 Neomagic Corp. 3D triangle rendering by texture hardware and color software using simultaneous triangle-walking and interpolation for parallel operation

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7840623B2 (en) 2005-09-26 2010-11-23 Dai Nippon Printing Co., Ltd. Interpolator and designing method thereof
US8265427B2 (en) 2005-09-26 2012-09-11 Dai Nippon Printing Co., Ltd. Interpolator and designing method thereof
US8671126B2 (en) 2005-09-26 2014-03-11 Dai Nippon Printing Co., Ltd. Interpolator and designing method thereof
JP2007219714A (ja) * 2006-02-15 2007-08-30 Dainippon Printing Co Ltd 線形補間演算器およびその設計方法
JP2007226422A (ja) * 2006-02-22 2007-09-06 Dainippon Printing Co Ltd 線形補間演算器およびその設計方法
JP2008112391A (ja) * 2006-10-31 2008-05-15 Fujitsu Ltd フォグ効果処理方法、グラフィックス装置、グラフィックス用半導体集積回路装置及びフォグ効果処理プログラム

Also Published As

Publication number Publication date
CA2260345A1 (en) 1999-07-29
CA2260345C (en) 2007-07-10
US6373494B1 (en) 2002-04-16
JP3985321B2 (ja) 2007-10-03

Similar Documents

Publication Publication Date Title
US6275235B1 (en) High precision texture wrapping method and device
JP3021368B2 (ja) 画素の法線ベクトルを用いたバンプマッピングレンダリング方法及びそれを具現するレンダリング装置
JP3107452B2 (ja) テクスチャマッピング方法およびその装置
US5877769A (en) Image processing apparatus and method
US6172687B1 (en) Memory device and video image processing apparatus using the same
JPH0634748A (ja) レーダ信号表示装置
JPH0916806A (ja) 立体画像処理装置
US20140071124A1 (en) Image processing apparatus
WO1996028794A1 (en) Three-dimensional graphic display device
JP3985321B2 (ja) 演算装置および画像処理装置
US7636095B2 (en) Pixel delta interpolation method and apparatus
US7015930B2 (en) Method and apparatus for interpolating pixel parameters based on a plurality of vertex values
JP2883523B2 (ja) 画像合成装置及び画像合成方法
JP2002202964A (ja) 並列演算装置、エンタテインメント装置、演算処理方法、コンピュータプログラム、半導体デバイス
JP3035571B2 (ja) 画像処理装置
JP3903557B2 (ja) データ変換装置および画像生成装置
US6518969B2 (en) Three dimensional graphics drawing apparatus for drawing polygons by adding an offset value to vertex data and method thereof
JP3064799B2 (ja) テクスチャマッピング装置
EP0425573B1 (en) Texture mapping for computer graphics display controller system
JPH11185052A (ja) 3次元コンピュータグラフィックスのテクスチャマッピング座標計算装置および方法
JP3268484B2 (ja) シェーディング方法およびシェーディング装置
JP4556646B2 (ja) 図形情報生成装置、画像処理装置、情報処理装置、および図形情報生成方法
JP3312560B2 (ja) テクスチャマッピング装置
JP2535814B2 (ja) Crtディスプレイ装置の写像回路
WO1997002546A1 (en) Computer graphics circuit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061212

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070209

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070619

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070702

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100720

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100720

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110720

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110720

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120720

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120720

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130720

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term