JPH03223978A - デジタルシグナルプロセッサ - Google Patents

デジタルシグナルプロセッサ

Info

Publication number
JPH03223978A
JPH03223978A JP2299693A JP29969390A JPH03223978A JP H03223978 A JPH03223978 A JP H03223978A JP 2299693 A JP2299693 A JP 2299693A JP 29969390 A JP29969390 A JP 29969390A JP H03223978 A JPH03223978 A JP H03223978A
Authority
JP
Japan
Prior art keywords
data
input
depth
memory
pixel
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
JP2299693A
Other languages
English (en)
Inventor
Mitsuru Ubusawa
生澤 満
Atsushi Kiuchi
淳 木内
Tetsuya Nakagawa
哲也 中川
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of JPH03223978A publication Critical patent/JPH03223978A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)
  • Dram (AREA)

Abstract

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

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明はパーソナルコンピュータ、ワークステーション
、計算機内部を構成するプロセッサ、もしくはコ・プロ
セッサに係り、Zバッファ法および増分法を用いて、陰
面消去機能を有する三次元コンピュータグラフィックス
を行なう、情報処理装置に関するものであって特にデジ
タルシグナルプロセッサに有効な技術である。
2− [従来の技術] ディジタル・シグナル・プロセッサ(DSP)は、LS
I技術の進歩に伴ってその適用分野を画像処理にまで拡
げてきており、画像生成を高速に実現するプロセッサも
求められるようになってきCいる。原画像自体もプロセ
ッサ自身が生成するものは、コンピュータ・グラフィッ
クスと呼ばれる。
コンピュータ・グラフィックスでは画面上の各画素ごと
に、その画素が表示する物体表面上の点の光強度データ
、通常は赤色、緑色、青色(以下単にR,G、Bとも記
す)に対応する3種類の輝度を計算する。上記のR,G
、Hの光強度データ等を以下、画素データと呼ぶ。通常
まず物体表面上の主要な点、例えば物体の各頂点や粗い
仮想格子上の点等に対して画素データを演算器等により
計算し、これを記憶する。次に、上記主要な点の間に並
ぶ画素データの画素を計算する。その手法として以下に
述べる増分法が知られている。まず画面上の第1の主要
な点の画素データ(例えば緑− 色の光強度)を01とする。次に第1の主要な点に隣接
する第2の主要な点の、対応する画素ブタを02とする
。上記第1と第2の主要な点の間に並ぶ画素の数をnと
する。このとき上記第1と第2の主要な点の間では画素
データが直線的に変化するものと近似する。上記の場合
、1つ画素がずれることに光強度が変化する値をΔGと
すると、ΔG= (G、−G、)/ (n+1)である
。上記第1の主要な点の隣の画素の光強度を01′ と
すれば、 Gi’=G□+ΔG である。隣接する画素に対して加算を順次続ける。
i番目の画素の光強度データG□″は G1’=01−’ +ΔG である。プロセッサの計算では、i=1からnまで上記
を繰り返し計算し、各画素の画素データを求める。これ
を増分法と呼ぶ。
次にコンピュータ・グラフィックスにおいて、複数の物
体を三次元空間に配置したものを、奥行きを考慮して画
面表示する陰面消去機能を有する4− 描画処理が知られている。これは視点から見て、複数の
物体が前後に重なって配置されるとき、前の物体の陰に
なっているあとの物体の表面(以下これを陰面と呼ぶ)
を消去して表示することにより、実際の観察映像に近い
自然な画面を構成する処理である。
陰面消去機能を有する描画処理の代表的な手法として、
Zバッファ法が知られている。2バツフア法は、奥行き
方向のベクトルをZ軸として定義し、各画素の画素デー
タと共に奥行きデータ(Z軸座標のデータ)を記憶し、
三次元空間上の複数の物体を二次元画面上に写像する際
に視点からの各物体の前後関係を判定する手法である。
すなわち、視点からの無限遠点を奥行きデータのゼロと
して二次元画面の全画素の奥行きデータを初期化する。
ついで最初の物体を二次元画面上に写像するときに、初
期化された画素の奥行きデータを物体の表面の奥行きデ
ータに更新する。次に2つめの物体を二次元画面上に写
像するときには、各画素ごとにそれまでの奥行きデータ
と新しく書き込もうとしている物体の奥行きデータとの
大小判定を行なう。その結果、後者の新しい奥行きデー
タが前者の古い奥行きデータより大きいとき、後者の物
体はその画素地点では最も視点に近いことになるので、
その物体の像をその画素に書き込み、同時にその画素の
奥行きデータも更新する。この処理を繰り返すことによ
って、どんなに多くの物体を二次元画面上に写像しても
、その前後関係を正確に表現でき、より手前側にある物
体が表示される。
専用の描画演算ユニットを汎用のディジタル・シグナル
・プロセッサ(DSP)に内蔵し、陰面消去機能を有す
る描画処理を行なう、従来技術による情報処理装置につ
いては、日経データプロ・マイクロブセッサ、MCl−
303,(1989年6月)、第301頁から334頁
において論じられている。Fig、18は、従来技術に
よる情報処理装置のブロック図である。情報処理装置で
あるプロセッサ内部にグラフィック・ユニット970と
呼ぶ専用の描画演算ユニットを持ち、該描6 画演算ユニットによって増分法を用いて複数の画素デー
タとその画素(x+y座標)における奥行きデータ(2
軸座標のデータ)を計算する。
この奥行きデータと、予め外部に記憶された、それ以前
に処理したかあるいは情報処理装置によって初期設定さ
れた同一画素(X+3’座標)の奥行きデータとの大小
判定を行なう。その結果、より手前の奥行きデータを選
択してこれに付随する画素データを浮動小数点レジスタ
付き浮動小数点制御ユニット980へ入力し、これを介
してブタキャッシュ990に保持する。
またこの従来技術では、例えば赤、緑、青色それぞれ8
ビツトのデータを得る場合、1ワード32ビツトのデー
タ中に8ビツトの整数部と2Aビツトの小数部を持たせ
、演算実行後のデータの小数部を切り捨て、32ビツト
のグラフィック・ユニット970に含まれるマージレジ
スタ(図示せず)に画素データをロードしている。そし
て、計算により求めた奥行きデータをあらかじめ外部に
保存しである奥行きデータと大小判定を行ない、その結
果をグラフィック・ユニット970に含まれるマスク用
レジスタ(図示せず)に反映させて陰面消去実行に必要
な画素の出力制御を行なっている。
また、従来より公知のZバッファ法による描画処理を、
Fi、g、19を用いて具体的に示す。(A)は三次元
空間に第1の物体として平面の三角形301を置いたも
のである。X軸方向をスキャンラインとし、Y軸方向に
順にスキャンしていくと、三角形301の像におけるY
軸上のある地点、A点からB点までが二次元画面上に書
かれる画素となる。Fig、19 (B)は三次元空間
に他の物体として平面の三角形302を置いたものであ
る。Fig、19(A)と同様に302の物体を二次元
画面上に最初に書いた場合は、Y軸上のFig、19(
A)と同じ地点では0点からD点までが全て二次元画面
上書かれる画素となる。しかし302を書く前に既に3
01が書かれていた場合には、Fig、19 (C)に
示されるように、物体の前後関係により各画素で書かれ
る物体が異なる。例えば図中F、Hの地点では301が
二次元画面上で視点から見えているが、Gの地点では3
02が見えており、301は302の陰になって視点か
らは見えないので、ここでは301の画像データは書か
れないことになる。
物体301が先に二次元画面上に書かれている場合、二
次元画面各画素は、三角形301が書かれていない画素
についてはZ相データをゼロとして保持され三角形30
1が書かれている画素については、Z軸上の座標が保持
されている。そこへ物体302を書き足すには、各画素
のZ相データと302のその画素地点での2軸座標とを
比較し、大小判定を行なう。もし302のZ軸座標がそ
の画素のZ相データよりも大である時は、302がその
画素地点では最も視点に近いことになるので、302の
画像データをその画素に書き込む。同時にこの時点で最
も視点に近い画像のZ軸座標を保持するためにその画素
の2軸データも更新する。
この手順を繰り返すことにより、どんなに多くの物体を
書く時も、正確に物体間の前後関係を二次 q− 元画面上に描写することができる。
[発明が解決しようとする課題] 1スキャンライン分の処理のフローチャート図を第20
図に示す。
第20図しこ示されているように、二次元画面上のある
画素に物体の画像データを書き込み、さらにその画素の
Z相データを書き換える処理は、毎回必ず行なわれるわ
けではなく、Z相データの大小判定の結果によって実行
/不実行が決定される。
この処理を例えば1987年発行のr TM5320C
25ディジタル・シグナル・プロセッサ ユーザズマニ
ュアル、テキサスインスツルメンツ株式会社」の4−9
〜4−12頁に記載されているような命令セットを持つ
従来の信号処理装置で行なう場合は、条件分岐命令を画
像データ書き込み及びZ軸データ書き込み命令の前に置
き、書き込みの必要な条件が不成立ならば、それらの書
き込み命令ステップを飛び越すというプログラムを書く
ことになる。条件分岐命令とは、プログラムの実行順序
を変更する命令である。つまり、ある条件に従い0 分岐動作を行う場合、分岐先のアドレスにプログラムカ
ウンタ内の値を書換えるステップと、プログラムカウン
タは書換えられた値に従って次の命令が蓄えられている
アドレスを指すステップを要する。いずれにしてもプロ
グラムカウンタの値が条件に従って確定されない限り、
本来のデータ処理は一時中断される。しかも信号処理装
置が多段パイプライン構造を採用している場合は、分岐
命令を実行すると、スループットが大幅にダウンする。
Fig、20の処理ルーチンはプログラムの根幹となる
部分であり、膨大な回数の繰返し処理を行なう部分でも
ある。例えば1024X1024画素を持つ二次元画像
を生成する場合、ひとつの物体を置く度に約百万回Fi
g、20の処理ルーチンを繰り返すことになり、しかも
物体の数に比例して増加する。このように膨大な繰返し
回数の処理ルーチンに分岐命令が存在していると、たと
えそれがほんの1ステツプであったとしても、それを実
行するのに必要な時間はトータルではひと11一 つの物体を置く度に約数百方サイクル時間に及び、分岐
命令の影響は決して小さくない。
従って、上記従来技術のように、非常に多くの繰り返し
実行がされるプログラムの根幹部分に、本来の処理とは
直接関係のない分岐命令を挿入せざるを得ない場合、膨
大な処理時間を空費してしまうという問題があった。
さらに第18図に示される従来の情報処理装置では描画
演算ユニットがその内部で、新たな画素データと古い画
素データの選択結果に基づきデータの書替えを行なって
いる。つまり描画演算ユニットは、入力されたデータを
演算して新たな画素データを生成し、新たな画素データ
と古い画素データとの比較動作を行い、比較した結果。
選択されたデータを外部にあるデータキャッシュ990
に出力する。この様に描画演算ユニットが演算、比較動
作のみならずデータの書替え動作までも行なうためにパ
イプライン処理の数が多くなり、描画処理のように頻繁
に新しい増分計算をする場合、処理のオーバーヘッドが
大きくなるという問題が12− あった。
[課題を解決するための手段] 本発明の1つの手段によれば、画像データ書き込み及び
Z軸データ書き込み命令の前にあった条件分岐命令を取
り除き、代りに画像データ書き込み命令とZ軸データ書
き込み命令を条件付きの書き込み命令に置換する。書き
込み条件は従来例の分岐命令の反転論理とする。すなわ
ち、従来例の条件分岐命令では、前回までの2軸データ
の値が今回二次元画面上に書き込もうとしている物体の
Z軸座標の値よりも大きければ分岐したが、条件つき書
き込み命令では前回までの2軸データの値が今回二次元
画面上に書き込もうとしている物体のZ軸座標の値以下
の時を条件成立として書き込み動作を実行する。条件不
成立の場合は、書き込み動作を行なわず、そのまま次の
ステップへ進む。
書き込み動作の実行/不実行の制御手段は、例えば書き
込み先のメモリ内のアドレスデコーダ出力であるワード
線を、書き込み条件が不成立の場合には全てネゲートし
、同時に書き込みデータの入13− 力を禁止することによって達成される。
本発明の1つの目的は、プグラムカウンタの値を書換え
て分岐動作を行なう分岐命令を用いずに上記処理を行な
い、処理時間の大幅な短縮を達成する手段を提供するこ
とにある。
上記目的を達成するために、条件つきメモリ書き込み命
令を設け、指定された条件が不成立の場合は書き込み動
作を実行しないようにメモリの制御を行なう回路を信号
処理装置内のメモリ回路ブロックに付加したものである
本発明の1つの目的は、3次元グラフィックス画像を表
示する画面上の、それぞれのX+V座標における画像デ
ータおよび該座標における該画像の奥行きを表わす2座
標の値を生成する演算手段と、 上記Xy3’座標の値に対応するアドレス位置に、該座
標の画像データおよび該座標の2座標の値を格納もしく
は入出力するデータメモリと、上記データメモリにデー
タのリード/ライトを行なうためのデータバスと、 14− 上記X+ y座標における新たに生成された画像データ
の新たな2座標の値と、該X+’/座標における既に生
成済みの画像データの古い2座標の値の比較結果に基づ
くデータを生成するフラグレジスタからなり、 上記筋たに生成された画像データの上記筋たな2座標の
値が、上記既に生成済みの画像データの上記古いZ座標
の値よりも前面にある場合には。
上記フラグレジスタの上記データにもとづき、上記筋た
に生成された画像データと新たな2座標の値が、上記デ
ータメモリの対応するアドレス位置に格納されてなる情
報処理装置であって、上記演算手段は演算回路と描画演
算ユニットの2つの回路ブロックを含んでなり、 上記演算回路は、上記画面上の主要なX+ y座標にお
ける上記画像データとZ座標の値を生成してなり、 上記描演算ユニットは、2つの上記主要なX。
y座標の間の複数の)C+’!座標における画像データ
を平均的に補間することによって上記2つの上15− 記主要なX+ y座標によって規定された領域の画像デ
ータとZ座標の値を生成してなることを特徴とする情報
処理装置を実現することである。
1つの目的は、表示画面とその描かれる第1図形の画素
データを蓄えるための、第1メモリ手段と 上記第1図形の各画素の奥行きを示す奥行きブタを蓄え
るための第2メモリ手段と 上記表示画面に描かれる位置を示す第2図形の3次元デ
ータを供給するためのデータ供給手段と上記第2メモリ
手段及び上記データ供給手段にcoupleされる演算
手段と 上記演算手段の演算結果を条件とし、指定された条件が
成立しているとき書き込みを実行させる条件付きデータ
書き込み命令に従って上記データ供給手段が上記演算手
段に供給しているデータを選択的に上記第1及び第2メ
モリ手段に供給する制御手段を含むデジタルシグナルプ
ロセッサを実現することである。
1つの目的は、表示画面に描かれる第1図形の16− 各画素の奥行きを示す奥行きデータを蓄えるためのメモ
リ手段と 上記表示画面に描かれる第2図形の奥行きを示す奥行き
データを供給するためのデータ供給手段と 上記メモリ手段と上記データ供給手段にcoupleさ
れる演算手段と 上記演算手段の演算結果を条件とし、指定された条件が
成立しているとき書き込みを実行させる条件付きデータ
書き込み命令に従って上記データ供給手段が上記演算手
段に供給しているデータを選択的に上記メモリ手段に供
給する制御手段を含むデジタルシグナルプロセッサを実
現することである。
表示画面とその画面に描かれる第1図形の画素データを
蓄えるための第1メモリ手段と上記第1図形の各画素の
奥行きを示す奥行きデータを蓄えるための第2メモリ手
段と 上記表示画面に描かれる位置を示す第2図形の3次元デ
ータを供給するためのデータ供給手段と上記第1.第2
メモリ手段及び上記データ供給手段にcoupleされ
る演算手段と 上記演算手段の演算結果を条件とし、指定された条件が
成立しているとき書き込みを実行させる条件付きデータ
書き込み命令に従って上記データ供給手段が上記演算手
段に供給しているデータを選択的に上記第1及び第2メ
モリ手段に供給する制御手段とを含むデジタルシグナル
プロセッサを実現することである。
[作用] 本発明の手段によれば、補間によるデータ生成処理であ
る奥行きデータ、Rデータ、Gデータ、Bデータの生成
を並列処理で行なう。そしてこのデータの生成処理とそ
の生成結果である新しい奥行きデータの大小判定処理を
パイプライン動作によって実行する。このため画素デー
タとZ座標の値からなる4種類のデータの加算と、Z座
標の値の大小比較判定を高速で行なうことが可能になる
上記の手段により情報処理装置による増分計算と判定処
理を高速化し、描画画素データの転送量8 を向上することが可能になる。また描画演算ユニット内
の画素データ出力制御により生じるパイプライン処理数
を低減し、描画処理実行時のオーバーヘッドを低減する
ことが可能になる。
〔実施例〕
Fig、 1には、本発明のデジタルシグナルプロセッ
サDSPと表示装置との接続関係が示されている。デジ
タルシグナルプロセッサDSPは周知の半導体回路技術
により1つの半導体チップで形成され、ポンディングパ
ッドと電気的に接続される所定の外部端子は、信号線を
介して表示装置が接続される。表示装置は、デジタルシ
グナルプロセッサDSPが所定の処理を行って信号線を
介して送って来たデータを元に、例えばデイスプレィ上
に図形を描くものである。
Fig、 2は、本発明のデジタルシグナルプロセッサ
DSPの一例を示したブロック図である。図中、101
は各物体の三次元空間上の形状及び色等の画像データ(
すなわち各物体の個別データ)を格納しているポリゴン
データメモリ、102は冬物9− 体を合成して形成される最終画像の各画素のZ相データ
を保持する2軸データメモリ、103は各物体を合成し
て形成される最終画像の二次元画像データを保持するフ
レームメモリ、104はデータの算術/論理演算処理を
行なう算術論理演算回路、105は複数のレジスタから
成り、104の演算結果を格納するアキュムレータ、1
06は104の演算結果のデータの属性を反映するコン
デイション・コード・レジスタ、107はデータの乗算
処理を行なう乗算器、108は107の乗算結果を格納
するレジスタ、109,110はアドレスを演算するた
めの算術演算回路、111は109の演算結果を格納し
てアドレスバス115にアドレスを出力するレジスタ、
112は」、 10の演算結果を格納してアドレスバス
116にアドレスを出力するレジスタ、113は109
の加減算に使用するインデックスアドレスを保持するレ
ジスタ、]、14は1.10の加減算に使用するインデ
ックスアドレスを保持するレジスタ、117,118は
101,1.02,103から出力されたデ=20 −タをデータ演算器104,1.07に供給するデータ
バス、119は105,108から出力されたデータを
101,102,103,113,114に供給するた
めのデータバス、120は書き込み命令を実行するかど
うかを判断するために、106で示されている属性情報
を102,103の制御回路へ送るバス、121は1−
08の内容を104へ送るためのバス、122は105
の内容を104へ入力するためのバス、]−23は10
2゜103のデータ書換え動作を制御するための命令信
号を出力する命令デコーダである。ここで、特に制限さ
れないが、表示装置に接続される外部端子は、データバ
ス118に接続される。
ポリゴンデータメモリ101に格納されている各物体の
個別データの表現形式はさまざまな種類が提案されてい
る。また、物体の三次元空間上の形状データを二次元画
像として表示するためには、透視変換の処理が必要であ
るが、この処理の具体的な方法や手順は既に数多く提案
されており、本発明とは直接関係はないので、ここでは
説明しなり\。
以後の実施例の説明では個別物体のデータは透視変換処
理を全て終えたものとして扱う。
個別物体のデータは、最終的には各画素の二次元画面上
の位置を示すx、y相データと、各画素での色合いを示
す画像データと、奥行き方向の位置を示すZ相データと
から成る。各画素のX、Y相データは、フレームメモリ
103.Z相データメモリ102のアドレスに相当する
。通常、メモリのアドレスは一次元であるので、例えば
Y座標をアドレスビット列の上位側X座標を下位側とし
て二次元座標を一次元アドレス化する。この結果、任意
の画素の画像データをフレームメモリ103に書き込む
処理とZ相データをデータメモリ102に書き込む処理
を連続して行なう時には、常に同じアドレスを指してい
れば良いので、102゜103は共通のアドレスバスか
らアドレスを受は取ることができる。101は102,
103とは基本的に独立のアドレスが必要となるので、
別のアドレスバスからアドレスを供給するか、或は時分
割で同じアドレスバスから異なるアドレスを供給する。
Fj、g、2ではアドレスバス及びアドレス演算器を2
つずつ設け、別々のアドレスバスからアドレスを供給す
ることを想定している。ただし、本実施例の処理ではア
ドレス演算器は特に必要ではない。次に個別物体を合成
して最終画像を形成する手順を説明する。
最初に、102,103の全空間を初期化する。
具体的には全空間にオールゼロを書き込むのが一般的で
ある。これはZ相データメモリ102では全空間を無限
遠点に設定し、フレームメモリ103では背景色(黒又
は白)に設定することを意味する。
例えば、 フレームメモリ103はFig、19(A)
で示されている三角形301を表示装置のデイスプレィ
上で描くことができるよう各画素データを蓄えていると
する。その場合、先にも述べたように各画素の二次元画
面上の位置を示すX。
y相データが、フレ−ムメモリ103のアドレスに相当
する。また、Z相データメモリ102も先23 に述べたように各画素の二次元画面上の位置を示すX、
y相データがアドレスに相当する。ポリゴン・データメ
モリ101は、例えば三角形301が描かれる同一デイ
スプレィ上で、Fig、19(B)で示されている三角
形302がどの位置にあるかを示すための各頂点の三次
元画面上の位置を示すデータ、つまり、あらかじめ設定
されたX。
yとZ軸に対応するデータと、各画素での色合いを示す
画像データを蓄える。図示しない命令メモリ中にあらか
じめ書き込まれているポリゴン・データメモリアクセス
用のプログラムを命令デコーダ123がデコードするこ
のデコード動作により形成されたアクセス信号に従って
、ポリゴン・データメモリ101中に蓄えられているデ
ータは、読み出される。以下の説明では、理解を容易に
するために各メモリ101〜103へ所定のデータを設
定後、各ポリゴンを構成する各画素のX相データ、Y相
データ、画像データ、Z相データはアキュムレータ10
5の別々のレジスタに格納されているものとすると、ま
ずX、Y相データから一4 次元アドレスを生成する。これはY相データをX相デー
タに必要なビット数分だけ左シフ1へしてX座標と論理
和演算を算術論理演算器104で行なうことで実現され
る。生成されたアドレスは、105から119,114
..110,112,116を経て102に供給され、
それまでに書き込まれていたZ相データが読み出される
。102から読み出された2軸データはデータバス11
8を経て演算器104に入力し、同時にアキュムレータ
105に格納されていた物体の2軸データもバス]22
を経て104に入力して122経由の入力データから1
18経由の入力データを減算してその結果の属性を10
6に反映する。102から読み出されたZ相データが初
期化された時のままの場合は、減算結果は必ず正となる
。既に幾つかの物体の2軸データが102に書き込まれ
ている場合は、減算結果は正負いずれの可能性も考えら
れる。減算結果が正の場合、書き込もうとしている物体
は、その画素点では少なくとも今までに書き込まれた物
体よりも視点に近いことを意味している。減算結果が負
の場合、書き込もうとしている物体は、その画素点では
今までに書き込まれた物体の陰にあることを意味し、視
点からは見えていないことになる。そこでこの減算結果
が正であることを条件とした条件付きデータ書き込み命
令を使用すると、視点から見えている画素点にだけ、そ
の物体の画像データ、Z相データが103,102に書
き込まれることになる。画像データとZ相データの書込
みはそれぞれ同じ条件付きデータ書き込み命令で行なう
が、書き込み順序はどちらが先でも構わない。以上の処
理手順によって、物体の画像データとZ相データを画素
単位で順次書き込んでいく。
次に条件付きデータ書き込み命令によるデータメモリ1
02及びフレームメモリ103での制御動作例をFig
、 3を用いて説明する。
Fig、 3は、Fj、g、 2のデータメモリ102
或いはフレームメモリ103の内部をより詳細に示した
図である。セレクタ201は命令デコーダ123からの
命令signal 212に従いアドレスバス115と
116のどちらかを選択してアドレスデコーダ202ヘ
アドレスを供給する。アドレスデコーダ202の出力信
号は、論理回路203で与えられた条件判定信号−IN
Hにより有効/無効の制御を受け、論理回路203の出
力信号が各メモリセル206のゲートの開閉を制御する
ワード線207どなる。尚、ここではワード線207が
High レベルの時にメモリセルのゲートがONし、
Low レベルの時にOFFすると仮定している。論理
回路203は、条件判定信号−INHがHj、ghレベ
ルの時、アドレスデコーダ202の出力信号をそのまま
通過させ、Lowレベルの時、アドレスデコーダ202
の出力信号をLowレベルに固定する。
読み出し時、ワード線207によって選択されたメモリ
セル206からデータがデータ線208に出力され、双
方向バッファ205.データI/○回路209を経てデ
ータバス117或いは118に出力される。書込み時、
データバス119から書き込みデータがデータ170回
路209、双方向バッファ205を経てデータ線208
に入力さ27− れ、ワード線207によって選択されたメモリセル20
6に書き込まれる。双方向バッファ2o5は、論理回路
204の出力信号によって人出力の方向を制御される。
論理回路204の出力信号がHighレベルの時、双方
向バッファ205は読み出し方向がONし、Lowレベ
ルの時、書き込み方向がONする。論理回路204は、
条件判定信号INHがHighレベルの時、メモリのラ
イト・イネーブル信号WEをそのまま通過させ、Low
 レベルの時、その出力信号をHighベルに固定する
。ライト・イネーブル信号WEは、書き込みモード時、
Lowレベルとなり、読み出しモード時、Highレベ
ルとなる。データ170回路209は、制御信号CNT
によって双方向バッファ205とデータバスとの接続切
り替えを行なうための回路である。
制御回路210は命令信号211や106がら信号線1
20を介して属性情報を受は取って条件判定信号−IN
H、ライト・イネーブル信号WE−及び制御信号CNT
を生成する。命令信号211はメモリ回路部に関係する
命令を実行するのに必要な28− 制御信号であるが、命令コードそのものとして。
必要な制御信号を制御回路210内部で生成しても構わ
ない。
コンデイション・コード・レジスタ106には通常、デ
ータの正負を示す符号フラグ(N)、データがゼロであ
るかどうかを示すゼロフラグ(Z)、演算した結果がオ
ーバフローしたことを示すオーバフローフラグ(V)、
演算した結果桁上がりまたは桁借りが生じたことを示す
キャリーフラグ(C)等から成っている。先に述べたよ
うな、Z軸データに関する演算結果が正であることを条
件とした条件付きデータ書き込み命令を実行させるのに
必要な情報は、データの正負を示す符号フラグ(N)に
よって得ることが出来る。データが正の時N=O1負の
時N=1とすると、条件付きデータ書き込み命令の条件
は、N=Oとすれば良い。
すなわち、N=Oの時書き込みを行ない、N=1の時は
書き込みを行なわない。
条件付きデータ書き込み命令に従ってまずアドレスバス
116から送られてきたアドレスをセレクタ201を介
してアドレスデコーダ202は入力する。アドレスデコ
ーダ202は入力したアドレスをデコードし、ひとつの
信号線をHigh レベルにする。
制御回路210はコンデイション・コード・レジスタ1
06の例えば符号フラグN=Oという信号が信号線12
0を介して入力されると、条件判定信号−INHをHi
gh レベルとする。そしてアドレスデコーダ202の
出力信号はそのまま論理回路203を通過してワード線
207に出力され、Highレベルとなっている1本の
ワード線に結合するメモリセルを書き込み可能とする。
同時にライト・イネーブル信号WEもそのまま論理回路
204を通過し、書き込みデータがデータバス119か
らデータl102o9.双方向バッファ205を経てデ
ータ線208に入力され、書き込み可能となっているメ
モリセルに書き込まれる。制御回路210はまた、コン
デイション・コード・レジスタ107の符号フラグN=
1という信号が信号線120を介して入力されると、条
件判定信号INI−IをLoti レベルとする。 ア
ドレスデコーダ202の出力信号に関わらずワード線2
07には全てLowが出力され、全ワード線のメモリセ
ル206が非選択状態のままとなる。同時に論理回路2
04の出力信号もライト・イネーブル信号WEに関わら
すHighレベルとなり、書き込みデータは入力禁止と
なる。このようにして、符号フラグの状態によってメモ
リ書き込みを実行したりしなかったりする制御が実現さ
れ、条件分岐命令を用いずにFig、 20に示したよ
うな二次元画像の生成処理ルーチンを構成することが出
来る。なお、与えられた条件が成立していなかった時に
書き込みを禁止するためには、上記アドレスデコーダ2
02の出力信号の制御のみでも達成されるので、論理回
路204は必ずしも必要ではなく、ライト・イネーブル
信号W百をそのまま双方向バッファ205の制御信号と
しても構わない。また、フレームメモリ103の初期化
についても、本発明の実施に必ずしも必要ではなく、こ
れによって本発明を制限するものではない。
31− 本発明によれば、多くの実行時間を必要とする条件分岐
命令を用いずに二次元画像の生成処理ルーチンを構成す
ることが出来、処理時間の大幅な短縮を達成することが
出来るという効果がある。
Fig、21には、上述した条件付き書き込み命令の一
例が示されている。この命令は、特に制限されないが、
条件分岐命令と異なり、分岐先アドレスを示すためのフ
ィールドを持たず、その命令の内容を表す2値信号の特
定のビットパターンを保持するオペレーションコード 
フィールド○Pのみを持っている。本実施例においては
、このオペレーションコード フィールド○Pに保持さ
れた特定のビットパターンによって、コンデイションコ
ードレジスタ106の符号フラグNの判定とその結果に
したがった書き込み動作の制御が表される。すなわち、
この条件付き書き込み命令は、図示しない命令メモリに
保持され、この命令の実行時におけるコンデイションコ
ードレジスタ106の符号フラグNの値に従ってZ相デ
ータメモリ1o2及びフレームメモリ103の内容を書
き替え32− るだめの命令である。つぎに、再び、Fig、 3を用
いて、この条件付き書き込み命令の動作を説明する。算
術論理演算回路104による減算動作によって、コンデ
イションコードレジスタ106の符号フラグNが“1”
または“0”になる。条件付き書き込み命令が、命令メ
モリから命令デコーダに読みだされると、命令デコーダ
は、オペレーションコード フィールドOPの内容に従
って、制御信号を形成する。条件付き書き込み命令を表
すオペレーションコード フィールドOPの場合、制御
回路210に対して、次に述べる様な動作を指示する制
御信号が形成される。すなわち、この命令デコーダから
の制御信号により、制御回路21oは、それに供給され
ている符号フラグNがO′″の場合、データl1020
9及び双方向バッファ205に対してデータバス119
からデータを取り込む様に指示する制御信号を形成する
これに対して、それに供給されている符号フラグNが“
0”の場合、制御回路210は、特に制限されないが、
データl10209及び双方向バッファ205に対して
データバス119からのデータの取り込みを禁止する様
な制御信号を形成する。
この時、算術演算回路109及び110の演算により求
められたアドレスは、アドレスデコーダ2o2によって
デコードされ、このデコードの結果として、2軸データ
メモリ102及びフレームメモリ103のそれぞれから
1本のワード線が選択される。そのため、コンディジ旦
ンコードレジスタ106の符号フラグNが“O”であっ
て、条件付き書き込み命令が実行された場合、Z相デー
タメモリ102及びフレームメモリ103において上記
選択されたワード線に結合されたメモリセルには、デー
タl10209及び双方向バッファ205を介してデー
タバス119からデータが供給され、書き込まれる。す
なわち、条件分岐命令と書き込み命令とを実行しなくて
も、1つの条件付き書き込み命令を実行することにより
、コンディジ旦ンコードレジスタ106の符号フラグN
の判定とその判定の結果に従った2軸データメモリ10
2及びフレームメモリ103への書き込みとを行なうこ
とができる。条件付き書き込み命令においては、符号フ
ラグNが110”の時、その命令の実行において書き込
み動作が行われ、符号フラグNが1”の時、その命令が
実行されても書き込み動作が行われない。そのため、符
号フラグNの値に従って、次に実行されるべき命令を替
える必要がない。言い変えるならば、条件付き書き込み
命令の場合、プログラムカウンタの値を書き替える必要
はなく、そのための分岐先アドレスも必要ではない。
また、上記実施例に示されたデジタルシグナルプロセッ
サよりも描画演算動作の高速化を図ったデジタルシグナ
ルプロセッサについて以下説明をする。 ここで、以下
の図中に記載されているコンデイションコードレジスタ
CCRに関しては、Fj、g、2及びFig、 4に記
載されている動作と同様のため、その動作の説明は省略
する。
本発明のデジタルシグナルプロセッサは、命令パイプラ
イン構造である。命令パイプライン構造について、Fj
4.4を使って説明する。図中では、35 3つの命令が命令メモリから読み出され形成される命令
パイプライン構造を示し、横軸に時間の流れを示す。命
令メモリから命令を読み出す第1ステツプ、読み出され
た命令をフェッチ部がフェッチする第2ステツプとフェ
ッチした命令をデコーダがデコードする第3ステツプか
らなる3つのステップにより1つの命令が読み出され実
行される。
図中では、最初に実行されるべき命令がフェッチ部にフ
ェッチされている時、2番目に実行されるべき命令は命
令メモリから命令を読み出すステップ中にある。最初に
実行されるべき命令がデコードされている時、2番目に
実行されるべき命令はフェッチ部にフェッチされ、3番
目に実行されるべき命令は、命令メモリから命令を読み
出すステップ中にある。これは、読み出されるべき命令
の順番があらかじめ決まっているため、この様なパイプ
ライン構造をとることができる。
Fj、g、5は本発明の他の実施例によるデジタルシグ
ナルプロセッサのブロック図である。Fjg、 5にお
いて、141はデジタルシグナルプロセッサ1−36= 50.151はデータメモリ、152は命令メモリ、1
53は命令デコーダ、160〜175は汎用レジスタ、
176はコンデイションコードレジスタ (CCR)、
177はリピートカウンタ (RC)、180は同時2
人力1出力の第1の演算回路、181は同時2人力1出
力の第2の演算回路、213〜227は信号線、230
,231,232はデータバスである。
データメモリ150,151はそれぞれ信号線222.
223,224及び信号線225,226.227と入
出力を可能にする3ポートを持ち、1マシンサイクル内
でデータの読みだし、書き込みが可能である。この場合
、1マシンサイクルの前半で読みだし、後半で書き込む
構成になっている。ここでは、データメモリ150に1
ライン分の陰面消去付き描画処理の奥行きデータ、デー
タメモリ151に1ライン分の陰面消去付き描画処理の
画素データが入力される。またデータメモリ150は、
1ライン分の陰面消去付き描画処理の奥行きデータに加
えて、これとは別のアドレスにポリゴンをスキャンライ
ンコンバージョン(スキャンラインコンバージ9ンに関
しては、特公平146914を参照)することにより得
られる]。
ライン分の増分法のデータのうち、1スキヤンライン上
の各ポリゴンを再現するのに必要な始点に対応するデー
タメモリのアドレスの一部ないし全部と奥行きデータ(
初期値)、光強度データ(初期値)をもつ。一方データ
メモリ151は、1ライン分の陰面消去付き描画処理の
画素データに加えて、これとは別のアドレスにポリゴン
をスキャンラインコンバージョンすることにより得られ
る1ライン分の増分法のデータのうち、1スキヤンライ
ン上の各ポリゴンを再現するのに必要な増分実行回数お
よび奥行きデータの増分値と光強度データの増分値をも
つ。
命令メモリ152は、少なくともフラグレジスタ(CC
R)176が示す内容によってレジスタの内容をデータ
メモリ150,151へ転送する命令をもつ。また、バ
ス230,231,232゜それに付随する信号線、各
種レジスタ、それに付随した描画演算ユニット140、
および演算回路180,181を制御する命令を持つ。
命令デコーダ153は、命令メモリ152に格納されて
いる命令を解読することにより、デジタルシグナルプロ
セッサ]−41を制御する。
レジスタ160〜173は第1の演算回路180、第2
の演算回路18]、に対して2つの入力元と1つの出力
光となり、命令メモリ152に格納されている実行命令
に従って制御される。レジスタ174,175と結合さ
れる描画演算ユニット140は、1人力1出力1人出力
の3ポート構成になっている。またレジスタ160〜]
−75とデータバス230,231,232の接続制御
もまた、命令メモリ152に格納されている実行命令に
従ってされ、上記全ての汎用レジスタは上記バスに対し
てそれぞれ同じように接続することができる。
特に制限されないがデータバス232はFig。
1に示された様にデジタルシグナルプロセッサ14]−
が外部装置となる表示装置に接続される様、39− 外部端子と接続される。
陰面消去付き描画処理の初期設定を行なうときは、始点
の表示面におけるアドレス、および増分実行回数をそれ
ぞれデータメモリ150,151から信号線224..
226、データバス232゜231、信号線219,2
20を介してレジスタ161.1.62にデータ設定す
る。そしてレジスタ161の値を必要に応じて処理を行
ない、結果を読みだし用、書き込み用2つのアドレスレ
ジスタ(図示せず)に設定する。レジスタ162の値は
リピートカウンタ177に設定し、描画演算ユニット1
40の実行回数を制御する。陰面消去付き描画処理の初
期値および増分値のデータを設定するときは、データメ
モリ150,151から信号線224,226、データ
バス232,231、信号線219,220を介してレ
ジスタ173゜174にデータを設定する。レジスタ1
73,174は信号線212,211を介して描画演算
ユニット140にデータを転送する。
Fig、6は本発明のFig、 5の実施例による描画
演0 算ユニットのブロック図である。描画演算ユニットのデ
ータ処理/データ・インタフェース系の構成を示してい
る。Fig、6において、100は第1の情報保持回路
、101は第2の情報保持回路、110は加算回路、1
20は比較回路、130は入出力制御回路、140は描
画演算ユニット、200〜206は描画演算ユニット1
40の内部信号線、205は奥行きデータの大小判定結
果をコンディジ目ンコードレジスタ(CCR)へ出力す
る信号線、210は入出力制御回路から描画演算ユニツ
1〜140外部への出力信号線、211は描画演算ユニ
ット140外部と入出力制御回路をつなぐ入出力信号線
、212は描画演算ユニット14o外部から入出力制御
回路への入力信号線である。第1の情報保持回路100
は増分法で用いる画素の光強度データの初期値と奥行き
データの初期値及び、増分計算結果のデータを保持する
ものである。
第2の情報保持回路101は増分法における1画素あた
りの光強度データの増分値と1画素あたりの奥行きデー
タの増分値を保持するものである。
入出力制御回路130は描画演算ユニット140の外部
にある命令メモリ152から読み出され、命令デコーダ
153によりデコードされた信号に従って、描画演算ユ
ニット140のデータの初期設定時と演算実行時におけ
る外部からの信号線210.211,212と内部信号
線200,201.204,206の接続を変えるため
のものである。この接続の切り替えは、初期設定中、演
算実行中にも行なう。
本実施例の描画演算ユニット140において陰面消去付
き描画処理の増分計算を行うためにデータを設定する際
は、信号線211、入出力制御回路130、信号線20
0を介して、第1の情報保持回路100に画素の光強度
データと陰面消去のための奥行きデータの初期値データ
を転送し、同時に信号線212、入出力制御回路130
、信号線201を介して、第2の情報保持回路101に
1画素あたりの光強度の増分値と陰面消去のための奥行
きデータの増分値を転送する。次に演算を実行する際は
、加算回路110において第2の情報保持回路101の
データを第1の情報保持回路100のデータに加算し、
信号線204に出力する。信号線204に出力された画
素の光強度データと陰面消去のための奥行きデータは、
入出力回路130、第1の情報保持回路100に入力し
、さらに奥行きデータは比較回路120にも入力される
。比較回路120は予め描画演算ユニット140の外部
の命令メモリ152から読み出され、命令デコーダによ
りデコードされた信号に従って、画像表示面に投影した
とき同一座標上に存在する奥行きデータが信号線212
、入出力制御回路130、信号線206を介して入力さ
れる。比較回路120で、今回新たに計算した奥行きデ
ータと外部から入力した奥行きデータを比較し、その結
果比較の奥行きデータの大小判定結果を示すデータを信
号線205を介して、描画演算ユニット140の外部の
コンデイションコードレジスタ(CCR)に出力する。
一方、信号線204を介した画素の光強度データと陰面
消去のための奥行きデ3 −タは、入出力制御回路上30、信号線210゜211
を介して描画演算ユニット140の外部に出力される。
入出力制御回路1.30は、例えば描画演算ユニット1
40内において、16ビツトで処理されていたデータを
描画演算ユニット140外へ出力する時、下位8ビツト
を切り捨て、上位8ビツトのみのデータを出力する。
本実施例によれば、新たな奥行きデータと古い奥行きデ
ータの大小判定結果を示すデータが、上記新たな光強度
データと共に描画演算ユニット14oから出力される。
以上説明した様に描画演算ユニット140は上記入力さ
れたデータの演算及び大小判定を行うのみであり、奥行
きが小さい光強度データを選択してからデータを出力す
るという必要がない。このためデータ計算のパイプライ
ン処理の数が多くなることがない。このため高速計算が
可能という効果がある。
また本実施例によれば入出力制御回路130によって、
入出力信号線211は入力信号線、もし−躬 くは出力信号線のどちらにも命令デコーダ153により
デコードされた信号に従って切り替えることができる。
従って描画演算ユニットの初期設定時と演算実行時にお
ける入力データ量と出力データ量の割合の違いに対応す
るために必要な、描画演算ユニットと外部との間の信号
線の数を低減できる効果がある。このため高速に演算処
理を行なうのに必要なデータ転送のための入出力信号線
の数を減らし、2人力1出力形式の演算器と類似の構成
をとることが可能になる。従って増分法による陰面消去
付き描画処理の、初期設定時と演算実行時における入出
力データの割合の違いに起因する入出力部のハードウェ
ア量の増大を低減し、描画演算ユニット140の外部の
情報処理装置の構成を簡単にできる効果がある。また本
構成により、増分法のアルゴリズムを高速に実行するこ
とが可能になり、増分法を処理の中心とする陰面消去付
きの描画処理速度を向上することができる。
Fig、 7は本発明のFig、5の実施例による描画
演算ユニットの内部構成のブロック図であり、描画演算
ユニットのデータ処理/データ・インタフェース系の構
成を示している。Fig、 7において、300〜30
3は加算手段の一実現方法であるクリップ機能付き16
ビツト加算器、304は比較手段の一実現方法である1
6ビツト比較器、310〜323は情報保持手段の一実
現方法である16ビツトレジスタ、330は入出力制御
回路、340〜343はセレクタ、401〜408,4
09a 、 409 b 、 409 c 、 410
 a 、 41. Ob 。
411a、411b、412a、412bは16ビツト
内部信号線、413は描画演算ユニット142の外部に
存在するコンデイションコードレジスタ(CCR)へ奥
行きデータの大小判定結果のデータを出力する信号線、
420,4.21,422は描画演算ユニット142の
外部とデータの入出力を行うための32ビット信号線で
ある。
加算器300〜303は加算結果にオーバーフローが生
じた場合、加算器出力を正の最大値に、加算結果が負の
数になった場合、加算器出力を零にするクリップ機構を
持つ]−6ビツト加算器である。
入出力制御回路330は外部からの32ビツトの信号線
420,421,422と内部の信号線400−408
,409a、410a、411a。
412aの接続を変えるためのものである。この接続の
切り替えは、命令デコーダ152によりデコードされた
信号に従って初期設定中、演算実行中のどちらでも行な
う。また、330は410a。
411a、412aの3本の16ビツト信号線によって
転送される符号付き16ビツトの画素データをそれぞれ
符号無し8ビツトデータに変換し、さらに8ビツトの空
データを加えて32ビット信号線1本にまとめる。また
、外部から入力する32ビツトの信号線421,422
の上位16ビツト、下位16ビツトをそれぞれ信号線4
01,402、あるいは信号線403,404あるいは
信号線405,406、あるいは信号線407,408
に割り当てる。また、信号線400には下位の16ビツ
トを割り当てる。
本実施例において陰面消去付き描画処理の演算47− の中心となる。画素の光強度データと陰面消去のための
奥行きデータの増分計算を行うための初期値と増分値を
設定する方法について説明する。初期値の設定は、32
ビット信号線421に奥行きデータを示す16ビツ1−
の初期値データを上位に、光強度データのうち赤色光強
度の初期値を下位に入れて人出力制御回路330に入力
する。また、信号線422には上位16ビツトに緑色光
強度、下位16ビツトに青色光強度の初期値を割り当て
て入出力制御回路330に入力する。信号線421の上
位16ビツトデータは入出力制御回路330、信号線4
01、セレクタ340を介してレジスタ3.LOに入力
する。信号線421の下位16ビツトデータは入出力制
御回路330、信号線402、セレクタ341を介して
レジスタ311に入力する。信号線422の上位16ビ
ツトデータは入出力制御回路330、信号線403、セ
レクタ342を介してレジスタ312に入力する。信号
線422の下位16ビツトデータは入出力制御回路33
0、信号線404、セレクタ343を介8 してレジスタ313に入力する。増分値の設定は、32
ビット信号線421に奥行きデータの増分を示す16ビ
ツトのデータを上位に、光強度値のうち赤色光強度の増
分値を下位16ビツトに割り当てて入出力制御回路33
0に入力する。また、信号線422には上位16ビツト
に緑色光強度の増分値、下位16ビツトに青色光強度の
増分値を割り当てて入出力制御回路330に入力する。
信号線421の上位16ビツトデータは入出力制御回路
330、信号線405を介してレジスタ320に入力す
る。信号線421の下位16ビツトデータは入出力制御
回路330、信号線406を介してレジスタ321に入
力する。信号線422の上位16ビツトデータは入出力
制御回路330、信号線407を介してレジスタ322
に入力する。
信号線422の下位16ビツトデータは入出力制御回路
330.信号線408を介してレジスタ323に入力す
る。
次に画素の光強度データと陰面消去のための奥行きデー
タの増分計算を行う演算実行方法について説明する。レ
ジスタ310と320の奥行きデータとその増分値をク
リップ機構付き加算器300で加算する。加算結果を信
号線409a、409b、409cに出力する。信号線
409aは入出力制御回路330の内部で32ビツトデ
ータに変換され、信号線420に出力される。信号線4
09bはセレクタ340を介してレジスタ310に入力
する。ここに入力したデータは次の増分計算のために用
いる。信号線409cは比較器304に入力する。この
時、現在計算している画素のアドレスに対応する16ビ
ツトの奥行きデータを描画処理装置142の外部から信
号線422、入出力制御回路330、信号線400を介
して比較器304に入力する。この比較器304によっ
て信号線409cを介して入力された現在計算中の画素
の奥行きデータと、信号線400を介して入力された以
前に処理、もしくはデジタルシグナルプロセッサ141
が初期設定した画像表示面の同一座標上の画素の奥行き
データを比較し、その奥行きデータの大小判定結果のデ
ータを信号線413を介して、描画演算ユニット142
外部のコンデイションコードレジスタ(OCR)に出力
する。
レジスタ31]と321、レジスタ312と322、レ
ジスタ313と323の光強度値とその増分値をそれぞ
れクリップ機構付き加算器301゜302.303で加
算する。それぞれの加算結果は信号線410 a 、 
410 b 、 411 a 、 41 lb 、 4
.12 a 、 412 bに出力される。信号線41
、0 a 、 411 a 、 412 aの3つの1
6ビツト画素データは入出力制御手段330の内部で1
つの32ピッ1−データに変換され、信号線421に出
力される。信号線410 a 、 411 a 、 4
 ]、 2aはそれぞれセレクタ341,342,34
3を介して、レジスタ311,312,31.3に入力
する。ここに入力したデータは次の増分計算のために用
いる。
以上に記した説明により、演算実行時は」、データ入力
、2データ出力の演算器として信号線211を出力用信
号線とすることができる。また、この配置は描画処理に
特有である、頻繁に生じる初51 刻設定時の4データ入力を2マシンサイクルで実行する
ことができる。
Fj、g、8は、描画演算ユニッI−140の演算実行
中の処理内容について示した図である。ここで、説明を
さらに理解しやすくするためにFig、 2も併用して
いただきたい。同図において、模様の違いは、処理する
データが異なることを意味し、矢印は、処理されるデー
タの流れを示す。
演算実行中は、処理該当画素の表示面に対応する読み出
し用ア1くレスレジスタの内容に従いデータメモリ15
0から奥行きデータを読みだし、データバス232を介
してレジスタ173に転送する(Fig、 8  ]、
 50→173)。このとき読みだし動作直後に読み出
し用アドレスを1番地インクリメントする。次にこの奥
行きデータを信号線212、描画演算ユニット140の
入出力制御回路130 (rjg、6)を介して比較回
路1−20に入力す’、+ (Fig、8 173−+
120) 、 コ(1)とき、描画演算ユニッI−14
,0内部では描画演算ユニット14−0の外部から入力
された奥行きデータは奥行52 きデータの増分値と同じ画像表示面のXr’j座標が示
す光強度データは、光強度データの増分値と加算回路1
10 (Fjg、6)で加算を行ない、この演算結果の
一部である奥行きデータを比較回路120 (Fig、
6) ニ入力する(Fj、g、8 111 Q→120
)。これと並行してすべての演算結果は第1の情報保持
回路100 (Fig、6) (Fig、8 110→
100)、ならびに入出力制御回路130 (Fjg。
6)に入力される(Fig、8 110→130)。
次に比較回路120 (Fig、6)の出力である奥行
きデータの大小判定結果のデータを、信号線205を介
してデジタルシグナルプロセッサ内のコンデイションコ
ードレジスタ(CCR)176に入力する(Fjg、8
 120→176)。このときすべての演算結果は入出
力制御回路130 (Fig。
6)により、出力に用いる信号線210,211のビッ
ト幅に合わせてデータ変換を行ない、奥行きデータは信
号線210を介してレジスタ172に入力され、光強度
データは信号線211を介しテレジスタ174に入力さ
れる(Fjg、8 130→172,174.)。次に
コンデイションコードレジスタ(CCR)176に入力
される奥行きデータの大小判定結果のデータにより、処
理該当画素の奥行きデータが演算処理以前の画像表示面
上の同一アドレスの奥行きデータに比べて小さければ、
最初に奥行きデータを読みだしたアドレスと同一アドレ
スを持つデータメモリ150に含まれる書き込みアドレ
スレジスタの内容に従いレジスタ172の奥行きデータ
をバス230を介してデータメモリ150に入力し、同
時にレジスタ174の光強度データをバス231を介し
てデータメモリ151に入力する(Fig、8 172
,174→150,151)。一方上記の大小判定結果
のデータにより、処理該当画素の奥行きデータが演算処
理以前の画像表示面上の同一アドレスの奥行きデータに
比べて大きければ、データメモリ150.151への書
き込みを行なわない。この動作により、より奥行きの浅
い、表示面に近い光強度データがデータメモリ151に
保持される。
以上説明した構成と動作により、描画演算ユ二ッl−1
40の演算器構成が簡略化され、演算結果を全て描画演
算ユニット140外部に出力することにより、実行する
処理も規則性を保つことが可能になる。このため描画演
算ユニッl−1,40をパイプライン動作で動かす場合
、処理のオーバーヘッドが低減され、処理速度の向上を
実現できる。
Fjg、9は本発明の他の実施例のデジタルシグナルプ
ロセッサのブロック図である。以下、説明を筒部にする
ために、先に記された実施例中と共通する働きの部分に
ついては、その説明を省略する。
本実施例はFig、9に示ずように、描画演算ユニッ1
〜840からコンデイションコー1くレジスタCCR6
76に比較結果を反映するための信号線を持たない構成
であり、配線数が少なくなる効果が有る。しかし本実施
例では描画演算ユニッl−840は例えばFjg、 1
0に示す構成をとる必要がある。
すなわち、Fjg、]○中比較回路850の比較結果の
(データの)属性を信号線907を介して入出力制御回
路849へ入力して849を制御し、信号線204&介
して入出力制御回路849に入5− 力する加算回路1 ]、 Oのデータを描画演算ユニッ
ト840から出力する。入出力制御回路849は図示し
ない遅延回路を内蔵し、信号線907の制御により遅延
を1マシンサイクル生じ、出力のタイミングをとる。
Fig、 11は、描画演算ユニツl−840の演算実
行のタイムテーブル図である。以下、Flg、11.を
使って描画演算二二ッI−84,0の動作を説明する。
時間T2で演算結果のデータが加算回路]10から比較
回路850へ入力され(110→850)、入出力制御
回路849へも入力される(1.〕、0→849)。時
間ゴ3で、比較回路850の出力である奥行きデータの
大小判定結果のデータが入出力制御回路849へ入力さ
れる(850→849)。
その後時間T4で上記演算結果のデータが入出力制御回
路から外部(レジスタ)へ出力される(849→673
,674)。このため、1演算の実行終了まで5マシン
サイクルの時間がかかり、Flg。
8で示された実施例に比較して、1マシンサイクル遅く
なる。また、演算実行時に限り入出力制御6 手段849において遅延を生じさせなければならず、デ
ータの初期設定時とのタイミングの取り方の違いから、
内部と外部の信号線の接続機構が遅延回路を設けること
により複雑になる。
Fig、 12は本発明の他の実施例のデジタルシグナ
ルプロセッサのブロック図である。本実施例もFj、g
、9で示された実施例と同様、描画演算ユニット640
からコンデイションコードレジスタ(OCR)676へ
の信号線を持たない構成で、配線数が少なくなる効果が
ある。Fjg、、13に本実施例の描画演算ユニット6
40のブロック図を示す。
本実施例では加算回路110の出力は比較回路960お
よび情報保持回路961に入力されて、情報保持回路9
61に一旦保持される。つぎに、出力ゲー1〜962に
よって比較回路960の出力と、情報保持回路961の
出力が順々に信号線921を介して入出力制御回路95
9に入力される。
Fig、 14は描画演算ユニット640の演算実行の
タイムテーブル図である。以下Fig、 14を用いて
動作を説明する。
Fj、g、 14の時間T2に演算結果のデータが加算
回路から比較回路へ入力され(110→960)、また
情報保持回路へも入力される(110→961)。つぎ
に時間T3で属性出力(コンデイションコードレジスタ
OCR反映)(9,61→959)を受けた後、時間T
4(959→673,674.)で上記演算結果の外部
への出力を行なっている。
このため、1演算の実行終了までやはり5マシンサイク
ルの時間がかかり、Fig、8で説明した動作に比較し
て、1マシンサイクル遅くなっている。
また、遅延のための情報保持回路961や出力制御のゲ
ート962が必要になっている。
Fig、 15は本発明のFig、 5の実施例による
描画演算ユニットのブロック図である。本実施例は、描
画演算ユニットのデータ処理/データ・インタフェース
系の構成を示している。Fj、g、 15において、4
13 a 、 413 b 、 413 c 、 4−
14 a 。
414b、415a、415b、416a、416bは
16ビツトの信号線、417,41.8は32ビツトの
信号線、450はデータ変換回路、460は入出力制御
回路である。
データ変換回路450はFig、 7における入出力制
御回路330において描画演算ユニット142から外部
へデータ出力する際のデータ変換処理を入出力制御回路
330の外部で実現するものである。この変換処理は描
画演算ユニット143の外部の命令メモリ152から読
み出され命令デコーダ153によりデコードされた信号
に従って、任意に設定が可能である。データ変換回路4
50を設けることにより、特に16ビツトの画素データ
3種類を32ビツト以下の任意のビット幅に圧縮して、
32ビツトの信号線418に出力することができる。ま
た入出力制御回路4.60は描画演算ユニット143の
内部信号線と外部信号線を接続するだけで良い。
本実施例によれば、デジタルシグナルプロセッサ外部に
置かれる表示装置等の入力データのビット幅にあわせた
画素データを上位づめ、下位づめあるいは任意の形式に
変換して出力できる効果がある。
9 Fjg、16は本発明のFig’、5の実施例による描
画演算ユニットのブロック図である。描画演算ユニット
のデータ処理/データ・インタフェース系の構成を示し
ている。Fig、 16において、144は描画演算ユ
ニット、430,431は32ピッ1〜信号線、432
a、432b、432c、433a、433b、434
a、434b、435a。
435bは16ビツト信号線、460は入出力制御回路
である。
本実施例は、Fig、 15におけるデータ変換回路4
50にかえて、16ビツト信号線のデータ変換をワイヤ
ド・ロジックで実現したものである。ここでは信号線4
33a、434.a、435aを介して転送される符号
付き16ビツトの出力用画素データ3種類をそれぞれ符
号無し8ピッ1−データに変換し、他に8ビツトのデー
タを加えて、32ビツトの信号線431を形成する。ま
た、信号線432aを介して転送される符号付き16ビ
ツトの奥行きデータに対し、他に16ビツトのデータを
加えて、信号線430を形成する。
0 本実施例によれば、描画演算ユニット144から出力さ
れる画素データのビット長は固定されるが、符号付き1
6ビツトデータを符号無し8ビツトのデータに高速に変
換できる効果がある。
Fig、17は本発明のFj、g、5の実施例による描
画演算ユニツ1−のブロック図である。描画演算ユニッ
トのデータ処理/データ・インタフェース系の構成を示
している。Fig、17において、145は描画演算ユ
ニット、500は入出力制御回路、501はデータ変換
回路、502,503は16ビツトのクリップ付き加算
器、504は16ビツト比較器、505は16ビツトの
デマルチプレクサ、506は、描画演算ユニット145
の外部の命令メモリ152から読み出され、命令デコー
ダ153によりデコードされた信号に従って、531a
と540bの信号線のいずれかをレジスタ510と51
2のどちらかに出力するセレクタ、507は、描画演算
ユニット145の外部の命令メモリ152から読み出さ
れ、命令デコーダ153によりデコードされた信号に従
って、531bと541bの信号線のいずれかをレジス
タ511と513のどちらかに出力するセレクタ、50
8は描画演算ユニット145の外部の命令メモリ152
から読み出され、命令デコーダ153によりデコードさ
れた信号に従って5328の信号線をレジスタ520と
522のどちらかに出力するセレクタ、5o9は描画演
算ユニット145の外部の命令メモリ152から読み出
され、命令デコーダ153によりデコードされた信号に
従って532bの信号線をレジスタ521と523のど
ちらかに出力するセレクタ、510,511,512,
513゜520.521,522,523は16ビツ1
−レジスタ、530,531,532,533,540
a、540b、541a、541b、542゜543は
信号線である。
本実施例はFig、 15の加算器4つの構成が加算器
2つの構成になった場合にカラー描画処理を行なうもの
である。Fig、 17において、デマルチプレクサ5
05は外部の命令メモリ152から読み出され、命令デ
コーダ153によりデコードされた信号に従って信号線
540aのデータを信号線542,543両方に出力す
る状態と、信号線540aのデータを信号線542にの
み出力する状態に切り替える動作を行なう。この動作は
1マシンサイクルごとに切り替わる。
データ変換回路501は外部の命令メモリ152から読
み出され、命令デコーダ153によりデコードされた信
号に従って信号線542を介した16ビツトの奥行きデ
ータを出力し、信号線541aを介した16ビツト符号
付き画素データを符号無し8ビツトのデータに変換して
データ変換回路501内に保持し、次の演算で信号線5
41a。
542を介して入力する2つの16ビツト符号付き画素
データを符号無し8ビツトの画素データに変換した後、
前の演算で保持している8ビツトの画素データおよび8
ビツトの任意のデータを加えて32ピッ1−のデータと
して信号線533に出力する。
加算器502に入力されるデータは、第1のマシンサイ
クルで奥行きデータを保持するレジスタ3 512とその増分値を保持するレジスタ522、第2の
マシンサイクルで緑色光強度データを保持するレジスタ
510とその増分値を保持するL/ジスタ520である
。同様に加算器503に入力されるデータは最初が赤色
光強度データを保持するレジスタ513とその増分値を
保持するレジスタ523、次が青色光強度データを保持
するレジスタ511とその増分値を保持するレジスタ5
21である。このため加算器502による最初の加算後
の演算結果である、奥行きデータはデマルチプレクサ5
05を介して、比較器504とデータ変換手段501に
入力される。また、信号線540b、セレクタ506を
介してレジスタ512に演算により更新された奥行きデ
ータを入力する。このときレジスタ512に対する奥行
きデータの入力と並行して、加算器503で演算された
光強度値は信号線54 l b、セレクタ507を介し
てレジスタ513に入力する。一方、信号線541aを
介する16ビツトの緑色光強度の演算結果は、データ変
換回路501内部で符号無し8ビツトのビ ット 線542を介する奥行きデータは、データ変換回路50
1で16ビツトのデータを付加され、32ビットの信号
線533に出力される。次に比較器504は信号線54
3を介して入力される演算結果の16ビツトの奥行きデ
ータとあらかじめ描画演算ユニット145の外部から信
号線530を介して入力された16ビツトの奥行きデー
タを比較して、その大小比較した結果の属性のデータを
描画演算ユニット145の外部にあるデジタルシグナル
プロセッサ内のコンデイションコードレジスタ(OCR
)(図示せず)に入力する。この時描画処理装置145
の外部から入力される奥行きデータは、情報処理装置に
より内部で実行される奥行きデータの演算出力と命令メ
モリにより同期がとられて、2マシンサイクルに1回入
力される。
信号線533に出力された奥行きデータは、入出力制御
回路500を介して信号線420から描画演算ユニット
145の外部へ出力される。これと並行して、レジスタ
510と520、レジスタ511と521の増分計算が
行なわれ、レジスタ510と520の演算結果はデマル
チプレクサ505、信号線542を介して、データ変換
回路501に入力され、レジスタ511と521の演算
結果は信号線541aを介してデータ変換回路501に
入力され、それぞれ符号付き16ビツトのデータを符号
無し8ビツトの緑色光、青色光強度データに変換され、
−時保持されていた前回の8ビット赤色光強度データ、
および8ビツトの空データを付加されて、32ビット信
号線533に出力される。これと並行して、それぞれの
演算結果はセレクタ506,507を介してレジスタ5
10。
511に入力する。32ビット信号線533に出力され
た3つの光強度データは、次の増分計算が始まる最初の
マシンサイクルで描画演算ユニット145の外部に出力
される。
また、光強度データが1種類の場合、データ変換回路5
01で32ビツトのデータに変換する際に奥行きデータ
と光強度データを1つにまとめるようにし、1マシンサ
イクルごとに描画演算二二ット145の外部から奥行き
データを入力することによって、単色の陰面消去付き描
画処理の増分計算を実行することができる。この時の演
算は、第1のマシンサイクルで行なう処理が連続して行
なわれる。
本実施例によれば、Fig、16で示した実施例と比較
して3つの光強度を演算する場合に2倍の時間がかかる
が、デジタルシグナルプロセッサの出力光である例えば
表示装置のような外部装置がデジタルシグナルプロセッ
サの半分の動作速度であった場合、演算結果の光強度デ
ータを直接出力できる効果がある。またデジタルシグナ
ルプロセyすの動作速度が早く、外部装置が遅い場合に
演算器の構成が簡略化できる効果がある。
本発明の骨子は上記実施例に限定されるものではなく、
種々の変形が可能であることはいうまでもない。例えば
、画素データを描画演算ユニット内部で16ビツト、外
部出力時に8ピツ1〜にしているが、演算に必要な精度
や外部機器に要するピッ[・長に合わせても同様の効果
がある。
7− さらに、上記実施例では赤色、緑色、青色光強度とその
増分値を入れるレジスタを特定していたが、各光強度値
とその増分値の対応が取れていれば、特に使用するレジ
スタとそこに記憶するデータの内容が実施例と異なって
いても良い。また、光強度に限らず、画面上の位置に付
随する他のデータについても同様の効果が発揮できる。
〔発明の効果〕
本発明によれば、奥行きデータの大小判定結果のデータ
が描画演算ユニットの外部へ出力されることにより、描
画演算ユニッl〜の中ではその判定結果に基づき描画演
算結果のデータの入替えを行なう必要がない。このため
データ計算のパイプライン処理の段数が深くならず、高
速計算ができる効果がある。
また本発明によるデジタルシグナルプロセッサでは、奥
行きデータの大小判定結果を受けて描画データのメモリ
書き込みの有無を決定するためにフラグレジスタを設け
ればよい。このため簡略なデジタルシグナルプロセッサ
の構成で、実行時に8 生じる処理のオーバーヘッドを削減した、高速計算がで
きる効果がある。
また描画演算ユニットど外部との間でデータを伝達する
入出力手段のうち少なくとも1個を双方向切り替え可能
な入出力手段とすることにより、デジタルシグナルプロ
セッサ内の他の演算器と整合性を持つインターフェース
が、少数の入出力手段で構成できる効果がある。これに
より、命令デコーダが簡略化できる効果がある。
また、本発明によれば、描画演算結果のデータを次の増
分計算に使いながら、このデータを任意のビット長に変
換して出力できる効果がある。
また、描画演算ユニットにデータの入出力制御手段を設
けることにより、カラー画像の計算等でしばしば必要に
なる、演算器を並列に配置した演算の実行が可能になる
。このため高速演算ができる効果がある。
【図面の簡単な説明】
Fig、 1は、本発明のデジタルシグナルプロセッサ
と表示装置との接続関係を示す図、 Fj、g、2は、本発明のデジタルシグナルプロセッサ
の一例を示したブロック図、 Fig、 3は、Fig、 2のデータメモリ或いはフ
レームメモリの内部をより詳細に示した図、Fjg、4
は、命令パイプライン構造について示した図、 Fig、5ば、本発明の他の実施例によるデジタルシグ
ナルプロセッサのブロック図、 Fi4.6は、本発明のFig、 5の実施例による描
画演算ユニットのブロック図、 Fig、 7は、本発明のFig、 5の実施例による
描画演算ユニットの内部構成のブロック図、Fig、 
8は、描画演算ユニットの演算実行中の処理内容につい
て示した図、 Fig、9は、本発明の他の実施例のデジタルシグナル
プロセッサのブロック図、 Fig、IQは、Fi、g、9の実施例による描画演算
ユニットのブロック図、 Fig、11は、描画演算ユニットの演算実行のタイム
テーブル図、 Fig、12は、本発明の他の実施例のデジタルシグナ
ルプロセッサのブロック図、 Fig、 13は、Fig、12の実施例による描画演
算ユニットのブロック図、 Fj4.14は、描画演算ユニットの演算実行のタイム
テーブル図、 Fig、 15は、本発明のFig、 5の実施例によ
る描画演算ユニットのブロック図、 Fig、 16は、本発明のFig、5の実施例による
描画演算ユニットのブロック図、 Fig、 17は、本発明のFig、5の実施例による
描画演算ユニットのブロック図、 Fig、 18は、従来技術による情報処理装置のブロ
ック図、 Fig、 19 (A )は、三次元空間に第1の物体
として平面の三角形を置いた図、 Fig、 19 (B )は、三次元空間に他の物体と
して平面の三角形を置いた図、 Fig、 19 (C)は、Fig、 19 (A )
及びFig、 19(B)の平面の三角形を同時に同一
平面上に置いた図 Fig、 20は、 二次元画面の1スキヤンライン 分の処理のフローチャート図である。 第 19図 (A) 第 0 図 ン 第 ■ 図 −区ヱ] 手続補正書(絋) 平成 3年3

Claims (1)

  1. 【特許請求の範囲】 1、表示画面に描かれる第1図形の各画素の奥行きを示
    す奥行きデータを蓄えるためのメモリ手段と 上記表示画面に描かれる第2図形の奥行きを示す奥行き
    データを供給するためのデータ供給手段と 上記メモリ手段と上記データ供給手段にcoupleさ
    れる演算手段と 上記演算手段の演算結果を条件とし、指定された条件が
    成立しているとき書き込みを実行させる条件付きデータ
    書き込み命令に従って上記データ供給手段が上記演算手
    段に供給しているデータを選択的に上記メモリ手段に供
    給する制御手段を含むデジタルシグナルプロセッサ。 2、上記演算手段は、減算処理を行うことを特徴とする
    特許請求の範囲第1項記載のデジタルシグナルプロセッ
    サ。 3、上記制御手段は、上記データ供給手段が蓄えている
    データに書替えるための指示をする信号を上記メモリ手
    段に供給する書替え信号供給手段を含むことを特徴とす
    る。特許請求の範囲第2項記載のデジタルシグナルプロ
    セッサ。 4、上記書替え信号供給手段は、上記減算処理の結果が
    正あるいは負であることを示すネガティブビットを持つ
    condition coderegisterを含む
    ことを特徴とする特許請求の範囲第3項記載のデジタル
    シグナルプロセッサ。
JP2299693A 1989-11-08 1990-11-07 デジタルシグナルプロセッサ Pending JPH03223978A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP1-288893 1989-11-08
JP28889389 1989-11-08

Publications (1)

Publication Number Publication Date
JPH03223978A true JPH03223978A (ja) 1991-10-02

Family

ID=17736145

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2299693A Pending JPH03223978A (ja) 1989-11-08 1990-11-07 デジタルシグナルプロセッサ

Country Status (2)

Country Link
JP (1) JPH03223978A (ja)
KR (1) KR910010314A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001051668A (ja) * 1999-08-16 2001-02-23 Sony Corp 画像処理装置
JP2010044786A (ja) * 1994-01-21 2010-02-25 Renesas Technology Corp 半導体集積回路装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010044786A (ja) * 1994-01-21 2010-02-25 Renesas Technology Corp 半導体集積回路装置
JP2001051668A (ja) * 1999-08-16 2001-02-23 Sony Corp 画像処理装置

Also Published As

Publication number Publication date
KR910010314A (ko) 1991-06-29

Similar Documents

Publication Publication Date Title
JP4608510B2 (ja) 単一の半導体プラットフォームで支持される変換、ライティング、ラスター化システム
US5185856A (en) Arithmetic and logic processing unit for computer graphics system
US6169554B1 (en) Clip testing unit for a three-dimensional graphics accelerator
JP4724346B2 (ja) グラフィックプロセッサ中の変換モジュール用の方法、装置および製品
US5831625A (en) Wavelet texturing
US5892517A (en) Shared access texturing of computer graphic images
US5850489A (en) Linear expression evaluator
US6417858B1 (en) Processor for geometry transformations and lighting calculations
US6628290B1 (en) Graphics pipeline selectively providing multiple pixels or multiple textures
US6108460A (en) Load balanced image generation
US7728841B1 (en) Coherent shader output for multiple targets
US8074224B1 (en) Managing state information for a multi-threaded processor
US6104842A (en) Geometry processing of digital video models and images
US7659909B1 (en) Arithmetic logic unit temporary registers
US6037947A (en) Graphics accelerator with shift count generation for handling potential fixed-point numeric overflows
US8223149B2 (en) Cone-culled soft shadows
TWI645371B (zh) 在上游著色器內設定下游著色狀態
US20090051687A1 (en) Image processing device
US5479605A (en) Raster operation apparatus for executing a drawing arithmetic operation when windows are displayed
US6219062B1 (en) Three-dimensional graphic display device
JP4637640B2 (ja) 図形描画装置
US8558833B1 (en) System and method for symmetric parameterization of independently tessellated patches
US5883641A (en) System and method for speculative execution in a geometry accelerator
US20030169277A1 (en) Pipelined 2D viewport clip circuit
JP3203180B2 (ja) 幾何学演算装置