JPH0727572B2 - 比較を行い信号を発生する装置およびその方法 - Google Patents
比較を行い信号を発生する装置およびその方法Info
- Publication number
- JPH0727572B2 JPH0727572B2 JP699090A JP699090A JPH0727572B2 JP H0727572 B2 JPH0727572 B2 JP H0727572B2 JP 699090 A JP699090 A JP 699090A JP 699090 A JP699090 A JP 699090A JP H0727572 B2 JPH0727572 B2 JP H0727572B2
- Authority
- JP
- Japan
- Prior art keywords
- coordinate
- clip
- predetermined
- offset
- pairs
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—Three-dimensional [3D] image rendering
- G06T15/10—Geometric effects
- G06T15/30—Clipping
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、グラフイツク表示サブシステムにより表示す
る映像をクリツプする効率を高くするために、テストウ
インドウを用いる装置および方法に関するものである。
とくに、本発明に従つて、その中にグラフイツク映像を
表示することを望むウインドウ(クリツプウインドウ)
を囲むテストウインドウが形成される。それから、物体
の頂点がテストウインドウの外側にあるかどうかが調べ
られる。テストウインドウを用いることにより、クリツ
プされた物体の処理の間で、本発明を含むハードウエア
をベースとするグラフイツクスサブシステムにより、ま
たはグラフイツクス表示器に対してインターフエイスす
る汎用CPUにより実行されるグラフイツクスソフトウエ
アにより、性能を最適にできる。クリツプウインドウに
対してテストウインドウの寸法を正しく定めることによ
り、テストウインドウの中に完全に入つている物体は、
クリツプされており、かつ数多くの見えない画像を処理
することを潜在的に必要とはするが、物体をグラフイツ
クスソフトウエアにまかせるのではなくて、グラフイツ
クスサブシステムにより一層速く表示される。そのグラ
フイツクスソフトウエアは、この分野において周知のア
ルゴリズムと方法により、処理される画像を見えるもの
だけに限定し、最終的にはビデオ表示器へ出力される。
頂点がテストウインドウの外側に出ている物体は表示を
グラフイツクスソフトウエアにまかされる。その理由
は、物体の見える部分を表示する時間が、グラフイツク
スサブシステムが物体を取扱う場合よりも短いからであ
る。特殊化されたグラフイツクスハードウエアがクリツ
プされた物体を取扱うべき時、およびそのハードウエア
が取扱うべきでない時に、その最適化はグラフイツクス
装置の全体の性能に大きな影響を及ぼすことがある。
る映像をクリツプする効率を高くするために、テストウ
インドウを用いる装置および方法に関するものである。
とくに、本発明に従つて、その中にグラフイツク映像を
表示することを望むウインドウ(クリツプウインドウ)
を囲むテストウインドウが形成される。それから、物体
の頂点がテストウインドウの外側にあるかどうかが調べ
られる。テストウインドウを用いることにより、クリツ
プされた物体の処理の間で、本発明を含むハードウエア
をベースとするグラフイツクスサブシステムにより、ま
たはグラフイツクス表示器に対してインターフエイスす
る汎用CPUにより実行されるグラフイツクスソフトウエ
アにより、性能を最適にできる。クリツプウインドウに
対してテストウインドウの寸法を正しく定めることによ
り、テストウインドウの中に完全に入つている物体は、
クリツプされており、かつ数多くの見えない画像を処理
することを潜在的に必要とはするが、物体をグラフイツ
クスソフトウエアにまかせるのではなくて、グラフイツ
クスサブシステムにより一層速く表示される。そのグラ
フイツクスソフトウエアは、この分野において周知のア
ルゴリズムと方法により、処理される画像を見えるもの
だけに限定し、最終的にはビデオ表示器へ出力される。
頂点がテストウインドウの外側に出ている物体は表示を
グラフイツクスソフトウエアにまかされる。その理由
は、物体の見える部分を表示する時間が、グラフイツク
スサブシステムが物体を取扱う場合よりも短いからであ
る。特殊化されたグラフイツクスハードウエアがクリツ
プされた物体を取扱うべき時、およびそのハードウエア
が取扱うべきでない時に、その最適化はグラフイツクス
装置の全体の性能に大きな影響を及ぼすことがある。
クリツプを行うために必要な比較をハードウエアにおい
て行うグラフイツクスサブシステムについて本発明を説
明する。比較の副産物により、物体の頂点と、物体をそ
の中で描くことができるウインドウとの間の関係を決定
するために必要なある情報を利用できるようにされる。
て行うグラフイツクスサブシステムについて本発明を説
明する。比較の副産物により、物体の頂点と、物体をそ
の中で描くことができるウインドウとの間の関係を決定
するために必要なある情報を利用できるようにされる。
本発明は、ビデオ表示器で表示する映像を、可能であれ
ば常にハードウエアでクリツプし、本発明のグラフイツ
クスサブシステムを用いて確実に、または、性能上の理
由から、最適に、クリツプできない映像または映像部分
だけをソフトウエアのために残すような装置の部分を構
成する。
ば常にハードウエアでクリツプし、本発明のグラフイツ
クスサブシステムを用いて確実に、または、性能上の理
由から、最適に、クリツプできない映像または映像部分
だけをソフトウエアのために残すような装置の部分を構
成する。
本発明は、エンジニヤリングワークステーシヨンのグラ
フイツクスサブシステムと、とくに、定められているウ
インドウ内に表示すべき図形情報処理をハードウエアで
実現することに向けられる。比較ハードウエアにより利
用できるようにされる情報を用いることにより、物体の
頂点が、ウインドウを囲んでいるテストウインドウの外
側にあるかどうかを判定することが可能である。そのよ
うな情報を利用できると、実際のウインドウの完全に外
側に物体があることを判定し、それにより物体を描くた
めに必要な計算を行う必要性をなくすことがしばしば可
能である。
フイツクスサブシステムと、とくに、定められているウ
インドウ内に表示すべき図形情報処理をハードウエアで
実現することに向けられる。比較ハードウエアにより利
用できるようにされる情報を用いることにより、物体の
頂点が、ウインドウを囲んでいるテストウインドウの外
側にあるかどうかを判定することが可能である。そのよ
うな情報を利用できると、実際のウインドウの完全に外
側に物体があることを判定し、それにより物体を描くた
めに必要な計算を行う必要性をなくすことがしばしば可
能である。
とくに、本発明は、テストウインドウとよばれる2番目
のクリッピング境界をサポートする。クリップされ(隠
され)た幾つかの部分を有する物体をハードウエアで処
理すること、または、ハードウエアに物体についての処
理を拒否させること(これは、CPUソフトウエアがその
物体の描出を取り扱うことを示唆する)の二者択一の選
択を判定する手段が、テストウインドウにより提供され
る。従来のソフトウエアにおいて用いられている手法
は、物体とクリッピング境界との交差を見いだすため
に、ある算術計算を行う。これは時間がかかる(多くの
クロックサイクルを要する)タスクであるから、多くの
場合には、物体の隠された部分の処理に多くのサイクル
を費やすことがあるとしても、ハードウエアで物体を取
り扱う方が実際には高速である。ハードウエアが任意に
与えられたクリツプされた物体を取扱うべきか否かを決
定するために用いられる判定基準は、定義によりクリツ
プウインドウを完全に常に囲んでいるテストウインドウ
の内側と外側のいずれにその物体があるかを基にして定
められる。交差を計算し、物体の可視部分を表現する時
のハードウエアの性能とホストCPUの性能についての従
前の知識を基にして、テストウインドウの大きさは定め
られる。テストウインドウのサポートと、それに関連す
る判定とにおいて、座標比較論理は、各頂点と、適切な
(XまたはY)最小および最大のテストウインドウ境界
との比較も行う。後で詳しく説明するように、物体の表
現をグラフイツクスサブシステムまたはソフトウエアで
取扱うべきかをそれぞれ定める信号HWとSWを発生するた
めに、その情報は状態発生論理51により用いられる。
のクリッピング境界をサポートする。クリップされ(隠
され)た幾つかの部分を有する物体をハードウエアで処
理すること、または、ハードウエアに物体についての処
理を拒否させること(これは、CPUソフトウエアがその
物体の描出を取り扱うことを示唆する)の二者択一の選
択を判定する手段が、テストウインドウにより提供され
る。従来のソフトウエアにおいて用いられている手法
は、物体とクリッピング境界との交差を見いだすため
に、ある算術計算を行う。これは時間がかかる(多くの
クロックサイクルを要する)タスクであるから、多くの
場合には、物体の隠された部分の処理に多くのサイクル
を費やすことがあるとしても、ハードウエアで物体を取
り扱う方が実際には高速である。ハードウエアが任意に
与えられたクリツプされた物体を取扱うべきか否かを決
定するために用いられる判定基準は、定義によりクリツ
プウインドウを完全に常に囲んでいるテストウインドウ
の内側と外側のいずれにその物体があるかを基にして定
められる。交差を計算し、物体の可視部分を表現する時
のハードウエアの性能とホストCPUの性能についての従
前の知識を基にして、テストウインドウの大きさは定め
られる。テストウインドウのサポートと、それに関連す
る判定とにおいて、座標比較論理は、各頂点と、適切な
(XまたはY)最小および最大のテストウインドウ境界
との比較も行う。後で詳しく説明するように、物体の表
現をグラフイツクスサブシステムまたはソフトウエアで
取扱うべきかをそれぞれ定める信号HWとSWを発生するた
めに、その情報は状態発生論理51により用いられる。
クリツピングを伴う任意の四辺形表現と、クリツピング
を伴うブロツク映像転送(BLIT)をサポートするために
必要な蓄積および比較情報を供給するために、座標ステ
ージング論理ブロツクおよび座標比較論理ブロツク(第
1図)が設けられる。四辺形表現とブロツク映像転送に
おいては、4つのX/Y座標対を指定し、クリツピングウ
インドウの境界を指定する必要がある。
を伴うブロツク映像転送(BLIT)をサポートするために
必要な蓄積および比較情報を供給するために、座標ステ
ージング論理ブロツクおよび座標比較論理ブロツク(第
1図)が設けられる。四辺形表現とブロツク映像転送に
おいては、4つのX/Y座標対を指定し、クリツピングウ
インドウの境界を指定する必要がある。
四辺形の表現をサポートすることは、その四辺形を決定
する4つの頂点を利用できることを意味する。本発明の
ここで説明する実施例はそれらの頂点に非常に少い制約
を課すだけである。それらの頂点は4つのレジスタ対
(X座標に対する1つのレジスタと、Y座標に対する1
つのレジスタとで構成されるレジスタ対)に格納され、
頂点番号0〜3がつけられる。頂点0は頂点1へ連結さ
れ、頂点1は頂点2へ連結され、頂点2は頂点3へ連結
され、頂点3は頂点0へ連結される。たとえば頂点0と
2、1と3は連結しない。座標ステージングロジツクと
座標比較ロジツクは、表示器メモリへの指定された四辺
形の供給を最終的に行うパイプラインの初段を形成す
る。パイプラインの次の段は、各隣接する頂点の、それ
の近くの頂点(たとえば、頂点1の場合には、X1対X0、
Y1対Y0、X1対X2、およびY1対Y2)に対する関係について
の情報を要する。構成される時に元の四辺形を正確に表
す一連の台形を機能アドレツシングブロツクへ正しく供
給するために、その情報は必要とされる。座標シーケン
シングロジツクにより任意の四辺形が分解される。
する4つの頂点を利用できることを意味する。本発明の
ここで説明する実施例はそれらの頂点に非常に少い制約
を課すだけである。それらの頂点は4つのレジスタ対
(X座標に対する1つのレジスタと、Y座標に対する1
つのレジスタとで構成されるレジスタ対)に格納され、
頂点番号0〜3がつけられる。頂点0は頂点1へ連結さ
れ、頂点1は頂点2へ連結され、頂点2は頂点3へ連結
され、頂点3は頂点0へ連結される。たとえば頂点0と
2、1と3は連結しない。座標ステージングロジツクと
座標比較ロジツクは、表示器メモリへの指定された四辺
形の供給を最終的に行うパイプラインの初段を形成す
る。パイプラインの次の段は、各隣接する頂点の、それ
の近くの頂点(たとえば、頂点1の場合には、X1対X0、
Y1対Y0、X1対X2、およびY1対Y2)に対する関係について
の情報を要する。構成される時に元の四辺形を正確に表
す一連の台形を機能アドレツシングブロツクへ正しく供
給するために、その情報は必要とされる。座標シーケン
シングロジツクにより任意の四辺形が分解される。
また、以後のパイプライン段においてクリッピング境界
で四辺形をクリッピングすることをサポートするため
に、クリッピング境界と頂点との関係が必要とされる。
これは、例えば全てのX頂点が、最小Xクリップ境界と
最大Xクリップ境界に対して比較されることを意味す
る。Y頂点についても同様の比較が必要とされる。ある
場合には、それらの比較は、物体が任意の(クリップさ
れていない)可視部分を有するか否かを示す。見えない
物体を前もって識別することにより、見えない画素が表
示メモリへの書込み用に特定されることがなくなるか
ら、以後のパイプライン段の使用を避けることができ
る。このことは、クリッピング情報が分析された時に、
すぐ、四辺形の描出が生じたと考えることができる、と
いう性能上の利点を表す。
で四辺形をクリッピングすることをサポートするため
に、クリッピング境界と頂点との関係が必要とされる。
これは、例えば全てのX頂点が、最小Xクリップ境界と
最大Xクリップ境界に対して比較されることを意味す
る。Y頂点についても同様の比較が必要とされる。ある
場合には、それらの比較は、物体が任意の(クリップさ
れていない)可視部分を有するか否かを示す。見えない
物体を前もって識別することにより、見えない画素が表
示メモリへの書込み用に特定されることがなくなるか
ら、以後のパイプライン段の使用を避けることができ
る。このことは、クリッピング情報が分析された時に、
すぐ、四辺形の描出が生じたと考えることができる、と
いう性能上の利点を表す。
ここで説明しているグラフイツクス装置の好適な実施例
は、線分に組合わされた画素を決定する時に、16ビツト
の2の補数の数学を利用する。この数学は、線分の2つ
のX頂点と2つのY頂点の差をとることを含む。数学的
なあふれを避けるために、XとYの頂点の値の数値範囲
を15ビツト、すなわち、-214と(214−1)の間で表す
ことができるように制限せねばならない。これのサポー
トにおいては、頂点の数値範囲は座標比較ロジツクによ
り調べられる。
は、線分に組合わされた画素を決定する時に、16ビツト
の2の補数の数学を利用する。この数学は、線分の2つ
のX頂点と2つのY頂点の差をとることを含む。数学的
なあふれを避けるために、XとYの頂点の値の数値範囲
を15ビツト、すなわち、-214と(214−1)の間で表す
ことができるように制限せねばならない。これのサポー
トにおいては、頂点の数値範囲は座標比較ロジツクによ
り調べられる。
BLITのサポートは4つの頂点も必要とする。そのうちの
2つの頂点はソース(SRC)長方形の向き合う隅を指定
し、他の2つは宛先(DEST)長方形の向き合う隅を指定
する。BLITオペレーシヨンの意図は、SRC長方形に含ま
れている画素をDEST長方形へコピーすることである。こ
こで説明している実施例においては、SRCの左上隅は頂
点0に格納され、SRCの右下隅は頂点1に格納される。
同様に、DESTの左上隅は頂点2に格納され、DESTの右下
隅は頂点3に格納される。SRCをDESTへ正しくコピーす
るためには、2つの長方形が重なり合う場合に注意を払
わねばならない。2つの長方形が重なり合うと、正しい
結果を得るものとすれば、画素をコピーする順序が制約
される。これは当業者に周知の問題である。画素のコピ
ーにおける制約(すなわち、画素をコピーする順序)を
正しく決定するために要する情報には、SRC長方形の境
界とDEST長方形の境界とについての、重なり合いを見つ
けるための比較結果が含まれる。これは含まれているX
とYの座標に対して必要とされる。
2つの頂点はソース(SRC)長方形の向き合う隅を指定
し、他の2つは宛先(DEST)長方形の向き合う隅を指定
する。BLITオペレーシヨンの意図は、SRC長方形に含ま
れている画素をDEST長方形へコピーすることである。こ
こで説明している実施例においては、SRCの左上隅は頂
点0に格納され、SRCの右下隅は頂点1に格納される。
同様に、DESTの左上隅は頂点2に格納され、DESTの右下
隅は頂点3に格納される。SRCをDESTへ正しくコピーす
るためには、2つの長方形が重なり合う場合に注意を払
わねばならない。2つの長方形が重なり合うと、正しい
結果を得るものとすれば、画素をコピーする順序が制約
される。これは当業者に周知の問題である。画素のコピ
ーにおける制約(すなわち、画素をコピーする順序)を
正しく決定するために要する情報には、SRC長方形の境
界とDEST長方形の境界とについての、重なり合いを見つ
けるための比較結果が含まれる。これは含まれているX
とYの座標に対して必要とされる。
また、以後のパイプライン段においてSRC長方形とDEST
長方形のクリツピングをサポートするために、適切なク
リツピング境界に対するSRC頂点およびDEST頂点の関係
が求められる。また再び、これは、SRCまたはDESTの長
方形が完全に隠されている(見えない)ことを指示する
ことがあり、かつ以後のパイプライン段を利用する必要
をなくすことがある。これは、BLITの実行が、クリツピ
ング情報が分析されると直ちに起きたと考えることがで
きることで、性能上の利点を表す。
長方形のクリツピングをサポートするために、適切なク
リツピング境界に対するSRC頂点およびDEST頂点の関係
が求められる。また再び、これは、SRCまたはDESTの長
方形が完全に隠されている(見えない)ことを指示する
ことがあり、かつ以後のパイプライン段を利用する必要
をなくすことがある。これは、BLITの実行が、クリツピ
ング情報が分析されると直ちに起きたと考えることがで
きることで、性能上の利点を表す。
座標ステージング制御論理は、獲得すべき座標値に対す
る多数のやり方をサポートする。したがつて、座標値を
供給するやり方とは無関係に、座標比較論理は必要な比
較情報を維持する。座標獲得のための種々の方法は、絶
対ローディング法、指標付きローディング法、相対ロー
ディング法として要約できる。用いる特定のローディン
グ法は、CPUがロードするレジスタの特定に用いるレジ
スタ・アドレスにより、決定される。第1の絶対ローデ
ィング法ではアドレスされたレジスタへCPUにより供給
される実際の値を格納することにより絶対座標値がロー
ドされる。後で説明するようにクリツピング境界レジス
タとラスタオフセツトレジスタと、個々の座標レジスタ
とのローデイングのためにそのローデイング法が用いら
れる。第2の方法、指標付きローデイング法では、多数
の座標に同じ値を効率的にロードするために用いられ
る。この場合には、CPUが供給した値が、1つまたは複
数の座標レジスタに格納するために利用できるようにさ
れる前に、適切なラスタオフセツトレジスタ(ラスタオ
フセツトXまたはY)へ初めに加えられる。ラスタオフ
セツトを加えることにより、表示メモリの異なる領域へ
CPUにより供給されるX/Yアドレス空間をオフセツトする
手段が与えられる。
る多数のやり方をサポートする。したがつて、座標値を
供給するやり方とは無関係に、座標比較論理は必要な比
較情報を維持する。座標獲得のための種々の方法は、絶
対ローディング法、指標付きローディング法、相対ロー
ディング法として要約できる。用いる特定のローディン
グ法は、CPUがロードするレジスタの特定に用いるレジ
スタ・アドレスにより、決定される。第1の絶対ローデ
ィング法ではアドレスされたレジスタへCPUにより供給
される実際の値を格納することにより絶対座標値がロー
ドされる。後で説明するようにクリツピング境界レジス
タとラスタオフセツトレジスタと、個々の座標レジスタ
とのローデイングのためにそのローデイング法が用いら
れる。第2の方法、指標付きローデイング法では、多数
の座標に同じ値を効率的にロードするために用いられ
る。この場合には、CPUが供給した値が、1つまたは複
数の座標レジスタに格納するために利用できるようにさ
れる前に、適切なラスタオフセツトレジスタ(ラスタオ
フセツトXまたはY)へ初めに加えられる。ラスタオフ
セツトを加えることにより、表示メモリの異なる領域へ
CPUにより供給されるX/Yアドレス空間をオフセツトする
手段が与えられる。
指標付きローデイング機構は2ビツト指標を用いて、そ
れ自身を案内し、かつ、与えられた任意のサイクル中に
どれだけの数のどの座標レジスタにロードするかを識別
する。変質四辺形−点、線のための二対のX/Y対、また
は三角形のための三対のX/Y対、を識別するためにただ
1つのX/Y対をCPUが指定できるようにするのはその機構
である。上記変質四辺形の1つが4つの頂点レジスタに
ロードされると、1つまたは複数の頂点を繰返えすこと
ができる。以後のパイプライン段が、四辺形(変質して
いるが)として定められた物体を常に解釈できるよう
に、かつ全ての下位物体(すなわち、点、線、三角形)
を特殊なケースとして処理されないように、それは必要
である。指標付きローデイングのやり方により、長方形
の向き合う隅だけを入れ対応する四辺形の4つの隅の全
てを正しく定めることができるようにもされる。
れ自身を案内し、かつ、与えられた任意のサイクル中に
どれだけの数のどの座標レジスタにロードするかを識別
する。変質四辺形−点、線のための二対のX/Y対、また
は三角形のための三対のX/Y対、を識別するためにただ
1つのX/Y対をCPUが指定できるようにするのはその機構
である。上記変質四辺形の1つが4つの頂点レジスタに
ロードされると、1つまたは複数の頂点を繰返えすこと
ができる。以後のパイプライン段が、四辺形(変質して
いるが)として定められた物体を常に解釈できるよう
に、かつ全ての下位物体(すなわち、点、線、三角形)
を特殊なケースとして処理されないように、それは必要
である。指標付きローデイングのやり方により、長方形
の向き合う隅だけを入れ対応する四辺形の4つの隅の全
てを正しく定めることができるようにもされる。
最後の相対ローデイング法は最後に入れられた座標と意
図する新しい座標値の間の差をCPUがちようど指定でき
るようにするために用いられる。この場合には、1つま
たは複数のレジスタにローデイングされる前に、CPUが
供給したデルタすなわちオフセツトが以前にロードされ
た座標に加えられる。必要な加算のために最後に入れら
れた座標〔頂点(指標−1)mod4〕を識別し、指標付き
ローデイングの場合のようにどのレジスタにロードする
必要があるかを識別するために2ビツト指標が用いられ
る。
図する新しい座標値の間の差をCPUがちようど指定でき
るようにするために用いられる。この場合には、1つま
たは複数のレジスタにローデイングされる前に、CPUが
供給したデルタすなわちオフセツトが以前にロードされ
た座標に加えられる。必要な加算のために最後に入れら
れた座標〔頂点(指標−1)mod4〕を識別し、指標付き
ローデイングの場合のようにどのレジスタにロードする
必要があるかを識別するために2ビツト指標が用いられ
る。
最後の結果においては、支持される任意のやり方で座標
レジスタにロードするためにCPUは自由に選択される。
四辺形表現またはBLITのいずれかである、オペレーシヨ
ンが実際に要求されると(座標が既にロードされた後
で)、4つの頂点がどのようにして得られたかを顧慮す
ることなしに、それらの頂点の現在の状態が直接利用さ
れる。これによりCPUの融通性が最大限に得られる。
レジスタにロードするためにCPUは自由に選択される。
四辺形表現またはBLITのいずれかである、オペレーシヨ
ンが実際に要求されると(座標が既にロードされた後
で)、4つの頂点がどのようにして得られたかを顧慮す
ることなしに、それらの頂点の現在の状態が直接利用さ
れる。これによりCPUの融通性が最大限に得られる。
第1図は本発明を利用できるグラフイツクスサブシステ
ムの概観を示す。バスインターフエイス論理11はアドレ
スバスと、データバスとを介して中央処理装置(図示せ
ず)へ接続される。このグラフイツクスサブシステムの
機能部品はデータ路およびメモリインターフエイス13
と、座標ステージング部15と、座標シーケンシング部17
と、機能アドレツシングブロツク19と、マスク発生ブロ
ツク21と、直線アドレス発生器23とである。
ムの概観を示す。バスインターフエイス論理11はアドレ
スバスと、データバスとを介して中央処理装置(図示せ
ず)へ接続される。このグラフイツクスサブシステムの
機能部品はデータ路およびメモリインターフエイス13
と、座標ステージング部15と、座標シーケンシング部17
と、機能アドレツシングブロツク19と、マスク発生ブロ
ツク21と、直線アドレス発生器23とである。
データ路およびメモリインターフエイス13はフレームバ
ツフア(図示せず)を更新する。そのフレームバツフア
は、CRTのようなビデオ表示器で表示すべき図形情報を
格納するメモリである。すなわち、フレームバツフアに
ロードされるデータが、ビデオ表示の個々の画素をオン
・オフさせる適切な電気信号へデータを変換するビデオ
回路によりアクセスされる。バスインターフエイス論理
からのデータは、座標ステージング部15と、座標シーケ
ンシング部17および機能アドレツシング段19により実行
される処理を基にして、マスク発生ブロツク21と直線ア
ドレス発生器23により修正される。機能アドレツシング
段19は、特定のグラフイツクス物体を表示するクリツプ
ウインドウにそれらの物体を適合させるために必要なク
リツピングの一部も行い、かつ信号をマスク発生段21へ
転送する。マスク発生段は、各走査線ごとに、可視物体
の始めから終りまで拡がる16個の画素部分に情報を配置
する。それらの画素部分はデータ路およびメモリインタ
ーフエイス段13をアドレスするために用いられる。
ツフア(図示せず)を更新する。そのフレームバツフア
は、CRTのようなビデオ表示器で表示すべき図形情報を
格納するメモリである。すなわち、フレームバツフアに
ロードされるデータが、ビデオ表示の個々の画素をオン
・オフさせる適切な電気信号へデータを変換するビデオ
回路によりアクセスされる。バスインターフエイス論理
からのデータは、座標ステージング部15と、座標シーケ
ンシング部17および機能アドレツシング段19により実行
される処理を基にして、マスク発生ブロツク21と直線ア
ドレス発生器23により修正される。機能アドレツシング
段19は、特定のグラフイツクス物体を表示するクリツプ
ウインドウにそれらの物体を適合させるために必要なク
リツピングの一部も行い、かつ信号をマスク発生段21へ
転送する。マスク発生段は、各走査線ごとに、可視物体
の始めから終りまで拡がる16個の画素部分に情報を配置
する。それらの画素部分はデータ路およびメモリインタ
ーフエイス段13をアドレスするために用いられる。
マスク発生信号は直線アドレス発生器23へも供給され
る。この直線アドレス発生器はマスク発生段21により供
給されたアドレスを、出力表示器へ転送するためにフレ
ームバツフアを直線的にアドレツシングする信号に変え
る。データ路およびメモリインターフエイスブロツク13
の一例が、1988年10月14日付の出願に係る米国特許第4,
980,780号に開示されている。座標シーケンシング論理1
7の一例が、1988年12月20日の出願に係る米国特許第5,0
20,002号に開示されている。直線アドレス発生器23の一
例が、1988年12月20日付の出願に係る米国特許第4,945,
497号に開示されている。本発明は、座標ステージング
ブロツク15において、それの入力を基にしてある動作を
行う回路に関するものである。それらの入力の特定のも
のについては、クリツピング付きで任意の四辺形表示
と、クリツピング付きのブロツク映像転送(BLIT)とを
グラフイツクスサブシステムが実行可能にするために、
制御信号の性質で情報を発生する第2図乃至第14図を参
照して後で説明する。したがつて、本発明は座標ステー
ジング部15内の特定の回路に関するものである。
る。この直線アドレス発生器はマスク発生段21により供
給されたアドレスを、出力表示器へ転送するためにフレ
ームバツフアを直線的にアドレツシングする信号に変え
る。データ路およびメモリインターフエイスブロツク13
の一例が、1988年10月14日付の出願に係る米国特許第4,
980,780号に開示されている。座標シーケンシング論理1
7の一例が、1988年12月20日の出願に係る米国特許第5,0
20,002号に開示されている。直線アドレス発生器23の一
例が、1988年12月20日付の出願に係る米国特許第4,945,
497号に開示されている。本発明は、座標ステージング
ブロツク15において、それの入力を基にしてある動作を
行う回路に関するものである。それらの入力の特定のも
のについては、クリツピング付きで任意の四辺形表示
と、クリツピング付きのブロツク映像転送(BLIT)とを
グラフイツクスサブシステムが実行可能にするために、
制御信号の性質で情報を発生する第2図乃至第14図を参
照して後で説明する。したがつて、本発明は座標ステー
ジング部15内の特定の回路に関するものである。
ビデオ表示サブシステムを含む前記機能ブロツクを正し
く動作せるために必要な各種のタイミング信号と制御信
号を発生させることは当業者に周知であるから、本発明
を正しく理解するために必要な場合を除いて説明は省略
する。
く動作せるために必要な各種のタイミング信号と制御信
号を発生させることは当業者に周知であるから、本発明
を正しく理解するために必要な場合を除いて説明は省略
する。
次に、座標ステージング部15のブロツク図が示されてい
る第2図を参照する。座標ステージング部15は加算器31
と、ローデイング制御状態マシン33と、マルチプレクサ
35と、XY座標レジスタ37と、クリツプ座標レジスタ39
と、ラスタオフセツトレジスタ41と、指標論理43と、テ
ストウインドウ制御論理45と、比較論理および結果記憶
装置47と、比較制御状態マシン49と、状態発生論理51と
を有する。
る第2図を参照する。座標ステージング部15は加算器31
と、ローデイング制御状態マシン33と、マルチプレクサ
35と、XY座標レジスタ37と、クリツプ座標レジスタ39
と、ラスタオフセツトレジスタ41と、指標論理43と、テ
ストウインドウ制御論理45と、比較論理および結果記憶
装置47と、比較制御状態マシン49と、状態発生論理51と
を有する。
本発明の特定の例について説明する前に、本発明を実現
するやり方を理解する助けのために、物体をどのように
して表すかについて簡単に説明する。
するやり方を理解する助けのために、物体をどのように
して表すかについて簡単に説明する。
頂点のXY対がビデオ表示座標を表す。典型的な表示のた
めに、Xは0〜1151の範囲、Yは0〜899の範囲にあ
る。各X座標と各Y座標は別々の32ビツトレジスタ、ま
たは一対の16ビツトレジスタに格納される。16ビツトは
最大のスクリーン座標(すなわち、65535まで、すなわ
ち−32768〜+32767)を格納するのに適切以上のもので
あるが、32ビツトの情報はグラフイツクスソフトウエア
において最も普通のデータ種類であり、かつビデオ表示
よりはるかに広い面積に拡がることがある最も実際的な
物体を取扱うために十分広い範囲を提供するから、32ビ
ツトの情報は格納される。
めに、Xは0〜1151の範囲、Yは0〜899の範囲にあ
る。各X座標と各Y座標は別々の32ビツトレジスタ、ま
たは一対の16ビツトレジスタに格納される。16ビツトは
最大のスクリーン座標(すなわち、65535まで、すなわ
ち−32768〜+32767)を格納するのに適切以上のもので
あるが、32ビツトの情報はグラフイツクスソフトウエア
において最も普通のデータ種類であり、かつビデオ表示
よりはるかに広い面積に拡がることがある最も実際的な
物体を取扱うために十分広い範囲を提供するから、32ビ
ツトの情報は格納される。
四辺形物体は四対の頂点(X0,Y0)、(X1,Y1)、(X2,Y
2)、(X3,Y3)の組合わせとして表される。物体が点で
あると、四対の頂点は全て同じである、すなわち、3個
の点が反復される。物体が線であると、四対のうちの二
対(または四対のうちの三対)の頂点が折り返えされ
る。物体が三角形であると、四対の頂点からの一対の頂
点が折り返えされる。物体が四辺形であれば四対の頂点
は全て異なる。物体(すなわち、点、線、三角形または
四辺形)は、物体を完全に定めるために必要な最少数の
独特の頂点、すなわち、点の場合は1、線の場合は2、
三角形の場合には3、四辺形の場合には4、長方形の場
合には2(向き合う隅)を用いて最も効率的に定められ
る。
2)、(X3,Y3)の組合わせとして表される。物体が点で
あると、四対の頂点は全て同じである、すなわち、3個
の点が反復される。物体が線であると、四対のうちの二
対(または四対のうちの三対)の頂点が折り返えされ
る。物体が三角形であると、四対の頂点からの一対の頂
点が折り返えされる。物体が四辺形であれば四対の頂点
は全て異なる。物体(すなわち、点、線、三角形または
四辺形)は、物体を完全に定めるために必要な最少数の
独特の頂点、すなわち、点の場合は1、線の場合は2、
三角形の場合には3、四辺形の場合には4、長方形の場
合には2(向き合う隅)を用いて最も効率的に定められ
る。
ブロツク映像転送(BLIT)動作を行うものとすると、4
つのX/Yレジスタが下記のような意味を持ち、それに従
つてロードされる。
つのX/Yレジスタが下記のような意味を持ち、それに従
つてロードされる。
X0−ソースブロツクの左上隅のX座標 Y0−ソースブロツクの左上隅のY座標 X1−ソースブロツクの右下隅のX座標 Y1−ソースブロツクの右下隅のY座標 X2−宛先ブロツクの左上隅のX座標 Y2−宛先ブロツクの左上隅のY座標 X3−宛先ブロツクの右下隅のX座標 Y3−宛先ブロツクの右下隅のY座標 CRTのような表示器で表示する映像は個々の画素として
形成される。画素はフレームバツフアとして知られてい
るランダムアクセスメモリ(RAM)に1つまたは複数の
プレーン(すなわちビツト)で格納される。プレーンの
数は、カラー装置の場合には、典型的には8である。フ
レームバツフアに格納されているデータは一対の座標X
とYによりアドレスされる。ここに、X,Y対は全てのプ
レーンにおける特定の画素を識別し、Xは行、Yは列で
ある。画素は各プレーンからの1つのビツトにより定め
られる。したがつて、8つのプレーンが利用されるもの
とすると、表示される各画素はフレームバツフア内の8
ビツトにより定められる。このようにして、ある画素の
1ビツトを用いてそれがオンであるか、オフであるかを
指定でき、残りの7ビツトは画素の色を指定する。また
は、8個の画素の全てを用いて色を指定できる。画素を
ターンオフするために色の1つは表示の背景の色と同じ
である。
形成される。画素はフレームバツフアとして知られてい
るランダムアクセスメモリ(RAM)に1つまたは複数の
プレーン(すなわちビツト)で格納される。プレーンの
数は、カラー装置の場合には、典型的には8である。フ
レームバツフアに格納されているデータは一対の座標X
とYによりアドレスされる。ここに、X,Y対は全てのプ
レーンにおける特定の画素を識別し、Xは行、Yは列で
ある。画素は各プレーンからの1つのビツトにより定め
られる。したがつて、8つのプレーンが利用されるもの
とすると、表示される各画素はフレームバツフア内の8
ビツトにより定められる。このようにして、ある画素の
1ビツトを用いてそれがオンであるか、オフであるかを
指定でき、残りの7ビツトは画素の色を指定する。また
は、8個の画素の全てを用いて色を指定できる。画素を
ターンオフするために色の1つは表示の背景の色と同じ
である。
本発明は、テストウインドウ制御論理45と状態発生論理
51の実現に主としてある。これに関連して、第2図に示
されている他の機能ブロツクの動作と実現については、
本発明を正しく理解するために必要な部分についてのみ
説明することにする。
51の実現に主としてある。これに関連して、第2図に示
されている他の機能ブロツクの動作と実現については、
本発明を正しく理解するために必要な部分についてのみ
説明することにする。
加算器31とMUX35 加算器31は16ビツトまたは32ビツトの2の補数2進加算
器であつて、CPUからの入来データを表すインターフエ
イス論理11からのDataIn入力と、ラスタオフセツトレジ
スタ47、X/Y座標レジスタ37、またはクリツプ座標レジ
スタ39からの1組の入力のうちの1つを選択するマルチ
プレクサであるMUX35からの入力との2つの入力を有す
る。下記のように、ローデイング制御状態マシン33によ
り発生される信号によりMUX35からの入力が選択され
る。
器であつて、CPUからの入来データを表すインターフエ
イス論理11からのDataIn入力と、ラスタオフセツトレジ
スタ47、X/Y座標レジスタ37、またはクリツプ座標レジ
スタ39からの1組の入力のうちの1つを選択するマルチ
プレクサであるMUX35からの入力との2つの入力を有す
る。下記のように、ローデイング制御状態マシン33によ
り発生される信号によりMUX35からの入力が選択され
る。
次に、加算器31とマルチプレクサ35を第3図を参照して
詳しく説明する。第3図においては加算器31は16ビツト
加算器として示されている。これに関して、好適な実施
例においてはDataInは32ビツトであるから32ビツト加算
器を使用できるが、本発明を実施する集積回路上のスペ
ースを節約するためと、本発明によつて利用されるパイ
プラインのタイミング要求が2ステツプ加算で満たされ
ることから、以下の説明は16ビツト加算器について行
う。32ビツト加算器を用いる場合との違いは当業者には
明らかであろうから、それについての説明は省略する。
詳しく説明する。第3図においては加算器31は16ビツト
加算器として示されている。これに関して、好適な実施
例においてはDataInは32ビツトであるから32ビツト加算
器を使用できるが、本発明を実施する集積回路上のスペ
ースを節約するためと、本発明によつて利用されるパイ
プラインのタイミング要求が2ステツプ加算で満たされ
ることから、以下の説明は16ビツト加算器について行
う。32ビツト加算器を用いる場合との違いは当業者には
明らかであろうから、それについての説明は省略する。
マルチプレクサ35は、実際には一対のマルチプレクサ35
a,35bと、DataInからの上位の16ビツトと下位の16ビツ
トを入力するために用いる第3のマルチプレクサ36とで
ある。マルチプレクサ35aと35bは7つの32ビツト入力か
ら上位16ビツトと下位16ビツトを次のようにしてそれぞ
れ受ける。1つの16ビツト入力(32ビツトまで符号拡張
される)がラスタオフセツトレジスタ41から、4つの32
ビツト入力をX/Y座標レジスタ37から、2つの16ビツト
入力(32ビツトまで符号拡張される)がクリツプ座標レ
ジスタ39から。マルチプレクサ35aと35bからの出力が組
合わされて信号DataOut(それらのレジスタ値に対する
読出しアクセスをCPUに対して行うため)を形成し、か
つそれらの出力は第4のマルチプレクサ40へも入力され
る。このマルチプレクサは、X0-X3またはY0-Y3からの上
位ビツトがアクセスされている時にはマルチプレクサ35
aからの出力を常に通し、他の時にはマルチプレクサ40
はマルチプレクサ35bからの出力を選択する。マルチプ
レクサ40からの出力は論理ゲート42への1つの入力であ
る。この論理ゲートはマルチプレクサ40からの16ビツト
出力またはゼロの16ビツトを通す。これに関連して、Da
taInのビツトがマルチプレクサ36を通されてラスタオフ
セツトレジスタ47内のレジスタ、X/Y座標レジスタ37内
のレジスタ、またはクリツプ座標レジスタ39内のレジス
タへ直接ローデイング(絶対ローデイング)される時
に、ゼロが論理ゲート42により常に強制される。第3図
には、次の機能を行う論理回路44,46も示されている。
下位の16ビツト加算が行われると、アンドゲート44の出
力が低くされて、加算器31へ「0」の桁上げ入力を行
う。この加算の桁上げ出力はフリツプフロツプ46に保持
される。上位16ビツトの加算中は、フリツプフロツプ46
の出力は、加算器31の桁上げ入力に対してアンドゲート
44によりゲートされる。この組合わせにより、1サイク
ル32ビツト加算に等しい2サイクル32ビツト加算が行わ
れる。
a,35bと、DataInからの上位の16ビツトと下位の16ビツ
トを入力するために用いる第3のマルチプレクサ36とで
ある。マルチプレクサ35aと35bは7つの32ビツト入力か
ら上位16ビツトと下位16ビツトを次のようにしてそれぞ
れ受ける。1つの16ビツト入力(32ビツトまで符号拡張
される)がラスタオフセツトレジスタ41から、4つの32
ビツト入力をX/Y座標レジスタ37から、2つの16ビツト
入力(32ビツトまで符号拡張される)がクリツプ座標レ
ジスタ39から。マルチプレクサ35aと35bからの出力が組
合わされて信号DataOut(それらのレジスタ値に対する
読出しアクセスをCPUに対して行うため)を形成し、か
つそれらの出力は第4のマルチプレクサ40へも入力され
る。このマルチプレクサは、X0-X3またはY0-Y3からの上
位ビツトがアクセスされている時にはマルチプレクサ35
aからの出力を常に通し、他の時にはマルチプレクサ40
はマルチプレクサ35bからの出力を選択する。マルチプ
レクサ40からの出力は論理ゲート42への1つの入力であ
る。この論理ゲートはマルチプレクサ40からの16ビツト
出力またはゼロの16ビツトを通す。これに関連して、Da
taInのビツトがマルチプレクサ36を通されてラスタオフ
セツトレジスタ47内のレジスタ、X/Y座標レジスタ37内
のレジスタ、またはクリツプ座標レジスタ39内のレジス
タへ直接ローデイング(絶対ローデイング)される時
に、ゼロが論理ゲート42により常に強制される。第3図
には、次の機能を行う論理回路44,46も示されている。
下位の16ビツト加算が行われると、アンドゲート44の出
力が低くされて、加算器31へ「0」の桁上げ入力を行
う。この加算の桁上げ出力はフリツプフロツプ46に保持
される。上位16ビツトの加算中は、フリツプフロツプ46
の出力は、加算器31の桁上げ入力に対してアンドゲート
44によりゲートされる。この組合わせにより、1サイク
ル32ビツト加算に等しい2サイクル32ビツト加算が行わ
れる。
加算器31と、ラスタオフセツトレジスタ41と、X/Y座標
レジスタ37と、クリツプ座標レジスタ39と、テストウイ
ンドウ制御器45と、比較論理および結果記憶装置47との
動作は、ローデイング制御状態マシン33と比較論理状態
マシン49により調整される。比較論理状態マシン49はデ
ータがパイプライン内を流れるようにそれらの機能ブロ
ツクを動作させる。したがつて、ローデイング制御状態
マシン33と比較論理状態マシン49からの制御線の全てを
示しているわけではないが、ローデイング制御状態マシ
ン33と比較論理状態マシン49について以下に行う説明か
ら、詳細は当業者にとつて明らかであろう。
レジスタ37と、クリツプ座標レジスタ39と、テストウイ
ンドウ制御器45と、比較論理および結果記憶装置47との
動作は、ローデイング制御状態マシン33と比較論理状態
マシン49により調整される。比較論理状態マシン49はデ
ータがパイプライン内を流れるようにそれらの機能ブロ
ツクを動作させる。したがつて、ローデイング制御状態
マシン33と比較論理状態マシン49からの制御線の全てを
示しているわけではないが、ローデイング制御状態マシ
ン33と比較論理状態マシン49について以下に行う説明か
ら、詳細は当業者にとつて明らかであろう。
X/Y座標レジスタ37 第4図を参照して、X/Y座標レジスタ37は、表示すべき
物体の(X0-Y0)−(X3,Y3)頂点を格納する1組の16ビ
ツトレジスタである。各X座標の上位16ビツトを格納す
るために1つの16ビツトレジスタが用いられ、各X座標
の下位16ビツトを格納するために別の16ビツトレジスタ
が用いられる。同様に、Y座標の上位と下位16ビツトが
それぞれ別の16ビツトレジスタに格納される。それらの
レジスタは、X0座標の下位16ビツトを表すX0Lとして、
およびX0座標の上位16ビツトを表すX0Uとして、第4図
に示されている。レジスタX1L〜X3LとX1U〜X3UはX1〜X3
座標の下位と上位の16ビツトをそれぞれ表す。同様に、
レジスタY0L〜Y3LとY0U〜Y3Uは物体のY0〜Y3座標の下位
と上位の16ビツトをそれぞれ格納する。X0,Y0等は対応
するレジスタ対すなわちX0U,X0L,とY0U,Y0Lに格納され
る32ビツト値を意味する。
物体の(X0-Y0)−(X3,Y3)頂点を格納する1組の16ビ
ツトレジスタである。各X座標の上位16ビツトを格納す
るために1つの16ビツトレジスタが用いられ、各X座標
の下位16ビツトを格納するために別の16ビツトレジスタ
が用いられる。同様に、Y座標の上位と下位16ビツトが
それぞれ別の16ビツトレジスタに格納される。それらの
レジスタは、X0座標の下位16ビツトを表すX0Lとして、
およびX0座標の上位16ビツトを表すX0Uとして、第4図
に示されている。レジスタX1L〜X3LとX1U〜X3UはX1〜X3
座標の下位と上位の16ビツトをそれぞれ表す。同様に、
レジスタY0L〜Y3LとY0U〜Y3Uは物体のY0〜Y3座標の下位
と上位の16ビツトをそれぞれ格納する。X0,Y0等は対応
するレジスタ対すなわちX0U,X0L,とY0U,Y0Lに格納され
る32ビツト値を意味する。
各レジスタ対(X0L,Y0L)〜(X3L,Y3L)は、対応するX
レジスタまたはYレジスタを選択するために用いられる
マルチプレクサ対へ結合される。たとえば、レジスタX0
LとY0Lはマルチプレクサ61aと61bへ結合される。ローデ
イング制御状態マシン33は、X座標について操作する
か、Y座標について操作するかに応じて、レジスタX0L
またはY0Lからの入力を選択することをマルチプレクサ6
1aに指令する信号を発生する。各マルチプレクサ62aと6
2b〜64aと64bは、レジスタ対(X1L,Y1L)〜(X3L,Y3L)
からのデータに対してそれぞれ同じように動作する。マ
ルチプレクサ61a〜64aからの出力はマルチプレクサ35b
へ供給され、マルチプレクサ61b〜64bからの出力は比較
論理および結果記憶装置47へ供給される。
レジスタまたはYレジスタを選択するために用いられる
マルチプレクサ対へ結合される。たとえば、レジスタX0
LとY0Lはマルチプレクサ61aと61bへ結合される。ローデ
イング制御状態マシン33は、X座標について操作する
か、Y座標について操作するかに応じて、レジスタX0L
またはY0Lからの入力を選択することをマルチプレクサ6
1aに指令する信号を発生する。各マルチプレクサ62aと6
2b〜64aと64bは、レジスタ対(X1L,Y1L)〜(X3L,Y3L)
からのデータに対してそれぞれ同じように動作する。マ
ルチプレクサ61a〜64aからの出力はマルチプレクサ35b
へ供給され、マルチプレクサ61b〜64bからの出力は比較
論理および結果記憶装置47へ供給される。
全て0全て1と記されているブロツク67,69,71,73は、
それの対応するX,Y座標対の上位18ビツトが全て0であ
るか、全て1であるかを調べる論理回路である。18ビツ
トのうちの16ビツトはレジスタ(X0U,Y0U)〜(X3U,Y3
U)から供給され、17番目と18番目のビツトはレジスタ
群(X0L,Y0L〜X3L,Y3L)中の対応するレジスタの上位2
ビツトから供給される。図示を不必要に複雑にしないよ
うにするために、17番目と18番目のビツトの入力は第4
図には示されていない。マルチプレクサ対61a,61b〜64
a,64bと同様にX座標またはY座標を選択するマルチプ
レクサ75〜78へレジスタ対(X0U,Y0U)〜(X3U,Y3U)が
それぞれ入力される。マルチプレクサ75〜78からの出力
がマルチプレクサ35aへ供給される。各論理ブロツク67
〜73に対応するレジスタの上位18ビツトが全て0または
全て1であれば、各論理ブロツク67〜73からの4ビツト
出力の1つはおのおの「1」であり、その他の場合には
各4ビツトは0である。ブロツク67〜73からの4個の4
ビツト出力が状態発生論理51へ入力される。
それの対応するX,Y座標対の上位18ビツトが全て0であ
るか、全て1であるかを調べる論理回路である。18ビツ
トのうちの16ビツトはレジスタ(X0U,Y0U)〜(X3U,Y3
U)から供給され、17番目と18番目のビツトはレジスタ
群(X0L,Y0L〜X3L,Y3L)中の対応するレジスタの上位2
ビツトから供給される。図示を不必要に複雑にしないよ
うにするために、17番目と18番目のビツトの入力は第4
図には示されていない。マルチプレクサ対61a,61b〜64
a,64bと同様にX座標またはY座標を選択するマルチプ
レクサ75〜78へレジスタ対(X0U,Y0U)〜(X3U,Y3U)が
それぞれ入力される。マルチプレクサ75〜78からの出力
がマルチプレクサ35aへ供給される。各論理ブロツク67
〜73に対応するレジスタの上位18ビツトが全て0または
全て1であれば、各論理ブロツク67〜73からの4ビツト
出力の1つはおのおの「1」であり、その他の場合には
各4ビツトは0である。ブロツク67〜73からの4個の4
ビツト出力が状態発生論理51へ入力される。
クリツプ座標レジスタ39 第5図に示すように、クリツプ座標レジスタは4つのレ
ジスタXClipMin,XClipMax,YClipMin,YClipMaxとマルチ
プレクサ81a,81b,83a,83bとを有する。前記レジスタに
同じ名称で格納される値XClipMin,XClipMax,YClipMin,Y
ClipMaxは現在活動しているウインドの左、右、上、下
をそれぞれ定める。それらの値はCPUにより発生されて
加算器31へ入力される。この加算器は、レジスタXClipM
in,XClipMax,YClipMin,YClipMaxへ上記のようにロード
するためのそれらの値に1を加える。ローデイング制御
状態マシン33と比較制御状態マシンによりそれぞれ発生
される制御信号に応じて、一方ではマルチプレクサ81a
と83a、他方ではマルチプレクサ81bと83bは、XClipMin
とXClipMax、またはYClipMinとYClipMaxを選択する。マ
ルチプレクサ81a,83aからの値はマルチプレクサ35へ送
られ、マルチプレクサ81bと83bからの値は比較論理およ
び結果記憶装置47とテストウインドウ制御器45へ送られ
る。
ジスタXClipMin,XClipMax,YClipMin,YClipMaxとマルチ
プレクサ81a,81b,83a,83bとを有する。前記レジスタに
同じ名称で格納される値XClipMin,XClipMax,YClipMin,Y
ClipMaxは現在活動しているウインドの左、右、上、下
をそれぞれ定める。それらの値はCPUにより発生されて
加算器31へ入力される。この加算器は、レジスタXClipM
in,XClipMax,YClipMin,YClipMaxへ上記のようにロード
するためのそれらの値に1を加える。ローデイング制御
状態マシン33と比較制御状態マシンによりそれぞれ発生
される制御信号に応じて、一方ではマルチプレクサ81a
と83a、他方ではマルチプレクサ81bと83bは、XClipMin
とXClipMax、またはYClipMinとYClipMaxを選択する。マ
ルチプレクサ81a,83aからの値はマルチプレクサ35へ送
られ、マルチプレクサ81bと83bからの値は比較論理およ
び結果記憶装置47とテストウインドウ制御器45へ送られ
る。
ラスタオフセツトレジスタ41 第6図に示すように、ラスタオフセツトレジスタ41は2
つのレジスタXRasOff,YRasOffとマルチプレクサ53を有
する。前記レジスタに同じ名で格納される値XRasOffとY
RasOffは、X/Y座標レジスタ37内の4組の各X,Y座標に格
納する前に、(希望時に)DataInへ加えるXとYのオフ
セツトをそれぞれ定める。それらの値は、XRasOffとYRa
sOffに格納するために、CPUにより発生される。ローデ
インク制御状態マシン33により発生された制御信号に応
じてマルチプレクサ53はXRasOffまたはYRasOffを選択す
る。マルチプレクサ53により選択された値はマルチプレ
クサ35へ送られる。
つのレジスタXRasOff,YRasOffとマルチプレクサ53を有
する。前記レジスタに同じ名で格納される値XRasOffとY
RasOffは、X/Y座標レジスタ37内の4組の各X,Y座標に格
納する前に、(希望時に)DataInへ加えるXとYのオフ
セツトをそれぞれ定める。それらの値は、XRasOffとYRa
sOffに格納するために、CPUにより発生される。ローデ
インク制御状態マシン33により発生された制御信号に応
じてマルチプレクサ53はXRasOffまたはYRasOffを選択す
る。マルチプレクサ53により選択された値はマルチプレ
クサ35へ送られる。
テストウインドウ制御器45 次に、第7図を参照してテストウインドウ制御器45につ
いて説明する。CPUは値testXValとtestYValを発生す
る。それらの値は所定の距離だけ、すなわち、画素数だ
け、現在活動中のクリツピングウインドウの上と下(te
stYValに対して)、および右と左(testXValに対して)
にずれている。すなわち、表示器上の与えられたウイン
ドウに対して、実際のクリツプウインドウを囲むテスト
ウインドウを定めるΔXとΔYがある。このテストウイ
ンドウの目的は、そうすることが有利である時に、クリ
ツピングウインドウの外側にある物体の場所または物体
の部分を計算するためのハードウエアの必要性をなくす
ことである。
いて説明する。CPUは値testXValとtestYValを発生す
る。それらの値は所定の距離だけ、すなわち、画素数だ
け、現在活動中のクリツピングウインドウの上と下(te
stYValに対して)、および右と左(testXValに対して)
にずれている。すなわち、表示器上の与えられたウイン
ドウに対して、実際のクリツプウインドウを囲むテスト
ウインドウを定めるΔXとΔYがある。このテストウイ
ンドウの目的は、そうすることが有利である時に、クリ
ツピングウインドウの外側にある物体の場所または物体
の部分を計算するためのハードウエアの必要性をなくす
ことである。
4ビツト値testXValとtestYValは4ビツトレジスタtest
XとtestYにそれぞれ格納される。ローデイング制御状態
マシン33により発生された信号MUX Enableにより決定さ
れるように、X座標とY座標のいずれが操作されるかに
応じて、レジスタtestXとtestYの一方をマルチプレクサ
91が選択する。マルチプレクサ91の出力は減少器93と増
加器95へ入力される。減少器93は第2の入力として値XC
lipMinまたはYClipMinを有し、増加器95は第2の入力と
して値XClipMaxまたはYClipMaxを有する。減少器と増加
器が第2の入力として上記値XClipMinまたはYClipMin、
YClipMaxまたはYClipMaxのいずれを有するかは、ローデ
イング制御状態マシン33により発生された信号MUX Enab
leにより決定されて、X座標とY座標のいずれが操作さ
れるかに依存する。減少器93と増加器95により発生され
た出力はそれぞれXTestMin,YTestMinおよびXTestMax,YT
estMaxと呼ばれる。減少器93は、2の(testX−1)乗
と2の(testY−1)乗に等しい値をXClipMinとYClipMi
nからそれぞれ差し引くことにより、値XTestMinとYTest
Minを形成する。同様に、増加器95は、2の(testX−
1)乗と2の(testY−1)乗に等しい値をXClipMaxとY
ClipMaxにそれぞれ加えることにより、値XTestMaxとYTe
stMaxを形成する。
XとtestYにそれぞれ格納される。ローデイング制御状態
マシン33により発生された信号MUX Enableにより決定さ
れるように、X座標とY座標のいずれが操作されるかに
応じて、レジスタtestXとtestYの一方をマルチプレクサ
91が選択する。マルチプレクサ91の出力は減少器93と増
加器95へ入力される。減少器93は第2の入力として値XC
lipMinまたはYClipMinを有し、増加器95は第2の入力と
して値XClipMaxまたはYClipMaxを有する。減少器と増加
器が第2の入力として上記値XClipMinまたはYClipMin、
YClipMaxまたはYClipMaxのいずれを有するかは、ローデ
イング制御状態マシン33により発生された信号MUX Enab
leにより決定されて、X座標とY座標のいずれが操作さ
れるかに依存する。減少器93と増加器95により発生され
た出力はそれぞれXTestMin,YTestMinおよびXTestMax,YT
estMaxと呼ばれる。減少器93は、2の(testX−1)乗
と2の(testY−1)乗に等しい値をXClipMinとYClipMi
nからそれぞれ差し引くことにより、値XTestMinとYTest
Minを形成する。同様に、増加器95は、2の(testX−
1)乗と2の(testY−1)乗に等しい値をXClipMaxとY
ClipMaxにそれぞれ加えることにより、値XTestMaxとYTe
stMaxを形成する。
ローデイング制御状態マシン33および指標論理43 ローデイング制御状態マシン33は制御信号MUX Enable
と、Indexと、Register Enableを発生する。MUX Enable
は1組の制御信号であつて、そのうちの1つは、ラスタ
オフセツトレジスタ41と、X/Y座標レジスタ37と、クリ
ツプ座標レジスタ39とに含まれている各種のマルチプレ
クサにそれぞれのX入力またはY入力を選択させる。第
2の制御信号は、ラスタオフセツトレジスタ41、X/Y座
標レジスタ37、またはクリツプ座標レジスタ39からの入
力の1つをマルチプレクサ35に選択させる。Indexは、
指標論理43内の指標レジスタを、各値0,1,2の間で1だ
け増加させ、値が3であるとすると、0(モジュロ4)
にリセツトする。Register Enableは1組の制御信号で
あつて、ラスタオフセツトレジスタ41と、X/Y座標レジ
スタ37と、クリツプ座標レジスタ39とに含まれている各
レジスタに1つの制御信号が対応する。各制御信号は各
レジスタが16ビツト値を加算器31からの線へロードでき
るようにする。
と、Indexと、Register Enableを発生する。MUX Enable
は1組の制御信号であつて、そのうちの1つは、ラスタ
オフセツトレジスタ41と、X/Y座標レジスタ37と、クリ
ツプ座標レジスタ39とに含まれている各種のマルチプレ
クサにそれぞれのX入力またはY入力を選択させる。第
2の制御信号は、ラスタオフセツトレジスタ41、X/Y座
標レジスタ37、またはクリツプ座標レジスタ39からの入
力の1つをマルチプレクサ35に選択させる。Indexは、
指標論理43内の指標レジスタを、各値0,1,2の間で1だ
け増加させ、値が3であるとすると、0(モジュロ4)
にリセツトする。Register Enableは1組の制御信号で
あつて、ラスタオフセツトレジスタ41と、X/Y座標レジ
スタ37と、クリツプ座標レジスタ39とに含まれている各
レジスタに1つの制御信号が対応する。各制御信号は各
レジスタが16ビツト値を加算器31からの線へロードでき
るようにする。
次に、ロード制御状態マシン33および指標論理43の動作
を例について説明することにする。この例の説明から実
施の詳細が明らかである。先に述べたように、描くべき
映像は、四対の頂点(X0,Y0)〜(X3,Y3)を有する1つ
または複数の物体で構成されるものと定義される。物体
というのは点、線、三角形、長方形すなわち四辺形とす
ることができる。点の場合には四対の頂点は等しい。直
線では独特の頂点が二対ある。四辺形は4個の独特の頂
点を有する。長方形は四辺形の特殊な場合であつて、た
だ2つの独特のX座標とY座標がある(長方形は対角線
上で向き合う隅を定める一対の頂点により定めることが
できる。三角形では三対の独特の頂点があるだけであ
る。
を例について説明することにする。この例の説明から実
施の詳細が明らかである。先に述べたように、描くべき
映像は、四対の頂点(X0,Y0)〜(X3,Y3)を有する1つ
または複数の物体で構成されるものと定義される。物体
というのは点、線、三角形、長方形すなわち四辺形とす
ることができる。点の場合には四対の頂点は等しい。直
線では独特の頂点が二対ある。四辺形は4個の独特の頂
点を有する。長方形は四辺形の特殊な場合であつて、た
だ2つの独特のX座標とY座標がある(長方形は対角線
上で向き合う隅を定める一対の頂点により定めることが
できる。三角形では三対の独特の頂点があるだけであ
る。
指標値は、定められる物体の種類を基にしてどのレジス
タを動作可能とするかを指定する。正しい動作を行わせ
るためにはYの値がXの値に先行する。長方形を除き、
X値が適切なレジスタにロードされた後で指標レジスタ
が増加させられる。長方形では、X値とY値の後で指標
レジスタが増加させられる。これに関連して、下の表は
各種類の物体について、各指標レジスタ値に対して動作
可能状態にされるXレジスタを示す。示していないが、
動作可能状態にされたYレジスタは動作可能状態にされ
たXレジスタに対応する。
タを動作可能とするかを指定する。正しい動作を行わせ
るためにはYの値がXの値に先行する。長方形を除き、
X値が適切なレジスタにロードされた後で指標レジスタ
が増加させられる。長方形では、X値とY値の後で指標
レジスタが増加させられる。これに関連して、下の表は
各種類の物体について、各指標レジスタ値に対して動作
可能状態にされるXレジスタを示す。示していないが、
動作可能状態にされたYレジスタは動作可能状態にされ
たXレジスタに対応する。
第I表からわかる重要な点は、指標レジスタにより示さ
れた座標が常に書かれることである。書込みの種類
(点、線、三角形等)はどれだけの数の以後のレジスタ
(モジユロ4)も書込まれるかを示す。たとえば、線X
書込みが受けられる時に指示が2であるとすると、3つ
のレジスタが書込まれる、すなわち、X2,(X2+1)モ
ジユロ4および(X2+2)モジユロ4またはX2,X3,X0で
ある。Yへの四辺形書込みはY2に影響を及ぼすだけであ
る。
れた座標が常に書かれることである。書込みの種類
(点、線、三角形等)はどれだけの数の以後のレジスタ
(モジユロ4)も書込まれるかを示す。たとえば、線X
書込みが受けられる時に指示が2であるとすると、3つ
のレジスタが書込まれる、すなわち、X2,(X2+1)モ
ジユロ4および(X2+2)モジユロ4またはX2,X3,X0で
ある。Yへの四辺形書込みはY2に影響を及ぼすだけであ
る。
下記の例1〜3は物体を定める時の指標レジスタの役割
を説明するものである。この例の各線は意図する書込み
オペレーシヨンと、座標レジスタのローデイングを支配
するためにローデイング制御状態マシンにより利用され
る指標レジスタ値と、書込みの後で座標レジスタに格納
されている値と、書込みサイクルが終つた後の指標値と
を示す。書込み指令のためのニモニツクは点書込みを示
すためのPntXまたはPntYと、線書込みのためのLineXま
たはLineYと、三角形書込みのためのTriXおよびTriY
と、四辺形書込みのためのQuadXおよびOuadYと、長方形
書込み動作のためのRectXおよびRectYである。各書込み
指令により識別される実際の書込み動作は、後で説明す
るように、実際にはマルチクロツクサイクル動作であ
る。しかし、それらの例に対しては、指令の実行時間は
関連しない。
を説明するものである。この例の各線は意図する書込み
オペレーシヨンと、座標レジスタのローデイングを支配
するためにローデイング制御状態マシンにより利用され
る指標レジスタ値と、書込みの後で座標レジスタに格納
されている値と、書込みサイクルが終つた後の指標値と
を示す。書込み指令のためのニモニツクは点書込みを示
すためのPntXまたはPntYと、線書込みのためのLineXま
たはLineYと、三角形書込みのためのTriXおよびTriY
と、四辺形書込みのためのQuadXおよびOuadYと、長方形
書込み動作のためのRectXおよびRectYである。各書込み
指令により識別される実際の書込み動作は、後で説明す
るように、実際にはマルチクロツクサイクル動作であ
る。しかし、それらの例に対しては、指令の実行時間は
関連しない。
それらの例の解釈を明らかにする手段として、最初のも
のについて説明する。この説明から例2と3の解釈が明
らかである。
のについて説明する。この説明から例2と3の解釈が明
らかである。
PntY(6)指令を受けた時に、全ての座標レジスタは値
「0」を含み、指標は「1」に等しい。PntY(6)指令
は、値6の点をY座標レジスタにロードすべきであるこ
とを述べる。指標は1であるから、入来値(6)をY1,Y
2,Y3,Y0に格納すべきことを第I表は示す。それから、
次に受けた指令は、点3をX1,X2,X3,X0にロードするこ
とを述べる。このように、指標された全てのX座標を書
込んだ後で、書込みサイクルが終つた時に指標が増加さ
せられる(モジユロ4)。次の書込み指令はLineY
(9)である。このロードに対する指標は2で、第I表
はY2,Y3,Y0への9のローデイングを示す。この例に対す
る最後の書込み指令はLineX(7)である。第I表はX2,
X3,X0への7のローデイングを示し、その後で指標レジ
スタが再び増加させられる。座標レジスタの最後の状態
は2つの独特の頂点((7,9)における3個の頂点およ
び(3,6)における1個の頂点)を識別する。幾何学的
には、これは、意図したように端点が(7,9)と(3,6)
である線である。
「0」を含み、指標は「1」に等しい。PntY(6)指令
は、値6の点をY座標レジスタにロードすべきであるこ
とを述べる。指標は1であるから、入来値(6)をY1,Y
2,Y3,Y0に格納すべきことを第I表は示す。それから、
次に受けた指令は、点3をX1,X2,X3,X0にロードするこ
とを述べる。このように、指標された全てのX座標を書
込んだ後で、書込みサイクルが終つた時に指標が増加さ
せられる(モジユロ4)。次の書込み指令はLineY
(9)である。このロードに対する指標は2で、第I表
はY2,Y3,Y0への9のローデイングを示す。この例に対す
る最後の書込み指令はLineX(7)である。第I表はX2,
X3,X0への7のローデイングを示し、その後で指標レジ
スタが再び増加させられる。座標レジスタの最後の状態
は2つの独特の頂点((7,9)における3個の頂点およ
び(3,6)における1個の頂点)を識別する。幾何学的
には、これは、意図したように端点が(7,9)と(3,6)
である線である。
例1線(3,6)(7,9)を指定する。
例2三角形(1,5)(9,3)(4,6)を指定する 例3長方形(0,7)(8,7)(8,1)(0,1)を指定する 例1においては、初めの座標を受けた時には指標レジス
タは任意に1であるが、指標論理43中の指標レジスタ
を、CPUにより指令された時にDataInに置かれた値を基
にして初期化できる。(しかし、本発明の正しい動作
は、ローデイングシーケンスが開始された時に指標レジ
スタの初期値とは完全に独立していることに注目する値
打がある。)この例においては、この回路の動作をあい
まいにしないようにXRasOffとYRasOffは値0を含むと仮
定もする。
タは任意に1であるが、指標論理43中の指標レジスタ
を、CPUにより指令された時にDataInに置かれた値を基
にして初期化できる。(しかし、本発明の正しい動作
は、ローデイングシーケンスが開始された時に指標レジ
スタの初期値とは完全に独立していることに注目する値
打がある。)この例においては、この回路の動作をあい
まいにしないようにXRasOffとYRasOffは値0を含むと仮
定もする。
ローデイング制御状態マシン33は比較状態マシン49とと
もにパイプライニング動作を制御する。このパイプライ
ニング動作は、上記の種々のレジスタにローデイングす
ることに加えて、比較論理および結果記憶装置47と状態
発生論理51を正しく動作させるために必要なレジスタと
対応するマルチプレクサの選択の制御も行う。また、本
発明のラスタオフセツト性能を利用しないことを希望す
る時は、比較論理および結果記憶装置47により比較を行
う前に、XとYの座標レジスタに格納するために0を入
来データに加えさせる必要がある。
もにパイプライニング動作を制御する。このパイプライ
ニング動作は、上記の種々のレジスタにローデイングす
ることに加えて、比較論理および結果記憶装置47と状態
発生論理51を正しく動作させるために必要なレジスタと
対応するマルチプレクサの選択の制御も行う。また、本
発明のラスタオフセツト性能を利用しないことを希望す
る時は、比較論理および結果記憶装置47により比較を行
う前に、XとYの座標レジスタに格納するために0を入
来データに加えさせる必要がある。
これに関連して、ローデング制御状態マシン33と比較論
理状態マシン49により発生されたMUX Enable制御信号と
Register Enable制御信号を、第9図に示されているタ
イミング順序表と、入れられた各Y座標に対して座標ス
テージング部15により行われる処理の順序を示す下のリ
ストとから確かめることができる。
理状態マシン49により発生されたMUX Enable制御信号と
Register Enable制御信号を、第9図に示されているタ
イミング順序表と、入れられた各Y座標に対して座標ス
テージング部15により行われる処理の順序を示す下のリ
ストとから確かめることができる。
1.Y座標をDataInに受ける 2.a)YRasOff(下位16ビツト) 又はb)(指標−1)により指されたY0L〜Y3Lの下位16
ビツト又はc)0 に受けたY座標の下位16ビツトを加える。
ビツト又はc)0 に受けたY座標の下位16ビツトを加える。
3.a)YRasOff(上位16ビツトまで符号が拡張された) 又はb)(指標−1)により指されたY0H〜Y3Hの上位16
ビツト 又はc)0 に受けたY座標の上位16ビツトを加え、ステツプ2の結
果を他のY座標と比較する 4.ステツプ2の結果をYClipMin,YTestMin,YClipMax,YTe
stMaxと比較し、ステツプ2と3の結果の上位18ビツト
が全部1および全部0であるかを調べる。
ビツト 又はc)0 に受けたY座標の上位16ビツトを加え、ステツプ2の結
果を他のY座標と比較する 4.ステツプ2の結果をYClipMin,YTestMin,YClipMax,YTe
stMaxと比較し、ステツプ2と3の結果の上位18ビツト
が全部1および全部0であるかを調べる。
上のステツプ2と3において、選択a),b)またはc)
は次のようにして行われる。指標レジスタへの非相対的
書込み(PNT,LINE,TRI,QUAD,RECT)に対しては選択a)
が選択される。指標レジスタへの相対的に書込み(RELP
NT,RELINE,RELTRI,RELQUAD,RELRECT)に対しては選択
b)が選択される。他の全ての書込みは選択c)を選択
する。X座標のローデイングは同じ流れをたどる。
は次のようにして行われる。指標レジスタへの非相対的
書込み(PNT,LINE,TRI,QUAD,RECT)に対しては選択a)
が選択される。指標レジスタへの相対的に書込み(RELP
NT,RELINE,RELTRI,RELQUAD,RELRECT)に対しては選択
b)が選択される。他の全ての書込みは選択c)を選択
する。X座標のローデイングは同じ流れをたどる。
前記の諸制約と諸定義を心に留めて、指標論理43内の指
標レジスタ値が「01」で、第4図を参照して先に述べた
レジスタ(X0,Y0)〜(X3,Y3)が全て0であると仮定す
ると、例1におけるようにXとYの座標が(3,6)(7,
9)である端部点を持つ線を定めるようにレジスタにロ
ードするために下記の事象系列が起る。
標レジスタ値が「01」で、第4図を参照して先に述べた
レジスタ(X0,Y0)〜(X3,Y3)が全て0であると仮定す
ると、例1におけるようにXとYの座標が(3,6)(7,
9)である端部点を持つ線を定めるようにレジスタにロ
ードするために下記の事象系列が起る。
クロツクサイクル0においては、指令書込みPntY(6)
が値6をDataInに置き、レジスタアドレスをローデイン
グ制御状態マシン33に入力させて、入来データがY点で
あることを示す値を含ませる。クロツクサイクル1にお
いては(第3図を参照して)、マルチプレクサ36がData
In上の下位16ビツトを選択することを命令され、マルチ
プレケクサ35(すなわち、マルチプレクサ35aと35b)と
40および論理ゲート42がYRasOffの下位16ビツトを通す
ことを指令される。したがつて、クロツクサイクル1の
間は、加算器31がマルチプレクサ36と論理ゲート42から
の出力を加え合わせて、それの結果をそれの出力端子に
置く。クロツクサイクル1が終ると、レジスタY0L〜Y3L
が動作可能状態にされ、加算器31からの値、すなわち、
DataInの上にあつた値6の下位ビツトを表す6がロード
される。クロツクサイクル2においては、マルチプレク
サ36がDataIn上の上位16ビツトを選択することを命令さ
れ、マルチプレクサ35,40と論理ゲート42がYRasOffの符
号が拡張された上位16ビツトを通すことを命令される。
このように、クロツクサイクル2の間は、加算器31はマ
ルチプレクサ36と論理ゲート42からの出力を加え合わせ
て、その和をそれの出力端子に置く。クロツクサイクル
2が終ると、レジスタY0H〜Y3Hが動作可能状態にされ、
加算器31の出力端子からの値がロードされる。サイクル
3においては、指令書込みPntX(3)が値3をDataInに
置いて、レジスタアドレスをローデイング制御状態マシ
ン33に入力させて、入来データがX点であることを示す
値を含ませる。また、クロツクサイクル3においては、
マイクロプロセツサ36はDataIn上の下位16ビツトを選択
することを命令され、マルチプレクサ35と40および論理
ゲート42はXRasOffの下位16ビツトを通すことを命令さ
れる。クロツクサイクル3の間は、加算器31はマルチプ
レクサ36と論理ゲート42からの出力を加え合わせ、その
和をそれの出力端子に置く。クロツクサイクルが終る
と、レジスタX0L〜X3Lが動作可能状態にされ、加算器31
からの値、すなわち、DataInの上にあつた値3の下位ビ
ツトを表す3がロードされる。クロツクサイクル4にお
いては、マルチプレクサ36はDataIn上の上位16ビツトを
選択することを命令され、マルチプレクサ35,40と論理
ゲート42はXRasOffの符号に拡張された上位16ビツトを
通すことを命令される。クロツクサイクル4において
は、加算器11はマルチプレクサ36と論理ゲート42からの
出力を加え合わせ、その和をそれの出力端子に置く。ク
ロツクサイクル4の間は、レジスタX0H〜X3Hが動作可能
状態にされ、加算器31の出力端子から値がロードされ、
指標レジスタが増加させられる。クロツクサイクル5に
おいては、指令書込みLineY(9)が値9をDataInに置
き、レジスタアドレスをローデイング制御状態マシン33
に入力させて、入来データがY線であることを示す値を
含ませる。クロツクサイクル5においては、マルチプレ
クサ36はDataIn上の下位16ビツトを選択することを命令
され、マルチプレクサ35,40と論理ゲート42はYRasOffの
下位16ビツトを通すことを命令される。クロツクサイク
ル5の間は、加算器31はマルチプレクサ36と論理ゲート
42の出力を加え合わせ、その和をそれの出力端子に置
く。クロツクサイクル5が終わると、レジスタY2L,Y3L,
Y0Lが動作可能状態にされて、加算器31からの値、すな
わち、DataIn上にあつた値9の下位ビツトを表す9をロ
ードされる。クロツクサイクル6においては、マルチプ
レクサ36はDataIn上の上位16ビツトを選択することを命
令され、マルチプレクサ35,40と論理ゲート42はYRasOff
の符号拡張された上位16ビツトを通すことを命令され
る。クロツクサイクル6においては、加算器31はマルチ
プレクサ36と論理ゲート42からの出力を加え合わせ、そ
の和をそれの出力端子に置く。クロツクサイクル6の間
は、レジスタY2H,Y3H,Y0Hが動作可能状態にされ、加算
器31の出力端子から値がロードされる。クロツクサイク
ル7においては、指令書込みLineX(7)が値7をDataI
nに置き、レジスタアドレスをローデイング制御状態マ
シン33へ入力させて、入来データがX線(すなわち、線
の書き込み指令用のX座標値)であることを示す値を含
ませる。同様にして、レジスタX2L,X3L,X0Lが最終的に
動作可能にされて値7をロードする。この後で、先に述
べたように、指標レジスタが2から3へ増加させられ
る。他の物体に対してX/Y座標レジスタへのローデイン
グは上記と同じパイプライン計画に従う。三角形と四辺
形についての例が先の例2と3に与えられている。同様
にして、四辺形物体もロードされる。
が値6をDataInに置き、レジスタアドレスをローデイン
グ制御状態マシン33に入力させて、入来データがY点で
あることを示す値を含ませる。クロツクサイクル1にお
いては(第3図を参照して)、マルチプレクサ36がData
In上の下位16ビツトを選択することを命令され、マルチ
プレケクサ35(すなわち、マルチプレクサ35aと35b)と
40および論理ゲート42がYRasOffの下位16ビツトを通す
ことを指令される。したがつて、クロツクサイクル1の
間は、加算器31がマルチプレクサ36と論理ゲート42から
の出力を加え合わせて、それの結果をそれの出力端子に
置く。クロツクサイクル1が終ると、レジスタY0L〜Y3L
が動作可能状態にされ、加算器31からの値、すなわち、
DataInの上にあつた値6の下位ビツトを表す6がロード
される。クロツクサイクル2においては、マルチプレク
サ36がDataIn上の上位16ビツトを選択することを命令さ
れ、マルチプレクサ35,40と論理ゲート42がYRasOffの符
号が拡張された上位16ビツトを通すことを命令される。
このように、クロツクサイクル2の間は、加算器31はマ
ルチプレクサ36と論理ゲート42からの出力を加え合わせ
て、その和をそれの出力端子に置く。クロツクサイクル
2が終ると、レジスタY0H〜Y3Hが動作可能状態にされ、
加算器31の出力端子からの値がロードされる。サイクル
3においては、指令書込みPntX(3)が値3をDataInに
置いて、レジスタアドレスをローデイング制御状態マシ
ン33に入力させて、入来データがX点であることを示す
値を含ませる。また、クロツクサイクル3においては、
マイクロプロセツサ36はDataIn上の下位16ビツトを選択
することを命令され、マルチプレクサ35と40および論理
ゲート42はXRasOffの下位16ビツトを通すことを命令さ
れる。クロツクサイクル3の間は、加算器31はマルチプ
レクサ36と論理ゲート42からの出力を加え合わせ、その
和をそれの出力端子に置く。クロツクサイクルが終る
と、レジスタX0L〜X3Lが動作可能状態にされ、加算器31
からの値、すなわち、DataInの上にあつた値3の下位ビ
ツトを表す3がロードされる。クロツクサイクル4にお
いては、マルチプレクサ36はDataIn上の上位16ビツトを
選択することを命令され、マルチプレクサ35,40と論理
ゲート42はXRasOffの符号に拡張された上位16ビツトを
通すことを命令される。クロツクサイクル4において
は、加算器11はマルチプレクサ36と論理ゲート42からの
出力を加え合わせ、その和をそれの出力端子に置く。ク
ロツクサイクル4の間は、レジスタX0H〜X3Hが動作可能
状態にされ、加算器31の出力端子から値がロードされ、
指標レジスタが増加させられる。クロツクサイクル5に
おいては、指令書込みLineY(9)が値9をDataInに置
き、レジスタアドレスをローデイング制御状態マシン33
に入力させて、入来データがY線であることを示す値を
含ませる。クロツクサイクル5においては、マルチプレ
クサ36はDataIn上の下位16ビツトを選択することを命令
され、マルチプレクサ35,40と論理ゲート42はYRasOffの
下位16ビツトを通すことを命令される。クロツクサイク
ル5の間は、加算器31はマルチプレクサ36と論理ゲート
42の出力を加え合わせ、その和をそれの出力端子に置
く。クロツクサイクル5が終わると、レジスタY2L,Y3L,
Y0Lが動作可能状態にされて、加算器31からの値、すな
わち、DataIn上にあつた値9の下位ビツトを表す9をロ
ードされる。クロツクサイクル6においては、マルチプ
レクサ36はDataIn上の上位16ビツトを選択することを命
令され、マルチプレクサ35,40と論理ゲート42はYRasOff
の符号拡張された上位16ビツトを通すことを命令され
る。クロツクサイクル6においては、加算器31はマルチ
プレクサ36と論理ゲート42からの出力を加え合わせ、そ
の和をそれの出力端子に置く。クロツクサイクル6の間
は、レジスタY2H,Y3H,Y0Hが動作可能状態にされ、加算
器31の出力端子から値がロードされる。クロツクサイク
ル7においては、指令書込みLineX(7)が値7をDataI
nに置き、レジスタアドレスをローデイング制御状態マ
シン33へ入力させて、入来データがX線(すなわち、線
の書き込み指令用のX座標値)であることを示す値を含
ませる。同様にして、レジスタX2L,X3L,X0Lが最終的に
動作可能にされて値7をロードする。この後で、先に述
べたように、指標レジスタが2から3へ増加させられ
る。他の物体に対してX/Y座標レジスタへのローデイン
グは上記と同じパイプライン計画に従う。三角形と四辺
形についての例が先の例2と3に与えられている。同様
にして、四辺形物体もロードされる。
ラスタオフセツトレジスタ41とクリツプ座標レジスタ39
が先に述べたX/Y座標レジスタ37と同様にしてロードさ
れるが、論理ゲート42は各加算サイクルに対して0をロ
ードすることを強制される(すなわち、絶対ローデイン
グ)。
が先に述べたX/Y座標レジスタ37と同様にしてロードさ
れるが、論理ゲート42は各加算サイクルに対して0をロ
ードすることを強制される(すなわち、絶対ローデイン
グ)。
本発明は、指標論理43内の指標レジスタを用いることに
より、物体の写しを表示する効率的な機構を提供する相
対アドレツシングも行う。相対アドレツシングは次の例
により最もよく説明される。三角形の3つの頂点を
(X0,Y0),(X1,Y1),(X2,Y2)と定めることができ
る。表示器上の種々の場所にその物体を50回複製するた
めには、150対のX,Y座標を格納する必要がある。相対ア
ドレツシングを用いて、1つの頂点が原点(X0,Y0)と
して定められ、第2の頂点と第3の頂点が前の頂点から
のずれとして定義される。すなわち、ΔX01,ΔY01,Δ
X23,ΔY23。物体を50回複製するために、格納する必要
がある全ては、各複製に対して2つのオフセツト対と新
しいX0,Y0である(すなわち、全部で物体の50個の原点
プラス2つのオフセツト対)。
より、物体の写しを表示する効率的な機構を提供する相
対アドレツシングも行う。相対アドレツシングは次の例
により最もよく説明される。三角形の3つの頂点を
(X0,Y0),(X1,Y1),(X2,Y2)と定めることができ
る。表示器上の種々の場所にその物体を50回複製するた
めには、150対のX,Y座標を格納する必要がある。相対ア
ドレツシングを用いて、1つの頂点が原点(X0,Y0)と
して定められ、第2の頂点と第3の頂点が前の頂点から
のずれとして定義される。すなわち、ΔX01,ΔY01,Δ
X23,ΔY23。物体を50回複製するために、格納する必要
がある全ては、各複製に対して2つのオフセツト対と新
しいX0,Y0である(すなわち、全部で物体の50個の原点
プラス2つのオフセツト対)。
これは、本発明においては、X/Y座標レジスタ37の中の
レジスタ対の1つに、索引されたローデイングスタイル
(すなわち、PntY,PntX)を用いて原点座標対頂点をま
ず格納することにより行うことができる。次に2つのオ
フセツト頂点が、指標レジスタの現在の値により指され
ている頂点に対して格納される。これは、レジスタのロ
ーデイングの前にDataInへ加える(指標−1)により指
された頂点を選択することにより行われる。(指標−
1)により表されている頂点は、書込みの種類(PNT,LI
NE等)とは無関係に、以前に索引された書込みにロード
されることを保障され、したがつてその頂点は、それか
ら相対的なオフセツトが適用される頂点である。
レジスタ対の1つに、索引されたローデイングスタイル
(すなわち、PntY,PntX)を用いて原点座標対頂点をま
ず格納することにより行うことができる。次に2つのオ
フセツト頂点が、指標レジスタの現在の値により指され
ている頂点に対して格納される。これは、レジスタのロ
ーデイングの前にDataInへ加える(指標−1)により指
された頂点を選択することにより行われる。(指標−
1)により表されている頂点は、書込みの種類(PNT,LI
NE等)とは無関係に、以前に索引された書込みにロード
されることを保障され、したがつてその頂点は、それか
ら相対的なオフセツトが適用される頂点である。
比較論理および結果格納論理47 次に、比較論理および結果格納論理47を第7図と第8図
を参照して説明する。比較論理および結果格納論理47は
マルチプレクサ101,103,105,107,109(第7図)と、比
較器121〜124と、マルチプレクサ131〜146と、レジスタ
R1〜R44(第8図)とを有する。
を参照して説明する。比較論理および結果格納論理47は
マルチプレクサ101,103,105,107,109(第7図)と、比
較器121〜124と、マルチプレクサ131〜146と、レジスタ
R1〜R44(第8図)とを有する。
レジスタR1〜R44は、第II表に示すように、比較器121〜
124の動作結果を格納する。
124の動作結果を格納する。
第II表 R1 X0:XClipMin R23Y0:YClipMin R2 X0:XTestMin R24Y0:YTestMin R3 X0:XClipMax R25Y0:YClipMax R4 X0:XTestMax R26Y0:YTestMax R5 X1:XClipMin R27Y1:YClipMin R6 X1:XTestMin R28Y1:YTestMin R7 X1:XClipMax R29Y1:YClipMax R8 X1:XTestMax R30Y1:YTestMax R9 X2:XClipMin R31Y2:YClipMin R10X2:XTestMin R32Y2:YTestMin R11X2:XClipMax R33Y2:YClipMax R12X2:XTestMax R34Y2:YTestMax R13X3:XClipMin R35Y3:YClipMin R14X3:XTestMin R36Y3:YTestMin R15X3:XClipMax R37Y3:YClipMax R16X3:XTestMax R38Y3:YTestMax R17X0:X1 R39Y0:Y1 R18X0:X2 R40Y0:Y2 R19X0:X3 R41Y0:Y3 R20X1:X2 R42Y1:Y2 R21X1:X3 R43Y1:Y3 R22X2:X3 R44Y2:Y3 第II表において、1ビツト結果を格納するXClipMin/Ma
x,YClipMin/Max,XTestMin/Max,YTestMin/Maxを含む比較
を除き、指示されたレジスタは、指示された2つの値の
間の比較の2ビツト結果を格納する。コロンの左側の値
がコロンの右側の値より大きいとすると、対応するレジ
スタに格納されている2進値は「10」であり、コロンの
左側の値がコロンの右側の値より大きいとすると、対応
するレジスタに格納されている2進値は「01」であり、
2つの値が等しければ、対応するレジスタに格納されて
いる2進値は「00」である。XClipMin,YClipMin,XTestM
in,YTestMinに対しては、比較された座標が小さいと
「1」が格納され、他の場合には「0」が格納される。
XClipMax,YClipMax,XTestMax,YTestMaxに対しては、比
較された値が大きいと「1」が格納され、他の場合には
「0」が格納される。
x,YClipMin/Max,XTestMin/Max,YTestMin/Maxを含む比較
を除き、指示されたレジスタは、指示された2つの値の
間の比較の2ビツト結果を格納する。コロンの左側の値
がコロンの右側の値より大きいとすると、対応するレジ
スタに格納されている2進値は「10」であり、コロンの
左側の値がコロンの右側の値より大きいとすると、対応
するレジスタに格納されている2進値は「01」であり、
2つの値が等しければ、対応するレジスタに格納されて
いる2進値は「00」である。XClipMin,YClipMin,XTestM
in,YTestMinに対しては、比較された座標が小さいと
「1」が格納され、他の場合には「0」が格納される。
XClipMax,YClipMax,XTestMax,YTestMaxに対しては、比
較された値が大きいと「1」が格納され、他の場合には
「0」が格納される。
マルチプレクサ101,103,105,107,109への入力はX/Y座標
レジスタ、すなわち、X0L,Y0L〜X3L,Y3Lと、クリツプ座
標レジスタ39、すなわち、XClipMin,YClipMinおよびXCl
ipMax,YClipMaxと、テストウインドウ制御器45、すなわ
ち、XTestMin,YTestMin,XTestMax,YTestMaxとからであ
る。もちろん、任意の時刻においては、前記したよう
に、マルチプレクサ101,103,105,107への入力は、比較
制御状態マシン49により発生されたMUX Enable信号を基
にして、X値またはY値である。
レジスタ、すなわち、X0L,Y0L〜X3L,Y3Lと、クリツプ座
標レジスタ39、すなわち、XClipMin,YClipMinおよびXCl
ipMax,YClipMaxと、テストウインドウ制御器45、すなわ
ち、XTestMin,YTestMin,XTestMax,YTestMaxとからであ
る。もちろん、任意の時刻においては、前記したよう
に、マルチプレクサ101,103,105,107への入力は、比較
制御状態マシン49により発生されたMUX Enable信号を基
にして、X値またはY値である。
比較器121はマルチプレクサ101の出力とマルチプレクサ
109の出力を比較する。同様に、比較器122〜124は、一
方ではマルチプレクサ103,105,107の出力を比較し、他
方ではマルチプレクサ109の出力を比較する。比較器121
〜124の出力はマルチプレクサ131〜146へ入力される。
それらのマルチプレクサは適切なデータをレジスタへ送
つて下記のようにロードさせる。
109の出力を比較する。同様に、比較器122〜124は、一
方ではマルチプレクサ103,105,107の出力を比較し、他
方ではマルチプレクサ109の出力を比較する。比較器121
〜124の出力はマルチプレクサ131〜146へ入力される。
それらのマルチプレクサは適切なデータをレジスタへ送
つて下記のようにロードさせる。
比較器121の出力端子はマルチプレクサ131〜135,139,14
3へ接続される。それらのマルチプレクサは、第8図と
下の第III表に示すように、X値に対してはレジスタR1,
R2,R3,R4,R5,R9,R13,R17,R18,R19をロードするために用
いられ、Y値に対してはレジスタR23,R24,R25,R26,R27,
R31,R35,R39,R40,R41をロードするために用いられる。
第III表において、A,B,C,Dはそれぞれ比較器121,122,12
3,124を指す。
3へ接続される。それらのマルチプレクサは、第8図と
下の第III表に示すように、X値に対してはレジスタR1,
R2,R3,R4,R5,R9,R13,R17,R18,R19をロードするために用
いられ、Y値に対してはレジスタR23,R24,R25,R26,R27,
R31,R35,R39,R40,R41をロードするために用いられる。
第III表において、A,B,C,Dはそれぞれ比較器121,122,12
3,124を指す。
比較器122の出力端子はマルチプレクサ132,135,136,13
7,138,140,144へ接続される。それらのマルチプレクサ
は、第8図と下の第III表に示すように、X値に対して
はレジスタR2,R5,R6,R7,R8,R10,R14,R17,R20,R21をロー
ドするために用いられ、Y値に対してはレジスタR24,R2
7,R28,R29,R30,R32,R36,R39,R42,R43のために用いられ
る。
7,138,140,144へ接続される。それらのマルチプレクサ
は、第8図と下の第III表に示すように、X値に対して
はレジスタR2,R5,R6,R7,R8,R10,R14,R17,R20,R21をロー
ドするために用いられ、Y値に対してはレジスタR24,R2
7,R28,R29,R30,R32,R36,R39,R42,R43のために用いられ
る。
比較器123の出力端子はマルチプレクサ133,137,139,14
0,142,145へ接続される。それらのマルチプレクサは、
第8図と下の第III表に示すように、X値に対してはレ
ジスタR3,R7,R9,R10,R12,R15,R18,R20,R22をロードする
ために用いられ、Y値に対してはレジスタR25,R29,R31,
R37,R40,R42,R44をロードするために用いられる。
0,142,145へ接続される。それらのマルチプレクサは、
第8図と下の第III表に示すように、X値に対してはレ
ジスタR3,R7,R9,R10,R12,R15,R18,R20,R22をロードする
ために用いられ、Y値に対してはレジスタR25,R29,R31,
R37,R40,R42,R44をロードするために用いられる。
比較器124の出力端子はマルチプレクサ134,138,142,14
3,144,145,146へ接続される。それらのマルチプレクサ
は、第8図と下の第III表に示すように、X値に対して
はレジスタR2,R8,R12,R13,R14,R15,R16,R19,R21,R22を
ロードするために用いられ、Y値に対してはレジスタR2
6,R30,R34,R35,R36,R37,R38,R41,R43,R44をロードする
ために用いられる。
3,144,145,146へ接続される。それらのマルチプレクサ
は、第8図と下の第III表に示すように、X値に対して
はレジスタR2,R8,R12,R13,R14,R15,R16,R19,R21,R22を
ロードするために用いられ、Y値に対してはレジスタR2
6,R30,R34,R35,R36,R37,R38,R41,R43,R44をロードする
ために用いられる。
行われて、格納された比較は、サポートされている動作
(DRAW、四辺形表示、またはBLITとしても知られてい
る)を正しく実行し、かつ正しいクリツピングを行うた
めに、座標シーケンシングブロツク17と機能アドレツシ
ングブロツク19により求められているものである。
(DRAW、四辺形表示、またはBLITとしても知られてい
る)を正しく実行し、かつ正しいクリツピングを行うた
めに、座標シーケンシングブロツク17と機能アドレツシ
ングブロツク19により求められているものである。
比較制御状態マシン49 比較制御状態マシン49は、比較論理および結果記憶装置
内の各種の比較器、マルチプレクサおよびレジスタを動
作可能状態にする論理である。比較制御状態マシン49に
よる座標レジスタとクリツピングレジスタの絶対ローデ
イングのための真理値表が、クロツクサイクル0と1に
対して第III表に示されている。比較器121〜124には記
号A,B,Cがそれぞれ付けられている。第III表は各入力X0
L〜X3L,XClipMin,XClipMax,XTestMin,XTestMaxに対する
各比較器121〜124の出力を示すものである。これに関連
して、第8図はマルチプレクサ101,103,105,107の出力
が比較器121〜124の一方の側へ入力され、比較器109の
出力が他の側へ入力されることを示す。矛盾がないよう
にするためには、他の順序(たとえばX1Lの比較をX0Lに
格納する)ではなく、X0Lの比較をX1Lへ、X1Lの比較をX
2Lへ、X2Lの比較をX3Lへ格納する等の必要がある。この
理由から、「逆」欄が「YES」の時には、比較器121〜12
4からの出力が逆にされる。これはマルチプレクサ131〜
146の右側入力により取扱われる。指示された比較器121
〜124の出力が指示されているマルチプレクサ131〜146
の左側へ直接入力される。マルチプレクサの右側の入力
端子は指示されている比較器からの2ビツト出力を逆の
ビツト順で受ける。したがつて、「逆」欄は、絶対座標
ロードのためのマルチプレクサ131〜146に対するMUX選
択線についての真理値表となる。
内の各種の比較器、マルチプレクサおよびレジスタを動
作可能状態にする論理である。比較制御状態マシン49に
よる座標レジスタとクリツピングレジスタの絶対ローデ
イングのための真理値表が、クロツクサイクル0と1に
対して第III表に示されている。比較器121〜124には記
号A,B,Cがそれぞれ付けられている。第III表は各入力X0
L〜X3L,XClipMin,XClipMax,XTestMin,XTestMaxに対する
各比較器121〜124の出力を示すものである。これに関連
して、第8図はマルチプレクサ101,103,105,107の出力
が比較器121〜124の一方の側へ入力され、比較器109の
出力が他の側へ入力されることを示す。矛盾がないよう
にするためには、他の順序(たとえばX1Lの比較をX0Lに
格納する)ではなく、X0Lの比較をX1Lへ、X1Lの比較をX
2Lへ、X2Lの比較をX3Lへ格納する等の必要がある。この
理由から、「逆」欄が「YES」の時には、比較器121〜12
4からの出力が逆にされる。これはマルチプレクサ131〜
146の右側入力により取扱われる。指示された比較器121
〜124の出力が指示されているマルチプレクサ131〜146
の左側へ直接入力される。マルチプレクサの右側の入力
端子は指示されている比較器からの2ビツト出力を逆の
ビツト順で受ける。したがつて、「逆」欄は、絶対座標
ロードのためのマルチプレクサ131〜146に対するMUX選
択線についての真理値表となる。
第III表の結果がY0L〜Y3L,YClipMin,YClipMax,YTestMi
n,YTestMaxに対して同様なやり方で繰返えされる。第9
図はDataInにおける信号の相対的なタイミングと、ラス
トオフセツトレジスタ41,X/Y座標レジスタ37,クリツプ
座標レジスタ39および比較論理および結果記憶装置によ
り行われるレジスタローデイングとを示す。
n,YTestMaxに対して同様なやり方で繰返えされる。第9
図はDataInにおける信号の相対的なタイミングと、ラス
トオフセツトレジスタ41,X/Y座標レジスタ37,クリツプ
座標レジスタ39および比較論理および結果記憶装置によ
り行われるレジスタローデイングとを示す。
比較制御状態マシンは、先に説明したように、書込みサ
イクルに関連する指標レジスタ値と第IV表を用いて、指
標づけられたローデイングを支持する。指標レジスタ値
により指されたレジスタは、指標づけられた書込みの種
類とは無関係に常に書込まれるから、その座標への単一
レジスタ書込みを仮定して、MUX101,103,105,107に対す
る適切なMUX Enableが比較制御状態マシンにより選択さ
れる。たとえば、指標が3であるXへの長方形書込みを
受けたとすると、比較論理はX3への明らかな書込みが受
けられたかのように動作し、要求に応じてX3と(X0L,X1
L,X2L,XClipMin,XClipMax,XTestMin,XTestMax)との比
較を行う。レジスタの絶対ローデイングと指標づけられ
た(または相対的に指標づけられた)ロードの間の違い
は、指標づけられる場合には、比較論理および結果記憶
装置47内の2つ以上の座標記憶装置レジスタを、比較結
果を受けることができるようにでき、マルチプレクサ13
1〜146のためのマルチプレクサ選択が、第III表ではな
くて第IV表に従つて発生される。
イクルに関連する指標レジスタ値と第IV表を用いて、指
標づけられたローデイングを支持する。指標レジスタ値
により指されたレジスタは、指標づけられた書込みの種
類とは無関係に常に書込まれるから、その座標への単一
レジスタ書込みを仮定して、MUX101,103,105,107に対す
る適切なMUX Enableが比較制御状態マシンにより選択さ
れる。たとえば、指標が3であるXへの長方形書込みを
受けたとすると、比較論理はX3への明らかな書込みが受
けられたかのように動作し、要求に応じてX3と(X0L,X1
L,X2L,XClipMin,XClipMax,XTestMin,XTestMax)との比
較を行う。レジスタの絶対ローデイングと指標づけられ
た(または相対的に指標づけられた)ロードの間の違い
は、指標づけられる場合には、比較論理および結果記憶
装置47内の2つ以上の座標記憶装置レジスタを、比較結
果を受けることができるようにでき、マルチプレクサ13
1〜146のためのマルチプレクサ選択が、第III表ではな
くて第IV表に従つて発生される。
指標が3である長方形X書込みの以前の例においては、
比較レジスタ(第II表または第8図参照)R1〜R3,R13〜
R16,R17〜R19,R21〜R22が書込まれる。次のレジスタ対
が同じ個々の比較結果を格納する:(R17,R21),(R1
8,R22),(R1,R13),(R2,R14),(R3,R15),(R4,
R16)。
比較レジスタ(第II表または第8図参照)R1〜R3,R13〜
R16,R17〜R19,R21〜R22が書込まれる。次のレジスタ対
が同じ個々の比較結果を格納する:(R17,R21),(R1
8,R22),(R1,R13),(R2,R14),(R3,R15),(R4,
R16)。
状態発生論理51 状態発生論理51は制御信号HW/SW,UP/R−to−L,HID/VIS
を発生する。HW/SWは、動作を本発明のハードウエアに
より、またはソフトウエアにより行うことを示す2ビツ
ト信号である。UP/R−to−Lは、動作を上から下へ、下
から上へ、右から左へ、左から右へのいずれで処理すべ
きかを示す2ビツト信号である。HID/VISは、描くべき
物体が隠されているかどうか、すなわち、活動状態にあ
るクリツプウインドウのうしろにあるか、見えるかを示
す2ビツト信号である。それらの信号を発生するため
に、状態発生論理51が、X座標に対するレジスタR1〜R2
2と、Y座標に対するレジスタR23〜R44と、X/Y座標レジ
スタ37からの上位18ビツトが全て1および全て0である
ことを示す4個の4ビツト信号とを入力として受ける。
次に、状態発生論理51により行われる論理動作について
の真理値表である第10図乃至第14図を参照して、状態発
生論理51が前記制御信号をどのようにして発生するかに
ついて説明する。第10図乃至第14図に示す真理値表を実
現するために必要な論理回路は当業者にとつては周知で
ある。
を発生する。HW/SWは、動作を本発明のハードウエアに
より、またはソフトウエアにより行うことを示す2ビツ
ト信号である。UP/R−to−Lは、動作を上から下へ、下
から上へ、右から左へ、左から右へのいずれで処理すべ
きかを示す2ビツト信号である。HID/VISは、描くべき
物体が隠されているかどうか、すなわち、活動状態にあ
るクリツプウインドウのうしろにあるか、見えるかを示
す2ビツト信号である。それらの信号を発生するため
に、状態発生論理51が、X座標に対するレジスタR1〜R2
2と、Y座標に対するレジスタR23〜R44と、X/Y座標レジ
スタ37からの上位18ビツトが全て1および全て0である
ことを示す4個の4ビツト信号とを入力として受ける。
次に、状態発生論理51により行われる論理動作について
の真理値表である第10図乃至第14図を参照して、状態発
生論理51が前記制御信号をどのようにして発生するかに
ついて説明する。第10図乃至第14図に示す真理値表を実
現するために必要な論理回路は当業者にとつては周知で
ある。
第10図はX0座標(X0LとX0H)のための比較結果を用いる
真理値表である。X1〜X3とY0〜Y3の座標に対する比較結
果を利用する真理値表は、それらの座標を置き換え、Y
座標に対して、XClipMin,XClipMax,XTestMin,XTestMax
の代りに、YClipMin,YClipMax,YTestMin,YTestMaxを用
いる。表の右側は入力、左側は出力である。表におい
て、記号「−」はなし、0と!0は、それぞれ、バスビツ
ト値が全て1、または全てが1でないことを意味する
(X/Y座標レジスタ37から)、Zと!Zは、それぞれ、バ
スビツト値が全て0、または全てが0でないことを意味
する(X/Y座標レジスタ37から)。「X0 inside214」
は、32ビツトX0座標を15ビツトで表現できることを意味
する。「X0 inside Clip」は、X0がクリツプウインドウ
の境界の上または内側にあることを意味する。「X0 ins
ide test」は、X0がテストウインドウXの境界の上また
は内側にあることを意味する。出力「X0<XClipMin」,
「X0<XTestMin」,「X0>XClipMax」,「X0>XTestMa
x」は帰還され、入力として用いられる。出力を形成す
るために、水平行上の入力が一緒に論理積をとられ、列
における出力が一緒に論理和をとられる。したがつて、
たとえば第10図の初めの2行を参照して、X0〔31〕(す
なわち、それの符号ビツト)is 0 AND X0〔30:14〕(す
なわち、それの上位ビツト14−30)が全て0で、0R X0
〔31〕is 1 AND X0〔30:14〕が全て1であると、X0は2
14の内側である。同様に、第10図の最後の行を参照し
て、X0<XTestMin is 0(すなわち、誤り)AND X0>XTe
stMax is 0であれば、X0はテストウインドウの内側であ
る。
真理値表である。X1〜X3とY0〜Y3の座標に対する比較結
果を利用する真理値表は、それらの座標を置き換え、Y
座標に対して、XClipMin,XClipMax,XTestMin,XTestMax
の代りに、YClipMin,YClipMax,YTestMin,YTestMaxを用
いる。表の右側は入力、左側は出力である。表におい
て、記号「−」はなし、0と!0は、それぞれ、バスビツ
ト値が全て1、または全てが1でないことを意味する
(X/Y座標レジスタ37から)、Zと!Zは、それぞれ、バ
スビツト値が全て0、または全てが0でないことを意味
する(X/Y座標レジスタ37から)。「X0 inside214」
は、32ビツトX0座標を15ビツトで表現できることを意味
する。「X0 inside Clip」は、X0がクリツプウインドウ
の境界の上または内側にあることを意味する。「X0 ins
ide test」は、X0がテストウインドウXの境界の上また
は内側にあることを意味する。出力「X0<XClipMin」,
「X0<XTestMin」,「X0>XClipMax」,「X0>XTestMa
x」は帰還され、入力として用いられる。出力を形成す
るために、水平行上の入力が一緒に論理積をとられ、列
における出力が一緒に論理和をとられる。したがつて、
たとえば第10図の初めの2行を参照して、X0〔31〕(す
なわち、それの符号ビツト)is 0 AND X0〔30:14〕(す
なわち、それの上位ビツト14−30)が全て0で、0R X0
〔31〕is 1 AND X0〔30:14〕が全て1であると、X0は2
14の内側である。同様に、第10図の最後の行を参照し
て、X0<XTestMin is 0(すなわち、誤り)AND X0>XTe
stMax is 0であれば、X0はテストウインドウの内側であ
る。
第11a図と第11b図は、4つの各X頂点と4つの各Y頂点
の間の比較を利用する真理値表である。第10図の場合と
同様に、水平入力行上の値が一緒に論理積をとられ、そ
れの結果は論理1(真)または0(偽)であり、指示さ
れた出力(上、下、右、左を除く)がそれの対応する列
の論理和をとることによつて形成される。0,1,2,3とし
てそれぞれ示されている出力上、下、右、左は次のよう
に解釈される。値0,1,2または3はX0〜X3またはY0〜Y3
のどの座標が最大(上)、最小(下)、最も右側(右)
および最も左側(左)であるかを指定する。入力側の記
号<,>,E,L,Gは、指定された結果が、それぞれ、より
小さい、より大きい、等しい、より小さいか等しい、お
よびより大きいか等しい、ことを示す。
の間の比較を利用する真理値表である。第10図の場合と
同様に、水平入力行上の値が一緒に論理積をとられ、そ
れの結果は論理1(真)または0(偽)であり、指示さ
れた出力(上、下、右、左を除く)がそれの対応する列
の論理和をとることによつて形成される。0,1,2,3とし
てそれぞれ示されている出力上、下、右、左は次のよう
に解釈される。値0,1,2または3はX0〜X3またはY0〜Y3
のどの座標が最大(上)、最小(下)、最も右側(右)
および最も左側(左)であるかを指定する。入力側の記
号<,>,E,L,Gは、指定された結果が、それぞれ、より
小さい、より大きい、等しい、より小さいか等しい、お
よびより大きいか等しい、ことを示す。
出力の意味は表により定められるが、以下に、指示され
ている出力が何を意味するかを言葉で述べる。
ている出力が何を意味するかを言葉で述べる。
illegal−四対の頂点により定められている物体を通つ
て水平線が引かれるとすると、その線は2つまたはそれ
以上の縁部と交差することを意味する。蝶ネクタイを形
成する物体はillegalを真にする物体の例である。
て水平線が引かれるとすると、その線は2つまたはそれ
以上の縁部と交差することを意味する。蝶ネクタイを形
成する物体はillegalを真にする物体の例である。
horiz−4つの頂点の全てが同じY値を有することを意
味する。
味する。
vert−4つの頂点の全てが同じX値を有することを意味
する。
する。
rect−4つの座標で定められる物体が長方形を形成する
ことを意味する。
ことを意味する。
line−4つの座標で定められた物体が線を形成すること
を意味する。
を意味する。
EQ_01 頂点0が頂点1に等しいことを意味する(同じ
点を定める)。
点を定める)。
EQ_12 頂点1が頂点2に等しいことを意味する(同じ
点を定める)。
点を定める)。
EQ_23 頂点2が頂点3に等しいことを意味する(同じ
点を定める)。
点を定める)。
EQ_3 頂点3は頂点0に等しいことを意味する(同
じ点を定める)。
じ点を定める)。
第12a図乃至第12d図は、4個のX頂点および4個のY頂
点とクリツピング境界の間の比較を利用する真理値表を
示す。入力である上、下、右、左は第11a図と第11b図の
真理値表からである。出力である、上が見える、下が見
える、右が見える、左が見えるは1(すなわち、真)で
あり、4つの座標対により定められる物体はクリツプウ
インドウの内側である。囲みクリツプが1であると、物
体は外側であるが、クリツプウインドウを囲む。隠すは
四辺形だけに適用でき、4個の頂点の全てがクリツプウ
インドウの右、左、上または下であることを示す。hidd
en_01(BLIT SRC長方形を指す)とhidden_23(BLIT DES
T長方形を指す)はBLITに対して同様な意味を持つ。
点とクリツピング境界の間の比較を利用する真理値表を
示す。入力である上、下、右、左は第11a図と第11b図の
真理値表からである。出力である、上が見える、下が見
える、右が見える、左が見えるは1(すなわち、真)で
あり、4つの座標対により定められる物体はクリツプウ
インドウの内側である。囲みクリツプが1であると、物
体は外側であるが、クリツプウインドウを囲む。隠すは
四辺形だけに適用でき、4個の頂点の全てがクリツプウ
インドウの右、左、上または下であることを示す。hidd
en_01(BLIT SRC長方形を指す)とhidden_23(BLIT DES
T長方形を指す)はBLITに対して同様な意味を持つ。
第13図は4つのX頂点および4つのY頂点とテストウイ
ンドウ境界の間の比較を利用する真理値表を示す。出力
「テスト内の上」と「テスト内の下」は、真の時は、物
体の縁部がテストウインドウの上と下の境界内にそれぞ
れあることを示す。
ンドウ境界の間の比較を利用する真理値表を示す。出力
「テスト内の上」と「テスト内の下」は、真の時は、物
体の縁部がテストウインドウの上と下の境界内にそれぞ
れあることを示す。
第14図は、信号blit r−to−1,blit upと、draw r−to
−1およびdraw upを発生することにより、ページ交差
と、クリツプされた画素の処理とを最少にするために、
物体を描く向きまたはBLITを行う向きを示す真理値表で
ある。それらの信号は第2図に示す信号である描く向き
を含む。本発明のこの面についてのこれ以上の詳細につ
いては、1989年1月13日付の出願に係る米国特許第5,07
9,545号を参照されたい。
−1およびdraw upを発生することにより、ページ交差
と、クリツプされた画素の処理とを最少にするために、
物体を描く向きまたはBLITを行う向きを示す真理値表で
ある。それらの信号は第2図に示す信号である描く向き
を含む。本発明のこの面についてのこれ以上の詳細につ
いては、1989年1月13日付の出願に係る米国特許第5,07
9,545号を参照されたい。
第10図乃至第14図に示す真理値表を基にして、状態発生
論理51は第1図に示す信号HW,SW,HID,VISを次のように
して発生する。
論理51は第1図に示す信号HW,SW,HID,VISを次のように
して発生する。
ここに、BLIT_SRC_CHKはCPUからの2ビツト値であつ
て、元の長方形とクリツピングウインドウの関係を考え
たい時に「10」へセットされる。これが必要な理由は、
本発明を利用できる各種のグラフイツクスソフトウエア
が、SRC長方形とクリツピング境界の処理について一貫
しているからである。この理由から、BLIT SRC長方形ク
リツプ検査をソフトウエアが選択可能なオプシヨンとし
て残した(BLIT−SRT−CHK=01がSRCクリツプ検査を不
能にし、BLIT−SRC−CHK=10がSRCクリツプ検査を不能
にする)。
て、元の長方形とクリツピングウインドウの関係を考え
たい時に「10」へセットされる。これが必要な理由は、
本発明を利用できる各種のグラフイツクスソフトウエア
が、SRC長方形とクリツピング境界の処理について一貫
しているからである。この理由から、BLIT SRC長方形ク
リツプ検査をソフトウエアが選択可能なオプシヨンとし
て残した(BLIT−SRT−CHK=01がSRCクリツプ検査を不
能にし、BLIT−SRC−CHK=10がSRCクリツプ検査を不能
にする)。
SW=NOT HW HID=hid_23 VIS=NOT hid_23 四辺形物体についてのHW式から確めることができるよう
に、ここで説明しているグラフイツクサブシステムの好
適な実施例におけるテストウインドウ検査の結果を高め
るためにある最適化手法が適用される。
に、ここで説明しているグラフイツクサブシステムの好
適な実施例におけるテストウインドウ検査の結果を高め
るためにある最適化手法が適用される。
四辺形物体についてのHWの式が反映するように、ここで
説明しているグラフイツクスサブシステムの好適な実施
例にテストウインドウ検査の利用を最適にして、有利で
ある時にはサブシステムを常に最大限に利用してきた。
説明しているグラフイツクスサブシステムの好適な実施
例にテストウインドウ検査の利用を最適にして、有利で
ある時にはサブシステムを常に最大限に利用してきた。
隠されている(すなわち、見えない、またはクリツプさ
れた)画素の処理を必要としないように、座標シーケン
シング論理17と、機能アドレツシング論理19とはある種
のクリツプされた物体を処理する能力を有する。それら
の場合には、テストウインドウ最適化の利用は不要であ
るから、それらの物体におけるHW対SWの判定を行うこと
が禁止される。他の場合には、いくつかの頂点がテスト
ウインドウの外側にあつても、ハードウエアが物体を効
果的に取扱えるようにするある種の特徴を物体は持つこ
とができる。
れた)画素の処理を必要としないように、座標シーケン
シング論理17と、機能アドレツシング論理19とはある種
のクリツプされた物体を処理する能力を有する。それら
の場合には、テストウインドウ最適化の利用は不要であ
るから、それらの物体におけるHW対SWの判定を行うこと
が禁止される。他の場合には、いくつかの頂点がテスト
ウインドウの外側にあつても、ハードウエアが物体を効
果的に取扱えるようにするある種の特徴を物体は持つこ
とができる。
それらの種類に含まれる物体の例を、グラフイツクスサ
ブシステムがそれらの物体をどのようにして取扱うかと
いうこととともに以下に示す。
ブシステムがそれらの物体をどのようにして取扱うかと
いうこととともに以下に示す。
1)クリツプウインドウを囲む物体−それらの物体の頂
点を、処理前に、クリツプの境界と直接交換できる。こ
れは座標シーケンシング論理17で行われる。
点を、処理前に、クリツプの境界と直接交換できる。こ
れは座標シーケンシング論理17で行われる。
2)テストウインドウの中と外に頂点を1つずつ有する
線−それらの線の処理はテストウインドウ内の頂点から
始り、他の頂点へ向つて続けられるように制約される。
線の見える部分が処理されると、テストウインドウの外
の画素を処理する必要なしに処理はされる。処理の向き
の拘束は状態発生論理51により決定される。線の見える
部分が取扱われた後の処理の終了は機能アドレツシング
論理19により行われる。
線−それらの線の処理はテストウインドウ内の頂点から
始り、他の頂点へ向つて続けられるように制約される。
線の見える部分が処理されると、テストウインドウの外
の画素を処理する必要なしに処理はされる。処理の向き
の拘束は状態発生論理51により決定される。線の見える
部分が取扱われた後の処理の終了は機能アドレツシング
論理19により行われる。
3)X方向の全ての頂点をテストウインドウの中に有
し、Y方向の下頂点または上頂点をテストウインドウ内
に有する任意の四辺形−されらの物体の処理は、物体の
どの側がテストウインドウの中にあるかに応じて、物体
の上または下から行われるように拘束される。それか
ら、物体の処理は、テストウインドウの外側にある頂点
へ向かう向きで、他の側(上または下)へ向つて進む。
物体の可視部分が処理されると、テストウインドウの外
の画素を処理する必要なしに処理は終らされる。処理の
向きの拘束は状態発生論理51により決定される。物体の
可視部分が取扱われた後の処理は機能アドレツシングブ
ロツクにより終らされる。
し、Y方向の下頂点または上頂点をテストウインドウ内
に有する任意の四辺形−されらの物体の処理は、物体の
どの側がテストウインドウの中にあるかに応じて、物体
の上または下から行われるように拘束される。それか
ら、物体の処理は、テストウインドウの外側にある頂点
へ向かう向きで、他の側(上または下)へ向つて進む。
物体の可視部分が処理されると、テストウインドウの外
の画素を処理する必要なしに処理は終らされる。処理の
向きの拘束は状態発生論理51により決定される。物体の
可視部分が取扱われた後の処理は機能アドレツシングブ
ロツクにより終らされる。
第1図は本発明のワースステーシヨン用のグラフイツク
スサブシステムのブロツク図、第2図は本発明のグラフ
イツクスサブシステムの座標ステージング部のブロツク
図、第3図は加算器とマルチプレクサの詳しいブロツク
図、第4図はX/Y座標レジスタの詳しいブロツク図、第
5図はクリツプ座標レジスタの詳しいブロツク図、第6
図はラスタオフセツトレジスタの詳しいブロツク図、第
7図はテストウインドウ制御器の詳しいブロツク図、第
8図は比較論理および結果記憶装置の詳しいブロツク
図、第9図は制御状態マシンをロードするための相対的
なタイミングと、比較論理および結果記憶装置により行
われる比較を示す表、第10図はX0座標の比較結果を利用
する真理値表、第11a図と第11b図はXとYの各4つの頂
点の間の比較を利用する真理値表、第12a〜12d図は4つ
のX,Y頂点とクリツピング境界の間の比較を利用する真
理値表、第13図は4つのX,Y頂点とテストウインドウ境
界の間の比較を利用する真理値表、第14図は物体を描く
向きまたはblitsを行う向きを示す真理値表である。 15……座標ステージング部、19……機能アドレツシング
部、21……マスク発生器、23……直線アドレス発生器、
31……加算器、33……ローデイング制御状態マシン、35
……マルチプレクサ、37……X/Y座標レジスタ、39……
クリツプ座標レジスタ、41……ラスタオフセツトレジス
タ、43……指標レジスタ、45……テストウインドウ制御
器、47……比較論理および結果記憶装置、49……比較制
御状態マシン、51……状態発生器、67,69,71,73……全
て1、全て0論理回路、93……減少器、95……増加器、
121〜124……比較器。
スサブシステムのブロツク図、第2図は本発明のグラフ
イツクスサブシステムの座標ステージング部のブロツク
図、第3図は加算器とマルチプレクサの詳しいブロツク
図、第4図はX/Y座標レジスタの詳しいブロツク図、第
5図はクリツプ座標レジスタの詳しいブロツク図、第6
図はラスタオフセツトレジスタの詳しいブロツク図、第
7図はテストウインドウ制御器の詳しいブロツク図、第
8図は比較論理および結果記憶装置の詳しいブロツク
図、第9図は制御状態マシンをロードするための相対的
なタイミングと、比較論理および結果記憶装置により行
われる比較を示す表、第10図はX0座標の比較結果を利用
する真理値表、第11a図と第11b図はXとYの各4つの頂
点の間の比較を利用する真理値表、第12a〜12d図は4つ
のX,Y頂点とクリツピング境界の間の比較を利用する真
理値表、第13図は4つのX,Y頂点とテストウインドウ境
界の間の比較を利用する真理値表、第14図は物体を描く
向きまたはblitsを行う向きを示す真理値表である。 15……座標ステージング部、19……機能アドレツシング
部、21……マスク発生器、23……直線アドレス発生器、
31……加算器、33……ローデイング制御状態マシン、35
……マルチプレクサ、37……X/Y座標レジスタ、39……
クリツプ座標レジスタ、41……ラスタオフセツトレジス
タ、43……指標レジスタ、45……テストウインドウ制御
器、47……比較論理および結果記憶装置、49……比較制
御状態マシン、51……状態発生器、67,69,71,73……全
て1、全て0論理回路、93……減少器、95……増加器、
121〜124……比較器。
Claims (2)
- 【請求項1】描くべき四辺形と動かすべきブロック画像
の1つである物体にして、グラフィックサブシステムに
より表示する物体についての複数のX・Y座標対のX座
標と、所定の複数のクリップ座標対のX座標と、所定の
複数のX・Yオフセット対のXオフセットとの間での比
較を行うこと、および、複数のX・Y座標対のY座標
と、所定の複数のクリップ座標対のY座標と、所定の複
数のX・Yオフセット対のYオフセットとの間での比較
を行うことによって、比較結果を示す複数の信号を発生
する、比較を行い信号を発生する装置であって、所定の
上下左右のクリップ座標を有するクリップウインドウを
具備しており、 (a)複数の物体座標レジスタを備え、 (b)複数のクリップ座標レジスタを備え、 (c)複数のオフセットレジスタを備え、 (d)前記複数の物体座標レジスタ、前記複数のクリッ
プ座標レジスタおよび前記複数のオフセットレジスタに
接続された第1のマルチプレクサを有し、さらに、前記
複数の物体座標レジスタにX・Y座標対を、前記複数の
クリップ座標レジスタにクリップ座標対を、前記複数の
オフセットレジスタに所定のXおよびYのオフセットの
対をそれぞれローディングするよう、前記第1のマルチ
プレクサの動作を制御するローディング制御手段を有す
るローディング手段を備え、 X・Y座標対とクリップ座標対およびオフセット対は、
物体のクリッピングを表示前に行う計算に使用され、前
記所定のXおよびYのオフセットによりテストウインド
ウが定まり、 (e)前記ローディング手段に接続されていて、X・Y
座標対と、所定の複数のクリップ座標対と、所定の複数
のオフセット対との間での前記比較を行う比較手段を備
え、 (f)前記クリップウインドウの境界に対する前記テス
トウインドウの境界を計算するために前記オフセットレ
ジスタと前記クリップ座標レジスタとに接続された計算
手段を備え、 (g)前記各比較結果の所定のものを選択するために前
記比較手段に接続されたマルチプレクサを備え、 (h)前記各比較結果から選択された所定のものを格納
するために前記マルチプレクサに接続された少なくとも
1つの比較レジスタを備え、 (i)前記比較手段、前記マルチプレクサおよび前記比
較レジスタの動作を制御する比較制御手段を備え、 (j)前記比較レジスタに接続された状態発生手段であ
って、 前記各X・Y座標対のX座標が前記所定の左クリップ座
標より小さいか、 前記各X・Y座標対のX座標が前記所定の右クリップ座
標より大きいか、 前記各X・Y座標対のX座標が、前記所定の左クリップ
座標から前記Xオフセットを減じたものより小さいか、 前記各X・Y座標対のX座標が、前記所定の右クリップ
座標にXオフセットを加えたものより大きいか、 前記各X・Y座標対のX座標が、15ビットで表される
か、 前記各X・Y座標対のX座標が、前記左クリップ座標と
前記右クリップ座標との間にあるか、 前記各X・Y座標対のX座標が、前記左クリップ座標か
らXオフセットを減じたものと前記右クリップ座標にX
オフセットを加えたものとの間にあるか、を特定し、そ
して、 前記各X・Y座標対のY座標が前記所定の下クリップ座
標より小さいか、 前記各X・Y座標対のY座標が前記所定の上クリップ座
標より大きいか、 前記各X・Y座標対のY座標が、前記所定の下クリップ
座標から前記Yオフセットを減じたものより小さいか、 前記各X・Y座標対のY座標が、前記所定の上クリップ
座標にYオフセットを加えたものより大きいか、 前記各X・Y座標対のY座標が、15ビットで表される
か、 前記各X・Y座標対のY座標が、前記下クリップ座標と
前記上クリップ座標との間にあるか、 前記各X・Y座標対のY座標が、前記下クリップ座標か
らYオフセットを減じたものと前記上クリップ座標にY
オフセットを加えたものとの間にあるか、を特定する前
記複数の信号を、前記比較結果の選択した所定のものか
ら発生する状態発生手段を備える、 比較を行い信号を発生する装置。 - 【請求項2】描くべき四辺形と動かすべきブロック画像
の1つである物体にして、グラフィックサブシステムに
より表示する物体についての複数のX・Y座標対のX座
標と、所定の複数のクリップ座標対のX座標と、所定の
複数のX・Yオフセット対のXオフセットとの間での比
較を行うこと、および、複数のX・Y座標対のY座標
と、所定の複数のクリップ座標対のY座標と、所定の複
数のX・Yオフセット対のYオフセットとの間での比較
を行うことによって、比較結果を示す複数の状態信号を
発生する、比較を行い状態信号を発生する方法であっ
て、所定の上下左右のクリップ座標を有するクリップウ
インドウを用いており、 複数の物体座標レジスタと、複数のクリップ座標レジス
タと、複数のオフセットレジスタとを準備し、 前記複数の物体座標レジスタにX・Y座標対を、前記複
数のクリップ座標レジスタにクリップ座標対を、前記複
数のオフセットレジスタに所定のXおよびYのオフセッ
トの対をそれぞれローディングし、 前記複数の物体座標レジスタにロードされたX・Y座標
対と、前記複数のクリップ座標レジスタにロードされた
クリップ座標対と、前記複数のオフセットレジスタにロ
ードされた所定のXおよびYのオフセットの対との間で
前記比較を行い、 前記クリップウインドウの境界に対してテストウインド
ウの境界を、前記オフセットレジスタにロードされたオ
フセットと、前記クリップ座標レジスタにロードされた
クリップ座標とから決定し、 前記各比較結果の所定のものを選択し、 前記各比較結果から選択された所定のものを少なくとも
1つの比較レジスタに格納し、 この少なくとも1つの比較レジスタに格納された比較結
果のあるものに基づいて、 前記各X・Y座標対のX座標が前記所定の左クリップ座
標より小さいか、 前記各X・Y座標対のX座標が前記所定の右クリップ座
標より大きいか、 前記各X・Y座標対のX座標が、前記所定の左クリップ
座標から前記Xオフセットを減じたものより小さいか、 前記各X・Y座標対のX座標が、前記所定の右クリップ
座標にXオフセットを加えたものより大きいか、 前記各X・Y座標対のX座標が、15ビットで表される
か、 前記各X・Y座標対のX座標が、前記左クリップ座標と
前記右クリップ座標との間にあるか、 前記各X・Y座標対のX座標が、前記左クリップ座標か
らXオフセットを減じたものと前記右クリップ座標にX
オフセットを加えたものとの間にあるか、 を特定し、そして、 前記各X・Y座標対のY座標が前記所定の下クリップ座
標より小さいか、 前記各X・Y座標対のY座標が前記所定の上クリップ座
標より大きいか、 前記各X・Y座標対のY座標が、前記所定の下クリップ
座標から前記Yオフセットを減じたものより小さいか、 前記各X・Y座標対のY座標が、前記所定の上クリップ
座標にYオフセットを加えたものより大きいか、 前記各X・Y座標対のY座標が、15ビットで表される
か、 前記各X・Y座標対のY座標が、前記下クリップ座標と
前記上クリップ座標との間にあるか、 前記各X・Y座標対のY座標が、前記下クリップ座標か
らYオフセットを減じたものと前記上クリップ座標にY
オフセットを加えたものとの間にあるか、 を特定する複数の状態信号を、物体表示用に発生する、
比較を行い状態信号を発生する方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US29709389A | 1989-01-13 | 1989-01-13 | |
| US297,093 | 1989-01-13 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH02270082A JPH02270082A (ja) | 1990-11-05 |
| JPH0727572B2 true JPH0727572B2 (ja) | 1995-03-29 |
Family
ID=23144835
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP699090A Expired - Fee Related JPH0727572B2 (ja) | 1989-01-13 | 1990-01-16 | 比較を行い信号を発生する装置およびその方法 |
Country Status (5)
| Country | Link |
|---|---|
| JP (1) | JPH0727572B2 (ja) |
| CA (1) | CA1316263C (ja) |
| DE (1) | DE4000215C2 (ja) |
| GB (1) | GB2227148B (ja) |
| HK (1) | HK52894A (ja) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH05233770A (ja) * | 1992-02-24 | 1993-09-10 | Tokyo Gas Co Ltd | 線画デ−タ検索方式 |
| US20010013867A1 (en) * | 1998-04-27 | 2001-08-16 | Kenshiu Watanabe | Object search method and object search system |
| US6445386B1 (en) * | 1999-01-15 | 2002-09-03 | Intel Corporation | Method and apparatus for stretch blitting using a 3D pipeline |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6120128A (ja) * | 1984-07-07 | 1986-01-28 | Daikin Ind Ltd | Crtデイスプレイ装置のクリツプ回路 |
| US4710767A (en) * | 1985-07-19 | 1987-12-01 | Sanders Associates, Inc. | Method and apparatus for displaying multiple images in overlapping windows |
-
1989
- 1989-09-14 GB GB8920842A patent/GB2227148B/en not_active Expired - Fee Related
- 1989-09-22 CA CA000612526A patent/CA1316263C/en not_active Expired - Fee Related
-
1990
- 1990-01-05 DE DE19904000215 patent/DE4000215C2/de not_active Expired - Fee Related
- 1990-01-16 JP JP699090A patent/JPH0727572B2/ja not_active Expired - Fee Related
-
1994
- 1994-05-24 HK HK52894A patent/HK52894A/xx not_active IP Right Cessation
Also Published As
| Publication number | Publication date |
|---|---|
| GB2227148B (en) | 1993-09-08 |
| HK52894A (en) | 1994-06-03 |
| CA1316263C (en) | 1993-04-13 |
| DE4000215A1 (de) | 1990-07-19 |
| DE4000215C2 (de) | 1997-08-21 |
| GB2227148A (en) | 1990-07-18 |
| GB8920842D0 (en) | 1989-11-01 |
| JPH02270082A (ja) | 1990-11-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4679041A (en) | High speed Z-buffer with dynamic random access memory | |
| US6781590B2 (en) | Graphic processing system having bus connection control functions | |
| US4730261A (en) | Solids modelling generator | |
| JPH07104734A (ja) | 図形データ並列処理表示装置 | |
| US4970499A (en) | Apparatus and method for performing depth buffering in a three dimensional display | |
| US4747042A (en) | Display control system | |
| US5157764A (en) | Apparatus and method for using a test window in a graphics subsystem which incorporates hardware to perform clipping of images | |
| US5079545A (en) | Apparatus and method for processing graphical information to minimize page crossings and eliminate processing of information outside a predetermined clip window | |
| US5297240A (en) | Hardware implementation of clipping and intercoordinate comparison logic | |
| JPH0727572B2 (ja) | 比較を行い信号を発生する装置およびその方法 | |
| JPH07503087A (ja) | 改善されたパターン性能を有するビデオグラフィック制御器 | |
| CA2055784C (en) | Hierarchical memory controller | |
| US5142668A (en) | Apparatus and method for loading coordinate registers for use with a graphics subsystem utilizing an index register | |
| CA2055783A1 (en) | High performance bitblt and line draw engine | |
| US6885375B2 (en) | Stalling pipelines in large designs | |
| EP0268038B1 (en) | Graphics processing system | |
| US5274755A (en) | Hardware implementation for providing raster offsets in a graphics subsystem with windowing | |
| US6831645B2 (en) | System and method for performing font operations when background color is transparent | |
| KR0145709B1 (ko) | 컴퓨터 그래픽 시스템 | |
| GB2227147A (en) | Window clipping hardware | |
| JP3090644B2 (ja) | 画像データ処理装置及びそれを用いたシステム | |
| GB2227146A (en) | Loading coordinate registers for use with a graphics sub-system | |
| JPS62204389A (ja) | 任意多角形によるクリツピング・シ−ルデイング方法 | |
| GB2267803A (en) | Hardware implementation of clipping and inter-coordinate comparison logic | |
| JP2787487B2 (ja) | コンピュータシステムに表示され且つ操作される線分の位置を決定する回路 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |