JPH02228783A - Image processor - Google Patents

Image processor

Info

Publication number
JPH02228783A
JPH02228783A JP2006989A JP698990A JPH02228783A JP H02228783 A JPH02228783 A JP H02228783A JP 2006989 A JP2006989 A JP 2006989A JP 698990 A JP698990 A JP 698990A JP H02228783 A JPH02228783 A JP H02228783A
Authority
JP
Japan
Prior art keywords
register
coordinate
logic
registers
coordinates
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
JP2006989A
Other languages
Japanese (ja)
Inventor
Curtis Priem
カーチス・プリーム
Chris Malachowsky
クリス・マラコフスキイ
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.)
Sun Microsystems Inc
Original Assignee
Sun Microsystems Inc
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 Sun Microsystems Inc filed Critical Sun Microsystems Inc
Publication of JPH02228783A publication Critical patent/JPH02228783A/en
Pending legal-status Critical Current

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
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/00—Two-dimensional [2D] image generation
    • G06T11/20—Drawing from basic elements
    • G06T11/23—Drawing from basic elements using straight lines or curves

Landscapes

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

Abstract

PURPOSE: To realize relative addressing being a mechanism efficient for displaying the copy of an object by using an index register. CONSTITUTION: A coordinate staging part 15 contains an adder 31, a loading control state machine 33, a multiplexer 35, an XY coordinate register 37, a clip register 39, a raster offset register 41, index logic 43, test window control logic 45, a comparison logic/result storage device 47, a comparison control state machine 49 and state generation logic 51. The loading control state machine 33 for controlling the operation of the index register contained in index logic 43 is realized. Thus, data can be received at speed as fast as possible, total waiting time can be shortened and throughput can be reduced.

Description

【発明の詳細な説明】 〔発明の概要〕 本発明は、退化四辺形対象物、すなわち、点。[Detailed description of the invention] [Summary of the invention] The invention deals with degenerate quadrilateral objects, i.e. points.

線及び三角形をも含み、図形表示すブシステムによシ表
示されるべき四辺形目的物の4つの頂点の座標を記憶す
るレジスタを、0,1,2.3と循環動作する指標レジ
スタを使用してロードする装置に関する。このようにす
れば、ソフトウェア°指令は対象物を規定するために最
小限の数のx、y座標対、すなわち、点の場合は1対の
座標、線の場合は2対の座標、三角形の場合は3対の座
標、そして矩形の場合は(対向する角を規定することに
より)2対の座標を規定するだけで良くなる。
An index register that cycles through 0, 1, 2.3 is used to store the coordinates of the four vertices of a quadrilateral object that includes lines and triangles and is to be displayed by the graphics display system. and loading device. In this way, the software ° commands specify the minimum number of x, y coordinate pairs to define the object: one pair of coordinates for a point, two pairs of coordinates for a line, two pairs of coordinates for a triangle, In the case of a rectangle, it is only necessary to define three pairs of coordinates, and in the case of a rectangle, two pairs of coordinates (by defining opposite corners).

本発明は、指標レジスタの利用により、対象物の複製を
表示するのに効率良いメカニズムである相対アドレッシ
ングをさらに実行する。相対アドレッシングは、次のよ
うな例によって説明されると、最も良くわかる。三角形
の3つの頂点を、それぞれ、xol yo l x、 
l y、及びX2.Y、  とじて規定する。この目的
物を図形表示装置の様々に異なる場所に50回複製する
ためには、150対のX。
The present invention further implements relative addressing, which is an efficient mechanism for representing replicas of objects, through the use of index registers. Relative addressing is best explained by the following example. The three vertices of the triangle are xol yo l x,
l y, and X2. Y. 150 pairs of Xs to replicate this object 50 times at different locations on the graphics display.

Y座標を記憶することが必要になるであろう。相対アド
レツZングを使用すると、1つの頂点が原点xol y
oとして規定され、第2の頂点と第3の頂点は先の頂点
からのオフセット、すなわち、ΔXo、 、ΔYOI及
びΔX12.ΔY12として規定゛される。
It will be necessary to remember the Y coordinate. When using relative addressing Zing, one vertex is the origin xol y
o, and the second and third vertices are offsets from the previous vertex, namely ΔXo, , ΔYOI and ΔX12. It is defined as ΔY12.

尚、ΔXab又はΔYabは、XIlとXbとの差又は
y、とYbとの差を表わす。対象物を50回複製すると
きには、複製ごとに(すなわち、50個の対象物原点の
それぞれについて)2対のオフセットと、新たなXo、
Yoを記憶するだけで良い。
Note that ΔXab or ΔYab represents the difference between XIl and Xb or the difference between y and Yb. When replicating an object 50 times, for each replication (i.e., for each of the 50 object origins) we have two pairs of offsets and a new Xo,
All you have to do is memorize Yo.

座標と、クリッピングを実行するために必要なクリップ
ウィンドウとの比較が八−ドウエアで実行されるような
図形サブシステムに関連して本発明を説明する。本発明
は、ビデオ表示装置に表示すべき画像のクリッピングを
可能である限りハードウェアで実行し、ソフトウェアに
は、本発明の図形サブシステムを使用して確実にクリッ
プすることができない画像又は画像部分のみを残す装置
の一部を形成する。
The present invention will be described in the context of a graphics subsystem in which the comparison of coordinates and the clip window required to perform clipping is performed in eight-dware. The present invention performs the clipping of images to be displayed on a video display device in hardware to the extent possible, and in software includes images or portions of images that cannot be reliably clipped using the graphics subsystem of the present invention. form part of the device that leaves only the

〔実施例〕〔Example〕

本発明はエンジニアリングワークステーションの図形サ
ブシステムに関スル。
The present invention relates to the graphics subsystem of an engineering workstation.

クリッピングを伴なう任意の四辺形の描出と、クリッピ
ングを伴なうブロック画像転送(BLIT)とを支援す
るのに必要な記憶容量と比較情報を提供する九めに、座
標ステージングブロック及び座標比較論理ブロック(第
1図を参照)が設けられる。いずれの場合にも、4対の
X/Y座標を指定し且つクリッピングウィンドウ境界を
指定することが必要である。
Finally, the coordinate staging block and coordinate comparison provide the storage capacity and comparison information necessary to support arbitrary quadrilateral drawing with clipping and block image transfer with clipping (BLIT). A logic block (see FIG. 1) is provided. In either case, it is necessary to specify four pairs of X/Y coordinates and to specify the clipping window boundaries.

四辺形描出を支援するということは、その四辺形を規定
する4つの頂点を利用できることを示唆する。ここに開
示する本発明の実施例は、それらの頂点にほとんど制限
を課さない。頂点は4対のレジスタ(1対のレジスタは
X座標のための1つのレジスタと、Y座標のための1つ
のレジスタとから構成される)に記憶され、頂点番号O
から3によって表わされる。頂点Oは頂点1に結合し、
頂点lは頂点2に結合し、頂点2は頂点3に結合し、頂
点3は頂点Oに結合することになっており、頂点0と頂
点2又は頂点lと頂点3との間には結合はないものとす
る。座標ステージング部と比較論理は、指定された四辺
形の表示用メモリへの記憶を最終的に実行するパイプラ
インの最初の段を形成する。パイプラインにおいてそれ
らの段の後に続く段は、それぞれの頂点と、それと隣り
合う頂点との関係に関する情報(すなわち、頂点lの場
合、XlとXO,YlとYO,XIとX2及びYlとY
2との関係)を要求する。この情報は、合成されたとき
に元の四辺形を正確に表示する一連の不等辺四辺形を機
能アドレッシングブロックに適正に供給するために必要
で°ある。任意の四辺形の分解は座標順序付は論理によ
って実行される。
Supporting quadrilateral drawing suggests that the four vertices that define the quadrilateral can be used. The embodiments of the invention disclosed herein impose few restrictions on these vertices. The vertices are stored in four pairs of registers (one pair of registers consists of one register for the X coordinate and one register for the Y coordinate), and the vertex number O
to 3. Vertex O is connected to vertex 1,
Vertex l is to be connected to vertex 2, vertex 2 is to be connected to vertex 3, vertex 3 is to be connected to vertex O, and there is no connection between vertex 0 and vertex 2 or vertex l and vertex 3. Make it not exist. The coordinate staging section and comparison logic form the first stage of the pipeline that ultimately performs the storage of a specified quadrilateral into display memory. The stages that follow those stages in the pipeline have information about the relationship between each vertex and its neighbors (i.e., for vertex l, Xl and XO, Yl and YO, XI and X2, and Yl and Y
2). This information is necessary in order to properly supply the functional addressing block with a series of trapezoids that, when combined, accurately represent the original quadrilaterals. Decomposition of any quadrilateral and coordinate ordering are performed by logic.

さらに、後続するパイプラインの段において四辺形のク
リッピング境界に対するクリッピングを支援するために
は、頂点と、適切なりリッピング境界との関係も必要と
される。1例を挙げると、これは、全てのX頂点を最小
Xクリップ境界と、最大クリップ境界の双方と比較する
ことを意味している。Y座標についても、同様の一連の
比較が必要である。場合によっては、これらの比較は、
対象物が可視、(クリップされない)部分を有するのか
否かを表わすこともできる。可視でない対象物をあらか
じめ識別することにより、表示用メモリへの書込みに可
視画素は識別されなくなるので、後続するパイプライン
段の利用を回避することができる。これは、四辺形の描
出がクリッピング情報の解析の直後に起こったと考える
ことができるという点で、性能上の1つの利点となって
いる。
Additionally, relationships between vertices and appropriate ripping boundaries are also required to support clipping to quadrilateral clipping boundaries in subsequent pipeline stages. In one example, this means comparing all X vertices to both the minimum X clip boundary and the maximum clip boundary. A similar series of comparisons is required for the Y coordinate. In some cases, these comparisons are
It can also indicate whether the object has visible (non-clipped) parts. By pre-identifying non-visible objects, the use of subsequent pipeline stages can be avoided since visible pixels are not identified for writing to the display memory. This is a performance advantage in that the drawing of the quadrilateral can be considered to have occurred immediately after the analysis of the clipping information.

ここで説明する図形システムの好ましい実施例は、1つ
の線分と関連する画素を確定するときに16ビツト2の
補数演算を利用する。この演算は、線分の2のX頂点及
びY頂点の差をとることを含む。演算上のオーバフロー
を避けるために、X頂点値及びY頂点値の数値範囲を1
5ピツトで表わせるように、すなわち、−214と(2
”−1)との間になるように制限しなければならない。
The preferred embodiment of the graphics system described herein utilizes 16-bit two's complement arithmetic in determining the pixels associated with a line segment. This operation involves taking the difference between the X and Y vertices of the two line segments. To avoid arithmetic overflow, set the numerical range of X vertex value and Y vertex value to 1.
In other words, -214 and (2
”-1).

これを支援する場合、頂点の数値範囲の検査は座標比較
論理により実行される。
In support of this, checking the numerical range of vertices is performed by coordinate comparison logic.

