KR19980036199A - A texture cache memory using tile map - Google Patents

A texture cache memory using tile map Download PDF

Info

Publication number
KR19980036199A
KR19980036199A KR1019960054718A KR19960054718A KR19980036199A KR 19980036199 A KR19980036199 A KR 19980036199A KR 1019960054718 A KR1019960054718 A KR 1019960054718A KR 19960054718 A KR19960054718 A KR 19960054718A KR 19980036199 A KR19980036199 A KR 19980036199A
Authority
KR
South Korea
Prior art keywords
texture
cache
tile map
memory
data
Prior art date
Application number
KR1019960054718A
Other languages
Korean (ko)
Other versions
KR100204336B1 (en
Inventor
박종화
김시한
Original Assignee
김광호
삼성전자 주식회사
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 김광호, 삼성전자 주식회사 filed Critical 김광호
Priority to KR1019960054718A priority Critical patent/KR100204336B1/en
Priority to JP9313849A priority patent/JPH10162157A/en
Publication of KR19980036199A publication Critical patent/KR19980036199A/en
Application granted granted Critical
Publication of KR100204336B1 publication Critical patent/KR100204336B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/12Frame memory handling
    • G09G2360/121Frame memory handling using a cache memory
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/12Frame memory handling
    • G09G2360/122Tiling

Abstract

본 발명은 텍스쳐 매핑(texture mapping)시 타일 맵(tile map)을 이용하여 고속의 텍스쳐 매핑이 가능한 그래픽스 컨트롤러의 텍스쳐 캐쉬 메모리에 관한 것으로, 복수개의정방형의 캐쉬 블록(62)과, 상기 복수개의 캐쉬 블록(62)의 텍스쳐 어드레스(U, V)에 대한 각각의 정보를 나타내는 복수개의 태그(65)와, 텍스쳐 매핑시 상기 텍스쳐 어드레스(U, V)를 복수개의정방형의 타일 맵의 형태로 어드레스가 할당되는 그래픽스 컨트롤러의 로컬 메모리(20)의 물리적 어드레스로 변환하여 메모리 컨트롤러(40)로 제공하는 타일 맵 어드레스 변환부(50)를 포함하여 구성되고, 텍스쳐 매핑 수행시 상기 로컬 메모리(20)의 텍스쳐 이미지 데이터는 타일 맵의 형태로 저장되어 페이지 미스 없이 텍스쳐 캐쉬로 데이터를 로딩 할 수 있다.The present invention relates to a texture cache memory of a graphics controller capable of high-speed texture mapping using a tile map in texture mapping, A plurality of tags 65 each representing information on the texture addresses U and V of the plurality of cache blocks 62 and a plurality of tags 65 indicating texture addresses U and V ) To a plurality of And a tile map address converting unit (50) for converting the physical address into a physical address of a local memory (20) of a graphics controller to which an address is assigned in the form of a square tile map and providing the same to the memory controller (40) The texture image data of the local memory 20 is stored in the form of a tile map so that data can be loaded into the texture cache without a page miss.

Description

타일 맵을 이용한 텍스쳐 캐쉬 메모리(A TEXTURE CACHE MEMORY USING TILE MAP)A texture cache memory using a tile map (A TEXTURE CACHE MEMORY USING TILE MAP)

본 발명은 그래픽스 컨트롤러(graphics controller)의 텍스쳐 캐쉬 메모리(texture cash memory)에 관한 것으로, 구체적으로는 텍스쳐 매핑(texture mapping)시 타일 맵(tile map)을 이용하여 고속의 텍스쳐 매핑이 가능한 텍스쳐 캐쉬 메모리에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a texture cache memory of a graphics controller. More specifically, the present invention relates to a texture cache memory capable of high-speed texture mapping using a tile map in texture mapping, .

현재 그래픽스 컨트롤러는 2차원 및 3차원 그래픽(two dimension and three dimension graphic)의 처리 및 그래픽 가속 기능(graphic acceleration function)을 구비하면서 매우 빠른 그래픽 처리가 가능하게 되었다. 3차원 그래픽 가속 기능을 구비한 그래픽 컨트롤러의 가장 중요한 기능 중의 하나인 텍스쳐 매핑은 다른 기능보다 더 많은 메모리(memory) 성능이 요구된다. 왜냐하면, 3차원 물체에 어떤 이미지(image)를 입히는 기능을 하는 텍스쳐 매핑은 입힐 이미지를 그때마다 메모리에서 읽어 와야 하기 때문이다. 게다가 읽어 올 데이터가 메모리에 순차적으로 저장되어 있지 않은 경우가 많음으로 더욱 그러하다.Currently, graphics controllers are capable of very fast graphics processing, with two-dimensional and three-dimensional graphics processing and a graphic acceleration function. Texture mapping, which is one of the most important functions of a graphic controller with 3D graphics acceleration, requires more memory performance than other functions. This is because texture mapping, which functions to apply an image to a three-dimensional object, must read the image to be loaded from memory each time. Moreover, this is more likely because the data to be read is not stored sequentially in the memory.

일반적으로 DRAM(Dynamic Random Access Memory)으로 구성한 메모리의 경우에는 그 특성상 페이지 미스(page miss)가 일어날 확률이 높아진다. 또한 동기 DRAM(synchronous DRAM)의 경우, 데이터의 전송을 블록 단위로 고속으로 전송하는 버스트 동작(burst operation) 기능을 활용하기가 어렵다. 이런 경우에 성능을 향상시킬 목적으로 그래픽스 컨트롤러의 내부에 캐쉬 메모리(cache memory)를 구비하여 사용하게 된다.Generally, in the case of a memory configured with a DRAM (Dynamic Random Access Memory), the probability of occurrence of a page miss increases due to its characteristics. Also, in the case of a synchronous DRAM, it is difficult to utilize a burst operation function for transferring data at high speed in block units. In this case, a cache memory is provided in the graphics controller for the purpose of improving performance.

도 1은 종래의 텍스쳐 캐쉬 메모리의 사용예를 설명하기 위한 도면이다.1 is a view for explaining an example of using a conventional texture cache memory.

도 1을 참조하여, 텍스쳐 매핑이 수행될 때 그래픽 데이터가 저장된 메인 메모리(main memory, 10)에서 해당되는 데이터가 그래픽스 컨트롤러의 로컬 메모리(local memory, 20)로 로딩(loading)된다. 그리고 그래픽스 컨트롤러는 내부의 텍스쳐 캐쉬 메모리(30)에 데이터를 미리 로딩하여 사용하게 된다. 로컬 메모리(20)에서 한번에 읽어 오는 데이터의 양을 텍스쳐 캐쉬 메모리(30)의 입장에서는 라인 사이즈(line size) 또는 블록 사이즈(block size)라고 하는데, 로컬 메모리(20)에서 단 한번 읽을 수도 있고 여러 번 읽을 수도 있다.Referring to FIG. 1, when texture mapping is performed, corresponding data in a main memory 10 in which graphic data is stored is loaded into a local memory 20 of the graphics controller. The graphics controller pre-loads the data into the texture cache memory 30 and uses the data. The amount of data to be read at a time in the local memory 20 is referred to as a line size or a block size in the context of the texture cache memory 30 and can be read once in the local memory 20, You can read it once.

최근의 그래픽스 컨트롤러는 데이터 버스를 64비트(bit)로 채택하고 있다. 64비트(bit)에는 16비트 데이터가 4개, 8비트 데이터가 8개 들어가게 되는데, 텍스쳐 매핑의 동작성 및 캐쉬의 효율을 고려할 때 이는 조금 작은 숫자가 된다. 따라서 이런 64비트 엑세스를 4번 또는 그 이상을 해야 하는데, DRAM의 성능을 높여 주려면 연속되는 엑세스 동작은 현재 엑세스 하고 있는 페이지이어야 한다. 그런데 페이지 미스가 발생하면 DRAM에 RAS신호(Row Address Strobe signal)를 다시 인가해 주어야 하므로 접근 속도는 그만큼 느려지게 된다.A recent graphics controller employs a 64-bit data bus. In 64 bits, there are four 16-bit data and eight 8-bit data. This is a small number considering the efficiency of texture mapping and cache efficiency. Therefore, this type of 64-bit access must be done 4 or more times. In order to increase the performance of the DRAM, the consecutive access operation must be the page that is currently accessed. However, when a page miss occurs, the RAS signal (Row Address Strobe signal) must be re-applied to the DRAM, so that the access speed becomes slower.

그런데 텍스쳐 매핑에서는 연속된 데이터만을 읽어 가지는 않는다. 만일 텍스쳐 이미지를 순차적인 공간에 저장해 놓은 상태에서, 텍스쳐 매핑 수행시 수평 방향으로 데이터를 읽어 가게 되면 이미 캐쉬에 로딩된 많은 데이터를 그대로 활용할 수 있어서 성능이 매우 향상될 수 있다. 그러나 수직 방향으로 데이터를 이용하려고 하면, 아무리 많은 데이터를 읽어 놨어도 모두 못쓰게 될 것이다. 따라서 텍스쳐 매핑에서는 캐쉬의 한 블록에는 텍스쳐 이미지의 각 부분들을 정방형의 형태로 저장하는 것이 바람직하다.However, texture mapping does not read only consecutive data. If the texture image is stored in sequential space and the data is read in the horizontal direction when texture mapping is performed, a large amount of data already loaded in the cache can be utilized as it is, which can greatly improve performance. However, if you try to use the data in the vertical direction, you will not be able to read it, no matter how much data it reads. Therefore, in texture mapping, it is desirable to store each part of the texture image in the form of a square in one block of the cache.

그러나 이러한 경우의 문제점은 데이터의 첫 번째 줄(row)과 두 번째 줄이 다른 DRAM 페이지에 있을 확률이 높다는 것이다. 이렇게 되면 DRAM 엑세스 속도가 느려져서 성능이 저하되는 결과를 초래한다. 이를 해결하기 위하여 DRAM의 어드레스 영역을 바꾸어서 타일 맵(tile map)으로 구성할 수 있다. 그러나 로컬 메모리 전체를 타일 맵으로 구성하게 되면 3차원 텍스쳐 매핑에 따른 그래픽스 컨트롤러의 성능(performance)은 증가 할 수 있지만 순차적인 엑세스가 많은 스크린 리플레쉬(screen refresh)등의 동작에서는 오히려 성능이 저하되는 문제점이 발생 할 수 있다.The problem with this case, however, is that the first and second rows of data are likely to be on different DRAM pages. This results in slower DRAM access speeds and lower performance. To solve this problem, a tile map can be formed by changing the address area of the DRAM. However, if the entire local memory is constituted by a tile map, the performance of the graphics controller due to the 3D texture mapping may increase, but the performance of the graphics controller may deteriorate in the case of screen refresh or the like in which sequential access is performed Problems may arise.

본 발명의 목적은 상술한 문제점을 해결하기 위해 제안된 것으로서, 텍스쳐 매핑시에만 타일 맵의 구조를 사용하여 고속의 텍스쳐 매핑을 수행할 수 있는 텍스쳐 캐쉬 메모리를 제공하는데 있다.It is an object of the present invention to provide a texture cache memory capable of performing high-speed texture mapping using a tile map structure only in texture mapping.

도 1은 종래의 텍스쳐 캐쉬 메모리의 사용예를 설명하기 위한 도면,FIG. 1 is a view for explaining an example of using a conventional texture cache memory,

도 2는 본 발명의 실시예에 따른 타일 맵을 이용한 텍스쳐 캐쉬 메모리 및 주변 회로를 보여주는 도면,FIG. 2 is a view showing a texture cache memory and a peripheral circuit using a tile map according to an embodiment of the present invention;

도 3은 도 2에 도시된 텍스쳐 캐쉬 메모리의 내부 구조를 보여주는 도면,FIG. 3 is a view showing the internal structure of the texture cache memory shown in FIG. 2;

도 4는 텍스쳐 어드레스를 설명하기 위한 도면,4 is a view for explaining a texture address,

도 5A 및 도 5B는 타일 맵을 이용한 어드레스 저장방식과 타일 맵을 이용하지 않은 어드레스 저장 방식의 메모리 구성 방법을 설명하기 위한 도면.5A and 5B are diagrams for explaining a memory configuration method of an address storage method using a tile map and an address storage method using no tile map.

*도면의 주요 부분에 대한 부호의 설명*Description of the Related Art [0002]

10 : 메인 메모리20 : 로컬 메모리10: main memory 20: local memory

30, 60 : 텍스쳐 캐쉬 메모리40 : 메모리 컨트롤러30, 60: texture cache memory 40: memory controller

50 : 타일 맵 어드레스 변환부62 : 캐쉬 블록50: tile map address conversion unit 62: cache block

65 : 태그65: Tag

(구성)(Configuration)

상술한 목적을 달성하기 위한 본 발명의 특징에 의하면, 그래픽스 컨트롤러의 텍스쳐 캐쉬 메모리는 : 복수개의정방형의 캐쉬 블록과; 상기 복수개의 캐쉬 블록의 텍스쳐 어드레스에 대한 각각의 정보를 나타내는 복수개의 태그와; 텍스쳐 매핑시 상기 텍스쳐 어드레스를 복수개의정방형의 타일 맵의 형태로 어드레스가 할당되는 그래픽스 컨트롤러의 로컬 메모리의 물리적 어드레스로 변환하여 메모리 컨트롤러로 제공하는 타일 맵 어드레스 변환부를 포함한다.According to an aspect of the present invention for achieving the above object, a texture cache memory of a graphics controller includes: A square cache block; A plurality of tags indicating respective pieces of information on texture addresses of the plurality of cache blocks; Wherein when the texture is mapped, And a tile map address converting unit for converting the physical address into a physical address of a local memory of the graphics controller to which the address is assigned in the form of a square tile map and providing the physical address to the memory controller.

이 실시예에 있어서, 상기 캐쉬 블록은 m비트의 데이터가로 이루어지는 제1 내지 제4 캐쉬 블록과; 상기 복수개의 태그는 상기 제1 내지 제4 텍스쳐 캐쉬 블록에 대응되는 각각의 텍스쳐 어드레스에 대한 정보가 저장되는 제1 내지 제4 태그를 포함한다.In this embodiment, the cache block has m bits of data First to fourth cache blocks; The plurality of tags include first to fourth tags in which information on each texture address corresponding to the first to fourth texture cache blocks is stored.

이 실시예에 있어서, 상기 제1 내지 제4 캐쉬 블록은 각기 16 비트 데이터가로 이루어진다.In this embodiment, each of the first through fourth cache blocks has 16-bit data .

(작용)(Action)

상기와 같은 본 발명에 의하면, 텍스쳐 매핑 수행시 로컬 메모리의 텍스쳐 이미지 데이터는 타일 맵의 형태로 저장되어 페이지 미스 없이 텍스쳐 캐쉬로 데이터를 로딩 할 수 있다.According to the present invention, when performing texture mapping, texture image data of a local memory is stored in the form of a tile map, and data can be loaded into a texture cache without a page miss.

(실시예)(Example)

이하 본 발명의 실시예를 첨부된 도면에 의거하여 상세히 설명한다.BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 2는 본 발명의 실시예에 따른 타일 맵을 이용한 텍스쳐 캐쉬 메모리 및 주변 회로를 보여주는 도면이고, 도 3은 도 2에 도시된 텍스쳐 캐쉬 메모리의 내부 구조를 보여주는 도면이다.FIG. 2 is a view showing a texture cache memory and a peripheral circuit using a tile map according to an embodiment of the present invention, and FIG. 3 is a view showing the internal structure of the texture cache memory shown in FIG.

도 2를 참조하여, 그래픽스 컨트롤러의 내부에는 텍스쳐 캐쉬 메모리(60)와 타일 맵 어드레스 변환부(50)가 구비되어 있다. 본 발명의 실시예에서는 그래픽스 컨트롤러의 면적을 고려하여서 크기가 비교적 작은 텍스쳐 캐쉬를 이용하였다.Referring to FIG. 2, a texture cache memory 60 and a tile map address converting unit 50 are provided in the graphics controller. In the embodiment of the present invention, a texture cache having a relatively small size is used in consideration of the area of the graphics controller.

도 3을 참조하여, 캐쉬의 각 블록(62)은 16비트 데이터가 4×4로 이루어지도록 하였기 때문에 블록(62)의 크기는 32바이트(byte)이며, 포웨이 셋 어소시에티브(4 way set associative) 방식으로 구현하게 되면 이런 블록이 4개(62a∼62d)가 필요하므로, 전체 캐쉬의 사이즈는 128 바이트가 된다. 또 각각의 블록은 텍스쳐 어드레스(texture address)인 U, V 어드레스로 이루어진 태그(65, tag)를 갖는다. 태그(65)는 앞으로 읽을 데이터의 어드레스가 캐쉬에 저장되어 있는지 없는지를 비교할 때 사용된다.Referring to FIG. 3, since each block 62 of the cache is made up of 4 × 4 pieces of 16-bit data, the size of the block 62 is 32 bytes, and a four- set associative method, the size of the entire cache is 128 bytes since four blocks (62a to 62d) are required. Each block has a tag 65 consisting of U and V addresses which are texture addresses. The tag 65 is used to compare whether the address of data to be read ahead is stored in the cache or not.

여기서 DRAM으로 구성된 로컬 메모리(20)의 버스 사이즈가 64비트(8바이트)인 경우는 한 개의 블록을 채우려면 4번이 DRAM 엑세스가 필요하다. 그리고 여기서 4번의 DRAM 엑세스는 모두 페이지 미스가 발생하면 안된다. 따라서 텍스쳐 이미지는 처음부터 4×4의 블록 형태로 나누어서 타일 맵의 형태로 DRAM에 저장하여야 한다. 일단 타일 맵의 형태로 DRAM에 저장된 텍스쳐 이미지의 한 블록은 DRAM의 입장에서는 연속된 어드레스에 할당되어 있다. 그러므로 캐쉬 미스(cache miss)가 발생하여 로컬 메모리(20)로부터 텍스쳐 캐쉬 메모리(30)로 해당 데이터를 가져오는 경우, 한 블록을 연속된 공간에서 가져올 수 있으므로 그만큼 속도가 향상된다.If the bus size of the local memory 20 configured as DRAM is 64 bits (8 bytes), DRAM access is required 4 times to fill one block. And here, all 4 DRAM accesses should not cause page misses. Therefore, the texture image should be divided into 4 × 4 blocks from the beginning and stored in the DRAM in the form of a tile map. One block of the texture image stored in the DRAM in the form of a tile map is allocated to the contiguous address in the DRAM. Therefore, when a cache miss occurs and the corresponding data is fetched from the local memory 20 to the texture cache memory 30, one block can be fetched from the contiguous space, thereby improving the speed.

좀더 구체적으로, 만일 이미 데이터를 캐쉬에 가져다 놓았다면 4개의 태그(65a∼65d)중에 하나와 현재의 U, V 어드레스가 일치하는 경우이다. 이 경우에는 히트(hit)된 블록에서 데이터를 꺼내어 데이터를 요청한 내부의 렌더링 엔진(rendering engine) 쪽으로 데이터를 보내 주면 된다. 그러나 만일에 4개의 테그에서 같은 U, V 어드레스가 발견되지 않았다면 지금 캐쉬에 원하는 데이터가 없는 것이므로 DRAM에서 데이터를 읽어 와야 한다. 이때에 U, V 어드레스는 타일 맵 변환부(50)를 통하여 DRAM의 물리적 어드레스(physical address)로 변환되어 메모리 컨트롤러(40)로 제공된다.More specifically, if the data has already been placed in the cache, one of the four tags 65a to 65d and the current U and V addresses match. In this case, you can retrieve the data from the hit block and send the data to the internal rendering engine that requested the data. However, if the same U and V addresses in four tags are not found, the cache does not have the desired data, so the data must be read from the DRAM. At this time, the U and V addresses are converted into the physical address of the DRAM through the tile map conversion unit 50 and provided to the memory controller 40.

이때, 로컬 메모리(20)의 데이터 저장 형태는 타일 맵으로 구성되어 있기 때문에 블록에 채워야 할 4×4개의 데이터는 DRAM의 같은 페이지에 존재한다. 그러므로 상당히 빠른 시간 안에 모든 데이터를 읽어 올 수 있다. 특히 버스트 동작을 수행할 수 있는 동기 DRAM(synchronous DRAM)으로 로컬 메모리(20)가 구성된 경우에는 버스트 리드(burst read)를 수행하여 더욱 빠른게 수행 할 수 있게 된다.At this time, since the data storage format of the local memory 20 is composed of the tile map, the 4x4 data to be filled in the block exists in the same page of the DRAM. So you can read all the data in a fairly quick time. In particular, when the local memory 20 is configured as a synchronous DRAM capable of performing a burst operation, a burst read operation can be performed to perform the burst operation more quickly.

도 4는 텍스쳐 어드레스를 설명하기 위한 도면이고, 도 5A 및 도 5B는 타일 맵을 이용한 어드레스 저장방식과 타일 맵을 이용하지 않은 어드레스 저장 방식의 메모리 구성 방법을 설명하기 위한 도면이다.FIG. 4 is a diagram for explaining a texture address. FIGS. 5A and 5B are diagrams for explaining a memory configuration method of an address storage method using a tile map and an address storage method using no tile map.

도 4 및 도 5A, 5B를 참조하여, U, V 어드레스를 가지는 텍스쳐 이미지(100)의 데이터를 aUV로 표현하였을 경우에, 처음 4개의 데이터 a0, a1, a2, a3은 타일 맵이 아닌 경우(110)와 타일 맵인 경우(120) 모두 연속된 어드레스로 저장된다. 그러나 그 다음의 a04데이터는 타일 맵이 아니면 a3바로 다음에 오겠으나, 타일 맵의 경우에는, 도면에는 도시되지 않았으나, a33다음에 저장될 것이다. 반면에 a10데이터는 타일 맵이 아닌 경우 첫 번째 열이 모두 저장된 후에 저장되겠고, 타일 맵인 경우에는 a3바로 다음에 올 것이다. 즉, 타일 맵의 경우(120)는 각각의 데이터 열(a, b, c,...)이 순차적으로 저장된다.Figure 4 and Figure 5A, with reference to 5B, U, the data on the texture image 100 having a V address a case in represented as a UV, the first four data a 0, a 1, a 2 , a 3 are tiled In the case of not a map 110 and the case of a tile map 120, both are stored as consecutive addresses. However, if the next a 04 data is not a tile map, it will come immediately after a 3 , but in the case of a tile map, it will not be shown in the figure but will be stored after a 33 . On the other hand, if the a 10 data is not a tile map, it will be stored after all the first columns are stored, and if it is a tile map, it will be immediately after a 3 . That is, in the case of the tile map 120, each data string a, b, c, ... is sequentially stored.

이상과 같이 그래픽스 컨트롤러가 텍스쳐 매핑을 수행하는 경우, 로컬 메모리(20)의 구조는 타일 맵의 형태로 데이터가 저장된다. 이러한 로컬 메모리(20)로부터 텍스쳐 캐쉬(60)로 데이터가 로딩되면, 텍스쳐 캐쉬(60)의 각각의 캐쉬 블록(62)에는 해당되는 텍스쳐 이미지가 로딩되므로 고속의 텍스쳐 매핑을 수행 할 수 있게 된다.As described above, when the graphics controller performs texture mapping, the structure of the local memory 20 stores data in the form of a tile map. When data is loaded from the local memory 20 to the texture cache 60, the corresponding texture image is loaded into each cache block 62 of the texture cache 60, so that high-speed texture mapping can be performed.

이상과 같은 본 발명에 의하면, 순차적인 엑세스가 많은 스크린 리플레쉬등의 동작에서는 로컬 메모리의 구조를 일반적인 메모리 구조를 갖도록 하며, 텍스쳐 매핑시에는 타일 맵의 구조를 갖도록 하므로 다른 기능의 성능을 저하시키지 않고 고속의 텍스쳐 매핑을 수행할 수 있다.According to the present invention, since the structure of the local memory has a general memory structure in the operation such as the screen refresh which has a lot of sequential accesses and the structure of the tile map is used in the texture mapping, High-speed texture mapping can be performed.

Claims (3)

그래픽스 컨트롤러의 텍스쳐 캐쉬 메모리에 있어서:A texture cache memory of a graphics controller comprising: 복수개의정방형의 캐쉬 블록(62)과;Plural A square cache block 62; 상기 복수개의 캐쉬 블록(62)의 텍스쳐 어드레스(U, V)에 대한 각각의 정보를 나타내는 복수개의 태그(65)와;A plurality of tags (65) indicating respective information on the texture addresses (U, V) of the plurality of cache blocks (62); 텍스쳐 매핑시 상기 텍스쳐 어드레스(U, V)를 복수개의정방형의 타일 맵의 형태로 어드레스가 할당되는 그래픽스 컨트롤러의 로컬 메모리(20)의 물리적 어드레스로 변환하여 메모리 컨트롤러(40)로 제공하는 타일 맵 어드레스 변환부(50)를 포함하는 것을 특징으로 하는 그래픽스 컨트롤러의 텍스쳐 캐쉬 메모리.When texture mapping, the texture addresses (U, V) And a tile map address converting unit (50) for converting the physical address into a physical address of the local memory (20) of the graphics controller to which the address is assigned in the form of a square tile map and providing the physical address to the memory controller (40) Texture cache memory. 제 1 항에 있어서,The method according to claim 1, 상기 캐쉬 블록(65)은 m비트의 데이터가로 이루어지는 제1 내지 제4 캐쉬 블록(62a∼62d)과;The cache block 65 stores the m- First to fourth cache blocks 62a to 62d; 상기 복수개의 태그(65)는 상기 제1 내지 제4 텍스쳐 캐쉬 블록(62a∼62d)에 대응되는 각각의 텍스쳐 어드레스(U, V)에 대한 정보가 저장되는 제1 내지 제4 태그(65a∼65d)를 포함하는 것을 특징으로 하는 그래픽스 컨트롤러의 텍스쳐 캐쉬 메모리.The plurality of tags 65 includes first to fourth tags 65a to 65d for storing information on texture addresses U and V corresponding to the first to fourth texture cache blocks 62a to 62d, The texture cache memory of claim 1, 제 2 항에 있어서,3. The method of claim 2, 상기 제1 내지 제4 캐쉬 블록(62a∼62d)은 각기 16 비트 데이터가로 이루어지는 것을 특징으로 하는 그래픽스 컨트롤러의 텍스쳐 캐쉬 메모리.Each of the first to fourth cache blocks 62a to 62d has 16-bit data And a texture cache memory for storing the texture cache memory.
KR1019960054718A 1996-11-16 1996-11-16 A texture cache memory using tile map KR100204336B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1019960054718A KR100204336B1 (en) 1996-11-16 1996-11-16 A texture cache memory using tile map
JP9313849A JPH10162157A (en) 1996-11-16 1997-11-14 Graphic controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019960054718A KR100204336B1 (en) 1996-11-16 1996-11-16 A texture cache memory using tile map

Publications (2)

Publication Number Publication Date
KR19980036199A true KR19980036199A (en) 1998-08-05
KR100204336B1 KR100204336B1 (en) 1999-06-15

Family

ID=19482171

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960054718A KR100204336B1 (en) 1996-11-16 1996-11-16 A texture cache memory using tile map

Country Status (2)

Country Link
JP (1) JPH10162157A (en)
KR (1) KR100204336B1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100337138B1 (en) * 1999-01-18 2002-05-18 니시무로 타이죠 Cache memory device using for high speed image processing and processor mounting the cache memory device
KR20030054606A (en) * 2001-12-26 2003-07-02 한국전자통신연구원 3D texture mapping pipeline using CellVQ encoder/decoder
WO2009102562A3 (en) * 2008-02-14 2009-10-08 Microsoft Corporation Factoring repeated content within and among images
KR101886372B1 (en) 2017-03-17 2018-08-09 경상대학교산학협력단 How to make high-purity haloisite nano tube powder

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8253751B2 (en) 2005-06-30 2012-08-28 Intel Corporation Memory controller interface for micro-tiled memory access
KR100648293B1 (en) 2005-08-09 2006-11-23 삼성전자주식회사 Graphic system and graphic processing method for the same
US8878860B2 (en) * 2006-12-28 2014-11-04 Intel Corporation Accessing memory using multi-tiling
KR100959126B1 (en) 2007-11-21 2010-05-25 한국원자력 통제기술원 An assessment method of physical protection effectiveness using tile map
KR101536732B1 (en) 2008-11-05 2015-07-23 삼성전자주식회사 Device and method of reading texture data for texture mapping

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100337138B1 (en) * 1999-01-18 2002-05-18 니시무로 타이죠 Cache memory device using for high speed image processing and processor mounting the cache memory device
KR20030054606A (en) * 2001-12-26 2003-07-02 한국전자통신연구원 3D texture mapping pipeline using CellVQ encoder/decoder
WO2009102562A3 (en) * 2008-02-14 2009-10-08 Microsoft Corporation Factoring repeated content within and among images
KR101886372B1 (en) 2017-03-17 2018-08-09 경상대학교산학협력단 How to make high-purity haloisite nano tube powder

Also Published As

Publication number Publication date
KR100204336B1 (en) 1999-06-15
JPH10162157A (en) 1998-06-19

Similar Documents

Publication Publication Date Title
KR100300972B1 (en) Texture mapping system and texture cache access method
US6011565A (en) Non-stalled requesting texture cache
US5924111A (en) Method and system for interleaving data in multiple memory bank partitions
US7027063B1 (en) Texture cache addressing
US7580042B2 (en) Systems and methods for storing and fetching texture data using bank interleaving
KR20170103649A (en) Method and apparatus for accessing texture data using buffers
US6674443B1 (en) Memory system for accelerating graphics operations within an electronic device
EP0613098B1 (en) Image processing apparatus and method of controlling the same
IE830288L (en) Digital graphics display system
EP0883065B1 (en) Non-blocking pipelined cache
US7286134B1 (en) System and method for packing data in a tiled graphics memory
US10585803B2 (en) Systems and methods for addressing a cache with split-indexes
US6665775B1 (en) Cache dynamically configured for simultaneous accesses by multiple computing engines
KR100204336B1 (en) A texture cache memory using tile map
EP1190325B1 (en) Status bits for cache memory
US6091428A (en) Frame buffer memory system for reducing page misses when rendering with color and Z buffers
US6928516B2 (en) Image data processing system and method with image data organization into tile cache memory
JPS5952286A (en) Video ram writing control system
US6314490B1 (en) Method and apparatus for memory addressing
US6674441B1 (en) Method and apparatus for improving performance of an accelerated graphics port (AGP) device
JP3001763B2 (en) Image processing system
JPH09259041A (en) Cache memory control system
JPH04153753A (en) Cache memory control system
EP0741902B1 (en) Improved memory devices
CN115794674B (en) Cache data write-back method and device, graphics processing system and electronic equipment

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20080303

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee