WO2016178446A1 - Graphic processing device, cross driver control module included therein and control method thereof - Google Patents

Graphic processing device, cross driver control module included therein and control method thereof Download PDF

Info

Publication number
WO2016178446A1
WO2016178446A1 PCT/KR2015/004565 KR2015004565W WO2016178446A1 WO 2016178446 A1 WO2016178446 A1 WO 2016178446A1 KR 2015004565 W KR2015004565 W KR 2015004565W WO 2016178446 A1 WO2016178446 A1 WO 2016178446A1
Authority
WO
WIPO (PCT)
Prior art keywords
driver
vector
hardware
software
graphics
Prior art date
Application number
PCT/KR2015/004565
Other languages
French (fr)
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 PCT/KR2015/004565 priority Critical patent/WO2016178446A1/en
Publication of WO2016178446A1 publication Critical patent/WO2016178446A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing

Definitions

  • the present invention relates to a graphics processing apparatus, a cross driver control module and a control method included therein, a recording medium on which a program for executing the control method is recorded, and an application stored in the medium in combination with hardware to execute the control method.
  • the cross-driver control module for providing developers with an integrated interface related to graphics processing, a control method thereof, a recording medium having recorded thereon a program for executing the control method, combined with hardware An application stored in a medium for executing a control method, and a graphics processing device including such a cross-driver control module.
  • the graphics processing apparatus refers to a device that performs and displays graphics processing requested by predetermined software.
  • the graphics processing apparatus includes not only a personal computer but also a mobile communication terminal such as a mobile phone.
  • vector graphics rendering is often required in processing games, photo editing, and the like, where vector graphics are a concept that is opposed to raster (bitmap) graphics, and the raster graphics are imaged by the position and color information of each pixel on the screen.
  • vector graphics refers to a method of expressing information about the shape and color of an image by a modal command.
  • the vector graphic method Compared with the raster graphic method, the vector graphic method has a small file size and no change in image quality when the screen is enlarged, but has a disadvantage in that the processing speed is slow due to operations for graphic processing.
  • all applications stored in the graphics processing apparatus include a function for automatically distinguishing between a graphics processing apparatus having a separate module for vector graphics rendering and a graphics processing apparatus that processes vector graphics rendering in software.
  • Each application implements duplicated functions, which increases the size of each application and causes waste of memory.
  • the present invention has been made to solve the above-mentioned conventional problems, and an object thereof is to provide a graphic processing apparatus equipped with a separate module for rendering vector graphics and a graphic processing apparatus for software processing vector graphics rendering.
  • Cross-driver control module and its control method a recording medium having recorded thereon a program for executing the control method, and an application stored in the medium for executing the control method in combination with hardware
  • a graphics processing device including a cross driver control module.
  • a graphic processing apparatus includes at least one of a hardware graphics processing unit for processing vector graphics rendering in hardware and a software graphics processing unit for processing vector graphics rendering in software;
  • a cross-driver control module having a hardware vector acceleration driver controlling the hardware graphics processor, a software vector driver controlling the software graphics processor, and an integrated upper interface for use of the hardware vector acceleration driver and the software vector driver;
  • the cross driver control module selects any one of the hardware vector acceleration driver and the software vector driver according to a priority using a predetermined algorithm when detecting the vector graphics rendering processing request, and selecting the selected driver. It is characterized by performing a vector graphics rendering process by operating a driver.
  • the cross driver control module may include: a hardware vector acceleration driver configured to control the hardware graphic processor to perform vector graphic rendering; A software vector driver which controls the software graphics processor to perform vector graphics rendering processing; It provides an integrated upper interface for the use of the hardware vector acceleration driver and the software vector driver, when detecting the vector graphics rendering process request, the hardware vector acceleration driver and the software vector according to the priority using a predetermined algorithm And an integrated API (Application Programming Interface) control unit for selecting one of the drivers and controlling the selected driver to perform vector graphics rendering.
  • a hardware vector acceleration driver configured to control the hardware graphic processor to perform vector graphic rendering
  • a software vector driver which controls the software graphics processor to perform vector graphics rendering processing
  • It provides an integrated upper interface for the use of the hardware vector acceleration driver and the software vector driver, when detecting the vector graphics rendering process request, the hardware vector acceleration driver and the software vector according to the priority using a predetermined algorithm
  • an integrated API Application Programming Interface
  • the control method of the cross driver control module may include a hardware vector acceleration driver for controlling the hardware graphic processor, a software vector driver for controlling the software graphic processor, and an integration for use of the hardware vector acceleration driver and the software vector driver.
  • the hardware vector acceleration driver and the software vector decode according to priorities using a preset algorithm. The step of selecting any one of the drivers of the driver and; And operating the selected driver to perform vector graphics rendering process.
  • FIG. 1 is a functional block diagram of a graphics processing apparatus according to an embodiment of the present invention.
  • FIG. 2 is a functional block diagram of the cross driver control module of FIG.
  • FIG. 3 is a control flowchart of a graphic processing apparatus according to an embodiment of the present invention.
  • each embodiment according to the present invention is only one example to help understanding of the present invention, and the present invention is not limited to these embodiments.
  • the present invention may be composed of a combination of at least one or more of individual configurations, individual functions, or individual steps included in each embodiment.
  • the graphic processing apparatus 100 is a device for driving a specific application according to a user's request and performing screen processing according to the operation of the application.
  • the computer smart phone, electronic game machine, Advertising billboards and the like.
  • the graphic processing apparatus 100 may include at least one processing unit among an application execution unit 120, a cross driver control module 110, a hardware graphics processing unit 130, and a software graphics processing unit 140. It may be configured to include a display unit 150.
  • the display unit 150 displays text, an image, a video, etc. according to graphic processing, and may include, for example, an LCD (Liquid Crystal Display) with low power consumption.
  • LCD Liquid Crystal Display
  • the application executor 120 executes a predetermined application included in the graphic processing apparatus 100, and may execute, for example, an online game, display a map image, or perform photo editing.
  • the hardware graphic processor 130 processes vector graphics rendering in hardware and may include, for example, a GPU (Graphic Processing Unit).
  • GPU Graphic Processing Unit
  • the software graphic processor 140 processes vector graphics rendering in software, and may include, for example, a central processing unit (CPU).
  • CPU central processing unit
  • the CPU is an essential configuration involved in performing most of the functions of the graphic processing apparatus 100.
  • the CPU is distinguished from the GPU only by limited functions related to the vector graphics rendering process.
  • performing the vector graphics rendering process using the GPU is functionally referred to as the hardware graphics processing unit 130, and performing the vector graphics rendering process using the CPU is functionally the software graphic processing unit 140. It is called.
  • the graphic processing apparatus 100 may include both the hardware graphic processing unit 130 and the software graphic processing unit 140, or may include only one processing unit among them. Is essential, the graphics processing apparatus 100 may be configured to include only the software graphics processor 140 or both the software graphics processor 140 and the hardware graphics processor 130.
  • the cross driver control module 110 provides an integrated application programming interface (API) related to driver processing to the application execution unit 120, and at the request of the execution unit of the application, the hardware graphic processing unit 130 and the software graphic processing unit 140.
  • API application programming interface
  • the functional block of the cross driver control module 110 is as shown in FIG. 2.
  • the cross driver control module 110 may include an integrated API control unit 111, a hardware vector acceleration driver 112, and a software vector driver 113.
  • the hardware vector acceleration driver 112 is a driver that controls the hardware graphics processor 130 to perform vector graphics rendering
  • the software vector driver 113 controls the software graphics processor 140 to perform vector graphics rendering. Is a driver.
  • the hardware vector acceleration driver 112 may be configured to include control codes or control operations that may be executed on the GPU, and the software vector driver 113 may include control codes or control operations that may be executed on the CPU. Can be configured.
  • the integrated application programming interface (API) controller provides an integrated upper interface for the use of the hardware vector acceleration driver 112 and the software vector driver 113, where the upper interface is accessible from the above-described application execution unit 120. Means a software connection point.
  • API application programming interface
  • each application includes an actual configuration of the graphics processing apparatus 100, that is, any configuration of the hardware graphics processing unit 130 and the software graphics processing unit 140. Regardless of whether or not they are sent, the same control commands for graphics processing can be sent to the integration API.
  • any of the hardware vector acceleration driver 112 and the software vector driver 113 according to the priority using a preset algorithm. Select one driver.
  • the integrated API control unit 111 may select a software vector driver 113 that controls the software graphic processing unit 140.
  • the integrated API controller 111 controls the hardware vector processor 130 to control the hardware graphics processor 130.
  • 112 can be selected as a driver for processing vector graphics.
  • the integrated API control unit 111 may include the hardware vector acceleration driver 112 and the software vector driver.
  • a driver for reducing the execution time of the vector graphic rendering process requested by the application executing unit 120 may be selected among the 113.
  • the integrated API control unit 111 may select a driver that can process the requested vector graphic rendering process more quickly.
  • the integrated API control unit 111 may reduce the execution time of the requested vector graphic rendering process in consideration of the average processing speed and processing load of the hardware graphic processing unit 130 and the average processing speed and processing load of the software graphic processing unit 140. You can select a driver.
  • the driver 112 may be selected as a driver for the vector graphics rendering process.
  • the integrated API controller 111 may perform a software vector driver (when the amount of graphics currently processed by the hardware graphics processor 130 exceeds a preset value). 113 may be selected as a driver for the vector graphics rendering process.
  • the average processing speed of each processing unit may be a predetermined constant value, or may be a value that is accumulated and dynamically calculated at every processing.
  • Each function of the integrated API control unit 111 described above may correspond to the above-described algorithm.
  • This driver selection may be made when the first cross driver control module 110 is installed.
  • the integrated API control unit 111 controls the selected driver to perform vector graphics rendering.
  • the integrated API control unit 111 selects the software vector driver 113
  • the software vector driver 113 is operated to perform the vector graphics rendering process through the software graphic processing unit 140, and the hardware vector acceleration driver is performed. If 112 is selected, the hardware vector acceleration driver 112 is operated so that the vector graphic rendering process is performed through the hardware graphic processor 130.
  • FIG. 3 is a control flowchart of the graphic processing apparatus 100 according to an embodiment of the present invention.
  • the graphic processing apparatus 100 initializes the cross driver control module 110 at the time of graphic processing, the time of turning on the power, or the time of installing a specific application or driver (step S1).
  • the driver is selected according to the user's selection or the decision of the cross driver control module 110 (step S3).
  • the graphics processing apparatus 100 may select a driver for processing the corresponding graphics. For example, when the GPU is provided, the graphics processing apparatus 100 selects the hardware vector acceleration driver 112. The software vector driver 113 can be selected.
  • step S5 When the hardware vector acceleration driver 112 is selected, the hardware vector acceleration driver 112 is initialized (step S5).
  • the software vector driver 113 is selected, the software vector driver 113 is initialized (step S7. ).
  • step S9 If a graphic processing request by an application or the like is detected (step S9), and the previously selected driver is a hardware vector acceleration driver 112, the vector graphics rendering process is performed using the hardware vector acceleration driver 112 (step S13). Output to the screen (step S17), and if the previously selected driver is the software vector driver 113, the vector graphics rendering process is performed using the software vector driver 113 (step S15) and output to the screen (step S15). S17).
  • the process of performing each of the above-described embodiments can be performed by a program or an application stored in a predetermined recording medium (for example, computer readable).
  • the recording medium includes both an electronic recording medium such as a random access memory (RAM), a magnetic recording medium such as a hard disk, an optical recording medium such as a compact disk (CD), and the like.
  • the program stored in the recording medium may be executed on hardware such as a computer or a smartphone to perform the above-described embodiments.
  • at least one of the cross-driver control module and the functional block of the graphic processing apparatus according to the present invention described above may be implemented by such a program or application.
  • this invention is not limited to the above-mentioned specific Example, It can implement in a various deformation
  • a developer who develops an application for graphic processing may implement a consistent graphic processing function without checking whether a hardware graphic processor is provided in the graphic processing apparatus on which the application is to be executed.
  • the cross-driver control module when the cross-driver control module is provided in each graphics processing apparatus as in the present invention, it is not necessary to implement a function for determining whether or not a hardware graphics processor is implemented in the graphics processing apparatus for each application, the application is easy to implement, Application size can also be reduced.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)

Abstract

The present invention provides a graphic processing device including: at least any one of a hardware graphic processing unit and a software graphic processing unit; a hardware vector acceleration driver for controlling the hardware graphic processing unit; a software vector driver for controlling the software graphic processing unit; and a cross driver control module provided with an integrated upper interface, wherein, when sensing a vector graphic rendering processing request, the cross driver control module selects any one driver among the hardware vector acceleration driver and the software vector driver according to a priority using a preset algorithm, and executes vector graphic rendering processing by operating the selected driver.

Description

그래픽 처리 장치와 이에 포함되는 크로스 드라이버 제어 모듈 및 그 제어방법Graphic processing device, cross driver control module and control method thereof
본 발명은 그래픽 처리 장치와, 이에 포함되는 크로스 드라이버 제어 모듈 및 그 제어방법과, 그 제어방법을 실행하기 위한 프로그램을 기록한 기록 매체와, 하드웨어와 결합되어 그 제어방법을 실행시키기 위하여 매체에 저장된 애플리케이션에 관한 것으로, 보다 상세하게는 개발자들에게 그래픽 처리와 관련된 통합적인 인터페이스를 제공하는 크로스 드라이버 제어 모듈 및 그 제어방법과, 그 제어방법을 실행하기 위한 프로그램을 기록한 기록 매체와, 하드웨어와 결합되어 그 제어방법을 실행시키기 위하여 매체에 저장된 애플리케이션과, 이러한 크로스 드라이버 제어 모듈을 포함하는 그래픽 처리 장치에 관한 것이다.The present invention relates to a graphics processing apparatus, a cross driver control module and a control method included therein, a recording medium on which a program for executing the control method is recorded, and an application stored in the medium in combination with hardware to execute the control method. In more detail, the cross-driver control module for providing developers with an integrated interface related to graphics processing, a control method thereof, a recording medium having recorded thereon a program for executing the control method, combined with hardware An application stored in a medium for executing a control method, and a graphics processing device including such a cross-driver control module.
그래픽 처리 장치는 소정의 소프트웨어 등에 의해 요청되는 그래픽 처리를 수행하여 표시하는 장치를 일컫는데, 예를 들어 그래픽 처리 장치에는 개인용 컴퓨터는 물론이고, 휴대폰과 같은 이동통신 단말기도 포함된다.The graphics processing apparatus refers to a device that performs and displays graphics processing requested by predetermined software. For example, the graphics processing apparatus includes not only a personal computer but also a mobile communication terminal such as a mobile phone.
최근 게임, 사진 편집 등을 처리함에 있어서 벡터 그래픽 렌더링이 필요한 경우가 빈번한데, 여기서 벡터 그래픽은 래스터(비트맵) 그래픽과 상대되는 개념으로서, 래스터 그래픽이 화면의 각 픽셀들의 위치와 색상 정보로 이미지를 표현하는 것에 반해, 벡터 그래픽은 이미지의 모양 및 색에 대한 정보를 수식형태의 명령어로 표현하는 방식을 의미한다.In recent years, vector graphics rendering is often required in processing games, photo editing, and the like, where vector graphics are a concept that is opposed to raster (bitmap) graphics, and the raster graphics are imaged by the position and color information of each pixel on the screen. In contrast to expressing a vector, vector graphics refers to a method of expressing information about the shape and color of an image by a modal command.
래스터 그래픽 방식과 비교할 때 벡터 그래픽 방식이 파일의 크기가 작고, 화면 확대시 화질의 변화가 없다는 장점이 있지만, 그래픽 처리를 위한 연산으로 인해 처리 속도가 느리다는 단점이 있다.Compared with the raster graphic method, the vector graphic method has a small file size and no change in image quality when the screen is enlarged, but has a disadvantage in that the processing speed is slow due to operations for graphic processing.
이를 위해 하드웨어적으로 벡터 그래픽 렌더링을 처리하는 별도의 모듈이 구비된 그래픽 처리 장치가 제시된 바 있다.To this end, a graphic processing apparatus having a separate module for processing vector graphics rendering in hardware has been proposed.
그런데 그래픽 처리가 필요한 어플리케이션 등의 개발자 입장에서는 벡터 그래픽 렌더링을 위한 별도의 모듈이 구비된 그래픽 처리 장치와 벡터 그래픽 렌더링을 소프트웨어적으로 처리하는 그래픽 처리 장치를 위한 별도로 프로그램을 개발해야 하는 불편이 있다.However, a developer, such as an application requiring graphics processing, is inconvenient to develop a separate program for a graphics processing apparatus having a separate module for rendering vector graphics and a graphics processing apparatus for processing vector graphics rendering in software.
그렇다고 그래픽 처리 장치에 저장되는 모든 어플리케이션이 벡터 그래픽 렌더링을 위한 별도의 모듈이 구비된 그래픽 처리 장치와 벡터 그래픽 렌더링을 소프트웨어적으로 처리하는 그래픽 처리 장치를 자동으로 구분하여 처리하도록 하는 기능을 포함하는 것은 중복된 기능들을 각 어플리케이션이 구현하는 것으로서, 각 어플리케이션의 크기를 크게 함과 아울러 메모리 등의 낭비를 초래하는 것이다.However, all applications stored in the graphics processing apparatus include a function for automatically distinguishing between a graphics processing apparatus having a separate module for vector graphics rendering and a graphics processing apparatus that processes vector graphics rendering in software. Each application implements duplicated functions, which increases the size of each application and causes waste of memory.
본 발명은 상기한 종래의 문제점을 해결하기 위해 안출된 것으로서, 그 목적은 개발자들로 하여금 벡터 그래픽 렌더링을 위한 별도의 모듈이 구비된 그래픽 처리 장치와 벡터 그래픽 렌더링을 소프트웨어적으로 처리하는 그래픽 처리 장치를 구별하지 않고 일관된 프로그램 개발이 가능하도록 하는 크로스 드라이버 제어 모듈 및 그 제어방법과, 그 제어방법을 실행하기 위한 프로그램을 기록한 기록 매체와, 하드웨어와 결합되어 그 제어방법을 실행시키기 위하여 매체에 저장된 애플리케이션과 크로스 드라이버 제어 모듈을 포함하는 그래픽 처리 장치를 제공하는 것이다. SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned conventional problems, and an object thereof is to provide a graphic processing apparatus equipped with a separate module for rendering vector graphics and a graphic processing apparatus for software processing vector graphics rendering. Cross-driver control module and its control method, a recording medium having recorded thereon a program for executing the control method, and an application stored in the medium for executing the control method in combination with hardware And a graphics processing device including a cross driver control module.
상기한 목적을 달성하기 위해 본 발명에 따른 그래픽 처리 장치는, 하드웨어적으로 벡터 그래픽 렌더링을 처리하는 하드웨어 그래픽 처리부와 소트프웨어적으로 벡터 그래픽 렌더링을 처리하는 소프트웨어 그래픽 처리부 중 적어도 어느 하나와; 상기 하드웨어 그래픽 처리부를 제어하는 하드웨어 벡터 가속 드라이버, 상기 소프트웨어 그래픽 처리부를 제어하는 소프트웨어 벡터 드라이버와, 상기 하드웨어 벡터 가속 드라이버와 상기 소프트웨어 벡터 드라이버의 이용을 위한 통합적인 상위 인터페이스를 구비한 크로스 드라이버 제어 모듈을 포함하여 구성되고, 상기 크로스 드라이버 제어 모듈은 벡터 그래픽 렌더링 처리 요청을 감지한 경우 기 설정된 알고리즘을 이용한 우선순위에 따라 상기 하드웨어 벡터 가속 드라이버와 상기 소프트웨어 벡터 드라이버 중 어느 하나의 드라이버를 선정하고, 그 선정한 드라이버를 동작시켜 벡터 그래픽 렌더링 처리를 수행하는 것을 특징으로 한다.In order to achieve the above object, a graphic processing apparatus according to the present invention includes at least one of a hardware graphics processing unit for processing vector graphics rendering in hardware and a software graphics processing unit for processing vector graphics rendering in software; A cross-driver control module having a hardware vector acceleration driver controlling the hardware graphics processor, a software vector driver controlling the software graphics processor, and an integrated upper interface for use of the hardware vector acceleration driver and the software vector driver; And the cross driver control module selects any one of the hardware vector acceleration driver and the software vector driver according to a priority using a predetermined algorithm when detecting the vector graphics rendering processing request, and selecting the selected driver. It is characterized by performing a vector graphics rendering process by operating a driver.
또, 상기한 목적을 달성하기 위해 본 발명에 따른 하드웨어적으로 벡터 그래픽 렌더링을 처리하는 하드웨어 그래픽 처리부와 소트프웨어적으로 벡터 그래픽 렌더링을 처리하는 소프트웨어 그래픽 처리부 중 적어도 어느 하나를 구비한 그래픽 처리 장치에 포함되는 크로스 드라이버 제어 모듈은, 상기 하드웨어 그래픽 처리부를 제어하여 벡터 그래픽 렌더링 처리를 수행하는 하드웨어 백터 가속 드라이버와; 상기 소프트웨어 그래픽 처리부를 제어하여 벡터 그래픽 렌더링 처리를 수행하는 소프트웨어 벡터 드라이버와; 상기 하드웨어 벡터 가속 드라이버와 상기 소프트웨어 벡터 드라이버의 이용을 위한 통합적인 상위 인터페이스를 제공하고, 상기 벡터 그래픽 렌더링 처리 요청을 감지한 경우 기 설정된 알고리즘을 이용한 우선순위에 따라 상기 하드웨어 벡터 가속 드라이버와 상기 소프트웨어 벡터 드라이버 중 어느 하나의 드라이버를 선정하고, 그 선정한 드라이버를 동작시켜 벡터 그래픽 렌더링 처리를 수행하도록 제어하는 통합 API(Application Programming Interface) 제어부를 포함하여 구성된다.In addition, in order to achieve the above object is included in the graphics processing apparatus having at least one of a hardware graphics processing unit for processing vector graphics rendering in hardware and a software graphics processing unit for processing vector graphics rendering in software according to the present invention. The cross driver control module may include: a hardware vector acceleration driver configured to control the hardware graphic processor to perform vector graphic rendering; A software vector driver which controls the software graphics processor to perform vector graphics rendering processing; It provides an integrated upper interface for the use of the hardware vector acceleration driver and the software vector driver, when detecting the vector graphics rendering process request, the hardware vector acceleration driver and the software vector according to the priority using a predetermined algorithm And an integrated API (Application Programming Interface) control unit for selecting one of the drivers and controlling the selected driver to perform vector graphics rendering.
또, 상기한 목적을 달성하기 위해 본 발명에 따른 하드웨어적으로 벡터 그래픽 렌더링을 처리하는 하드웨어 그래픽 처리부와 소트프웨어적으로 벡터 그래픽 렌더링을 처리하는 소프트웨어 그래픽 처리부 중 적어도 어느 하나를 구비한 그래픽 처리 장치에 포함되는 크로스 드라이버 제어 모듈의 제어방법은, 상기 하드웨어 그래픽 처리부를 제어하는 하드웨어 벡터 가속 드라이버와, 상기 소프트웨어 그래픽 처리부를 제어하는 소프트웨어 벡터 드라이버와, 상기 하드웨어 벡터 가속 드라이버와 상기 소프트웨어 벡터 드라이버의 이용을 위한 통합적인 상위 인터페이스를 구비한 상태에서, 상기 벡터 그래픽 렌더링 처리 요청을 감지한 경우 기 설정된 알고리즘을 이용한 우선순위에 따라 상기 하드웨어 벡터 가속 드라이버와 상기 소프트웨어 벡터 드라이버 중 어느 하나의 드라이버를 선정하는 단계와; 상기 선정된 드라이버를 동작시켜 벡터 그래픽 렌더링 처리를 수행하는 단계를 포함하여 이루어진다.In addition, in order to achieve the above object is included in the graphics processing apparatus having at least one of a hardware graphics processing unit for processing vector graphics rendering in hardware and a software graphics processing unit for processing vector graphics rendering in software according to the present invention. The control method of the cross driver control module may include a hardware vector acceleration driver for controlling the hardware graphic processor, a software vector driver for controlling the software graphic processor, and an integration for use of the hardware vector acceleration driver and the software vector driver. When the vector graphic rendering processing request is detected in a state where the upper level interface is provided, the hardware vector acceleration driver and the software vector decode according to priorities using a preset algorithm. The step of selecting any one of the drivers of the driver and; And operating the selected driver to perform vector graphics rendering process.
도 1은 본 발명의 일 실시예에 따른 그래픽 처리 장치의 기능 블록도이고,1 is a functional block diagram of a graphics processing apparatus according to an embodiment of the present invention;
도 2는 도 1의 크로스 드라이버 제어 모듈의 기능 블록도이고,2 is a functional block diagram of the cross driver control module of FIG.
도 3은 본 발명의 일 실시예에 따른 그래픽 처리 장치의 제어흐름도이다.3 is a control flowchart of a graphic processing apparatus according to an embodiment of the present invention.
이하에서는 첨부도면을 참조하여 본 발명에 대해 상세히 설명한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.
이하 본 발명에 따른 각 실시예는 본 발명의 이해를 돕기 위한 하나의 예에 불과하고, 본 발명이 이러한 실시예에 한정되는 것은 아니다. 특히 본 발명은 각 실시예에 포함되는 개별 구성, 개별 기능, 또는 개별 단계 중 적어도 어느 하나 이상의 조합으로 구성될 수 있다.Hereinafter, each embodiment according to the present invention is only one example to help understanding of the present invention, and the present invention is not limited to these embodiments. In particular, the present invention may be composed of a combination of at least one or more of individual configurations, individual functions, or individual steps included in each embodiment.
우선, 본 발명의 일 실시예에 따른 그래픽 처리 장치(100)는 사용자의 요청에 따라 특정 어플리케이션을 구동하고, 그 어플리케이션의 동작에 따른 화면 처리를 수행하는 장치로서, 컴퓨터, 스마트폰, 전자 게임기, 광고용 전광판 등을 포함한다.First, the graphic processing apparatus 100 according to an embodiment of the present invention is a device for driving a specific application according to a user's request and performing screen processing according to the operation of the application. The computer, smart phone, electronic game machine, Advertising billboards and the like.
이러한 그래픽 처리 장치(100)는 도 1에 도시된 바와 같이 어플리케이션 실행부(120), 크로스 드라이버 제어 모듈(110), 하드웨어 그래픽 처리부(130)와 소프트웨어 그래픽 처리부(140) 중 적어도 어느 하나의 처리부, 디스플레이부(150)를 포함하여 구성될 수 있다.As shown in FIG. 1, the graphic processing apparatus 100 may include at least one processing unit among an application execution unit 120, a cross driver control module 110, a hardware graphics processing unit 130, and a software graphics processing unit 140. It may be configured to include a display unit 150.
디스플레이부(150)는 그래픽 처리에 따른 텍스트, 이미지, 동영상 등을 표시하는 것으로서, 예를 들어 전력 소모가 적은 LCD(Liquid Crystal Display)를 포함하여 구성될 수 있다.The display unit 150 displays text, an image, a video, etc. according to graphic processing, and may include, for example, an LCD (Liquid Crystal Display) with low power consumption.
어플리케이션 실행부(120)는 그래픽 처리 장치(100)에 구비된 소정의 어플리케이션을 실행시키는 것으로서, 예를 들어 온라인 게임을 실행시키거나, 지도 이미지를 표시하거나, 사진 편집을 수행할 수 있다.The application executor 120 executes a predetermined application included in the graphic processing apparatus 100, and may execute, for example, an online game, display a map image, or perform photo editing.
하드웨어 그래픽 처리부(130)는 하드웨어적으로 벡터 그래픽 렌더링을 처리하는 것으로서, 예를 들어 GPU(Graphic Processing Unit)를 포함하여 구성될 수 있다.The hardware graphic processor 130 processes vector graphics rendering in hardware and may include, for example, a GPU (Graphic Processing Unit).
소프트웨어 그래픽 처리부(140)는 소트프웨어적으로 벡터 그래픽 렌더링을 처리하는 것으로서, 예를 들어 CPU(Central Processing Unit)을 포함하여 구성될 수 있다.The software graphic processor 140 processes vector graphics rendering in software, and may include, for example, a central processing unit (CPU).
여기서 CPU는 그래픽 처리 장치(100)의 대부분의 기능 수행에 관여하는 필수적인 구성인데, 본 실시예에서는 벡터 그래픽 렌더링 처리와 관련된 제한된 기능에 한정하여 GPU와 GPU를 구별하고 있는 것이다.Here, the CPU is an essential configuration involved in performing most of the functions of the graphic processing apparatus 100. In this embodiment, the CPU is distinguished from the GPU only by limited functions related to the vector graphics rendering process.
즉, 본 실시예에서는 벡터 그래픽 렌더링 처리를 GPU를 이용하여 수행하는 것은 기능적으로 하드웨어 그래픽 처리부(130)라 칭하고, 벡터 그래픽 렌더링 처리를 CPU를 이용하여 수행하는 것은 기능적으로 소프트웨어 그래픽 처리부(140)라 칭하고 있는 것이다.That is, in the present embodiment, performing the vector graphics rendering process using the GPU is functionally referred to as the hardware graphics processing unit 130, and performing the vector graphics rendering process using the CPU is functionally the software graphic processing unit 140. It is called.
본 실시예에 따른 그래픽 처리 장치(100)는 이러한 하드웨어 그래픽 처리부(130)와 소프트웨어 그래픽 처리부(140) 모두를 구비할 수도 있고, 그 중 어느 하나의 처리부만 구비할 수도 있는데, 일반적으로 CPU의 구성은 필수적이므로, 그래픽 처리 장치(100)는 소프트웨어 그래픽 처리부(140)만을 구비하거나, 또는 소프트웨어 그래픽 처리부(140)와 하드웨어 그래픽 처리부(130)를 모두 구비하도록 구성될 수 있다.The graphic processing apparatus 100 according to the present embodiment may include both the hardware graphic processing unit 130 and the software graphic processing unit 140, or may include only one processing unit among them. Is essential, the graphics processing apparatus 100 may be configured to include only the software graphics processor 140 or both the software graphics processor 140 and the hardware graphics processor 130.
크로스 드라이버 제어 모듈(110)은 어플리케이션 실행부(120)에 드라이버 처리와 관련한 통합적인 API(Application Programming Interface)를 제공하고, 어플리케이션의 실행부의 요청에 따라 하드웨어 그래픽 처리부(130)와 소프트웨어 그래픽 처리부(140) 중 어느 하나를 통한 벡터 그래픽 렌더링 처리를 수행한다.The cross driver control module 110 provides an integrated application programming interface (API) related to driver processing to the application execution unit 120, and at the request of the execution unit of the application, the hardware graphic processing unit 130 and the software graphic processing unit 140. Vector graphics rendering process through any one of
이러한 크로스 드라이버 제어 모듈(110)의 기능 블록은 도 2에 도시된 바와 같다.The functional block of the cross driver control module 110 is as shown in FIG. 2.
동 도면에 도시된 바와 같이 크로스 드라이버 제어 모듈(110)은 통합 API 제어부(111), 하드웨어 벡터 가속 드라이버(112), 소프트웨어 벡터 드라이버(113)를 포함하여 구성될 수 있다.As shown in the figure, the cross driver control module 110 may include an integrated API control unit 111, a hardware vector acceleration driver 112, and a software vector driver 113.
여기서 하드웨어 벡터 가속 드라이버(112)는 하드웨어 그래픽 처리부(130)를 제어하여 벡터 그래픽 렌더링 처리를 수행하는 드라이버이고, 소프트웨어 벡터 드라이버(113)는 소프트웨어 그래픽 처리부(140)를 제어하여 벡터 그래픽 렌더링 처리를 수행하는 드라이버이다.Here, the hardware vector acceleration driver 112 is a driver that controls the hardware graphics processor 130 to perform vector graphics rendering, and the software vector driver 113 controls the software graphics processor 140 to perform vector graphics rendering. Is a driver.
예를 들어 하드웨어 벡터 가속 드라이버(112)는 GPU에서 실행될 수 있는 제어 코드, 또는 제어 연산을 포함하여 구성될 수 있고, 소프트웨어 벡터 드라이버(113)는 CPU에서 실행될 수 있는 제어 코드, 또는 제어 연산을 포함하여 구성될 수 있다.For example, the hardware vector acceleration driver 112 may be configured to include control codes or control operations that may be executed on the GPU, and the software vector driver 113 may include control codes or control operations that may be executed on the CPU. Can be configured.
통합 API(Application Programming Interface) 제어부는 하드웨어 벡터 가속 드라이버(112)와 소프트웨어 벡터 드라이버(113)의 이용을 위한 통합적인 상위 인터페이스를 제공하는데, 여기서 상위 인터페이스는 상술한 어플리케이션 실행부(120)에서 접속 가능한 소프트웨어적인 접속점을 의미한다.The integrated application programming interface (API) controller provides an integrated upper interface for the use of the hardware vector acceleration driver 112 and the software vector driver 113, where the upper interface is accessible from the above-described application execution unit 120. Means a software connection point.
즉, 통합 API 제어부(111)가 통합적인 상위 인터페이스를 제공하기 때문에 각 어플리케이션은 그래픽 처리 장치(100)의 실제 구성-즉, 하드웨어 그래픽 처리부(130)와 소프트웨어 그래픽 처리부(140) 중 어떠한 구성이 포함되어 있는지 여부-에 상관없이 그래픽 처리를 위한 동일한 제어 명령을 통합 API에 전송하면 된다.That is, since the integrated API control unit 111 provides an integrated high-level interface, each application includes an actual configuration of the graphics processing apparatus 100, that is, any configuration of the hardware graphics processing unit 130 and the software graphics processing unit 140. Regardless of whether or not they are sent, the same control commands for graphics processing can be sent to the integration API.
또한 통합 API 제어부(111)는 어플리케이션 실행부(120)로부터 벡터 그래픽 렌더링 처리 요청을 수신한 경우 기 설정된 알고리즘을 이용한 우선순위에 따라 하드웨어 벡터 가속 드라이버(112)와 상기 소프트웨어 벡터 드라이버(113) 중 어느 하나의 드라이버를 선정한다.In addition, when the integrated API control unit 111 receives the vector graphic rendering processing request from the application execution unit 120, any of the hardware vector acceleration driver 112 and the software vector driver 113 according to the priority using a preset algorithm. Select one driver.
예를 들어 그래픽 처리 장치(100)에 소프트웨어 그래픽 처리부(140)만 존재하는 경우, 통합 API 제어부(111)는 그 소프트웨어 그래픽 처리부(140)를 제어하는 소프트웨어 벡터 드라이버(113)를 선정할 수 있고, 다른 예로써, 그래픽 처리 장치(100)에 소프트웨어 그래픽 처리부(140)와 하드웨어 그래픽 처리부(130)가 모두 존재하는 경우, 통합 API 제어부(111)는 하드웨어 그래픽 처리부(130)를 제어하는 하드웨어 벡터 가속 드라이버(112)를 벡터 그래픽의 처리를 위한 드라이버로 선정할 수 있다.For example, when only the software graphic processing unit 140 exists in the graphic processing apparatus 100, the integrated API control unit 111 may select a software vector driver 113 that controls the software graphic processing unit 140. As another example, when both the software graphics processor 140 and the hardware graphics processor 130 exist in the graphics processing apparatus 100, the integrated API controller 111 controls the hardware vector processor 130 to control the hardware graphics processor 130. 112 can be selected as a driver for processing vector graphics.
다른 예로써, 통합 API 제어부(111)는 그래픽 처리 장치(100)에 하드웨어 그래픽 처리부(130)와 소프트웨어 그래픽 처리부(140)가 모두 구비되어 있는 경우에는, 하드웨어 벡터 가속 드라이버(112)와 소프트웨어 벡터 드라이버(113) 중 어플리케이션 실행부(120)에서 요청한 벡터 그래픽 렌더링 처리의 수행 시간 단축을 위한 드라이버를 선정할 수 있다.As another example, when the graphics processing apparatus 100 includes both the hardware graphics processing unit 130 and the software graphics processing unit 140, the integrated API control unit 111 may include the hardware vector acceleration driver 112 and the software vector driver. A driver for reducing the execution time of the vector graphic rendering process requested by the application executing unit 120 may be selected among the 113.
즉, 통합 API 제어부(111)는 요청된 벡터 그래픽 렌더링 처리를 더욱 빨리 처리할 수 있는 드라이버를 선정할 수 있는 것이다.That is, the integrated API control unit 111 may select a driver that can process the requested vector graphic rendering process more quickly.
이때 통합 API 제어부(111)는 하드웨어 그래픽 처리부(130)의 평균 처리 속도 및 처리 부하와 소프트웨어 그래픽 처리부(140)의 평균 처리 속도 및 처리 부하를 고려하여 요청된 벡터 그래픽 렌더링 처리의 수행 시간 단축을 위한 드라이버를 선정할 수 있다.In this case, the integrated API control unit 111 may reduce the execution time of the requested vector graphic rendering process in consideration of the average processing speed and processing load of the hardware graphic processing unit 130 and the average processing speed and processing load of the software graphic processing unit 140. You can select a driver.
예를 들어 하드웨어 그래픽 처리부(130)와 소프트웨어 그래픽 처리부(140)가 모두 비슷한 처리 부하를 가지고 있는 경우에는 평균 처리 속도가 더 빠른 하드웨어 그래픽 처리부(130)를 이용하는 것이 유리하므로, 이 경우에는 하드웨어 벡터 가속 드라이버(112)를 벡터 그래픽 렌더링 처리를 위한 드라이버로 선정할 수 있다.For example, when both the hardware graphics processor 130 and the software graphics processor 140 have similar processing loads, it is advantageous to use the hardware graphics processor 130 having a higher average processing speed. In this case, hardware vector acceleration The driver 112 may be selected as a driver for the vector graphics rendering process.
다른 예로써 하드웨어 그래픽 처리부(130)의 평균 처리 속도가 더 빠르기는 하지만, 현재 하드웨어 그래픽 처리부(130)에서 처리되는 그래픽 양이 기 설정된 값을 초과하는 경우 통합 API 제어부(111)는 소프트웨어 벡터 드라이버(113)를 벡터 그래픽 렌더링 처리를 위한 드라이버로 선정할 수도 있다.As another example, although the average processing speed of the hardware graphics processor 130 is faster, the integrated API controller 111 may perform a software vector driver (when the amount of graphics currently processed by the hardware graphics processor 130 exceeds a preset value). 113 may be selected as a driver for the vector graphics rendering process.
여기서 각 처리부의 평균 처리 속도는 기 설정된 상수 값일 수도 있고, 또는 매 처리시마다 누적하여 동적으로 산출한 값일 수도 있다.Here, the average processing speed of each processing unit may be a predetermined constant value, or may be a value that is accumulated and dynamically calculated at every processing.
상술한 통합 API 제어부(111)의 각 기능이 상술한 기 구비된 알고리즘에 해당할 수 있다.Each function of the integrated API control unit 111 described above may correspond to the above-described algorithm.
이러한 드라이버 선정은 최초 크로스 드라이버 제어 모듈(110)이 설치될 때 이루어질 수도 있다.This driver selection may be made when the first cross driver control module 110 is installed.
이어서 통합 API 제어부(111)는 그 선정한 드라이버를 동작시켜 벡터 그래픽 렌더링 처리를 수행하도록 제어한다.Subsequently, the integrated API control unit 111 controls the selected driver to perform vector graphics rendering.
즉, 통합 API 제어부(111)는 소프트웨어 벡터 드라이버(113)를 선정한 경우에는 그 소프트웨어 벡터 드라이버(113)를 동작시켜 소프트웨어 그래픽 처리부(140)를 통해 벡터 그래픽 렌더링 처리가 이루어지도록 하고, 하드웨어 벡터 가속 드라이버(112)를 선정한 경우에는 그 하드웨어 벡터 가속 드라이버(112)를 동작시켜 하드웨어 그래픽 처리부(130)를 통해 벡터 그래픽 렌더링 처리가 이루어지도록 하는 것이다.That is, when the integrated API control unit 111 selects the software vector driver 113, the software vector driver 113 is operated to perform the vector graphics rendering process through the software graphic processing unit 140, and the hardware vector acceleration driver is performed. If 112 is selected, the hardware vector acceleration driver 112 is operated so that the vector graphic rendering process is performed through the hardware graphic processor 130.
도 3은 본 발명의 일 실시예에 따른 그래픽 처리 장치(100)의 제어 흐름도이다.3 is a control flowchart of the graphic processing apparatus 100 according to an embodiment of the present invention.
우선, 그래픽 처리 장치(100)는 그래픽 처리 시점, 전원을 켜는 시점, 또는 특정 어플리케이션이나 드라이버를 설치한 시점에 크로스 드라이버 제어 모듈(110)을 초기화한다(단계 S1).First, the graphic processing apparatus 100 initializes the cross driver control module 110 at the time of graphic processing, the time of turning on the power, or the time of installing a specific application or driver (step S1).
이후, 사용자의 선택 또는 크로스 드라이버 제어 모듈(110)의 판단에 따라 드라이버가 선택된다(단계 S3).Then, the driver is selected according to the user's selection or the decision of the cross driver control module 110 (step S3).
예를 들어 그래픽 처리 장치(100)는 해당 그래픽 처리를 위한 드라이버를 선택할 수 있는데, 예를 들어 GPU가 구비되어 있는 경우에는 하드웨어 벡터 가속 드라이버(112)를 선택하고, GPU가 구비되어 있지 않은 경우에는 소프트웨어 벡터 드라이버(113)를 선택할 수 있다.For example, the graphics processing apparatus 100 may select a driver for processing the corresponding graphics. For example, when the GPU is provided, the graphics processing apparatus 100 selects the hardware vector acceleration driver 112. The software vector driver 113 can be selected.
이어서 하드웨어 벡터 가속 드라이버(112)가 선택된 경우 하드웨어 벡터 가속 드라이버(112)의 초기화가 이루어지고(단계 S5), 소프트웨어 벡터 드라이버(113)가 선택된 경우 소프트웨어 벡터 드라이버(113)의 초기화가 이루어진다(단계 S7).Subsequently, when the hardware vector acceleration driver 112 is selected, the hardware vector acceleration driver 112 is initialized (step S5). When the software vector driver 113 is selected, the software vector driver 113 is initialized (step S7. ).
어플리케이션 등에 의한 그래픽 처리 요청이 감지된 경우(단계 S9), 앞서 선택된 드라이버가 하드웨어 벡터 가속 드라이버(112)인 경우에는 그 하드웨어 벡터 가속 드라이버(112)를 이용하여 벡터 그래픽 렌더링 처리를 수행하여(단계 S13) 화면에 출력하고(단계 S17), 앞서 선택된 드라이버가 소프트웨어 벡터 드라이버(113)인 경우에는 그 소프트웨어 벡터 드라이버(113)를 이용하여 벡터 그래픽 렌더링 처리를 수행하여(단계 S15) 화면에 출력한다(단계 S17).If a graphic processing request by an application or the like is detected (step S9), and the previously selected driver is a hardware vector acceleration driver 112, the vector graphics rendering process is performed using the hardware vector acceleration driver 112 (step S13). Output to the screen (step S17), and if the previously selected driver is the software vector driver 113, the vector graphics rendering process is performed using the software vector driver 113 (step S15) and output to the screen (step S15). S17).
한편, 상술한 각 실시예를 수행하는 과정은 소정의 기록 매체(예를 들어 컴퓨터로 판독 가능한)에 저장된 프로그램 또는 애플리케이션에 의해 이루어질 수 있음은 물론이다. 여기서 기록 매체는 RAM(Random Access Memory)과 같은 전자적 기록 매체, 하드 디스크와 같은 자기적 기록 매체, CD(Compact Disk)와 같은 광학적 기록 매체 등을 모두 포함한다.On the other hand, the process of performing each of the above-described embodiments can be performed by a program or an application stored in a predetermined recording medium (for example, computer readable). Here, the recording medium includes both an electronic recording medium such as a random access memory (RAM), a magnetic recording medium such as a hard disk, an optical recording medium such as a compact disk (CD), and the like.
이때, 기록 매체에 저장된 프로그램은 컴퓨터나 스마트폰 등과 같은 하드웨어 상에서 실행되어 상술한 각 실시예를 수행할 수 있다. 특히, 상술한 본 발명에 따른 크로스 드라이버 제어 모듈과 그래픽 처리 장치의 기능 블록 중 적어도 어느 하나는 이러한 프로그램 또는 애플리케이션에 의해 구현될 수 있다.In this case, the program stored in the recording medium may be executed on hardware such as a computer or a smartphone to perform the above-described embodiments. In particular, at least one of the cross-driver control module and the functional block of the graphic processing apparatus according to the present invention described above may be implemented by such a program or application.
또한, 본 발명은 상기한 특정 실시예에 한정되는 것이 아니라 본 발명의 요지를 벗어나지 않는 범위 내에서 여러 가지로 변형 및 수정하여 실시할 수 있는 것이다. 이러한 변형 및 수정이 첨부되는 특허청구범위에 속한다면 본 발명에 포함된다는 것은 자명할 것이다. In addition, this invention is not limited to the above-mentioned specific Example, It can implement in a various deformation | transformation and correction within the range which does not deviate from the summary of this invention. It will be apparent that such variations and modifications are included in the present invention as long as they belong to the appended claims.
이상 설명한 바와 같이 본 발명에 따르면, 그래픽 처리를 위한 어플리케이션을 개발하는 개발자는 해당 어플리케이션이 실행될 그래픽 처리 장치에 하드웨어 그래픽 처리기가 구비되어 있는지 여부를 확인할 필요 없이 일관된 그래픽 처리 기능을 구현할 수 있다.As described above, according to the present invention, a developer who develops an application for graphic processing may implement a consistent graphic processing function without checking whether a hardware graphic processor is provided in the graphic processing apparatus on which the application is to be executed.
특히 본 발명과 같이 크로스 드라이버 제어 모듈이 각 그래픽 처리 장치에 구비되게 되면, 각 어플리케이션마다 그래픽 처리 장치에 하드웨어 그래픽 처리기가 구현되어 있는지 여부를 판단하는 기능을 구현할 필요가 없으므로 어플리케이션 구현이 쉬어지고, 그 어플리케이션 사이즈도 줄어들 수 있다.In particular, when the cross-driver control module is provided in each graphics processing apparatus as in the present invention, it is not necessary to implement a function for determining whether or not a hardware graphics processor is implemented in the graphics processing apparatus for each application, the application is easy to implement, Application size can also be reduced.

Claims (9)

  1. 하드웨어적으로 벡터 그래픽 렌더링을 처리하는 하드웨어 그래픽 처리부와 소트프웨어적으로 벡터 그래픽 렌더링을 처리하는 소프트웨어 그래픽 처리부 중 적어도 어느 하나와;At least one of a hardware graphics processing unit for processing vector graphics rendering in hardware and a software graphics processing unit for processing vector graphics rendering in software;
    상기 하드웨어 그래픽 처리부를 제어하는 하드웨어 벡터 가속 드라이버, 상기 소프트웨어 그래픽 처리부를 제어하는 소프트웨어 벡터 드라이버와, 상기 하드웨어 벡터 가속 드라이버와 상기 소프트웨어 벡터 드라이버의 이용을 위한 통합적인 상위 인터페이스를 구비한 크로스 드라이버 제어 모듈을 포함하여 구성되고,A cross-driver control module having a hardware vector acceleration driver controlling the hardware graphics processor, a software vector driver controlling the software graphics processor, and an integrated upper interface for use of the hardware vector acceleration driver and the software vector driver; Is configured to include,
    상기 크로스 드라이버 제어 모듈은 벡터 그래픽 렌더링 처리 요청을 감지한 경우 기 설정된 알고리즘을 이용한 우선순위에 따라 상기 하드웨어 벡터 가속 드라이버와 상기 소프트웨어 벡터 드라이버 중 어느 하나의 드라이버를 선정하고, 그 선정한 드라이버를 동작시켜 벡터 그래픽 렌더링 처리를 수행하는 것을 특징으로 하는 그래픽 처리 장치.When the cross driver control module detects the vector graphics rendering process request, the cross driver control module selects one of the hardware vector acceleration driver and the software vector driver according to the priority using a preset algorithm, and operates the selected driver to operate the vector. A graphics processing apparatus characterized by performing graphics rendering processing.
  2. 하드웨어적으로 벡터 그래픽 렌더링을 처리하는 하드웨어 그래픽 처리부와 소트프웨어적으로 벡터 그래픽 렌더링을 처리하는 소프트웨어 그래픽 처리부 중 적어도 어느 하나를 구비한 그래픽 처리 장치에 포함되는 크로스 드라이버 제어 모듈에 있어서,A cross-driver control module included in a graphics processing apparatus having at least one of a hardware graphics processing unit for processing vector graphics rendering in hardware and a software graphics processing unit for processing vector graphics rendering in software,
    상기 하드웨어 그래픽 처리부를 제어하여 벡터 그래픽 렌더링 처리를 수행하는 하드웨어 벡터 가속 드라이버와;A hardware vector acceleration driver that controls the hardware graphics processor to perform vector graphics rendering processing;
    상기 소프트웨어 그래픽 처리부를 제어하여 벡터 그래픽 렌더링 처리를 수행하는 소프트웨어 벡터 드라이버와;A software vector driver which controls the software graphics processor to perform vector graphics rendering processing;
    상기 하드웨어 벡터 가속 드라이버와 상기 소프트웨어 벡터 드라이버의 이용을 위한 통합적인 상위 인터페이스를 제공하고, 상기 벡터 그래픽 렌더링 처리 요청을 감지한 경우 기 설정된 알고리즘을 이용한 우선순위에 따라 상기 하드웨어 벡터 가속 드라이버와 상기 소프트웨어 벡터 드라이버 중 어느 하나의 드라이버를 선정하고, 그 선정한 드라이버를 동작시켜 벡터 그래픽 렌더링 처리를 수행하도록 제어하는 통합 API(Application Programming Interface) 제어부를 포함하는 것을 특징으로 하는 크로스 드라이버 제어 모듈.It provides an integrated upper interface for the use of the hardware vector acceleration driver and the software vector driver, when detecting the vector graphics rendering process request, the hardware vector acceleration driver and the software vector according to the priority using a predetermined algorithm And an integrated API (Application Programming Interface) control unit which selects any one driver and controls the selected driver to perform vector graphics rendering.
  3. 제2항에 있어서,The method of claim 2,
    상기 통합 API 제어부는 상기 그래픽 처리 장치에 하드웨어 그래픽 처리부와 소프트웨어 그래픽 처리부 중 어느 하나의 처리부만 구비되어 있는 경우에는, 상기 하드웨어 벡터 가속 드라이버와 상기 소프트웨어 벡터 드라이버 중 상기 구비된 처리부에 대응되는 드라이버를 선정하는 것을 특징으로 하는 크로스 드라이버 제어 모듈.The integrated API control unit selects a driver corresponding to the provided processing unit among the hardware vector acceleration driver and the software vector driver when the graphic processing apparatus includes only one of a hardware graphic processing unit and a software graphic processing unit. Cross driver control module, characterized in that.
  4. 제2항에 있어서,The method of claim 2,
    상기 통합 API 제어부는 상기 그래픽 처리 장치에 하드웨어 그래픽 처리부와 소프트웨어 그래픽 처리부가 모두 구비되어 있는 경우에는, 상기 하드웨어 벡터 가속 드라이버와 상기 소프트웨어 벡터 드라이버 중 상기 요청된 벡터 그래픽 렌더링 처리의 수행 시간 단축을 위한 드라이버를 선정하는 것을 특징으로 하는 크로스 드라이버 제어 모듈.The integrated API controller is a driver for shortening the execution time of the requested vector graphics rendering process among the hardware vector acceleration driver and the software vector driver when the graphics processing apparatus includes both a hardware graphics processor and a software graphics processor. Cross driver control module, characterized in that for selecting.
  5. 제4항에 있어서,The method of claim 4, wherein
    상기 통합 API 제어부는 상기 하드웨어 그래픽 처리부의 평균 처리 속도 및 처리 부하와 상기 소프트웨어 그래픽 처리부의 평균 처리 속도 및 처리 부하를 고려하여 상기 요청된 벡터 그래픽 렌더링 처리의 수행 시간 단축을 위한 드라이버를 선정하는 것을 특징으로 하는 크로스 드라이버 제어 모듈.The integrated API controller selects a driver for shortening the execution time of the requested vector graphic rendering process in consideration of the average processing speed and processing load of the hardware graphic processing unit and the average processing speed and processing load of the software graphic processing unit. Cross driver control module.
  6. 하드웨어적으로 벡터 그래픽 렌더링을 처리하는 하드웨어 그래픽 처리부와 소트프웨어적으로 벡터 그래픽 렌더링을 처리하는 소프트웨어 그래픽 처리부 중 적어도 어느 하나를 구비한 그래픽 처리 장치에 포함되는 크로스 드라이버 제어 모듈의 제어방법에 있어서,In the control method of the cross-driver control module included in the graphics processing apparatus having at least one of a hardware graphics processing unit for processing the vector graphics rendering in hardware and a software graphics processing unit for processing the vector graphics rendering in software,
    (a) 상기 하드웨어 그래픽 처리부를 제어하는 하드웨어 벡터 가속 드라이버와, 상기 소프트웨어 그래픽 처리부를 제어하는 소프트웨어 벡터 드라이버와, 상기 하드웨어 벡터 가속 드라이버와 상기 소프트웨어 벡터 드라이버의 이용을 위한 통합적인 상위 인터페이스를 구비한 상태에서, 상기 벡터 그래픽 렌더링 처리 요청을 감지한 경우 기 설정된 알고리즘을 이용한 우선순위에 따라 상기 하드웨어 벡터 가속 드라이버와 상기 소프트웨어 벡터 드라이버 중 어느 하나의 드라이버를 선정하는 단계와;(a) a hardware vector acceleration driver controlling the hardware graphics processor, a software vector driver controlling the software graphics processor, and an integrated upper interface for use of the hardware vector acceleration driver and the software vector driver Selecting one of the hardware vector acceleration driver and the software vector driver according to a priority using a predetermined algorithm when the vector graphic rendering processing request is detected;
    (b) 상기 (a) 단계에서 선정된 드라이버를 동작시켜 벡터 그래픽 렌더링 처리를 수행하는 단계를 포함하는 것을 특징으로 하는 크로스 드라이버 제어 모듈의 제어방법.and (b) operating the driver selected in step (a) to perform vector graphics rendering.
  7. 제6항에 있어서,The method of claim 6,
    상기 (a) 단계에서는 상기 그래픽 처리 장치에 하드웨어 그래픽 처리부와 소프트웨어 그래픽 처리부 중 어느 하나의 처리부만 구비되어 있는 경우에는, 상기 하드웨어 벡터 가속 드라이버와 상기 소프트웨어 벡터 드라이버 중 상기 구비된 처리부에 대응되는 드라이버를 선정하는 것을 특징으로 하는 크로스 드라이버 제어 모듈의 제어방법.In the step (a), if only one of the hardware graphic processor and the software graphic processor is provided in the graphic processing apparatus, a driver corresponding to the processor of the hardware vector acceleration driver and the software vector driver may be installed. A control method of a cross driver control module, characterized in that the selection.
  8. 제6항에 있어서,The method of claim 6,
    상기 (a) 단계에서는 상기 그래픽 처리 장치에 하드웨어 그래픽 처리부와 소프트웨어 그래픽 처리부가 모두 구비되어 있는 경우에는, 상기 하드웨어 벡터 가속 드라이버와 상기 소프트웨어 벡터 드라이버 중 상기 요청된 벡터 그래픽 렌더링 처리의 수행 시간 단축을 위한 드라이버를 서정하는 것을 특징으로 하는 크로스 드라이버 제어 모듈의 제어방법.In the step (a), when both the hardware graphic processing unit and the software graphic processing unit are provided in the graphic processing apparatus, the hardware vector acceleration driver and the software vector driver may reduce the execution time of the requested vector graphic rendering process. A control method of a cross-driver control module, characterized in that the driver is written.
  9. 제8항에 있어서,The method of claim 8,
    상기 (a) 단계에서는 상기 하드웨어 그래픽 처리부의 평균 처리 속도 및 처리 부하와 상기 소프트웨어 그래픽 처리부의 평균 처리 속도 및 처리 부하를 고려하여 상기 요청된 벡터 그래픽 렌더링 처리의 수행 시간 단축을 위한 드라이버를 선정하는 것을 특징으로 하는 크로스 드라이버 제어 모듈의 제어방법.In step (a), selecting a driver for shortening the execution time of the requested vector graphic rendering process in consideration of the average processing speed and processing load of the hardware graphic processing unit and the average processing speed and processing load of the software graphic processing unit. A control method of a cross driver control module characterized by the above-mentioned.
PCT/KR2015/004565 2015-05-07 2015-05-07 Graphic processing device, cross driver control module included therein and control method thereof WO2016178446A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/KR2015/004565 WO2016178446A1 (en) 2015-05-07 2015-05-07 Graphic processing device, cross driver control module included therein and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/KR2015/004565 WO2016178446A1 (en) 2015-05-07 2015-05-07 Graphic processing device, cross driver control module included therein and control method thereof

Publications (1)

Publication Number Publication Date
WO2016178446A1 true WO2016178446A1 (en) 2016-11-10

Family

ID=57218237

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2015/004565 WO2016178446A1 (en) 2015-05-07 2015-05-07 Graphic processing device, cross driver control module included therein and control method thereof

Country Status (1)

Country Link
WO (1) WO2016178446A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090322764A1 (en) * 2008-06-26 2009-12-31 Microsoft Corporation Dynamically transitioning between hardware-accelerated and software rendering
US20100201695A1 (en) * 2004-10-04 2010-08-12 Microsoft Corporation System and method for optimizing a graphics intensive software program for the user's graphics hardware
JP2013003811A (en) * 2011-06-16 2013-01-07 Konica Minolta Holdings Inc Rendering device and rendering method
KR101228708B1 (en) * 2004-08-30 2013-02-01 큐엔엑스 소프트웨어 시스템즈 게엠베하 운트 코. 카게 System for providing transparent access to hardware graphic layers
KR101467558B1 (en) * 2007-07-26 2014-12-01 엘지전자 주식회사 A apparatus and a method of graphic data processing

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101228708B1 (en) * 2004-08-30 2013-02-01 큐엔엑스 소프트웨어 시스템즈 게엠베하 운트 코. 카게 System for providing transparent access to hardware graphic layers
US20100201695A1 (en) * 2004-10-04 2010-08-12 Microsoft Corporation System and method for optimizing a graphics intensive software program for the user's graphics hardware
KR101467558B1 (en) * 2007-07-26 2014-12-01 엘지전자 주식회사 A apparatus and a method of graphic data processing
US20090322764A1 (en) * 2008-06-26 2009-12-31 Microsoft Corporation Dynamically transitioning between hardware-accelerated and software rendering
JP2013003811A (en) * 2011-06-16 2013-01-07 Konica Minolta Holdings Inc Rendering device and rendering method

Similar Documents

Publication Publication Date Title
EP3754644A1 (en) Apparatus and method for driving display based on frequency operation cycle set differently according to frequency
US9293119B2 (en) Method and apparatus for optimizing display updates on an interactive display device
US10499248B2 (en) Secure interaction method and device
US20110090234A1 (en) Apparatus and method for control of multiple displays from a single virtual frame buffer
CN111937063B (en) Electronic device and method for controlling output timing of signal
WO2012144817A2 (en) Method and apparatus for defining overlay region of user interface control
US7944421B2 (en) Image display system, image display method, image display device, image data processor, program, storage medium, and image processing program distribution server
KR100565880B1 (en) Apparatus and method for using a television set with a personal computer
KR102429801B1 (en) Method for adaptively controlling low power display mode and electronic device thereof
EP3726348A1 (en) Touch input processing method and electronic device supporting same
US20210327103A1 (en) Method for preventing display burn-in in electronic device, and electronic device
WO2016178446A1 (en) Graphic processing device, cross driver control module included therein and control method thereof
JP2008199366A (en) Information processor, information processing method, program, and recording medium
CN115705231B (en) Screen display method and terminal equipment
CN107229365B (en) Driving integrated circuit applying image processing driving method and touch display system
US11889197B1 (en) Reference frame selection for multi-frame image processing pipelines and other applications
WO2016032303A1 (en) Method and system for controlling scroll on basis of context information, and non-temporal computer-readable recording medium
CN115866134B (en) Near field communication NFC card determination method and device, electronic equipment and storage medium
US9934038B2 (en) Conditionally executing converted non-ISA instructions based on GPU display settings
CN106851097B (en) A kind of terminal device and its depth of field control method
WO2024109247A1 (en) Image processing method and apparatus
WO2022250452A1 (en) System and method for controlling operational modes for xr devices for performance optimization
CN109429090B (en) Display method of smart television list and smart television
CN115457916A (en) Method for realizing forced display of picture based on DVI port and related device
EP2637164B1 (en) Drawing device and drawing method

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15891310

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15891310

Country of ref document: EP

Kind code of ref document: A1