BLITの支援に際しても、ソース(SR(2)矩形の
対向する角を指定する2つの頂点と、宛先(Dgs’r
 )矩形の対向する角を指定する2つの頂点の4つの頂
点が必要である。BLIT動作の意図は、SRC矩形に
含まれている画素をDgST矩形に複写することである
。この実施例では、SRC矩形の左上角は頂点0として
記憶され、SRCの右下角は頂点lとして記憶される。
When supporting BLIT, two vertices specifying the opposite corners of the source (SR(2) rectangle and the destination (Dgs'r
) four vertices are required, two vertices specifying opposite corners of the rectangle. The intent of the BLIT operation is to copy the pixels contained in the SRC rectangle to the DgST rectangle. In this example, the upper left corner of the SRC rectangle is stored as vertex 0, and the lower right corner of the SRC is stored as vertex l.

同様にDESTの左上角は頂点2として、また、右下角
は頂点3としてそれぞれ記憶される。SRCをDEST
に正しく複写するためには、2つの矩形が重なシ合う場
合、注意を払わなければならない。重なり合いが起こる
と、正しい結果を得る必要がある場合には、画素が複写
される順序は制約される。これは、画業者には良く知ら
れている問題である。画素複写の制約を適正に定めるた
めに要求される情報には、SRC矩形境界と、DBST
矩形境界との比較がある。これは、関連するX座標とY
座標の双方について必要である。
Similarly, the upper left corner of DEST is stored as vertex 2, and the lower right corner is stored as vertex 3. DEST SRC
In order to copy correctly, care must be taken when two rectangles overlap. When overlap occurs, the order in which pixels are copied is constrained if necessary to obtain correct results. This is a problem well known to painters. The information required to properly define pixel copy constraints includes SRC rectangle boundaries and DBST
There is a comparison with a rectangular boundary. This is the associated X coordinate and Y
Required for both coordinates.

さらに、パイプラインの後続、する段においてSRC矩
形とDEST矩形の双方のクリッピングを支援するため
には、SRC’頂点及びDEST頂点と、適切なりリッ
ピング境界との関係も必要とされる。
Additionally, to support clipping of both SRC and DEST rectangles in subsequent stages of the pipeline, relationships of SRC' and DEST vertices with appropriate ripping boundaries are also required.

この場合にも、SRC矩形又はDEST矩形のいずれか
一方が全ぐあい壕いであり(見えず)、後続するパイプ
ライン段を利用する必要がなくなることも考えられる。
In this case as well, it is conceivable that either the SRC rectangle or the DEST rectangle is completely hidden (not visible) and there is no need to use the subsequent pipeline stage.

これは、BLITの実行がクリッピング情報の解析直後
に起こったと考えることができるという点で、性能上の
1つの利点になっている。
This is one performance advantage in that the execution of BLIT can be considered to have occurred immediately after the analysis of the clipping information.

座標ステージング制御論理は、座標値を獲得するための
複数の方法を支援する。これに相応して、座標比較論理
は、座標値がどのようにして提供されたかにかかわらず
、必要な比較情報を維持する。
The coordinate staging control logic supports multiple methods for obtaining coordinate values. Correspondingly, the coordinate comparison logic maintains the necessary comparison information regardless of how the coordinate values were provided.

座標を獲得する様々な方法を絶対、指座指示及び相対と
まとめることができる。採用する特定の方法は、ロード
されるべきレジスタを識別するためKCPUが使用する
レジスタのアドレスにより決定される。絶対座標値は、
CPUKよりアドレスされたレジスタに供給される実際
の値を記憶することによシロードされる。このロード方
法は、後述するようなクリップ境界レジスタ及びラスタ
ーオフセットレジスタと、個々の座標レジスタとをロー
ドするときに使用される。第2の方法である指標指示は
、同一の値を有する複数の座標を効率良くロードするた
めに使用される。この場合、CPUが供給した値は、1
つ又は複数の座標レジスタへの記憶のために利用可能状
態にされる前に、まず、適切なラスターオフセットレジ
スタ(ラスターオフセットX又はラスターオフセットY
)に加えられる。ラスターオフセットの追加は、CPU
によシ提供されたX/Yアドレススペースを表示用メモ
リの別の領域へオフセットする手段となる。
The various methods of obtaining coordinates can be summarized as absolute, indexed, and relative. The particular method employed is determined by the address of the register used by the KCPU to identify the register to be loaded. The absolute coordinate value is
It is shrouded by storing the actual value provided to the register addressed by CPUK. This loading method is used when loading clip boundary registers and raster offset registers, as well as individual coordinate registers, as described below. The second method, indexing, is used to efficiently load multiple coordinates with the same value. In this case, the value supplied by the CPU is 1
The appropriate raster offset register (raster offset
). Addition of raster offset is done by CPU
This provides a means of offsetting the X/Y address space provided by the display to another area of display memory.

指標指示ローディングメカニズムは、それ自身をガイド
し且つある所定のサイクルの間にいくつの座標レジスタ
をロードすべきか、また、どの座標レジスタをロードす
べきかを表わすために、2ビツトの指標を利用する。C
PUが退化四辺形を識別するとき、点では1対のX/Y
を指定するだけでよく、また、線の場合は2対のX/Y
、三角形の場合には3対のX/Yを指定すれば良いよう
Kするのは、このメカニズムである。上記の退化四辺形
のいずれか1つが4つの頂点レジスタニロードされると
き、1つ又は2つ以上の頂点は繰返されることになる。
The index-directed loading mechanism utilizes a two-bit index to guide itself and represent how many and which coordinate registers to load during a given cycle. C
When PU identifies a degenerate quadrilateral, a point has a pair of X/Y
In the case of a line, two pairs of X/Y
, it is this mechanism that allows K to specify three pairs of X/Y in the case of a triangle. When any one of the above degenerate quadrilaterals is loaded into a four vertex register, one or more vertices will be repeated.

パイプラインの後続する段が規定された対象物を(たと
え、退化四辺形であっても)常に四辺形として解釈する
ことができ、決して、下位の対象物(すなわち、点11
j l三角形)全てを特殊なケースとして扱わないよう
にするために、この繰返しは必要である。また、指標指
示ローディング方式によれば、矩形に対応する四辺形の
4つの内金てを正しく規定するためには、その矩形の対
向する2つの角を入力するだけで良い。
Subsequent stages of the pipeline can always interpret the defined object as a quadrilateral (even if it is a degenerate quadrilateral), and can never
This repetition is necessary to avoid treating all (j l triangles) as special cases. Further, according to the index instruction loading method, in order to correctly define all four inner parts of a quadrilateral corresponding to a rectangle, it is only necessary to input two opposing corners of the rectangle.

第3のローディング方法である相対方法は、CPUに、
最前に入力された座標と、所期の新たな座標値との差の
みを指定させるために使用される。この場合、CPUが
供給するデルタ、すなわち、オフセットは、1つ又は複
数のレジスタにロードされる前に、先にロードされてい
た座標に加えられる。
The third loading method, the relative method, allows the CPU to
It is used to specify only the difference between the most recently input coordinates and the desired new coordinate values. In this case, the CPU supplied delta, or offset, is added to the previously loaded coordinates before being loaded into one or more registers.

必要な加算について最前に入力された座標(verte
x(1ndex−1) mod4 )を指示するために
2ビツトの指標が使用されるが、これは、指標指示ロー
ディングの場合と同様に、どのレジスタをロードしなけ
ればならないかをさらに指示する。
The coordinates most recently entered for the required addition (vert
A two-bit index is used to indicate x(1ndex-1) mod 4), which further indicates which register should be loaded, as in index-directed loading.

最終的な結果として、CPUは、支援するどの方法で座
標レジスタをロードすべきかを、自由に選択することが
できる。動作−四辺形描出又はBLITのいずれか一方
一が(座標が既にロードされた後で)実際に要求される
と、4つの頂点の現在状態は、それらがいかにして獲得
されたかに関係なく、直接利用される。これは、CPU
に最大限のフレキシビリティを与える。
The end result is that the CPU is free to choose which method it supports to load the coordinate registers. When either operation - draw quadrilateral or BLIT is actually requested (after the coordinates have already been loaded), the current state of the four vertices, regardless of how they were obtained, is used directly. This is the CPU
give you maximum flexibility.

第1図は、本発明を利用することができる図形サブシス
テムの概観図であ′る。パスイ゛ンタフェース論理11
はアドレスバスと、データバスと、制御バスとを介して
中央処理装置(図示せず)に接続されている。図形サブ
システムの機能構成要素は、データ経路/メモワインタ
フエース13と、座標ステージング部15と、座標順序
付は部17と、機能アドレッシングブロック19と、マ
スク発生ブロック21と、線形アドレス発生器23であ
る。
FIG. 1 is an overview of a graphics subsystem in which the present invention may be utilized. Path interface logic 11
is connected to a central processing unit (not shown) via an address bus, a data bus, and a control bus. The functional components of the graphics subsystem are a data path/memo interface 13, a coordinate staging section 15, a coordinate sequencing section 17, a functional addressing block 19, a mask generation block 21, and a linear address generator 23. It is.

データ経路/メモリインタフェース13ハ、CRTなど
のビデオ表示装置に表示されるべき図形情報を記憶する
メモリであるフレームバッファ(図示せず)を更新する
。すなわち、フレームバッファにロードされたデータは
ビデオ回路によりアクセスされ、ビデオ回路は、そのデ
ータを、ビデオ表示装置の個々の画素をオン/オフする
適切な電気的信号に変換する。バスインタフェース論理
から供給されたデータは、座標ステージング部15と、
座標順序付は部17と、機能アトレッジ/ダブロック1
9とにより実行される処理に基づいて、マスク発生ブロ
ック21及び線形アドレス発生器23により変更される
。機能アドレスシンダブロック19は、特定の図形対象
物をそれらが表示されるべきクリップウィンドウに当て
はめるために必要なりリッピングの一部をさらに実行し
、その後、信号をマスク発生ブロック21へ転送する。
Data path/memory interface 13 updates a frame buffer (not shown), which is a memory that stores graphical information to be displayed on a video display device such as a CRT. That is, data loaded into the frame buffer is accessed by video circuitry, which converts the data into appropriate electrical signals to turn on and off individual pixels of the video display. The data supplied from the bus interface logic is sent to the coordinate staging section 15;
Coordinate ordering is part 17, and function atrage/double block 1
9 is changed by the mask generation block 21 and the linear address generator 23. Functional Address Cinder block 19 further performs some of the ripping necessary to fit particular graphical objects into the clip windows in which they are to be displayed, and then forwards the signal to Mask Generation block 21.

マスク発生ブロック21は、情報を、走査線ごとに可視
対象物の始壕りから終わυまで並べ、データ経路/メモ
リインタフェース13をアドレスするために使用される
16画素部分として配列する。
The mask generation block 21 arranges the information from the beginning of the visible object to the end υ for each scan line and as 16 pixel sections used to address the data path/memory interface 13.

マスク発生信号は線形アドレス発生器23にも供給され
るが、この線形アドレス発生器23は、マスク発生ブロ
ック21により提供されたアドレスを、出力表示装置へ
の転送のために、フレームバッファを線形アドレッシン
グする信号に変換する。データ経路/メモリインタフェ
ース13の一実施例は、1988年 月  日出願の同
時係属出願−出願番号       及び   −に見
られる。座標順序付は部17の一実施例は 月日出願の
同時係属出願−出願番号   −に見られ、また、機能
アドレッシングブロック19の一実施例は 月  日出
願の同時係属出願−出願番号   及び   −に記載
されている。線形アドレス発生器23の一実施例は、 
 月  日出願の同時係属出願−出願番号   −に記
載されている。本発明は、座標ステージング部15にあ
って、以下に第2図から第14図を参照して詳細に説明
するように、図形サブシステムが任意の四辺形のクリッ
ピングを伴なう描出と、クリッピングを伴なうブロック
画像転送(BLIT)  とを実行することを可能にす
る制御信号の性質を有する情報を発生するためのいくつ
かの動作を入力に基づいて実行する回路に関する。従っ
て、本発明は、座標ステージング部15の中の特定の回
路を指向している。
The mask generation signal is also provided to a linear address generator 23 which uses the addresses provided by the mask generation block 21 to linearly address the frame buffer for transfer to the output display device. Convert to a signal. One embodiment of the data path/memory interface 13 is found in co-pending application filed on May 1, 1988, application no. One embodiment of the coordinate ordering block 17 is found in the co-pending application filed on 1999-2007, and one embodiment of the functional addressing block 19 is found in the co-pending application filed on Are listed. One embodiment of the linear address generator 23 is:
It is stated in the co-pending application - application number - filed on the following day. The present invention resides in the coordinate staging unit 15, and as will be described in detail below with reference to FIGS. The present invention relates to a circuit that performs a number of operations on the basis of an input to generate information in the nature of a control signal that enables block image transfer (BLIT) to be performed. Accordingly, the present invention is directed to specific circuitry within the coordinate staging section 15.

ビデオ表示すブシステムを構成する上記の機能ブロック
を適正に動作させるために必要な様々なタイミング信号
及び制御信号をどのようにして実現するかは当業者には
良く知られているので、ここでは、本発明を正しく理解
する上で必要であると思われる箇所を除いて、その説明
を省略する。
It is well known to those skilled in the art how to implement the various timing and control signals necessary for the proper operation of the above-mentioned functional blocks that make up the video display system; , explanation thereof will be omitted except where deemed necessary for a correct understanding of the present invention.

次に、第2図に関して説明する。第2図には、座標ステ
ージング部15の概観ブロック線図が示されている。座
標ステージング部15は加算器31と、ローディング制
御状態機械33と、マルチプレクサ35と、XY座標レ
ジスタ37と、クリップ座標レジスタ39と、ラスター
オフセットレジスタ41と、指標論理43と、試験ウィ
ンドウ制御論理45と、比較論理/結果記憶装置41と
、比較制御状態機械49と、状態発生論理51とを含む
。
Next, FIG. 2 will be explained. FIG. 2 shows an overview block diagram of the coordinate staging section 15. As shown in FIG. The coordinate staging section 15 includes an adder 31, a loading control state machine 33, a multiplexer 35, an XY coordinate register 37, a clip coordinate register 39, a raster offset register 41, an index logic 43, and a test window control logic 45. , a comparison logic/result storage 41 , a comparison control state machine 49 , and state generation logic 51 .

本発明の特性を述べる前に、本発明が実現される態様の
理解を助けるために、対象物がどのようにして表示され
るかを以下に簡単に説明する。
Before describing the characteristics of the invention, a brief description of how objects are displayed is provided below to aid in understanding the manner in which the invention is implemented.

XとYの複数対の頂点はビデオ表示用座標を表わす。通
常の表示装置の場合、Xf′i、O〜1151の範囲に
あシ、YはO〜899の範囲にある。各X座標と、各Y
座標は別個の32ビツトレジスタに記憶されるか、又は
1対の16ビツトレジスタに記憶される。最大スクリー
ン座標(すなわち、65535まで、言いかえれば、−
32768から+32767まで)を記憶するには16
ビツトのほうが適しているが、図形用ソフトウェアに最
も広く利用されているデータの型は32ビツトであり、
ビデオ表示装置の範囲をはるかに越える実生活上の対象
物の大半を処理するのに十分大きい範囲がこの32ビツ
トにより得られるので、32ビツトの情報が記憶される
。
The X and Y pairs of vertices represent video display coordinates. In the case of a normal display device, Xf'i is in the range of 0 to 1151, and Y is in the range of 0 to 899. Each X coordinate and each Y
Coordinates are stored in separate 32-bit registers or in a pair of 16-bit registers. Maximum screen coordinates (i.e. up to 65535, in other words -
32768 to +32767) 16
Although bits are more suitable, the most widely used data type for graphical software is 32-bits.
Thirty-two bits of information are stored because these 32 bits provide a range large enough to handle most real-life objects far beyond the range of video display devices.

四辺形の対象物は4対の頂点(Xo 、 To) 、 
(x、 。
A quadrilateral object has four pairs of vertices (Xo, To),
(x, .

Y+ ) 、 (X2 、 Y2 )及び(x3+ Y
3)の組合せとして表わされる。対象物が点であれば、
4対の頂点は全て同じであり、従って、3点が先の1点
の繰返しとなる。対象物が線である場合は、4対の頂点
のうち2対(又は4対の頂点のうち3対)は繰返される
。対象物が三角形である場合には、4対のつちl対の頂
点が繰返される。対象物が四辺形であれば、4対は全て
異なる。対象物(すなわち、点、線、三角形又は四角形
)は、その対象物を完全に規定するために必要な最小の
数の反復しない頂点、すなわち、点の場合は1対、線の
場合は2対、三角形の場合は3対、四辺形の場合は4対
、そして矩形の場合は2対(対向する角)の頂点を使用
して規定されるのが最も効率的である。
Y+ ), (X2, Y2) and (x3+ Y
3) is expressed as a combination. If the object is a point,
All four pairs of vertices are the same, so three points are repeats of the previous one. If the object is a line, two of the four pairs of vertices (or three of the four pairs of vertices) are repeated. If the object is a triangle, four pairs of vertices are repeated. If the object is a quadrilateral, all four pairs are different. An object (i.e., a point, line, triangle, or rectangle) is defined by the minimum number of non-repeating vertices necessary to completely define the object, i.e., one pair for points and two pairs for lines. , is most efficiently defined using three pairs of vertices for a triangle, four pairs for a quadrilateral, and two pairs (opposing corners) for a rectangle.

ブロック画像転送(BLIT)動作を実行すべきとき、
4つのX/Yレジスタは次のような翻訳内容を有し、そ
れに従ってロードされる。
When a block image transfer (BLIT) operation should be performed,
The four X/Y registers have the following translations and are loaded accordingly.

XO−ソースブロックの左上角、のX座標YO−ソース
ブロックの左上角のY座標X1−ソースブロックの右下
角のX座標Y1−ソースブロックの右下角のY座標X2
−宛先ブロックの左上角のX座標 Y2−宛先ブロックの左上角のY座標 X3−宛先ブロックの右下角のX座標 Y3−宛先ブロックの右下角のY座標 CRTなどの表示装置に表示されるべき画像は、フレー
ムバッファとして知られているランダムアクセスメモI
J(RAM)の1つ又は2つ以上のプレーンに記憶され
た個々の画素として形成されている。尚、カラーシステ
ムの場合、プレーンの数は、通常、8つである。フレー
ムバッファに記憶されたデータは、1対の座標X及びY
によりアドレスされる。1対のXとYは全てのプレーン
において特定の1つの画素を識別し、その場合、Xは行
。
XO - the X coordinate of the upper left corner of the source block YO - the Y coordinate of the upper left corner of the source block X1 - the X coordinate of the lower right corner of the source block Y1 - the Y coordinate of the lower right corner of the source block X2
- X coordinate Y2 of the upper left corner of the destination block - Y coordinate X3 of the upper left corner of the destination block - X coordinate Y3 of the lower right corner of the destination block - Y coordinate of the lower right corner of the destination block Image to be displayed on a display device such as a CRT is a random access memory I known as a frame buffer
The pixels are formed as individual pixels stored in one or more planes of J (RAM). Note that in the case of a color system, the number of planes is usually eight. The data stored in the frame buffer consists of a pair of coordinates X and Y
addressed by. A pair of X and Y identifies one particular pixel in every plane, where X is a row.

Yは列である。1つの画素は各プレーンから取出された
単一のビットによって規定される。このように、8つの
プレーンを利用する場合、表示されるそれぞれの画素は
フレームバッファの8つのビットにより規定される。こ
のように、1つの画素の1つのビットを使用して、その
画素がオンであるか、オフであるかを指定すると共に、
残る7つのビットで画素の色を指定するか、あるいは、
8つのビット全てを使用して色を指定し、色の1つが表
示装置の背景色と同じであって、それにより、画素をオ
フすることが可能である。
Y is a column. One pixel is defined by a single bit taken from each plane. Thus, if eight planes are utilized, each displayed pixel is defined by eight bits of the frame buffer. In this way, one bit of one pixel is used to specify whether that pixel is on or off, and
The remaining 7 bits specify the pixel color, or
All eight bits are used to specify colors, one of which is the same as the background color of the display, thereby allowing the pixel to be turned off.

本発明は、主に、指標論理43に含まれる指標レジスタ
の動作を制御するローディング制御状態機械33を実現
することにある。この点に関して、第2図に示すその他
の機能ブロックと関連し、それらのブロックの動作と構
成を、本発明を正しく理解する上で必要な程度に限って
詳細に説明する。
The invention primarily consists in implementing a loading control state machine 33 that controls the operation of index registers included in index logic 43. In this regard, the operation and construction of the other functional blocks shown in FIG. 2 will be described in only as much detail as is necessary for a proper understanding of the invention.

加算器31は16ピツト又は32ビツトの2の補数2進
加算器であって、2つの入力、すなわち、バスインタフ
ェース論理11から得られ、cptrからの入力データ
を表わすDataInと、ラスターオフセットレジスタ
4 ’r 、 X/Y座標レジスタ37及びクリップ座
標レジスタ39からそれぞれ得られる1組の入力の中の
1つを選択するマルチプレクサであるMUX35からの
入力とを有する。MUX35からの入力は、後述するよ
うに、ローディング制御状態機械33により発生される
信号にょって選択される。
Adder 31 is a 16-pit or 32-bit two's complement binary adder with two inputs, DataIn derived from bus interface logic 11 and representing the input data from cptr, and raster offset register 4'. r, and an input from MUX 35, which is a multiplexer that selects one of a set of inputs obtained from X/Y coordinate register 37 and clip coordinate register 39, respectively. The inputs from MUX 35 are selected by signals generated by loading control state machine 33, as described below.

次に、第3図を参照して、加算器31及びマルチプレク
サ35を詳細に説明する。第3図では、加算器31は1
6ビツト加算器として示されている。この点に関しては
、好ましい実施例では、本発明が実現される集積回路上
のスペースを節約するために、DataInが32ビツ
トであることと、本発明で利用するパイプラインのタイ
ミング要件が2ステツプ加算により°満たされることを
理由として、32ピツト加算器を使用することも可能で
あろうが、以下の説明の中では、16ビツト加算器を使
用するものとする。32ビツト加算器を利用する場合の
相違点は当業者には明白であるので、ここでは説明しな
い。
Next, the adder 31 and the multiplexer 35 will be explained in detail with reference to FIG. In FIG. 3, the adder 31 is 1
Shown as a 6-bit adder. In this regard, in the preferred embodiment, DataIn is 32 bits and the timing requirements of the pipeline utilized by the present invention are reduced by two steps to save space on the integrated circuit on which the present invention is implemented. Although it would be possible to use a 32-bit adder because . The differences when using a 32-bit adder will be obvious to those skilled in the art and will not be discussed here.

マルチプレクサ35は、実際には、1対のマルチプレク
サ35B及び35bと、DataInの上位と下位の1
6ピツトを入力するために使用される第3のマルチプレ
クサ36である。マルチプレクサ35&及び35bは、
7つの32ビツト入力端子から、上位と下位の16ピツ
トをそれぞれ受信する。入力の内訳は、ラスターオフセ
ットレジスタ41からの16ビツト入力(符号で32ビ
ツトに拡張)1つと、X/Y座標レジスタ37からの3
2ビツト入力4つと、クリップ座標レジスタ39からの
16ビツト入力(符号で32ビツトに拡張)2つとであ
る。マルチプレクサ35a及び35bの出力は組合され
て、信号Da taou t(これらのレジスタ値のC
PUに対する読取りアクセスを実行させる信号)を形成
すると共に、X、、−X、又はyo−Y3からの上位ピ
ットがアクセスされているときは、必ず、マルチプレク
サ35&の出力を通過させる第4のマルチプレクサ40
にも入力される。マルチレクサ40は、その他の場合に
は、マルチプレクサ35bの出力を選択する。°マルチ
プレクサ40の出力は論理ゲート42の一方の入力端子
に入力され、論理ゲート42はマルチプレクサ40の1
6ビツト出力か、又は16ビツト分のゼロを通過させる
。
The multiplexer 35 actually consists of a pair of multiplexers 35B and 35b, and one upper and lower one of DataIn.
A third multiplexer 36 is used to input 6 pits. The multiplexers 35 & and 35b are
The upper and lower 16 pits are each received from seven 32-bit input terminals. The input details are one 16-bit input (extended to 32 bits with a sign) from the raster offset register 41 and three inputs from the X/Y coordinate register 37.
There are four 2-bit inputs and two 16-bit inputs (extended to 32 bits with sign) from clip coordinate register 39. The outputs of multiplexers 35a and 35b are combined to output the signal Da taout (C of these register values).
a fourth multiplexer 40 which passes the output of multiplexer 35& whenever the upper pit from X, , -X, or yo-Y3 is being accessed;
is also entered. Multiplexer 40 otherwise selects the output of multiplexer 35b. °The output of the multiplexer 40 is input to one input terminal of the logic gate 42, and the logic gate 42 is connected to one input terminal of the multiplexer 40.
Passes 6 bits of output or 16 bits of zero.

詳細にいえば、DataInのビットがラスターオフセ
ットレジスタ47 、 X/Y座標レジスタ37又はク
リップ座標レジスタ39の中のレジスタを直接ロードす
る(絶対ロード)ためにマルチプレクサ36により供給
されるたびに、論理ゲート42はゼロを送り出す。第3
図にさらに示されている論理回路44及び46は、次の
ような機能を実行する。下位16ビツトの加算が進行中
であるとき、ANDゲ!ト44はその出力をローにさせ
て、加算器31に対して「0」のキャリインを実行させ
る。
In particular, each time a bit of DataIn is provided by the multiplexer 36 to directly load (absolute load) a register in the raster offset register 47, the X/Y coordinate register 37, or the clip coordinate register 39, the logic gate 42 sends out a zero. Third
Logic circuits 44 and 46, further illustrated in the figure, perform the following functions. When the addition of the lower 16 bits is in progress, the AND game! Gate 44 causes its output to go low, causing adder 31 to perform a "0" carry-in.

この加算のキャリアウドはフリップフロップ46にセー
ブされる。上位16ビツトの加算中、フリップフロップ
46の出力はANDゲート44を介して加算器31のキ
ャリインに供給される。この組合せにより、単一サイク
ルの32ビツト加算と同等の2サイクル32ビツト加算
が実行されることになる。
The carrier of this addition is saved in flip-flop 46. During addition of the upper 16 bits, the output of flip-flop 46 is applied to the carry-in of adder 31 via AND gate 44. This combination results in a two-cycle 32-bit addition that is equivalent to a single-cycle 32-bit addition.

加算器31.ラスターオフセットレジスタ41゜X/Y
座標レジスタ37.クリップ座標レジスタ39、試験ウ
ィンドウ制御論理45及び比較論理/結果記憶装置49
の動作は、ローディング制御状態機械33と、比較論理
状態機械49とにより協調されて、上記の機能ブロック
は、データがパイプラインに沿って流れるように動作す
る。従って、ローディング制御状態機械33及び比較論
理状態機械49から出ている制御線の全てが示されてい
るわけではないが、その詳細は、以下のローディング制
御状態機械33及び比較論理状態機械49の説明から、
当業者には容易に明らかになるであろう。
Adder 31. Raster offset register 41°X/Y
Coordinate register 37. Clip coordinate register 39, test window control logic 45 and comparison logic/result storage 49
The operation of is coordinated by the loading control state machine 33 and the compare logic state machine 49, and the functional blocks described above operate to cause data to flow along the pipeline. Accordingly, not all of the control lines emanating from the loading control state machine 33 and the compare logic state machine 49 are shown, but details thereof are provided below in the description of the loading control state machine 33 and the compare logic state machine 49. from,
It will be readily apparent to those skilled in the art.

第4図に関して説明すると、X/X座標レジスタ37は
、描出すべき対象物の(Xo 、 Y、 )〜(x、。
Referring to FIG. 4, the X/X coordinate register 37 stores (Xo, Y, ) to (x,) of the object to be depicted.

Ys )頂点を記憶する一連の16ビツトレジスタであ
る。1つの16ビツトレジスタは各X座標の上位16ビ
ツトを記憶するために使用され、別の16ビツトレジス
タは各X座標の下位16ビツトを記憶するために使用さ
れる。同様に、別の16ビツトレジスタは各X座標の上
位16ビツトを保持し、別の16ビツトレジスタは各X
座標の下位16ビツトを保持する。これらのレジスタは
、第4図には、Xo座標の下位16ビツトを表わすXO
L及びXo座標の上位16ビツトを表わすXOUとして
示されている。また、レジスタXIL〜X3L及びXI
U−X3UはX、〜X3座標の下位16ビツトと、上位
16ビツトとをそれぞれ表わす。
Ys) A series of 16-bit registers that store vertices. One 16-bit register is used to store the upper 16 bits of each X coordinate and another 16 bit register is used to store the lower 16 bits of each X coordinate. Similarly, another 16-bit register holds the upper 16 bits of each X coordinate, and another 16-bit register holds the upper 16 bits of each
Holds the lower 16 bits of the coordinates. These registers are shown in FIG.
It is shown as an XOU representing the upper 16 bits of the L and Xo coordinates. In addition, registers XIL to X3L and XI
U-X3U represents the lower 16 bits and upper 16 bits of the X, -X3 coordinates, respectively.

同様に、レジスタYOL 5−Y3L及びYOU〜Y3
Uは対象物のYo〜Y3座標の下位16ビツトと、上位
16ビツトとをそれぞれ記憶する。xo、yoというと
きは、対応する対のレジスタ、すなわち、XOU、XO
L及びYOU、YOLに記憶されている32ビツト値を
指す。
Similarly, registers YOL 5-Y3L and YOU~Y3
U stores the lower 16 bits and upper 16 bits of the Yo to Y3 coordinates of the object. xo, yo refers to the corresponding pair of registers, i.e., XOU, XO
Refers to the 32-bit value stored in L, YOU, and YOL.

6対のレジスタ(XOL、YOL )〜(X3L、Y3
L)は、対応するXレジスタ又はYレジスタのいずれか
を選択するために使用される1対のマルチプレクサに結
合される。たとえば、レジスタXOL 及びYOLはマ
ルチプレクサ61M及び61bに結合されている。ロー
ディング制御状態機械33は、X座標が作用を受けるべ
きか又はX座標が作用を受けるべきかに応じてレジスタ
XOLからの入力又はレジスタYOLからの入力をマル
チプレクサ51aに選択させる信号を発生する。マルチ
プレクサ621L及び62b 〜64&及び64bは、
6対のレジスタ(XIL。
6 pairs of registers (XOL, YOL) ~ (X3L, Y3
L) is coupled to a pair of multiplexers that are used to select either the corresponding X or Y register. For example, registers XOL and YOL are coupled to multiplexers 61M and 61b. Loading control state machine 33 generates a signal that causes multiplexer 51a to select an input from register XOL or an input from register YOL depending on whether the X or X coordinate is to be acted upon. The multiplexers 621L and 62b to 64& and 64b are
6 pairs of registers (XIL.

YIL)〜(X3L 、Y3L )からのデータに対し
て、それぞれ同じように動作する。マルチプレクサ61
a〜54aの出力はマルチプレクサ35bに送られ、マ
ルチプレクサ61b〜64bの出力は比較論理/結果記
憶装置4Tに送られる。
YIL) to (X3L, Y3L) operate in the same way. multiplexer 61
The outputs of a-54a are sent to multiplexer 35b, and the outputs of multiplexers 61b-64b are sent to comparison logic/result storage 4T.

全て0全て1とラベル付けされているブロック67.6
9.71及び73は、それぞれ、対応する対のX、X座
標の上位18ピツトを全てゼロ状態又は全て1状態に関
して検査する論理回路である。
Block 67.6 labeled all 0s all 1s
9.71 and 73 are logic circuits that respectively test the upper 18 pits of the corresponding pair of X, X coordinates for an all-zero state or an all-one state.

それらのビットのうち16ビツトはレジスタ(XOU。16 of those bits are in a register (XOU.

YOU)〜(X3U 、Y3U )から得られ、17番
目と18番目のビットは、グル−プ(XOL、YOL〜
X3L、Y3L)の中の対応するレジスタから得た上位
2ピツトである。第4図では、図を不必要に複雑にしな
いために、17番目と18番目のビット入力を図示して
いない。複数対のレジスタ(XOU。
The 17th and 18th bits are obtained from the group (XOL, YOL~
These are the top two pits obtained from the corresponding registers in (X3L, Y3L). In FIG. 4, the 17th and 18th bit inputs are not shown in order not to unnecessarily complicate the diagram. Multiple pairs of registers (XOU.

YOU)〜(X3U 、 Y3U )の出力は、対をな
すマルチプレクサs1a 、 61b 〜sta 、 
64bと同様にしてX座標又はX座標のいずれかを選択
するマルチプレクサ75〜T8にそれぞれ入力される。
The outputs of YOU) to (X3U, Y3U) are sent to the paired multiplexers s1a, 61b to sta,
Similarly to 64b, the signals are respectively input to multiplexers 75 to T8 which select either the X coordinate or the X coordinate.

マルチプレクサ75〜78の出力はマルチプレクサ35
aへ送られる。論理ブロック67〜73からそれぞれ出
力される4つのビットのうち1つは、それに対応するレ
ジスタの上位18ビツトが全てゼロ又は全てlであれば
、それぞれ、「l」であるが、その他の場合には、4つ
のビットは皆ゼロである。
The outputs of multiplexers 75 to 78 are sent to multiplexer 35.
Sent to a. One of the four bits output from each of the logic blocks 67 to 73 is "l" if the upper 18 bits of the corresponding register are all zero or all l, but in other cases has all four bits zero.

ブロック67〜73からの4つの4ビツト出力は状態発
生論理51に入力される。
The four 4-bit outputs from blocks 67-73 are input to state generation logic 51.

第5図に示すように、クリップ座標レジスタは4つのレ
ジスタXC1XC11p 、 XC1XC11p 、 
YClipMin 、 YClipMaxと、マルチプ
レクサ81a 、 81b。
As shown in FIG. 5, the clip coordinate register consists of four registers: XC1XC11p, XC1XC11p,
YClipMin, YClipMax, and multiplexers 81a and 81b.

83a及び83bとから構成される。同じ名前をもつ上
記のレジスタに記憶される値XC1XC11p 、XC
IXCllp 、 YClipMin 、 YCI l
pMaxは、現在活動中のウィンドウの左右上下をそれ
ぞれ規定する。これらの値はCPUにより発生されて、
加算器31に入力される。加算器31はこれらの値にO
を加算し、前述のように、レジスタXC1XC11p、
XC1XC11p 、 YClipMin及びYCli
pMaxにロードする。
83a and 83b. The values stored in the above registers with the same name XC1XC11p, XC
IXCllp, YClipMin, YCIl
pMax defines the left, right, top, and bottom of the currently active window, respectively. These values are generated by the CPU and
It is input to the adder 31. Adder 31 adds O to these values.
As mentioned above, registers XC1XC11p,
XC1XC11p, YClipMin and YCli
Load into pMax.

マルチプレクサeta及び83&と、マルチプレクサ8
1b及び83bとは、組になって、ローディング制御状
態機械33及び比較制御状態機械49によりそれぞれ発
生される制御信号に従って、XC1XC11pとX C
1l pMax又はYCllpMinとYClipMa
xを選択する。マルチプレクサ81a及び93aからの
値はマルチプレクサ35へ送られ、マルチプレクサ81
b及び83bからの値は比較論理/結果記憶装置47及
び試験ウィンドウ制御論理45へ送られる。
multiplexer eta and 83 &, multiplexer 8
1b and 83b are in pairs XC1XC11p and XC according to control signals generated by loading control state machine 33 and comparison control state machine 49, respectively.
1l pMax or YCllpMin and YClipMa
Select x. The values from multiplexers 81a and 93a are sent to multiplexer 35 and multiplexer 81
The values from b and 83b are sent to comparison logic/result storage 47 and test window control logic 45.

第6図に示すように、ラスターオフセットレジスタ41
は2つのレジスタXRaaOff 、 YRasOff
と、マルチプレクサ53とから構成される。同じ名前を
もつ上記のレジスタに記憶される値XRa5Off及び
YRaaOffは、X/Y座標レジスタ37において4
組のX、Y座標のそれぞれに記憶される前にDataI
nに(必要に応じて)加えられるべきXオフセット及び
Yオフセットをそれぞれ規定する。これらの値はCPU
により発生されて、XRa5Off及びYRaaOff
に記憶される。マルチプレクサ53は、ローディング制
御状態機械33により発生される制御信号に従って、X
Ra5Off又はYRasOffを選択する。マルチプ
レクサ53により選択された値はマルチプレクサ35へ
送られる。
As shown in FIG.
is two registers XRaaOff, YRasOff
and a multiplexer 53. The values XRa5Off and YRaaOff stored in the above registers with the same name are 4 in the X/Y coordinate register 37.
DataI before being stored in each of the X and Y coordinates of the set
Define the X and Y offsets to be added to n (if necessary), respectively. These values are CPU
generated by XRa5Off and YRaaOff
is memorized. Multiplexer 53 outputs X in accordance with a control signal generated by loading control state machine 33.
Select Ra5Off or YRasOff. The value selected by multiplexer 53 is sent to multiplexer 35.

試験ウィンドウ制御論理45 次に、第7図を参照して、試験ライ/ドウ制御論理45
を説明する。CPUは、現在活動中のクリッピングウィ
ンドウから所定の距離だけ、すなわち、所定の画素数だ
け上下(testYV&lの場合)、左右(t e s
 t XVa lの場合)にオフセットした値tost
XVil及びtestYValを発生する。すなわち、
表示装置の所定の1つのウィンドウに対して、実際のク
リップウィンドウを包囲する試験ウィンドウを規定する
ΔXと、ΔYとが存在する。この試験ウィンドウは、ク
リッピングウィンドウの外側にある対象物又は対象物の
一部の場所を計算するためにハードウェアを使用する必
要を、それを不要にすることが有利である場合ごとに、
なくすことを目的としている。試験ウィンドウの利用に
関する詳細は、同時係属出願−出願番号   に記載さ
れている。
Test Window Control Logic 45 Next, referring to FIG.
Explain. The CPU moves a predetermined distance from the currently active clipping window, that is, a predetermined number of pixels up and down (in the case of testYV&l), left and right (t e s
t XVa l) offset value tost
Generates XVil and testYVal. That is,
For a given window of the display, there is a ΔX and a ΔY that define a test window that surrounds the actual clip window. This test window eliminates the need to use hardware to calculate the location of objects or parts of objects that are outside the clipping window, in each case where it is advantageous to do so.
The aim is to eliminate it. Details regarding the use of test windows are provided in Co-pending Application - Application No.

4ビツトの値testXVal及びtestYVal 
 は4ビツトレジスタteatX及びtestYにそれ
ぞれ記憶される。マルチプレクサg1は、ローディング
制御状態機械33により発生される信号MUXEnab
laによる決定に従ってX座標が作用を受けているか又
はY座標が作用を受けているかに応じて、レジスタta
stXO値又はレジスタtestY。
4-bit values testXVal and testYVal
are stored in 4-bit registers treatX and testY, respectively. Multiplexer g1 receives the signal MUXEnab generated by loading control state machine 33.
The register ta depends on whether the X or Y coordinate is being affected as determined by la.
stXO value or register testY.

値のいずれか一方を選択する。マルチプレクサ91の出
力は減分器93と、増分器95とに入力される。減分器
93は、この場合も、同様に、ローディング制御状態機
械33により発生される信号MUX Enable に
よる決定に従ってX座標が作用を受けているか又はY座
標が作用されているか。
Select one of the values. The output of multiplexer 91 is input to a decrementer 93 and an incrementer 95. The decrementer 93 again determines whether the X or Y coordinate is being acted upon as determined by the signal MUX Enable generated by the loading control state machine 33.

に応じて、値XC1XC11p又&tYC1ipMLn
を第2の入力として受取り、増分器95は値XC1XC
11p又はYClipMaxを第2の入力として受取る
。減分器93及び増分器95により発生された出力は、
それぞれ、XTestMln 、 YTestMin及
び)(’l’estMix 、 Y To s tMa
xと呼ばれる。減分器91は、XC1XC11pと、Y
ClipMinから、2の(testX−1)乗と、2
の(testY−1)乗に等しい値をそれぞれ減じるこ
とにより、値X Te s tMi n及びY To 
s tMi nを生成する。同様に、増分器93は、X
C1XC11pと、YClipMaxに、2の(tes
tX−1)乗と、2の(testY−1)乗(すなわち
、2(t・・tX−’1 )     (t・・tYt
))に等しいイ直と、2 をそれぞれ加えることにより、値XTestMax及び
Y To s tMa xを生成する。
Depending on the value XC1XC11p or &tYC1ipMLn
as a second input, incrementer 95 receives the value XC1XC
11p or YClipMax as the second input. The outputs generated by decrementer 93 and incrementer 95 are:
XTestMln, YTestMin and )('l'estMix, YTostMa
It is called x. The decrementer 91 has XC1XC11p and Y
From ClipMin, 2 to the power of (testX-1) and 2
By respectively subtracting values equal to the (testY-1) power of
Generate s tMin. Similarly, the incrementer 93
C1XC11p and YClipMax, 2 (tes
tX-1) power and 2 to the (testY-1) power (i.e. 2(t...tX-'1) (t...tYt
)) and 2 respectively to generate the values XTestMax and Y To s tMax x.

ローディング制御状態機械33と指標論理430一デイ
ング制御状態機械33は制御信号MUXEnable 
、 Index及びRegister Enableを
発生するMUX Enableは一連の制御信号であり
、その1つは、ラスターオフセットレジスタ41゜X/
Y座標レジスタ37及びクリップ座標レジスタ39に含
まれる様々なマルチプレクサにそれぞれ対応するX入力
又はY入力を選択させ、また、第2の制御信号は、マル
チプレクサ35に、ラスターオフセットレジスタ41か
らの入力、X/Y座標レジスタ37からの入力又はクリ
ップ座標しジスタ39からの入力のいずれかを選択させ
る。
Loading control state machine 33 and indicator logic 430 - Loading control state machine 33 connects control signal MUXEnable
, Index and Register Enable are a series of control signals, one of which is the raster offset register 41°
A second control signal causes the various multiplexers included in the Y coordinate register 37 and the clip coordinate register 39 to select their respective X or Y inputs, and the second control signal causes the multiplexer 35 to select the input from the raster offset register 41, the /The input from the Y coordinate register 37 or the input from the clip coordinate register 39 is selected.

Indexは、指標論理43に含まれる指標レジスタを
、0.l及び2の値に対してはそれぞれlだけ増分させ
、値が3である場合にはゼロにリセットさせる(モジュ
ーロ4)単一の制御信号である。
Index sets the index register included in index logic 43 to 0. A single control signal that increments by l for values of l and 2, respectively, and resets to zero (modulo 4) if the value is 3.

Reglster Enableは、ラスターオフセッ
トレジスタ41、X/Y座標レジスタ37及びクリップ
座標レジスタ39に含まれるレジスタのそれぞれについ
て1つずつの一連の制御信号であって、各レジスタに、
加算器31からの出力線にある16ビツト値をロードさ
せることができる。
Reglster Enable is a series of control signals, one for each of the registers included in the raster offset register 41, the X/Y coordinate register 37, and the clip coordinate register 39;
The output line from adder 31 can be loaded with a 16-bit value.

次に、本発明の構成の詳細を明白に示しているものと思
われる1例を挙げて、ローディング制御状態機械33及
び指標論理43の動作を説明する。
The operation of loading control state machine 33 and indicator logic 43 will now be described in an example that is believed to clearly illustrate the details of the construction of the present invention.

前述のように、描出すべき画像は、4対の頂点(XO+
 YO) 〜(x、 l y3)を有する1つ又は複数
の対象物から構成されているものとして規定される。対
象物は点、線、三角形、矩形又は四辺形である。点の場
合、4対の頂点は皆同じであり、線の場合には、他と異
なる頂点は2対しかない。四辺形は4つの異なる頂点を
有する。矩形は四辺形の特殊なケースであって、2つの
他と異なるX座標と、2つの他と異なるY座゛標のみが
存在する(対角線上で互いに対向する角を規定する1対
の頂点により矩形を規定することができる)。三角形の
場合には、他と異なる頂点は3対のみである。
As mentioned above, the image to be drawn consists of four pairs of vertices (XO+
YO) ~(x, ly3). The object is a point, line, triangle, rectangle, or quadrilateral. In the case of a point, all four pairs of vertices are the same, and in the case of a line, there are only two pairs of vertices that are different from the others. A quadrilateral has four different vertices. A rectangle is a special case of a quadrilateral, having only two distinct X coordinates and two distinct Y coordinates (by a pair of vertices defining diagonally opposite corners). rectangle). In the case of a triangle, there are only three pairs of vertices that are unique.

指標値は、規定すべき対象物の種類に基づいてどのレジ
スタをイネーブルすべきかを指定する。
The index value specifies which registers should be enabled based on the type of object to be defined.

適正な動作を得るために、Y値はX値に先行する。For proper operation, the Y value precedes the X value.

矩形の場合を除いて、X値が適切なレジスタにロードさ
れた後、指標レジスタは増分される。矩形の場合には、
指標レジスタはX値とY値の双方の後に増分される。こ
の点に関連して、以下の表は、対象物の種類ごとに、指
標レジスタのそれぞれの値に対してイネーブルされるX
レジスタを挙げている。表には示されていないが、イネ
ーブルされるYレジスタはイネーブルされるXレジスタ
に対応するものと考えられる。
Except for the rectangular case, the index register is incremented after the X value is loaded into the appropriate register. In the case of a rectangle,
The index register is incremented after both the X and Y values. In this regard, the table below shows the enabled X
Listing the register. Although not shown in the table, it is believed that the enabled Y register corresponds to the enabled X register.

点 線 四辺形 三角形 第1表 ロード時の指標値 XO,XI、X2.X3 −d、X2.X3.XD  
X2.X3.XD、XlX0.Xi、X2   XI、
X2.X3   X2.X3.XO0x1x2 XO,Xi     Xi、X2     X2.X3
X3 、XO、Xi 、X2 刈、XO,XI 刈、xO 第1表に見られる重要な点は、指標レジスタにより指示
された座標が常に書込まれることである。
Dotted quadrilateral triangle Table 1 Index values when loading XO, XI, X2. X3-d, X2. X3. XD
X2. X3. XD, XlX0. Xi, X2 XI,
X2. X3 X2. X3. XO0x1x2 XO, Xi Xi, X2 X2. X3
X3, XO, Xi, X2 Kari, XO, XI Kari, xO An important point to note in Table 1 is that the coordinates pointed to by the index register are always written.

書込みの種類(点、線、三角形など)は、同様に書込ま
れる後続レジスタの数(モジューロ4)を示す。たとえ
ば、#i1X書込みを受信したときの指標が2である場
合、3つのレジスタ、すなわち、X2と、(X2+1)
モジューロ4及び(X2+2)モジューロ4、つまシX
2.X3及びXOが寵込まれる。Yへの四辺形書込みは
Y2にのみ影響すると考えられる。
The type of write (point, line, triangle, etc.) indicates the number of subsequent registers (modulo 4) that are also written. For example, if the index is 2 when #i1X write is received, then the three registers are X2 and (X2+1)
Modulo 4 and (X2+2) Modulo 4, Tsumushi
2. X3 and XO are favored. A quadrilateral write to Y is considered to affect only Y2.

下記の例1〜3は、1つの対象物を規定する際の指標レ
ジスタの役割を説明するものである。例の各行は所期の
書込み動作と、座標レジスタのローディングを管理する
ためにローディング制御状態機械により利用される指標
レジスタ値と、書込み後に座標レジスタに記憶される値
と、書込みサイクル終了後の指標値とを示す。書込み指
令の簡略呼び名は、黒書込みを示すPnt X又はPn
tY。
Examples 1-3 below illustrate the role of index registers in defining an object. Each line of the example describes the intended write operation, the index register value used by the loading control state machine to manage the loading of the coordinate register, the value stored in the coordinate register after the write, and the index after the write cycle is complete. value. The short name for the write command is Pnt X or Pn, which indicates black writing.
tY.

線書込みを示すLineX又はLineY、三角形書込
みを示すTriX及びTriY、四辺形書込みを示すQ
uadX及びQuadY、並びに矩形書込み動作の場合
のReetX及びRectYである。それぞれの1込み
指令により指定される実際の書込み動作は、後述するよ
うに、現実には、マルチクロックサイクル動作である。
LineX or LineY indicating line writing, TriX and TriY indicating triangular writing, Q indicating quadrilateral writing
uadX and QuadY, and ReetX and RectY for rectangular write operations. The actual write operation specified by each write one command is actually a multi-clock cycle operation, as described below.

下記の例を通して、指令の実行時間は無関係である。Throughout the examples below, the execution time of the commands is irrelevant.

下記の例をどのように解釈すべきかを明確にする手段と
して、第1の例を説明する。その説明から、第2及び第
3の例の意味も容易に明らかになるはずである。
As a means of clarifying how the following examples are to be interpreted, a first example will be explained. From that explanation, the meaning of the second and third examples should also become readily apparent.

P n t Y (5)指令が受信された時点で、全て
の座標レジスタは値「0」を記憶しており、指標はrl
Jに等しい。PntY(6)指令は値6の点をY座標レ
ジスタにロードすべきであることを指示する。指標はl
であるので、第1表によれば、入力値(6)はYl、Y
2.Y3及びYOに記憶されるべきである。次の指令P
nt X (3)が受信されると、点3をXi 、X2
.X3及びXOにロードすることが指示される。全ての
指標指示X座標書込みの終了後の場合と同様に、書込み
サイクルの終了時に指標は増分される(モジューロ4)
。次の書込み指令はLineY(9)である。このロー
ドに対する指標は2であり、第1表に従って、Y2.Y
3 及びYOに9がロードされる。この例の最後の書込
み指令はLin@X(7)である。第1表に従って、X
2゜X3及びXOに7がロードされ、その後、指標レジ
スタは再度増分される。座標レジスタの最終状態は2つ
の他とは異なる頂点((7,9)にある頂点3つと、(
3,6)にある頂点1つ)を識別する。
P n t Y (5) At the time the command is received, all coordinate registers store the value "0" and the index is rl
Equal to J. The PntY(6) command indicates that a point with value 6 should be loaded into the Y coordinate register. The index is l
Therefore, according to Table 1, the input values (6) are Yl, Y
2. Should be stored in Y3 and YO. Next command P
When nt X (3) is received, convert point 3 to Xi,
.. It is instructed to load into X3 and XO. The index is incremented (modulo 4) at the end of the write cycle, as is the case after the end of all index indication X coordinate writes.
. The next write command is LineY (9). The index for this load is 2, and according to Table 1, Y2. Y
9 is loaded into 3 and YO. The last write command in this example is Lin@X(7). According to Table 1, X
2°X3 and XO are loaded with 7, after which the index register is incremented again. The final state of the coordinate register is two distinct vertices (three vertices at (7,9), and (
3, 6).

幾何学的にいえば、これは、所期の通り、(7,9)及
び(3,6)を終端点とする1本の線である。
Geometrically speaking, this is, as expected, a single line with endpoints at (7,9) and (3,6).

第1の例 線(3,6)(7,9)の指定包 蓄め LineY(9) 書込み LineX(7) 書込み 第2の例 三角形(1,5)(9,3)(4,6)の指定1繋 0′硅♀ 1′紐馨 Tri\馨 書 TriY(6) 書込み TrlX(4) 書込み O303 第3の例 矩形(0,7)(8,7)(8,1)(0,
1)の指定 R””4(j) 94413611 02 03書 R@ツ♀)04403611 03 00書 RectQg)o、i、io ?711 00 01書 第1の例においては、第1の座標が受取られるときの指
標レジスタは任意に1となっているが、指標論理43に
ある指標レジスタは、CPUからの命令があった場合に
DataInに現われている値に基づいて初期設定され
れば良い。(ただし、本発明は、ローディングシーケン
スが開始されるときの指標レジスタの初期値とは全く無
関係に、適正に動作する。)また、この例では、XRa
5Off とYRasOffは、この回路の動作をあい
まいにしないように、値0を記憶するものと仮定してい
る。
First example Specified inclusion of line (3,6) (7,9) LineY (9) Writing LineX (7) Writing second example Triangle (1,5) (9,3) (4,6) Specification of 1 connection 0′ 硅♀ 1′ 禨Tri\馨書TriY(6) Write TrlX(4) Write O303 3rd example Rectangle (0,7)(8,7)(8,1)(0,
1) Specification R””4(j) 94413611 02 03 book R@tsu♀) 04403611 03 00 book RectQg) o, i, io? In the first example of Book 711 00 01, the index register is arbitrarily set to 1 when the first coordinate is received, but the index register in the index logic 43 is set to 1 when there is an instruction from the CPU. Initial settings may be made based on the value appearing in DataIn. (However, the present invention operates properly regardless of the initial value of the index register when the loading sequence begins.) Also, in this example, XRa
5Off and YRasOff are assumed to store the value 0 so as not to obscure the operation of this circuit.

