JP4533019B2 - Graphic object processing apparatus and graphic object processing method - Google Patents

Graphic object processing apparatus and graphic object processing method Download PDF

Info

Publication number
JP4533019B2
JP4533019B2 JP2004185239A JP2004185239A JP4533019B2 JP 4533019 B2 JP4533019 B2 JP 4533019B2 JP 2004185239 A JP2004185239 A JP 2004185239A JP 2004185239 A JP2004185239 A JP 2004185239A JP 4533019 B2 JP4533019 B2 JP 4533019B2
Authority
JP
Japan
Prior art keywords
bus
arbitration
graphic object
bus access
processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2004185239A
Other languages
Japanese (ja)
Other versions
JP2006011639A5 (en
JP2006011639A (en
Inventor
孝幸 長島
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.)
Canon Inc
Original Assignee
Canon 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 Canon Inc filed Critical Canon Inc
Priority to JP2004185239A priority Critical patent/JP4533019B2/en
Publication of JP2006011639A publication Critical patent/JP2006011639A/en
Publication of JP2006011639A5 publication Critical patent/JP2006011639A5/ja
Application granted granted Critical
Publication of JP4533019B2 publication Critical patent/JP4533019B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Bus Control (AREA)
  • Image Generation (AREA)

Description

本発明は、オブジェクト・グラフィック要素のラスタ画素画像へのレンダリング装置に関し、具体的には、レンダリング処理の一部としての画素データのフレーム記憶装置またはライン記憶装置を使用しない、そのようなオブジェクト・グラフィック要素の画素画像データへの効率的なレンダリングを行うグラフィックオブジェクト処理装置及びグラフィックオブジェクト処理方法(レンダリング装置)に関する。   The present invention relates to an apparatus for rendering object graphic elements into a raster pixel image, and in particular, such object graphics that do not use frame or line storage of pixel data as part of the rendering process. The present invention relates to a graphic object processing apparatus and a graphic object processing method (rendering apparatus) that perform efficient rendering on pixel image data of elements.

ほとんどのオブジェクト・ベース・グラフィックス・システムでは、ページまたは画面の画素ベース画像を保持するためにフレーム・ストアまたはページ・バッファが使用される。通常、グラフィック・オブジェクトの輪郭は、計算され、塗り潰され、フレーム・ストアに書き込まれる。二次元グラフィックスの場合、他のオブジェクトの手前にあるオブジェクトは、単純に背景オブジェクトの書込み後にフレーム・ストアに書き込まれ、これによって、画素単位で背景を置換する。これは、当技術分野では、「ペインタのアルゴリズム(Painter's algorithm)」として一般に知られている。オブジェクトは、最も奥のオブジェクトから最も手前のオブジェクトという優先順位で検討され、通常は、各オブジェクトが、スキャン・ラインの順序でラスタ化され、画素が、各スキャン・ラインに沿ったシーケンシャルな並びでフレーム・ストアに書き込まれる。   Most object-based graphics systems use a frame store or page buffer to hold a pixel-based image of the page or screen. Typically, the outline of a graphic object is calculated, filled and written to the frame store. In the case of two-dimensional graphics, the object in front of other objects is simply written to the frame store after the background object is written, thereby replacing the background on a pixel-by-pixel basis. This is commonly known in the art as the “Painter's algorithm”. Objects are considered in order of priority, from the deepest object to the foremost object, usually with each object rasterized in scan line order, with pixels in a sequential sequence along each scan line. Written to the frame store.

この技法には、基本的に2つの問題がある。第1の問題は、フレーム・ストア内のすべての画素への高速なランダム・アクセスが必要であることである。これは、新たに検討されるオブジェクトのそれぞれが、フレーム・ストア内のどの画素にも影響する可能性があるからである。このため、フレーム・ストアは、通常は半導体のランダム・アクセス・メモリ(RAM)内に保持される。高解像度カラー・プリンタの場合、必要なRAMの量は非常に多くなり、通常は100Mバイトを超えるが、これは、コストがかかり、高速での動作が困難である。第2の問題は、多数の画素がペイント(レンダリング)され、時間的に後のオブジェクトによって上塗り(再レンダリング)されることである。時間的に前の オブジェクトによる画素のペイントは、時間の浪費になる。大量のフレーム・ストアの問題を克服するための方法の1つが、「バンディング(banding)」の使用である。バンディングを使用する時には、一時にフレーム・ストアの一部だけがメモリ内に存在する。描画されるオブジェクトのすべてが、「表示リスト・ストア」に保存される。画像全体は上記と同様にレンダリングされるが、存在するフレーム・ストアの部分の外側をペイント(レンダリング)しようとする画素ペイント(レンダリング)動作は、「クリップ」アウトされる。オブジェクトのすべてが描画された後に、フレーム・ストアの部分を、プリンタ(または他の位置)に送り、フレーム・ストアの別の部分を選択し、この処理を繰り返す。この技法には、ペナルティが伴う。たとえば、描画されるオブジェクトは検討され、何度も(バンドごとに1回)再検討されなければならない。バンドの数が増えるにつれて、レンダリングが必要なオブジェクトの検査が繰り返されるし回数も増える。バンディングの技法は、上塗りのコストという問題を解決しない。   There are basically two problems with this technique. The first problem is that fast random access to all pixels in the frame store is required. This is because each newly considered object can affect any pixel in the frame store. For this reason, the frame store is usually held in a semiconductor random access memory (RAM). For high resolution color printers, the amount of RAM required is very large, typically over 100 Mbytes, which is costly and difficult to operate at high speed. The second problem is that many pixels are painted (rendered) and overpainted (re-rendered) by objects later in time. Painting pixels with the previous object in time is time consuming. One way to overcome the large frame store problem is the use of "banding". When using banding, only a portion of the frame store is in memory at a time. All of the objects to be drawn are saved in the “display list store”. The entire image is rendered in the same manner as above, but pixel painting (rendering) operations that attempt to paint (render) outside the existing portion of the frame store are “clipped” out. After all of the objects have been drawn, the portion of the frame store is sent to the printer (or other location), another portion of the frame store is selected, and this process is repeated. This technique comes with a penalty. For example, the object being drawn must be reviewed and re-examined many times (once per band). As the number of bands increases, the inspection of objects that need to be rendered is repeated and the number of times increases. Banding techniques do not solve the problem of overcoating costs.

いくつかの他のグラフィック・システムでは、スキャン・ラインの順で画像が検討される。やはり、描画されるオブジェクトのすべてが、表示リスト・ストアに保存される。各スキャン・ライン上で、そのスキャン・ラインと交差するオブジェクトが優先順位の順でオブジェクトごとに検討され、オブジェクトの辺の交差点の間の画素のスパンが、ライン・ストアにセットされる。この技法も、大量のフレーム・ストアの問題を克服するが、やはり上塗りの問題は依然として存在する。   In some other graphics systems, the images are examined in scan line order. Again, all of the drawn objects are saved in the display list store. On each scan line, the objects that intersect that scan line are considered for each object in order of priority, and the span of pixels between the intersections of the object's sides is set in the line store. Although this technique also overcomes the problem of large frame stores, there is still an overcoat problem.

これらのほかに、大きいフレーム・ストアの問題と上塗りの問題の両方を解決する技法がある。そのような技法の1つでは、各スキャン・ラインが順番に作られる。やはり、描画されるオブジェクトのすべてが、表示リスト・ストアに保存される。各スキャン・ラインでは、そのスキャン・ラインと交差するオブジェクトの辺が、スキャン・ラインとの交差の座標の昇順で保持される。これらの交差の点または辺の交点が、順番に検討され、アクティブ・フラグの配列のトグルに使用される。そのスキャン・ライン上での対象となるオブジェクト優先順位ごとに1つのアクティブ・フラグがある。検討される辺の対のそれぞれの間で、最初の辺と次の辺の間にある各画素の色データが、アクティブ・フラグに対する優先順位エンコーダを使用して、どの優先順位が最も上にあるかを判定すること、および2つの辺の間のスパンの画素に関するその優先順位に関連する色を使用することによって生成される。次のスキャン・ラインに備えて、各辺の交差の座標が、各辺の性質に応じて更新される。この更新の結果として誤ってソートされた状態になった隣接する辺は、交換される。新しい辺も、辺のリストに合併される。   Other than these, there are techniques that solve both the large frame store problem and the overcoat problem. In one such technique, each scan line is created in turn. Again, all of the drawn objects are saved in the display list store. In each scan line, the side of the object that intersects the scan line is held in ascending order of the coordinates of the intersection with the scan line. These intersection points or edge intersections are considered in turn and used to toggle the array of active flags. There is one active flag for each object priority of interest on that scan line. Between each of the edge pairs considered, the color data for each pixel between the first edge and the next edge is at the highest priority, using the priority encoder for the active flag And using the color associated with that priority for the pixels of the span between the two sides. In preparation for the next scan line, the coordinates of the intersection of each side are updated according to the nature of each side. Adjacent edges that are missorted as a result of this update are swapped. New sides are also merged into the list of sides.

この技法は、フレーム・ストアまたはライン・ストアがなく、上塗りがなく、位数N倍(このNは優先順位の数)ではなく定数位数の時間でオブジェクト優先順位が処理されるという大きい長所を有する。ただし、この技法は既存のグラフィック記述言語が必要とする多数の機能を実施できないので、その使用が極度に制限されている。   This technique has the great advantage that there is no frame store or line store, no overcoat, and object priority is processed in constant order times rather than N times the order (where N is the number of priorities). Have. However, this technique is extremely limited in its use because it cannot perform the many functions required by existing graphic description languages.

この技法に伴う1つ又は複数の欠陥を、実質的に克服するか、少なくとも改善する技法として特開2000−149035(P2000−149035A)「高速ラスタ形式レンダリングのためのグラフィックオブジェクト処理方法および装置」(キヤノン株式会社)が提案されている。   JP 2000-149035 (P2000-149035A) “Graphic Object Processing Method and Apparatus for High-Speed Raster Format Rendering” is a technique for substantially overcoming or at least improving one or more deficiencies associated with this technique. Canon Inc.) has been proposed.

この技法においても各スキャン・ラインが順番に作られる。まず描画される全てのオブジェクトが、それぞれのオブジェクトの描画が開始されるスキャン・ライン順にソートされて表示リスト・ストアに保存される。各スキャン・ラインでは、そのスキャン・ラインと交差するオブジェクトの辺が交差座標の昇順に保持され、これら辺交差の隣接する対のそれぞれについて、対応するオブジェクトに関連する情報を検査して、辺交差の対応する対の間の画素位置のスパンに関するアクティブ・オブジェクトの組を決定し、画素位置のスパンのそれぞれについて、アクティブ・オブジェクトの対応する組を使用して、スパン内の位置のそれぞれの値を決定する。
特開平2000−149035号公報
In this technique, each scan line is created in turn. First, all objects to be drawn are sorted and stored in the display list store in the order of scan lines where drawing of each object is started. For each scan line, the sides of the object that intersect the scan line are maintained in ascending order of intersection coordinates, and for each adjacent pair of these side intersections, the information associated with the corresponding object is examined, and the side intersection Determine a set of active objects for a span of pixel positions between corresponding pairs of pixels, and for each of the spans of pixel positions, use the corresponding set of active objects to determine the value of each position in the span. decide.
Japanese Unexamined Patent Publication No. 2000-149035

しかしながら、前述の技術を実施するにあたっては辺処理、アクティブ・オブジェクトの決定、スパン内の画素値の決定および複数アクティブ・オブジェクトの画素値から唯一の画素値の決定のそれぞれを専用ハードウェアによって実現し、それらのハードウェア接続してパイプラインを構成することによって実現するか、または全処理をソフトウェアによってホスト上に実現していた。この場合、ハードウェアによる実装においては、与えられた画素シーケンシャル・レンダリング装置のハードウェアによってある画像を描画する場合に、画像の特徴によっては任意のモジュールまたは機能に処理が集中し、パイプラインストールが発生し、処理速度が律速する可能性があった。   However, in implementing the above technique, edge processing, active object determination, determination of pixel values within a span, and determination of a single pixel value from the pixel values of multiple active objects are realized by dedicated hardware. It is realized by connecting the hardware to form a pipeline, or the entire processing is realized on the host by software. In this case, in hardware implementation, when a certain image is rendered by the hardware of a given pixel sequential rendering device, processing is concentrated on an arbitrary module or function depending on the characteristics of the image, and pipeline installation occurs. However, the processing speed may be limited.

本発明は前述のような問題点を解決するためになされたものであり、パイプラインを構成するそれぞれのモジュールによるバスアクセス時の調停アルゴリズムを前記各モジュール間の負荷関係に応じて変更することにより、ストールを回避または軽減するか、またはストールの影響を軽減することができるグラフィックオブジェクト処理装置(より具体的には、高速な画素シーケンシャル・レンダリング装置)及びグラフィックオブジェクト処理方法を提供する。   The present invention has been made to solve the above-described problems, and by changing the arbitration algorithm at the time of bus access by each module constituting the pipeline according to the load relationship between the modules. A graphic object processing apparatus (more specifically, a high-speed pixel sequential rendering apparatus) and a graphic object processing method capable of avoiding or reducing a stall or reducing the influence of the stall are provided.

上記課題を解決するために、本発明によるグラフィックオブジェクト処理装置は、ラスター画素イメージを形成するべくグラフィックオブジェクトの任意の属性に関して予め指定された処理を行うグラフィックオブジェクト処理装置であって、前記グラフィックオブジェクトの任意の属性に関する複数の処理を行う複数の処理手段と、前記複数の処理手段のそれぞれからのバスアクセスを調停するバスアクセス調停手段と、を備え、前記バスアクセス調停手段は、前記複数の処理手段からのバスアクセスを調停結果に基づいてシステムバスに転送するバスインタフェース手段と、前記複数の処理手段それぞれの負荷状態を検出する状態検出手段と、前記状態検出手段による検出結果に基づいてバス調停アルゴリズムを実行し、前記バスインタフェース手段を制御する制御手段とを有し、前記バスアクセス調停手段は、さらに、前記複数の処理手段からのそれぞれのバスアクセスの要求回数をカウントするリクエストカウント手段と、前記リクエストカウント手段の値を予め指定された方法によってデコードしてセレクト信号を生成するデコード手段とを有し、前記制御手段は、前記デコード手段によって生成されるセレクト信号に基づいて前記バス調停アルゴリズムを選択・実行することを特徴とする。 In order to solve the above-described problem, a graphic object processing apparatus according to the present invention is a graphic object processing apparatus that performs a process designated in advance with respect to an arbitrary attribute of a graphic object to form a raster pixel image. A plurality of processing means for performing a plurality of processes relating to an arbitrary attribute; and a bus access arbitration means for arbitrating bus access from each of the plurality of processing means, wherein the bus access arbitration means includes the plurality of processing means. Bus interface means for transferring the bus access to the system bus based on the arbitration result, state detection means for detecting the load state of each of the plurality of processing means, and a bus arbitration algorithm based on the detection result by the state detection means And execute the bus interface Have a control means for controlling the Esu means, said bus access arbitration means further includes a request counting means for counting the number of requests for each of the bus access from the plurality of processing means, the value of the request count means Decoding means for generating a select signal by decoding according to a method specified in advance, wherein the control means selects and executes the bus arbitration algorithm based on the select signal generated by the decode means And

また、本発明によるグラフィックオブジェクト処理方法は、ラスター画素イメージを形成するべくグラフィックオブジェクトの任意の属性に関して予め指定された処理を行うグラフィックオブジェクト処理方法であって、前記グラフィックオブジェクトの任意の属性に関する複数の処理を行う複数の処理手段のそれぞれからのバスアクセスを調停するバスアクセス調停工程と、を備え、前記バスアクセス調停工程は、前記複数の処理手段からのバスアクセスを調停結果に基づいてバスインタフェース手段を介してシステムバスに転送する転送工程と、前記複数の処理手段それぞれの負荷状態を検出する状態検出工程と、前記状態検出工程による検出結果に基づいてバス調停アルゴリズムを実行し、前記バスインタフェース手段を制御する制御工程とを有し、前記バスアクセス調停工程は、さらに、前記複数の処理手段からのそれぞれのバスアクセスの要求回数をリクエストカウンタによってカウントするリクエストカウント工程と、前記カウント工程によって得られたカウント値を予め指定された方法によってデコードしてセレクト信号を生成するデコード工程とを有し、前記制御工程は、前記デコード工程によって生成されるセレクト信号に基づいて前記バス調停アルゴリズムを選択・実行することを特徴とする。 A graphic object processing method according to the present invention is a graphic object processing method for performing a process designated in advance with respect to an arbitrary attribute of a graphic object so as to form a raster pixel image. A bus access arbitration step for arbitrating bus access from each of a plurality of processing means for performing processing, wherein the bus access arbitration step determines bus access from the plurality of processing means based on the arbitration result. A transfer step of transferring to the system bus via the state, a state detection step of detecting the load state of each of the plurality of processing means, a bus arbitration algorithm based on a detection result of the state detection step, and the bus interface means Control to control Possess a degree, the bus access arbitration step further, a request count step of counting by the respective bus access request count request counter from said plurality of processing means, the count value obtained by said counting step And a decoding step of generating a select signal by decoding by a predesignated method, wherein the control step selects and executes the bus arbitration algorithm based on the select signal generated by the decoding step. And

さらなる本発明の特徴は、以下本発明を実施するための最良の形態および添付図面によって明らかになるものである。   Further features of the present invention will become apparent from the best mode for carrying out the present invention and the accompanying drawings.

本発明のグラフィックオブジェクト装置及び方法によれば、パイプラインを構成するそれぞれのモジュールによるバスアクセス時の調停アルゴリズムを各モジュール間の負荷関係に応じて変更することにより、ストールを回避または軽減するか、またはストールの影響を軽減させることができるようになる。   According to the graphic object device and method of the present invention, the arbitration algorithm at the time of bus access by each module constituting the pipeline is changed according to the load relationship between the modules, thereby avoiding or reducing the stall, Or the influence of a stall can be reduced.

以下で本発明の装置及びその動作について詳細に説明する。   The apparatus of the present invention and its operation will be described in detail below.

<第1の実施形態>
図1は、コンピュータ・グラフィック・オブジェクト画像のレンダリングおよびプレゼンテーションのために構成されたコンピュータ・システム10を概略的に示す図である。このシステムには、システム・ランダム・アクセス・メモリ(RAM)12に関連するホスト・プロセッサ11が含まれ、システムRAM12には、不揮発性のハード・ディスク・ドライブまたは類似の装置と、揮発性の半導体RAMが含まれている。システム10には、システム読取専用メモリ(ROM)13も含まれ、システムROM13は、通常は半導体ROMを基礎とし、多くの場合に、コンパクト・ディスク装置(CD−ROM)によって補足することができる。システム10には、ラスタ式に動作するビデオ表示装置(VDU)またはプリンタなどの、画像を表示するための手段14も組み込むことができる。
<First Embodiment>
FIG. 1 schematically illustrates a computer system 10 configured for rendering and presentation of computer graphic object images. The system includes a host processor 11 associated with a system random access memory (RAM) 12, which includes a non-volatile hard disk drive or similar device and a volatile semiconductor. RAM is included. The system 10 also includes a system read only memory (ROM) 13, which is usually based on a semiconductor ROM and can often be supplemented by a compact disk device (CD-ROM). System 10 may also incorporate means 14 for displaying images, such as a video display unit (VDU) or printer operating in a raster fashion.

システム10に関して上で説明した構成要素は、バス・システム15を介して相互接続され、IBM PC/ATタイプのパーソナル・コンピュータおよびそれから発展した構成、Sun Sparcstationsおよび類似物など、当技術分野で周知のコンピュータ・システムの通常動作モードで動作可能である。   The components described above with respect to system 10 are interconnected via bus system 15 and are well known in the art, such as IBM PC / AT type personal computers and configurations developed therefrom, Sun Sparcstations and the like. It can operate in the normal operating mode of the computer system.

また図1に図示されているように、画素シーケンシャル・レンダリング装置16は、バス15に接続され、システム10からバス15を介して命令およびデータを供給されるグラフィック・オブジェクト・ベースの記述から導出される画素ベースの画像のシーケンシャル・レンダリングのために構成される。画素シーケンシャル・レンダリング装置16は、オブジェクト記述のレンダリングのためにシステムRAM12を使用することができるが、専用のローカルメモリを実装・使用してもよい。   As also shown in FIG. 1, the pixel sequential rendering device 16 is derived from a graphic object-based description connected to the bus 15 and supplied with instructions and data from the system 10 via the bus 15. Configured for sequential rendering of pixel-based images. The pixel sequential rendering device 16 can use the system RAM 12 for rendering the object description, but may also implement and use a dedicated local memory.

図2は基本的な機能データ流れを示す図である。図2の機能流れ図は、オブジェクト・グラフィック記述21から始まる。このオブジェクト・グラフィック記述21は、ホスト・プロセッサ11によって生成されるか、システムRAM12内に記憶されるかシステムROM13によって提供され、グラフィック・オブジェクトのパラメータを記述するのに使用され、そこから画素ベース画像をレンダリングするために、画素シーケンシャル・レンダリング装置16によって解釈され得る。たとえば、オブジェクト・グラフィック記述21には、ディスプレイ上の1点から別の点まで横断する直線の辺(単純ベクトル)または、直交する線を含む複数の辺によって二次元オブジェクトが定義される直交辺フォーマットを含むいくつかのフォーマットで辺を有するオブジェクトを組み込むことができる。これ以外に、連続曲線によってオブジェクトが定義されるフォーマットも、適当であり、これらには、乗算を実行する必要なしに二次曲線を単一の出力空間内でレンダリングできるようにするいくつかのパラメータによって単一の曲線を記述できる二次多項式の線分を含めることができる。三次スプラインや類似物などのそれ以外のデータ・フォーマットを使用することもできる。オブジェクトには、多数の異なる辺タイプの混合物を含めることができる。通常、すべてのフォーマットに共通するのは、それぞれの線(直線であれ曲線であれ)の始点と終点の識別子であり、通常は、これらは、スキャン・ライン番号によって識別され、したがって、その曲線をレンダリングすることのできる特定の出力空間が定義される。   FIG. 2 is a diagram showing a basic function data flow. The functional flow diagram of FIG. 2 begins with an object graphic description 21. This object graphic description 21 is generated by the host processor 11, stored in the system RAM 12, or provided by the system ROM 13, and is used to describe the parameters of the graphic object from which the pixel-based image is derived. Can be interpreted by the pixel sequential rendering device 16. For example, the object graphic description 21 includes an orthogonal side format in which a two-dimensional object is defined by a side of a straight line (simple vector) crossing from one point on the display to another point or a plurality of sides including orthogonal lines. Objects with edges can be incorporated in several formats including: Apart from this, formats in which objects are defined by continuous curves are also suitable, including several parameters that allow a quadratic curve to be rendered in a single output space without having to perform multiplication. Can contain a quadratic polynomial line that can describe a single curve. Other data formats such as cubic splines and the like can be used. An object can contain a mixture of many different edge types. Usually common to all formats is the identifier of the start and end of each line (whether straight or curved), which are usually identified by a scan line number, and hence the curve A specific output space that can be rendered is defined.

レンダリングされるグラフィック・オブジェクトの記述に必要なデータを識別したので、グラフィック・システム10は、表示リスト生成ステップ22を実行する。   Having identified the data necessary to describe the graphic object to be rendered, the graphic system 10 performs a display list generation step 22.

表示リスト生成22は、取り付けられたROM13およびRAM12を有するホスト・プロセッサ11上で実行されるソフトウェア・モジュールとして実施されることが好ましい。表示リスト生成22では、周知のグラフィック記述言語、グラフィック・ライブラリ呼出しまたは他のアプリケーション固有フォーマットのうちの1つまたは複数で表現されたオブジェクト・グラフィック記述を表示リストに変換する。   The display list generator 22 is preferably implemented as a software module that runs on the host processor 11 having the ROM 13 and RAM 12 attached. The display list generator 22 converts an object graphic description expressed in one or more of a well-known graphic description language, graphic library call or other application specific format into a display list.

表示リストは、通常は、表示リスト・ストア23に書き込まれる。表示リスト・ストア23は、一般にRAM12内で形成されるが、その代わりに画素シーケンシャル・レンダリング装置16がローカルに有するメモリ内で形成することもできる。表示リスト・ストア23には、複数の構成要素を含めることができ、その1つは命令ストリームであり、もう1つは辺情報であり、ラスタ画像画素データを含めることができる。   The display list is normally written in the display list store 23. The display list store 23 is generally formed in the RAM 12, but may instead be formed in a memory that the pixel sequential rendering device 16 has locally. The display list store 23 can include a plurality of components, one of which is an instruction stream and the other is edge information, which can include raster image pixel data.

命令ストリームには、特定の画像内で所望される特定のグラフィック・オブジェクトをレンダリングするために画素シーケンシャル・レンダリング装置16によって読み取られる、命令として解釈可能なコードが含まれる。   The instruction stream includes code that can be interpreted as instructions that are read by the pixel sequential rendering device 16 to render the particular graphic object desired in the particular image.

表示リスト・ストア23は、画素シーケンシャル・レンダリング装置16によって読み取られる。画素シーケンシャル・レンダリング装置16は、表示リストをラスタ画素のストリームに変換し、このストリームは、たとえばプリンタ、ディスプレイまたはメモリ・ストアなどの別の装置に転送することができる。   The display list store 23 is read by the pixel sequential rendering device 16. The pixel sequential rendering device 16 converts the display list into a stream of raster pixels, which can be transferred to another device such as a printer, display or memory store, for example.

図3はオブジェクト・グラフィック記述21から得られた表示リストを処理して画素を生成する画素シーケンシャル・レンダリング装置の構成図である。   FIG. 3 is a configuration diagram of a pixel sequential rendering apparatus that processes a display list obtained from the object graphic description 21 to generate pixels.

表示リストにはオリジナルのオブジェクト・グラフィック記述に含まれる描画オブジェクトが副走査線方向(y座標)の昇順にソートされて記録されており、その他に各オブジェクトの辺情報は辺テーブルとして、各辺と対応づけられたレベル情報と他のレベルの同一座標の画素との関係(演算方法)がレベルテーブルとして、さらにオブジェクト内部の色を決定するための情報がフィルテーブルとして含まれる。また、オブジェクトの色を決定するための情報としては、色を生成するためのデータや処理が指定されており、ビットマップの読込みや圧縮画像を伸張し、その結果から任意の画素を取り込むことを指定している場合もある。   In the display list, the drawing objects included in the original object / graphic description are sorted and recorded in ascending order of the sub-scanning line direction (y-coordinate). In addition, the side information of each object is stored as a side table. The relationship (calculation method) between the correlated level information and pixels at the same coordinates on other levels is included as a level table, and information for determining the color inside the object is included as a fill table. In addition, as data for determining the color of an object, data and processing for generating a color are specified, and reading a bitmap or decompressing a compressed image, and capturing an arbitrary pixel from the result. It may be specified.

図3において16は画素シーケンシャル・レンダリング装置であり後述する31〜38のモジュールから構成されている(そのうち31〜36をパイプラインモジュールと呼ぶものとする)。31は命令実行部であり、システムバスにアクセスして該表示リストを読み込み、命令ストリームを解釈して、後述の32〜35からなる後段のパイプラインモジュールに対する内部コマンドを発行する。32は辺(エッジ)処理部であり、命令実行部31によって発行された内部コマンドに従って該表示リストに含まれる辺情報を読み取り、走査線単位で描画オブジェクトの辺情報を抽出し、該辺情報を走査線方向(x座標)の昇順にソートした後、後述するパイプライン後段に位置するレベル優先度決定部33に該辺情報をメッセージとして転送する。   In FIG. 3, reference numeral 16 denotes a pixel sequential rendering apparatus, which is composed of modules 31 to 38 described later (among these, 31 to 36 are referred to as pipeline modules). An instruction execution unit 31 accesses the system bus, reads the display list, interprets the instruction stream, and issues an internal command to a later-stage pipeline module including 32-35 described later. Reference numeral 32 denotes a side (edge) processing unit, which reads side information included in the display list according to an internal command issued by the instruction execution unit 31, extracts side information of a drawing object in units of scanning lines, and stores the side information. After sorting in ascending order of the scanning line direction (x coordinate), the edge information is transferred as a message to a level priority determination unit 33 located in a later stage of the pipeline, which will be described later.

レベル優先度決定部33は、命令実行部31によって発行された命令に従って該表示リストに含まれるレベルテーブルと辺処理部32によって生成された該辺情報とを読み込み、各走査線毎に各レベルの優先度と活性化された(描画に影響する)画素範囲を決定し、各走査線の該活性化された画素範囲の情報を優先度順にソートして他のレベルの画素との関係情報とともに画素範囲情報とし、後述するパイプライン後段に位置する34の塗りつぶしデータ決定部に該画素範囲情報を転送する。   The level priority determination unit 33 reads the level table included in the display list and the side information generated by the side processing unit 32 in accordance with the instruction issued by the instruction execution unit 31, and sets each level for each scanning line. Determine the priority and the activated pixel range (influencing drawing), sort the information of the activated pixel range of each scanning line in order of priority, and pixel information together with the relationship information with other level pixels As the range information, the pixel range information is transferred to 34 fill data determination units located in the later stage of the pipeline.

34は塗りつぶしデータ決定部であり、命令実行部31によって発行された内部コマンドに従って該表示リストに含まれるフィルテーブルとレベル優先度決定部33によって生成された該画素範囲情報とを読み込み、レベル毎に活性化された画素の色を決定し、後述するパイプライン後段に位置する色合成部35にこの活性化された画素の色情報を33から転送されてきた画素範囲情報とともに転送する。   Reference numeral 34 denotes a fill data determination unit that reads the fill table included in the display list and the pixel range information generated by the level priority determination unit 33 according to an internal command issued by the instruction execution unit 31, and for each level. The color of the activated pixel is determined, and the color information of the activated pixel is transferred together with the pixel range information transferred from 33 to the color synthesis unit 35 located in the later stage of the pipeline, which will be described later.

35は色合成部であり、命令実行部31によって発行された内部コマンドに従ってレベル優先度決定部33によって生成された各レベルの画素範囲情報と塗りつぶしデータ決定部34によって決定された画素の色情報をもとに画素単位に色を決定する演算を実行し、画素の最終的な色を生成する。   Reference numeral 35 denotes a color synthesizing unit, which displays the pixel range information of each level generated by the level priority determination unit 33 according to the internal command issued by the instruction execution unit 31 and the color information of the pixels determined by the fill data determination unit 34. An operation for determining a color for each pixel is executed to generate a final color of the pixel.

36は画素出力部であり、色合成部35によって生成された最終画素を接続された外部機器に送出する。37は互換性保証部であり、該表示リストに前述の辺処理部32、レベル優先度決定部33、塗りつぶしデータ決定部34および色合成部35に実装されていない機能を要する内部コマンドが命令実行部31によって発行されたときに、該内部コマンドをソフトウェアの介在によって処理する。   Reference numeral 36 denotes a pixel output unit that sends the final pixel generated by the color composition unit 35 to a connected external device. Reference numeral 37 denotes a compatibility guarantee unit. In the display list, an internal command that requires a function that is not implemented in the side processing unit 32, the level priority determination unit 33, the fill data determination unit 34, and the color synthesis unit 35 is executed. When issued by the unit 31, the internal command is processed by software intervention.

38はバスアクセス調停部であり、辺処理部32、レベル優先度決定部33、塗りつぶしデータ決定部34、色合成部35および互換性保証部37によるシステムバスへのアクセスに対する調停、順序付けを行いシステムバスへアクセスを中継する。   Reference numeral 38 denotes a bus access arbitration unit, which performs mediation and ordering for access to the system bus by the side processing unit 32, the level priority determination unit 33, the fill data determination unit 34, the color composition unit 35, and the compatibility guarantee unit 37. Relay access to the bus.

図4は画素シーケンシャル・レンダリング装置によるメモリアクセスを示した図である。図4において231は表示リスト中の命令ストリームであり、232は表示リスト中の辺情報であり、233は表示リスト中の塗りつぶし情報である。40は一時データストアであり、ローカルメモリまたはシステムRAM12に配置されるかまたはローカルメモリとシステムRAM12とに分散して配置される。41は一時データであるところの辺情報ストアであり、42は一時データであるところのレベルテーブルであり、43は一時データであるところの塗りつぶし情報テーブルであり、44は一時データであるところの色合成スタックである。   FIG. 4 is a diagram showing memory access by the pixel sequential rendering apparatus. In FIG. 4, reference numeral 231 denotes an instruction stream in the display list, reference numeral 232 denotes edge information in the display list, and reference numeral 233 denotes fill information in the display list. Reference numeral 40 denotes a temporary data store, which is arranged in the local memory or the system RAM 12 or distributed between the local memory and the system RAM 12. 41 is an edge information store that is temporary data, 42 is a level table that is temporary data, 43 is a fill information table that is temporary data, and 44 is a color that is temporary data. It is a composite stack.

命令ストリーム231は画素シーケンシャル・レンダリング装置において辺情報232と塗りつぶし情報233とを適切に処理してただしい描画結果を得るための命令実行部31に解釈され得る命令によって構成されている。   The instruction stream 231 includes instructions that can be interpreted by the instruction execution unit 31 for appropriately processing the edge information 232 and the fill information 233 in the pixel sequential rendering apparatus to obtain a correct drawing result.

辺情報232には、グラフィック・オブジェクトの辺情報が該グラフィック・オブジェクトを分割して得られたセグメントと対応づけられて記録されている。また、それには、各セグメント毎に始点座標および終点のy座標とyの単位増分に対するxの増分と該セグメントが属するオブジェクトと一対一に対応するレベルとオブジェクトを構成する終点座標の続きのセグメントへのポインタと該セグメントがオブジェクトの走査線内における始点か終点かを示す属性とが含まれ、さらに各グラフィック・オブジェクトに対応づけられたレベル情報と、レベル情報毎に透過率や他レベルの画素との関係(演算)を示す属性と塗りつぶし情報へのポインタとが含まれる。   In the edge information 232, edge information of a graphic object is recorded in association with a segment obtained by dividing the graphic object. In addition, for each segment, the start point coordinate, the y coordinate of the end point, the increment of x with respect to the unit increment of y, the level to which the segment belongs, and the segment following the end point coordinate constituting the object. And an attribute indicating whether the segment is a start point or an end point in the scanning line of the object, level information associated with each graphic object, and transmittance and other level pixels for each level information. And an attribute indicating the relationship (operation) and a pointer to the fill information.

塗りつぶし情報233には、単一色による塗りつぶしやグラデーションやラスター画像貼り付けなどの塗りつぶしのタイプと色情報やラスタ画像の格納アドレスを得るためのデータが含まれる。   The fill information 233 includes data for obtaining a storage type address, color information, and raster type, such as a single color fill, gradation, and raster image paste.

辺情報ストア41は、辺(エッジ)処理部32が処理対象の走査線上の辺情報を管理するためにアクセスする。レベルテーブル42は、優先度決定部33が各レベルのステータスや属性を管理するためにアクセスする。また、塗りつぶし情報テーブル43は、塗りつぶしデータ決定部34がレベルテーブル42で任意のステータスを有するレベルの色を保持するためにアクセスする。   The side information store 41 is accessed by the side processing unit 32 in order to manage side information on the scanning line to be processed. The level table 42 is accessed so that the priority determination unit 33 manages the status and attributes of each level. The fill information table 43 is accessed so that the fill data determination unit 34 holds a color of a level having an arbitrary status in the level table 42.

色合成スタック44は色合成部35がある画素における異なるレベル同士の色を合成する際の一次データを保持するためにアクセスする。   The color synthesis stack 44 is accessed to hold primary data when colors of different levels in a pixel are synthesized.

なお、ここでは、表示リスト23、辺(エッジ)情報ストア41、レベルテーブル42および塗りつぶしテーブル43はシステムRAM12に配置され、色合成スタック44は画素シーケンシャル・レンダリング装置16がシステムRAM12と独立に有するローカルメモリに配置されているものとする。   Here, the display list 23, the edge (edge) information store 41, the level table 42, and the fill table 43 are arranged in the system RAM 12, and the color composition stack 44 is a local that the pixel sequential rendering device 16 has independently of the system RAM 12. Assume that it is located in memory.

以下、図5のような画像に対応するオブジェクト・グラフィック記述を処理する場合を例に取り、図3の画素シーケンシャル・レンダリング装置の動作の概要を説明する。   In the following, an outline of the operation of the pixel sequential rendering apparatus of FIG. 3 will be described by taking as an example the case of processing an object graphic description corresponding to an image as shown in FIG.

図5では、先ず三角形のオブジェクト51が描かれ(レベル1)、その上に重ねて楕円のオブジェクト52が描かれている(レベル2)描画画面を示している。また、レベル0は例えば画像を印刷する場合の紙に相当する最も視点から遠いデフォルトのレベルを表しており、白などのデフォルトのバックグラウンド色を有するものとする。   FIG. 5 shows a drawing screen in which a triangular object 51 is first drawn (level 1) and an elliptical object 52 is drawn on top of it (level 2). Level 0 represents, for example, a default level farthest from the viewpoint corresponding to paper when an image is printed, and has a default background color such as white.

図3の画素シーケンシャル・レンダリング装置による処理に先立ってオブジェクト・グラフィック記述はソフトウェアによって表示リストに変換される。表示リストは少なくとも以下に示す情報を含む。   Prior to processing by the pixel sequential rendering device of FIG. 3, the object graphic description is converted into a display list by software. The display list includes at least the following information.

(1)y=30からy=140の描画を行う。   (1) Draw from y = 30 to y = 140.

(2)y=30からy=140までオブジェクト51の領域開始を示す直線の辺がある。直線の場合は分割されず一つのセグメントとして表現される。傾きに関する情報も含む。   (2) From y = 30 to y = 140, there are straight sides indicating the start of the area of the object 51. In the case of a straight line, it is expressed as one segment without being divided. Also includes information about tilt.

(3)y=30からy=140までオブジェクト51の領域終端を示す直線の辺がある。直線の場合は分割されず一つのセグメントとして表現される。傾きに関する情報も含む。   (3) From y = 30 to y = 140, there are straight sides indicating the end of the area of the object 51. In the case of a straight line, it is expressed as one segment without being divided. Also includes information about tilt.

(4)y=70からy=115までオブジェクト52の領域開始を示す楕円弧の辺がある。正確には楕円弧は短い直線セグメントに分割され、各セグメントの開始位置と傾きの情報とともに含まれる。ひとつの弧を構成する各セグメントの情報はリスト構造をなし、連続するセグメントを追跡することが可能になっている。   (4) From y = 70 to y = 115, there is an elliptical arc side indicating the start of the region of the object 52. To be precise, the elliptical arc is divided into short straight segments and is included with information on the starting position and slope of each segment. The information of each segment constituting one arc has a list structure, and it is possible to track continuous segments.

(5)y=70からy=115までオブジェクト52の領域終端を示す楕円弧の辺がある。正確には楕円弧は短い直線セグメントに分割され、各セグメントの開始位置と傾きの情報とともに含まれる。ひとつの弧を構成する各セグメントの情報はリスト構造をなし、連続するセグメントを追跡することが可能になっている。   (5) From y = 70 to y = 115, there is an elliptical arc side indicating the end of the region of the object 52. To be precise, the elliptical arc is divided into short straight segments and is included with information on the starting position and slope of each segment. The information of each segment constituting one arc has a list structure, and it is possible to track continuous segments.

(6)オブジェクト51のレベル(z座標)情報および他のレベルの同一座標の画素との関係(演算)、下位レベル(視点を基準にして遠い側)のオブジェクトの色情報が必要か(即ち透過か不透過か)、塗りつぶし情報へのポインタ情報を含む。   (6) The level (z coordinate) information of the object 51 and the relationship (calculation) with the pixel of the same coordinate at another level, whether the color information of the object at the lower level (the far side with respect to the viewpoint) is necessary (ie, transmission Or opaque)) and pointer information to the fill information.

(7)オブジェクト51のレベル(z座標)情報および他のレベルの同一座標の画素との関係(演算)、下位レベル(視点を基準にして遠い側)のオブジェクトの色情報が必要か(即ち透過か不透過か)、塗りつぶし情報へのポインタ情報を含む。   (7) The level (z coordinate) information of the object 51 and the relationship (calculation) with the pixel of the same coordinate at another level, whether the color information of the object at the lower level (the far side with respect to the viewpoint) is necessary (ie, transparency Or opaque)) and pointer information to the fill information.

(8)オブジェクト51の塗りつぶし情報。   (8) Fill information of the object 51.

(9)オブジェクト51の塗りつぶし情報。   (9) Fill information of the object 51.

(10)辺情報ストアアドレス
(11)レベルテーブルアドレス
(12)フィルテーブルアドレス
画素シーケンシャル・レンダリング装置16が起動指示を受け付けると、命令実行部31は所定のアドレスから表示リストの命令ストリームを読み込む。処理開始および描画領域がパイプライン下流の各モジュールに内部コマンドによって通知され、さらに辺処理部32には辺テーブルアドレス(10)が内部コマンドによって通知される。また、レベル優先度決定部33にはレベルテーブルアドレス(11)が内部コマンドによって通知され、塗りつぶしデータ決定部34にはフィルテーブルアドレス(12)が内部コマンドによって通知される。この時点でパイプラインの各モジュール、即ち辺処理部32、レベル優先度決定部33、塗りつぶしデータ決定部34および色合成部35はパイプライン上流に位置するモジュールから所定の内部コマンドが転送されてくるまで待機状態となる。
(10) Edge information store address (11) Level table address (12) Fill table address When the pixel sequential rendering device 16 receives an activation instruction, the instruction execution unit 31 reads the instruction stream of the display list from a predetermined address. The processing start and drawing area are notified to each module downstream of the pipeline by an internal command, and the edge processing unit 32 is notified of the edge table address (10) by the internal command. Further, the level priority determination unit 33 is notified of the level table address (11) by an internal command, and the fill data determination unit 34 is notified of the fill table address (12) by an internal command. At this point, each module in the pipeline, that is, the edge processing unit 32, the level priority determination unit 33, the fill data determination unit 34, and the color synthesis unit 35, receives a predetermined internal command from a module located upstream of the pipeline. It will be in a standby state.

次に命令実行部31は辺処理部32、レベル優先度決定部33、塗りつぶしデータ決定部34および色合成部35に対してy=30から新しい辺(2)(3)を取り込んで描画を開始することを指定する描画開始コマンドを発行する。   Next, the instruction execution unit 31 takes in the new sides (2) and (3) from y = 30 to the side processing unit 32, the level priority determination unit 33, the fill data determination unit 34, and the color synthesis unit 35 and starts drawing. Issue a drawing start command to specify

辺処理部32、レベル優先度決定部33、塗りつぶしデータ決定部34および色合成部35ではy=0からy=30までは必要であればデフォルト(バックグラウンド色)画素を生成する。この間辺処理部32およびレベル優先度決定部33ではy=30からの処理を開始している。塗りつぶしデータ決定部34ではy=0からy=30の領域の処理として、デフォルト即ちバックグラウンドのレベルに対して走査線方向の全画素にバックグラウンド色を生成し、該バックグラウンド色を有する画素が色合成部35を通り(画素間演算処理されずに)最終画素として画素出力部36を介して出力される。   The side processing unit 32, the level priority determination unit 33, the fill data determination unit 34, and the color synthesis unit 35 generate default (background color) pixels from y = 0 to y = 30 if necessary. The intermediate processing unit 32 and the level priority determination unit 33 start processing from y = 30. The fill data determination unit 34 generates a background color for all pixels in the scanning line direction with respect to the default, that is, the background level, as a process for the region where y = 0 to y = 30. It passes through the color synthesis unit 35 (without inter-pixel calculation processing) and is output as the final pixel via the pixel output unit 36.

辺処理部32ではy=30までスキップし、y=30からオブジェクト51に属する2つの辺が発生することを検出する。そして、システムRAM12にアクセスしてセグメント情報を読み込み、辺情報を抽出して、システムRAM12上に割り当てられた辺テーブルに該2つの辺を登録して追跡を開始する。これら2つの辺は同一オブジェクトに属するため既にxオーダーでソートされた状態であり、そのままレベル優先度決定部33に内部コマンドで通知される。任意の走査線から次の走査線へ辺処理が移行する際には辺のソートが行われ、システムRAM12上に割り当てられた辺情報ストア41からの読み出しと書き込みが発生する。   The edge processing unit 32 skips to y = 30, and detects that two edges belonging to the object 51 are generated from y = 30. Then, the system RAM 12 is accessed to read the segment information, the edge information is extracted, the two edges are registered in the edge table assigned on the system RAM 12, and tracking is started. Since these two sides belong to the same object, they are already sorted in the x order, and are directly notified to the level priority determination unit 33 by an internal command. When edge processing shifts from an arbitrary scanning line to the next scanning line, edges are sorted, and reading and writing from the edge information store 41 allocated on the system RAM 12 occur.

レベル優先度決定部33はこれら2つの辺情報が属するオブジェクトを検出し、2つの辺間でレベル1を活性状態にして、システムRAM12上に割り当てられたレベルテーブル42に2つの辺間のレベル1の状態が活性状態であることを記録する。   The level priority determination unit 33 detects the object to which these two pieces of side information belong, activates level 1 between the two sides, and sets the level 1 between the two sides in the level table 42 allocated on the system RAM 12. Record that the state of is active.

さらに、表示リストからレベル1の塗りつぶし情報へのポインタを読み込み、内部コマンドを発行して2つの辺のx座標とレベル1の塗りつぶし情報へのポインタを塗りつぶしデータ決定部34に通知する。   Further, a pointer to the level 1 paint information is read from the display list, and an internal command is issued to notify the paint data determination unit 34 of the x coordinates of the two sides and the pointer to the level 1 paint information.

塗りつぶしデータ決定部34は、指定された塗りつぶし情報に従ってシステムRAM12上に割り当てられたフィルテーブル43を検索し、フィルテーブル43に従って2つの辺間の画素の色を決定し、各画素を色合成部35に通知する。また、これら2つの辺間にない領域に対してはy=0からy=30までと同様にデフォルト色を生成して色合成部35に通知する。   The fill data determination unit 34 searches the fill table 43 allocated on the system RAM 12 according to the specified fill information, determines the color of the pixel between the two sides according to the fill table 43, and sets each pixel to the color synthesis unit 35. Notify In addition, for a region that is not between these two sides, a default color is generated and notified to the color composition unit 35 as in the case of y = 0 to y = 30.

色合成部35では複数レベル間の画素の演算処理が必要ないため、塗りつぶしデータ決定部34から受信した画素をそのまま最終画素として出力する。   Since the color synthesizing unit 35 does not require arithmetic processing of pixels between a plurality of levels, the pixel received from the fill data determining unit 34 is output as it is as the final pixel.

辺処理部32はy=70から楕円のオブジェクトに属する2つの辺の追跡を開始する。y=70から新しい辺が追加されることも命令ストリーム231の命令で指示されており、命令実行部が該命令を解釈することにより内部コマンドを生成し辺処理部32に転送される。ここでは後から加わった2つの辺は三角形オブジェクト51の辺よりもxが大きな座標に位置しているため、辺のソートを行う必要はない(ただし、辺のx座標を追跡するためにソート処理は行われる。順番が入れ替わらないだけである)。   The side processing unit 32 starts tracking two sides belonging to the elliptical object from y = 70. The addition of a new edge from y = 70 is also instructed by an instruction in the instruction stream 231, and the instruction execution unit interprets the instruction to generate an internal command and transfer it to the edge processing unit 32. Here, since the two sides added later are located at coordinates where x is larger than the side of the triangle object 51, it is not necessary to sort the sides (however, the sorting process is performed to track the x-coordinates of the sides). Is done, it just doesn't change order).

また2つのオブジェクト51と52は重なっていないため、レベル優先度決定部33、塗りつぶしデータ決定部34および色合成部35はy=30からy=69までとほぼ同様に動作する。   Since the two objects 51 and 52 do not overlap, the level priority determination unit 33, the fill data determination unit 34, and the color synthesis unit 35 operate in substantially the same manner from y = 30 to y = 69.

三角形オブジェクト51の辺と楕円オブジェクト52の辺が交差したあとの走査線では辺情報のソートが必要となる。またオブジェクトが重なりを持つため、同一画素に対して複数のレベルが活性状態になり、画素を決定するための演算が行われるようになる。この様子をy=85の走査線に対する処理を例に挙げて説明する。   The side information needs to be sorted in the scanning line after the side of the triangle object 51 and the side of the ellipse object 52 intersect. Also, since the objects have overlap, a plurality of levels are activated for the same pixel, and an operation for determining the pixel is performed. This situation will be described by taking a process for a scanning line of y = 85 as an example.

辺処理部32は辺を追跡していく過程で、辺の交差を監視しており、一度交差するとそれ以降は交差した後の順序に従って追跡を続けるものとする。従ってy=85では既に三角形オブジェクト51の辺と楕円オブジェクト52の辺は交差しており、辺のx座標はx0、x1、x2およびx3の順に更新され、レベル優先度決定部33に通知される。   The edge processing unit 32 monitors the intersection of the edges in the process of tracking the edges, and once the intersection is made, the tracing is continued according to the order after the intersection. Therefore, at y = 85, the side of the triangle object 51 and the side of the ellipse object 52 already intersect, and the x coordinate of the side is updated in the order of x0, x1, x2, and x3, and is notified to the level priority determination unit 33. .

レベル優先度決定部33は楕円オブジェクト52の透過率が0でなければ、x0からx1ではレベル1のみを活性状態にし、x1からx2ではレベル1とレベル2を活性状態にし、x2からx3ではレベル2のみを活性状態にする。また、楕円オブジェクト52の透過率が0であれば、x0からx1ではレベル1のみを活性状態にし、x1からx3ではレベル2のみを活性状態にする。以降は楕円オブジェクト52の透過率が0でない場合について説明を続ける。活性状態となっているレベルと両端の辺情報は塗りつぶしデータ決定部34に通知される。   If the transmittance of the ellipse object 52 is not 0, the level priority determination unit 33 activates only level 1 from x0 to x1, activates level 1 and level 2 from x1 to x2, and activates levels from x2 to x3. Only 2 is activated. If the transmittance of the ellipse object 52 is 0, only level 1 is activated from x0 to x1, and only level 2 is activated from x1 to x3. Hereinafter, the description will be continued for the case where the transmittance of the ellipse object 52 is not zero. The level in the active state and the edge information at both ends are notified to the fill data determination unit 34.

塗りつぶしデータ決定部34はx=0からx=x0まではデフォルトレベルのデフォルト色を生成する。x0からx1まではレベル1の属性に従ってレベル1の画素の色を生成する。x1からx2まではレベル1の属性に従ってレベル1の画素の色を生成すると共に、レベル2の属性に従ってレベル2の画素の色を生成する。x2からx3まではレベル2の属性に従ってレベル2の画素の色を生成する。x3から描画サイズの右端までの画素に対してはデフォルトレベルのデフォルト色を生成し、画素オーダーで色合成部35に転送する。   The fill data determination unit 34 generates a default color of a default level from x = 0 to x = x0. From x0 to x1, the color of the level 1 pixel is generated according to the level 1 attribute. From x1 to x2, the color of the pixel of level 1 is generated according to the attribute of level 1, and the color of the pixel of level 2 is generated according to the attribute of level 2. From x2 to x3, the color of the level 2 pixel is generated according to the level 2 attribute. For the pixels from x3 to the right end of the drawing size, a default color of a default level is generated and transferred to the color composition unit 35 in pixel order.

色合成部35はx=0からx1の間は塗りつぶしデータ決定部34より受け取った画素色をそのまま出力する。x1からx2に対してはデフォルト色に対してレベル1の色がレベル1に指定されている演算によって重ねられて色合成スタック44に積まれ、次に色合成スタック44に積まれたデータに対してレベル2の色をレベル2に対して指定されている演算を適用して重ねあわせることにより最終的な画素の色を出力する。x2から描画サイズ右端までの画素に対しては再び塗りつぶしデータ決定部34より受け取った画素色をそのまま出力する。ただし、以上の処理においてはデフォルト色に対しては何もしない場合もあり得る。   The color synthesizing unit 35 outputs the pixel color received from the paint data determining unit 34 as it is between x = 0 and x1. For x1 to x2, the level 1 color is superimposed on the default color by the operation specified in level 1 and stacked in the color composition stack 44, and then the data accumulated in the color composition stack 44 is Then, the final pixel color is output by superimposing the level 2 color by applying the operation specified for the level 2. For the pixels from x2 to the right end of the drawing size, the pixel color received from the fill data determining unit 34 is output as it is. However, in the above processing, there is a case where nothing is done for the default color.

以上のような処理がパイプライン的に実行される。即ち、命令実行部31、辺処理部32、レベル優先度決定部33、塗りつぶしデータ決定部34および色合成部35の各モジュールは、自分の処理が終了すると次の処理を実行するモジュールに内部コマンドを発行して処理を依頼し、次の処理が可能になると前の処理を実行するモジュールからの内部コマンドを受け付ける状態になる。内部で処理を実行しているか、バッファがフルとなり新たな処理を受け付けられない場合は、前の処理を実行するモジュールとのパスを通じてビジー状態を通知し、処理を受け付けないことを通知する。ビジー状態を通知されたモジュールは内部コマンドを後の処理を実行するモジュールに転送することはできず、ストールが発生する。   The above processing is executed in a pipeline manner. That is, each module of the instruction execution unit 31, the edge processing unit 32, the level priority determination unit 33, the fill data determination unit 34, and the color composition unit 35 sends an internal command to the module that executes the next processing when its own processing is completed. Is issued to request processing, and when the next processing becomes possible, the internal command from the module that executes the previous processing is accepted. If processing is being executed internally, or if the buffer is full and new processing cannot be accepted, a busy state is notified through a path to the module that executes the previous processing, and notification that processing is not accepted. The module notified of the busy state cannot transfer the internal command to the module that executes the subsequent processing, and a stall occurs.

以上のように、命令実行部31による表示リストの命令ストリーム231の読み込み、辺処理部32による表示リストの辺情報232の読み込みと辺情報ストア41の読み書き、優先度決定部33によるレベルテーブル42の読み書き、塗りつぶしデータ決定部34による表示リストの塗りつぶし情報233の読み込みと塗りつぶしデータテーブル43の読み書きにおいてバスアクセス調停部38を介してシステムRAM12アクセスが発生する。   As described above, the instruction execution unit 31 reads the display list instruction stream 231, the side processing unit 32 reads the display list side information 232, the side information store 41 reads and writes, and the priority determination unit 33 reads the level table 42. The system RAM 12 is accessed via the bus access arbitration unit 38 when reading / writing the display list fill information 233 and reading / writing the fill data table 43 by the read / write / fill data determination unit 34.

命令実行部31、辺処理部32、優先度決定部33および塗りつぶしデータ決定部34によるシステムRAM12へのアクセスの際のレイテンシは画素シーケンシャル・レンダリング装置16全体の処理時間に影響する。また、命令実行部31、辺処理部32、優先度決定部33および塗りつぶしデータ決定部34の負荷は常に一定ではなく、描画対象の画像によって任意のモジュールに負荷が集中することが生じ得る。例えばオブジェクトの数は多いが、不透明なオブジェクトに多くのオブジェクトが上書きされていて活性状態になるレベルが少ない場合には辺処理部32は負荷が高いが、他のモジュールの負荷はあまり高くなかったり、ほとんど重なりがないか、重なっていても多くのオブジェクトが完全に不透明でない場合には活性状態になるレベルが多く発生し全体に負荷が高くなったりする。   Latency when accessing the system RAM 12 by the instruction execution unit 31, the edge processing unit 32, the priority determination unit 33, and the fill data determination unit 34 affects the processing time of the entire pixel sequential rendering device 16. In addition, the loads on the instruction execution unit 31, the edge processing unit 32, the priority determination unit 33, and the fill data determination unit 34 are not always constant, and the load may be concentrated on an arbitrary module depending on the image to be drawn. For example, when the number of objects is large but many objects are overwritten on an opaque object and there are few active levels, the edge processing unit 32 has a high load, but the load of other modules is not so high. If there is almost no overlap or many objects are not completely opaque even if they overlap, many levels are activated and the overall load becomes high.

さらに、命令実行部31、辺処理部32、優先度決定部33、塗りつぶしデータ決定部34、色合成部35および画素出力部36はパイプライン状に接続されているため、いずれかのモジュール間でストールが発生すると、画素シーケンシャル・レンダリング装置16全体としての処理速度の低下につながる可能性がある。前記処理速度低下の回避または低減は、命令実行部31、辺処理部32、優先度決定部33および塗りつぶしデータ決定部34の負荷に応じてバスアクセス調停部38の調停アルゴリズムを変更することで、システムRAM12へのアクセスのレイテンシを軽減し、パイプラインのストールを軽減することによって達成可能な場合が有り得る。   Furthermore, since the instruction execution unit 31, the edge processing unit 32, the priority determination unit 33, the fill data determination unit 34, the color synthesis unit 35, and the pixel output unit 36 are connected in a pipeline shape, between any modules When the stall occurs, there is a possibility that the processing speed of the pixel sequential rendering device 16 as a whole is reduced. The avoidance or reduction of the processing speed decrease can be achieved by changing the arbitration algorithm of the bus access arbitration unit 38 according to the load of the instruction execution unit 31, the side processing unit 32, the priority determination unit 33, and the fill data determination unit 34. It may be achievable by reducing the latency of access to the system RAM 12 and reducing pipeline stalls.

第1の実施形態は、命令実行部31、辺処理部32、優先度決定部33および塗りつぶしデータ決定部34によるバスアクセスの頻度により各パイプライン・モジュール間の負荷関係を推定する。図6にバスアクセス調停部38における調停部の構成を示す。図6では辺処理部32のみを示したが、他のパイプライン・モジュール、互換性保証部37も同様に接続されている。   In the first embodiment, the load relationship between each pipeline module is estimated based on the frequency of bus access by the instruction execution unit 31, the edge processing unit 32, the priority determination unit 33, and the fill data determination unit 34. FIG. 6 shows the configuration of the arbitration unit in the bus access arbitration unit 38. Although only the edge processing unit 32 is shown in FIG. 6, other pipeline modules and the compatibility guarantee unit 37 are also connected in the same manner.

図6において、3861はバスインタフェース部であり、3862は各パイプライン・モジュールからのバスアクセスリクエストをカウントするカウンタである。3863は各パイプライン・モジュールからのバスアクセス回数の値をもとに任意の値のセレクト信号に変換するエンコーダであり、3865はそれぞれ異なる調停アルゴリズムを有する複数の調停部である。3865はセレクタであり、エンコーダ3863によって与えられるセレクト信号に基づいて複数の調停部3864のいずれかの調停結果をバスインタフェース3861に提供する。3866は任意の期間ごとのバスリクエストをカウントするように、カウンタ3862に対して任意の期間でリセットを発行するリセットジェネレータである。   In FIG. 6, reference numeral 3861 denotes a bus interface unit, and 3862 denotes a counter that counts bus access requests from each pipeline module. Reference numeral 3863 denotes an encoder that converts the number of bus accesses from each pipeline module into a select signal having an arbitrary value. Reference numeral 3865 denotes a plurality of arbitration units each having a different arbitration algorithm. Reference numeral 3865 denotes a selector, which provides the bus interface 3861 with the arbitration result of any of the plurality of arbitration units 3864 based on the select signal provided by the encoder 3863. Reference numeral 3866 denotes a reset generator that issues a reset to the counter 3862 in an arbitrary period so as to count bus requests every arbitrary period.

61は命令実行部31から辺処理部32へのコマンド転送バスであり、62は辺処理部32から優先度決定部33へのコマンド転送バスである。63は辺処理部32から命令実行部31へコマンドを受け付けられないことを通知するビジー信号であり、64は優先度決定部33から辺処理部32へコマンドを受け付けられないことを通知するビジー信号であり、65は辺処理部32がバスアクセス調停部38に対してバスアクセスの際アサートするバスリクエスト信号である。   61 is a command transfer bus from the instruction execution unit 31 to the side processing unit 32, and 62 is a command transfer bus from the side processing unit 32 to the priority determination unit 33. 63 is a busy signal notifying that the command cannot be received from the side processing unit 32 to the instruction execution unit 31, and 64 is a busy signal notifying that the command cannot be received from the priority determination unit 33 to the side processing unit 32. 65 is a bus request signal that the side processing unit 32 asserts to the bus access arbitration unit 38 during bus access.

以上の構成によって、任意の期間における各パイプライン・モジュールからのバスアクセスの発生頻度を各パイプライン・モジュールにおける負荷の高さと関連する情報とみなして調停アルゴリズムを変更する。   With the above configuration, the arbitration algorithm is changed by regarding the occurrence frequency of bus access from each pipeline module in an arbitrary period as information related to the load level in each pipeline module.

<第2の実施形態>
第2の実施形態は、辺処理部32、優先度決定部33および塗りつぶしデータ決定部34によるビジー信号アサートの頻度により各パイプライン・モジュール間の負荷関係を推定する。図7にバスアクセス調停部38における調停部の構成を示す。図7では説明の単純化のため辺処理部32のみを示したが、命令実行部31以外の他のパイプライン・モジュールも同様に接続されている。
<Second Embodiment>
In the second embodiment, the load relationship between the pipeline modules is estimated based on the frequency of busy signal assertion by the edge processing unit 32, the priority determination unit 33, and the fill data determination unit 34. FIG. 7 shows the configuration of the arbitration unit in the bus access arbitration unit 38. Although only the edge processing unit 32 is shown in FIG. 7 for simplicity of explanation, other pipeline modules other than the instruction execution unit 31 are similarly connected.

図7において、3871はバスインタフェース部であり、3872は各パイプライン・モジュールのビジー信号63を監視してアサート回数をカウントするカウンタである。3873は各パイプライン・モジュールからのビジー信号アサート回数の値をもとに任意の値のセレクト信号に変換するエンコーダであり、3874はそれぞれ異なる調停アルゴリズムを有する複数の調停部である。   In FIG. 7, 3871 is a bus interface unit, and 3872 is a counter that monitors the busy signal 63 of each pipeline module and counts the number of assertions. Reference numeral 3873 denotes an encoder that converts a select signal having an arbitrary value based on the value of the number of busy signal assertions from each pipeline module. Reference numeral 3874 denotes a plurality of arbitration units each having a different arbitration algorithm.

3875はエンコーダ3873によって与えられるセレクト信号に基づいて複数の調停部3874のいずれかの調停結果をバスインタフェース3871に提供するセレクタであり、3876は任意の期間ごとのビジー信号アサート回数をカウントするように、カウンタ3872に対して任意の期間でリセットを発行するリセットジェネレータである。   Reference numeral 3875 denotes a selector that provides the arbitration result of one of the plurality of arbitration units 3874 to the bus interface 3871 based on a select signal given by the encoder 3873, and 3876 counts the number of times of busy signal assertion for each arbitrary period. The reset generator issues a reset to the counter 3872 at an arbitrary period.

以上の構成によって、任意の期間における各パイプライン・モジュールからのビジー信号のアサート頻度を各パイプライン・モジュールにおける負荷の高さと関連する情報とみなして調停アルゴリズムを変更する。   With the above configuration, the arbitration algorithm is changed by regarding the assertion frequency of the busy signal from each pipeline module in an arbitrary period as information related to the load height in each pipeline module.

<第3の実施形態>
第3の実施形態は、辺処理部32、優先度決定部33および塗りつぶしデータ決定部34において任意の時点で処理している走査線上のオブジェクト情報によって各パイプライン・モジュール間の負荷関係を推定する。図7にバスアクセス調停部38における調停部の構成を示す。図8では辺処理部32のみを示したが、命令実行部31以外の他のパイプライン・モジュールも同様に接続されている。
<Third Embodiment>
In the third embodiment, the load relationship between each pipeline module is estimated based on the object information on the scanning line processed at an arbitrary time in the edge processing unit 32, the priority determination unit 33, and the fill data determination unit 34. . FIG. 7 shows the configuration of the arbitration unit in the bus access arbitration unit 38. Although only the edge processing unit 32 is shown in FIG. 8, other pipeline modules other than the instruction execution unit 31 are also connected in the same manner.

図8において、3881はバスインタフェース部であり、3883は各パイプライン・モジュールからのオブジェクト情報の値をもとに任意の値のセレクト信号に変換するエンコーダである。3884はそれぞれ異なる調停アルゴリズムを有する複数の調停部であり、3885はエンコーダ3883によって与えられるセレクト信号に基づいて複数の調停部3884のいずれかの調停結果をバスインタフェース3881に提供するセレクタである。81は辺処理部32がその時点で処理している辺の数などのオブジェクト情報を通知する信号である。   In FIG. 8, reference numeral 3881 denotes a bus interface unit, and 3883 denotes an encoder that converts an object information value from each pipeline module into a select signal having an arbitrary value. Reference numeral 3884 denotes a plurality of arbitration units each having a different arbitration algorithm, and reference numeral 3885 denotes a selector that provides the arbitration result of one of the plurality of arbitration units 3884 to the bus interface 3881 based on a select signal provided by the encoder 3883. Reference numeral 81 denotes a signal for notifying object information such as the number of sides processed by the side processing unit 32 at that time.

図8には辺処理部32のみを示したが、例えば命令実行部31ではその時点で読み込んだ命令の種別をエンコーダ3883に対して出力し、優先度決定部33ではその時点で処理している走査線上に存在するレベルの数をエンコーダ3883に対して出力し、画素データ決定部34では活性化されたレベルの数と塗りつぶしのアルゴリズムの種別に関する情報をエンコーダ3883に対して出力する。   Although only the edge processing unit 32 is shown in FIG. 8, for example, the instruction execution unit 31 outputs the type of the instruction read at that time to the encoder 3883, and the priority determination unit 33 processes at that time. The number of levels existing on the scanning line is output to the encoder 3883, and the pixel data determination unit 34 outputs information about the number of activated levels and the type of the fill algorithm to the encoder 3883.

以上の構成によって、任意の期間における各パイプライン・モジュールにおいて任意の時点で処理されているオブジェクトに関する情報を各パイプライン・モジュールにおける負荷の高さと関連する情報とみなして調停アルゴリズムを変更する。   With the above configuration, the arbitration algorithm is changed by regarding the information on the object being processed at an arbitrary time in each pipeline module in an arbitrary period as information related to the load level in each pipeline module.

<その他の実施形態>
第1の実施形態、第2の実施形態及び第3の実施形態の任意の組み合わせにより、バスリクエスト頻度とビジー発生頻度との情報をエンコードして調停アルゴリズムを変更する方法、バスリクエスト発生頻度とオブジェクト情報をエンコードして調停アルゴリズムを変更する方法、ビジー発生頻度とオブジェクト情報をエンコードして調停アルゴリズムを変更する方法、およびバスリクエスト発生頻度とビジー発生頻度とオブジェクト情報とをエンコードして調停アルゴリズムを変更する方法が実施可能である。
<Other embodiments>
Method for changing arbitration algorithm by encoding information of bus request frequency and busy occurrence frequency by any combination of first embodiment, second embodiment, and third embodiment, bus request occurrence frequency and object Encoding information to change the arbitration algorithm, Busy frequency and object information to encode the mediation algorithm, and Bus request frequency, busy frequency and object information to encode the mediation algorithm Can be implemented.

<実施形態の効果>
以上説明したように第1乃至第3の実施形態によれば、パイプラインを構成するそれぞれのモジュールによるバスアクセス時の調停アルゴリズムを前記各モジュール間の負荷関係に応じて変更することにより、ストールを回避または軽減するか、またはストールの影響を軽減させ、高速な画素シーケンシャル・レンダリング装置を提供することができる。
<Effect of embodiment>
As described above, according to the first to third embodiments, the stall algorithm is changed by changing the arbitration algorithm at the time of bus access by each module constituting the pipeline according to the load relationship between the modules. A high-speed pixel sequential rendering device can be provided by avoiding or reducing or reducing the influence of stall.

本発明に係るレンダリング・システムの構成図である。1 is a configuration diagram of a rendering system according to the present invention. レンダリング・システムにおける機能の流れを示した図である。It is the figure which showed the flow of the function in a rendering system. 本発明に係る画素シーケンシャル・レンダリング装置の構成図である。1 is a configuration diagram of a pixel sequential rendering apparatus according to the present invention. FIG. レンダリング時のメモリアクセスの概略を説明するための図である。It is a figure for demonstrating the outline of the memory access at the time of rendering. 描画オブジェクトの例を示す図である。It is a figure which shows the example of a drawing object. 第1の実施形態によるバス・アクセス・アービトレーション・アルゴリズム変更方法を示す図である。It is a figure which shows the bus access arbitration algorithm change method by 1st Embodiment. 第2の実施形態によるバス・アクセス・アービトレーション・アルゴリズム変更方法を示す図である。It is a figure which shows the bus access arbitration algorithm change method by 2nd Embodiment. 第3の実施形態によるバス・アクセス・アービトレーション・アルゴリズム変更方法を示す図である。It is a figure which shows the bus access arbitration algorithm change method by 3rd Embodiment.

Claims (12)

ラスター画素イメージを形成するべくグラフィックオブジェクトの任意の属性に関して予め指定された処理を行うグラフィックオブジェクト処理装置であって、
前記グラフィックオブジェクトの任意の属性に関する複数の処理を行う複数の処理手段と、
前記複数の処理手段のそれぞれからのバスアクセスを調停するバスアクセス調停手段と、を備え、
前記バスアクセス調停手段は、
前記複数の処理手段からのバスアクセスを調停結果に基づいてシステムバスに転送するバスインタフェース手段と、
前記複数の処理手段それぞれの負荷状態を検出する状態検出手段と、
前記状態検出手段による検出結果に基づいてバス調停アルゴリズムを実行し、前記バスインタフェース手段を制御する制御手段とを有し、
前記バスアクセス調停手段は、さらに、前記複数の処理手段からのそれぞれのバスアクセスの要求回数をカウントするリクエストカウント手段と、前記リクエストカウント手段の値を予め指定された方法によってデコードしてセレクト信号を生成するデコード手段とを有し、
前記制御手段は、前記デコード手段によって生成されるセレクト信号に基づいて前記バス調停アルゴリズムを選択・実行する、
ことを特徴とするグラフィックオブジェクト処理装置。
A graphic object processing device that performs a pre-specified process on an arbitrary attribute of a graphic object to form a raster pixel image,
A plurality of processing means for performing a plurality of processes relating to arbitrary attributes of the graphic object;
Bus access arbitration means for arbitrating bus access from each of the plurality of processing means,
The bus access arbitration means includes:
Bus interface means for transferring bus access from the plurality of processing means to the system bus based on the arbitration result; and
State detecting means for detecting a load state of each of the plurality of processing means;
Performs bus arbitration algorithm based on the detection result by the state detecting means, have a control means for controlling said bus interface means,
The bus access arbitration means further includes a request count means for counting the number of bus access requests from each of the plurality of processing means, and a value of the request count means is decoded by a method designated in advance to obtain a select signal. Decoding means for generating,
The control means selects and executes the bus arbitration algorithm based on a select signal generated by the decoding means ;
A graphic object processing apparatus.
前記制御手段は、それぞれ異なる複数のバス調停アルゴリズムを有し、該バス調停アルゴリズムを実行して調停結果を取得する複数のアービトレーション手段と、セレクト信号に基づいて前記複数のアービトレーション手段が取得した前記調停結果のいずれかを前記バスインタフェース手段に入力させるセレクト手段とによって構成されることを特徴とする請求項1に記載のグラフィックオブジェクト処理装置。   The control means has a plurality of different bus arbitration algorithms, respectively, a plurality of arbitration means for executing the bus arbitration algorithm to obtain an arbitration result, and the arbitration means acquired by the plurality of arbitration means based on a select signal 2. The graphic object processing apparatus according to claim 1, wherein the graphic object processing apparatus comprises: selection means for inputting any of the results to the bus interface means. 前記バスアクセス調停手段は、さらに、予め指定された期間ごとにバスアクセスの回数をカウントするため、前記リクエストカウント手段に対して予め指定された期間をおいてリセットを発行するリセット発行手段を備えることを特徴とする請求項に記載のグラフィックオブジェクト処理装置。 The bus access arbitration means further comprises a reset issuing means for issuing a reset in a predetermined period to the request counting means in order to count the number of bus accesses for each predetermined period. The graphic object processing device according to claim 1 . ラスター画素イメージを形成するべくグラフィックオブジェクトの任意の属性に関して予め指定された処理を行うグラフィックオブジェクト処理装置であって、
前記グラフィックオブジェクトの任意の属性に関する複数の処理を行う複数の処理手段と、
前記複数の処理手段のそれぞれからのバスアクセスを調停するバスアクセス調停手段と、を備え、
前記バスアクセス調停手段は、
前記複数の処理手段からのバスアクセスを調停結果に基づいてシステムバスに転送するバスインタフェース手段と、
前記複数の処理手段それぞれの負荷状態を検出する状態検出手段と、
前記状態検出手段による検出結果に基づいてバス調停アルゴリズムを実行し、前記バスインタフェース手段を制御する制御手段とを有し、
前記複数の処理手段のそれぞれは、新たに入力を受け付けられないことを示すビジー信号を出力するビジー信号出力手段を有し、
前記バスアクセス調停手段は、さらに、前記複数の処理手段のそれぞれのビジー信号出力手段が出力する前記ビジー信号がアサートされる回数をカウントするアサートカウント手段と、該アサートカウント手段がカウントしたカウント値を予め指定された方法によってデコードしてセレクト信号を出力するデコード手段とを有し、
前記制御手段は、前記デコード手段によって生成されるセレクト信号に基いて前記バス調停アルゴリズムを選択・実行することを特徴とするグラフィックオブジェクト処理装置。
A graphic object processing device that performs a pre-specified process on an arbitrary attribute of a graphic object to form a raster pixel image,
A plurality of processing means for performing a plurality of processes relating to arbitrary attributes of the graphic object;
Bus access arbitration means for arbitrating bus access from each of the plurality of processing means,
The bus access arbitration means includes:
Bus interface means for transferring bus access from the plurality of processing means to the system bus based on the arbitration result; and
State detecting means for detecting a load state of each of the plurality of processing means;
Control means for executing a bus arbitration algorithm based on the detection result by the state detection means and controlling the bus interface means,
Each of the plurality of processing means has a busy signal output means for outputting a busy signal indicating that an input cannot be newly accepted,
The bus access arbitration means further includes an assert count means for counting the number of times the busy signal output from each busy signal output means of the plurality of processing means is asserted, and a count value counted by the assert count means. Decoding means for decoding by a method designated in advance and outputting a select signal;
Wherein the control means, wherein the to-tolyl La Fick object processing apparatus that the selected and performs bus arbitration algorithm based on a select signal generated by said decoding means.
前記バスアクセス調停手段は、さらに、前記アサートカウント手段に対して予め指定された期間をおいてリセットを発行するリセット発行手段を備えることを特徴とする請求項に記載のグラフィックオブジェクト処理装置。 5. The graphic object processing apparatus according to claim 4 , wherein the bus access arbitration unit further includes a reset issuance unit that issues a reset in a predetermined period to the assert count unit. ラスター画素イメージを形成するべくグラフィックオブジェクトの任意の属性に関して予め指定された処理を行うグラフィックオブジェクト処理装置であって、
前記グラフィックオブジェクトの任意の属性に関する複数の処理を行う複数の処理手段と、
前記複数の処理手段のそれぞれからのバスアクセスを調停するバスアクセス調停手段と、を備え、
前記バスアクセス調停手段は、
前記複数の処理手段からのバスアクセスを調停結果に基づいてシステムバスに転送するバスインタフェース手段と、
前記複数の処理手段それぞれの負荷状態を検出する状態検出手段と、
前記状態検出手段による検出結果に基づいてバス調停アルゴリズムを実行し、前記バスインタフェース手段を制御する制御手段とを有し、
前記複数の処理手段のそれぞれは、処理中のグラフィックオブジェクトの属性に関する情報を出力し、
前記バスアクセス調停手段は、前記複数の処理手段からの前記グラフィックオブジェクトの属性に関する情報を予め指定された方法によってデコードしてセレクト信号を出力するデコード手段を有し、
前記制御手段は、前記デコード手段によって生成される前記セレクト信号に基づいて前記バス調停アルゴリズムを選択・実行することを特徴とするグラフィックオブジェクト処理装置。
A graphic object processing device that performs a pre-specified process on an arbitrary attribute of a graphic object to form a raster pixel image,
A plurality of processing means for performing a plurality of processes relating to arbitrary attributes of the graphic object;
Bus access arbitration means for arbitrating bus access from each of the plurality of processing means,
The bus access arbitration means includes:
Bus interface means for transferring bus access from the plurality of processing means to the system bus based on the arbitration result; and
State detecting means for detecting a load state of each of the plurality of processing means;
Control means for executing a bus arbitration algorithm based on the detection result by the state detection means and controlling the bus interface means,
Each of the plurality of processing means outputs information on attributes of the graphic object being processed,
The bus access arbitration unit includes a decoding unit that decodes information about the attribute of the graphic object from the plurality of processing units by a method designated in advance and outputs a select signal.
The control means, the select signal the feature and be tolyl La Fick object processing apparatus to select and execute the bus arbitration algorithm based on generated by said decoding means.
ラスター画素イメージを形成するべくグラフィックオブジェクトの任意の属性に関して予め指定された処理を行うグラフィックオブジェクト処理方法であって、
前記グラフィックオブジェクトの任意の属性に関する複数の処理を行う複数の処理手段のそれぞれからのバスアクセスを調停するバスアクセス調停工程と、を備え、
前記バスアクセス調停工程は、
前記複数の処理手段からのバスアクセスを調停結果に基づいてバスインタフェース手段を介してシステムバスに転送する転送工程と、
前記複数の処理手段それぞれの負荷状態を検出する状態検出工程と、
前記状態検出工程による検出結果に基づいてバス調停アルゴリズムを実行し、前記バスインタフェース手段を制御する制御工程とを有し、
前記バスアクセス調停工程は、さらに、前記複数の処理手段からのそれぞれのバスアクセスの要求回数をリクエストカウンタによってカウントするリクエストカウント工程と、前記カウント工程によって得られたカウント値を予め指定された方法によってデコードしてセレクト信号を生成するデコード工程とを有し、
前記制御工程は、前記デコード工程によって生成されるセレクト信号に基づいて前記バス調停アルゴリズムを選択・実行する、
ことを特徴とするグラフィックオブジェクト処理方法。
A graphic object processing method for performing a pre-specified process on an arbitrary attribute of a graphic object to form a raster pixel image,
A bus access arbitration step of arbitrating bus access from each of a plurality of processing means for performing a plurality of processes related to an arbitrary attribute of the graphic object,
The bus access arbitration step
A transfer step of transferring the bus access from the plurality of processing means to the system bus via the bus interface means based on the arbitration result;
A state detection step of detecting a load state of each of the plurality of processing means;
Performs bus arbitration algorithm based on the detection result by the state detecting step, possess a controlling process of controlling the bus interface unit,
The bus access arbitration step further includes a request count step for counting the number of bus access requests from the plurality of processing means by a request counter, and a count value obtained by the count step by a method designated in advance. A decoding step for decoding and generating a select signal,
The control step selects and executes the bus arbitration algorithm based on a select signal generated by the decoding step .
A graphic object processing method characterized by the above.
前記制御工程は、それぞれ異なるバスリクエスト調停アルゴリズムを有し、該バス調停アルゴリズムを実行して調停結果を取得する複数のアービトレーション工程と、セレクト信号に基づいて前記複数のアービトレーション工程で取得した前記調停結果のいずれかをバスインタフェース手段に入力させるセレクト工程とを備えることを特徴とする請求項に記載のグラフィックオブジェクト処理方法。 The control step has different bus request arbitration algorithms, respectively, and executes a bus arbitration algorithm to acquire an arbitration result, and the arbitration results acquired in the plurality of arbitration steps based on a select signal. The graphic object processing method according to claim 7 , further comprising: a selecting step for inputting any of the above to the bus interface means. 前記バスアクセス調停工程は、さらに、予め指定された期間ごとにバスアクセスの回数をカウントするため、前記リクエストカウンタに対して予め指定された期間をおいてリセットを発行するリセット発行工程を備えることを特徴とする請求項に記載のグラフィックオブジェクト処理方法。 The bus access arbitration step further includes a reset issuing step of issuing a reset in a predetermined period to the request counter in order to count the number of bus accesses for each predetermined period. The graphic object processing method according to claim 8 , wherein: ラスター画素イメージを形成するべくグラフィックオブジェクトの任意の属性に関して予め指定された処理を行うグラフィックオブジェクト処理方法であって、
前記グラフィックオブジェクトの任意の属性に関する複数の処理を行う複数の処理手段のそれぞれからのバスアクセスを調停するバスアクセス調停工程と、を備え、
前記バスアクセス調停工程は、
前記複数の処理手段からのバスアクセスを調停結果に基づいてバスインタフェース手段を介してシステムバスに転送する転送工程と、
前記複数の処理手段それぞれの負荷状態を検出する状態検出工程と、
前記状態検出工程による検出結果に基づいてバス調停アルゴリズムを実行し、前記バスインタフェース手段を制御する制御工程とを有し、
さらに、前記複数の処理手段のそれぞれから、新たに入力を受け付けられないことを示すビジー信号を受信するビジー信号受信工程を備え、
前記バスアクセス調停工程は、さらに、前記複数の処理手段のそれぞれが出力する前記ビジー信号がアサートされる回数をアサートカウンタによってカウントするアサートカウント工程と、該アサートカウンタがカウントしたカウント値を予め指定された方法によってデコードしてセレクト信号を出力するデコード工程とを有し、
前記制御工程は、前記デコード工程によって生成されたセレクト信号に基いて前記バス調停アルゴリズムを選択・実行することを特徴とするグラフィックオブジェクト処理方法。
A graphic object processing method for performing a pre-specified process on an arbitrary attribute of a graphic object to form a raster pixel image,
A bus access arbitration step of arbitrating bus access from each of a plurality of processing means for performing a plurality of processes related to an arbitrary attribute of the graphic object,
The bus access arbitration step
A transfer step of transferring the bus access from the plurality of processing means to the system bus via the bus interface means based on the arbitration result;
A state detection step of detecting a load state of each of the plurality of processing means;
A bus arbitration algorithm is executed based on the detection result of the state detection step, and the bus interface means is controlled.
Furthermore, a busy signal receiving step of receiving a busy signal indicating that a new input cannot be received from each of the plurality of processing means,
The bus access arbitration step further includes an assert count step of counting the number of times the busy signal output from each of the plurality of processing means is asserted by an assert counter, and a count value counted by the assert counter is designated in advance. A decoding process for decoding by the method and outputting a select signal,
Wherein the control step, wherein the to-tolyl La Fick object processing method that selects and executes the bus arbitration algorithm based on the select signal generated by the decoding process.
前記バスアクセス調停工程は、さらに、前記アサートカウンタに対して予め指定された期間をおいてリセットを発行するリセット発行工程を備えることを特徴とする請求項10に記載のグラフィックオブジェクト処理方法。 11. The graphic object processing method according to claim 10 , wherein the bus access arbitration step further includes a reset issuing step of issuing a reset after a predetermined period with respect to the assert counter. ラスター画素イメージを形成するべくグラフィックオブジェクトの任意の属性に関して予め指定された処理を行うグラフィックオブジェクト処理方法であって、
前記グラフィックオブジェクトの任意の属性に関する複数の処理を行う複数の処理手段のそれぞれからのバスアクセスを調停するバスアクセス調停工程と、を備え、
前記バスアクセス調停工程は、
前記複数の処理手段からのバスアクセスを調停結果に基づいてバスインタフェース手段を介してシステムバスに転送する転送工程と、
前記複数の処理手段それぞれの負荷状態を検出する状態検出工程と、
前記状態検出工程による検出結果に基づいてバス調停アルゴリズムを実行し、前記バスインタフェース手段を制御する制御工程とを有し、
さらに、前記複数の処理手段のそれぞれから、処理中のグラフィックオブジェクトの属性に関する情報を受信するオブジェクト情報受信工程を備え、
前記バスアクセス調停工程は、さらに、前記複数の処理手段からの前記グラフィックオブジェクトの属性に関する情報を予め指定された方法によってデコードしてセレクト信号を出力するデコード工程を有し、
前記制御工程は、前記デコード工程によって生成された前記セレクト信号に基づいて前記バス調停アルゴリズムを選択・実行することを特徴とするグラフィックオブジェクト処理方法。
A graphic object processing method for performing a pre-specified process on an arbitrary attribute of a graphic object to form a raster pixel image,
A bus access arbitration step of arbitrating bus access from each of a plurality of processing means for performing a plurality of processes related to an arbitrary attribute of the graphic object,
The bus access arbitration step
A transfer step of transferring the bus access from the plurality of processing means to the system bus via the bus interface means based on the arbitration result;
A state detection step of detecting a load state of each of the plurality of processing means;
A bus arbitration algorithm is executed based on the detection result of the state detection step, and the bus interface means is controlled.
Further, an object information receiving step of receiving information on the attribute of the graphic object being processed from each of the plurality of processing means,
The bus access arbitration step further includes a decoding step of decoding information about the attribute of the graphic object from the plurality of processing means by a method designated in advance and outputting a select signal,
Wherein the control step, wherein the to-tolyl La Fick object processing method that selects and executes the bus arbitration algorithm based on the select signal generated by the decoding process.
JP2004185239A 2004-06-23 2004-06-23 Graphic object processing apparatus and graphic object processing method Expired - Fee Related JP4533019B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004185239A JP4533019B2 (en) 2004-06-23 2004-06-23 Graphic object processing apparatus and graphic object processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004185239A JP4533019B2 (en) 2004-06-23 2004-06-23 Graphic object processing apparatus and graphic object processing method

Publications (3)

Publication Number Publication Date
JP2006011639A JP2006011639A (en) 2006-01-12
JP2006011639A5 JP2006011639A5 (en) 2007-08-02
JP4533019B2 true JP4533019B2 (en) 2010-08-25

Family

ID=35778863

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004185239A Expired - Fee Related JP4533019B2 (en) 2004-06-23 2004-06-23 Graphic object processing apparatus and graphic object processing method

Country Status (1)

Country Link
JP (1) JP4533019B2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07134776A (en) * 1993-05-28 1995-05-23 Nippon Yunishisu Kk Method and device for image rendering
JPH07160249A (en) * 1993-10-15 1995-06-23 Hitachi Ltd Data processor and data processing system
JPH10240700A (en) * 1997-02-28 1998-09-11 Hitachi Ltd Graphics parallel processor
JP2000259840A (en) * 1999-03-11 2000-09-22 Nec Corp Method of data transfer to rendering processor, pre- rendering-processing data transfer device, system and pre-rendering-processing data generation processor

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07134776A (en) * 1993-05-28 1995-05-23 Nippon Yunishisu Kk Method and device for image rendering
JPH07160249A (en) * 1993-10-15 1995-06-23 Hitachi Ltd Data processor and data processing system
JPH10240700A (en) * 1997-02-28 1998-09-11 Hitachi Ltd Graphics parallel processor
JP2000259840A (en) * 1999-03-11 2000-09-22 Nec Corp Method of data transfer to rendering processor, pre- rendering-processing data transfer device, system and pre-rendering-processing data generation processor

Also Published As

Publication number Publication date
JP2006011639A (en) 2006-01-12

Similar Documents

Publication Publication Date Title
US10885607B2 (en) Storage for foveated rendering
JP3919754B2 (en) A method for reducing the number of compositing operations performed in a sequential pixel drawing system
JP4365950B2 (en) Graphic object processing method and apparatus for high-speed raster format rendering
JP4343344B2 (en) A high-speed image rendering method using raster graphic objects
US7079146B2 (en) Image producing device
JPH07181951A (en) Picture display method and picture display as well as picture scaling method
JP4154336B2 (en) Method and apparatus for drawing a frame of a raster image
JP6385406B2 (en) Image processing apparatus, image processing method, and program
JPH08297737A (en) Method and apparatus for clipping of arbitrary graphic
US6924820B2 (en) Over-evaluating samples during rasterization for improved datapath utilization
US20160253129A1 (en) Image forming apparatus and control method therefor
EP0658858B1 (en) Graphics computer
JP4646436B2 (en) Digital image processing device
JP3604152B2 (en) Processor / memory that does not require heavy rendering for page printers
CA1200025A (en) Graphic and textual image generator for a raster scan display
JP4533019B2 (en) Graphic object processing apparatus and graphic object processing method
JP4143613B2 (en) Drawing method and drawing apparatus
JP2007122188A (en) Image forming device, image processing method and program
JP2008107970A (en) Image forming device
JP2006031160A (en) Graphic object processing method
JP6904717B2 (en) Image processing equipment, its control method, and programs
JP3517982B2 (en) Drawing device
US20020109853A1 (en) Generating images quickly in raster image processing
JP2001109899A (en) Image processor
JPH0877367A (en) Image processor and image data processor using it

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070615

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070615

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20070615

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100305

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100315

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100513

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100604

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100611

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130618

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees