KR100978814B1 - Graphic acceleration system for displaying multi 3d graphic using single application processor and method thereof - Google Patents

Graphic acceleration system for displaying multi 3d graphic using single application processor and method thereof Download PDF

Info

Publication number
KR100978814B1
KR100978814B1 KR1020100015264A KR20100015264A KR100978814B1 KR 100978814 B1 KR100978814 B1 KR 100978814B1 KR 1020100015264 A KR1020100015264 A KR 1020100015264A KR 20100015264 A KR20100015264 A KR 20100015264A KR 100978814 B1 KR100978814 B1 KR 100978814B1
Authority
KR
South Korea
Prior art keywords
graphics
data
graphic
application processor
application
Prior art date
Application number
KR1020100015264A
Other languages
Korean (ko)
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 KR1020100015264A priority Critical patent/KR100978814B1/en
Application granted granted Critical
Publication of KR100978814B1 publication Critical patent/KR100978814B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory

Abstract

PURPOSE: A graphics acceleration system and a method thereof for indicating a multi 3D graphic by a single application processor by using a multi 3D graphic speed-up apparatus are provided to display a plurality of 3D graphics to an application processor by adding a multi-3D graphic accelerator. CONSTITUTION: An application processor comprises a thirteenth dimensional graphics acceleration module(110). When the first application is processed, the first 3D graphics acceleration module processes data about 3D graphic of the first application as first 3D graphic data. A memory comprises a first frame buffer and the first and the second application storing first 3D graphic data. When the second application is processed, a second 3D graphics acceleration module(210) processes data about 3D graphic of the second application as second 3D graphic data.

Description

단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템 및 그 방법{GRAPHIC ACCELERATION SYSTEM FOR DISPLAYING MULTI 3D GRAPHIC USING SINGLE APPLICATION PROCESSOR AND METHOD THEREOF}GRAPHIC ACCELERATION SYSTEM FOR DISPLAYING MULTI 3D GRAPHIC USING SINGLE APPLICATION PROCESSOR AND METHOD THEREOF}

본 발명은 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템 및 그 방법에 관한 것으로, 특히 단일 애플리케이션 프로세서에 멀티 3D 그래픽 가속장치를 추가함으로써, 속도의 저하 없이 하나의 애플리케이션 프로세서로 복수의 3D 그래픽을 디스플레이할 수 있는 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템 및 그 방법에 관한 것이다.
The present invention relates to a graphics acceleration system and method for displaying multiple 3D graphics with a single application processor, and in particular, by adding multiple 3D graphics accelerators to a single application processor, a plurality of 3D graphics with a single application processor without sacrificing speed. A graphics acceleration system and method for displaying multiple 3D graphics with a single application processor capable of displaying the same.

일반적인 3D 그래픽을 이용하는 모바일 단말기의 경우, 도 1에 도시된 바와 같이 SoC(System on Chip) 내부에 3D 그래픽 가속모듈(11)이 하나 존재한다. 즉 종래에는, 3D 그래픽을 디스플레이하기 위해서는 CPU(17)가 메모리(30)에 저장된 데이터를 시스템 버스를 이용하여 불러온다. 불러온 데이터는 3D 그래픽 가속모듈(11)에서 처리하게 하고, 이를 다시 메모리(30) 상의 프레임 버퍼에 저장해 둔다. 그리고 이를 디스플레이 컨트롤러(15)를 통해 불러와 디스플레이어(40)에 뿌리는 형태로 3D 그래픽 데이터를 처리한다. In the case of a mobile terminal using general 3D graphics, there is one 3D graphics acceleration module 11 inside a system on chip (SoC) as shown in FIG. 1. That is, conventionally, in order to display 3D graphics, the CPU 17 reads data stored in the memory 30 using the system bus. The loaded data is processed by the 3D graphics acceleration module 11 and stored in the frame buffer on the memory 30 again. The 3D graphic data is processed in a form that is called through the display controller 15 and sprinkled on the display 40.

이러한 종래 구성에서 두 개의 3D 그래픽을 동시에 디스플레이하고자 하는 경우, 단순히 그래픽 가속모듈을 추가하는 것만으로는 원하는 결과를 얻을 수 없다. 즉, 그래픽 가속모듈을 하나 더 추가하여 2 개의 3D 그래픽 가속모듈로 2 개의 컨텐츠(애플리케이션)를 실행시키는 경우, 임베디드 시스템상에서 파이프라인(AXI bus)은 하나의 애플리케이션만이 점유할 수 있는 구조이므로 3D 그래픽 가속블럭이 2개임에도 불구하고, 2개의 애플리케이션을 동시에 실행시킬 수 없다. 동시에 실행시킬 경우, 한정된 시스템 버스의 bandwidth로 인해 속도 저하, 병목현상이 생겨 전체적인 시스템의 안정도와 퍼포먼스가 저하된다는 문제가 발생한다. 컴퓨터에 비해 저사양인 종래에는 모바일 단말기에서 복수의 3D 그래픽을 디스플레이하기 위해서는 기존에는 한 개의 3D 애플리케이션을 구동하고 이를 정지한 다음에야 다음 애플리케이션을 구동할 수 있다. 따라서 이를 방지하기 위해서는 시스템 버스를 두 배로 하여야 한다. 그런데, 시스템 버스를 두 배로 할 경우, 제품의 크기가 커지고, 제품의 생산 단가가 증가한다는 문제가 있다. 소형화를 추구하는 모바일 단말기에 사용되는 그래픽 가속모듈에 있어서, 제품의 크기가 커진다는 것은 매우 치명적이다. In this conventional configuration, if two 3D graphics are to be displayed simultaneously, simply adding a graphics acceleration module may not achieve the desired result. In other words, if you add two more graphics acceleration modules to execute two contents (applications) with two 3D graphics acceleration modules, the pipeline (AXI bus) in an embedded system can be occupied by only one application. Although there are two graphics acceleration blocks, two applications cannot run at the same time. At the same time, the bandwidth of the limited system bus may cause speed degradation and bottlenecks, resulting in deterioration of overall system stability and performance. In order to display a plurality of 3D graphics on a mobile terminal, which is lower than that of a computer, the next application may be driven only after a single 3D application is driven and stopped. Therefore, to prevent this, double the system bus. However, when the system bus is doubled, there is a problem that the size of the product increases and the production cost of the product increases. In the graphics acceleration module used in the mobile terminal for miniaturization, it is very fatal to increase the size of the product.

한편, 그래픽을 오버레이하는 경우 오버레이하고자 하는 그래픽 데이터 간에 클럭을 서로 일치시켜야 하는데, 종래에는 하나의 그래픽 이미지를 일단 저장한 후 다른 그래픽 이미지의 클럭에 맞춰 다시 Read 하는 방법을 사용하였다. 그런데, 이러한 종래기술은 하나의 그래픽 이미지를 계속해서 Write 및 Read 해야하므로 메모리 bandwidth의 상당 부분을 차지하게 되고, 이는 그래픽 가속시스템의 성능저하로 연결되어 문제가 되었다.
On the other hand, in the case of overlaying graphics, clocks must be matched between graphic data to be overlaid. In the related art, a method of storing a graphic image once and then re-reading it according to the clock of another graphic image has been used. However, such a prior art has to write and read a single graphic image continuously, which takes up a large portion of the memory bandwidth, which is connected to the performance degradation of the graphics acceleration system.

본 발명은 상기의 문제를 해결하기 위한 것으로, 단일 애플리케이션 프로세서에 멀티 3D 그래픽 가속장치를 추가함으로써, 속도의 저하 없이 하나의 애플리케이션 프로세서로 복수의 3D 그래픽을 디스플레이할 수 있는 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템 및 그 방법을 제공하는 것을 목적으로 한다. SUMMARY OF THE INVENTION The present invention has been made to solve the above problem, and by adding a multi 3D graphics accelerator to a single application processor, a multi application 3D graphics with a single application processor that can display a plurality of 3D graphics with a single application processor without sacrificing speed It is an object of the present invention to provide a graphic acceleration system and a method for displaying the same.