ローディング制御状態機械33は、比較制御状態機械4
9と関連して、上述の様々なレジスタをロードする他に
比較論理/結果記憶装置47及び状態発生論理51の適
正な動作に必要なレジスタ及びそれに対応するマルチプ
レクサの選択を制御するパイプライン方式を制御する。
The loading control state machine 33 is connected to the comparison control state machine 4.
9, a pipeline scheme is provided to control the selection of registers and corresponding multiplexers necessary for the proper operation of comparison logic/results storage 47 and condition generation logic 51, in addition to loading the various registers described above. Control.

さらに、本発明のラスターオフセット能力を利用しない
ことが望まれる場合には、比較論理/結果記憶装置47
により実行される比較を実行する前に、X座標レジスタ
及びY座標レジスタへのデータ記憶のための入力データ
へのOの加算を強制的に実行する必要がある。
Additionally, if it is desired not to take advantage of the raster offset capabilities of the present invention, the comparison logic/result storage 47
Before performing the comparison performed by , it is necessary to force the addition of O to the input data for data storage in the X and Y coordinate registers.

この点に関連して、ローディング制御状態機械33と、
比較制御状態機械49とにより発生されるMUX En
able制御信号及びRegister Enable
制御信号を、第9図に示すタイミングシーケンステーブ
ルと、入力されるY座標ごとに座標ステジング部15に
より実行される処理の順序を示す以下のリストとから確
認することもできる。
In this regard, a loading control state machine 33;
MUX En generated by comparison control state machine 49
enable control signal and Register Enable
The control signal can also be confirmed from the timing sequence table shown in FIG. 9 and the following list showing the order of processing to be executed by the coordinate staging unit 15 for each input Y coordinate.

1、  DataInのY座標を受信 2.受信したY座標の下位16ビツトを、a)  YR
aaOff (下位16ビツト)又はb)  (jnd
ex−1)によシ指示されるYOL〜Y3Lの下位16
ビツト 又はc)  Q に追加 3、受信したY座標の上位16ビツトを、a)  YR
aaOff  (符号拡張上位16ビツト) 又はb)  (1ndex−1)によシ指示されるYO
H−Y3Hの上位16ビツト 又はc)  0 に追加且つステップ2の結果をその他のY座標と比較 4、ステップ2の結果をYCllpMin 、YTes
tMin。
1. Receive the Y coordinate of DataIn2. The lower 16 bits of the received Y coordinate are a) YR
aaOff (lower 16 bits) or b) (jnd
The lower 16 of YOL to Y3L as instructed by ex-1)
or c) add 3 to Q, the upper 16 bits of the received Y coordinate, a) YR
aaOff (sign extension upper 16 bits) or b) YO indicated by (1ndex-1)
H-Y3H upper 16 bits or c) Add to 0 and compare the result of step 2 with other Y coordinates4.
tMin.

YClipMax及びYTeatMaxと比較且つステ
ップ2及び3の結果の上位18ピツトを全て1及び全て
0の状態に関して検査 上記のステップ2及びステップ3において、選択肢a)
、b)又は(2)は次のように選定される。
Compare with YClipMax and YTeatMax and check the top 18 pits of the results of steps 2 and 3 for all 1 and all 0 states In step 2 and step 3 above, option a)
, b) or (2) are selected as follows.

