JP2003281564A - Image generating device - Google Patents

Image generating device

Info

Publication number
JP2003281564A
JP2003281564A JP2002079148A JP2002079148A JP2003281564A JP 2003281564 A JP2003281564 A JP 2003281564A JP 2002079148 A JP2002079148 A JP 2002079148A JP 2002079148 A JP2002079148 A JP 2002079148A JP 2003281564 A JP2003281564 A JP 2003281564A
Authority
JP
Japan
Prior art keywords
buffer
cache
block
depth value
control unit
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
JP2002079148A
Other languages
Japanese (ja)
Inventor
Hayato Nakao
早人 中尾
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.)
Victor Company of Japan Ltd
Original Assignee
Victor Company of Japan Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Victor Company of Japan Ltd filed Critical Victor Company of Japan Ltd
Priority to JP2002079148A priority Critical patent/JP2003281564A/en
Publication of JP2003281564A publication Critical patent/JP2003281564A/en
Pending legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To solve the problem in a conventional image generating device using Z buffer method that the speeding up of both calculating processing and buffer read/write is insufficient to attain an increase in speed of calculating processing and buffer read/write. <P>SOLUTION: A buffer 16 divides a screen formed of a plurality of pixels arranged in a lattice shape into a plurality of buffer blocks, and stores depth values and luminance values thereof in buffer blocks unit with buffer block numbers assigned thereto, respectively. A cache part 13 receives the read address or write address of a buffer corresponding to a pixel position, calculates the buffer block number corresponding to the input address, and reads and outputs, when the calculate buffer block number is stored in a cache memory 14, the depth value corresponding to the pixel position from the cache memory 14 to a drawing circuit 12, or writes the depth value and luminance value from the drawing circuit 12 to the cache memory 14. <P>COPYRIGHT: (C)2004,JPO

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は画像生成装置に係
り、特にコンピュータグラフィックスによる3次元形状
物体を隠面消去した画像を生成する画像生成装置に関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an image generating apparatus, and more particularly to an image generating apparatus for generating an image in which a hidden surface of a three-dimensional object is removed by computer graphics.

【0002】[0002]

【従来の技術】コンピュータグラフィックスによる3次
元形状物体を隠面消去した画像を生成する従来の画像生
成装置として、Zバッファ法により隠面消去した画像を
生成する装置が良く知られている。このZバッファ法と
は、視点から物体までの距離である奥行き値(Z値)を
各画素毎に格納するZバッファと、明るさを表す輝度値
を各画素毎に格納するフレームバッファとを用い、各画
素毎に3次元形状物体の奥行き値と輝度値を計算し、Z
バッファ中の奥行き値と3次元形状物体の奥行き値とを
比較して、視点から近い方の奥行き値及び輝度値をZバ
ッファ及びフレームバッファに残すことで、最終的にあ
る視点から見た場合に見えなくなる物体あるいは物体の
部分を表示させないように隠面消去された画像をフレー
ムバッファ中に生成する方法である。
2. Description of the Related Art As a conventional image generating apparatus for generating a hidden surface-erased image of a three-dimensional object by computer graphics, an apparatus for generating a hidden surface-erased image by a Z-buffer method is well known. The Z buffer method uses a Z buffer that stores a depth value (Z value) that is a distance from a viewpoint to an object for each pixel, and a frame buffer that stores a brightness value that represents brightness for each pixel. , The depth value and the brightness value of the three-dimensional object are calculated for each pixel, and Z
By comparing the depth value in the buffer with the depth value of the three-dimensional object and leaving the depth value and the luminance value closer to the viewpoint in the Z buffer and the frame buffer, when the viewpoint is finally viewed from a certain viewpoint. This is a method of generating an image in which a hidden surface is erased in a frame buffer so that an invisible object or a part of the object is not displayed.

【0003】[0003]

【発明が解決しようとする課題】しかるに、上記のZバ
ッファ法を用いた従来の画像生成装置では、3次元形状
物体を画面に投影したときの投影像に含まれる各画素毎
に計算処理とバッファリード/ライトを行うが、Zバッ
ファやフレームバッファには、スタティック・ランダム
・アクセス・メモリ(SRAM)を使用した場合、計算
処理、バッファリード/ライトの高速化が可能となる
が、ダイナミック・ランダム・アクセス・メモリ(DR
AM)に比べてコスト高となる。
However, in the conventional image generating apparatus using the above Z-buffer method, calculation processing and buffering are performed for each pixel included in a projected image when a three-dimensional object is projected on the screen. Read / write is performed, but if static random access memory (SRAM) is used for the Z buffer and frame buffer, calculation processing and buffer read / write can be speeded up, but dynamic random access Access memory (DR
The cost is higher than that of AM).

【0004】一方、従来のDRAMでは計算処理、バッ
ファリード/ライト双方の高速化が不充分であり、3次
元のコンピュータグラフィックスの表示の高画質化が益
々要求されるようになった近年では、ポリゴン数の飛躍
的増加のために計算処理及びバッファリード/ライトの
高速化が強く望まれている。
On the other hand, in the conventional DRAM, the speeding up of both the calculation process and the buffer read / write is insufficient, and in recent years, there has been an increasing demand for higher image quality in the display of three-dimensional computer graphics. Due to the dramatic increase in the number of polygons, speeding up of calculation processing and buffer read / write is strongly desired.

【0005】本発明は以上の点に鑑みなされたもので、
画面を複数のブロックに分割し、そのブロック単位でバ
ッファメモリ(以下、単にバッファという)とキャッシ
ュメモリ間のデータ転送を行い、描画回路がキャッシュ
メモリに対してリード/ライトを行うことにより、バッ
ファのリード/ライトを高速化し、更に描画回路の並列
化、パイプライン化を図ることにより、3次元形状物体
を隠面消去した画像を高速に生成し得る画像生成装置を
提供することを目的とする。
The present invention has been made in view of the above points,
The screen is divided into a plurality of blocks, data is transferred between the buffer memory (hereinafter simply referred to as a buffer) and the cache memory in block units, and the drawing circuit performs read / write operations on the cache memory. It is an object of the present invention to provide an image generation apparatus capable of generating an image in which a hidden surface is erased from a three-dimensional object at high speed by speeding up read / write, parallelizing drawing circuits, and pipelining.

【0006】[0006]

【課題を解決するための手段】上記の目的を達成するた
め、第1の発明の画像生成装置は、格子状に並んだ複数
の画素で構成される画面を複数のバッファブロックに分
割し、各々バッファブロック番号を付したバッファブロ
ック単位で視点からの距離を表す奥行き値と輝度値を複
数の画素毎に格納するバッファと、3次元形状物体を基
本形状であるポリゴンの集合として定義し、ポリゴンの
頂点毎に画面上の位置と視点からの距離を表す奥行き値
及び輝度値が記述されているポリゴンデータを入力とし
て受け、奥行き値及び輝度値を内挿することによりポリ
ゴン内の画素の画素位置、奥行き値及び輝度値を求める
と共に、バッファから入力された画素位置に対応する奥
行き値よりも内挿によって求めた奥行き値の方が小さい
ときにのみ、内挿によって求めた奥行き値及び輝度値を
出力する描画回路と、複数のバッファブロックの奥行き
値及び輝度値を、このバッファブロック単位で格納す
る、各々キャッシュブロック番号を付した複数のキャッ
シュブロックからなるキャッシュメモリと、キャッシュ
制御部と、バッファ制御部と、演算手段とを有する構成
としたものである。
In order to achieve the above object, the image generating apparatus of the first invention divides a screen composed of a plurality of pixels arranged in a grid into a plurality of buffer blocks, each of which is divided into a plurality of buffer blocks. A buffer that stores a depth value and a brightness value that represent a distance from the viewpoint in units of buffer blocks with buffer block numbers is defined, and a three-dimensional object is defined as a set of polygons that are basic shapes. It receives as input the polygon data in which the depth value and the brightness value representing the position on the screen and the distance from the viewpoint for each vertex are described, and by interpolating the depth value and the brightness value, the pixel position of the pixel in the polygon, The depth value and the brightness value are calculated, and the interpolation is performed only when the depth value calculated by interpolation is smaller than the depth value corresponding to the pixel position input from the buffer. Therefore, a drawing circuit that outputs the depth value and the brightness value that are obtained, and a cache memory that stores the depth value and the brightness value of a plurality of buffer blocks in units of this buffer block and that is composed of a plurality of cache blocks with cache block numbers A cache control unit, a buffer control unit, and a calculation unit.

【0007】ここで、上記のキャッシュ制御部は、上記
の描画回路からバッファの画素位置に対応する奥行き値
及び輝度値のリードアドレス又はライトアドレスを受
け、入力されたリードアドレス又はライトアドレスに対
応したバッファブロック番号を算出し、その算出したバ
ッファブロック番号のバッファブロックがキャッシュメ
モリに格納されているかを、算出したバッファブロック
番号とキャッシュブロック毎に記憶しているバッファブ
ロック番号を比較することで検出し、キャッシュメモリ
に格納されているときにはキャッシュメモリから画素位
置に対応する奥行き値をリードして描画回路へ出力する
か、又は描画回路から入力された奥行き値及び輝度値を
キャッシュメモリにライトし、キャッシュメモリに格納
されていないときには一のキャッシュブロックを選択し
て、選択したキャッシュブロックに格納されている奥行
き値及び輝度値をキャッシュメモリからバッファへ転送
させた後、算出したバッファブロック番号のバッファブ
ロックを選択したキャッシュブロックに格納させる制御
信号を出力する。
Here, the cache control unit receives the read address or write address of the depth value and the brightness value corresponding to the pixel position of the buffer from the drawing circuit, and responds to the input read address or write address. The buffer block number is calculated, and whether the buffer block with the calculated buffer block number is stored in the cache memory is detected by comparing the calculated buffer block number with the buffer block number stored for each cache block. , When it is stored in the cache memory, the depth value corresponding to the pixel position is read from the cache memory and output to the drawing circuit, or the depth value and the brightness value input from the drawing circuit are written to the cache memory and cached. When not stored in memory Select one cache block, transfer the depth value and the brightness value stored in the selected cache block from the cache memory to the buffer, and then store the buffer block with the calculated buffer block number in the selected cache block. Output a control signal.