본 발명의 다른 실시예에 따르면, 하나의 디스플레이어에 복수의 3D 그래픽을 동시에 디스플레이함으로써, 모바일 기기에서 직관적이고 다양한 화면구성이 가능한 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이할 수 있는 그래픽 가속 시스템 및 그 방법을 제공하는 것을 목적으로 한다. According to another embodiment of the present invention, by simultaneously displaying a plurality of 3D graphics on one display, a graphics acceleration system that can display multiple 3D graphics with a single application processor capable of intuitive and various screen configuration on the mobile device and its It is an object to provide a method.

본 발명의 다른 실시예에 따르면, 제 1 디스플레이 컨트롤러는 제 1 3D 그래픽 데이터를 제 2 디스플레이 컨트롤러로 직접 전송함으로써, 제 1 3D 그래픽 데이터와 제 2 3D 그래픽 데이터를 오버레이할 때 제 2 프레임 버퍼가 제 1 3D 그래픽 데이터를 WRITE 또는 READ 하지 않아도 되므로 성능 저하되지 않을 수 있는 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이할 수 있는 그래픽 가속 시스템 및 그 방법을 제공하는 것을 목적으로 한다.
According to another embodiment of the present invention, the first display controller transmits the first 3D graphic data directly to the second display controller, whereby the second frame buffer is configured to overlay the first 3D graphic data and the second 3D graphic data. 1 It is an object of the present invention to provide a graphics acceleration system and method for displaying multiple 3D graphics using a single application processor that does not require WRITE or READ of 3D graphics data.

상기의 목적을 달성하기 위해 본 발명의 실시예에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템은, 제 1 애플리케이션이 실행될 경우, 상기 제 1 애플리케이션의 3D 그래픽에 관한 데이터를 제 1 3D 그래픽 데이터로 처리하는 제 1 3D 그래픽 가속모듈을 내장하는 애플리케이션 프로세서; 상기 제 1 3D 그래픽 데이터를 저장하는 제 1 프레임 버퍼, 상기 제 1 애플리케이션 및 제 2 애플리케이션을 포함하는 메모리; 및 상기 제 2 애플리케이션이 실행될 경우, 상기 제 2 애플리케이션의 3D 그래픽에 관한 데이터를 제 2 3D 그래픽 데이터로 처리하는 제 2 3D 그래픽 가속모듈을 포함하는 멀티 그래픽 가속장치;를 포함하여 구성되고, 상기 멀티 그래픽 가속장치는, 상기 제 1 3D 그래픽 데이터 및 상기 제 2 3D 그래픽 데이터를 오버레이하여 멀티 3D 그래픽 데이터를 디스플레이하고, 상기 애플리케이션 프로세서가 상기 애플리케이션 프로세서를 제어하는 CPU; 상기 애플리케이션 프로세서에서 데이터 전송로인 데이터 버스; 상기 메모리와 인터페이스를 수행하는 메모리 인터페이스; 상기 멀티 그래픽 가속장치와 인터페이스를 수행하는 멀티 그래픽 가속장치 인터페이스; 및 상기 제 1 프레임 버퍼에 저장된 상기 제 1 3D 그래픽 데이터를 상기 멀티 그래픽 가속장치로 전송하는 제 1 디스플레이 컨트롤러;를 포함하여 구성되는 것을 특징으로 한다. In order to achieve the above object, a graphic acceleration system displaying multiple 3D graphics with a single application processor according to an embodiment of the present invention, when the first application is executed, the first 3D data about the 3D graphics of the first application; An application processor incorporating a first 3D graphics acceleration module for processing graphics data; A memory including a first frame buffer for storing the first 3D graphics data, the first application and a second application; And a second 3D graphics acceleration module configured to process data relating to 3D graphics of the second application as second 3D graphics data when the second application is executed. The graphic accelerator includes: a CPU configured to display the multi 3D graphic data by overlaying the first 3D graphic data and the second 3D graphic data, and wherein the application processor controls the application processor; A data bus that is a data transmission path from the application processor; A memory interface that interfaces with the memory; A multi-graphics accelerator interface for performing an interface with the multi-graphics accelerator; And a first display controller configured to transmit the first 3D graphic data stored in the first frame buffer to the multi-graphics accelerator.

삭제delete

본 발명의 다른 실시예에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템은, 상기 멀티 그래픽 가속장치가 상기 제 2 3D 그래픽 데이터를 저장하고, 상기 제 2 3D 그래픽 데이터를 제공하는 제 2 프레임 버퍼; 및 상기 제 1 3D 그래픽 데이터 및 상기 제 2 3D 그래픽 데이터를 오버레이하여 상기 멀티 3D 그래픽 데이터로 생성하는 제 2 디스플레이 컨트롤러;를 포함하여 구성되는 것을 특징으로 한다. According to another aspect of the present invention, there is provided a graphics acceleration system for displaying multiple 3D graphics with a single application processor, wherein the multiple graphics accelerator stores the second 3D graphics data and provides the second 3D graphics data. Frame buffer; And a second display controller configured to overlay the first 3D graphic data and the second 3D graphic data to generate the multi 3D graphic data.

본 발명의 다른 실시예에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템은, 상기 제 2 디스플레이 컨트롤러가 수직 신호(VSYNC), 수평 신호(HSYNC), 데이터 인에이블 신호(DE) 및 클럭 신호(CLK)를 제어신호로써 상기 애플리케이션 프로세서로부터 수신하고, 상기 수직 신호, 상기 수평 신호 및 상기 데이터 인에이블 신호에 따라 오버레이를 수행하는 것을 특징으로 한다. According to another aspect of the present invention, there is provided a graphic acceleration system for displaying multiple 3D graphics using a single application processor, wherein the second display controller includes a vertical signal VSYNC, a horizontal signal HSYNC, a data enable signal DE, and a clock. The signal CLK may be received from the application processor as a control signal, and overlay may be performed according to the vertical signal, the horizontal signal, and the data enable signal.

본 발명의 다른 실시예에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템은, 상기 멀티 3D 그래픽 데이터가, 상기 제 1 3D 그래픽 데이터 및 상기 제 2 3D 그래픽 데이터의 오버레이를 할 때, N 개의 레이어로 오버레이 하면 3+N-1 클럭(CLK) 딜레이되는 것을 특징으로 한다. According to another embodiment of the present invention, a graphics acceleration system for displaying multiple 3D graphics with a single application processor includes: when the multi 3D graphics data overlays the first 3D graphics data and the second 3D graphics data, N; Overlaying three layers is characterized by a 3 + N-1 clock (CLK) delay.

본 발명의 다른 실시예에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템은, 상기 제 2 디스플레이 컨트롤러가 알파블렌딩, 칼라마스킹, 클리핑, 트랜스패런시 중 어느 하나의 방법으로 상기 제 1 3D 그래픽 데이터 및 제 2 3D 그래픽 데이터를 오버레이하여 멀티 3D 그래픽 데이터로 처리하는 것을 특징으로 한다. According to another aspect of the present invention, there is provided a graphics acceleration system for displaying multiple 3D graphics using a single application processor, wherein the second display controller is configured to perform the first 3D by any one of alpha blending, color masking, clipping, and transparency. And overlaying the graphic data and the second 3D graphic data into multiple 3D graphic data.

본 발명의 다른 실시예에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템은, 상기 데이터 버스가 ahb Bus 또는 AXI Bus 인 것을 특징으로 한다. A graphics acceleration system for displaying multiple 3D graphics with a single application processor according to another embodiment of the invention is characterized in that the data bus is an ahb Bus or an AXI Bus.

본 발명의 다른 실시예에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템은, 상기 CPU가 ARM core인 것을 특징으로 한다. According to another embodiment of the present invention, a graphics acceleration system for displaying multiple 3D graphics with a single application processor is characterized in that the CPU is an ARM core.

본 발명의 다른 실시예에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템은, RGB 인터페이스 모드에서 동작하는 것을 특징으로 한다. A graphics acceleration system for displaying multiple 3D graphics with a single application processor according to another embodiment of the invention is characterized in that it operates in RGB interface mode.

본 발명의 실시예에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 방법은, 애플리케이션 프로세서가 메모리에 저장된 제 1 애플리케이션을 구동시키는 제 1 애플리케이션 구동 단계; 상기 애플리케이션 프로세서가 상기 제 1 애플리케이션과 관련된 제 1 3D 그래픽 데이터를 처리하는 제 1 3D 그래픽 데이터 처리 단계; 상기 애플리케이션 프로세서가 상기 메모리에 저장된 상기 제 2 애플리케이션을 구동시키는 제 2 애플리케이션 구동 단계; 멀티 그래픽 가속장치가 상기 제 2 애플리케이션과 관련된 제 2 3D 그래픽 데이터를 처리하는 제 2 3D 그래픽 데이터 처리 단계; 및 상기 멀티 그래픽 가속장치가 상기 제 1 3D 그래픽 데이터를 수신하고, 상기 제 1 3D 그래픽 데이터 및 상기 제 2 3D 그래픽 데이터를 멀티 3D 그래픽 데이터로 오버레이 하는 멀티 3D 그래픽 데이터 처리 단계;를 수행하고, 상기 제 1 3D 그래픽 데이터 처리 단계에서 상기 애플리케이션 프로세서가 상기 제 1 애플리케이션의 구동에 따라 상기 제 1 애플리케이션의 3D 그래픽에 관한 데이터를 상기 제 1 3D 그래픽 데이터로 처리하는 단계; 상기 제 1 3D 그래픽 데이터를 저장하는 단계; 및 제어신호에 따라 상기 제 1 3D 그래픽 데이터를 상기 멀티 그래픽 가속장치로 전송하는 단계;를 수행하는 것을 특징으로 한다. A graphics acceleration method for displaying multiple 3D graphics with a single application processor, according to an embodiment of the present invention, includes: a first application driving step in which the application processor drives a first application stored in a memory; A first 3D graphic data processing step of the application processor processing first 3D graphic data associated with the first application; A second application driving step of the application processor driving the second application stored in the memory; A second 3D graphic data processing step of the multi graphics accelerator processing second 3D graphic data associated with the second application; And processing, by the multi-graphics accelerator, receiving the first 3D graphic data, and overlaying the first 3D graphic data and the second 3D graphic data with the multi 3D graphic data. Processing, by the application processor, data about 3D graphics of the first application into the first 3D graphics data according to the driving of the first application in a first 3D graphics data processing step; Storing the first 3D graphic data; And transmitting the first 3D graphic data to the multi-graphics accelerator according to a control signal.

삭제delete

본 발명의 다른 실시예에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 방법은, 상기 멀티 3D 그래픽 데이터 처리 단계에서 상기 멀티 그래픽 가속장치가, 수직 신호(VSYNC), 수평 신호(HSYNC), 데이터 인에이블 신호(DE) 및 클럭 신호(CLK)를 제어신호로써 상기 애플리케이션 프로세서로부터 수신하는 단계; 및 상기 수직 신호, 상기 수평 신호 및 상기 데이터 인에이블 신호에 따라 오버레이를 수행하는 단계;를 수행하는 것을 특징으로 한다. According to another aspect of the present invention, there is provided a graphics acceleration method for displaying multiple 3D graphics using a single application processor, wherein the multi-graphics acceleration device includes a vertical signal (VSYNC), a horizontal signal (HSYNC), Receiving a data enable signal DE and a clock signal CLK from the application processor as a control signal; And performing an overlay according to the vertical signal, the horizontal signal, and the data enable signal.

본 발명의 다른 실시예에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 방법은, 상기 멀티 3D 그래픽 데이터 처리 단계 이후에, 상기 멀티 3D 그래픽 데이터를 디스플레이어를 통해 디스플레이하는 디스플레이 단계;를 더 수행하는 것을 특징으로 한다..
According to another aspect of the present invention, there is provided a graphic acceleration method for displaying multiple 3D graphics using a single application processor, after the processing of the multiple 3D graphics data, a display step of displaying the multiple 3D graphics data through a display; Characterized by performing.

본 발명에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템 및 그 방법은, 단일 애플리케이션 프로세서에 멀티 3D 그래픽 가속장치를 추가함으로써, 속도의 저하 없이 하나의 애플리케이션 프로세서로 복수의 3D 그래픽을 디스플레이할 수 있는 효과를 제공한다. A graphics acceleration system and method for displaying multiple 3D graphics with a single application processor in accordance with the present invention, by adding multiple 3D graphics accelerators to a single application processor, display multiple 3D graphics with a single application processor without compromising speed. It provides an effect that can be done.

본 발명의 다른 실시예에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템 및 그 방법은, 하나의 디스플레이어에 복수의 3D 그래픽을 동시에 디스플레이함으로써, 모바일 기기에서 직관적이고 다양한 화면구성이 가능한 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이할 수 있는 효과를 제공한다. Graphic acceleration system and method for displaying multiple 3D graphics with a single application processor according to another embodiment of the present invention, by displaying a plurality of 3D graphics on one display at the same time, it is possible to intuitively and various screen configuration on a mobile device It provides the effect of displaying multiple 3D graphics with a single application processor.

본 발명의 다른 실시예에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템 및 그 방법은, 제 1 디스플레이 컨트롤러는 제 1 3D 그래픽 데이터를 제 2 디스플레이 컨트롤러로 직접 전송함으로써, 제 1 3D 그래픽 데이터와 제 2 3D 그래픽 데이터를 오버레이할 때 제 2 프레임 버퍼가 제 1 3D 그래픽 데이터를 WRITE 또는 READ 하지 않아도 되므로 성능 저하되지 않을 수 있는 효과를 제공한다.
According to another aspect of the present invention, there is provided a graphics acceleration system and method for displaying multiple 3D graphics with a single application processor, wherein the first display controller sends the first 3D graphics data directly to the second display controller, thereby providing the first 3D graphics. When overlaying the data and the second 3D graphic data, the second frame buffer does not have to write or read the first 3D graphic data, thereby providing an effect that may not degrade performance.

도 1은 종래 발명에 따른 단일 애플리케이션 프로세서로 단일 3D 그래픽을 디스플레이하는 그래픽 가속 시스템을 도시하는 시스템 구성도.
도 2는 본 발명의 실시예에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템을 도시하는 시스템 구성도.
도 3은 본 발명의 실시예에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템의 오버레이 타이밍도.
도 4는 본 발명의 실시예에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템의 오버레이 타이밍도.
도 5는 본 발명의 실시예에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템의 딜레이 설명도.
도 6은 본 발명의 실시예에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 방법을 도시하는 흐름도.
1 is a system diagram illustrating a graphics acceleration system for displaying a single 3D graphic with a single application processor in accordance with the prior art.
2 is a system diagram illustrating a graphics acceleration system for displaying multiple 3D graphics with a single application processor in accordance with an embodiment of the present invention.
3 is an overlay timing diagram of a graphics acceleration system displaying multiple 3D graphics with a single application processor in accordance with an embodiment of the invention.
4 is an overlay timing diagram of a graphics acceleration system displaying multiple 3D graphics with a single application processor in accordance with an embodiment of the invention.
5 is a diagram illustrating a delay of a graphics acceleration system for displaying multiple 3D graphics with a single application processor in accordance with an embodiment of the present invention.
6 is a flow diagram illustrating a graphics acceleration method for displaying multiple 3D graphics with a single application processor in accordance with an embodiment of the present invention.

첨부한 도면을 참조하여 본 발명의 실시예를 상세히 설명하면 다음과 같다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 2는 본 발명의 실시예에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템을 도시하는 구성도이다. 2 is a block diagram illustrating a graphics acceleration system for displaying multiple 3D graphics with a single application processor in accordance with an embodiment of the present invention.

도 2를 참조하면, 본 발명에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템은, 애플리케이션 프로세서(100), 멀티 그래픽 가속장치(200) 및 메모리(300)를 포함하여 구성될 수 있다.
Referring to FIG. 2, a graphic acceleration system displaying multiple 3D graphics with a single application processor according to the present invention may include an application processor 100, a multi graphics accelerator 200, and a memory 300. .

메모리(300)는 제 1 프레임 버퍼(310)을 포함하고, 제 1 애플리케이션(330) 및 제 2 애플리케이션(350)을 저장할 수 있다. The memory 300 may include a first frame buffer 310 and store the first application 330 and the second application 350.

제 1 애플리케이션(330) 및 제 2 애플리케이션(350)은 3D 그래픽을 포함하는 애플리케이션이다. 제 1 애플리케이션(330)과 관련된 3D 그래픽 데이터는 제 1 3D 그래픽 데이터라 하고, 제 2 애플리케이션(350)과 관련된 3D 그래픽 데이터는 제 2 3D 그래픽 데이터라 한다. First application 330 and second application 350 are applications that include 3D graphics. 3D graphic data associated with the first application 330 is referred to as first 3D graphic data, and 3D graphic data associated with the second application 350 is referred to as second 3D graphic data.

제 1 프레임 버퍼(310)는 제 1 애플리케이션(330)이 실행된 경우, 3D 그래픽과 관련되어 제 1 3D 그래픽 가속모듈(110)이 처리한 제 1 3D 그래픽 데이터를 저장하는 기능을 수행한다. 프레임 버퍼(310)는 래스터(raster)식 디스플레이에 화상신호를 출력하는 부분으로 리프레시메모리(refresh memory)라고 불리기도 한다. 프레임 버퍼는 화소표현으로 변환된 화면 데이터를 적어도 1화면분 가지고 있으며, 신호에 따라 메모리 내용을 비트열로서 출력한다. When the first application 330 is executed, the first frame buffer 310 stores the first 3D graphics data processed by the first 3D graphics acceleration module 110 in relation to the 3D graphics. The frame buffer 310 is a part for outputting an image signal to a raster display and may be called a refresh memory. The frame buffer has at least one screen of screen data converted into pixel representations, and outputs the memory contents as a bit string in accordance with the signal.

애플리케이션 프로세서(100)는 메모리(300)에 저장된 애플리케이션을 실행시키고, 3D 그래픽을 처리한다. 이를 위해 애플리케이션 프로세서(100)는 CPU(190), 메모리 인터페이스(130), 제 1 3D 그래픽 가속모듈(110), 제 1 디스플레이 컨트롤러(150) 및 멀티 그래픽 가속장치 인터페이스(170)를 포함하여 구성될 수 있다. 그리고 애플리케이션 프로세서(100)의 데이터는 시스템 버스(180)를 통해 이동할 수 있다. The application processor 100 executes an application stored in the memory 300 and processes 3D graphics. To this end, the application processor 100 may include a CPU 190, a memory interface 130, a first 3D graphics acceleration module 110, a first display controller 150, and a multi-graphics accelerator interface 170. Can be. The data of the application processor 100 may move through the system bus 180.

CPU(190)는 애플리케이션 프로세서(100)를 제어하는 기능을 수행한다. CPU(190)는 특히 휴대 단말기에서 사용되는 ARM core일 수 있다. 즉, 입력을 통해 CPU에 명령이 들어오면, CPU(190)는 메모리(300)에 저장된 제 1 애플리케이션(330)을 구동한다. The CPU 190 performs a function of controlling the application processor 100. The CPU 190 may in particular be an ARM core used in a portable terminal. That is, when a command enters the CPU through an input, the CPU 190 drives the first application 330 stored in the memory 300.

메모리 인터페이스(130)는 애플리케이션 프로세서(100)와 메모리(300) 간의 인터페이스를 수행한다. The memory interface 130 performs an interface between the application processor 100 and the memory 300.

데이터 버스(180)는 애플리케이션 프로세서(100)에서 데이터 전송로이다. 이러한 데이터 버스(180)는 예를 들어, ahb Bus 또는 AXI Bus일 수 있다.The data bus 180 is a data transmission path in the application processor 100. This data bus 180 may be, for example, an ahb Bus or an AXI Bus.

제 1 3D 그래픽 가속모듈(110)은 제 1 애플리케이션(330)이 실행될 경우, 제 1 애플리케이션의 3D 그래픽과 관련된 데이터를 제 1 3D 그래픽 데이터로 처리하는 기능을 수행한다. 이렇게 제 1 3D 그래픽 가속모듈(110)이 처리한 이러한 제 1 3D 그래픽 데이터는 제 1 프레임 버퍼(310)에 저장된다. 제 1 3D 그래픽 가속모듈(110)은 휴대폰, PMP, 네비게이션과 같은 임베디드 및 모바일 기기에서 그래픽을 처리하는 기능을 수행한다. 제 1 3D 그래픽 가속모듈(110)은 이동통신 단말기에 내장된 애플리케이션 프로세서에서 서비스되는 OpenGL/ES, 마이크로소프트의 DirectX 및 Direct3D 등을 지원할 수 있다. When the first application 330 is executed, the first 3D graphics acceleration module 110 performs a function of processing data related to 3D graphics of the first application as first 3D graphics data. The first 3D graphics data processed by the first 3D graphics acceleration module 110 is stored in the first frame buffer 310. The first 3D graphics acceleration module 110 performs a function of processing graphics in embedded and mobile devices such as mobile phones, PMPs, and navigation. The first 3D graphics acceleration module 110 may support OpenGL / ES, Microsoft's DirectX, Direct3D, and the like, which are serviced by an application processor embedded in a mobile communication terminal.

그래픽 가속모듈은 입체 화상 전용 처리 기능을 내장한 그래픽 표시용 보드이다. 현재 휴대 단말기 등에서 보통 표시하고 있는 그래픽은 2차원으로 3D 그래픽 가속모듈이 필수적인 것은 아니다. 그러나 게임에서는 3D를 이용한 그래픽이 증가되는 경향이고, 화상 데이터를 작성할 때 XY축을 기본으로 Z축을 추가, 처리하고 있다. 이와 같은 처리 과정을 거쳐 만든 3D 그래픽 데이터를 이제까지의 가속모듈이나 중앙 처리 장치(CPU)로 처리하면 화상의 움직임이 매우 늦기 때문에 3D 화상 전용 처리 기능을 가진 3D 그래픽 가속모듈이 등장했다. The graphics acceleration module is a graphic display board with a built-in stereoscopic image processing function. 3D graphics acceleration module is not essential in two-dimensional graphics currently displayed in portable terminals. However, in games, graphics using 3D tend to increase, and when creating image data, the Z axis is added and processed based on the XY axis. When the 3D graphics data generated through such processing is processed by the acceleration module or the central processing unit (CPU), the motion of the image is very slow. Therefore, a 3D graphics acceleration module having a 3D image dedicated processing function has emerged.

제 1 디스플레이 컨트롤러(150)는 제 1 프레임 버퍼(310)에 저장된 제 1 3D 그래픽 데이터(VIN)를 멀티 그래픽 가속장치(200)로 전송하는 기능을 수행한다. The first display controller 150 transmits the first 3D graphic data VIN stored in the first frame buffer 310 to the multi-graphics accelerator 200.

멀티 그래픽 가속장치 인터페이스(170)는 멀티 그래픽 가속장치(200)와 인터페이스를 수행한다. The multi graphics accelerator interface 170 interfaces with the multi graphics accelerator 200.

