KR101022282B1 - 3? graphic accelerator and 3? graphic accelerating method - Google Patents
3? graphic accelerator and 3? graphic accelerating method Download PDFInfo
- Publication number
- KR101022282B1 KR101022282B1 KR1020090063446A KR20090063446A KR101022282B1 KR 101022282 B1 KR101022282 B1 KR 101022282B1 KR 1020090063446 A KR1020090063446 A KR 1020090063446A KR 20090063446 A KR20090063446 A KR 20090063446A KR 101022282 B1 KR101022282 B1 KR 101022282B1
- Authority
- KR
- South Korea
- Prior art keywords
- information
- dual port
- stencil
- cache memory
- alpha
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
Abstract
본 발명은 3차원 그래픽 가속 장치 및 3차원 그래픽 가속 방법에 관한 것으로, 본 발명에 따른 3차원 그래픽 가속 장치는, 디스플레이될 픽셀 정보들로서, 깊이 정보, 색상 정보, 및 스텐실-알파 정보를 적어도 하나 이상 저장하는 프레임 메모리와, 현재의 프래그먼트에 대한 깊이 테스트, 색상 변환 및 스텐실 연산-알파 테스트를 적어도 하나 이상 수행하는 퍼프래그먼트 유닛과, 상기 현재의 프래그먼트에 대응되는 영역에 대한 깊이 정보, 색상 정보, 및 스텐실-알파 정보를 상기 프레임 메모리로부터 읽어와서 저장할 수 있고, 또한 동일 클록에서 읽기 기능과 쓰기 기능이 가능한 듀얼 포트 캐시 메모리와, 및 상기 퍼프래그먼트 유닛으로부터 상기 현재의 프래그먼트에 대한 깊이 테스트, 색상 변환 또는 스텐실 연산-알파 테스트의 수행을 위해 상기 현재의 프래그먼트에 대응되는 영역에 대한 깊이 정보, 색상 정보, 또는 스텐실-알파 정보의 요청이 있는 경우 상기 듀얼 포트 캐시 메모리에 요청 정보가 있으면 해당 정보를 읽어 출력하고, 상기 듀얼 포트 캐시 메모리에 요청 정보가 없으면 상기 프레임 메모리로부터 읽어와서 상기 듀얼 포트 캐시 메모리에 저장하는 캐시 컨트롤러를 포함함으로써, 그래픽 파이프라인의 스톨을 감소시켜 파이프라인의 성능을 향상시킬 수 있다. The present invention relates to a three-dimensional graphics acceleration device and a three-dimensional graphics acceleration method, the three-dimensional graphics acceleration device according to the present invention, as the pixel information to be displayed, at least one or more depth information, color information, and stencil-alpha information A frame memory to be stored, a per-fragment unit that performs at least one depth test, color conversion, and stencil operation-alpha test on a current fragment, depth information, color information, and an area corresponding to the current fragment; Dual port cache memory capable of reading and storing stencil-alpha information from the frame memory, and capable of reading and writing at the same clock, and depth testing, color conversion, or the like for the current fragment from the per-fragment unit. The string for performing stencil arithmetic-alpha test If there is a request for depth information, color information, or stencil-alpha information on an area corresponding to the ash fragment, the dual port cache memory reads and outputs the requested information, and the request information is stored in the dual port cache memory. If not present, the cache controller reads from the frame memory and stores in the dual port cache memory, thereby reducing the stall of the graphics pipeline, thereby improving the performance of the pipeline.
Description
본 발명은 3차원 그래픽 가속 장치 및 3차원 그래픽 가속 방법에 관한 것으로, 특히 듀얼 포트 캐시 메모리를 이용한 3차원 그래픽 가속 장치 및 3차원 그래픽 가속 방법에 관한 것이다. The present invention relates to a three-dimensional graphics acceleration device and a three-dimensional graphics acceleration method, and more particularly, to a three-dimensional graphics acceleration device and a three-dimensional graphics acceleration method using a dual port cache memory.
3차원 그래픽 기술은 3차원 공간에 위치한 물체의 모양, 색상, 움직임 등을 시각화하는 기술로, 특히 3차원 공간의 물체를 높이, 폭, 길이의 세 가지 축을 이용하여 표현한 뒤 그 영상을 2차원 모니터 화면에 나타내는 기술이다. Three-dimensional graphics technology is a technology that visualizes the shape, color, and motion of an object located in three-dimensional space. In particular, three-dimensional objects are expressed using three axes of height, width, and length. It is the technology displayed on the screen.
3차원 그래픽 가속 장치가 수행하는 일련의 처리를 그래픽 파이프라인이라 하는데, 이 그래픽 파이프라인에서의 처리가 어느 한 곳이라도 늦은 부분이 있으면 전체 파이프라인의 속도가 저하된다. The series of processing performed by the three-dimensional graphics accelerator is called the graphics pipeline. If any part of the processing in the graphics pipeline is late, the entire pipeline slows down.
도 1은 일반적인 3차원 그래픽의 처리 과정을 나타낸 블록도이다.1 is a block diagram showing a process of processing a general three-dimensional graphic.
도 1에 도시되어 있는 바와 같이, 3차원 그래픽의 처리 과정은 3차원 응용 소프트웨어(110)가 응용 프로그램 인터페이스(API)(120)를 통해 보낸 3차원 그래픽 데이터에 대하여 3차원 그래픽 파이프라인(130)에서 실시간 하드웨어 가속을 수행 한 후 디스플레이부(140)로 출력하는 과정을 거친다. As shown in FIG. 1, the three-dimensional graphics processing process includes a three-
한편, 3차원 그래픽 파이프라인(130)는 크게, 기하학(geometry) 처리부(132)와 렌더링(rendering) 처리부(134)를 구비한다. 기하학 처리부(132)는 주로 3차원 좌표계의 물체를 시점에 따라 변환하고 2차원 좌표계로 투영 처리하는 과정이며, 렌더링 처리부(134)는 2차원 좌표계의 이미지에 대한 색상 값 등을 결정하여 디스플레이부(140)의 프레임 메모리(142)에 저장하는 과정이다. 한 개의 프레임에 대하여 입력되는 모든 3차원 데이터에 대한 처리가 끝난 후에 디스플레이부(140)의 프레임 메모리(142)에 저장된 색상 값 등은 모니터(미도시됨) 상에서 디스플레이된다. 한편, 기하학 처리부(132)에서의 계산량은 처리하는 폴리곤의 정점 수에 비례하고, 렌더링 처리부(134)에서의 계산량은 생성하는 화소수에 비례한다.On the other hand, the
3차원 그래픽은 주로 점, 선 또는 삼각형으로 구성되며, 대부분의 3차원 렌더링 처리부(134)는 삼각형을 고속으로 처리하는 구조를 가진다. 그리고 최근 3차원 그래픽 파이프라인(130)와 같은 3차원 그래픽 애플리케이션에서 실시간 장면을 렌더링할 때, 좀 더 자연스럽고 부드러운 영상을 얻기 위하여 다양한 텍스처(texture)와 여러 가지 방법의 컬러 블렌딩이 사용된다. 한편, 퍼프래그먼트 유닛은 디스플레이부(140)의 프레임 메모리(142)를 많이 액세스하므로, 3차원 그래픽 파이프라인(130)의 성능의 향상에 가장 큰 영향을 미친다. 따라서 3차원 그래픽 파이프라인(130)이 외부의 프레임 메모리(142)를 액세스할 때, 긴 레이턴시(lantency) 때문에 3차원 그래픽 파이프라인(130)의 스톨(stall)이 길어지는 것을 방지하기 위해 캐시 메모리가 사용된다. 3D graphics are mainly composed of points, lines, or triangles, and most 3D
그러나 종래의 캐시 메모리는 단일 포트 캐시 메모리로 읽기 기능과 쓰기 기능을 동시에 수행할 수가 없었다. 따라서 3차원 그래픽 파이프라인(130)에서의 스톨이 여전히 길어서 3차원 그래픽 파이프라인(130)의 성능이 저하되었다. However, the conventional cache memory is a single port cache memory and cannot simultaneously read and write. Therefore, the stall in the three-
상술한 문제점을 해결하기 위하여, 본 발명은 퍼프래그먼트 유닛에서의 파이프라인의 스톨을 감소시키기 위하여 듀얼 포트 캐시 메모리를 이용한 3차원 그래픽 가속 장치 및 3차원 그래픽 가속 방법을 제공하는 것을 목적으로 한다.In order to solve the above problems, an object of the present invention is to provide a three-dimensional graphics acceleration device and a three-dimensional graphics acceleration method using a dual port cache memory to reduce the stall of the pipeline in the per-fragment unit.
또한, 본 발명은 시간 손실을 줄이기 위하여 3차원 그래픽 가속기의 파이프라인과 듀얼 포트 캐시 메모리에 동일 클록을 이용한 3차원 그래픽 가속 장치 및 3차원 그래픽 가속 방법을 제공하는 것을 목적으로 한다.Another object of the present invention is to provide a three-dimensional graphics accelerator and a three-dimensional graphics acceleration method using the same clock in the pipeline and dual port cache memory of the three-dimensional graphics accelerator to reduce time loss.
또한, 본 발명은 듀얼 포트 캐시 메모리의 데이터를 외부 프레임 메모리로 효율적으로 저장하기 위한 조정자를 구비한 캐시 컨트롤러를 포함하는 3차원 그래픽 가속 장치 및 3차원 그래픽 가속 방법을 제공하는 것을 목적으로 한다. It is also an object of the present invention to provide a three-dimensional graphics acceleration device and a three-dimensional graphics acceleration method including a cache controller having a coordinator for efficiently storing the data of the dual port cache memory to an external frame memory.
상술한 과제를 해결하기 위하여, 본 발명에 따른 3차원 그래픽 가속 장치는, 디스플레이될 픽셀 정보들로서, 깊이 정보, 색상 정보, 및 스텐실-알파 정보를 적어도 하나 이상 저장하는 프레임 메모리와, 현재의 프래그먼트에 대한 깊이 테스트, 색상 변환 및 스텐실 연산-알파 테스트를 적어도 하나 이상 수행하는 퍼프래그먼트 유닛과, 상기 현재의 프래그먼트에 대응되는 영역에 대한 깊이 정보, 색상 정 보, 및 스텐실-알파 정보를 상기 프레임 메모리로부터 읽어와서 저장할 수 있고, 또한 동일 클록에서 읽기 기능과 쓰기 기능이 가능한 듀얼 포트 캐시 메모리와, 및 상기 퍼프래그먼트 유닛으로부터 상기 현재의 프래그먼트에 대한 깊이 테스트, 색상 변환 또는 스텐실 연산-알파 테스트의 수행을 위해 상기 현재의 프래그먼트에 대응되는 영역에 대한 깊이 정보, 색상 정보, 또는 스텐실-알파 정보의 요청이 있는 경우 상기 듀얼 포트 캐시 메모리에 요청 정보가 있으면 해당 정보를 읽어 출력하고, 상기 듀얼 포트 캐시 메모리에 요청 정보가 없으면 상기 프레임 메모리로부터 읽어와서 상기 듀얼 포트 캐시 메모리에 저장하는 캐시 컨트롤러를 제공한다.In order to solve the above-mentioned problems, the three-dimensional graphics acceleration device according to the present invention, as pixel information to be displayed, a frame memory for storing at least one or more depth information, color information, and stencil-alpha information in the present fragment, A per-fragment unit that performs at least one depth test, a color conversion, and a stencil arithmetic-alpha test, and depth information, color information, and stencil-alpha information about an area corresponding to the current fragment, from the frame memory. Dual port cache memory capable of reading and storing, and also capable of reading and writing on the same clock, and for performing depth tests, color conversion or stencil arithmetic-alpha tests on the current fragment from the perfragment unit. For an area corresponding to the current fragment When there is a request for this information, color information, or stencil-alpha information, if there is request information in the dual port cache memory, the corresponding information is read and outputted. If there is no request information in the dual port cache memory, the request is read from the frame memory. Provides a cache controller that stores in dual-port cache memory.
상기 캐시 컨트롤러는 상기 듀얼 포트 캐시 메모리의 깊이 정보, 색상 정보, 또는 스텐실-알파 정보의 둘 이상이 동시에 상기 프레임 메모리에 라이트되는 경우 우선 순위를 조정하기 위한 고속의 논리 회로를 구비한 조정자부를 포함하는 것이 바람직하다.The cache controller includes a coordinator section having a high speed logic circuit for adjusting priority when two or more of depth information, color information, or stencil-alpha information of the dual port cache memory are simultaneously written to the frame memory. It is desirable to.
상기 조정자부는 우선 순위를 정하는 조정자와, 상기 조정자의 제어에 의해 상기 듀얼 포트 캐시 메모리의 깊이 정보, 색상 정보, 또는 스텐실-알파 정보의 어드레스 라인들로부터 하나를 선택하여 출력하는 어드레스 먹스와, 상기 조정자의 제어에 의해 상기 듀얼 포트 캐시 메모리의 깊이 정보, 색상 정보, 또는 스텐실-알파 정보의 데이터 라인들로부터 하나를 선택하여 출력하는 데이터 먹스를 포함하는 것이 바람직하다.The coordinator unit includes a coordinator for determining a priority, an address mux for selecting and outputting one from address lines of depth information, color information, or stencil-alpha information of the dual port cache memory under control of the coordinator; It is preferable to include a data mux to select one of the data line of the depth information, color information, or stencil-alpha information of the dual-port cache memory under the control of.
상기 조정자부는 상기 듀얼 포트 캐시 메모리의 색상 정보, 깊이 정보, 스텐실-알파 정보의 순으로 우선권을 부여하여 라이트 버스에 출력하는 것이 바람직하 다.Preferably, the coordinator unit gives priority to the color information, depth information, and stencil-alpha information of the dual port cache memory and outputs the priority to the write bus.
상기 듀얼 포트 캐시 메모리는 SRAM(Static RAM)인 것이 바람직하다.The dual port cache memory is preferably SRAM (Static RAM).
상기 듀얼 포트 캐시 메모리와 상기 퍼프래그먼트 유닛은 동일 클록을 이용하는 것이 바람직하다.Preferably, the dual port cache memory and the perfragment unit use the same clock.
상기 캐시 컨트롤러는 상기 듀얼 포트 캐시 메모리를 관리하기 위한 태그 필드와, 및 상기 듀얼 포트 캐시 메모리의 블록 교체를 위해 LRU 알고리즘을 더 구비한 것이 바람직하다.Preferably, the cache controller further includes a tag field for managing the dual port cache memory, and an LRU algorithm for block replacement of the dual port cache memory.
상술한 과제를 해결하기 위해, 본 발명에 따른 3차원 그래픽 가속 방법은 디스플레이될 픽셀 정보들로서, 깊이 정보, 색상 정보, 및 스텐실-알파 정보를 적어도 하나 이상 저장하는 프레임 메모리와, 현재의 프래그먼트에 대한 깊이 테스트, 색상 변환 및 스텐실 연산-알파 테스트를 적어도 하나 이상 수행하는 퍼프래그먼트 유닛과, 상기 현재의 프래그먼트에 대응되는 영역에 대한 깊이 정보, 색상 정보, 및 스텐실-알파 정보를 상기 프레임 메모리로부터 읽어와서 저장할 수 있고, 또한 동일 클록에서 읽기 기능과 쓰기 기능이 가능한 듀얼 포트 캐시 메모리를 구비한 그래픽 가속 장치를 이용한 3차원 그래픽 가속 방법에 있어서, 상기 퍼프래그먼트 유닛으로부터 상기 현재의 프래그먼트에 대한 깊이 테스트, 색상 변환 또는 스텐실 연산-알파 테스트의 수행을 위해 상기 현재의 프래그먼트에 대응되는 영역에 대한 깊이 정보, 색상 정보, 또는 스텐실-알파 정보의 요청이 있는 경우 상기 듀얼 포트 캐시 메모리에 요청 정보가 있으면 해당 정보를 읽어 출력하는 단계와, 및 상기 듀얼 포트 캐시 메모리에 요청 정보가 없으면 상기 프레임 메모리로부터 읽어와서 상 기 듀얼 포트 캐시 메모리에 저장하는 단계를 제공한다.In order to solve the above problems, the three-dimensional graphics acceleration method according to the present invention is a pixel memory to be displayed, the frame memory for storing at least one or more depth information, color information, and stencil-alpha information, and for the current fragment A per-fragment unit that performs at least one depth test, color conversion, and stencil arithmetic-alpha test, and depth information, color information, and stencil-alpha information for an area corresponding to the current fragment are read from the frame memory. A three-dimensional graphics acceleration method using a graphics accelerator having a dual port cache memory capable of storing and reading and writing at the same clock, the depth test of the current fragment from the perfragment unit, color Transform or Stencil Arithmetic-Alpha Testing If depth information, color information, or stencil-alpha information of a region corresponding to the current fragment is requested for a row, reading and outputting the requested information if the request information is present in the dual port cache memory; and If there is no request information in the dual port cache memory, a step of reading from the frame memory and storing in the dual port cache memory is provided.
상기 듀얼 포트 캐시 메모리의 깊이 정보, 색상 정보, 또는 스텐실-알파 정보의 둘 이상이 동시에 상기 프레임 메모리에 라이트되는 경우 우선 순위를 조정하는 단계를 더 포함하는 것이 바람직하다.The method may further include adjusting priorities when two or more of depth information, color information, or stencil-alpha information of the dual port cache memory are simultaneously written to the frame memory.
상기 듀얼 포트 캐시 메모리에 요청 정보가 없으면, 가장 오래된 블록 태그의 업데이트 비트가 설정되었는지를 확인하고, 상기 업데이트 비트가 설정되어 있으면 상기 가장 오래된 블록의 데이터를 프레임 메모리에 저장하는 것이 바람직하다.If there is no request information in the dual port cache memory, it is preferable to check whether the update bit of the oldest block tag is set and to store the data of the oldest block in the frame memory if the update bit is set.
상술한 구성들에 의하여, 본 발명은 입력 포트와 출력 포트가 별개로 구비하고 동일 클록으로 동시에 연속적인 읽기 혹은 쓰기가 가능하게 함으로써 그래픽 파이프라인의 스톨을 감소시켜 파이프라인의 성능을 향상시킬 수 있다. According to the above-described configurations, the present invention can improve the performance of the pipeline by reducing the stall of the graphics pipeline by separately providing the input port and the output port and enabling continuous read or write simultaneously with the same clock. .
또한, 본 발명은 듀얼 포트 캐시 메모리와 그래픽 파이프라인에 대하여 동일 클록을 이용함으로써 타임 손실을 줄일 수 있어 그래픽 파이프라인의 성능을 향상시킬 수 있다. In addition, the present invention can reduce time loss by using the same clock for the dual port cache memory and the graphics pipeline, thereby improving the performance of the graphics pipeline.
또한, 본 발명은 조정자의 이용에 의해 듀얼 포트 캐시 메모리의 데이터를 외부 프레임 메모리로 효율적으로 저장할 수 있다. In addition, the present invention can efficiently store data in the dual port cache memory into the external frame memory by use of the coordinator.
이하, 도면을 참조하여 본 발명의 바람직한 실시예들에 대하여 상세히 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 2는 본 발명의 일실시예에 따른 3차원 그래픽 가속 장치의 블록도이다.2 is a block diagram of an apparatus for accelerating 3D graphics according to an embodiment of the present invention.
도 2에 도시된 바와 같이, 3차원 그래픽 가속 장치(200)는 3차원 그래픽 애플리케이션에서 실시간 장면을 렌더링하기 위하여 프레임 메모리(210), AXI BUS MATRIX(220), 퍼프래그먼트 유닛(230), 듀얼 포트 캐시 메모리(240) 및 캐시 컨트롤러(250)를 포함한다.As shown in FIG. 2, the
프레임 메모리(210)는 LCD 컨트롤러(10)를 통해 LCD 화면(20)에 디스플레이될 픽셀 정보들을 저장한다. 특히, 프레임 메모리(210)는 디스플레이될 픽셀 정보들로서, 실시간 장면의 렌더링과 관련된 깊이 정보, 색상 정보, 및 스텐실-알파 정보를 적어도 하나 이상 저장한다.The
AXI BUS MATRIX(220)는 다수의 주변 모듈(peripheral)을 연결하고 높은 주파수로 동작하는 버스 메트릭스로, AXI(Advanced eXtensible Interface) 프로토콜을 이용한 버스 매트릭스이다.The AXI BUS MATRIX 220 is a bus matrix that connects a number of peripheral modules and operates at a high frequency, and is a bus matrix using the Advanced eXtensible Interface (AXI) protocol.
퍼프래그먼트 유닛(230)은 현재의 프래그먼트에 대한 깊이 테스트, 색상 변환 및 스텐실-알파 블렌딩을 적어도 하나 이상 수행한다. 일반적으로 프래그먼트는 픽셀을 의미하지만, 다른 단위로 정의하여 사용할 수도 있다. 도 2에서는 3차원 그래픽 파이프라인으로, 퍼프래그먼트 유닛(230)만이 도시되어 있으나, 기하학 엔진, 래스터 라이저, 프래그먼트 세이터 및 텍스처 유닛을 더 구비할 수 있다.
듀얼 포트 캐시 메모리(240)는 동일 클록에서 읽기 기능과 쓰기 기능이 가능한 캐시 메모리로, 프레임 메모리(210)로부터 읽어온 현재의 프래그먼트에 대응되 는 영역에 대한 깊이 정보, 색상 정보, 및 스텐실-알파 정보를 저장하거나 퍼프래그먼트 유닛(230)에서의 현재의 프래그먼트에 대한 깊이 테스트, 색상 변환 또는 스텐실-알파 블렌딩의 수행에 따른 현재 프로그먼트의 깊이 정보, 색상 정보 또는 스텐실-알파 정보를 저장한다. 또한, 듀얼 포트 캐시 메모리(240)는 동기적(synchronous) 혹은 비동기적(asynchronous)으로 동작할 수 있으며, SRAM(Static RAM)인 것이 바람직하다.The dual
또한, 듀얼 포트 캐시 메모리(240)는 타임 손실을 없애기 위하여 읽기/쓰기에 퍼프래그먼트 유닛(230)의 클록과 동일한 클록을 이용한다. The dual
즉, 본 발명은 캐시 메모리로 듀얼 포트 캐시 메모리(240)를 이용함으로써, 듀얼 포트 캐시 메모리(240)에 대하여 읽기 기능과 쓰기 기능을 동일 클록에서 동시에 수행할 수 있다. 즉, 퍼프래그먼트 유닛(230)으로부터의 읽기 요청은 듀얼 포트 캐시 메모리(240)에의 쓰기 요청과 독립적으로 수행된다.That is, according to the present invention, by using the dual
캐시 컨트롤러(250)는 3차원 그래픽 렌더링을 위해 프레임 메모리(210)의 데이터를 캐싱하는 역할을 담당하는 부분이다. 즉, 캐시 컨트롤러(250)는 퍼프래그먼트 유닛(230)으로부터 현재의 프래그먼트에 대한 깊이 테스트, 색상 변환 또는 스텐실-알파 블렌딩의 수행을 위해 현재의 프래그먼트에 대응되는 영역에 대한 깊이 정보, 색상 정보, 또는 스텐실-알파 정보의 요청이 있는 경우 듀얼 포트 캐시 메모리(240)에 요청 정보가 있으면 해당 정보를 읽어 출력하고, 듀얼 포트 캐시 메모리(240)에 요청 정보가 없으면 프레임 메모리(210)로부터 읽어와서 듀얼 포트 캐시 메모리(210)에 저장한다. 또한, 캐시 컨트롤러(250)는 퍼프래그먼트 유닛(230)에서 의 현재의 프래그먼트에 대한 깊이 테스트, 색상 변환 또는 스텐실-알파 블렌딩의 수행에 따른 현재 프로그먼트의 깊이 정보, 색상 정보 또는 스텐실-알파 정보를 듀얼 포트 캐시 메모리(240)에 저장한다The
또한, 캐시 컨트롤러(250)는 듀얼 포트 캐시 메모리(240)를 관리하기 위한 태그 필드(tag field)(252)를 더 구비하며, 또한 듀얼 포트 캐시 메모리(240)의 블록 교체를 위해 LRU(Least Recently Used) 알고리즘을 구비하고 있다.In addition, the
또한, 캐시 컨트롤러(250)는 AXI 리드 포트(252), AXI 라이트 포트(254) 및 조정자부(256)를 구비하고 있다.In addition, the
AXI 리드 포트(252)는 프레임 메모리(210)로부터 데이터를 읽어와서 듀얼 포트 캐시 메모리(240)에 업데이트하기 위한 포트이다.The AXI read
AXI 라이트 포트(254)는 퍼프래그먼트 유닛(230)의 렌더링 처리에 따라 업데이트된 듀얼 포트 캐시 메모리(240)의 데이터를 읽어와서 프레임 메모리(210)에 저장하기 위한 포트이다.The AXI write
조정자부(256)는 고성능의 로직 회로로, 듀얼 포트 캐시 메모리(240)로부터 복수의 데이터, 예를 들면, 깊이 정보, 색상 정보 또는 스텐실-알파 정보가 읽어와서 프레임 메모리(210)로 출력하는 경우 라운딩 로빈(ROUND-ROBIN) 방식으로 우선 순위를 정해서 AXI 라이트 포트(254)에 출력한다. 따라서 조정자부(256)에 의해 듀얼 포트 캐시 메모리(240)의 데이터를 효율적으로 프레임 메모리(210)에 저장할 수 있다.The
도 3은 도 2에 도시된 3차원 그래픽 가속 장치의 동작을 설명하는 흐름도이다.FIG. 3 is a flowchart for describing an operation of the 3D graphic accelerator shown in FIG. 2.
캐시 컨트롤러(250)의 동작은 퍼프래그먼트 유닛(230)으로부터의 접근, 즉 동작 요청으로부터 시작한다.The operation of the
먼저, 캐시 컨트롤러(250)는 듀얼 포트 캐시 메모리(240)가 초기화되어 있는지를 조사한다(S302).First, the
만약, 듀얼 포트 캐시 메모리(240)가 초기화되어 있지 않으면, 캐시 컨트롤러(250)는 태그 필드(252)를 모두 '0' 또는 디폴트값(default value)으로 초기화한다(S304). If the dual
듀얼 포트 캐시 메모리(240)가 8 X 8 픽셀 정보를 담을 수 있는 블록(이하 '캐시 블록'이라 함) 32개로 이루어진 경우, 캐시 컨트롤러(250)의 태그 필드(252)에는 32개의 캐시 블록의 값들을 저장할 수 있는 블록 태그들(TAG[0] ~ TAG[31])이 있으며, 각 블록 태그에는 프레임 메모리(210)에서 해당 블록의 위치를 결정하는 ID값, 그 블록이 업데이트 되었는지를 나타내는 값, 그 블록이 유효한지를 나타내는 값 등이 저장된다. 또한, 캐시 컨트롤러(250)는 캐시 블록의 최근 사용 순서를 나타내기 위해서 32개의 캐시 블록에 대한 사용 순위(LRU[0] ~ LRU[31])를 저장할 수 있다.When the dual
한편, 캐시 컨트롤러(250)는 듀얼 포트 캐시 메모리(240)가 초기화되었다면, 퍼프래그먼트 유닛(230)에서 입력된 좌표값(u, v)으로부터 해당 블록 id(nw_blk_id)를 계산하여(S306), 현재 듀얼 포트 캐시 메모리(240)에 프레임 메모 리(210)의 해당 블록이 캐싱되어 있는지를 조사한다(S308). 즉, 블록 태그 TAG[X][15:2] 비트 값이 캐시 블록 id를 나타내므로, 유효한 캐시 블록들의 id값들을 새로 요청된 nw_blk_id와 비교하여 듀얼 포트 캐시 메모리(240)에 요청된 블록이 있는지를 조사한다. 이 경우 요청된 nw_blk_id가 캐시 블록의 id(TAG[X][15:2]와 일치하고 TAG[X][0]==1로 그 캐시 블록이 유효하면, 캐시 히트가 되고, 아니면 캐시 미스가 된다.Meanwhile, when the dual
캐시 컨트롤러(250)는 캐시 미스인 경우, 캐시 블록들 중 가장 오래전에 사용된 캐시 블록을 새로운 데이터로 교체하게 된다. 가장 오래된 캐시 블록 넘버는 LRU 배열의 가장 마지막 값, 즉 LRU[31]에 저장된 값이다. 이 경우 가장 오래된 캐시 블록 넘버, 예를 들면 블록 태그의 업데이트 비트 TAG[X][1]가 '1'로 세트되어 있는지를 조사한다(S310).If the
만약 블록 태그의 업데이트 비트 TAG[X][1]가 '1'로 세트되어 있으면, 캐시 컨트롤러(250)는 해당 캐시 블록을 교체하기 전에 먼저 AXI 라이트 포트(254)를 이용하여 해당 캐시 블록의 데이터를 프레임 메모리(210)의 해당 영역에 저장한다(S312).If the update bit TAG [X] [1] of the block tag is set to '1', the
만약 블록 태그의 업데이트 비트 TAG[X][1]가 '0'으로 세트되어 있거나, 단계 S312를 통해 해당 캐시 블록의 데이터를 프레임 메모리(210)의 해당 영역에 저장하였다면, 캐시 컨트롤러(250)는 요청된 새로운 블록 nw_blk_id에 해당하는 데이터를 AXI 리드 포트(252)를 이용하여 프레임 메모리(210)로부터 읽어와서 LRU[31]이 가리키는 캐시 블록에 저장한다(S314).If the update bit TAG [X] [1] of the block tag is set to '0' or the data of the corresponding cache block is stored in the corresponding area of the
캐시 히트의 경우이거나 단계 314를 통해 새로운 블록 데이터가 해당 캐시 블록에 저장된 경우이면, 캐시 컨트롤러(250)는 그 캐시 블록의 해당 픽셀에 대한 요청된 동작, 즉 리드 동작 또는 라이트 동작을 수행하기 위해 라이트 동작인지를 조사한다(S316).If it is a cache hit or if new block data is stored in that cache block via step 314, the
만약, 요청된 동작이 리드 동작이면, 캐시 컨트롤러(250)는 그 캐시 블록의 해당 픽셀의 데이터를 읽어와서 퍼프래그먼트 유닛(230)에 제공한다(S318). 한편, 요청된 동작이 라이트 동작이면, 캐시 컨트롤러(250)는 해당 캐시 블록에 퍼프래그먼트 유닛(230)에서 제공된 픽셀 데이터를 저장하고, 그 캐시 블록에 대응되는 블록 태그의 업데이트 비트를 '1'로 세팅한다(S320).If the requested operation is a read operation, the
일단 리드 동작 또는 라이트 동작이 수행되면, 캐시 컨트롤러(250)는 LRU 순서를 업데이트하게 된다. 즉, 캐시 컨트롤러(250)는 가장 최근에 사용되어진 캐시 블록 넘버를 LRU[0]에 쓰고, 나머지 블록 넘버들의 순서를 한 단계씩 증가시킨다.Once a read or write operation is performed,
이러한 일련의 단계를 수행한 후에, 캐시 컨트롤러(250)는 다음 새로운 요청을 받을 수 있는 상태로 다시 되돌아 간다.After performing this series of steps, the
도 4는 본 발명의 일실시예에 따른 3차원 그래픽 가속 장치의 블록도를 구체적으로 도시한 도면이고, 도 5는 도 4에 도시된 조정자부를 구체적으로 도시한 도면이다.4 is a block diagram of a three-dimensional graphics acceleration device according to an embodiment of the present invention in detail, Figure 5 is a view showing in detail the adjuster shown in FIG.
프레임 메모리(210)는 깊이 정보를 저장하는 Z 버퍼(482)와, 스텐실-알파 정보를 저장하는 SA 버퍼(484)와 색상 정보를 저장하는 C 버퍼(486)를 구비한다.The
퍼프래그먼트 유닛(230)의 파이프라인들은 시저 테스트(scissor test), 깊이 값 읽기(depth value read), 깊이 테스트(depth test), 깊이 값 쓰기(depth value write), 스텐실-알파 값 읽기(stencil-alpha value read), 스텐실 연산(stencil operation), 알파 테스트(alpha test), 알파 블렌딩(alpha blending), 스텐실-알파 값 쓰기(stencil-alpha value write), 색상 값 읽기(color value read), 논리적 연산(logical operation), 디더링/색상 포맷 변환(dithering/color format conversion) 및 색상 값 쓰기(color value write)를 수행할 수 있다. The pipelines of the
도 4는 퍼프래그먼트 유닛(230)의 다양한 파이프라인들 중에서 캐시 컨트롤러와 연동하는 파인프라인들만을 도시한 것으로, 퍼프래그먼트 유닛(230)은 깊이 값 읽기(402), 깊이 테스트(404), 깊이 값 쓰기(406), 스텐실-알파 값 읽기(412), 스텐실 연산(414), 알파 테스트(416), 스텐실-알파 값 쓰기(418), 색상 값 읽기(422), 색상 포맷 변환(424) 및 색상 값 쓰기(426)를 구비한다.FIG. 4 illustrates only the fine lines that interoperate with the cache controller among various pipelines of the
한편, 듀얼 포트 캐시 메모리(240)는 퍼프래그먼트 유닛(230)의 깊이 테스트(404)와 관련된 Z 캐시 메모리(432)와, 퍼프래그먼트 유닛(230)의 스텐실 연산(414) 및 알파 테스트(416)와 관련된 SA 캐시 메모리(434)와, 및 퍼프래그먼트 유닛(230)의 색상 포맷 변환(424)과 관련된 C 캐시 메모리(436)로 구분된다. The dual
캐시 컨트롤러(250)는 Z 캐시 메모리(432)를 제어하기 위한 Z 제어부(440)와, SA 캐시 메모리(434)를 제어하기 위한 SA 제어부(450)와, 및 C 캐시 메모리(436)를 제어하기 위한 C 제어부(460)와 및 조정자부(470)을 구비한다.The
그리고 Z 제어부(440)에는 Z 캐시 메모리(432)를 관리하기 위한 Z 태그 필 드(442)가 구비되어 있으며, SA 제어부(450)에는 SA 캐시 메모리(434)를 관리하기 위한 SA 태그 필드(452)가 구비되어 있으며, 또한 C 제어부(460)에는 Z 캐시 메모리(436)를 관리하기 위한 C 태그 필드(462)가 구비되어 있다.The
현재의 프래그먼트에 대한 깊이 값 읽기(402) 파이프라인의 동작이면 퍼프래그먼트 유닛(230)은 읽기 명령 신호 및 깊이 어드레스 z_add를 캐시 컨트롤러(250)의 Z 제어부(440)로 제공한다.If the
Z 제어부(440)는 깊이 어드레스 z_add가 Z 태그 필드(442)에 있는지를 조사하고 캐시 히트이면 Z 캐시 메모리(432)의 해당 어드레스 zr_add로부터 깊이 정보를 읽어 퍼프래그먼트 유닛(230)의 깊이 값 읽기(402)에 제공한다. 그러나 캐시 미스이면, Z 제어부(440)는 깊이 어드레스 z_add에 기초하여 프레임 메모리(210)의 Z 버퍼(482)로부터 깊이 정보를 읽어와서 Z 캐시 메모리(432)에 저장하고 퍼프래그먼트 유닛(230)의 깊이 값 읽기(402)에 제공한다. 퍼프래그먼트 유닛(230)의 깊이 값 읽기(402) 파이프라인은 요청된 깊이 정보를 캐시 컨트롤러(250)에서 수신할 때까지 스톨된다.The
현재의 프래그먼트의 깊이 값을 수신한 퍼프래그먼트 유닛(230)은 깊이 테스트(404) 파이프 라인에서 깊이 테스트 동작을 수행할 수 있다. 그리고 깊이 테스트가 정상적으로 이루어진 경우에는 깊이 값 쓰기(406)에서 새로운 깊이 값을 Z 제어부(440)에 제공하고, Z 제어부(440)는 Z 캐시 메모리(432)의 해당 캐시 블록에 새로운 깊이 값을 저장하고, Z 태그 필드(442)의 해당 블록 태그에 업데이트 정보를 기록한다.Upon receiving the depth value of the current fragment, the per-
Z 제어부(440)는 Z 캐시 메모리(432)의 해당 캐시 블록에 새로운 깊이 값을 저장하는 동안, 퍼프래그먼트 유닛(230)으로부터 새로운 읽기 명령 신호 및 새로운 깊이 어드레스 z_add를 제공받아 캐시 히트이면 Z 캐시 메모리(432)의 해당 어드레스 zr_add로부터 깊이 정보를 읽어 퍼프래그먼트 유닛(230)의 깊이 값 읽기(402)에 제공할 수 있다. The
현재의 프래그먼트에 대한 스텐실-알파 값 읽기(412) 파이프라인의 동작이면 퍼프래그먼트 유닛(230)은 읽기 명령 신호 및 스텐실-알파 어드레스 sa_add를 캐시 컨트롤러(250)의 SA 제어부(450)로 제공한다. 여기서 스텐실-알파 값은 16비트 또는 8비트로 이루어질 수 있다.In operation of the stencil-alpha value read 412 pipeline for the current fragment, the
SA 제어부(450)는 스텐실-알파 어드레스 sa_add가 SA 태그 필드(452)에 있는지를 조사하고 캐시 히트이면 SA 캐시 메모리(434)의 해당 어드레스 sar_add로부터 스텐실-알파 정보를 읽어 퍼프래그먼트 유닛(230)의 스텐실-알파 값 읽기(412)에 제공한다. 그러나 캐시 미스이면, SA 제어부(450)는 스텐실-알파 어드레스 sa_add에 기초하여 프레임 메모리(210)의 SA 버퍼(484)로부터 스텐실-알파 정보를 읽어와서 SA 캐시 메모리(434)에 저장하고 퍼프래그먼트 유닛(230)의 스텐실-알파 값 읽기(412)에 제공한다. 퍼프래그먼트 유닛(230)의 스텐실-알파 값 읽기(412) 파이프라인은 요청된 깊이 정보를 캐시 컨트롤러(250)에서 수신할 때까지 스톨된다.The
현재의 프래그먼트의 스텐실-알파 값을 수신한 퍼프래그먼트 유닛(230)은 스텐실 연산(414) 파이프라인에서 스텐실 테스트 동작을 수행하고, 알파 테스트(416) 파이프라인에서 알파 테스트 동작을 수행한다. 그리고 스텐실 연산과 알파 테스트 가 정상적으로 이루어진 경우에는 스텐실-알파 값 쓰기(418)에서 새로운 스텐실-알파 값을 SA 제어부(450)에 제공하고, SA 제어부(450)는 SA 캐시 메모리(434)의 해당 캐시 블록에 새로운 스텐실-알파 값을 저장하고, SA 태그 필드(452)의 해당 블록 태그에 업데이트 정보를 기록한다.Upon receiving the stencil-alpha value of the current fragment, the per-
그리고, 현재의 프래그먼트에 대한 색상 값 읽기(422) 파이프라인의 동작이면 퍼프래그먼트 유닛(230)은 읽기 명령 신호 및 색상 어드레스 c_add를 캐시 컨트롤러(250)의 C 제어부(460)로 제공한다.In addition, when the color value read 422 pipeline operation of the current fragment is performed, the
C 제어부(460)는 색상 어드레스 c_add가 C 태그 필드(462)에 있는지를 조사하고 캐시 히트이면 C 캐시 메모리(436)의 해당 어드레스 cr_add로부터 색상 정보를 읽어 퍼프래그먼트 유닛(230)의 색상 값 읽기(422)에 제공한다. 그러나 캐시 미스이면, C 제어부(460)는 색상 어드레스 c_add에 기초하여 프레임 메모리(210)의 C 버퍼(486)로부터 색상 정보를 읽어와서 C 캐시 메모리(436)에 저장하고 퍼프래그먼트 유닛(230)의 색상 값 읽기(422)에 제공한다. 퍼프래그먼트 유닛(230)의 색상 값 읽기(422) 파이프라인은 요청된 색상 정보를 캐시 컨트롤러(250)에서 수신할 때까지 스톨된다.The
현재의 프래그먼트의 색상 값을 수신한 퍼프래그먼트 유닛(230)은 색상 테스트(424) 파이프 라인에서 색상 포맷 변환을 수행한다. 그리고 색상 포맷 변환이 정상적으로 이루어진 경우에는 색상 값 쓰기(406)에서 새로운 색상 값을 C 제어부(460)에 제공하고, C 제어부(460)는 C 캐시 메모리(436)의 해당 캐시 블록에 새로운 색상 값을 저장하고, C 태그 필드(462)의 해당 블록 태그에 업데이트 정보를 기록한다.Upon receiving the color value of the current fragment, the
조정자부(470)는 고성능의 로직 회로로, 듀얼 포트 캐시 메모리(240)의 깊이 정보, 색상 정보 또는 스텐실-알파 정보를 읽어와서 프레임 메모리(210)로 출력하는 경우 우선 순위를 정해서 효율적으로 관리하기 위한 모듈이다.The
도 5에 도시된 바와 같이, 조정자부(470)는 어드레스 먹스(502), 데이터 먹스(504) 및 조정자(506)를 구비한다. As shown in FIG. 5, the
어드레스 먹스(502)는 입력 포트에 Z 제어부(440)의 어드레스 라인들, SA 제어부(450)의 어드레스 라인들 및 C 제어부(460)의 어드레스 라인들을 연결하고, 출력 포트에 AXI 라이트 포트(254)의 어드레스 라인들을 연결한다.The
데이터 먹스(504)는 입력 포트에 Z 제어부(440)의 데이터 라인들, SA 제어부(450)의 데이터 라인들 및 C 제어부(460)의 데이터 라인들을 연결하고, 출력 포트에 AXI 라이트 포트(254)의 데이터 라인들을 연결한다.The data mux 504 connects the data lines of the
조정자(506)는 Z 제어부(440), SA 제어부(450) 및 C 제어부(460)로부터 요구 신호 REQ를 수신하면, 우선 순위 라운드 로빈 스케쥴러에 따라 우선 순위를 부여한다. 본 발명에서는 색상, 깊이, 스텐실-알파 순으로 우선 순위를 부여한다.When the
Z 제어부(440)로부터 프레임 메모리(210)의 Z 버퍼(482)에 쓰기 요청을 위한 요구 신호가 입력되었으나 C 제어부(460)로부터 프레임 메모리(210)의 C 버퍼(486)에 쓰기 요청을 위한 요구 신호가 입력되지 않는 경우에는 조정자(506)은 Z 제어부(440)로 승인신호 ACK를 출력하고, 어드레스 먹스(502)에 Z 어드레스 라인을 선택하는 제어신호를 출력하고, 데이터 먹스(504)에 Z 데이터 라인을 선택하는 제어 신호를 출력한다. 그러면 Z 제어부(440)는 Z 어드레스 라인에 어드레스 신호를 제공하고, 또한 캐시 메모리(432)로부터 해당 캐시 블록의 데이터를 읽어와서 Z 데이터 라인에 제공하므로, AXI 라이트 포트(254)를 통해 수신된 해당 캐시 블록의 데이터가 프레임 메모리(210)의 Z 버퍼(482)의 해당 영역에 저장된다.A request signal for a write request has been input from the
그러나 Z 제어부(440)로부터 프레임 메모리(210)의 Z 버퍼(482)에 쓰기 요청을 위한 요구 신호가 입력되었으나 C 제어부(460)로부터 프레임 메모리(210)의 C 버퍼(486)에 쓰기 요청을 위한 요구 신호가 입력된 경우에는 조정자(506)는 C 제어부(460)로 승인신호 ACQ를 출력하고, 어드레스 먹스(502)에 C 어드레스 라인을 선택하는 제어신호를 출력하고, 데이터 먹스(504)에 C 데이터 라인을 선택하는 제어신호를 출력한다. 그러면 C 제어부(460)는 C 어드레스 라인에 어드레스 신호를 제공하고, 또한 캐시 메모리(436)로부터 해당 캐시 블록의 데이터를 읽어와서 C 데이터 라인에 제공하므로, AXI 라이트 포트(254)를 통해 수신된 해당 캐시 블록의 데이터가 프레임 메모리(210)의 C 버퍼(486)의 해당 영역에 저장된다.However, although a request signal for a write request is input from the
이 조정자부(470)는 3개의 마스터, 즉 Z 제어부(440), SA 제어부(450) 및 C 제어부(460)가 하나의 인터페이스와 통신하므로, 2개의 마스트 포트를 AXI 버스 매트릭스에 추가하여 설치할 필요가 없다.Since the
도 6은 캐시 메모리로 싱글 포트를 이용한 경우의 타이밍 도면이고, 도 7은 캐시 메모리로 듀얼 포트를 이용한 경우의 타이밍 도면이다.6 is a timing diagram when a single port is used as the cache memory, and FIG. 7 is a timing diagram when a dual port is used as the cache memory.
도 6 및 도 7의 예는 퍼프래그먼트 유닛(230)에서 기존의 깊이 데이터를 읽어와서 비교 후 입력된 깊이 값이 기존의 깊이 값보다 작을 경우 입력된 깊이 값을 다시 캐시 메모리에 업데이트하여 쓰는 과정을 도시한다. 만약 이러한 읽기/쓰기 연속 동작이 N번 일어난다면 싱글 포트의 경우는 (N x 3) 클록이 소요되며, 듀얼 포트의 경우에는 (N + 2) 클록이 소요된다. 도 6 및 도 7에서 알 수 있듯이, 만약 3번의 읽기/쓰기가 행해졌다면, 즉 도 6 및 도 7에서 A와 B 지점 사이의 동작은 싱글 포트의 경우 9 클록이 소요되며, 듀얼 포트의 경우에는 5 클록이 소요된다. 6 and 7 illustrate a process of reading existing depth data from the
본 발명의 보호 범위는 이하 특허청구범위에 의하여 해석되어야 마땅할 것이다. 또한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것인 바, 본 발명과 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다. The protection scope of the present invention should be interpreted by the following claims. It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit and scope of the invention as defined by the appended claims. It should be interpreted that it is included in the scope of right.
도 1은 일반적인 3차원 그래픽의 처리 과정을 나타낸 블록도이다.1 is a block diagram showing a process of processing a general three-dimensional graphic.
도 2는 본 발명의 일실시예에 따른 3차원 그래픽 가속 장치의 블록도이다.2 is a block diagram of an apparatus for accelerating 3D graphics according to an embodiment of the present invention.
도 3은 도 2에 도시된 3차원 그래픽 가속 장치의 동작을 설명하는 흐름도이다.FIG. 3 is a flowchart for describing an operation of the 3D graphic accelerator shown in FIG. 2.
도 4는 본 발명의 일실시예에 따른 3차원 그래픽 가속 장치의 블록도를 구체적으로 도시한 도면이다.4 is a block diagram illustrating in detail a 3D graphic accelerator according to an exemplary embodiment of the present invention.
도 5는 도 4에 도시된 조정자부를 구체적으로 도시한 도면이다.FIG. 5 is a view illustrating in detail the adjuster unit illustrated in FIG. 4.
도 6은 캐시 메모리로 싱글 포트를 이용한 경우의 타이밍 도면이다.6 is a timing diagram when a single port is used as the cache memory.
도 7은 캐시 메모리로 듀얼 포트를 이용한 경우의 타이밍 도면이다.7 is a timing diagram when a dual port is used as a cache memory.
<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>
210 : 프레임 메모리 220 : AXI BUS MATRIX210: frame memory 220: AXI BUS MATRIX
230 : 퍼그래그먼트 유닛 240 : 듀얼 포트 캐시 메모리230: fragment unit 240: dual port cache memory
250 : 캐시 컨트롤러 252 : 태그 필드250: cache controller 252: tag field
254 : AXI 리드 포트 256 : AXI 라이트 포트254: AXI lead port 256: AXI light port
256 : 조정자부 256: adjuster part
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090063446A KR101022282B1 (en) | 2009-07-13 | 2009-07-13 | 3? graphic accelerator and 3? graphic accelerating method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090063446A KR101022282B1 (en) | 2009-07-13 | 2009-07-13 | 3? graphic accelerator and 3? graphic accelerating method |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20110006019A KR20110006019A (en) | 2011-01-20 |
KR101022282B1 true KR101022282B1 (en) | 2011-03-21 |
Family
ID=43612902
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090063446A KR101022282B1 (en) | 2009-07-13 | 2009-07-13 | 3? graphic accelerator and 3? graphic accelerating method |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101022282B1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040011918A (en) * | 2002-07-31 | 2004-02-11 | 학교법인연세대학교 | operation method of pixel cache architecture in three-dimensional graphic accelerator |
KR20060044124A (en) * | 2004-11-11 | 2006-05-16 | 삼성전자주식회사 | Graphics system for a hardware acceleration in 3-dimensional graphics and therefor memory apparatus |
KR20080006136A (en) * | 2006-07-11 | 2008-01-16 | 엠텍비젼 주식회사 | Cache memory apparatus for 3-dimensional graphic computation, and method of processing 3-dimensional graphic computation |
KR20080014402A (en) * | 2006-08-11 | 2008-02-14 | 삼성전자주식회사 | Method and apparatus for processing computer graphics data |
-
2009
- 2009-07-13 KR KR1020090063446A patent/KR101022282B1/en not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040011918A (en) * | 2002-07-31 | 2004-02-11 | 학교법인연세대학교 | operation method of pixel cache architecture in three-dimensional graphic accelerator |
KR20060044124A (en) * | 2004-11-11 | 2006-05-16 | 삼성전자주식회사 | Graphics system for a hardware acceleration in 3-dimensional graphics and therefor memory apparatus |
KR20080006136A (en) * | 2006-07-11 | 2008-01-16 | 엠텍비젼 주식회사 | Cache memory apparatus for 3-dimensional graphic computation, and method of processing 3-dimensional graphic computation |
KR20080014402A (en) * | 2006-08-11 | 2008-02-14 | 삼성전자주식회사 | Method and apparatus for processing computer graphics data |
Also Published As
Publication number | Publication date |
---|---|
KR20110006019A (en) | 2011-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8669999B2 (en) | Alpha-to-coverage value determination using virtual samples | |
US10515011B2 (en) | Compression status bit cache and backing store | |
US8089486B2 (en) | Tiled prefetched and cached depth buffer | |
US8941653B2 (en) | Order-preserving distributed rasterizer | |
US8704826B1 (en) | Primitive re-ordering between world-space and screen-space pipelines with buffer limited processing | |
US8766995B2 (en) | Graphics system with configurable caches | |
US8760460B1 (en) | Hardware-managed virtual buffers using a shared memory for load distribution | |
US8810592B2 (en) | Vertex attribute buffer for inline immediate attributes and constants | |
US20110080406A1 (en) | Calculation of plane equations after determination of z-buffer visibility | |
JP2007525768A (en) | Register-based queuing for texture requests | |
US8271734B1 (en) | Method and system for converting data formats using a shared cache coupled between clients and an external memory | |
US7245302B1 (en) | Processing high numbers of independent textures in a 3-D graphics pipeline | |
US8504773B1 (en) | Storing dynamically sized buffers within a cache | |
US20030142102A1 (en) | Texture mapping performance by combining requests for image data | |
US20020171657A1 (en) | External dirty tag bits for 3D-RAM SRAM | |
KR101022282B1 (en) | 3? graphic accelerator and 3? graphic accelerating method | |
US6448967B1 (en) | Z-Buffer pre-test for 3D graphics performance enhancement | |
US8489839B1 (en) | Increasing memory capacity of a frame buffer via a memory splitter chip | |
US11379944B2 (en) | Techniques for performing accelerated point sampling in a texture processing pipeline | |
US8081182B2 (en) | Depth buffer for rasterization pipeline | |
JP3548648B2 (en) | Drawing apparatus and drawing method | |
JP3971448B2 (en) | Drawing apparatus and drawing method | |
CN116563444A (en) | Method and device for accelerating texture mapping hardware |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20140307 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20150226 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20160308 Year of fee payment: 6 |
|
LAPS | Lapse due to unpaid annual fee |