1【特許請求の範囲】【請求項１】ホストコンピュータから供給される座標データに基いて選択される２本の辺を直線補間する直線補間部と、直線補間されたデータに基いて直線描画データを生成する直線描画部とを有する多角形ぬりつぶし装置
において、上記直線補間部が、辺の一方の端点を示す値、または該値に対して、補間により得られるべき点同志の間の差分値を累積的に加算して得た値を座標データを構成する要素毎に格納する第１の格納手段と、補間により得られるべき点同士の間の差分値を上記要素毎に格 10納する第２の格納手段と、上記第１、第２の格納手段から読出された値をそれぞれ格納する第１、第２のレジス
タと、上記第１、および第２のレジスタの値をそれぞれ加算し、加算された値を第３のレジスタに供給する加算手段とを有しており、上記第３のレジスタの値を第１の2格納手段に供給しているとともに、上記第１のレジスタの値を直線描画部に供給しており、第１、第２の格納手段から値を読出し、第１、第２のレジスタへそれぞれ格納する動作、第１のレジスタから直線描画部への値の供給および加算手段における加算、供給動作、および第３のレジスタから第１の格納手段への値の供給動作を、上記要素毎に順次ずらせた状態で制御して行なわせることを特徴とする多角形ぬりつぶし装置。
【発明の詳細な説明】＜産業上の利用分野＞
この発明は多角形ぬりつぶし装置に関し、さらに詳細にいえば、ホストコンピュータから供給される座標データに基いて選択される２本の辺を直線補間する直線補間部と、直線補間されたデータに基いて直線描画データを生成する直線描画部とを有する多角形ぬりつぶし装置に関(2)3する。
＜従来の技術＞
従来からグラフィックディスプレイ装置においては多角形ぬりつぶし機能が必須であり、第５図に示すように、多数の除算回路、および加算回路から構成される直線補間部と、直線補間部により得られたデータに基いて直線描画を行なうための直線描画部とを有する多角形ぬりつぶし装置が組込まれていた。
さらに詳細に説明すると、上記直線補間部は、２本の辺に対してそれぞれｘ方向、ｙ方向、ｚ方向、Ｉ方向の補間を行なわせるべく、合計８個の除算回路と、各除算回路からの出力データを入力とする加算回路とを有し、上記両辺について、それぞれｘ方向、ｙ方向、ｚ方向、Ｉ方向の直線補間を同時に行なわせるようにしている。
また、上記直線描画部は、上記直線補間部により得られたデータを入力とする３個の除算回路と、各除算回路からの出力データを入力とする加算回路とを有しており、
上記直線補間部により得られた各辺の補間データに基いて描画すべき線分に対応する多数のピクセルデータを生成し、描画メモリに供給するようにしている。
したがって、２本の辺についての直線補間動作を高速に行なうことができ、その後、補間データに基いて描画すべき線分に対応する多数のピクセルデータを生成することができる。
尚、テクスチャマッピング機能を達成する場合には、テクスチャ平面に対応する直線補間部、および直線描画部とを追加すればよく、また、セクショニング機能を達成する場合には、各直線補間部に切断面境界値補間部を追加すればよい。
＜発明が解決しようとする問題点＞
上記の構成の多角形ぬりつぶし装置においては、直線補間部が多数の除算回路と加算回路とで構成されているため、構成が複雑化するという問題があるとともに、上記のように複雑化した直線補間部の使用頻度が、直線描画部の使用頻度よりも著しく低いという問題がある。
さらに詳細に説明すると、例えば、１ポリゴンを20×20画素の正方形であると仮定した場合には、１ポリゴンを処理するために必要な演算は、直線補間部において平均25回の加算動作と、１乃至２回の除算動作が行なわれるのに対して、直線描画部においては400回の加算動作と、平均25回の除算動作が行なわれるのであり、直線補間部の使用頻度が直線描画部の使用頻度と比較して著しく低いことになる。そして、上記のように使用頻度が低いにも拘わらず、直線補間部における除算回路、および加算回路の必要個数が多くなり、除算回路、加算回路の稼働効率が非常に低い状態である。
また、上記直線補間部においては、除算回路から出力されるデータに基いて加算回路による加算動作が行なわれた後に、得られた補間データが直線描画部に伝送されるのであり、上記加算動作と、得られた補間データの伝送

1020304050

特公平７−５４５５１4
動作とは、第６図に示すように、順次シリアルに行なわれることになる。即ち、当初全段加算が行なわれた後（時間T0参照）、２本の辺に対するx,y,z,Iの補間データが順次伝送され（時間T1からT8参照）、最後に除算開始指示データが伝送される（時間T9参照）ことにより、直線補間部における加算回路の動作サイクルが終了する。
したがって、例えば、加算動作、および加算結果の伝送動作の合計時間を１μsecに設定した場合には、加算演算所要時間が50nsecであり、加算結果の出力に要する時間が100nsecであるから、残りの850nsecの期間は加算回路が全く動作していないことになる。即ち、２本の辺に対するx,y,z,Iの補間データをほぼ同時に得たとしても、上述したように加算回路が全く動作しない時間がかなり長くなるのであるから、全体としての処理時間は余り短縮されない。したがって、加算回路を多数使用することにより全ての補間データをほぼ同時に得られるようにしても、構成が複雑化するだけで、余り処理速度の向上を期待することができないのである。
また、得られた補間データをパラレルに伝送することも考えられるが、実装部品数が大幅に増加するという問題が発生する。そして、パラレル伝送できるようにしても、直線描画部の除算回路における分母は、x,yの始点、および終点に基いて得られた分割数になるのであり、この分割数がz,Iの直線描画データを得るために使用されるのであるから、上記分割数を供給するため、および直線補間部からの補間データを供給するために切替ゲートが必要になる。したがって、全ての補間データをパラレル伝送するようにしても余り処理時間は短縮されず、実装部品数が大幅に増加する不具合の方が大きくなる。
上記の問題は、単なる多角形ぬりつぶし動作を行なうのみではなく、テクスチャマッピング処理、セクショニング処理を行なう場合には特に顕著になる。
＜発明の目的＞
この発明は上記の問題点に鑑みてなされたものであり、直線補間の所要時間を殆ど増加させることなく、構成を大幅に簡素化することができる多角形ぬりつぶし装置を提供することを目的としている。
＜問題点を解決するための手段＞
上記の目的を達成するための、この発明の多角形ぬりつぶし装置は、ホストコンピュータから供給される座標データに基いて選択される２本の辺を直線補間する直線補間部が、辺の一方の端点を示す値、または該値に対して、補間により得られるべき点同士の間の差分値を累積的に加算して得た値を座標データを構成する要素毎に格納する第１の格納手段と、補間により得られるべき点同士の間の差分値を上記要素毎に格納する第２の格納手段と、上記第１、第２の格納手段から読出された値をそれぞれ格納する第１、第２のレジスタと、上記第１、第２(3)5のレジスタの値をそれぞれ加算し、加算された値を第３のレジスタに供給する加算手段とを有しており、上記第３のレジスタの値を第１の格納手段に供給しているとともに、上記第１のレジスタの値を直線描画部に供給しており、第１、第２の格納手段から値を読出し、第１、第２のレジスタへそれぞれ格納する動作、第１のレジスタから直線描画部への値の供給および加算手段における加算、供給動作、および第３のレジスタから第１の格納手段への値の供給動作を上記要素毎に順次ずらせた状態で制御して行なわせるものである。
＜作用＞以上の構成の多角形ぬりつぶし装置であれば、ホストコンピュータから供給される座標データに基いて選択される２本の辺を直線補間し、直線補間されたデータに基いて直線描画データを生成することにより多角形をぬりつぶす場合において、当初は第１の格納手段に第１番目の、辺の一方の端点の座標データを構成する値を格納するとともに、第２の格納手段に第１番目の、補間により得られるべき点同士の間の差分値を格納する。その後は、第１、第２の格納手段の値を第１、第２のレジスタに一時的に格納し、第１のレジスタの値を直線描画部に供給するとともに、両レジスタの値を加算手段により加算して第３のレジスタに一時的に格納し、第３のレジスタの値に基いて第１の格納手段の値を更新する。
また、上記の動作を行なっている間において、第１、第２の格納手段から第１、第２のレジスタに値を供給した
後は、上記第１、第２の格納手段は最早上記値を保持しておく必要がないので、第２番目の、辺の一方の端点の座標データを構成する値、および補間により得られるべき点同士の間の差分値を格納することができる。
さらに、加算手段により得られたデータを第３のレジスタに供給した後は、上記加算手段は次の加算動作を行なうことができるので、上記第２番目の、辺の一方の端点の座標データを構成する値、および補間により得られるべき点同士の間の差分値に基く加算動作を行なうことができ、この間において、上記第１、第２の格納手段への第３番目の、辺の一方の端点の座標データを構成する値、および補間により得られるべき点同士の間の差分値の書込み、第１、第２のレジスタへの供給を行ない、その後、上記加算結果の書込み動作を行なうことができる。
即ち、各順位の直線補間データの読出し処理、加算演算、および出力処理、加算結果の書込み処理を順次行なうことができ、しかも、各順位の処理を１ステップ遅れで順次行なうことができる。
＜実施例＞
以下、実施例を示す添付図面によって詳細に説明する。
第１図はこの発明の多角形ぬりつぶし装置の一実施例を示すブロック図である。
図において、直線補間部は、辺の一方の端点を示す値

1020304050

特公平７−５４５５１6（以下、初期値と称する）、または累積加算値を格納するマルチポートレジスタファイル〔１〕と、補間により得られるべき点同士の間の差分値（以下、増分値と称する）を格納するレジスタファイル〔２〕と、上記マルチポートレジスタファイル〔１〕の内容を一時的に保持する第１のパイプラインレジスタ〔３〕と、上記レジスタファイル〔２〕の内容を一時的に保持する第２のパイプラインレジスタ〔４〕と、上記第１、第２のパイプラインレジスタ〔３〕〔４〕の内容を入力として加算動作を行なう加算回路〔５〕と、加算結果を一時的に格納する第３のパイプラインレジスタ〔６〕とから構成されており、上記第３のパイプラインレジスタ〔６〕の内容を第１のマルチポートレジスタファイル〔１〕に供給しているとともに、上記第１のパイプラインレジスタ〔３〕の内容を直線描画部〔７〕に供給している。そして、上記マルチポートレジスタファイル〔１〕、およびレジスタファイル〔２〕に対して汎用プロセッサ〔８〕からの座標データ等（直線補間を行なうべき辺の端点の座標データ、および辺の長さに基いて算出された増分値データ）が供給されている。
尚、〔９〕は描画コマンドデータ等を取込むためのI/Oインターフェースであり、〔10〕はメモリである。また、直線補間データに基いて線分を構成するピクセルデータを生成する直線描画部は、x,yデータ用の除算回路（11）、および加算回路（12）と、ｚデータ用の除算回路（13）、および加算回路（14）と、Ｉデータ用の除算回路（15）、および加算回路（16）とから構成されている。
以上の構成の多角形ぬりつぶし装置の動作は次のとおりである。
I/Oインターフェース〔９〕を通して多角形ぬりつぶし
コマンドデータが汎用プロセッサ〔８〕に供給されることにより、多角形を構成する辺の端点の座標に基いて除算を行ない、増分値データを得る。そして、上記端点の座標データをマルチポートレジスタファイル〔１〕に格納するとともに、増分値データをレジスタファイル〔２〕に格納する。
次いで、マルチポートレジスタファイル〔１〕のｘ座標データを第１のパイプラインレジスタ〔３〕に供給するとともに、レジスタファイル〔２〕の増分値データを第２のパイプラインレジスタ〔４〕に供給し、必要であれば（例えばセクショニング処理を行なう場合には必ずしも転送する必要はない）、第１のパイプラインレジスタ〔３〕の内容を直線描画部に供給する。
その後、上記両パイプラインレジスタ〔３〕〔４〕の内容に基いて加算回路〔５〕により座標データと増分値データとを加算する。
上記加算回路〔５〕において得た加算結果を第３のパイプラインレジスタ〔６〕に供給する。
最後に上記第３のパイプラインレジスタ〔６〕の内(4)7容をマルチポートレジスタファイル〔１〕に格納する。
即ち、以上の一連の動作を行なうことにより、端点の座標データに順次増分値データを加算して直線補間を行なうことができるのである。但し、上記直線補間動作は各辺のｘ座標、ｙ座標、ｚ座標、およびＩ座標について行なう必要があるので、各座標について順次上記一連の動作を行なわせる必要がある。
この場合において、ｘ座標について上記の処理が終了した後は、最早両パイプラインレジスタ〔３〕〔４〕にｘ座標に関するデータを保持させておく必要はないので、ｙ座標に関するデータをマルチポートレジスタファ
イル〔１〕、およびレジスタファイル〔２〕から出力し、出力されたデータを両パイプラインレジスタ〔３〕〔４〕に供給することができる。
また、ｘ座標について上記の処理が終了した場合には、両パイプラインレジスタ〔３〕〔４〕に格納されているｙ座標に関するデータに基いて加算回路〔５〕により加算動作を行なわせることができ、加算回路〔５〕による加算動作を行なわせる状態になれば、ｚ座標に関するデータをマルチポートレジスタファイル〔１〕、およびレジスタファイル〔２〕から出力し、出力されたデータを両パイプラインレジスタ〔３〕〔４〕に供給することができる。そして、上記 の動作を行なわせることができる。もちろん、ｚ座標に関するデータに基いて加算回路〔５〕による加算動作を行なわせる状態になれば、Ｉ座標に関するデータをマルチポートレジスタファイル（１）、およびレジスタファイル（２）から出力し、出力されたデータを両パイプラインレジスタ（３）（４）に供給することができる。
以上、要約すれば、第２図、および第３図に示すように、マルチポートレジスタファイル〔１〕、およびレジスタファイル〔２〕からの初期値データ、または累積加算値データの読出し、および増分値データの読出し動作、第１のパイプラインレジスタ〔３〕から直線描画部へのデータ出力、加算回路〔５〕による加算動作、および加算結果のマルチポートレジスタファイル〔１〕への格納動作を、各座標データについてそれぞれ１動作時間ずつずらせた状態で順次行なう。したがって、全体として、全てのデータを同時に得て、その後、得られたデータを順次直線描画部に供給する従来例とほぼ等しい時間で直線補間動作、および補間データの伝送を行なわせることができる。
また、以上の実施例においては、汎用プロセッサ〔８〕により除算動作を行なわせるようにしているが、直線補間動作を行なう場合における除算回数は非常に少ないのであるから、特に処理時間が長くなるという不都合はない。
第４図は他の実施例を示すブロック図であり、上記実施例と異なる点は、テクスチャマッピング動作を行なわせることができるようにするために、テクスチャ平面用の1020304050

特公平７−５４５５１8
直線描画を行なう除算回路（17）（18）、加算回路（19）（20）、加算回路（19）（20）から出力される加算結果を格納するマッピングメモリ（21）、およびシェーディング処理等を行なうための乗算回路（22）を追加した点のみである。
したがって、この実施例の場合には、x,y,z,I座標データの他にu,v座標データについても直線補間部により順次補間して直線補間データを得、順次除算回路（11）（13）（15）（17）（18）に供給することにより、u,v座標で表されるテクスチャ平面上の所望の図形データを、x,y,z,I座標で表されるディスプレイ平面上の所望の領域に投影する、いわゆるテクスチャマッピング処理を行なうことができる。
尚、この発明は上記の実施例に限定されるものではなく、例えば上記マルチポートレジスタファイル〔１〕に代えてマルチポートメモリを使用すること、レジスタファイル〔２〕に代えてメモリを使用することが可能であり、この場合において、メモリを３つ以上の領域に区画し、２の領域にそれぞれ左側の線分用のデータ、右側の線分用のデータを格納するとともに、他の１つの領域に描画する線分用のデータを格納し、残余の領域をセクシ
ョニング等のための判定機能を含む制御領域として使用する（例えば、x,y,z,u,v等用のフラグを格納しておくとともに、セクショニング用としてz1′,z2′，…zn′のフラグを格納しておく）ことにより、左右の線分のみならず、描画する線分についても時分割制御を行なうことができる他、直線補間のための除算動作を専用の除算回路により行なわせることが可能であり、さらには、断面図表示を行なわせる、いわゆるセクショニング処理にも適用することが可能であり、その他この発明の要旨を変更しない範囲内において、種々の設計変更を施すことが可能である。
＜発明の効果＞
以上のようにこの発明は、直線補間動作を行なうための加算回路を１つのみとすることが可能であるから、構成を簡素化することができるとともに、第１、第２の格納手段の容量により定まる次元数までの座標の拡張を簡単に行なうことができ、しかも、従来方式と同程度の直線補間処理速度を達成することができるという特有の効果を奏する。
【図面の簡単な説明】
第１図はこの発明の多角形ぬりつぶし装置の一実施例を示すブロック図、第２図、および第３図は直線補間動作を概略的に説明する動作説明図、第４図は他の実施例を示すブロック図、第５図は従来例を示すブロック図、第６図は従来の直線補間動作、およびデータ伝送動作を概略的に説明する動作説明図。
〔１〕……マルチポートレジスタファイル、

(5)9〔２〕……レジスタファイル、＊ ……加算回路、〔３〕〔４〕〔６〕……パイプラインレジスタ、〔５〕＊〔７〕……直線描画部【第１図】

特公平７−５４５５１
10

【第５図】

(6)

【第２図】

【第３図】

【第６図】

特公平７−５４５５１

(7)【第４図】

特公平７−５４５５１