멀티 그래픽 가속장치(200)는 제 2 애플리케이션(350)의 3D 그래픽과 관련된 제 2 3D 그래픽 데이터를 처리하고, 제 1 3D 그래픽 데이터 및 제 2 3D 그래픽 데이터를 멀티 3D 그래픽 데이터로 오버레이하여 멀티 3D 그래픽 데이터가 디스플레이어(400)를 통해 디스플레이될 수 있도록 하는 기능을 수행한다. The multi-graphics accelerator 200 processes the second 3D graphics data associated with the 3D graphics of the second application 350, overlays the first 3D graphics data and the second 3D graphics data with the multi 3D graphics data, and multi- 3D graphics. It performs a function to allow data to be displayed via the display 400.

보다 구체적으로, 멀티 그래픽 가속장치(200)는 제 2 3D 그래픽 가속모듈(210), 제 2 프레임 버퍼(230) 및 제 2 디스플레이 컨트롤러(250)를 포함하여 구성될 수 있다. More specifically, the multi-graphics accelerator 200 may include a second 3D graphics acceleration module 210, a second frame buffer 230 and a second display controller 250.

제 2 3D 그래픽 가속모듈(210)은 제 2 애플리케이션(350)이 실행된 경우, 제 2 3D 그래픽 데이터를 처리하는 기능을 수행한다. 제 2 3D 그래픽 가속모듈(210)은 멀티 그래픽 가속장치 인터페이스(170)와 인터페이스를 수행하여 제 2 애플리케이션(350)의 실행에 따라 제 2 애플리케이션의 3D 그래픽과 관련된 데이터를 제 2 3D 그래픽 데이터로 처리하는 기능을 수행한다. When the second application 350 is executed, the second 3D graphic acceleration module 210 performs a function of processing the second 3D graphic data. The second 3D graphics acceleration module 210 interfaces with the multi-graphics accelerator interface 170 to process data related to 3D graphics of the second application as second 3D graphics data according to the execution of the second application 350. It performs the function.

제 2 프레임 버퍼(230)는 제 2 3D 그래픽 가속모듈(210)이 처리한 제 2 3D 그래픽 데이터를 저장하고, 제 2 디스플레이 컨트롤러(250)에 제 2 3D 그래픽 데이터를 제공하는 기능을 수행한다. The second frame buffer 230 stores the second 3D graphic data processed by the second 3D graphic acceleration module 210 and provides the second 3D graphic data to the second display controller 250.

제 2 디스플레이 컨트롤러(250)는 제 1 3D 그래픽 데이터 및 제 2 3D 그래픽 데이터를 오버레이하여 멀티 3D 그래픽 데이터로 생성하는 기능을 수행한다. 즉, 제 1 애플리케이션(330)이 실행된 경우, 제 1 3D 그래픽 가속모듈(110)에 의해 처리된 제 1 3D 그래픽 데이터는 제 1 프레임 버퍼(310)에 저장되었다가, 제 1 디스플레이 컨트롤러(150)에 의해 제 2 디스플레이 컨트롤러(250)로 전송된다. 그리고 제 2 애플리케이션(350)이 실행된 경우, 제 2 3D 그래픽 가속모듈(210)에 의해 처리된 제 2 3D 그래픽 데이터는 제 2 프레임 버퍼(230)에 저장되었다가, 제 2 디스플레이 컨트롤러(250)로 전송된다. 그러면, 제 2 디스플레이 컨트롤러(250)가 제 1 3D 그래픽 데이터와 제 2 3D 그래픽 데이터를 오버레이하여 멀티 3D 그래픽 데이터로 처리하여 디스플레이어(400)를 통해 디스플레이되도록 한다. The second display controller 250 performs a function of overlaying the first 3D graphic data and the second 3D graphic data to generate the multi 3D graphic data. That is, when the first application 330 is executed, the first 3D graphics data processed by the first 3D graphics acceleration module 110 is stored in the first frame buffer 310 and then the first display controller 150. ) To the second display controller 250. When the second application 350 is executed, the second 3D graphic data processed by the second 3D graphic acceleration module 210 is stored in the second frame buffer 230 and then the second display controller 250. Is sent to. Then, the second display controller 250 overlays the first 3D graphic data and the second 3D graphic data to process the multi 3D graphic data to be displayed on the display 400.

종래기술에 따라 두 개의 데이터를 오버레이하기 위해서는, 오버레이하는 데이터 간에 클럭이 정확하게 서로 일치하지 않으므로 우선 클럭을 일치시켜야 한다. 따라서 종래에는 오버레이하고자 하는 데이터(본 발명의 "제 1 3D 그래픽 데이터"에 해당)를 우선 메모리(본 발명의 "제 2 프레임 버퍼"에 해당)하였다가 출력 타이밍에 맞춰 다시 Read 하여야 한다. 그런데 이와 같이 동작할 경우, 오버레이하고자 하는 데이터를 계속해서 메모리에 Write 및 Read 해야하므로 메모리 bandwidth의 상당 부분을 차지하고, 이는 그래픽 가속모듈의 성능저하로 연결되어 문제가 된다. 본 발명은 이러한 문제를 해결하기 위해, 오버레이하고자 하는 데이터인 제 1 3D 그래픽 데이터의 클럭에 동기되도록 제 2 프레임 버퍼에 저장된 제 2 3D 그래픽 데이터를 출력하여, 오버레이하고자 하는 데이터를 메모리에 Write 및 Read 할 필요가 없으므로 그래픽 가속모듈의 성능이 저하되지 않도록 한다. In order to overlay the two data according to the prior art, the clocks do not coincide exactly with each other between the overlaying data, and therefore, the clocks must first be matched. Therefore, in the related art, data to be overlaid (corresponding to "first 3D graphic data" of the present invention) must first be read into memory (corresponding to "second frame buffer" of the present invention) and then read again according to output timing. However, in this case, since the data to be overlayed must be continuously written and read into the memory, it takes up a large part of the memory bandwidth, which is connected to the performance degradation of the graphics acceleration module, which becomes a problem. To solve this problem, the present invention outputs the second 3D graphic data stored in the second frame buffer to be synchronized with the clock of the first 3D graphic data, which is the data to be overlaid, and writes and reads the data to be overlaid in memory. There is no need to do this so that the performance of the graphics acceleration module is not degraded.

제 2 디스플레이 컨트롤러(250)는 알파블렌딩, 칼라마스킹, 클리핑, 트랜스패런시 중 어느 하나의 방법으로 제 1 3D 그래픽 데이터 및 제 2 3D 그래픽 데이터를 오버레이하여 멀티 3D 그래픽 데이터로 처리할 수 있다. The second display controller 250 may overlay the first 3D graphic data and the second 3D graphic data by using any one of alpha blending, color masking, clipping, and transparency to process the multi 3D graphic data.

제 1 3D 그래픽 데이터 및 제 2 3D 그래픽 데이터를 오버레이하기 위해, 제 2 디스플레이 컨트롤러(250)는 제어신호를 애플리케이션 프로세서(100)로부터 수신하는데, 도 3에 도시된 바와 같이 수직 신호(VSYNC), 수평 신호(HSYNC), 데이터 인에이블 신호(DE) 및 클럭 신호(CLK)일 수 있다. 제 2 디스플레이 컨트롤러(250)는 수직 신호, 수평 신호 및 데이터 인에이블 신호에 따라 오버레이를 수행할 수 있다. 수직신호(VSYNC) 및 수평신호(HSYNC)는 로우 레벨로 활성화될 수 있다. 도 3에는 수직신호(VSYNC) 및 수평신호(HSYNC)가 로우 레벨로 활성화되는 것으로 도시되어 있으나, 수직신호(VSYNC) 및 수평신호(HSYNC)가 하이 레벨로 활성화되는 것도 가능하다. In order to overlay the first 3D graphic data and the second 3D graphic data, the second display controller 250 receives a control signal from the application processor 100, as shown in FIG. 3, a vertical signal VSYNC, horizontally. The signal HSYNC, the data enable signal DE, and the clock signal CLK may be provided. The second display controller 250 may perform overlay according to the vertical signal, the horizontal signal, and the data enable signal. The vertical signal VSYNC and the horizontal signal HSYNC may be activated at a low level. In FIG. 3, the vertical signal VSYNC and the horizontal signal HSYNC are activated at a low level. However, the vertical signal VSYNC and the horizontal signal HSYNC may be activated at a high level.

