JPH08263035A - Pixel cache circuit - Google Patents

Pixel cache circuit

Info

Publication number
JPH08263035A
JPH08263035A JP7102907A JP10290795A JPH08263035A JP H08263035 A JPH08263035 A JP H08263035A JP 7102907 A JP7102907 A JP 7102907A JP 10290795 A JP10290795 A JP 10290795A JP H08263035 A JPH08263035 A JP H08263035A
Authority
JP
Japan
Prior art keywords
fifo
cache
image memory
pixels
page
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
JP7102907A
Other languages
Japanese (ja)
Inventor
Tsuneo Ikedo
恒雄 池戸
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to JP7102907A priority Critical patent/JPH08263035A/en
Publication of JPH08263035A publication Critical patent/JPH08263035A/en
Pending legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

PURPOSE: To improve the bandwidth of a picture memory by providing a FIFO in between a cache and the picture memory. CONSTITUTION: A vector or an interpolation point coordinate value are outputted in a DDA 1 and pixels consisting of color information are added to the coordinated point. The pixels are temporarily stored in a pixel cache 2 by the low- order address of the DDA. When the cache is overflown with the operation of the DDA, m×n pixels are loaded into a FIFO 3 with one operation. Outputs of the FIFO 3 are connected to a picture memory 5 via ordinary logical arithmetic circuits 4. Pixels and block addresses of the cache are respectively stored in a FIFO 3a and FIFO 3b. When data (pixels and addresses) are sequentially loaded from the side of the DDA 1, the look-ahead of the FIFO is continuously performed in a page detecting circuit 6.

Description

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

この発明はコンピュータ・グラフィックスプロセッサに
おける画素の高速な画像メモリーへの書き込み構造に関
するものであり、画素をキャシュ・メモリーおよびFI
FO(First In First Out)に一時
記憶するとともに、FIFOに蓄積された連続するペー
ジ内データを画像メモリーにページモードを用いて書き
込むものである。
The present invention relates to a structure for writing pixels to a high-speed image memory in a computer graphics processor, and the pixels are stored in a cache memory and FI.
The data is temporarily stored in an FO (First In First Out), and continuous in-page data accumulated in the FIFO is written in the image memory by using the page mode.

【0001】[従来の技術]座標値やその属性などの幾
何学的情報からスクリーン情報としての画素に変換し、
さらにその画素を画像メモリーに書き込むレンダリング
プロセスにおいて、画像メモリーバスのバンド幅を等価
的に高めるために従来ピクセルキャシュ(Pixel
Cache)と呼ばれるバッファを画素変換のためのD
DA(Digital Differencial A
nalizer)と画像メモリーとの間に設け、ここに
所定量の画素を一担高速に記憶した後、一括してこれら
を画像メモリーに転送する方法がとられている。ベクト
ル直線表示のようにそれぞれの傾きが異なる描画におい
てはキャシュのヒット率(直線がキャシュ内を通過する
率)が傾きに応じて異なり、キャシュ・サイズがm×n
の2次元配列とするとキャシュに記憶される画素量は最
小1画素から最大m画素(m≧n)となる。一方、画像
メモリーは通常DRAMが用いられるが、それらは画素
量にかかわらず1回のアクセス時間は一定である。この
結果、バンド幅は画像メモリーに一括して転送できる量
で決定されていた。また従来の構造においても画像メモ
リーとDDA間にFIFOを設けたものがあるが、この
発明の2次元配列キャシュとFIFOの組み合わせと比
較すると、FIFOだけを用いるベクトル描画において
はDDAとFIFO間では1次元書き込みとなり、転送
方式において待ち時間の発生で性能が劣る。またDDA
からのキャシュ・オーバーフロー速度が、画像メモリー
への転送速度を上回ると、FIFOはやがてフルの状態
となり長いベクトルでは大きな効果は得られない。この
発明は以上のような問題に鑑みてなされたものであり物
理的バス幅が一定条件のなかで、画像メモリーへの画素
の書き込み速度の向上、すなわち等価的にバンド幅の向
上を成すものである。
[Prior Art] Geometrical information such as coordinate values and its attributes is converted into pixels as screen information,
Further, in the rendering process of writing the pixels to the image memory, in order to equivalently increase the bandwidth of the image memory bus, the conventional pixel cache (Pixel) is used.
A buffer called Cache) for pixel conversion
DA (Digital Differential A)
It is provided between an image memory and an image memory, a predetermined amount of pixels are stored in the image memory at high speed, and then these are collectively transferred to the image memory. When drawing with different slopes such as vector line display, the cache hit rate (the rate at which a straight line passes through the cache) differs depending on the slope, and the cache size is m × n.
In the two-dimensional array, the amount of pixels stored in the cache is from 1 pixel at the minimum to m pixels at the maximum (m ≧ n). On the other hand, as the image memory, a DRAM is usually used, but the access time for each of them is constant regardless of the pixel amount. As a result, the bandwidth has been determined by the amount that can be collectively transferred to the image memory. Further, there is a conventional structure in which a FIFO is provided between the image memory and the DDA. However, compared with the combination of the two-dimensional array cache and the FIFO of the present invention, in the vector drawing using only the FIFO, the DDA and the FIFO have one. Dimensional writing is used, and the performance is poor due to the occurrence of waiting time in the transfer method. Also DDA
If the cache overflow rate from the memory exceeds the transfer rate to the image memory, the FIFO will eventually become full and a long vector will not have a significant effect. The present invention has been made in view of the above problems, and improves the writing speed of pixels to the image memory, that is, the bandwidth is equivalently improved under the condition that the physical bus width is constant. is there.