指標で示されたレジスタへの非相対的書込み(PNT 
、LINE 、TRI 、QUAD 、RECT)の場
合、選択肢a)が選択される。指標で示されたレジスへ
の相対的書込み(RELPNT、ILLINE、REL
TRI 、RI8LQUAD、RELRECT)の場合
は、選択肢b)が選択される。他の全ての書込みでは選
択肢c)を選択する。X座標のローディングは同じ流れ
に従う。
Non-relative write to indexed register (PNT
, LINE , TRI , QUAD , RECT), option a) is selected. Relative writes to the register indicated by the index (RELPNT, ILLINE, REL)
TRI, RI8LQUAD, RELRECT), option b) is selected. For all other writes select option c). Loading of the X coordinate follows the same flow.

以上説明した制約と定義に留意し、また、指標論理43
における指標レジスタ値が「01」であり且つ第4図を
参照して先に説明したようなレジスタ(XO,YO)〜
(X3.Y3)は全て0であると仮定すると、第1の例
と同様に終端点のX、Y座標が(3,6)(7,9)で
ある1本の線を規定するようにレジスタをロードするた
めに、以下に示すシーケンスに従って事象は起こる。
Keeping in mind the constraints and definitions explained above, and also the indicator logic 43.
The index register value in is "01" and the registers (XO, YO) ~ as described above with reference to FIG.
Assuming that (X3.Y3) are all 0, as in the first example, define a line whose terminal point's X and Y coordinates are (3, 6) (7, 9). To load a register, events occur according to the sequence shown below.

クロックサイクル0で、P n t Y (6)書込み
指令はDataInに値6を乗せ、ローディング制御状
態機械33へのレジスタアドレス入力が、入力データは
1つのY点であることを示す値を含むようにする。
At clock cycle 0, the P n t Y (6) write command places the value 6 on DataIn so that the register address input to the loading control state machine 33 contains a value indicating that the input data is one Y point. Make it.

クロックサイクル1(第3図を参照)で、マルチプレク
サ36は、DataInの下位16ビツトを選択せよと
の命令を受取り、マルチプレクサ35(すなわち、マル
チプレクサ35&と35b)及び40と、論理ゲート4
2とは、YRasOffの下位16ビツトを通過させよ
との命令を受取る。このように、クロックサイクル1の
間に、加算器31はマルチプレクサ36の出力と論理ゲ
ート42の出力とを加算し、その結果を出力端子から発
生する。
In clock cycle 1 (see FIG. 3), multiplexer 36 receives an instruction to select the lower 16 bits of DataIn, and multiplexer 35 (i.e., multiplexers 35& and 35b) and 40 and logic gate 4
2 receives an instruction to pass the lower 16 bits of YRasOff. Thus, during clock cycle 1, adder 31 adds the output of multiplexer 36 and the output of logic gate 42 and produces the result at the output terminal.

クロックサイクル1の終了時に、レジスタYOL〜Y3
Lはイナープルされ、加算器31からの値、すなわち、
DataInにあった値6の下位ビットを表わす6がロ
ードされる。クロックサイクル2では、マルチプレクサ
36はDataInの上位16ビツトを選択せよとの命
令を受取り、マルチプレクサ35及び40と、論理ゲー
ト42とは、YRasOffの符号拡張上位16ビツト
を通過させよとの命令を受取る。このように、クロック
サイクル2の間に、加算器31はマルチプレクサ36の
出力と論理ゲート42の出力とを加算し、その結果を出
力端子から発生する。クロックサイクル2の終了時に、
レジスタYOH−Y3Hはイネーブルされ、加算器31
の出力端子からの値がロードされる。
At the end of clock cycle 1, registers YOL~Y3
L is inerpulled and the value from adder 31, i.e.
6 is loaded, representing the lower bit of the value 6 that was in DataIn. In clock cycle 2, multiplexer 36 receives an instruction to select the upper 16 bits of DataIn, and multiplexers 35 and 40 and logic gate 42 receive an instruction to pass the sign-extended upper 16 bits of YRasOff. . Thus, during clock cycle 2, adder 31 adds the output of multiplexer 36 and the output of logic gate 42 and produces the result at the output terminal. At the end of clock cycle 2,
Registers YOH-Y3H are enabled and adder 31
The value from the output terminal of is loaded.

サイクル3では、pntx(3)書込み指令はData
Inに値3を乗せ、ローディング制御状態機械33への
レジスタアドレス入力が、入力データはX点であること
を示す値を含むようにする。また、クロックサイクル3
では、マルチプレクサ36はDataInの下位16ビ
ツトを選択せよとの命令を受取り、マルチプレクサ35
及び40と、論理ゲート42とはXRa5Offの下位
16ビツトを通過させよとの命令を受取る。クロックサ
イクル3の間に、加算器31はマルチプレクサ36の出
力と論理ゲート42の出力とを加算し、その結果を出力
端子から発生する。クロックサイクル3の終了時に、レ
ジスタX0L−X3Lはイネーブルされ、加算器31か
らの値、すなわち、DataIn Kあった値3の下位
ビットを表わす3がロードされる。クロックサイクル4
で、マルチプレクサ36はDataInの上位16ビツ
トを選択せよとの命令を受取り、マルチプレクサ35及
び40と、論理ゲート42とは、XRa5Offの符号
拡張上位16ビツトを通過させよとの命令を受取る。ク
ロックサイクツ娑4では、加算器31はマルチプレクサ
36の出力と論理ゲート42の出力とを加算し、その結
果を出力端子から発生する。クロックサイクル4の間に
、レジスタXOH〜X3Hはイネーブルされて加算器3
1の出力端子からの値がロードされ、指標レジスタは増
分される。クロックサイクル5で、LineY(9)書
込み指令はpataInに値9を乗せ、ローディング制
御状態機械33へのレジスタアドレス入力が、入力デー
タはY線であることを示す値を含むようにする。クロッ
クサイクル5では、マルチプレクサ36はDataIn
の下位16ビツトを選択せよとの命令を受取り、マルチ
プレクサ35及び40と、論理ゲート42とは、YRa
aOffの下位16ビツトを通過させよとの命令を受取
る。クロックサイクル5の間に、加算器31はマルチプ
レクサ36の出力と論理ゲート42の出力とを加算し、
その結果を出力端子から発生する。クロックサイクル5
の終了時に、レジスタY2L 、Y3L及びYOLはイ
ネーブルされ、加算器31からの値、すなわち、Dat
aInにあった値9の下位ビットを表わす9がロードさ
れる。クロックサイクル6では、マルチプレクサ36は
DataInの上位16ビツトを選択せよとの命令を受
取り、マルチプレクサ35及び40と、論理ゲート42
とは、YRasOffの符号拡張上位16ビツトを通過
させよとの命令を受取る。クロックサイクル6で、加算
器31はマルチプレクサ36の出力と論理ゲート42の
出力とを加算し、その結果を出力端子から発生する。ク
ロックサイクル6の間に、レジスタY2HY3H及びY
OHはイネーブルされ、加算器31の出力端子からの値
がロードされる。クロックサイクル?では、LinaX
(7)書込み指令がDataInに値7を乗せ、ローデ
ィング制御状態機械33へのレジスタアドレス入力が、
入力データはX線であることを示す線を含むようにする
。同様にして、最終的にはレジスタX2L 、X3L及
びXOLがイネーブルされて、値7がロードされ、その
後、指標レジスタは、先に示した通り、2から3に増分
される。他の目的物に対するX/Y座標レジスタのロー
ディングも、上述と同じパイプライン方式に従う。三角
形と、矩形の場合の例は先の第2の例と、第3の例に挙
げられている。四辺形の対象物も同じようにしてロード
される。
In cycle 3, the pntx(3) write command is Data.
In is loaded with the value 3 so that the register address input to the loading control state machine 33 contains a value indicating that the input data is at point X. Also, clock cycle 3
Then, the multiplexer 36 receives an instruction to select the lower 16 bits of DataIn, and selects the lower 16 bits of the multiplexer 35.
and 40, and logic gate 42 receives an instruction to pass the lower 16 bits of XRa5Off. During clock cycle 3, adder 31 adds the output of multiplexer 36 and the output of logic gate 42 and produces the result at its output terminal. At the end of clock cycle 3, registers X0L-X3L are enabled and loaded with the value from adder 31, ie, 3, representing the lower bit of the value 3 that was in DataInK. clock cycle 4
Then, multiplexer 36 receives an instruction to select the upper 16 bits of DataIn, and multiplexers 35 and 40 and logic gate 42 receive an instruction to pass the sign-extended upper 16 bits of XRa5Off. In the clock cycler 4, the adder 31 adds the output of the multiplexer 36 and the output of the logic gate 42 and produces the result from the output terminal. During clock cycle 4, registers XOH-X3H are enabled and adder 3
The value from output terminal 1 is loaded and the index register is incremented. At clock cycle 5, the LineY(9) write command places the value 9 on pataIn, causing the register address input to loading control state machine 33 to contain a value indicating that the input data is a Y line. In clock cycle 5, multiplexer 36
Upon receiving an instruction to select the lower 16 bits of YRa, multiplexers 35 and 40 and logic gate 42 select the lower 16 bits of YRa.
Receives an instruction to pass the lower 16 bits of aOff. During clock cycle 5, adder 31 adds the output of multiplexer 36 and the output of logic gate 42;
The result is generated from the output terminal. clock cycle 5
At the end of , registers Y2L, Y3L and YOL are enabled and receive the value from adder 31, i.e. Dat
9 is loaded, representing the lower bit of the value 9 that was in aIn. In clock cycle 6, multiplexer 36 receives an instruction to select the upper 16 bits of DataIn, and multiplexers 35 and 40 and logic gate 42
receives an instruction to pass the sign-extended upper 16 bits of YRasOff. At clock cycle 6, adder 31 adds the output of multiplexer 36 and the output of logic gate 42 and produces the result at its output terminal. During clock cycle 6, registers Y2HY3H and Y
OH is enabled and loaded with the value from the output terminal of adder 31. Clock cycle? Well then, LinaX
(7) The write command puts the value 7 on DataIn, and the register address input to the loading control state machine 33 is
The input data is made to include a line indicating that it is an X-ray. Similarly, eventually registers X2L, X3L and XOL are enabled and loaded with the value 7, after which the index register is incremented from 2 to 3 as shown above. Loading of the X/Y coordinate registers for other objects also follows the same pipeline scheme as described above. Examples of triangles and rectangles are given in the second and third examples above. Quadrilateral objects are loaded in the same way.

ラスターオフセットレジスタ41とクリップ座標レジス
タ39は、以上説明したようなX/Y座標レジスタ37
のロードと同様にしてロードされるが、論理ゲート42
は加算サイクルごとにOになるように命令される(すな
わち、絶対ローティング)。
The raster offset register 41 and the clip coordinate register 39 are the X/Y coordinate register 37 as explained above.
is loaded in a similar manner to the loading of logic gate 42
is commanded to be O on every addition cycle (ie, absolute loading).

本発明は、指標論理43に含まれる指標レジスタを使用
することにより、対象物の複製を表示するのに効率良い
メカニズムを形成する相対アドレス指定をさらに実行す
る。゛相対アドレス指定は、次のような例を挙げて説明
すると最もわかりやすい。三角形の3つの頂点は(X(
i r yo ) + (XI +Y+)及び(X2.
Y2)として規定されることができる。この対象物を表
示装置の様々に異なる場所に50回複製するためには、
150対のX、Y座標を記憶することが必要であろう。
The present invention further implements relative addressing through the use of index registers included in index logic 43, forming an efficient mechanism for displaying replicas of objects. ``Relative addressing is best explained using the following example. The three vertices of the triangle are (X(
ir yo ) + (XI +Y+) and (X2.
Y2). To replicate this object 50 times at different locations on the display device,
It would be necessary to store 150 pairs of X, Y coordinates.

相対アドレス指定を使用する場合、1つの頂点を原点(
xol y、 )として規定し、第2の頂点と、第3の
頂点を先の頂点からのオフセット、すなわち、Δxol
 、ΔYOI及びΔX23.ΔY23として規定する。
When using relative addressing, place one vertex at the origin (
xol y, ), and the second and third vertices are defined as offsets from the previous vertex, i.e., Δxol
, ΔYOI and ΔX23. It is defined as ΔY23.

対象物を50回複製するには、それら2対のオフセット
と、複製ごとの新たなX。、Yoとを(すなわち、50
個の対象物原点に2対のオフセットを加えたものを)記
憶するだけで良い。
To duplicate the object 50 times, offset those two pairs and a new X for each duplicate. , Yo (i.e., 50
It is only necessary to store the object origin plus two pairs of offsets).

本発明によれば、これは、まず、X/Y座標レジスタ3
7の中の複数対のレジスタのうち1対に、指標指示ロー
ディング形式(すなわち、PntY。
According to the invention, this begins with the X/Y coordinate register 3
7 into one of the pairs of registers in index-directed loading format (i.e., PntY.

PntX)を利用して、原点座標対頂点を記憶すること
により、実行可能である。続いて、指標レジスタの現在
値により指示される頂点に対して、2つのオフセット頂
点を記憶する。これは、レジスタローディングに先立っ
てDataInに追加されるべき(index−L)に
より指示される頂点を選択することによって実行される
。(1ndex−1)により表わされる頂点は、書込み
の種類(PNT 。
This can be done by storing the origin coordinates versus vertices using PntX). Subsequently, two offset vertices are stored for the vertex indicated by the current value of the index register. This is done by selecting the vertex pointed to by (index-L) to be added to DataIn prior to register loading. The vertex represented by (1ndex-1) is the write type (PNT).

LINgなど)にかかわらず、先の指標指示書込み時に
ロードされたことが保証されているので、その頂点は、
相対オフセットを適用する元になる頂点である。
LINg, etc.), it is guaranteed that it was loaded when the index instruction was written earlier, so the vertex is
This is the vertex from which the relative offset is applied.

比較論理/結果記憶装置47 次に、第7図及び第8図を参照して、比較論理/結果記
憶装置41を説明する。比較論理/結果記憶装置41は
マルチプレクサ101 、103 、105 。
Comparison Logic/Result Storage Device 47 Next, the comparison logic/result storage device 41 will be explained with reference to FIGS. 7 and 8. Comparison logic/result storage 41 includes multiplexers 101 , 103 , 105 .

101及び109(第7図を参照)と、比較器121〜
124、マルチプレクサ131〜146及びレジスタR
1〜R44(第8図を参照)とから構成される。
101 and 109 (see FIG. 7), and comparators 121 to 109 (see FIG. 7).
124, multiplexers 131 to 146 and register R
1 to R44 (see FIG. 8).

レジスタR1〜R44は、第2表に示す通り、比較器1
21〜124の動作の結果を記憶する。
Registers R1 to R44 are used for comparator 1 as shown in Table 2.
The results of operations 21 to 124 are stored.

第  2 I i6 XO:X Cl f pMl n XO:XTeatMln XO:X C1i pMax XO:X T e s tMa x XI :X C11pMi n Xi :XTe s tMi n Xl:XC11XC11 p 1 :X Ta s tMa x X2:XC1lpXC1 1p:XTeatMin X2:XC1ipXC1 1p:XTestMax X3:XC1ipXC1 1p :XTe s tMt n X3:XC1ipMax X3 :X To s tMa x XO:Xl Xo :X2 XO:X3 Xl:X2 xl:X3 X2 :X3 表 YO:Y C1i pMl n YO:YTestMln YO:YClipMax YO:YTestMax Yl:YClipMin Yl:YTestMin Yl:YCllpMax Yl:YTegtMax Y2:YClipMln Y2:YTestMln Y2:YClipMax Y9:YTestMax Y3:YCllpMin Y3 :YTa s tMl n Y3:YCllpMax Y3:YTastMax YO:YI YO:Y2 YO:Y3 Yl:Y2 Yl :Y3 Y2 :Y3 第2表において、1ビツトの結果を記憶するXC11p
Min/Max 、 Y C1i pMl n/Max
 、XTe s tMf n/Max及びYTe a 
tMi n/Maxに関わる比較値を除いて、指示され
たレジスタは2つの指示値の相互比較の2ビツトの結果
を記憶する。コロンの左側にある値がコロンの右側の値
よシ大きい場合、対応するレジスタに記憶される2進値
は「10」である。また、コロンの左側にある値がコロ
ンの右側の値より小さい場合には、対応するレジスタに
記憶される2進値は「01」である。2つの値が等しい
場合、対応するレジスタに記憶される2進値は「00」
である。XC1XC11p 、YClipMin 、X
TestMin及びY Ta s tMl nの場合、
それと比較された座標値のほうが小さければ1−1」が
記憶されるが、そうでない場合には「0」が記憶される
。xcitpMax 、YCllpMax 、 XTe
atMax及びYTsstMaxの場合には、それと比
較した値のほうが大きければ1」が記憶され、そうでな
い場合には1−o」が記憶される。
2nd I i6 XO:X Cl f pMl n XO:XTeatMln XO:X C1i pMax XO:X T e s tMax tMax :XC1lpXC1 1p:XTeatMin X2:XC1ipXC1 1p:XTestMax X3:XC1ipXC1 1p :XTe s tMt n X3: Xl:X2 xl:X3 X2 :X3 Table YO :Y C1i pMl n YO: YTestMln YO: YClipMax YO: YTestMax Yl: YClipMin Yl: YTestMin Yl: YCllpMax Yl: YTegtMax Y2: YClipMln Y2: YTestMln Y2: YClipMax Y9: YTestMax Y3: YCllpMin Y3: YTa stMl n Y3: YCllpMax Y3:YTastMax YO:YI YO:Y2 YO:Y3 Yl:Y2 Yl :Y3 Y2 :Y3 In Table 2, XC11p stores the 1-bit result.
Min/Max, Y C1i pMl n/Max
, XTe s tMf n/Max and YTe a
With the exception of the comparison value involving tMin/Max, the indicated register stores the 2-bit result of the intercomparison of the two indicated values. If the value to the left of the colon is greater than the value to the right of the colon, the binary value stored in the corresponding register is "10". Also, if the value to the left of the colon is smaller than the value to the right of the colon, the binary value stored in the corresponding register is "01". If the two values are equal, the binary value stored in the corresponding register is '00'
It is. XC1XC11p, YClipMin, X
For TestMin and Y Ta s tMl n,
If the compared coordinate value is smaller, "1-1" is stored, but otherwise "0" is stored. xcitpMax, YCllpMax, XTe
In the case of atMax and YTsstMax, if the compared value is larger, 1'' is stored, otherwise 1-o'' is stored.

マルチプレクサ101 、103 、105 、107
及び109に対する入力はX/Y座標レジスタ37、す
なわち、XOL、YOL〜X3L 、Y3L と、クッ
ププ座標レジスタ39、すなわち、XC1XC11p 
、 YC目pMin及びXC目pMax、YCNpMa
xと、試験ウィンドウ制御論理45、すなわち、XTe
stMin。
Multiplexers 101, 103, 105, 107
The inputs to 109 and 109 are the X/Y coordinate register 37, that is, XOL, YOL~
, YC order pMin and XC order pMax, YCNpMa
x and the test window control logic 45, i.e., XTe
stMin.

YTastMin 、XTestMax及びY Te 
s tMax とから得られる。当然のことながら、あ
る1つの時点で、? /L/チプレク? 101 、1
03 、105 、107及び109に対する入力は、
比較制御状態機械49により発生されるMUX Ena
ble信号に基づいて、前述のようにX値又はY値のい
ずれか一方となる。
YTastMin, XTestMax and YTe
It is obtained from s tMax . Naturally, at one point in time? /L/ Chipleku? 101, 1
The inputs for 03, 105, 107 and 109 are:
MUX Ena generated by comparison control state machine 49
Based on the ble signal, it becomes either the X value or the Y value as described above.

比較器121はマルチプレクサ101の出力と、マルチ
プレクサ109の出力とを比較する。同様に、比較器1
22〜124は、それぞれ、マルチプレクサ103の出
力、マルチプレクサ105の出力、マルチプレクサ10
7の、出力と、マルチプレクサ109の出力とを比較す
る。比較器121〜124の出力は、下記のようにロー
ドされるべきレジスタR1〜R44へ適切なデータを送
るマルチプレクサ131〜146に入力される。
Comparator 121 compares the output of multiplexer 101 and the output of multiplexer 109. Similarly, comparator 1
22 to 124 are the output of the multiplexer 103, the output of the multiplexer 105, and the multiplexer 10, respectively.
7 and the output of multiplexer 109 are compared. The outputs of comparators 121-124 are input to multiplexers 131-146 which route the appropriate data to registers R1-R44 to be loaded as described below.

比較器121の出力は、第8図及び下記の第3表に示す
通シ、X値に関してはレジスタR1,R2゜R3,R4
,R5,R9,R13,R17,R18及びR19をロ
ードし、Y値に関してはR23,R24゜R25,R2
6,R27,R31、R35,R39,R40及びR4
1をロードするために使用されるマルチプレクサ131
〜135 、139及び143に結合される。第3表に
おいて、A、B、C及びDは比較器121 、122 
、123及び124をそれぞれ指している。
The output of the comparator 121 is as shown in FIG. 8 and Table 3 below.
, R5, R9, R13, R17, R18 and R19, and for the Y value R23, R24°R25, R2
6, R27, R31, R35, R39, R40 and R4
Multiplexer 131 used to load 1
~135, 139 and 143. In Table 3, A, B, C and D are comparators 121, 122
, 123 and 124, respectively.

比較器122の出力は、第8図及び第3表に示す通り、
X値に関してはレジスタR2,R5,R6゜R7,R8
,R10,R14,R17,R20及びR21をロード
し、Y値に関してはレジスタR24,R27R28,R
29,R30,R32,R36,R39,R42及びR
43をロードするために使用されるマルチプレクサ13
2 、135 、136 、137 、138 、14
0及び144に結合される。
The output of the comparator 122 is as shown in FIG. 8 and Table 3.
Regarding the X value, registers R2, R5, R6゜R7, R8
, R10, R14, R17, R20 and R21, and for the Y value registers R24, R27, R28, R
29, R30, R32, R36, R39, R42 and R
Multiplexer 13 used to load 43
2, 135, 136, 137, 138, 14
0 and 144.

比較器123の出力は、第8図及び第3表に示す通り、
X値に関してはレジスタR3,R7,R9゜R10、R
12,R15,R18,R20及びR22をロードし、
Y値に関してはレジスタR25,R29゜R31、R3
2、R34,R37,R40、R42及びR44をロー
ドするために使用されるマルチプレクサ133 、13
7 、139 、140 、142及び145に結合さ
れる。
The output of the comparator 123 is as shown in FIG. 8 and Table 3.
Regarding the X value, registers R3, R7, R9゜R10, R
Load 12, R15, R18, R20 and R22,
Regarding the Y value, registers R25, R29°R31, R3
2. Multiplexer 133, 13 used to load R34, R37, R40, R42 and R44
7, 139, 140, 142 and 145.

比較器124の出力は、第8図及び第3表に示す通り、
X値に関してはレジスタR4,R8,R12゜R13,
R14,R15,R16,R19,R21及びR22を
ロードし、Y値に関してはし・ジスタR26゜R30、
R34,R35,R36,R37,R38,R41、R
43及びR44をロードするために使用されるマルチプ
レクサ134 、138 、142 、143 。
The output of the comparator 124 is as shown in FIG. 8 and Table 3.
Regarding the X value, registers R4, R8, R12゜R13,
Load R14, R15, R16, R19, R21 and R22, and change the Y value to R26°R30,
R34, R35, R36, R37, R38, R41, R
Multiplexers 134, 138, 142, 143 used to load R43 and R44.

144 、145及び146に結合される。144, 145 and 146.

実行され且つ記憶される比較は、座標順序付は部17及
び機能アドレス指定ブロック19により、支援動作(・
四辺形描出としても知られているDRAW又はBLIT
)を適正に実行すると共に、正しいクリツピングを実行
するために要求される比較である。
The comparisons performed and stored are carried out by the coordinate ordering section 17 and the functional addressing block 19, which assists in the operation (.
DRAW or BLIT, also known as quadrilateral drawing
) is required to perform the correct clipping as well as perform the correct clipping.

比較制御状態機械49 比較制御状態機械49は、比較論理/結果記憶装置47
にある様々な比較器、マルチプレクサ及びレジスタをイ
ネーブルする論理である。比較制御状態機械49による
座標レジスタ及びクリップレジスタの絶対ローディング
に関する真理値表を、クロックOと、クロック1とにつ
いて第3表に示す。尚、表中、比較器121〜124を
、それぞれ、A 、B 、C及びDとして示す。第3表
は、入力XOL〜X3L 、 X C1ipMin 、
 XCI ipMax 、 XTeatMln及びX 
To a ty(axのそれぞれに対する各比較器12
1〜124の出力を表わしている。これに関連して、第
8図によれば、マルチプレクサ101 、103 。
Comparison Control State Machine 49 Comparison control state machine 49 includes comparison logic/result storage 47
Logic that enables various comparators, multiplexers, and registers in the The truth table for the absolute loading of the coordinate and clip registers by the comparison control state machine 49 is shown in Table 3 for clock O and clock 1. In the table, the comparators 121 to 124 are indicated as A, B, C, and D, respectively. Table 3 shows the inputs XOL~X3L, XC1ipMin,
XCI ipMax, XTeatMln and X
To a ty (each comparator 12 for each of ax
It represents outputs from 1 to 124. In this connection, according to FIG. 8, multiplexers 101 , 103 .

105及び107の出力は比較器121〜124の一方
の側に入力され、マルチプレクサ109の出力は他方の
側に入力されることがわかる。一貫性を保つため、たと
えば、XILとXOLとの比較といった逆の順序をとる
のではなく、XoLとXll、との比較、XILとX2
Lとの比較、X2LとX3Lとの比較等々を記憶するこ
とが必要である。このため、逆とラベル付けされた欄が
「イエス」であるときは、比較器121〜124の出力
は逆転される。これは、マルチプレクサ131〜146
の右側の入力により処理される。比較器121〜124
の出力はマルチプレクサ131〜146の左側に直接入
力される。マルチプレクサの右側の入力端子は、指示さ
れた比較器から、逆のビット順序で、2ビツトの出力を
受信する。すなわち、逆とラベル付けされた欄は、絶対
座標ロードの場合のマルチプレクサ131〜146のM
UX選択線に関する真理値表を成している。
It can be seen that the outputs of 105 and 107 are input to one side of comparators 121-124, and the output of multiplexer 109 is input to the other side. For consistency, instead of doing the opposite order, e.g. comparing XIL and XOL, we compare XoL with Xll, XIL with
It is necessary to memorize the comparison with L, the comparison between X2L and X3L, etc. Therefore, when the column labeled Reverse is "yes", the outputs of comparators 121-124 are reversed. This is multiplexer 131-146
is processed by the input on the right side of . Comparators 121-124
The outputs of are input directly to the left side of multiplexers 131-146. The right input terminal of the multiplexer receives the two-bit output from the designated comparator, in reverse bit order. That is, the column labeled Reverse indicates the M of multiplexers 131-146 for absolute coordinate loads.
It forms a truth table regarding the UX selection line.

第  3  表 XOL:XIL XOL:X2L XOL:X3L XOL:XClipMXC 11p:XTestMin XOL:XClipMXC 11p:XTestMax YESイエス YESイエス YESイエス YESイエス YESイエス YESイエス YESイエス 比較器 Xlへの書込み WRITETOXI 比  較 XIL:X0L XIL:X2L XIL:X3L XIL:XC11pMXC 11p:XTestMin Xi L :X Cl i pMa xXIL:XTe
stMax 逆 サイクル Noノー YESイエス YESイエス YESイエス YESイエス YESイエス YESイエス 比較器 X3への書込み wRr’rg’rox3 比  較 X3L:X0L X3L:XIL X3L:X2L X3L:XCIipMXC l1p:XTestMin X3 L :X Cl i pMa xX3L:XTe
stMax 逆 サイクル Noノー Noノー Noノー YESイエス YESイエス YESイエス YESイエス X2L:X0L X2L:XIL。
Table 3 XOL:XIL XOL:X2L XOL:X3L XOL:XClipMXC 11p:XTestMin OXI Comparison XIL:X0L XIL:X2L XIL:X3L XIL:XC11pMXC 11p:XTestMin Xi L :X Cl i pMa xXIL:XTe
stMax Reverse cycle No No YES YES YES YES YES YES YES YES YES Write to comparator X3 wRr'rg'rox3 Comparison X3L:X0L X3L:XIL i pMa xX3L:XTe
stMax Reverse cycle No No No No No No YES YES YES YES YES YES YES X2L:X0L X2L:XIL.

X2L:X3L X2L :X Cl i pMl n X2L:XTestMin X2L:XC11pMXC 11p:XTestMax Noノー NOノー YESイエス YESイエス YESイエス YESイエス YESイエス X C11pMi n :XOL XClipMin:XIL XClipMin:X2L XC11pMiれ:X3L XTestMin:XOL XTestMin:XIL XTestMtn:X2L X TeBtMin:X3L Noノー Noノー Noノー Noノー Noノー No ノー Noノー Noノー 比較器 比  較 逆 サイクル A     XCI ipMax:XOL  Noノー
   OB     XC1XC11p:XIL  N
oノー   OCXC1XC11p:X2L  Noノ
ー   〇D     XCIXCllp:X3L  
No ノー   OA     XTaatMax:X
O3No ノー   IB     X Te a t
Max :XIL  No ノー   ICXTest
Max:X2L  Noノー   ID     XT
eatMax:X3L  Noノー   1YOL〜Y
3L 、YCllpMin 、YClipMax 、Y
TesbMin及びYTastMaxに関しては、第3
表の結果を同じように繰返せば良い。第9図は、Dat
aInの信号と、ラスターオフセットレジスタ41、X
/Y座標レジスタ37、クリップ座標レジスタ39及び
比較論理/結果記憶装置47により実行されるレジスタ
ローディングとの相対タイミングを示す。
X2L:X3L X2L :X Cl i pMl n X2L:XTestMin ClipMin:X2L XC11pMiRe:X3L XTestMin: XOL XTestMin:XIL XTestMtn:X2L X TeBtMin:X3L No No No No No No No No No No Comparator Comparison Reverse Cycle A
o No OCXC1XC11p:X2L No No 〇D XCIXCllp:X3L
No No OA XTaatMax:X
O3No No IB X Te a t
Max :XIL No ICXTest
Max:X2L No No ID XT
eatMax:X3L No No 1YOL~Y
3L, YCllpMin, YClipMax, Y
Regarding TesbMin and YTastMax, the third
Just repeat the results in the table. Figure 9 shows Dat
aIn signal and the raster offset register 41,
/Y coordinate register 37, clip coordinate register 39, and comparison logic/result storage 47.

比較制御状態機械は、書込みサイクルと関連する指標レ
ジスタ値と、第4表の双方を利用して、先に述べたよう
な指標指示ローディング方式を支援する。指標レジスタ
値により指示されるレジスタは、指標により示される書
込みの種類とは無関係に、常に書込まれるので、マルチ
プレクサ101゜103 、105及び107に関する
適切なMUX Enab l eは、比較制御状態機械
により、その座標に対する単一のレジスタ書込みを想定
して選択される。たとえば、指標3によるXへの矩形書
込みが受信された場合、比較論理は、X3への明示書込
みが受信されたかのように動作し、必要に応じて、X3
Lと’1  (XOL、XIL、X2L、XC1XC1
1p、XC1XC11p。
The comparison control state machine utilizes both the index register value associated with the write cycle and Table 4 to support the index directed loading scheme as previously described. Since the register pointed to by the index register value is always written to, regardless of the type of write indicated by the index, the appropriate MUX enable for multiplexers 101, 103, 105, and 107 is determined by the compare control state machine. , is chosen assuming a single register write to that coordinate. For example, if a rectangle write to X with index 3 is received, the comparison logic will operate as if an explicit write to
L and '1 (XOL, XIL, X2L, XC1XC1
1p, XC1XC11p.

XTestMin 、XTestMax )との比較を
実行する。
XTestMin, XTestMax).

レジスタの絶対ローディングと、指標指示(又は相対指
標指示)されたロードとの隔たりは、指標指示の場合、
47にある2つ以上の座標記憶レジスタが比較の結果を
受増るためにイネーブルされて良く、マルチプレクサ1
31〜146に関するマルチプレクサ選択は、第3表で
はなく、第4表に従って発生されることにある。
The difference between an absolute loading of a register and an indexed (or relative indexed) load is that in the case of indexed loading,
Two or more coordinate storage registers at 47 may be enabled to receive the results of the comparison, and multiplexer 1
The multiplexer selection for 31-146 consists in being generated according to Table 4 rather than Table 3.

先に示した、指標3による矩形X書込みの例では、比較
レジスタ(第2表又は第8図を参照)R1−R3,R1
3〜rt16.R17〜R19及びR21〜R22が書
込まれる。次に挙げる複数対のレジスタは同じ比較結果
を個々に記憶する:(R17,R21)。
In the example of writing rectangle
3~rt16. R17 to R19 and R21 to R22 are written. The following pairs of registers individually store the same comparison results: (R17, R21).

(R18,R22)、(R1、R13)、(R2,R1
4)。
(R18, R22), (R1, R13), (R2, R1
4).

(R3,R15)及び(R4,R16)。(R3, R15) and (R4, R16).

第  4  表 比較器  比較 B   XO:XI CXO:X2 D   XO:X3 CXl:X2 D   Xl:X3 D   X2:X3 種類   逆 PNT     78gイエス PNT     yesイエス PNT     yesイエス PNT      yesイエス PNT      yesイエス PNT     yesイエス 指標 XO:Xl Xo:X2 XO:X3 Xi :X2 Xl:X3 X2 :X3 INE INE INE INE INE INE yesイエス yesイエス yesイエス yesイエス yesイエス yesイエス 比較 XO:Xl Xo:X2 XO:X3 Xl:X2 Xl:X3 X2 :X3 xo:xi XO:X2 XO:X3 Xl:X2 XI :X3 X2:X3 XO:Xl Xo :X2 XO:X3 Xl:X2 Xl:X3 X2:X3 種類 INE INE INE INE INE INE INE INE INIE INE INE INIIE INE INE INE INE INE INE 逆 no  ノー no  ノー no ノー yesイエス yesイエス yesイエス yesイエス yesイエス yeBイエス no  ノー no  ノー yesイエス yesイエス ye8イエス yesイエス yesイエス yesイエス noメノ ー較 xo:xi XO:X2 XO:X3 Xi :X2 XI :X3 種類 TRIAEc’r TRIハECT TRI//REcT TRIAECT TRI74化CT 逆 yesイエス yesイエス yesイエス yesイエス yesイエス 比較 XO:Xl Xo:X2 XO:X3 Xl:X3 X2:X3 種類 TRIハECT TRI/RECT TRI/RECT TRI/’RECT TR54化CT 逆 yesイエス yesイエス yesイエス noメノ ーo ノー xo:xt XO:X2 Xl:X2 XI :X3 X2:X3 XO:X2 XO:X3 Xl:X2 Xl:X3 X2:X3 TRIAECT TRI、4’LECT TRIAECT TRI/l’LEcT TRI、4tECT TRI、4(ECT TRI/R,ECT TRI、4tECT TRI/’RECT TRI、4tECT no  ノー no ノー yesイエス yesイエス yesイエス no ノー no ノー no ノー no ノー yesイエス xo:xt XO:X2 XO:X3 XO:Xl Xl:X2 Xi :X3 XO:X2 Xl:X2 X2:X3 UAD UAD UAD UAD UAD UAD UAD UAD UAD yesイエス   0 yesイエス   0 yesイエス   0 no ノー     1 yesイエス    1 yesイエス   1 no ノー    2 no ノー    2 yesイエス   2 XO:X3 Xl:X3 X2:X3 UAD UAD UAD no ノー no ノー nQ ノー 状態発生論理51 状態発生論理51は制御信号HW/SW、Up/R−t
o−L及びHID/’VIS を発生する。HW/SW
は、動作が本発明のハードウェアにより実行されるか、
又はソフトウェアにより実行されるかを示す2ビツトの
信号である。Up/R−to−t、は、動作が上から下
、下から上、右から左、左から右のいずれの方向で実行
されるべきかを示す2ビツトの信号である。HID/V
ISは、描出すべき対象物が隠れている、すなわち、活
動中のクリップウィンドウの背後にあるか、又は見える
かを示す2ビツトの信号である。これらの信号を発生す
るために、状態発生論理51は、X座標に関してはレジ
スタR1〜R22の出力、Y座標に関してはレジスタR
23〜R24の出力、そして、X/Y座標レジスタ37
からの、上位18ビツトが全て1であること及び全てO
であることを示す4つの4ビット値号を、入力として受
信する。状態発生論理51により実行される論理に関す
る真理値表である第10図から第14図を参照して、状
態発生論理が上記の信号をいかにして発生するかを説明
する。第10図から第14図の真理値表を実現するため
に必要な論理回路は、関連技術を熟知した人の能力の範
囲内に十分に入っている。
Table 4 Comparator Comparison B XO:XI CXO:X2 D XO:X3 CXl:X2 D Xl:X3 D :Xl Xo:X2 XO:X3 Xi :X2 Xl:X3 X2 :X3 INE INE INE INE INE INE yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes X3 X2 :X3 xo:xi XO:X2 XO:X3 Xl:X2 XI :X3 X2:X3 XO:Xl Xo :X2 XO:X3 Xl:X2 INE INE INIIE INE INE INE INE INE INE Reverse no no no no no no yes yes yes yes yes yes yes yes yes yes yes yeB yes no no no no yes yes yes yes yes ye8 yes yes yes yes yes yes no menoh comparison xo:xi XO:X2 XO:X3 Xi :X2 X3 X2: XO:X3 Xl:X2 Xl:X3 no no no no yes yes yes yes no no no no no no no yes yes xo:xt XO:X2 XO:X3 XO:Xl Xl:X2 Xi :X3 UAD UAD UAD yes yes 0 yes yes 0 yes yes 0 no no 1 yes yes 1 yes yes 1 no no 2 no no 2 yes yes 2 XO:X3 Xl:X3 X2:X3 UAD UAD UAD no no no no no nQ No condition occurs Logic 51 The state generation logic 51 is the control signal HW/SW, Up/R-t.
Generate o-L and HID/'VIS. HW/SW
whether the operation is performed by the hardware of the invention;
This is a 2-bit signal indicating whether the program is executed by software or by software. Up/R-to-t is a two-bit signal that indicates whether the operation is to be performed in the top-to-bottom, bottom-to-top, right-to-left, or left-to-right direction. HID/V
IS is a two-bit signal that indicates whether the object to be rendered is hidden, ie, behind the active clip window, or visible. To generate these signals, the state generation logic 51 outputs the outputs of registers R1-R22 for the X coordinate and register R for the Y coordinate.
23 to R24 outputs, and the X/Y coordinate register 37
, the upper 18 bits are all 1 and all O
It receives as input four 4-bit value signs indicating that . With reference to FIGS. 10-14, which are truth tables for the logic executed by the state generation logic 51, how the state generation logic generates the above signals will now be described. The logic circuitry required to implement the truth tables of FIGS. 10-14 is well within the capabilities of those skilled in the relevant art.

第10図は、XO座標(XOL及びX0H)に関する比
較をλり用する真理値表である。X1〜X3及びYO−
Y3に関する比較結果を利用する真理値表は、それらの
座標を代入し、Y座標の場合にはXC1lpMln 、
X C1ipMax 、 XTeatMin及びXTe
atMaxの代わりにYClipMln、YClipM
ax、YTestMin及びYTestMaxを使用す
ることにより得られる。表の左側は入力、右側は出力で
ある。表中、記号「−」は配慮無用、0及び(Oは、そ
れぞれ、パスビット値が全てlであることと、全て1で
あるとは限らないことを表わしくX/Y座標レジスタ3
7から)、Z及び1zは、それぞれ、バスビット値が全
て0であることと、全て0であるとは限らないことを表
わす(X/Y座標レジスタ37から)。r XQ  1
nside 214Jは、32ビツトのXO座標を15
ビツトで表示可能であることを示し、r XO1nsi
de clip Jは、XOがクリップウィンドウのX
境界の上又はその内側にあることを表わし、[XO1n
side test Jは、XOが試験ウィンドウのX
境界の上又はその内側にあることを表わす。出力r X
O(XC1XC11p J 、 「XO(XTestM
ln J 、 r XO> XC1XC11p J及び
rx。
FIG. 10 is a truth table using λ comparisons regarding the XO coordinates (XOL and X0H). X1-X3 and YO-
A truth table that uses the comparison results for Y3 substitutes those coordinates, and for the Y coordinate, XC1lpMln,
X C1ipMax, XTeatMin and XTe
YClipMln, YClipM instead of atMax
ax, YTestMin and YTestMax. The left side of the table is the input, and the right side is the output. In the table, the symbol "-" means no consideration, and 0 and (O represent that the pass bit values are all l and not all 1, respectively.
7), Z and 1z represent that the bus bit values are all 0 and not necessarily all 0 (from the X/Y coordinate register 37). r XQ 1
nside 214J converts the 32-bit XO coordinate to 15
Indicates that it can be displayed in bits, r
de clip J means that XO is the clip window
Represents being on or inside the boundary, [XO1n
side test J means that XO is the test window
Indicates being on or inside a boundary. Output r
O(XC1XC11p J, "XO(XTestM
ln J , r XO > XC1XC11p J and rx.

) XTestMax Jはフィードバックされて、入
力として使用される。出力を形成するために、水平線上
にある入力はAND演算され、縦の列にある出力はOR
演算される。すなわち、第10図の最初の2行を例にと
ると、Xo(31)(すなわち、その符号ピット)が0
であり且つXO(:30:14)(すなわち、上位ビッ
ト14〜30)が全てOであるか、あるいは、XOI:
31)が1であシ且つX0C30:14)  が全て1
であれば、XOFiinside214である。同様に
、第10図の最後の行についていうと、XO(XTas
tMinがOであI)(すなわち、偽)且つX O>X
 Te g tMa xは0であるならば、XOは試験
ウィンドウめ内側にある。
) XTestMax J is fed back and used as input. Inputs on the horizontal line are ANDed and outputs on the vertical columns are ORed to form the output.
Calculated. That is, taking the first two rows of FIG. 10 as an example, Xo(31) (i.e., its code pit) is 0.
and XO(:30:14) (i.e. upper bits 14 to 30) are all O, or XOI:
31) is 1 and X0C30:14) are all 1
If so, it is XOFiinside214. Similarly, regarding the last row of Figure 10, XO(XTas
tMin is O and I) (i.e., false) and X O>X
If Te g tMax is 0, then XO is inside the test window.

第11図a及び第11図すは、4つのX頂点のそれぞれ
と、4つのY頂点のそれぞれとの比較を利用する真理値
表である。第1O図の場合と同様に、水平入力線上にあ
る値は互いにAND演算されて、その結果は論理値1(
真)又は0(偽)となり、指示されている出力(top
 、 bottom、 ri −ght及び1eftを
除く)は、その対応する縦の列をOR演算することによ
り形成される。0,1゜2又は3として示されている出
力top 、 bottom。
Figures 11a and 11s are truth tables that utilize comparisons between each of the four X vertices and each of the four Y vertices. As in Figure 1O, the values on the horizontal input lines are ANDed together and the result is a logical value of 1 (
true) or 0 (false) and outputs the indicated output (top
, bottom, ri-ght and 1ef) are formed by ORing their corresponding vertical columns. Output top, bottom shown as 0,1°2 or 3.

right及び1eftは次のように解釈される。値0
 、 ]、 、 2又は3は、XO〜X3又はYO−Y
3のうちどの座標が最大(top)、最小(botto
+f+)+最も右(right)又は最も左(left
)であるかを指定する。入力側にある記号<、>、E、
L及びGは、指定の比較結果がより小さいこと、より大
きいこと、等しいこと、以下であること及び以上である
ことをそれぞれ表わす。
right and 1ef are interpreted as follows. value 0
, ], , 2 or 3 is XO-X3 or YO-Y
Which coordinates among 3 are the maximum (top) and minimum (botto)?
+f+)+right or left
). Symbols on the input side <, >, E,
L and G represent that the specified comparison result is less than, greater than, equal to, less than or equal to, and greater than or equal to, respectively.

出力の意味は表により規定されるが、以下に、指示され
た出力がそれぞれ何を表わすかをことばで説明する。
Although the meanings of the outputs are defined by the table, what each of the indicated outputs represents will be explained in words below.

+11egal−4対の頂点により規定される対象物を
通って1本の水平線を描く場合に、その線が2つ以上の
縁部と交差するであろうということを意味する。ちょう
ネクタイを形成する対象物は、illegal を真に
する対象物の1例である。
+11egal-4 means that when drawing a horizontal line through an object defined by 4 pairs of vertices, the line will intersect more than one edge. An object that forms a bow tie is an example of an object that makes illegal true.

horiz −4つの頂点全てが同じY値を有すること
を意味する。
horiz - means all four vertices have the same Y value.

ver、t  4つの頂点全てが同じX値を有すること
を意味する。
ver,t means all four vertices have the same X value.

rect  4つの座標により規定される対象物が矩形
を形成することを意味する。
rect means that the object defined by four coordinates forms a rectangle.

1ine   4つの座標により規定される対象物が1
本の線を形成することを意味する。
1ine The object defined by the four coordinates is one
It means to form the lines of a book.

EQOI−頂点Oが頂点1と等しい(同じ点を規定する
)ことを意味する。
EQOI - means that vertex O is equal to vertex 1 (defines the same point).

EQ  12−頂点1が頂点2と等しい(同じ点を規定
する)ことを意味する。
EQ 12 - means vertex 1 is equal to vertex 2 (defines the same point).

EQ  23−頂点2が頂点3と等しい(同じ点を規定
する)ことを意味する。
EQ 23 - means vertex 2 is equal to vertex 3 (defines the same point).

EQ  30−頂点3が頂点Oと等しい(同じ点を規定
する)ことを意味する。
EQ 30 - means that vertex 3 is equal to vertex O (defines the same point).

第12図aから第12図dは、4つのX頂点及び4つの
Y頂点と、クリッピング境界との比較を利用する真理値
表を規定する。入力top 、bottom。
Figures 12a to 12d define truth tables that utilize comparisons of four X vertices and four Y vertices with clipping boundaries. Input top, bottom.

right及び1eftは第11図a及び第11図すの
真理値表からとったものである。出力top visi
ble。
right and 1ef are taken from the truth tables in FIGS. 11a and 11s. output top visi
ble.

1)ottom visible 、 right v
isible及びlef tvisit)leが1(す
なわち、真)であるとき、4対の座標により規定される
対象物はクリップウィンドウの内側にある。5urro
und clipが1であるとき、対象物はクリップウ
ィンドウの外側にあるが、クリップウィンドウを取囲ん
でいる。hiddenは四辺形についてのみ適用でき、
4つの頂点全てが、皆、クリップウィンドウの右、左、
上又は下にあることを表わす。hidden  01(
BLIT SRC矩形を指す)と、hidden  2
3(BLIT DEST矩形を指す)は、BLITに関
して、同様の意味をもつ。
1) ottom visible, right v
When le is 1 (ie, true), the object defined by the four coordinate pairs is inside the clip window. 5urro
When und clip is 1, the object is outside the clip window, but surrounds the clip window. hidden can only be applied to quadrilaterals,
All four vertices are located on the right, left, and right side of the clip window.
Denotes being above or below. hidden 01(
BLIT SRC rectangle) and hidden 2
3 (pointing to the BLIT DEST rectangle) has a similar meaning with respect to BLIT.

第13図は、4つのX頂点及び4つのY頂点と、試験ウ
ィンドウの境界との比較を利用する真理値表を規定する
。出力r top wlthin test J及びr
 bottom within test Jは、真で
あるとき、対象物の縁部が試験ウィンドウの上の境界の
内側にあることと、下の境界の内側にあることをそれぞ
れ表わす。
FIG. 13 defines a truth table that utilizes comparisons of the four X vertices and four Y vertices with the boundaries of the test window. Output r top wlthin test J and r
bottom within test J, when true, indicates that the edge of the object is inside the top border and inside the bottom border of the test window, respectively.

第14図は、ページ境界越え及びクリッピングの対象で
ある画素の処理をできる限り少なくするために、信号b
lit r−to−1、blit up、drawr 
−to −1及びdraw up  を発生することに
より、対象物を描出すべき方向又はBLITを実行すべ
き方向を示す真理値表を規定する。これらの信号は、第
2図に示す信号Drawing Direc口Onを構
成する。本発明のこの面に関するさらに詳細な記載は、
年 月  日出願の同時係属出願−出願番号   −に
見られる。
FIG. 14 shows that the signal b
lit r-to-1, blit up, drawr
By generating -to -1 and draw up, we define a truth table indicating the direction in which the object should be drawn or BLIT should be performed. These signals constitute the signal Drawing Direction On shown in FIG. A more detailed description of this aspect of the invention can be found at
Seen in the co-pending application - Application No. - filed on

第10図から第14図の真理値表に基づいて、状態発生
論理51は第2図に示す信号HW、SW。
Based on the truth tables of FIGS. 10-14, state generation logic 51 generates signals HW, SW as shown in FIG.

HID及びVISを次のように発生する。HID and VIS are generated as follows.

四辺形の対象物の場合: HW = hidden又は 5urround clip又は (hiddenでなく且つ illegalでなく且つ 全ての頂点は1nside 2”であり且つ(全ての頂
点は1nside testか又は(線であり且つ少な
くとも1つの終端 点は1nside testである)又は(XO〜X3
は1nside testであり且つ上又は下の頂点は
1nside testである)又は rect)。
For quadrilateral objects: HW = hidden or 5urround clip or (not hidden and not illegal and all vertices are 1nside 2" and (all vertices are 1nside test or (line and at least 1 two terminal points are 1nside test) or (XO~X3
is 1nside test and the top or bottom vertex is 1nside test) or rect).

5W=HWにあらず HID = hidden VIS= hiddenにあらず BLITの場合: HW=hid  23又は (hid  01及びBLIT SRCCF(K =1
0)又は (hidolでなく且つ BLIT  SRCCHK=10であり且つhid  
23でなく且つ ソース矩形は1nside 2” であり且つ宛先矩形
は1nside 2”である)又は(BLIT ’SR
CCHK= 01且つhid  23 でなく且つ ソース矩形は1naide 2”であり且つ宛先矩形は
1nside 2”である)ここで、BLIT SRC
CHKは、ソース矩形とクリツピ/ノウイントウとの関
係を考慮することが望まれる場合に「10」にセットさ
れるCPUからの2ビツト直である。これは、本発明を
利用しうる様々な図形用ソフトウェアがSRC矩形及び
クリッピング境界の処理に関して一貫性をもたないため
に、必要なのである。・この理由により、好ましい実施
例は、ソフトウェア選択可能オプションとして、左側B
LIT  SRC矩形クリップ検査を備えている( B
LIT  SRCCHK= 01はSRCクリップ検査
をディスエーブルし、BLIT  SRCCHK=10
はSRCクリップ検査をイネーブルする)。
5W = not HW and HID = hidden VIS = not hidden but BLIT: HW = hid 23 or (hid 01 and BLIT SRCCF (K = 1
0) or (not hidol and BLIT SRCCHK=10 and hid
23 and the source rectangle is 1nside 2” and the destination rectangle is 1nside 2”) or (BLIT 'SR
CCHK = 01 and not hid 23 and source rectangle is 1naide 2" and destination rectangle is 1nside 2") where BLIT SRC
CHK is a 2-bit direct from the CPU that is set to ``10'' if it is desired to consider the relationship between the source rectangle and the clip/know window. This is necessary because the various graphics software that may utilize the present invention are inconsistent in their handling of SRC rectangles and clipping boundaries. For this reason, the preferred embodiment provides the left side B as a software selectable option.
Equipped with LIT SRC rectangular clip inspection (B
LIT SRCCHK=01 disables SRC clip checking, BLIT SRCCHK=10
(enables SRC clip checking).

5W=HWにあらず HID  =  hid   23 VIS=hid  23 にあらず 本発明の好ましい実施例はクロックサイクル2つ分の座
標ロード段階と、その後に続くクロックサイクル2つ分
の比較段階とを利用している。これら2つの段階は前述
のように重なシ合うことができるが、総待ち時間は3ク
ロツクサイクルであり、1つおきのクロックサイクルで
新たな入力を受信することができる(又は新たな結果を
利用することができる)(すなわち、スループットは2
クロツクサイクル)。上記の例では、座標ステージング
部15は好ましい実施例に与えられたできる限り速い速
度でデータを受信することもわかる。
5W = HW not HID = hid 23 VIS = hid 23 The preferred embodiment of the present invention utilizes a two clock cycle coordinate load step followed by a two clock cycle comparison step. ing. These two stages can overlap as described above, but the total latency is 3 clock cycles, and every other clock cycle can receive a new input (or new result). ) (i.e., the throughput is 2
clock cycle). In the above example, it can also be seen that the coordinate staging section 15 receives data at the fastest possible rate given the preferred embodiment.

しかしながら、上述の回路がそれより遅い(頻度の少な
い)どのようなデータ到着速度でも処理することは当業
者には明白なはずである。また、論理を追加しても構わ
ないならば、本発明の単純な拡張として、総待ち時間の
短縮とスループットの縮小が可能であることも自明であ
ろう。
However, it should be obvious to those skilled in the art that the circuit described above will handle any slower (less frequent) data arrival rate. It is also obvious that the total waiting time and throughput can be reduced as a simple extension of the present invention if additional logic is acceptable.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は、本発明によるワークステーション用図形サブ
システムの概観ブロック線図、第2図は、本発明による
図形サブシステムの座標ステージング部のブロック線図
、 第3図は、加算器31及びマルチプレクサ35の詳細な
ブロック線図、 第4図は、X/Y座標レジスタ37の詳細なブロック線
図、 第5図は、クリップ座標レジスタ39の詳細なブロック
線図、 第6図は、ラスターオフセットレジスタ41の詳細なブ
ロック線図、 第7図は、試験ウィンドウ制御論理45の詳細なブロッ
ク線図、 第8図は、比較論理/結果記憶装置47の詳細なブロッ
ク線図、 第9図は、ローディング制御状態機械35と、比較論理
/結果記憶装置47により実行される比較との相対タイ
ミングを示す表、 第10図は、XO座標に関する比較の結果金利用する真
理値表、 第11図a及び第11図すは、4つのX座標のそれぞれ
と、4つのY座標のそれぞれとの比較を利用する真理値
表、 第12図a〜第12図dは、4つのX頂点及び4つのY
頂点と、クリッピング境界との比較を利用する真理値表
、 第13図は、4つのX頂点及び4つのY頂点と、試験ウ
ィンドウ境界との比較を利用する真理値表、第14図は
、対象物を描出すべき又はblitを実行すべき方向を
示す真理値表である。 11・・・・バスインタフェース論理、13・・・・デ
ータ経路/メモリインタフェース、15・・・・座標ス
テージング部、17・・・・座標順序付は部、19・・
・・機能アドレッシングブロック、21・・・・マスク
発生ブロック、23・・・・線形アドレス発生器、31
・・・・加算器、33・・・・ローディング制御状態機
械、35マルチプレクサ、37・・・・X/Y座標レジ
スタ、39・・・・クリップ座標レジスタ、41・争・
・ラスターオフセットレジスタ、43e・番・指標論理
、45・・・・試験ウィンドウ制御論理、47・・・・
比較論理/結果記憶装置、49・・・・比較制御状態機
械、51・・・・状態発生論理。 特許出願人   サン・マイクロシステムズ・インコー
ホレーテッド代 理 人 山 川 政 樹 C巳Jへ/わ5 FIG、 1 FIG、 3 !1 Q)
FIG. 1 is an overview block diagram of a graphics subsystem for a workstation according to the present invention, FIG. 2 is a block diagram of a coordinate staging section of the graphics subsystem according to the present invention, and FIG. 3 is a block diagram of an adder 31 and a multiplexer. 35, FIG. 4 is a detailed block diagram of the X/Y coordinate register 37, FIG. 5 is a detailed block diagram of the clip coordinate register 39, and FIG. 6 is a raster offset register. 7 is a detailed block diagram of the test window control logic 45. FIG. 8 is a detailed block diagram of the comparison logic/result storage 47. FIG. 9 is a detailed block diagram of the test window control logic 45. A table showing the relative timing of the comparisons performed by the control state machine 35 and the comparison logic/result storage 47, FIG. Figure 11 is a truth table that uses comparisons between each of the four X coordinates and each of the four Y coordinates, and Figures 12a to 12d are the truth tables for the four
Figure 13 is a truth table that uses comparisons of vertices and clipping boundaries; Figure 13 is a truth table that uses comparisons of four X vertices and four Y vertices with test window boundaries; A truth table indicating the direction in which an object should be drawn or a blit should be performed. 11...Bus interface logic, 13...Data path/memory interface, 15...Coordinate staging section, 17...Coordinate ordering section, 19...
...Functional addressing block, 21...Mask generation block, 23...Linear address generator, 31
... Adder, 33 ... Loading control state machine, 35 Multiplexer, 37 ... X/Y coordinate register, 39 ... Clip coordinate register, 41.
- Raster offset register, 43e number index logic, 45... test window control logic, 47...
comparison logic/result storage, 49...comparison control state machine, 51...state generation logic; Patent Applicant: Sun Microsystems Incorporated Agent, Masaki Yamakawa, C.J./wa 5 FIG, 1 FIG, 3! 1 Q)

Claims (2)

【特許請求の範囲】[Claims] (1)描出されるべき四辺形か、移動されるべきブロッ
ク画像のいずれか一方の対象物であり、図形サブシステ
ムにより表示されるべきこの対象物の座標を複数のレジ
スタにロードする画像処理装置において、 複数の対象物座標レジスタに前記対象物の座標をロード
するローディング手段を具備し、 表示されるべき対象物は、その対象物を一義的に規定す
るために必要な最小限の数の座標により規定される装置
。
(1) An image processing device that loads the coordinates of the object, either a quadrilateral to be rendered or a block image to be moved, into a plurality of registers to be displayed by the graphics subsystem. , comprising loading means for loading the coordinates of the object into a plurality of object coordinate registers, and the object to be displayed has the minimum number of coordinates necessary to uniquely define the object. equipment defined by
(2)描出されるべき四辺形か、移動されるべきブロッ
ク画像のいずれか一方の対象物であり、図形サブシステ
ムにより表示されるべきこの対象物の対象物座標を複数
のレジスタにロードする装置で、所定の上クリップ座標
、下クリップ座標、右クリップ座標及び左クリップ座標
を伴なうクリップウィンドウと、前記上クリップ座標及
び下クリップ座標と、前記右クリップ座標及び左クリッ
プ座標とから所定のXオフセット及びYオフセットを伴
なう試験ウィンドウとを有し、前記対象物座標と前記ク
リップ座標と、前記オフセットとは、表示に先立つて対
象物のクリッピングを実行するための計算に使用される
ような画像処理装置において、 i)複数の対象物座標レジスタに前記対象物座標をロー
ドし、ii)複数のクリップ座標レジスタに前記クリッ
プ座標をロードし、且つiii)複数のオフセットレジ
スタに前記所定のオフセットをロードするローディング
手段を具備し、 表示されるべき対象物は、その対象物を一義的に規定す
るために必要な最小限の数の座標により規定される装置
。
(2) an object, either a quadrilateral to be rendered or a block image to be moved, and a device for loading into a plurality of registers the object coordinates of this object to be displayed by the graphics subsystem; Then, a predetermined a test window with an offset and a Y offset, the object coordinates and the clip coordinates, the offset being used in calculations to perform object clipping prior to display. In the image processing device, i) loading the object coordinates into a plurality of object coordinate registers, ii) loading the clip coordinates into a plurality of clip coordinate registers, and iii) loading the predetermined offset into a plurality of offset registers. A device that is equipped with a loading means for loading, and in which the object to be displayed is defined by the minimum number of coordinates necessary to uniquely define the object.
JP2006989A 1989-01-13 1990-01-16 Image processor Pending JPH02228783A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US297,590 1981-08-31
US29759089A 1989-01-13 1989-01-13

Publications (1)

Publication Number Publication Date
JPH02228783A true JPH02228783A (en) 1990-09-11

Family

ID=23146948

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006989A Pending JPH02228783A (en) 1989-01-13 1990-01-16 Image processor

Country Status (5)

Country Link
JP (1) JPH02228783A (en)
AU (1) AU625400B2 (en)
CA (1) CA1317042C (en)
GB (1) GB2227146B (en)
HK (1) HK48794A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2642070B2 (en) * 1994-11-07 1997-08-20 インターナショナル・ビジネス・マシーンズ・コーポレイション Method and system for generating quadrilateral mesh

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4797852A (en) * 1986-02-03 1989-01-10 Intel Corporation Block shifter for graphics processor
JPH0814842B2 (en) * 1986-03-25 1996-02-14 インタ−ナシヨナル ビジネス マシ−ンズ コ−ポレ−シヨン Image processing method and apparatus
GB2215951A (en) * 1988-03-23 1989-09-27 Benchmark Technologies Performing raster operations on patch formatted pixel data

Also Published As

Publication number Publication date
HK48794A (en) 1994-05-27
GB2227146A (en) 1990-07-18
AU625400B2 (en) 1992-07-09
GB2227146B (en) 1993-08-18
GB8920509D0 (en) 1989-10-25
AU3939789A (en) 1990-07-19
CA1317042C (en) 1993-04-27

Similar Documents

Publication Publication Date Title
JP3286331B2 (en) Block texture complex clip mask processor
US5185856A (en) Arithmetic and logic processing unit for computer graphics system
US5321810A (en) Address method for computer graphics system
US5572235A (en) Method and apparatus for processing image data
US5315698A (en) Method and apparatus for varying command length in a computer graphics system
US5315696A (en) Graphics command processing method in a computer graphics system
JPS63198174A (en) Graphic processor
JP2559991B2 (en) Apparatus and method for processing pixel data
JP3191159B2 (en) Apparatus for processing graphic information
US5297240A (en) Hardware implementation of clipping and intercoordinate comparison logic
US5142668A (en) Apparatus and method for loading coordinate registers for use with a graphics subsystem utilizing an index register
JP3106246B2 (en) Image processing device
CA1316263C (en) Apparatus and method for using a test window in a graphics subsystem which incorporates hardware to perform clipping of images
JP2000242253A (en) Two-dimensional image processor
CA1320584C (en) Hardware implementation of clipping and inter- coordinate comparison logic
JP3027777B2 (en) Drawing apparatus and drawing method in computer graphics
JP3969017B2 (en) Image data transfer apparatus and image display processing system
GB2227146A (en) Loading coordinate registers for use with a graphics sub-system
KR100252648B1 (en) Graphics system and method of graphics drawing
JP2656754B2 (en) Image data processing apparatus and system using the same
JPH01177685A (en) Rendering processor and screen display device
JP4048731B2 (en) Image data transfer apparatus and image display processing system
JPS62204389A (en) Clipping/shielding method by any polygons
JP2624667B2 (en) Graphic processing unit
JPS63304293A (en) Display memory control circuit