【0008】また、上記のバッファ制御部は、キャッシ
ュ制御部からの制御信号に基づき、選択したキャッシュ
ブロックに格納されている奥行き値及び輝度値をキャッ
シュメモリからバッファへ転送した後、リードアドレス
又はライトアドレスに対応したバッファブロック番号の
バッファブロックの奥行き値及び輝度値をバッファから
選択したキャッシュブロックに転送して格納させる。ま
た、上記の演算手段は、上記の描画回路が少なくともリ
ードアドレス及びライトアドレスを独立して出力するよ
うに描画回路の動作を制御すると共に、画面へのポリゴ
ンの描画開始前にバッファ制御部に対してバッファを初
期化させ、画面内の全てのポリゴンの描画終了時にバッ
ファ制御部に対してバッファからの輝度値をリードさせ
て出力させる。
Further, the buffer control unit transfers the depth value and the brightness value stored in the selected cache block from the cache memory to the buffer based on the control signal from the cache control unit, and thereafter, the read address or the write value. The depth value and the brightness value of the buffer block having the buffer block number corresponding to the address are transferred from the buffer to the selected cache block and stored therein. Further, the arithmetic means controls the operation of the drawing circuit so that the drawing circuit outputs at least the read address and the write address independently of each other, and controls the buffer control unit before starting the drawing of the polygon on the screen. Then, the buffer is initialized, and when the drawing of all polygons in the screen is completed, the brightness value from the buffer is read and output to the buffer control unit.

【0009】この第1の発明では、画面を複数のバッフ
ァブロックに分割し、それらバッファブロック単位でバ
ッファとキャッシュメモリ間の奥行き値及び輝度値の転
送を行うことにより、描画回路がバッファリードアドレ
スとバッファライトアドレスを独立して出力することが
できる。
According to the first aspect of the present invention, the screen is divided into a plurality of buffer blocks, and the depth value and the luminance value are transferred between the buffer and the cache memory in units of the buffer blocks, so that the drawing circuit uses the buffer read address. The buffer write address can be output independently.

【0010】また、上記の目的を達成するため、第2の
発明の画像生成装置は、キャッシュ制御部は、バッファ
からキャッシュメモリへのバッファブロックの奥行き値
及び輝度値の転送時にリセットされ、描画回路からキャ
ッシュメモリのキャッシュブロックへの奥行き値及び輝
度値のライト時にセットされるライトフラグを各キャッ
シュブロック毎に設け、バッファ制御部は、ライトフラ
グがセットされている場合のみ、キャッシュブロックか
ら奥行き値及び輝度値をバッファへ転送することを特徴
とする。
Further, in order to achieve the above object, in the image generating apparatus of the second invention, the cache control unit is reset when the depth value and the brightness value of the buffer block are transferred from the buffer to the cache memory, and the drawing circuit. From the cache block to the cache block of the cache memory, a write flag that is set at the time of writing the depth value and the brightness value is provided for each cache block. It is characterized in that the brightness value is transferred to the buffer.

【0011】この第2の発明では、バッファ制御部が、
ライトフラグがセットされている場合のみ、キャッシュ
ブロックから奥行き値及び輝度値をバッファへ転送する
ようにしたため、キャッシュブロックを更新するとき
に、更新するキャッシュブロックに割り当てられたライ
トフラグがセットされていないときには、そのキャッシ
ュブロックの奥行き値及び輝度値のバッファへの転送を
不要にできる。
In the second invention, the buffer control section is
Only when the write flag is set, the depth value and the brightness value are transferred from the cache block to the buffer. Therefore, when the cache block is updated, the write flag assigned to the cache block to be updated is not set. At times, it is possible to eliminate the need to transfer the depth value and the brightness value of the cache block to the buffer.

【0012】[0012]

【発明の実施の形態】次に、本発明の実施の形態につい
て図面と共に説明する。図1は本発明になる画像生成装
置の第1の実施の形態のブロック図を示す。この実施の
形態の画像生成装置は、3次元空間中に配置した物体を
基本形状であるポリゴンの集合として定義し、格子状に
並んだ画素で構成される画面上の各画素位置に対応し
た、視点から物体までの距離を表す奥行き値(Z値)及
び輝度値を格納するバッファを用いて、奥行き値に基づ
いて隠面消去した画像を生成する画像生成装置で、装置
全体を統括的に制御する中央処理装置(CPU)11
と、ポリゴンデータが入力される描画回路12と、描画
回路12に接続されたキャッシュ制御部13と、キャッ
シュ制御部13により動作が制御されるキャッシュメモ
リ14と、バッファ制御部22と、バッファ制御部15
により動作が制御され上記の奥行き値(Z値)及び輝度
値を格納するバッファ16とから構成されている。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, embodiments of the present invention will be described with reference to the drawings. FIG. 1 shows a block diagram of a first embodiment of an image generating apparatus according to the present invention. The image generating apparatus according to this embodiment defines an object arranged in a three-dimensional space as a set of polygons having a basic shape, and corresponds to each pixel position on the screen composed of pixels arranged in a grid pattern. An image generation apparatus that generates an image with hidden surface removed based on the depth value using a buffer that stores a depth value (Z value) that represents the distance from a viewpoint to an object and a brightness value. Central processing unit (CPU) 11
A drawing circuit 12 to which polygon data is input, a cache control unit 13 connected to the drawing circuit 12, a cache memory 14 whose operation is controlled by the cache control unit 13, a buffer control unit 22, and a buffer control unit. 15
And a buffer 16 for storing the above-mentioned depth value (Z value) and brightness value.

【0013】キャッシュメモリ14は、例えばスタティ
ック・ランダム・アクセス・メモリ(SRAM)により
構成されている。一方、バッファ16は、大容量が要求
されるため、大容量が確保し易いシンクロナス・DRA
M(SDRAM)により構成されている。SDRAM
は、少ないデータをリード/ライトする場合に比べて、
まとまった多くのデータをリード/ライトした方がデー
タの転送能力が向上する特徴がある。
The cache memory 14 is composed of, for example, a static random access memory (SRAM). On the other hand, since the buffer 16 is required to have a large capacity, it is easy to secure a large capacity in the synchronous DRA.
It is composed of M (SDRAM). SDRAM
Compared to reading / writing a small amount of data,
There is a characteristic that the data transfer capability is improved by reading / writing a large amount of collected data.

【0014】次に、本実施の形態の動作について説明す
る。本実施の形態はZバッファ法により、3次元形状物
体を隠面消去した画像を生成する。Zバッファ法では、
画面描画前にバッファ16の初期化が必要であるため、
まず、CPU11からバッファ初期化リクエストが、バ
ッファスタートアドレス、画面縦ライン数、画面横ピク
セル数と共にバッファ制御部15に供給され、バッファ
制御部15によりバッファ16の初期化が行われる。
Next, the operation of this embodiment will be described. In this embodiment, a Z-buffer method is used to generate an image in which a hidden surface of a three-dimensional object is removed. In the Z-buffer method,
Since it is necessary to initialize the buffer 16 before drawing the screen,
First, the CPU 11 supplies a buffer initialization request together with the buffer start address, the screen vertical line number, and the screen horizontal pixel number to the buffer control unit 15, and the buffer control unit 15 initializes the buffer 16.

【0015】続いて、CPU11は描画命令を描画回路
12へ出力する。描画回路12は、描画命令を入力とし
て受けると、外部から入力されるポリゴンデータを取り
込む。このポリゴンデータはポリゴンと呼ばれる平面多
角形(例えば、三角形)として扱われる3次元座標の形
状データで、ポリゴンの各頂点毎に画面上の位置と視点
からの距離を表す奥行き値(Z値)及び輝度値が記述さ
れている。描画回路12は、このポリゴンデータの奥行
き値及び輝度値を内挿することで、ポリゴン内の画素の
画素位置と奥行き値及び輝度値を求め、これらと共にポ
リゴン内の各画素位置から画素毎のバッファリードアド
レスを計算し、キャッシュ制御部13に供給する。
Subsequently, the CPU 11 outputs a drawing command to the drawing circuit 12. When receiving the drawing command as an input, the drawing circuit 12 takes in polygon data input from the outside. This polygon data is shape data of three-dimensional coordinates treated as a planar polygon (for example, a triangle) called a polygon. For each vertex of the polygon, a depth value (Z value) representing the position on the screen and the distance from the viewpoint and The brightness value is described. The drawing circuit 12 interpolates the depth value and the brightness value of the polygon data to obtain the pixel position, the depth value and the brightness value of the pixel in the polygon, and together with them, the buffer for each pixel from each pixel position in the polygon. The read address is calculated and supplied to the cache control unit 13.