【0002】[課題を解決するための手段]この発明で
は上記課題を解決するために、キャシュと画像メモリー
との間にFIFO(First In First O
ut)を設けるとともに、このFIFOには画素を記憶
するだけでなく、DDAによって生成される画像メモリ
ーのアドレスも同時に記憶する。FIFOにはキャシュ
がオーバーフローすると、その内容がただちにロードさ
れ所定の容量に達するまでこの動作をくり返す。一方キ
ャシュ・ブロック(キャシュに記憶されたすべての内
容)がロードされるとFIFOの出力ではこれを検出し
て画像メモリーに転送し、書き込みが完了する。もっと
も好ましい条件はFIFOがフルになる前にロードされ
たデータを画像メモリーに送り出すことである。この構
造でのFIFOの役割はFIFOの容量分だけ等価的に
キャシュ・サイズを拡大したことである。この発明では
このためにアドレスを記憶したFIFOを画素用FIF
Oとは独立して先読みすることによってそのアドレスが
画像メモリーのページモードに対応して連続するページ
内のアドレスであるか否かと、その連続アドレス数を検
出する。もしアドレスがページモードアクセスの可能な
連続性をもつ場合、(通常図形データは局所性をもつ)
画像メモリーに対しカラムアドレスによるページモード
アクセスタイミングを要求するとともに、画素用FIF
Oをこれに同期して連続して読み出す。画像メモリーは
通常DRAMで構成しており、この素子にはローおよび
カラムアドレスの2つのアドレス指定があり、1つのロ
ーアドレシングに対し複数のカラムアドレス指定を行う
ページモードがある。DDAからのX軸およびY軸のア
ドレスはこのローおよびカラムアドレスの2つのいずれ
かに属する。よってFIFOのアドレスを先読みして、
そのアドレスがページ内か否かの判定は、カラムアドレ
スのみの変化で、ローアドレスには変化がないことで容
易に判断がつく。ローアドレスに変化があった場合は、
ページ領域から外に出たものとして、このデータを画像
メモリーに書き込む場合は再びローアドレシングが必要
となる。ページアドレス検出回路はページ内に属するブ
ロック数を計数し、動的にページモード数を設定し、画
像メモリーをその数にもとづきタイミングを生成してア
クセスを行う。不連続な場合はローアドレスをアクセス
毎に与える。この発明の方法によって、画像メモリーの
バンド幅は20〜40%向上する。
[Means for Solving the Problems] In order to solve the above problems, the present invention provides a FIFO (First In First Ore) between a cache and an image memory.
ut), not only the pixels are stored in this FIFO, but also the address of the image memory generated by the DDA is stored at the same time. When the cache overflows into the FIFO, its contents are immediately loaded and this operation is repeated until a predetermined capacity is reached. On the other hand, when the cache block (all contents stored in the cache) is loaded, it is detected at the output of the FIFO and transferred to the image memory to complete the writing. The most preferable condition is to send the loaded data to the image memory before the FIFO becomes full. The role of the FIFO in this structure is to expand the cache size equivalently by the capacity of the FIFO. For this reason, in the present invention, a FIFO storing an address is used as a pixel FIFO.
By prefetching independently of O, it is detected whether the address is an address within a continuous page corresponding to the page mode of the image memory and the number of continuous addresses. If the address has page-mode accessible continuity (usually graphic data has locality)
The page mode access timing by the column address is requested to the image memory, and the pixel FIFO
O is read continuously in synchronization with this. The image memory is usually composed of DRAM, and this element has two address designations, a row address and a column address, and has a page mode in which a plurality of column addresses are designated for one row addressing. The X-axis and Y-axis addresses from the DDA belong to either the row or column address. Therefore, the address of the FIFO is read in advance,
Whether or not the address is within the page can be easily determined because only the column address is changed and the row address is not changed. If there is a change in row address,
When this data is written to the image memory as if it has gone out of the page area, row addressing is required again. The page address detection circuit counts the number of blocks belonging to a page, dynamically sets the number of page modes, and generates timing in the image memory based on the number to perform access. In the case of discontinuity, a row address is given for each access. The method of the present invention improves the bandwidth of the image memory by 20-40%.

【0003】[実施例]1図はこの発明に関するピクセ
ルキャシュ構造を示す。DDA1ではベクトルあるいは
多角形塗りつぶしのための内挿点座標値が出力され、こ
の座標点に対し、予め設定された色情報からなる画素が
付帯される。この画素はピクセル(Pixel)と呼ば
れるが、この画素はDDAアドレスの下位アドレスによ
ってピクセルキャシュ2に一時的に記憶される。上位ア
ドレスは画像メモリーのアドレスとなる。ピクセルキャ
シュは2次元配列からなるバッファでm(Xアドレス)
×n(Yアドレス)の画素を記憶でき、画像メモリーに
対して1桁以上の高速なアクセスが可能なRAMで構成
される。DDAの動作にともないキャシュがオーバーフ
ローすると、通常、m×nを一括あるいはmビットをn
回にインターリーブして画像メモリー5に転送するが、
この発明ではm×n画素を一括してFIFO3にロード
する。FIFOはロードされる順序でそのデータを出力
するメモリーである。FIFOの出力は通常論理演算回
路4を介して画像メモリー5に接続される。FIFOは
2つのFIFO3aおよび3bに分割されており、3a
には画素が、3bにはそのキャシュのブロックアドレス
(DDAで発生した上位アドレス)が記憶される。回路
6はページアドレス検出回路を示す。FIFO3にデー
タ(画素およびアドレス)が逐次DDA側からロードさ
れると、ページ検出回路ではFIFO3bを連続して先
読みする。これはこの発明に関する2図に示すようにF
IFO3b出力アドレスがレジスタ7と比較器8に加え
られる。レジスタ7は複数のパイプライン状に接続され
た多段のレジスタで構成する。段数は最大ページ設定数
に等しい。たとえば最大8ページまで動的にページ数を
選択できるとすれば7段のレジスタとなる。比較器8で
は画像メモリーを構成するDRAM(Dynamic
Random Access Memory)のページ
モード機能をデータ書き込みアクセスとして利用するた
め、このメモリーのカラムアドレスに含まれるアドレス
の検出を行う。これにはレジスタ7の入力と出力を比較
器8で比較し、ローアドレスに変化がない場合はキャシ
ュ・ブロックアドレスは同一のローアドレス内と見な
し、ページモードが可能である。比較器8ではローアド
レスが変化するまで逐次アドレスをFIFO3bから読
み出し、この連続する読み出し回数をカウンタ9にて計
数する。こうしてローアドレスに変化のないアドレス数
を、ローアドレスが変化(あるいは計数値が一定数に達
したとき)するまでその数を計数すると、その後画像メ
モリーに対して、カウンタ9の数に対応したページ数の
ページモードアクセスをタイミング発生機能をもつシー
クエンサ10に要求する。この結果2図において画像メ
モリへのアドレスAと制御用タイミングTが出力され
る。画像メモリーがページモードに入ると、1図の画素
用FIFOはページアクセスサイクルに同期して読み出
され画素は画像メモリーに書き込まれる。よってこの発
明では連続するページ内アドレス数に依存して、動的に
1つのメモリサイクルタイム内のページ回数が変化す
る。この結果、画像メモリーが低速なDRAMであって
も、ページモードを利用することで、画像メモリーとレ
ンダリングプロセッサ間のバンド幅を向上することがで
きる。
[Embodiment] FIG. 1 shows a pixel cache structure according to the present invention. The DDA 1 outputs an interpolated point coordinate value for filling a vector or polygon, and a pixel having preset color information is attached to this coordinate point. This pixel is called a pixel, but this pixel is temporarily stored in the pixel cache 2 by the lower address of the DDA address. The upper address is the address of the image memory. Pixel cache is a two-dimensional array buffer m (X address)
It is composed of a RAM that can store pixels of × n (Y address) and that can access the image memory at high speed by one digit or more. When the cache overflows due to the operation of the DDA, usually m × n is batched or m bits are n.
Interleaved and transferred to image memory 5,
In the present invention, m × n pixels are collectively loaded into the FIFO 3. The FIFO is a memory that outputs its data in the order that it is loaded. The output of the FIFO is normally connected to the image memory 5 via the logical operation circuit 4. The FIFO is divided into two FIFOs 3a and 3b, 3a
The pixel stores a block address of the cache (the upper address generated by the DDA) in 3b. Circuit 6 shows a page address detection circuit. When data (pixels and addresses) are sequentially loaded into the FIFO3 from the DDA side, the page detection circuit continuously prefetches the FIFO3b. This is as shown in FIG.
The IFO3b output address is applied to register 7 and comparator 8. The register 7 is composed of a plurality of multi-stage registers connected in a pipeline. The number of columns is equal to the maximum number of page settings. For example, if the number of pages can be dynamically selected up to a maximum of 8, the number of registers will be 7 stages. The comparator 8 is a DRAM (Dynamic) that constitutes an image memory.
Since the page mode function of Random Access Memory) is used as a data write access, the address contained in the column address of this memory is detected. For this, the input and output of the register 7 are compared by the comparator 8, and when there is no change in the row address, the cache block address is regarded as within the same row address, and the page mode is possible. The comparator 8 sequentially reads the addresses from the FIFO 3b until the row address changes, and the counter 9 counts the number of continuous readings. In this way, the number of addresses in which the row address does not change is counted until the row address changes (or when the count value reaches a certain number). Request several page mode accesses to the sequencer 10 with timing generation function. As a result, the address A and the control timing T are output to the image memory in FIG. When the image memory enters the page mode, the pixel FIFO shown in FIG. 1 is read in synchronization with the page access cycle and the pixels are written in the image memory. Therefore, according to the present invention, the number of pages within one memory cycle time dynamically changes depending on the number of consecutive addresses in the page. As a result, even if the image memory is a low-speed DRAM, it is possible to improve the bandwidth between the image memory and the rendering processor by using the page mode.

【0004】[効果]この発明によって従来コンピュー
タグラフィックシステムの高速化の最大の障害とされて
いた画像メモリーのバンド幅が改善され、100万多角
形/秒の高速描画が可能となった。
[Effect] According to the present invention, the bandwidth of the image memory, which has hitherto been the biggest obstacle to speeding up the computer graphic system, has been improved, and high-speed drawing of 1 million polygons / second has become possible.

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

【図1】本発明のピクセルキャシュ回路 [符号の説明] 1 DDA 2 ピクセル・キャシュ 3a 画像用FIFO 3b アドレス用FIFO 4 論理演算回路 5 画像メモリー 6 ページアドレス検出回路FIG. 1 Pixel cache circuit of the present invention [Explanation of symbols] 1 DDA 2 Pixel cache 3a Image FIFO 3b Address FIFO 4 Logical operation circuit 5 Image memory 6 Page address detection circuit

【図2】本発明のページアドレス検出回路 [符号の説明] 3b アドレス用FIFO 7 レジスタ 8 比較器 9 カウンタ 10 タイミング・シークエンサFIG. 2 is a page address detection circuit of the present invention [Explanation of symbols] 3b address FIFO 7 register 8 comparator 9 counter 10 timing sequencer

Claims (1)

【特許請求の範囲】[Claims] グラフィックス・プロセッサで生成された画素を画像メ
モリーに転送する構造に関し、画像メモリーとプロセッ
サとの間には2次元配列からなるピクセルキャシュ(P
ixel Cache)と、このキャシュ・メモリーに
記憶された画素と共に、画像メモリー・アドレスを同時
に記憶するFIFO(First InFirst O
ut)をそれぞれ設ける第1の手段と、画像メモリーを
構成するDRAM(Dynamic Random A
ccess Memory)とのアクセスに関して、ペ
ージアドレシングモードを実行するために、前記FIF
Oにデータがロードされると、アドレスバッファ用FI
FOを先読みして、連続するページ内アドレス数を計数
してページアクセス数を決定する回路を設ける第2の手
段と、ページ内アドレス数が決定されると、画像用FI
FO内のピクセルをページアクセスに同期して読みだ
し、これを画像メモリーに書き込む第3の手段を合わせ
もつピクセルキャシュ回路
Regarding a structure for transferring pixels generated by a graphics processor to an image memory, a pixel cache (P) consisting of a two-dimensional array is provided between the image memory and the processor.
and an image cache address (FIFO) that simultaneously stores the image memory address together with the pixels stored in the cache memory.
ut) and a DRAM (Dynamic Random A) that constitutes an image memory.
access memory to access the page memory in order to execute the page addressing mode.
When data is loaded into O, FI for address buffer
Second means for providing a circuit for prefetching FO and counting the number of consecutive in-page addresses to determine the number of page accesses; and, when the number of in-page addresses is determined, the FI for image
Pixel cache circuit having third means for reading out pixels in the FO in synchronization with page access and writing the same in the image memory
JP7102907A 1995-03-22 1995-03-22 Pixel cache circuit Pending JPH08263035A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7102907A JPH08263035A (en) 1995-03-22 1995-03-22 Pixel cache circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7102907A JPH08263035A (en) 1995-03-22 1995-03-22 Pixel cache circuit

Publications (1)

Publication Number Publication Date
JPH08263035A true JPH08263035A (en) 1996-10-11

Family

ID=14339937

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7102907A Pending JPH08263035A (en) 1995-03-22 1995-03-22 Pixel cache circuit

Country Status (1)

Country Link
JP (1) JPH08263035A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100441080B1 (en) * 2002-07-31 2004-07-21 학교법인연세대학교 operation method of pixel cache architecture in three-dimensional graphic accelerator
CN110636219A (en) * 2019-09-03 2019-12-31 北京三快在线科技有限公司 Video data stream transmission method and device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100441080B1 (en) * 2002-07-31 2004-07-21 학교법인연세대학교 operation method of pixel cache architecture in three-dimensional graphic accelerator
CN110636219A (en) * 2019-09-03 2019-12-31 北京三快在线科技有限公司 Video data stream transmission method and device

Similar Documents

Publication Publication Date Title
US5828382A (en) Apparatus for dynamic XY tiled texture caching
US5606650A (en) Method and apparatus for storage and retrieval of a texture map in a graphics display system
JP3350043B2 (en) Graphic processing apparatus and graphic processing method
US5621866A (en) Image processing apparatus having improved frame buffer with Z buffer and SAM port
US6741256B2 (en) Predictive optimizer for DRAM memory
KR100255259B1 (en) Circuits, systems and methods for interfacing processing circuitry with a memory
EP0658858B1 (en) Graphics computer
JPS5952286A (en) Video ram writing control system
JP4699036B2 (en) Graphics hardware
EP0827082B1 (en) Semiconductor memory having arithmetic function
JPH08263035A (en) Pixel cache circuit
US6108746A (en) Semiconductor memory having an arithmetic function and a terminal arrangement for coordinating operation with a higher processor
JPS60217387A (en) Crt display unit
JP2966182B2 (en) Computer system
CN116957939A (en) Image scaling method, device, electronic equipment and readable storage medium
JPS6218595A (en) Display unit
JPH07118006B2 (en) Image processing device
JPS59210485A (en) Video ram controlling circuit
JPS5945157B2 (en) Image memory - writing speed conversion circuit
JPS60249184A (en) Memory for bit map display
KR100327376B1 (en) apparatus for data store in digital broadcasting
JPH07320053A (en) Image rotation processor
JPS63195696A (en) Fast lithography
JPS62133484A (en) Image display unit
JPH05224646A (en) Display device