제 1 3D 그래픽 데이터 및 제 2 3D 그래픽 데이터의 오버레이를 할 때에는 N개의 레이어(layer)로 오버레이 하면, 3+N-1 클럭(CLK)이 딜레이될 수 있다. 레이어(Layer)는 포토샵 등에서 이미지 작업을 하기 위한 것으로 마치 투명 필름과 같은 형태로 겹치거나 투명도를 조절하거나 스타일 등을 적용해 다양한 이미지를 구현하기 위해 사용하는 것인데, 도 5에 도시된 바와 같이 예를 들어 4개의 레이어로 오버레이 할 경우, 6클럭(CLK) 딜레이 될 수 있다. 즉, 데이터 인에이블 신호(DE)가 활성화되면 오버레이를 수행하는데, 우선 리타이밍을 수행하여 타이밍 불안정 요소를 해결한다(A). 리타이밍은, 데이터가 PAD를 통해 입력되므로 PAD 딜레이에 의한 타이밍 불안정을 해소하기 위해 한다. 이러한 리타이밍은 클럭(CLK)의 인버팅 클럭(inverting clock)으로 래치하고, 그 결과를 다시 클럭으로 래치함으로써 할 수 있는데, 클럭의 falling edge 부분이 가장 안정되기 때문에 인버팅 클럭(inverting clock)으로 래치할 수 있다. 리타이밍한 후에는 제 2 프레임 버퍼에 액세스하기 위해 read request를 발생하고(B), read request에 대한 valid data를 래치한다(C). 오버레이는 각 레이어 간에 단계별로 처리되는데, 하위 priority를 갖는 두 레이어 간에 첫 번째 오버레이를 수행하고(D), 첫 번째 오버레이 결과와 차상위 레이어 간에 두 번째 오버레이를 수행한다(E). 다음으로 이전 오버레이인 두 번째 오버레이 결과와 최상위 레이어 간에 세 번째 오버레이를 수행한다(F). 상기와 같은 오버레이를 수행하는 동안 (A) ~ (F)에 해당하는 클럭만큼 딜레이된다.When overlaying the first 3D graphic data and the second 3D graphic data, when overlaying with N layers, the 3 + N-1 clock CLK may be delayed. A layer is used to perform an image in Photoshop, etc., and is used to implement various images by overlapping, adjusting transparency, or applying a style in the form of a transparent film, as shown in FIG. For example, when overlaid with four layers, there may be a 6 clock delay (CLK). That is, overlay is performed when the data enable signal DE is activated. First, the timing instability is solved by retiming (A). Retiming is performed to eliminate timing instability caused by PAD delays because data is input through the PAD. This retiming can be done by latching to the inverting clock of the clock CLK and then latching the result back to the clock. The falling edge of the clock is the most stable and therefore the inverting clock. It can be latched. After retiming, a read request is generated to access the second frame buffer (B), and the valid data for the read request is latched (C). The overlay is processed step by step between each layer. The first overlay is performed between two layers having lower priority (D), and the second overlay is performed between the first overlay result and the next higher layer (E). Next, a third overlay is performed between the previous overlay, the second overlay result, and the top layer (F). While performing the overlay as described above, it is delayed by a clock corresponding to (A) to (F).

본 발명의 실시예에 따른 이러한 그래픽 가속 시스템은, RGB 인터페이스 모드에서 동작할 수 있다.
Such a graphic acceleration system according to an embodiment of the present invention may operate in an RGB interface mode.

도 6은 본 발명의 실시예에 따른 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 방법을 도시한다. 6 illustrates a graphics acceleration method for displaying multiple 3D graphics with a single application processor in accordance with an embodiment of the invention.

먼저, 애플리케이션 프로세서(100)가 메모리(300)에 저장된 제 1 애플리케이션(330)을 구동시키는 제 1 애플리케이션 구동 단계(S100)를 수행한다. First, the application processor 100 performs a first application driving step S100 of driving the first application 330 stored in the memory 300.

다음으로, 애플리케이션 프로세서(100)가 제 1 애플리케이션과 관련된 그래픽 데이터를 제 1 3D 그래픽 데이터로 처리하는 제 1 3D 그래픽 데이터 처리 단계(S200)를 수행한다. Next, the application processor 100 performs a first 3D graphic data processing step S200 of processing graphic data related to the first application as first 3D graphic data.

제 1 3D 그래픽 데이터 처리 단계(S200)는, 애플리케이션 프로세서(100)가 제 1 애플리케이션(330)의 구동에 따라 제 1 애플리케이션의 3D 그래픽에 관한 데이터를 제 1 3D 그래픽 데이터로 처리하는 단계, 제 1 3D 그래픽 데이터를 저장하는 단계 및 제어신호에 따라 제 1 3D 그래픽 데이터를 멀티 그래픽 가속장치(200)로 전송하는 단계를 수행하는 것을 특징으로 한다. The first 3D graphic data processing step (S200) may include processing, by the application processor 100, data about 3D graphics of the first application into first 3D graphic data according to driving of the first application 330. Storing the 3D graphic data and transmitting the first 3D graphic data to the multi-graphics accelerator 200 according to a control signal.

애플리케이션 프로세서(100)는 메모리(300)에 저장된 제 2 애플리케이션(350)을 구동시키는 제 2 애플리케이션 구동 단계(S300)를 수행할 수 있다. The application processor 100 may perform a second application driving step S300 for driving the second application 350 stored in the memory 300.

다음으로, 멀티 그래픽 가속장치(200)가 제 2 애플리케이션(350)과 관련된 제 2 3D 그래픽 데이터를 처리하는 제 2 3D 그래픽 데이터 처리 단계(S400)를 수행할 수 있다. Next, the multi-graphics accelerator 200 may perform a second 3D graphic data processing step S400 of processing second 3D graphic data related to the second application 350.

한편, 제 1 애플리케이션 구동 단계(S100) 및 제 2 애플리케이션 구동 단계(S300)는 반드시 상기의 순서에 한정되지 않으며, 동시에 수행될 수도 있다. Meanwhile, the first application driving step S100 and the second application driving step S300 are not necessarily limited to the above order and may be simultaneously performed.

다음으로 멀티 그래픽 가속장치(200)가 제 1 3D 그래픽 처리단계(S200)에서 처리된 제 1 3D 그래픽 데이터를 수신하고, 제 2 3D 그래픽 데이터와 제 2 3D 그래픽 처리단계(S400)에서 처리된 제 2 3D 그래픽 데이터를 오버레이하는 멀티 3D 그래픽 처리 단계(S500)를 수행한다. 멀티 3D 그래픽 데이터 처리 단계(S500)는 멀티 그래픽 가속장치(200)가 수직 신호(VSYNC), 수평 신호(HSYNC), 데이터 인에이블 신호(DE) 및 클럭 신호(CLK)를 제어신호로써 애플리케이션 프로세서(100)로부터 수신한다. 그리고 수직 신호, 수평 신호 및 데이터 인에이블 신호에 따라 제 1 3D 그래픽 데이터와 제 2 3D 그래픽 데이터를 오버레이한다. Next, the multi-graphics accelerator 200 receives the first 3D graphic data processed in the first 3D graphic processing step S200, and the second 3D graphic data and the second 3D graphic processing step S400. 2 performs a multi- 3D graphics processing step (S500) of overlaying the 3D graphics data. In the multi 3D graphic data processing step (S500), the multi graphic accelerator 200 may control a vertical signal VSYNC, a horizontal signal HSYNC, a data enable signal DE, and a clock signal CLK as control signals. 100). The first 3D graphic data and the second 3D graphic data are overlaid according to the vertical signal, the horizontal signal, and the data enable signal.