【0016】バッファ16は、格子状に並んだ画素で構
成される画面上の各画素位置に対応した、視点からの距
離を表す奥行き値及び輝度値を格納するためのメモリ
で、バッファ16に格納された画面の奥行き値及び輝度
値を、縦mライン、横nピクセル毎のブロック単位に分
割し、各ブロック(以下、バッファブロックともいう)
にはバッファブロック番号を付している。
The buffer 16 is a memory for storing a depth value and a brightness value representing a distance from the viewpoint, which corresponds to each pixel position on the screen composed of pixels arranged in a grid pattern, and is stored in the buffer 16. The depth value and the luminance value of the displayed screen are divided into blocks each having m vertical lines and n horizontal pixels, and each block (hereinafter, also referred to as a buffer block)
Is assigned a buffer block number.

【0017】一方、キャッシュメモリ14は、上記のバ
ッファブロックを複数個格納するメモリで、各バッファ
ブロックを格納するキャッシュブロック毎にキャッシュ
ブロック番号を付している。キャッシュ制御部13は、
各キャッシュブロックが格納しているバッファブロック
番号を記憶している。
On the other hand, the cache memory 14 is a memory for storing a plurality of the above buffer blocks, and a cache block number is given to each cache block for storing each buffer block. The cache control unit 13
The buffer block number stored in each cache block is stored.

【0018】ここで、上記のバッファ16が格納してい
るバッファブロックのバッファブロック番号と、キャッ
シュメモリ14が格納しているバッファブロック番号
と、キャッシュ制御部13が格納しているキャッシュブ
ロック番号とバッファブロック番号の対応関係につい
て、図2と共に詳細に説明する。一例として、縦16ラ
イン(画素)、横16ピクセル(画素)の画面の奥行き
値及び輝度値を、縦4ライン(画素)、横4ピクセル
(画素)毎のブロック単位に分割した場合、図2(a)
に示すように、これら各バッファブロックをバッファ1
6が格納すると共に、各バッファブロックにはバッファ
ブロック番号が付されている。
Here, the buffer block number of the buffer block stored in the buffer 16, the buffer block number stored in the cache memory 14, the cache block number stored in the cache control unit 13, and the buffer The correspondence between block numbers will be described in detail with reference to FIG. As an example, when the depth value and the brightness value of a screen having 16 lines (pixels) vertically and 16 pixels (pixels) horizontally are divided into blocks each having 4 lines (pixels) vertically and 4 pixels (pixels) horizontally, FIG. (A)
Each of these buffer blocks as shown in
6 is stored, and a buffer block number is added to each buffer block.

【0019】一方、キャッシュメモリ14は一例とし
て、4個のバッファブロックを格納する容量があったと
すると、キャッシュメモリ14の容量は、図2(b)に
示すように、4個のキャッシュブロックに分割され、そ
れら各キャッシュブロックにはキャッシュブロック番号
0〜3が付されている。
On the other hand, assuming that the cache memory 14 has a capacity for storing four buffer blocks as an example, the capacity of the cache memory 14 is divided into four cache blocks as shown in FIG. 2B. The cache block numbers 0 to 3 are assigned to the respective cache blocks.

【0020】ここで、描画回路12がバッファブロック
番号9のバッファブロックをキャッシュメモリ14から
リードしたい場合、キャッシュ制御部13はキャッシュ
メモリ14のキャッシュブロック番号0〜3のいずれか
にバッファブロック番号9のバッファブロックのデータ
が格納されているかを調べる必要があり、そのために
は、キャッシュメモリ14のキャッシュブロック番号0
〜3のそれぞれに、現在どのバッファブロックを格納し
ているかをキャッシュ制御部13で格納しておく必要が
ある。
When the drawing circuit 12 wants to read the buffer block with the buffer block number 9 from the cache memory 14, the cache control unit 13 assigns the buffer block number 9 to any of the cache block numbers 0 to 3 in the cache memory 14. It is necessary to check whether or not the data of the buffer block is stored. For that purpose, the cache block number 0 of the cache memory 14 is
It is necessary for the cache control unit 13 to store which buffer block is currently stored in each of 3 to 3.

【0021】図2の例では、図2(b)、(c)に示す
ように、キャッシュメモリ14のキャッシュブロック番
号0のキャッシュブロックにはバッファブロック番号0
のバッファブロックが、キャッシュブロック番号1のキ
ャッシュブロックにはバッファブロック番号9のバッフ
ァブロックが、キャッシュブロック番号2のキャッシュ
ブロックにはバッファブロック番号5のバッファブロッ
クが、キャッシュブロック番号3のキャッシュブロック
にはバッファブロック番号4のバッファブロックがそれ
ぞれ格納されており、この対応関係をキャッシュ制御部
13で記憶している。
In the example of FIG. 2, as shown in FIGS. 2B and 2C, the buffer block number 0 is assigned to the cache block of cache block number 0 of the cache memory 14.
Buffer block, the cache block of cache block number 1 is the buffer block of buffer block number 9, the cache block of cache block number 2 is the buffer block of buffer block number 5, and the cache block of cache block number 3 is The buffer block with the buffer block number 4 is stored therein, and the correspondence relation is stored in the cache control unit 13.

【0022】再び図1に戻って説明するに、キャッシュ
制御部13は、描画回路12からバッファリードアドレ
スが入力されると、それからリードするバッファブロッ
ク番号(バッファリードブロック番号)を算出し、キャ
ッシュメモリ14内の各キャッシュブロックが保持して
いるバッファブロック番号と比較する。
Referring back to FIG. 1 again, when the buffer read address is input from the drawing circuit 12, the cache control unit 13 calculates the buffer block number (buffer read block number) to be read from the cache read address, and the cache memory It is compared with the buffer block number held by each cache block in 14.

【0023】比較が一致した場合、キャッシュ制御部1
3は、画素位置に対応するリードアドレスをキャッシュ
メモリ14に出力し、キャッシュメモリ14から画素位
置に対応する奥行き値をリードして描画回路12へ出力
する。
If the comparisons match, the cache control unit 1
3 outputs the read address corresponding to the pixel position to the cache memory 14, reads the depth value corresponding to the pixel position from the cache memory 14, and outputs the depth value to the drawing circuit 12.

【0024】上記の比較が一致しない場合、キャッシュ
制御部13は、CPU11へのキャッシュヒット信号を
インアクティブにして、CPU11からの新たな描画命
令出力を抑止すると共に、更新を行うキャッシュブロッ
クを選択し、更新を行うキャッシュブロックに対応する
バッファブロック番号からバッファライトスタートアド
レスを算出し、更新を行うキャッシュメモリ14のキャ
ッシュブロック番号からキャッシュスタートアドレスを
算出し、キャッシュ更新リクエストと共にバッファ制御
部15に出力する。
If the above comparisons do not match, the cache control unit 13 inactivates the cache hit signal to the CPU 11 to suppress the output of a new drawing command from the CPU 11 and select the cache block to be updated. , A buffer write start address is calculated from the buffer block number corresponding to the cache block to be updated, a cache start address is calculated from the cache block number of the cache memory 14 to be updated, and is output to the buffer control unit 15 together with the cache update request. .

【0025】バッファ制御部15は、キャッシュ更新リ
クエストがキャッシュ制御部13から入力されると、同
じくキャッシュ制御部13から入力されるキャッシュス
タートアドレスから1バッファブロック分の奥行き値及
び輝度値をキャッシュメモリ14からリードし、同じく
キャッシュ制御部13から入力されるバッファライトス
タートアドレスで示されたバッファ16の場所に格納す
る。
When a cache update request is input from the cache control unit 13, the buffer control unit 15 obtains a depth value and a brightness value for one buffer block from the cache start address also input from the cache control unit 13 in the cache memory 14. From the cache control unit 13 and stores it in the location of the buffer 16 indicated by the buffer write start address which is also input from the cache control unit 13.

【0026】その後、バッファ制御部15は、キャッシ
ュ制御部13から入力されるバッファリードスタートア
ドレスで示された、バッファ16の格納場所から1バッ
ファブロック分をリードし、その1バッファブロック分
をキャッシュメモリ14のキャッシュスタートアドレス
で示された場所に格納する。その後、バッファ制御部1
5は、キャッシュ制御部13にキャッシュ更新アクノリ
ッジを出力する。
Thereafter, the buffer control unit 15 reads one buffer block from the storage location of the buffer 16 indicated by the buffer read start address input from the cache control unit 13, and caches the one buffer block. Store in the location indicated by 14 cache start addresses. After that, the buffer control unit 1
5 outputs a cache update acknowledge to the cache control unit 13.

【0027】バッファ16はSDRAMで構成されてい
るので、バッファ制御部15はバッファ16にチップセ
レクト(CS)、ローアドレスストローブ(RAS)、
カラムアドレスストローブ(CAS)、ライトイネーブ
ル(WE)、アドレスを出力し、奥行き値と輝度値のラ
イト/リードを行う。
Since the buffer 16 is composed of the SDRAM, the buffer control section 15 causes the buffer 16 to perform chip select (CS), row address strobe (RAS),
The column address strobe (CAS), write enable (WE), and address are output, and the depth value and the brightness value are written / read.

【0028】上記の比較が一致しない場合の動作につい
て、図3と共に更に具体的に説明する。一例として、バ
ッファ16に図3(a)(図2(a)と同じ)に示す1
6個のバッファブロックが格納されているとし、また、
図3(b)に示すキャッシュメモリ14の4つの記憶領
域を示すキャッシュブロック番号0〜3のキャッシュブ
ロックに、図2(c)に示したバッファブロック番号の
バッファブロックの奥行き値及び輝度値が格納されてい
るものとする。この状態で、描画回路12がキャッシュ
制御部13に出力したバッファリードアドレスが、バッ
ファブロック番号10に対応した場合、キャッシュ制御
部13は、4つのキャッシュブロックにはバッファブロ
ック番号10のバッファブロックが格納されていないの
で、前記した比較をした結果、比較が一致しない。
The operation when the above comparisons do not match will be described more specifically with reference to FIG. As an example, the buffer 16 shown in FIG. 3 (a) (same as FIG. 2 (a)) 1
It is assumed that 6 buffer blocks are stored, and
The depth values and the brightness values of the buffer blocks with the buffer block numbers shown in FIG. 2C are stored in the cache blocks with cache block numbers 0 to 3 that indicate the four storage areas of the cache memory 14 shown in FIG. 3B. It has been done. In this state, when the buffer read address output from the drawing circuit 12 to the cache control unit 13 corresponds to the buffer block number 10, the cache control unit 13 stores the buffer block with the buffer block number 10 in the four cache blocks. As a result of the above comparison, the comparison does not match.

【0029】そこで、キャッシュ制御部13は、キャッ
シュメモリ14が図3(b)の状態の場合、容量一杯に
バッファブロックが記憶されており、そのままではバッ
ファブロック番号10のバッファブロックをキャッシュ
メモリ14にライトできないので、4つのキャッシュブ
ロックの中で更新を行うキャッシュブロックを一つ選択
し(ここでは、一例として、キャッシュブロック番号0
とする)、選択したキャッシュブロックに格納されてい
るバッファブロック番号0のバッファブロックの奥行き
値及び輝度値をリードしてバッファ16にライトし、続
いてバッファブロック番号10のバッファブロックの奥
行き値と輝度値を、バッファ16からリードして更新を
行うキャッシュブロックとして選択したキャッシュブロ
ック番号0のキャッシュブロックに格納する。
Therefore, when the cache memory 14 is in the state of FIG. 3B, the cache control unit 13 stores the buffer block in the full capacity, and the buffer block with the buffer block number 10 is stored in the cache memory 14 as it is. Since it cannot be written, one cache block to be updated is selected from the four cache blocks (here, as an example, cache block number 0
The depth value and the brightness value of the buffer block with the buffer block number 0 stored in the selected cache block are read and written to the buffer 16, and then the depth value and the brightness value of the buffer block with the buffer block number 10 are read. The value is stored in the cache block with the cache block number 0 selected as the cache block to be read from the buffer 16 and updated.

【0030】これにより、キャッシュメモリ14は、図
3(c)に示すように、更新を行うキャッシュブロック
番号0のキャッシュブロックにバッファブロック番号1
0のバッファブロックの奥行き値と輝度値が記憶された
状態となる。記憶終了後、バッファ制御部15は、キャ
ッシュ制御部13にキャッシュ更新アクノリッジを出力
する。更新を行うキャッシュブロックをどれにするか
は、アットランダムに選択してもよいが、比較が一致す
る確率(キャッシュヒット率)を上げるために、LRU
アルゴリズム(全キャッシュブロックの中で描画回路1
2がアクセスしてから最も時間が経過しているキャッシ
ュブロックを選択するアルゴリズム)を使用することが
望ましい。
As a result, as shown in FIG. 3C, the cache memory 14 assigns the buffer block number 1 to the cache block having the cache block number 0 to be updated.
The depth value and the brightness value of the buffer block of 0 are stored. After the storage ends, the buffer control unit 15 outputs a cache update acknowledge to the cache control unit 13. The cache block to be updated may be selected at random, but in order to increase the probability that the comparisons match (cache hit rate), the LRU
Algorithm (Drawing circuit 1 among all cache blocks
It is preferable to use an algorithm that selects a cache block that has been most accessed since 2).

【0031】再び図1に戻って説明する。キャッシュ制
御部13は、キャッシュ更新アクノリッジが入力される
と、キャッシュヒット信号をアクティブにすると共に、
バッファリードブロック番号と、各キャッシュブロック
が保持しているバッファブロック番号とを再比較し、画
素位置に対応するリードアドレスをキャッシュメモリ1
4へ出力し、キャッシュメモリ14から奥行き値をリー
ドして描画回路12へ出力する。
Returning to FIG. 1, the description will be continued. When the cache update acknowledge is input, the cache control unit 13 activates the cache hit signal and
The buffer read block number is compared again with the buffer block number held by each cache block, and the read address corresponding to the pixel position is set in the cache memory 1.
4, the depth value is read from the cache memory 14 and output to the drawing circuit 12.

【0032】描画回路12はキャッシュメモリ14から
奥行き値が入力されると、前述したポリゴンデータに記
述されている頂点における奥行き値から内挿によって求
めた奥行き値と比較し、内挿によって求めた奥行き値の
方が入力された奥行き値よりも小さい場合は、内挿によ
って求めた画素の方が視点からの距離が近いので、内挿
によって求めた奥行き値と輝度値をキャッシュメモリ1
4にライトするため、キャッシュ制御部13にバッファ
ライトアドレス、ライトイネーブル、奥行き値、輝度値
を出力する。なお、内挿によって求めた奥行き値の方が
入力された奥行き値よりも大きい場合は、内挿によって
求めた奥行き値と輝度値のキャッシュメモリ14へのラ
イトは行わない。
When the depth value is input from the cache memory 14, the drawing circuit 12 compares it with the depth value obtained by interpolation from the depth value at the apex described in the polygon data, and obtains the depth obtained by interpolation. If the value is smaller than the input depth value, the pixel obtained by the interpolation is closer to the viewpoint, so the depth value and the luminance value obtained by the interpolation are stored in the cache memory 1
In order to write to 4, the buffer write address, write enable, depth value, and brightness value are output to the cache control unit 13. If the depth value obtained by interpolation is larger than the input depth value, the depth value and luminance value obtained by interpolation are not written to the cache memory 14.

【0033】キャッシュ制御部13は、描画回路12か
らバッファライトアドレスが入力されると、それからバ
ッファライトブロック番号を算出し、各キャッシュブロ
ックが保持しているバッファブロック番号と比較する。
比較が一致した場合、キャッシュ制御部13は比較が一
致したキャッシュブロックのライトアドレス、ライトイ
ネーブル、奥行き値、輝度値をキャッシュメモリ14に
出力し、キャッシュメモリ14に奥行き値と輝度値をラ
イトする。
When the buffer write address is input from the drawing circuit 12, the cache control unit 13 calculates the buffer write block number from the buffer write address and compares it with the buffer block number held by each cache block.
If the comparisons match, the cache control unit 13 outputs the write address, write enable, depth value, and brightness value of the cache block for which the comparisons match to the cache memory 14, and writes the depth value and the brightness value to the cache memory 14.

【0034】上記の比較が一致しない場合、キャッシュ
制御部13はCPU11へのキャッシュヒット信号をイ
ンアクティブにして、CPU11からの新たな描画命令
出力を抑止すると共に、更新を行うキャッシュブロック
を選択し、更新を行うキャッシュメモリ14が保持して
いるバッファブロックのバッファブロック番号からバッ
ファライトスタートアドレスを算出し、更新を行うキャ
ッシュメモリ14のキャッシュブロック番号からキャッ
シュスタートアドレスを算出し、バッファライトブロッ
ク番号からバッファリードスタートアドレスを算出し、
キャッシュ更新リクエストと共にバッファ制御部15に
出力する。
If the above comparisons do not match, the cache control unit 13 inactivates the cache hit signal to the CPU 11 to suppress the output of a new drawing command from the CPU 11 and select the cache block to be updated. The buffer write start address is calculated from the buffer block number of the buffer block held by the cache memory 14 to be updated, the cache start address is calculated from the cache block number of the cache memory 14 to be updated, and the buffer is written from the buffer write block number. Calculate the read start address,
Output to the buffer control unit 15 together with the cache update request.

【0035】バッファ制御部15は、キャッシュ更新リ
クエストがキャッシュ制御部13から入力されると、同
じくキャッシュ制御部13から入力されるキャッシュス
タートアドレスから1バッファブロック分の奥行き値及
び輝度値をキャッシュメモリ14からリードし、同じく
キャッシュ制御部13から入力されるバッファライトス
タートアドレスで示されたバッファ16の場所に格納す
る。
When a cache update request is input from the cache control unit 13, the buffer control unit 15 obtains a depth value and a brightness value for one buffer block from the cache start address also input from the cache control unit 13 in the cache memory 14. From the cache control unit 13 and stores it in the location of the buffer 16 indicated by the buffer write start address which is also input from the cache control unit 13.

【0036】その後、バッファ制御部15は、キャッシ
ュ制御部13から入力されるバッファリードスタートア
ドレスで示された、バッファ16の格納場所から1バッ
ファブロック分をリードし、その1バッファブロック分
をキャッシュメモリ14のキャッシュスタートアドレス
で示された場所に格納する。その後、バッファ制御部1
5は、キャッシュ制御部13にキャッシュ更新アクノリ
ッジを出力する。
Thereafter, the buffer control unit 15 reads one buffer block from the storage location of the buffer 16 indicated by the buffer read start address input from the cache control unit 13, and caches the one buffer block. Store in the location indicated by 14 cache start addresses. After that, the buffer control unit 1
5 outputs a cache update acknowledge to the cache control unit 13.

【0037】バッファ16はSDRAMで構成されてい
るので、バッファ制御部15はバッファ16にチップセ
レクト(CS)、ローアドレスストローブ(RAS)、
カラムアドレスストローブ(CAS)、ライトイネーブ
ル(WE)、アドレスを出力し、奥行き値と輝度値のラ
イト/リードを行う。
Since the buffer 16 is composed of the SDRAM, the buffer control unit 15 causes the buffer 16 to perform chip select (CS), row address strobe (RAS),
The column address strobe (CAS), write enable (WE), and address are output, and the depth value and the brightness value are written / read.

【0038】キャッシュ制御部13は、キャッシュ更新
アクノリッジが入力されると、キャッシュヒット信号を
アクティブにすると共に、バッファライトブロック番号
と、各キャッシュブロックが保持しているバッファブロ
ック番号とを再比較し、比較が一致したキャッシュブロ
ックのライトアドレス、ライトイネーブル、輝度値、奥
行き値をキャッシュメモリ14へ出力し、キャッシュメ
モリ14に輝度値と奥行き値をライトする。
When the cache update acknowledge is input, the cache control unit 13 activates the cache hit signal and re-compares the buffer write block number with the buffer block number held by each cache block. The write address, the write enable, the brightness value, and the depth value of the cache block in which the comparison is matched are output to the cache memory 14, and the brightness value and the depth value are written to the cache memory 14.

【0039】画面の全てのポリゴンの描画が終了する
と、CPU11はバッファ制御部15に画像出力リクエ
スト、バッファスタートアドレス、画面縦ライン数、画
面横ピクセル数を出力する。バッファ制御部15は、画
像出力リクエストが入力されると、入力されたバッファ
スタートアドレス、画面縦ライン数、画面横ピクセル数
の情報が示す領域のバッファ16の場所から輝度値をリ
ードし出力する。
When all the polygons on the screen have been drawn, the CPU 11 outputs the image output request, the buffer start address, the number of vertical screen lines, and the number of horizontal screen pixels to the buffer control unit 15. When the image output request is input, the buffer control unit 15 reads and outputs the brightness value from the location of the buffer 16 in the area indicated by the input information of the buffer start address, the screen vertical line number, and the screen horizontal pixel number.

【0040】描画回路12は、バッファリードアドレス
とバッファライトアドレスを独立して出力できるので、
前のピクセルのバッファライトが終了する前に、次のピ
クセルのバッファリードを行うことが可能となり、描画
回路12のパイプライン化が可能となる。また、描画回
路12は、ブロック内のピクセルの並列処理が可能であ
る。これにより、バッファ16のリード/ライトの高速
化ができ、描画回路12の並列処理化、パイプライン化
により高速に画像生成することができる。
Since the drawing circuit 12 can output the buffer read address and the buffer write address independently,
The buffer read of the next pixel can be performed before the buffer write of the previous pixel is completed, and the drawing circuit 12 can be pipelined. Further, the drawing circuit 12 is capable of parallel processing of pixels in the block. As a result, the read / write speed of the buffer 16 can be increased, and an image can be generated at high speed by the parallel processing and pipeline processing of the drawing circuit 12.

【0041】次に、本発明の第2の実施の形態について
説明する。図4は本発明になる画像生成装置の第2の実
施の形態のブロック図を示す。同図中、図1と同一構成
部分には同一符号を付し、その説明を適宜省略する。図
4において、キャッシュ制御部21はキャッシュメモリ
14のキャッシュブロック毎に、バッファ16からキャ
ッシュメモリ14への転送時にリセットされ、描画回路
12からキャッシュメモリ14へのライト時にセットさ
れるライトフラグをバッファ制御部22へ出力する機能
を付加され、バッファ制御部22はキャッシュメモリ1
4からバッファブロックの奥行き値及び輝度値をバッフ
ァ16へ転送しようとするときに、ライトフラグがセッ
トされている場合のみバッファブロックの奥行き値及び
輝度値をバッファ16に転送する。
Next, a second embodiment of the present invention will be described. FIG. 4 shows a block diagram of a second embodiment of the image generating apparatus according to the present invention. In the figure, the same components as those in FIG. 1 are designated by the same reference numerals, and the description thereof will be omitted as appropriate. In FIG. 4, the cache control unit 21 controls, for each cache block of the cache memory 14, a write flag that is reset at the time of transfer from the buffer 16 to the cache memory 14 and is set at the time of writing from the drawing circuit 12 to the cache memory 14. The buffer control unit 22 is added with a function of outputting to the cache memory 1
When the depth value and the brightness value of the buffer block from 4 are transferred to the buffer 16, the depth value and the brightness value of the buffer block are transferred to the buffer 16 only when the write flag is set.

【0042】次に、本実施の形態の動作について説明す
る。まず、CPU11からバッファ初期化リクエスト
が、バッファスタートアドレス、画面縦ライン数、画面
横ピクセル数と共にバッファ制御部22に供給され、バ
ッファ制御部22によりバッファ16の初期化が行われ
る。
Next, the operation of this embodiment will be described. First, the CPU 11 supplies a buffer initialization request to the buffer control unit 22 together with the buffer start address, the screen vertical line number, and the screen horizontal pixel number, and the buffer control unit 22 initializes the buffer 16.

【0043】続いて、CPU11は描画命令を描画回路
12へ出力する。描画回路12は、描画命令を入力とし
て受けると、外部から入力されるポリゴンデータを取り
込む。このポリゴンデータは、前述したように、ポリゴ
ンの各頂点毎に画面上の位置と視点からの距離を表す奥
行き値(Z値)及び輝度値が記述されており、描画回路
12は、それらを内挿することで、ポリゴン内の画素の
画素位置と奥行き値及び輝度値を求め、これらと共にポ
リゴン内の各画素位置から画素毎のバッファリードアド
レスを計算し、キャッシュ制御部21に供給する。
Subsequently, the CPU 11 outputs a drawing command to the drawing circuit 12. When receiving the drawing command as an input, the drawing circuit 12 takes in polygon data input from the outside. In the polygon data, as described above, the depth value (Z value) and the brightness value representing the position on the screen and the distance from the viewpoint are described for each vertex of the polygon, and the drawing circuit 12 stores these values. By inserting, the pixel position of the pixel in the polygon, the depth value, and the brightness value are obtained, and together with these, the buffer read address for each pixel is calculated from each pixel position in the polygon, and is supplied to the cache control unit 21.

【0044】キャッシュ制御部21は、キャッシュメモ
リ14のキャッシュブロックが格納しているバッファブ
ロックのバッファブロック番号を記憶しており、各キャ
ッシュブロックが描画回路12によってライトされたこ
とを記憶するライトフラグを持つ。また、キャッシュ制
御部21は、描画回路12からバッファリードアドレス
が入力されると、それからリードするバッファブロック
番号(バッファリードブロック番号)を算出し、キャッ
シュメモリ14内の各キャッシュブロックが保持してい
るバッファブロック番号と比較する。
The cache control unit 21 stores the buffer block number of the buffer block stored in the cache block of the cache memory 14, and sets a write flag for storing that each cache block has been written by the drawing circuit 12. To have. Further, when the buffer read address is input from the drawing circuit 12, the cache control unit 21 calculates the buffer block number (buffer read block number) to be read from it, and each cache block in the cache memory 14 holds the buffer block number. Compare with buffer block number.

【0045】比較が一致した場合、キャッシュ制御部2
1は、一致したキャッシュブロックを示すキャッシュブ
ロック番号のリードアドレスをキャッシュメモリ14に
出力し、キャッシュメモリ14から一致したキャッシュ
ブロック(リードするバッファブロック番号のバッファ
ブロック)の奥行き値をリードして描画回路12へ出力
する。
If the comparisons match, the cache control unit 2
1 outputs the read address of the cache block number indicating the matched cache block to the cache memory 14, reads the depth value of the matched cache block (buffer block of the read buffer block number) from the cache memory 14, and draws the drawing circuit. Output to 12.

【0046】上記の比較が一致しない場合、キャッシュ
制御部21は、CPU11へのキャッシュヒット信号を
インアクティブにして、CPU11からの新たな描画命
令出力を抑止すると共に、更新を行うキャッシュブロッ
クを選択し、更新を行うキャッシュメモリ14が保持し
ているキャッシュブロックのバッファブロック番号から
バッファライトスタートアドレスを算出し、更新を行う
キャッシュメモリ14のキャッシュブロック番号からキ
ャッシュスタートアドレスを算出し、キャッシュ更新リ
クエストと共にバッファ制御部22に出力する。
If the above comparisons do not match, the cache control unit 21 inactivates the cache hit signal to the CPU 11 to suppress the output of a new drawing command from the CPU 11 and select the cache block to be updated. , The buffer write start address is calculated from the buffer block number of the cache block held by the cache memory 14 to be updated, the cache start address is calculated from the cache block number of the cache memory 14 to be updated, and the buffer is updated together with the cache update request. Output to the control unit 22.

【0047】バッファ制御部22は、キャッシュ更新リ
クエストがキャッシュ制御部21から入力されると、同
じくキャッシュ制御部21から入力されるライトフラグ
がアクティブかどうか判定し、ライトフラグがアクティ
ブであるときには、入力されたキャッシュスタートアド
レスから1バッファブロック分の奥行き値及び輝度値を
キャッシュメモリ14のキャッシュブロックからリード
し、同じくキャッシュ制御部21から入力されるバッフ
ァライトスタートアドレスで示されたバッファ16の場
所に格納する。バッファ制御部22は、ライトフラグが
インアクティブであるときには、上記のバッファライト
は行わない。
When the cache update request is input from the cache control unit 21, the buffer control unit 22 determines whether the write flag also input from the cache control unit 21 is active. When the write flag is active, the buffer control unit 22 inputs the cache update request. The depth value and the brightness value for one buffer block are read from the cache block of the cache memory 14 from the cache start address thus stored, and stored in the location of the buffer 16 indicated by the buffer write start address which is also input from the cache control unit 21. To do. The buffer control unit 22 does not perform the above buffer write when the write flag is inactive.

【0048】その後、バッファ制御部22は、キャッシ
ュ制御部21から入力されるバッファリードスタートア
ドレスで示された、バッファ16の格納場所から1バッ
ファブロック分の奥行き値をリードし、その1バッファ
ブロック分の奥行き値をキャッシュメモリ14のキャッ
シュスタートアドレスで示された場所に格納する。その
後、バッファ制御部22は、キャッシュ制御部21にキ
ャッシュ更新アクノリッジを出力する。
After that, the buffer control unit 22 reads the depth value for one buffer block from the storage location of the buffer 16 indicated by the buffer read start address input from the cache control unit 21, and for that one buffer block. And stores the depth value in the cache memory 14 at the location indicated by the cache start address. After that, the buffer control unit 22 outputs a cache update acknowledge to the cache control unit 21.

【0049】前述したように、バッファ16はSDRA
Mで構成されているので、バッファ制御部22はバッフ
ァ16にチップセレクト(CS)、ローアドレスストロ
ーブ(RAS)、カラムアドレスストローブ(CA
S)、ライトイネーブル(WE)、アドレスを出力し、
奥行き値と輝度値のライト/リードを行う。
As described above, the buffer 16 is SDRA.
Since it is composed of M, the buffer control unit 22 causes the buffer 16 to include a chip select (CS), a row address strobe (RAS), and a column address strobe (CA).
S), write enable (WE), output address,
Write / read depth value and brightness value.

【0050】キャッシュ制御部21は、キャッシュ更新
アクノリッジが入力されると、キャッシュヒット信号を
アクティブにすると共に、更新したキャッシュブロック
のライトフラグをインアクティブにし、バッファリード
ブロック番号と、各キャッシュブロックが保持している
バッファブロック番号とを再比較し、比較が一致したキ
ャッシュブロックのリードアドレスをキャッシュメモリ
14へ出力し、キャッシュメモリ14から奥行き値をリ
ードして描画回路12へ出力する。
When the cache update acknowledge is input, the cache control unit 21 activates the cache hit signal and inactivates the write flag of the updated cache block to hold the buffer read block number and each cache block. Then, the read address of the cache block in which the comparison is matched is output to the cache memory 14, the depth value is read from the cache memory 14 and output to the drawing circuit 12.

【0051】描画回路12はキャッシュメモリ14から
奥行き値が入力されると、内挿によって求めた奥行き値
と比較し、内挿によって求めた奥行き値の方が入力され
た奥行き値よりも小さい場合は、内挿によって求めた奥
行き値と輝度値をキャッシュメモリ14にライトするた
め、キャッシュ制御部21にキャッシュライトアドレ
ス、ライトイネーブル、奥行き値、輝度値を出力する。
When the depth value is input from the cache memory 14, the drawing circuit 12 compares it with the depth value obtained by interpolation, and if the depth value obtained by interpolation is smaller than the input depth value. , The cache write address, the write enable, the depth value, and the brightness value are output to the cache control unit 21 in order to write the depth value and the brightness value obtained by the interpolation into the cache memory 14.

【0052】キャッシュ制御部21は、描画回路12か
らバッファライトアドレスが入力されると、それからバ
ッファライトブロック番号を算出し、キャッシュメモリ
14の各キャッシュブロックが保持しているバッファブ
ロック番号と比較する。比較が一致した場合、キャッシ
ュ制御部21は比較が一致したキャッシュブロックのラ
イトアドレス、ライトイネーブル、奥行き値、輝度値を
キャッシュメモリ14に出力し、キャッシュメモリ14
に描画回路12で内挿によって求めた奥行き値と輝度値
をライトすると共に、比較が一致したキャッシュブロッ
クのライトフラグをアクティブにする。
When the buffer write address is input from the drawing circuit 12, the cache controller 21 calculates the buffer write block number from the buffer write address and compares it with the buffer block number held by each cache block of the cache memory 14. If the comparison is matched, the cache control unit 21 outputs the write address, write enable, depth value, and brightness value of the cache block for which the comparison is matched to the cache memory 14, and the cache memory 14
Further, the drawing circuit 12 writes the depth value and the brightness value obtained by the interpolation, and activates the write flag of the cache block in which the comparison matches.

【0053】上記の比較が一致しない場合、キャッシュ
制御部21はCPU11へのキャッシュヒット信号をイ
ンアクティブにして、CPU11からの新たな描画命令
出力を抑止すると共に、更新を行うキャッシュメモリ1
4のキャッシュブロックを選択し、選択されたキャッシ
ュブロックのバッファブロック番号からバッファライト
スタートアドレスを算出し、更新を行うキャッシュブロ
ックのキャッシュブロック番号からキャッシュスタート
アドレスを算出し、バッファライトブロック番号からバ
ッファリードスタートアドレスを算出し、更新を行うキ
ャッシュブロックのライトフラグ及びキャッシュ更新リ
クエストと共にバッファ制御部22に出力する。
If the above comparisons do not match, the cache control unit 21 inactivates the cache hit signal to the CPU 11 to suppress the output of a new drawing command from the CPU 11 and to update the cache memory 1.
4 cache block is selected, the buffer write start address is calculated from the buffer block number of the selected cache block, the cache start address is calculated from the cache block number of the cache block to be updated, and the buffer read from the buffer write block number. The start address is calculated and output to the buffer control unit 22 together with the write flag of the cache block to be updated and the cache update request.

【0054】バッファ制御部22は、キャッシュ更新リ
クエストがキャッシュ制御部21から入力されると、キ
ャッシュ制御部21から入力されるライトフラグがアク
ティブな場合は、キャッシュ制御部21からのキャッシ
ュスタートアドレスから1バッファブロック分の奥行き
値及び輝度値をキャッシュメモリ14からリードし、同
じくキャッシュ制御部21から入力されるバッファライ
トスタートアドレスで示されたバッファ16の場所に格
納する。ライトフラグがインアクティブの場合は、バッ
ファライトは行わない。
When a cache update request is input from the cache control unit 21, the buffer control unit 22 sends 1 from the cache start address from the cache control unit 21 if the write flag input from the cache control unit 21 is active. The depth value and the brightness value for the buffer block are read from the cache memory 14 and stored in the location of the buffer 16 indicated by the buffer write start address also input from the cache control unit 21. If the write flag is inactive, buffer write is not performed.

【0055】その後、バッファ制御部22は、キャッシ
ュ制御部21から入力されるバッファリードスタートア
ドレスで示された、バッファ16の格納場所から1バッ
ファブロック分をリードし、その1バッファブロック分
をキャッシュメモリ14のキャッシュスタートアドレス
で示された場所に格納する。その後、バッファ制御部2
2は、キャッシュ制御部21にキャッシュ更新アクノリ
ッジを出力する。
Thereafter, the buffer control unit 22 reads one buffer block from the storage location of the buffer 16 indicated by the buffer read start address input from the cache control unit 21, and caches the one buffer block. Store in the location indicated by 14 cache start addresses. After that, the buffer control unit 2
2 outputs a cache update acknowledge to the cache control unit 21.

【0056】バッファ16はSDRAMで構成されてい
るので、バッファ制御部22はバッファ16にチップセ
レクト(CS)、ローアドレスストローブ(RAS)、
カラムアドレスストローブ(CAS)、ライトイネーブ
ル(WE)、アドレスを出力し、奥行き値と輝度値のラ
イト/リードを行う。
Since the buffer 16 is composed of the SDRAM, the buffer control unit 22 causes the buffer 16 to perform chip select (CS), row address strobe (RAS),
The column address strobe (CAS), write enable (WE), and address are output, and the depth value and the brightness value are written / read.

【0057】キャッシュ制御部21は、キャッシュ更新
アクノリッジが入力されると、キャッシュヒット信号を
アクティブにすると共に、更新したキャッシュブロック
のライトフラグをインアクティブにし、バッファライト
ブロック番号と、各キャッシュブロックが保持している
バッファブロック番号とを再比較し、比較が一致したキ
ャッシュブロックのライトアドレス、ライトイネーブ
ル、輝度値、奥行き値をキャッシュメモリ14へ出力
し、キャッシュメモリ14に輝度値と奥行き値をライト
すると共に、比較が一致したキャッシュブロックのライ
トフラグをアクティブにする。
When the cache update acknowledge is input, the cache control unit 21 activates the cache hit signal and inactivates the write flag of the updated cache block to hold the buffer write block number and each cache block. The buffer block number is being compared again, and the write address, write enable, brightness value, and depth value of the cache block for which the comparison matches are output to the cache memory 14, and the brightness value and depth value are written to the cache memory 14. At the same time, the write flag of the cache block in which the comparison matches is activated.

【0058】画面の全てのポリゴンの描画が終了する
と、CPU11はバッファ制御部22に画像出力リクエ
スト、バッファスタートアドレス、画面縦ライン数、画
面横ピクセル数を出力する。バッファ制御部22は、画
像出力リクエストが入力されると、入力されたバッファ
スタートアドレス、画面縦ライン数、画面横ピクセル数
の情報が示す領域のバッファ16の場所から輝度値をリ
ードし出力する。
When the drawing of all the polygons on the screen is completed, the CPU 11 outputs the image output request, the buffer start address, the screen vertical line number, and the screen horizontal pixel number to the buffer control unit 22. When the image output request is input, the buffer control unit 22 reads and outputs the brightness value from the location of the buffer 16 in the area indicated by the input information of the buffer start address, the screen vertical line number, and the screen horizontal pixel number.

【0059】次に、この実施の形態の効果について説明
する。この実施の形態のキャッシュ制御部21は、キャ
ッシュメモリ14に格納されているバッファブロックの
データ(奥行き値と輝度値)が、描画回路12によって
上書きされたかを記憶するライトフラグを持っている。
例えば、バッファブロック番号0のバッファブロック
が、図3(b)のキャッシュブロック番号0のキャッシ
ュブロックに格納された直後は、キャッシュブロック番
号0のライトフラグは0(インアクティブ)になってい
る。
Next, the effect of this embodiment will be described. The cache control unit 21 of this embodiment has a write flag that stores whether the data (depth value and brightness value) of the buffer block stored in the cache memory 14 is overwritten by the drawing circuit 12.
For example, immediately after the buffer block with the buffer block number 0 is stored in the cache block with the cache block number 0 in FIG. 3B, the write flag of the cache block number 0 is 0 (inactive).

【0060】その後、描画回路12が奥行き値と輝度値
をキャッシュブロック番号0のキャッシュブロックにラ
イト(上書き)すると、キャッシュブロック番号0のラ
イトフラグは1(アクティブ)になる。もし、描画回路
12が奥行き値と輝度値をキャッシュブロック番号0の
キャッシュブロックにライトしなければ、ライトフラグ
は0のままである。
After that, when the drawing circuit 12 writes (overwrites) the depth value and the brightness value into the cache block of the cache block number 0, the write flag of the cache block number 0 becomes 1 (active). If the drawing circuit 12 does not write the depth value and the brightness value to the cache block with the cache block number 0, the write flag remains 0.

【0061】さて、バッファブロック番号10のバッフ
ァブロックをキャッシュメモリ14のキャッシュブロッ
ク番号0のキャッシュブロックに格納するために、もと
もとキャッシュブロック番号0のキャッシュブロックに
格納されていたバッファブロック番号0のバッファブロ
ックをバッファ16に格納する場合、キャッシュブロッ
ク番号0のライトフラグが1の場合は、バッファ16へ
のライトは必要であるが、キャッシュブロック番号0の
ライトフラグが0の場合は、キャッシュブロック番号0
のキャッシュブロックは描画回路12によって上書きさ
れていないので、バッファ16へのライトは不要であ
る。これにより、本実施の形態によれば、描画命令出力
抑止の時間を減らすことができ、描画速度を上げること
ができ、キャッシュブロック更新時間を短縮できる。
In order to store the buffer block with the buffer block number 10 in the cache block with the cache block number 0 in the cache memory 14, the buffer block with the buffer block number 0 originally stored in the cache block with the cache block number 0. Is stored in the buffer 16, if the write flag of the cache block number 0 is 1, it is necessary to write to the buffer 16, but if the write flag of the cache block number 0 is 0, the cache block number 0
Since the cache block of 2 is not overwritten by the drawing circuit 12, writing to the buffer 16 is unnecessary. As a result, according to the present embodiment, the time for suppressing the drawing command output can be reduced, the drawing speed can be increased, and the cache block update time can be shortened.

【0062】なお、本発明は以上の実施の形態に限定さ
れるものではなく、例えばバッファ16はSDRAM以
外の他の大容量が確保し易いメモリも使用可能である。
The present invention is not limited to the above-described embodiments, and for example, the buffer 16 may be a memory other than the SDRAM, which can easily secure a large capacity.

【0063】[0063]

【発明の効果】以上説明したように、本発明によれば、
画面を複数のバッファブロックに分割し、それらバッフ
ァブロック単位でバッファとキャッシュメモリ間の奥行
き値及び輝度値の転送を行い、描画回路がバッファリー
ドアドレスとバッファライトアドレスを独立して出力す
ることにより、前の画素のバッファライトが終了する前
に、次の画素のバッファリードを行うことができ、これ
により、バッファリード/ライトの高速化、描画回路の
パイプライン化ができ、更に描画回路の並列処理が実現
できるため、Zバッファ法により隠面消去した画像を高
速に生成することができる。
As described above, according to the present invention,
By dividing the screen into multiple buffer blocks, transferring the depth value and the brightness value between the buffer and the cache memory in units of these buffer blocks, and the drawing circuit outputting the buffer read address and the buffer write address independently, The buffer read of the next pixel can be performed before the buffer write of the previous pixel is completed, which allows the buffer read / write to be performed at high speed and the drawing circuit to be pipelined, and the parallel processing of the drawing circuit. Since it is possible to realize the above, it is possible to generate an image in which the hidden surface is erased by the Z buffer method at high speed.

【0064】また、本発明によれば、バッファ制御部
が、ライトフラグがセットされている場合のみ、キャッ
シュブロックから奥行き値及び輝度値をバッファへ転送
することにより、更新するキャッシュブロックに割り当
てられたライトフラグがセットされていないときには、
そのキャッシュブロックの奥行き値及び輝度値のバッフ
ァへの転送を不要にできるため、キャッシュブロック更
新時間を短縮かでき、描画速度を上げることができる。
Further, according to the present invention, the buffer control unit transfers the depth value and the luminance value from the cache block to the buffer only when the write flag is set, so that the buffer block is assigned to the cache block to be updated. When the light flag is not set,
Since it is not necessary to transfer the depth value and the brightness value of the cache block to the buffer, the cache block update time can be shortened and the drawing speed can be increased.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の第1の実施の形態のブロック図であ
る。
FIG. 1 is a block diagram of a first embodiment of the present invention.

【図2】キャッシュメモリのキャッシュブロックと、バ
ッファのバッファブロックとの対応関係を説明する図で
ある。
FIG. 2 is a diagram illustrating a correspondence relationship between a cache block of a cache memory and a buffer block of a buffer.

【図3】キャッシュメモリの一つのキャッシュブロック
の更新を説明する図である。
FIG. 3 is a diagram illustrating updating of one cache block of a cache memory.

【図4】本発明の第2の実施の形態のブロック図であ
る。
FIG. 4 is a block diagram of a second embodiment of the present invention.

【符号の説明】[Explanation of symbols]

11 中央処理装置(CPU) 12 描画回路 13、21 キャッシュ制御部 14 キャッシュメモリ 15、22 バッファ制御部 16 バッファ(バッファメモリ) 11 Central Processing Unit (CPU) 12 Drawing circuit 13, 21 Cache control unit 14 cache memory 15, 22 Buffer control unit 16 buffers (buffer memory)

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 格子状に並んだ複数の画素で構成される
画面を複数のバッファブロックに分割し、各々バッファ
ブロック番号を付したバッファブロック単位で視点から
の距離を表す奥行き値と輝度値を前記複数の画素毎に格
納するバッファと、 3次元形状物体を基本形状であるポリゴンの集合として
定義し、前記ポリゴンの頂点毎に画面上の位置と視点か
らの距離を表す奥行き値及び輝度値が記述されているポ
リゴンデータを入力として受け、前記奥行き値及び輝度
値を内挿することにより前記ポリゴン内の画素の画素位
置、奥行き値及び輝度値を求めると共に、前記バッファ
から入力された前記画素位置に対応する奥行き値よりも
前記内挿によって求めた奥行き値の方が小さいときにの
み、前記内挿によって求めた奥行き値及び輝度値を出力
する描画回路と、 前記複数のバッファブロックの奥行き値及び輝度値を、
このバッファブロック単位で格納する、各々キャッシュ
ブロック番号を付した複数のキャッシュブロックからな
るキャッシュメモリと、 前記描画回路から前記バッファの前記画素位置に対応す
る奥行き値及び輝度値のリードアドレス又はライトアド
レスを受け、入力された前記リードアドレス又は前記ラ
イトアドレスに対応したバッファブロック番号を算出
し、その算出したバッファブロック番号のバッファブロ
ックが前記キャッシュメモリに格納されているかを、算
出したバッファブロック番号とキャッシュブロック毎に
記憶しているバッファブロック番号を比較することで検
出し、前記キャッシュメモリに格納されているときには
前記キャッシュメモリから前記画素位置に対応する奥行
き値をリードして前記描画回路へ出力するか、又は前記
描画回路から入力された前記奥行き値及び輝度値を前記
キャッシュメモリにライトし、前記キャッシュメモリに
格納されていないときには一のキャッシュブロックを選
択して、選択したキャッシュブロックに格納されている
奥行き値及び輝度値を前記キャッシュメモリから前記バ
ッファへ転送させた後、前記算出したバッファブロック
番号のバッファブロックを前記選択したキャッシュブロ
ックに格納させる制御信号を出力するキャッシュ制御部
と、 前記キャッシュ制御部からの前記制御信号に基づき、前
記選択したキャッシュブロックに格納されている奥行き
値及び輝度値を前記キャッシュメモリから前記バッファ
へ転送した後、前記リードアドレス又は前記ライトアド
レスに対応したバッファブロック番号のバッファブロッ
クの奥行き値及び輝度値を前記バッファから前記選択し
たキャッシュブロックに転送して格納させるバッファ制
御部と、 前記描画回路が少なくとも前記リードアドレス及び前記
ライトアドレスを独立して出力するように前記描画回路
の動作を制御すると共に、前記画面へのポリゴンの描画
開始前に前記バッファ制御部に対して前記バッファを初
期化させ、前記画面内の全てのポリゴンの描画終了時に
前記バッファ制御部に対して前記バッファからの輝度値
をリードさせて出力させる演算手段とを有することを特
徴とする画像生成装置。
1. A screen composed of a plurality of pixels arranged in a grid pattern is divided into a plurality of buffer blocks, and a depth value and a luminance value representing a distance from a viewpoint are displayed in units of buffer blocks each having a buffer block number. A buffer that stores each of the plurality of pixels, and a three-dimensional object is defined as a set of polygons that are basic shapes, and a depth value and a brightness value that represent a position on the screen and a distance from a viewpoint are defined for each vertex of the polygon. The pixel position, the depth value and the brightness value of the pixel in the polygon are obtained by receiving the described polygon data as an input and interpolating the depth value and the brightness value, and the pixel position input from the buffer. The depth value and the brightness value obtained by the interpolation are output only when the depth value obtained by the interpolation is smaller than the depth value corresponding to A drawing circuit which, the depth value and the luminance values of the plurality of buffer blocks,
A cache memory that stores a plurality of cache block numbers, each of which is stored in the buffer block unit, and a read address or a write address of a depth value and a luminance value corresponding to the pixel position of the buffer from the drawing circuit. The buffer block number and the cache block that have been received and are calculated to calculate the buffer block number corresponding to the read address or the write address that has been input, and whether the buffer block having the calculated buffer block number is stored in the cache memory It is detected by comparing the buffer block numbers stored for each, and when stored in the cache memory, the depth value corresponding to the pixel position is read from the cache memory and output to the drawing circuit, or Or The depth value and the brightness value input from the drawing circuit are written to the cache memory, and when not stored in the cache memory, one cache block is selected and the depth value stored in the selected cache block is selected. And a cache control unit that outputs a control signal for storing a brightness value from the cache memory to the buffer and then stores the buffer block having the calculated buffer block number in the selected cache block, and a cache control unit from the cache control unit. Based on the control signal, after transferring the depth value and the brightness value stored in the selected cache block from the cache memory to the buffer, the buffer block number of the buffer block corresponding to the read address or the write address Depth A buffer control unit for transferring and storing a threshold value and a brightness value from the buffer to the selected cache block, and an operation of the drawing circuit so that the drawing circuit outputs at least the read address and the write address independently. The buffer control unit before the drawing of polygons on the screen is started, and when the drawing of all polygons in the screen is completed, the buffer control unit is controlled from the buffer. And an arithmetic means for reading and outputting the brightness value of the image generation apparatus.
【請求項2】 前記キャッシュ制御部は、前記バッファ
から前記キャッシュメモリへの前記バッファブロックの
奥行き値及び輝度値の転送時にリセットされ、前記描画
回路から前記キャッシュメモリのキャッシュブロックへ
の前記奥行き値及び輝度値のライト時にセットされるラ
イトフラグを各キャッシュブロック毎に設け、前記バッ
ファ制御部は、前記ライトフラグがセットされている場
合のみ、前記キャッシュブロックから前記奥行き値及び
輝度値を前記バッファへ転送することを特徴とする請求
項1記載の画像生成装置。
2. The cache control unit is reset when the depth value and the brightness value of the buffer block are transferred from the buffer to the cache memory, and the depth value from the drawing circuit to the cache block of the cache memory and A write flag that is set when writing a brightness value is provided for each cache block, and the buffer control unit transfers the depth value and the brightness value from the cache block to the buffer only when the write flag is set. The image generation apparatus according to claim 1, wherein
JP2002079148A 2002-03-20 2002-03-20 Image generating device Pending JP2003281564A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002079148A JP2003281564A (en) 2002-03-20 2002-03-20 Image generating device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002079148A JP2003281564A (en) 2002-03-20 2002-03-20 Image generating device

Publications (1)

Publication Number Publication Date
JP2003281564A true JP2003281564A (en) 2003-10-03

Family

ID=29228735

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002079148A Pending JP2003281564A (en) 2002-03-20 2002-03-20 Image generating device

Country Status (1)

Country Link
JP (1) JP2003281564A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006028093A1 (en) * 2004-09-06 2006-03-16 Matsushita Electric Industrial Co., Ltd. Video generation device and video generation method
JP2008533628A (en) * 2005-03-21 2008-08-21 クゥアルコム・インコーポレイテッド Tiled prefetch and cached depth buffer

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02171944A (en) * 1988-12-26 1990-07-03 Hitachi Ltd Buffer storage device
JPH04195563A (en) * 1990-11-28 1992-07-15 Mitsubishi Electric Corp Controller for memory system
WO1992018945A1 (en) * 1991-04-15 1992-10-29 Oki Electric Industry Co., Ltd. Apparatus for processing image
JPH0659975A (en) * 1992-08-11 1994-03-04 Toshiba Corp Cache memory device for frame buffer
JPH06348868A (en) * 1993-06-02 1994-12-22 Sharp Corp Data driving type information processing system
JPH09179999A (en) * 1995-12-25 1997-07-11 Nec Corp Method and device for image generation

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02171944A (en) * 1988-12-26 1990-07-03 Hitachi Ltd Buffer storage device
JPH04195563A (en) * 1990-11-28 1992-07-15 Mitsubishi Electric Corp Controller for memory system
WO1992018945A1 (en) * 1991-04-15 1992-10-29 Oki Electric Industry Co., Ltd. Apparatus for processing image
JPH0659975A (en) * 1992-08-11 1994-03-04 Toshiba Corp Cache memory device for frame buffer
JPH06348868A (en) * 1993-06-02 1994-12-22 Sharp Corp Data driving type information processing system
JPH09179999A (en) * 1995-12-25 1997-07-11 Nec Corp Method and device for image generation

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006028093A1 (en) * 2004-09-06 2006-03-16 Matsushita Electric Industrial Co., Ltd. Video generation device and video generation method
JPWO2006028093A1 (en) * 2004-09-06 2008-05-08 松下電器産業株式会社 Image generating apparatus and image generating method
US7649531B2 (en) 2004-09-06 2010-01-19 Panasonic Corporation Image generation device and image generation method
JP4704348B2 (en) * 2004-09-06 2011-06-15 パナソニック株式会社 Image generating apparatus and image generating method
JP2008533628A (en) * 2005-03-21 2008-08-21 クゥアルコム・インコーポレイテッド Tiled prefetch and cached depth buffer
US8089486B2 (en) 2005-03-21 2012-01-03 Qualcomm Incorporated Tiled prefetched and cached depth buffer
JP4861403B2 (en) * 2005-03-21 2012-01-25 クゥアルコム・インコーポレイテッド Tiled prefetch and cached depth buffer
JP2012033173A (en) * 2005-03-21 2012-02-16 Qualcomm Inc Tiled prefetch and cached depth buffer

Similar Documents

Publication Publication Date Title
JP3645024B2 (en) Drawing apparatus and drawing method
JPH0348370A (en) Memory access control circuit
JP2007525768A (en) Register-based queuing for texture requests
JP2004326678A (en) Rendering processing unit and graphical processing method
JPH11110580A (en) Texture mapping device and method therefor
JPH06251166A (en) Image processing device
JPH08212382A (en) Z-buffer tag memory constitution
US6812928B2 (en) Performance texture mapping by combining requests for image data
JP2882465B2 (en) Image generation method and apparatus
US20050225557A1 (en) Method and apparatus for reading texture data from a cache
US11016802B2 (en) Techniques for ordering atomic operations
JP4696067B2 (en) 3D shape drawing apparatus and 3D shape drawing method
JP3756888B2 (en) Graphics processor, graphics card and graphics processing system
US20030231176A1 (en) Memory access device, semiconductor device, memory access method, computer program and recording medium
JP2003281564A (en) Image generating device
JPH09212678A (en) Three-dimensional picture generation device
EP2615578B1 (en) Image drawing apparatus with a cache memory
JP2004133608A (en) Image forming device
JP3110975B2 (en) Display with character mask function
JP4137903B2 (en) Graphics display device and graphics processor
JP3971448B2 (en) Drawing apparatus and drawing method
JP4784446B2 (en) Image processing device
JPH09330267A (en) Memory controller, memory control method and image generator
JP3934111B2 (en) Drawing apparatus and drawing method
WO1990002780A1 (en) Method and apparatus for clearing a region of a z-buffer

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040831

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070427

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070515

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070814