한편, 본 발명의 실시예에따른 그래픽 가속 방법은, 멀티 3D 그래픽 데이터 처리 단계(S500) 이후에, 멀티 그래픽 가속장치(200)가 오버레이한 멀티 3D 그래픽 데이터를 디스플레이어를 통해 디스플레이하는 디스플레이 단계(S600)를 더 수행할 수 있다. On the other hand, the graphic acceleration method according to an embodiment of the present invention, after the multi-3D graphics data processing step (S500), the display step of displaying the multi- 3D graphics data overlaid by the multi-graphics accelerator 200 through the display ( S600) may be further performed.

아울러 본 발명의 바람직한 실시예들은 예시의 목적을 위해 개시된 것이며, 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가 등이 가능할 것이며, 이러한 수정, 변경 등은 이하의 특허청구의 범위에 속하는 것으로 보아야 할 것이다.
In addition, preferred embodiments of the present invention are disclosed for the purpose of illustration, those skilled in the art will be able to various modifications, changes, additions, etc. within the spirit and scope of the present invention, such modifications, changes, etc. fall within the scope of the claims Should be seen.

100 : 애프리케이션 프로세서
110 : 제 1 3D 그래픽 가속모듈
130 : 메모리 인터페이스
150 : 제 1 디스플레이 컨트롤러
170 : 멀티 그래픽 가속장치 인터페이스
190 : CPU
200 : 멀티 그래픽 가속장치
210 : 제 2 3D 그래픽 가속모듈
230 : 제 2 프레임 버퍼
250 : 제 2 디스플레이 컨트롤러
300 : 메모리
310 : 제 1 프레임 버퍼
330 : 제 1 애플리케이션
350 : 제 2 애플리케이션
400 : 디스플레이어
100: application processor
110: first 3D graphics acceleration module
130: memory interface
150: first display controller
170: multi graphics accelerator interface
190 CPU
200: multi graphics accelerator
210: second 3D graphics acceleration module
230: second frame buffer
250: second display controller
300: memory
310: first frame buffer
330: First application
350: second application
400: Displayer

Claims (13)

제 1 애플리케이션이 실행될 경우, 상기 제 1 애플리케이션의 3D 그래픽에 관한 데이터를 제 1 3D 그래픽 데이터로 처리하는 제 1 3D 그래픽 가속모듈을 내장하는 애플리케이션 프로세서;
상기 제 1 3D 그래픽 데이터를 저장하는 제 1 프레임 버퍼, 상기 제 1 애플리케이션 및 제 2 애플리케이션을 포함하는 메모리; 및
상기 제 2 애플리케이션이 실행될 경우, 상기 제 2 애플리케이션의 3D 그래픽에 관한 데이터를 제 2 3D 그래픽 데이터로 처리하는 제 2 3D 그래픽 가속모듈을 포함하는 멀티 그래픽 가속장치;를 포함하여 구성되고,
상기 멀티 그래픽 가속장치는, 상기 제 1 3D 그래픽 데이터 및 상기 제 2 3D 그래픽 데이터를 오버레이하여 멀티 3D 그래픽 데이터를 디스플레이하고,
상기 애플리케이션 프로세서는, 상기 애플리케이션 프로세서를 제어하는 CPU; 상기 애플리케이션 프로세서에서 데이터 전송로인 데이터 버스; 상기 메모리와 인터페이스를 수행하는 메모리 인터페이스; 상기 멀티 그래픽 가속장치와 인터페이스를 수행하는 멀티 그래픽 가속장치 인터페이스; 및 상기 제 1 프레임 버퍼에 저장된 상기 제 1 3D 그래픽 데이터를 상기 멀티 그래픽 가속장치로 전송하는 제 1 디스플레이 컨트롤러;를 포함하여 구성되는 것을 특징으로 하는 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템.
An application processor incorporating a first 3D graphics acceleration module configured to process data relating to 3D graphics of the first application as first 3D graphics data when the first application is executed;
A memory including a first frame buffer for storing the first 3D graphics data, the first application and a second application; And
And a multi-graphics acceleration device including a second 3D graphics acceleration module configured to process data regarding 3D graphics of the second application as second 3D graphics data when the second application is executed.
The multi-graphics accelerator, displays the multi- 3D graphics data by overlaying the first 3D graphics data and the second 3D graphics data,
The application processor may include a CPU controlling the application processor; A data bus that is a data transmission path from the application processor; A memory interface that interfaces with the memory; A multi-graphics accelerator interface for performing an interface with the multi-graphics accelerator; And a first display controller configured to transmit the first 3D graphics data stored in the first frame buffer to the multi-graphics accelerator. 2. .
삭제delete 제 1 항에 있어서, 상기 멀티 그래픽 가속장치는,
상기 제 2 3D 그래픽 데이터를 저장하고, 상기 제 2 3D 그래픽 데이터를 제공하는 제 2 프레임 버퍼; 및
상기 제 1 3D 그래픽 데이터 및 상기 제 2 3D 그래픽 데이터를 오버레이하여 상기 멀티 3D 그래픽 데이터로 생성하는 제 2 디스플레이 컨트롤러;를 포함하여 구성되는 것을 특징으로 하는 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템.
The method of claim 1, wherein the multi-graphics accelerator,
A second frame buffer for storing the second 3D graphic data and providing the second 3D graphic data; And
And a second display controller configured to overlay the first 3D graphic data and the second 3D graphic data to generate the multi 3D graphic data, and to display the multi 3D graphic with a single application processor. system.
제 1 항에 있어서, 상기 제 2 디스플레이 컨트롤러는,
수직 신호(VSYNC), 수평 신호(HSYNC), 데이터 인에이블 신호(DE) 및 클럭 신호(CLK)를 제어신호로써 상기 애플리케이션 프로세서로부터 수신하고,
상기 수직 신호, 상기 수평 신호 및 상기 데이터 인에이블 신호에 따라 오버레이를 수행하는 것을 특징으로 하는 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템.
The method of claim 1, wherein the second display controller,
Receive a vertical signal (VSYNC), a horizontal signal (HSYNC), a data enable signal (DE) and a clock signal (CLK) as a control signal from the application processor,
And overlaying according to the vertical signal, the horizontal signal, and the data enable signal. A graphics acceleration system displaying multiple 3D graphics with a single application processor.
제 4 항에 있어서, 상기 멀티 3D 그래픽 데이터는,
상기 제 1 3D 그래픽 데이터 및 상기 제 2 3D 그래픽 데이터의 오버레이를 할 때, N 개의 레이어로 오버레이 하면 3+N-1 클럭(CLK) 딜레이되는 것을 특징으로 하는 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템.
The method of claim 4, wherein the multi 3D graphic data,
When overlaying the first 3D graphic data and the second 3D graphic data, overlaying with N layers results in a 3 + N-1 clock (CLK) delay. Graphics acceleration system.
제 1 항에 있어서, 상기 제 2 디스플레이 컨트롤러는,
알파블렌딩, 칼라마스킹, 클리핑, 트랜스패런시 중 어느 하나의 방법으로 상기 제 1 3D 그래픽 데이터 및 상기 제 2 3D 그래픽 데이터를 오버레이하여 멀티 3D 그래픽 데이터로 처리하는 것을 특징으로 하는 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템.
The method of claim 1, wherein the second display controller,
Multi 3D with a single application processor, characterized by overlaying the first 3D graphics data and the second 3D graphics data by any one of alpha blending, color masking, clipping, and transparency to process the multi 3D graphics data. Graphics acceleration system for displaying graphics.
제 1 항에 있어서, 상기 데이터 버스는,
ahb Bus 또는 AXI Bus 인 것을 특징으로 하는 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템.
The method of claim 1, wherein the data bus,
Graphics acceleration system for displaying multiple 3D graphics with a single application processor, characterized as ahb Bus or AXI Bus.
제 1 항에 있어서, 상기 CPU는,
ARM core인 것을 특징으로 하는 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템.
The method of claim 1, wherein the CPU,
A graphics acceleration system for displaying multiple 3D graphics with a single application processor, characterized by an ARM core.
제 1 항에 있어서, 상기 그래픽 가속 시스템은,
RGB 인터페이스 모드에서 동작하는 것을 특징으로 하는 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 시스템.
The method of claim 1, wherein the graphic acceleration system,
A graphics acceleration system for displaying multiple 3D graphics with a single application processor, operating in RGB interface mode.
애플리케이션 프로세서가 메모리에 저장된 제 1 애플리케이션을 구동시키는 제 1 애플리케이션 구동 단계;
상기 애플리케이션 프로세서가 상기 제 1 애플리케이션과 관련된 제 1 3D 그래픽 데이터를 처리하는 제 1 3D 그래픽 데이터 처리 단계;
상기 애플리케이션 프로세서가 상기 메모리에 저장된 상기 제 2 애플리케이션을 구동시키는 제 2 애플리케이션 구동 단계;
멀티 그래픽 가속장치가 상기 제 2 애플리케이션과 관련된 제 2 3D 그래픽 데이터를 처리하는 제 2 3D 그래픽 데이터 처리 단계; 및
상기 멀티 그래픽 가속장치가 상기 제 1 3D 그래픽 데이터를 수신하고, 상기 제 1 3D 그래픽 데이터 및 상기 제 2 3D 그래픽 데이터를 멀티 3D 그래픽 데이터로 오버레이 하는 멀티 3D 그래픽 데이터 처리 단계;를 수행하고,
상기 제 1 3D 그래픽 데이터 처리 단계는, 상기 애플리케이션 프로세서가 상기 제 1 애플리케이션의 구동에 따라 상기 제 1 애플리케이션의 3D 그래픽에 관한 데이터를 상기 제 1 3D 그래픽 데이터로 처리하는 단계; 상기 제 1 3D 그래픽 데이터를 저장하는 단계; 및 제어신호에 따라 상기 제 1 3D 그래픽 데이터를 상기 멀티 그래픽 가속장치로 전송하는 단계;를 수행하는 것을 특징으로 하는 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 방법.
A first application driving step of the application processor driving the first application stored in the memory;
A first 3D graphic data processing step of the application processor processing first 3D graphic data associated with the first application;
A second application driving step of the application processor driving the second application stored in the memory;
A second 3D graphic data processing step of the multi graphics accelerator processing second 3D graphic data associated with the second application; And
The multi-graphics accelerator receiving the first 3D graphic data, and multi-dimensional 3D graphic data processing step of overlaying the first 3D graphic data and the second 3D graphic data with multi 3D graphic data;
The processing of the first 3D graphics data may include: processing, by the application processor, data about 3D graphics of the first application into the first 3D graphics data according to driving of the first application; Storing the first 3D graphic data; And transmitting the first 3D graphics data to the multi-graphics accelerator in accordance with a control signal.
삭제delete 제 10 항에 있어서, 상기 멀티 3D 그래픽 데이터 처리 단계는,
상기 멀티 그래픽 가속장치가, 수직 신호(VSYNC), 수평 신호(HSYNC), 데이터 인에이블 신호(DE) 및 클럭 신호(CLK)를 제어신호로써 상기 애플리케이션 프로세서로부터 수신하는 단계; 및
상기 수직 신호, 상기 수평 신호 및 상기 데이터 인에이블 신호에 따라 오버레이를 수행하는 단계;를 수행하는 것을 특징으로 하는 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 방법.
The method of claim 10, wherein the processing of the multi 3D graphic data comprises:
Receiving, by the multi-graphics accelerator, a vertical signal (VSYNC), a horizontal signal (HSYNC), a data enable signal (DE) and a clock signal (CLK) from the application processor as a control signal; And
And performing an overlay according to the vertical signal, the horizontal signal, and the data enable signal. 2.
제 10 항에 있어서, 상기 멀티 3D 그래픽 데이터 처리 단계 이후에,
상기 멀티 3D 그래픽 데이터를 디스플레이어를 통해 디스플레이하는 디스플레이 단계;를 더 수행하는 것을 특징으로 하는 단일 애플리케이션 프로세서로 멀티 3D 그래픽을 디스플레이하는 그래픽 가속 방법.
The method of claim 10, wherein after the multi-3D graphic data processing step,
And displaying the multi 3D graphic data through a display. The method of claim 2, further comprising displaying the multi 3D graphic data with a single application processor.
KR1020100015264A 2010-02-19 2010-02-19 Graphic acceleration system for displaying multi 3d graphic using single application processor and method thereof KR100978814B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100015264A KR100978814B1 (en) 2010-02-19 2010-02-19 Graphic acceleration system for displaying multi 3d graphic using single application processor and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100015264A KR100978814B1 (en) 2010-02-19 2010-02-19 Graphic acceleration system for displaying multi 3d graphic using single application processor and method thereof

Publications (1)

Publication Number Publication Date
KR100978814B1 true KR100978814B1 (en) 2010-08-30

Family

ID=42760178

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100015264A KR100978814B1 (en) 2010-02-19 2010-02-19 Graphic acceleration system for displaying multi 3d graphic using single application processor and method thereof

Country Status (1)

Country Link
KR (1) KR100978814B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015023057A1 (en) * 2013-08-12 2015-02-19 Samsung Electronics Co., Ltd. Graphics processing apparatus and graphics processing method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000259145A (en) * 1999-03-08 2000-09-22 Nec Corp Graphic accelerator
JP2008009895A (en) * 2006-06-30 2008-01-17 Toyota Infotechnology Center Co Ltd Image generation device and image generation method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000259145A (en) * 1999-03-08 2000-09-22 Nec Corp Graphic accelerator
JP2008009895A (en) * 2006-06-30 2008-01-17 Toyota Infotechnology Center Co Ltd Image generation device and image generation method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015023057A1 (en) * 2013-08-12 2015-02-19 Samsung Electronics Co., Ltd. Graphics processing apparatus and graphics processing method
US9865075B2 (en) 2013-08-12 2018-01-09 Samsung Electronics Co., Ltd. Graphics processing apparatus and graphics processing method

Similar Documents

Publication Publication Date Title
US7616207B1 (en) Graphics processing system including at least three bus devices
CN106128357B (en) Display driver and method of driving display panel
Stoll et al. Lightning-2: A high-performance display subsystem for PC clusters
EP3134804B1 (en) Multiple display pipelines driving a divided display
JP5755333B2 (en) Technology to control display operation
CN104503950A (en) OpenGL (open graphic library) API (application program interface)-oriented graphic processor
US7982741B2 (en) Shared graphics infrastructure
KR20160130629A (en) Apparatus and Method of rendering for binocular disparity image
US6157393A (en) Apparatus and method of directing graphical data to a display device
US11037271B2 (en) Dynamic rendering for foveated rendering
US11200019B2 (en) Bypassing desktop composition
KR102155479B1 (en) Semiconductor device
KR102437567B1 (en) Method of application processor and display system
US8447035B2 (en) Contract based memory management for isochronous streams
US20140292617A1 (en) System, method, and computer program product for reducing image artifacts on multiple displays
KR100978814B1 (en) Graphic acceleration system for displaying multi 3d graphic using single application processor and method thereof
US10504278B1 (en) Blending neighboring bins
CN114930446A (en) Method and apparatus for partial display of frame buffer
US20190108814A1 (en) Method for improving system performance, device for improving system performance, and display apparatus
CN111045623B (en) Method for processing graphics commands in multi-GPU splicing environment
CN113728622A (en) Method and device for wirelessly transmitting image, storage medium and electronic equipment
CN115223516B (en) Graphics rendering and LCD driving integrated chip and related method and device
US20110001750A1 (en) Display apparatus and graphic display method
WO2023141917A1 (en) Sequential flexible display shape resolution
KR20180048087A (en) Multi-window display method based on virtualization

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated 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: 20130813

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee