KR101121595B1 - 하이브리드 시스템 구성을 이용한 화상 처리 - Google Patents

하이브리드 시스템 구성을 이용한 화상 처리 Download PDF

Info

Publication number
KR101121595B1
KR101121595B1 KR1020090109487A KR20090109487A KR101121595B1 KR 101121595 B1 KR101121595 B1 KR 101121595B1 KR 1020090109487 A KR1020090109487 A KR 1020090109487A KR 20090109487 A KR20090109487 A KR 20090109487A KR 101121595 B1 KR101121595 B1 KR 101121595B1
Authority
KR
South Korea
Prior art keywords
image
image data
back buffer
picture
adjusted
Prior art date
Application number
KR1020090109487A
Other languages
English (en)
Other versions
KR20100054741A (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 엔비디아 코포레이션
Publication of KR20100054741A publication Critical patent/KR20100054741A/ko
Application granted granted Critical
Publication of KR101121595B1 publication Critical patent/KR101121595B1/ko

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
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/02Improving the quality of display appearance
    • G09G2320/0252Improving the response speed
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/06Adjustment of display parameters
    • G09G2320/066Adjustment of display parameters for control of contrast
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/06Adjustment of display parameters
    • G09G2320/0666Adjustment of display parameters for control of colour parameters, e.g. colour temperature
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/16Determination of a pixel data signal depending on the signal applied in the previous frame

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)
  • Liquid Crystal Display Device Control (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Image Processing (AREA)
  • Power Sources (AREA)
  • Digital Computer Display Output (AREA)
  • Color Image Communication Systems (AREA)

Abstract

화상 조정을 위한 시스템 및 방법은 개별 프로세서의 그래픽 처리 성능에 대한 영향을 최소화한다. 하이브리드 시스템 구성은 개별 프로세서 및 통합 프로세서를 포함하고, 개별 프로세서는 전형적으로 통합 프로세서와 비교해서 더 많은 전력을 소비하고 더 큰 처리 성능을 제공한다. 화상은 하이브리드 시스템 내의 개별 프로세서의 비디오 또는 그래픽 엔진에 의해 생성된다. 각 화상은 호스트 처리 메모리 내의 백 버퍼로 전달된다. 화상은 조정 설정들을 발생하기 위해 사용되는 화상 분석 결과들을 생성하기 위해 분석된다. 백 버퍼는 프런트 버퍼가 되도록 스왑되고 조정 설정들은 조정된 화상을 표시하기 위해 통합 프로세서에 의해 화상에 적용된다. 조정은 디스플레이 백라이팅이 감소될 때 화질을 유지하기 위해 절전 기술과 함께 이용될 수 있다.
화상, 개별 프로세서, 통합 프로세서, 프런트 버퍼, 백 버퍼

Description

하이브리드 시스템 구성을 이용한 화상 처리{PICTURE PROCESSING USING A HYBRID SYSTEM CONFIGURATION}
본 발명의 실시예들은 일반적으로 하이브리드 시스템 구성으로 화상을 처리하는 것에 관한 것으로, 더욱 구체적으로, 통합 프로세서를 이용하여 개별 프로세서에 의해 생성된 화상을 처리하는 것에 관한 것이다.
통상적으로, 비디오 이미지들은 비디오 이미지들이 YUV 컬러 공간으로부터 RGB(적색, 녹색, 청색) 컬러 공간으로 변환되기 전에 콘트라스트를 수정하기 위해 조정된다. 콘트라스트의 변경과 같은 조정들을 수행하기 위해서, 이미지를 RGB 컬러 공간으로 변환하고, 분석하여 콘트라스트 레벨들을 결정하고, 그 다음에 이미지 RGB 값들을 조정하여 콘트라스트를 수정한다. 디스플레이의 백라이트는 전력 소비를 줄이고 노트북 및 다른 휴대형 컴퓨팅 디바이스들의 배터리 수명을 연장하기 위해 어둡게 될 수 있다. 표시된 이미지의 인지된 시각적 품질을 유지하기 위해서, 이미지의 콘트라스트는 변경될 수 있다. 그러나, 그래픽 프로세서를 이용하여 비디오 이미지를 RGB 컬러 공간으로 변환하고 후속하여 이미지를 분석하고, 콘트라스트를 조정할 때, 시스템의 전체 처리 성능은 그의 동작들을 수행하기 위해서 추가 적인 대역폭 및 처리 전력을 소비하기 때문에 감소될 수 있다.
따라서, 이 기술분야에서 필요한 것은, 그래픽 처리 성능에 대한 영향을 최소화하면서 비디오 이미지들을 조정하는 시스템 및 방법이다.
그래픽 처리 성능에 대한 영향을 최소화하면서 화상들을 조정하는 시스템 및 방법이 개시된다. 하이브리드 시스템 구성은 개별 프로세서 및 통합 프로세서를 포함하며, 여기서 개별 프로세서는 통상적으로 통합 프로세서에 비해 더 많은 전력을 소비하고 더 큰 처리 성능을 제공한다. 하이브리드 시스템 내의 개별 프로세서의 비디오 또는 그래픽 엔진에 의해 화상이 생성된다. 비디오 엔진에 의해 생성된 화상들은 표시를 위한 RGB 포맷으로 변환된다. 각각의 화상은 그 다음에 호스트 처리 메모리의 백 버퍼(back buffer)로 전달된다. 화상은 분석되어 화상 분석 결과들을 생성하고, 화상 분석 결과들을 이용하여 조정 설정들을 생성한다. 백 버퍼가 프런트 버퍼로 되도록 스왑(swap)되고, 통합 프로세서에 의해 조정 설정들이 화상에 적용되어 조정된 화상을 표시한다. 조정은 디스플레이 백라이팅이 감소될 때 화질을 유지하기 위해 절전 기술들과 함께 이용될 수 있다. 조정은 또한 하나 이상의 컬러 채널에 대해 특수 효과를 수행하기 위해 이용될 수 있다. 다음 화상이 순서대로 개별 프로세서에 의해 생성됨에 따라 표시될 현재의 화상에 대해 화상 분석, 조정 설정 결정, 및 조정의 적용이 수행된다. 조정 설정 결정은 하이브리드 시스템의 호스트 중앙 처리 유닛(CPU) 또는 개별 프로세서에 의해 수행될 수 있다.
하이브리드 시스템 구성을 이용하여 표시를 위한 화상들을 처리하기 위한 본 발명의 방법의 다양한 실시예들은 알파, 적색, 녹색, 청색(ARGB) 포맷으로 표현된 화상 데이터를 생성하고, 하이브리드 시스템 구성 내의 개별 프로세서의 백 버퍼에 화상 데이터를 저장하는 것을 포함한다. 화상 데이터는 하이브리드 시스템 구성 내의 통합 프로세서의 백 버퍼에 전달되고 개별 프로세서 또는 통합 프로세서에 의해 처리되어 화상 분석 결과들을 생성한다. 화상 분석 결과들은 하이브리드 시스템 구성 내의 통합 프로세서와 연관된 메모리에 저장된다. 화상 분석 결과들에 기초하여 조정된 화상 설정이 결정되고 하이브리드 시스템 구성 내의 통합 프로세서를 이용하여 화상 데이터에 적용되어 통합 프로세서에 의해 표시될 표시를 위한 조정된 화상 데이터를 생성한다.
본 발명의 다양한 실시예들은 표시를 위한 화상들을 처리하도록 구성되는 하이브리드 시스템 구성을 포함한다. 하이브리드 시스템 구성은 개별 프로세서 및 통합 프로세서를 포함한다. 개별 프로세서는 메모리를 포함하며, 알파, 적색, 녹색, 청색(ARGB) 포맷으로 표현된 화상 데이터를 생성하고, 화상을 메모리의 백 버퍼에 저장하고, 화상 데이터를 제2 백 버퍼에 전달하도록 구성된다. 통합 프로세서는 제2 백 버퍼에 저장된 화상을 처리하여 화상 데이터에 조정된 화상 설정을 적용하여 표시를 위한 조정된 화상 데이터를 생성하도록 구성되며, 조정된 화상 설정은 화상 분석 결과들에 기초하여 결정된다.
본 발명의 전술한 특징들은 상세하게 이해될 수 있도록, 위에서 간략하게 요약한 본 발명의 더 특정한 설명이 실시예들을 참조하여 설명되며, 실시예들 중 일부는 첨부 도면들에 예시된다. 그러나, 첨부 도면들은 본 발명의 통상적인 실시예들만을 예시하는 것이며, 본 발명의 범위를 한정하는 것으로 생각되어서는 안되며, 다른 동등하게 유효한 실시예들을 허용할 수 있다는 것에 주목해야 한다.
다음의 설명에서는 본 발명의 더욱 완전한 이해를 제공하기 위해 다수의 특정 상세가 설명된다. 그러나, 이 기술분야의 통상의 기술자에게는 본 발명이 이들 특정 상세 중 하나 이상이 없이도 실시될 수 있다는 것이 명백할 것이다. 다른 경우에, 공지된 특징들은 본 발명을 불명료하게 하지 않기 위해 설명하지 않았다.
시스템 개요
도 1a는 본 발명의 하나 이상의 양태를 구현하도록 구성된 컴퓨터 시스템(100)을 예시하는 블록도이다. 컴퓨터 시스템(100)은 다양한 활동 레벨 및 전력 소비 레벨을 제공하기 위해 다수의 처리 유닛들을 포함하는 하이브리드 컴퓨팅 플랫폼이다. 컴퓨터 시스템(100)은 코어 로직(105)을 포함하는 버스 경로를 통해 통신하는 중앙 처리 유닛(CPU)(102) 및 시스템 메모리(104)를 포함한다. 코어 로직(105)은 통상적으로 개별 GPU(112)보다 적은 성능을 제공하고 적은 전력을 소비하는 통합 GPU(150)를 포함한다.
코어 로직(105)은 플랫폼 내의 하나 이상의 다른 디바이스들에 CPU(102)를 연결하고 접속(113)을 통해 시스템 메모리(104)에 연결되는 브리지 디바이스이다. 코어 로직(105)은 하나 이상의 사용자 입력 디바이스(108)(예를 들어, 키보드, 마 우스)로부터 사용자 입력을 수신하고 그 입력을 경로(106)를 통해 CPU(102)에 전달한다.
개별 GPU(112)는 버스 또는 다른 통신 경로(예를 들어, PCI Express, AGP(accelerated graphics port), 또는 HyperTransport 링크)를 통해 코어 로직(105)에 연결되며, 일 실시예에서, 개별 GPU(112)는 화상들을 생성하기 위해 2차원(2D) 그래픽 데이터, 3차원(3D) 그래픽 데이터 및/또는 비디오 데이터를 처리하는 그래픽 서브시스템이다. 비디오 데이터로부터 생성된 화상들은 통상적으로 YUV 컬러 공간으로 표현되며, 디스플레이 디바이스(110) 상에 표시를 위해 RGB 컬러 공간으로 변환된다. 어플리케이션 프로그램들과 같이, CPU(102)와, 개별 GPU(112) 및 통합 GPU(150)에 의해 실행되는 프로세스들 사이를 인터페이스하기 위해, 디바이스 드라이버가 시스템 메모리(104)에 저장될 수 있고, 도 3과 결합하여 설명되는 바와 같이, 개별 GPU(112) 및 통합 GPU(150)에 의한 실행을 위해 필요에 따라 프로그램 명령어들을 번역한다. 시스템(100)이 저전력 모드로 동작하는 동안, 코어 로직(105)은 전압 조절기를 통한 개별 GPU(112)로의 전압 입력을 제어함으로써 전력 공급 오프 상태에 들어가도록 개별 GPU(112)를 구성할 수 있다. 유사하게, 코어 로직(105)은 시스템 메모리(104)로의 전압 입력을 제어함으로써 전력 공급 오프 상태에 들어가도록 시스템 메모리(104)를 구성할 수 있다.
코어 로직(105)은 디스플레이 디바이스(110)(예를 들어, 종래의 CRT 또는 LCD 기반 모니터)에 연결되며, 디스플레이 디바이스(110)의 전력 소비를 변화시키기 위해 백라이트 레벨을 제어할 수 있다. 시스템 디스크(114)가 또한 코어 로 직(105)에 접속된다. 스위치(116)가 코어 로직(105)과, 네트워크 어댑터(118) 및 다양한 애드 인 카드들(120 및 121)과 같은 다른 컴포넌트들 사이의 접속들을 제공한다. USB 또는 다른 포트 접속들, CD 드라이브들, DVD 드라이브들, 녹화 장치 등을 포함하는 다른 컴포넌트들(명시적으로 도시되지 않음)이 또한 코어 로직(105)에 접속될 수 있다. 도 1a의 다양한 컴포넌트들을 상호접속하는 통신 경로들이 PCI(Peripheral Component Interconnect), PCI Express(PCI-E), AGP(Acelerated Graphics Port), HyperTransport, 또는 임의의 다른 버스 또는 점대점 통신 프로토콜(들)과 같은 임의의 적절한 프로토콜들을 이용하여 구현될 수 있으며, 상이한 디바이스들 간의 접속들은 이 기술분야에 공지된 바와 같은 상이한 프로토콜들을 이용할 수 있다.
도 1b는 본 발명의 하나 이상의 양태를 구현하도록 구성된 컴퓨터 시스템(100)을 예시하는 다른 블록도이다. 도 1a와 달리, 시스템 메모리(104)가 코어 로직(115)을 통하기보다 접속(103)을 통해 직접 CPU(122)에 접속되며, 다른 디바이스들이 코어 로직(115) 및 CPU(122)를 통해 시스템 메모리(104)와 통신한다.
본원에 도시된 시스템은 예시이며 변형 및 수정이 가능하다는 것을 알 것이다. 브리지의 수 및 배열을 포함하는 접속 토폴로지가 원하는 바에 따라 수정될 수 있다. 다른 대안적인 토폴로지들에서, GPU(112)는 코어 로직(105) 또는 코어 로직(115) 보다는 CPU(102) 또는 CPU(122)에 직접 접속된다. 다른 실시예들에서, 코어 로직(105) 또는 코어 로직(115)은 다중 칩으로 분리될 수 있다. 본원에 도시된 특정 컴포넌트들은 옵션이며, 예를 들어, 임의 수의 애드 인 카드 또는 주변 장 치들이 지원될 수 있다. 일부 실시예들에서, 스위치(116)는 없어지고, 네트워크 어댑터(118) 및 애드 인 카드들(120, 121)은 코어 로직(105) 또는 코어 로직(115)에 직접 접속한다. 시스템(100)의 나머지에의 GPU(112)의 접속은 또한 변할 수 있다. 일부 실시예들에서, GPU(112)는 시스템(100)의 확장 슬롯 내로 삽입될 수 있는 애드 인 카드로서 구현된다.
코어 로직 개요
도 2a는 본 발명의 하나 이상의 양태에 따른, 도 1a의 컴퓨터 시스템(100)을 위한 코어 로직(105)의 블록도이다. 도 2b는 본 발명의 하나 이상의 양태에 따른, 도 1b의 컴퓨터 시스템(100)을 위한 코어 로직(115)의 블록도이다. 코어 로직(105) 및 코어 로직(115)은 각각 ARM(advanced reduced instruction set machine), PowerPC 등과 같은 내장형 저전력 프로세서일 수 있는 시스템 관리 유닛(200)을 포함한다. 시스템 관리 유닛(200)은 CPU(102) 또는 CPU(122)보다 적은 전력을 소비하며, 시스템 인터럽트들을 서비스하는 데 필요한 처리와 같은 CPU(102) 또는 CPU(122)에 의해 수행되는 처리의 적어도 일부분을 수행하도록 구성될 수 있다.
코어 로직(105) 및 코어 로직(115)은 각각 또한 디스플레이 디바이스(110)에의 출력을 위한 RGB 이미지 데이터를 포함하는 프런트 버퍼(260)를 저장하도록 구성될 수 있는 로컬 메모리(205)를 포함한다. 로컬 메모리(205)는 또한 디스플레이 디바이스(110)에의 출력을 위한 이미지들의 더블-버퍼링(double-buffering)을 수행하기 위해 프런트 버퍼(260)와 스왑되는 백 버퍼를 저장하도록 구성될 수 있다. 백 버퍼는 프런트 버퍼(260)가 표시되는 동안 통합 GPU(150) 또는 개별 GPU(112)에 의해 기입된다. 프런트 버퍼(260)의 표시가 완료된 후에, 프런트 버퍼(260)는 백 버퍼와 스왑되며, 백 버퍼에 저장된 이미지가 표시된다. 프런트 버퍼(260) 및 백 버퍼는 로컬 메모리(205) 대신에 시스템 메모리(104)에 저장될 수 있다.
도 1b에 도시된 토폴로지가 이용될 때, 데이터는 CPU(122) 및 접속(103)을 통해 시스템 메모리(104)로/로부터 전송된다. 온칩 SRAM, 온칩 내장형 DRAM, 오프칩 DRAM 등이 로컬 메모리(205)를 구성하는 데 이용될 수 있다. 로컬 메모리(205) 및 시스템 메모리(104)는 도 1a에 도시된 바와 같이 시스템 메모리(104)가 코어 로직(105)에 직접 접속될 때 동일한 물리적 개체일 수 있다.
시스템 관리 유닛(200)은 컴퓨터 시스템(100)이 저전력 동작 모드에 들어가고 나와야 할 때를 결정하도록 구성될 수 있다. 시스템 관리 유닛(200)은 CPU(102) 및 CPU(122)에의 전압 입력들을 인에이블 및 디스에이블함으로써 CPU(102) 또는 CPU(122)의 전력 공급을 업(up) 또는 다운(down)시키도록 구성된다. 유사하게, 시스템 관리 유닛(200)은 GPU(112)에의 전압 입력을 인에이블 및 디스에이블함으로써 개별 GPU(112)의 전력 공급을 업(up) 또는 다운(down)시키도록 구성된다. 전술한 바와 같이, 시스템 관리 유닛(200)은 또한 시스템 메모리(104) 및 통합 GPU(150)와 같은, 컴퓨터 시스템(100) 내의 다른 컴포넌트들에 전력 공급을 다운시키도록 구성될 수 있다.
본 발명의 일부 실시예들에서, 코어 로직(105)은 시스템 메모리(104)와 인터페이스하는 데 이용되는 메모리 인터페이스(214)를 포함한다. 시스템 관리 유 닛(200)과 CPU(102) 또는 CPU(122) 둘다 인에이블될 수 있고, 시스템 관리 유닛(200)이 인에이블되는 동안에 CPU(102) 또는 CPU(122)가 디스에이블될 수 있기 때문에 시스템 관리 유닛(200)은 컴퓨터 시스템(100)에 하이브리드 처리 능력을 제공한다.
화상 처리
도 3은 본 발명의 하나 이상의 양태에 따른, 하이브리드 시스템(100)의 개별 GPU(112)와 통합 GPU(150) 사이의 처리의 분배를 도시하는 개념도이다. 비디오 어플리케이션(300)은 CPU(102) 상에서 실행되고, 명령들 및 인코딩된 데이터(302)가 시스템 메모리(104)에 저장되는 사용자 모드 드라이버(305)에 의해 수신된다. 사용자 모드 드라이버(305)는 명령들 및 인코딩된 데이터(302)를 처리를 위해 커널 모드 드라이버(310)에 전달한다. 커널 모드 드라이버(310)는, 특히 통합 GPU(150)와 개별 GPU(112)가 둘다 명령들 및 인코딩된 데이터(302)를 처리할 수 있는, 하이브리드 구성을 알아챈다.
종래의 하이브리드 시스템에서, 커널 모드 드라이버(310)는 각각의 GPU가 명령들 및 인코딩된 데이터의 일부를 처리하게 함으로써 통합 GPU(150)와 개별 GPU(112) 간의 처리 작업량을 분할한다. 예를 들어, 통합 GPU(150)는 명령들 및 인코딩된 데이터(302)의 제1 부분을 처리하여 디스플레이 디바이스(110)로의 출력을 위한 표면의 상부, 하부, 우측 또는 좌측 부분을 생성할 수 있다. 개별 GPU(112)는 명령들 및 인코딩된 데이터(302)의 제2 부분을 처리하여 디스플레이 디바이스(110)로의 출력을 위한 표면의 나머지 부분을 생성할 수 있다.
하이브리드이던 아니던, 종래의 시스템에서는 최종 RGB 값들을 조정하여 감소한 백라이팅을 보상하고, 컬러 채널들에 특수 효과들을 행하거나, 컬러 채널들을 오버드라이빙함으로써 LCD 반응성을 개선하기 위해, 디스플레이(110)로 출력하기 위한 최종 이미지들의 처리가 수행된다. 최종 RGB 값들의 처리는 개별 GPU(112)에 의해 수행되고, 최상의 결과들을 위해 RGB 컬러 공간에 표현된 데이터에 대해 수행된다. 따라서, YUV 공간에 표현된 비디오 데이터는 통상적으로 이런 방식으로 처리되지 않거나, YUV 공간에서 처리되어 화질이 낮아진다. 종래의 시스템들에서, 최종 이미지들에 대해 이러한 처리를 수행하는 능력은 (3D 그래픽 데이터를 제외한) 비디오 재생 데이터에 한정되며, 최종 RGB 값들을 조정하는데 추가적인 처리 사이클들이 소비되기 때문에 개별 GPU(112)에 대한 성능을 감소시킨다.
본 발명의 바람직한 실시예에서, 커널 모드 드라이버(310)는 명령들 및 인코딩된 데이터(302)를, 처리를 위해 개별 GPU(112)로 출력하도록 구성된다. 커널 모드 드라이버(310)는, 도 5와 함께 설명하는 바와 같이, 통합 GPU(150)가 최종 RGB 값들의 처리를 수행하도록 구성한다. 최종 RGB 값들을 조정하여 감소된 백라이팅을 보상하고, 컬러 채널들에 대해 특수 효과를 수행하거나, 컬러 채널들을 오버드라이빙함으로써 LCD 반응성을 개선하기 위해, 개별 GPU(112)에 의해 처리된 비디오, 2D, 3D 데이터에 대하여, 디스플레이(110)로의 출력을 위한 최종 이미지들의 처리가 통합 GPU(150)에 의해 수행될 수 있다. 추가적으로, 최종 RGB 값들의 처리는 개별 GPU(112)로부터 통합 GPU(150)로 오프로드(offload)되기 때문에 개별 GPU(112)의 성능이 감소되지 않는다. 또한, 개별 GPU(112)는 시퀀스의 n번째 화상 을 생성하는 한편, 통합 GPU(150)는 시퀀스의 (n-1)번째 화상의 최종 RGB 값들을 처리한다.
도 4는 본 발명의 하나 이상의 양태들에 따른 버퍼들의 위치들, 화상 분석 결과들 및 조정된 화상 설정들을 도시하는 하이브리드 시스템의 일부분의 도면이다. 프런트 버퍼(260), 백 버퍼(402), 화상 분석 결과들(155), 및 조정된 화상 설정들(160) 중 하나 이상이 로컬 메모리(205)에 저장될 수 있다. 개별 GPU(112)의 비디오 엔진은 커널 모드 드라이버(310)에 의해 제공된 명령들 및 인코딩된 데이터(302)를 디코딩하고, 디코딩된 데이터를 YUV 포맷으로 생성한다. 개별 GPU(112)는 개별 GPU(112) 내의 2D 그래픽, 3D 그래픽, 및/또는 비디오 엔진을 이용하여, 디코딩된 YUV 데이터의 추가적인 처리를 수행하여 화상 데이터를 RGB 포맷으로 생성한다. 개별 GPU(112)는 화상 데이터를 백 버퍼(400)에 저장한다. 백 버퍼(400)는 호스트 시스템에 전달되고, 백 버퍼(402)로서 시스템 메모리에 저장된다. 백 버퍼(402)가 전달되면, 개별 GPU(112)는 상이한 화상에 대한 화상 데이터를 백 버퍼(400)에 저장하기 시작할 수 있다.
개별 GPU(112), CPU(102) 또는 통합 GPU(150)는 제1 화상을 분석하여, 시스템 메모리(104)에 저장되는 화상 분석 결과들(155)을 생성한다. 화상 분석 결과들(155)은 콘트라스트 레벨을 변화시킴으로써 정렬되거나, 하나 이상의 채널들(적색, 녹색, 및 청색)에 대한 채널 컬러를 변화시킴으로써 정렬된 백 버퍼(402)의 히스토그램을 나타낼 수 있다. 분석을 수행하기 위해, 통합 GPU(150)는 먼저 백 버퍼(402)에 저장된 RGB 데이터를 Y(루마(luma)) 데이터로 변환할 수 있다. 통합 GPU(150)는, 백 버퍼(400)가 더 큰 경우, 개선된 성능(증가된 프레임 레이트)을 위해 백 버퍼(402)를 1024×768 화소들로 다운스케일링하도록 커널 모드 드라이버(310)에 의해 구성될 수도 있다. 대안적으로, 통합 GPU(150)는, 개별 GPU(112)에 의해 생성된 화소들의 수가 디바이스 드라이버 사용자 모드 드라이버(305)에 의해 특정된 쌍방향 프레임 레이트를 유지하기 위해 제한되는 경우, 백 버퍼(402)를 업스케일링하도록 커널 모드 드라이버(310)에 의해 구성될 수 있다. RGB 화상 데이터의 업스케일링 또는 다운스케일링은, 화상 데이터가 백 버퍼(400)로부터 백 버퍼(402)로 전달됨에 따라 수행될 수 있다.
그리고 나서, 화상 분석 결과들(155)은 조정된 화상 설정들(160)을 결정하는데 이용된다. 예를 들어, 전력 소비를 감소시키기 위해 평판 디스플레이 백라이트가 감소되는 경우, 즉, SmartDimmer 특징이 이용된 경우, 백 버퍼(402)에 의해 표현된 화상의 콘트라스트가 증가될 수 있다. 콘트라스트를 증가시키는 것은, 감소된 백라이트를 이용하여 화상을 디스플레이하고 콘트라스트를 증가시키지 않는 것과 비교하여, 디스플레이된 화상의 인지된 시각적인 품질(주로 휘도)을 개선한다. 화상 분석 결과들(155)은, 앰비-라이트(Ambi-light)와 같은, 컬러 채널들에 대해 특수 효과들을 수행하는데 이용되는 컬러 채널 값들의 히스토그램을 나타낼 수도 있다. 조정된 화상 설정들(160)은 화상 분석 결과들(155)에 기초하여 컬러 채널들 중 하나 이상에 대한 수정을 지정할 수 있다. 최종적으로, 디스플레이 디바이스(110)의 LCD 반응성을 개선하도록 RGB 컬러 값들을 일시적으로 오버드라이빙함으로써 고스트 현상(ghosting artifacts)을 감소시키기 위해, LCD 오버드라이브 특징 은 조정된 화상 설정들(160)에 의해 지정될 수 있다.
도 5는, 본 발명의 하나 이상의 양태들에 따른 하이브리드 시스템(100)을 이용하여 화상들을 처리하는 방법 단계들의 흐름도이다. 단계(500)에서, 개별 GPU(112)는 화상를 디코딩하여 단계(505)에서 ARGB 포맷으로서 백 버퍼(400)에 저장되는 화상 데이터를 생성한다. 화상은 화상 데이터를 생성하기 위해 개별 GPU(112)에 의해 렌더링되는 그래픽 어플리케이션에 의해 제공되는 2D 또는 3D 그래픽 데이터 또는 비디오 어플리케이션(300)으로부터의 명령들 및 인코딩된 데이터(302)를 이용하여 디코딩될 수 있다. 단계(510)에서 백 버퍼(400)는 백 버퍼(402)로 카피된다. 전술한 바와 같이, 통합 GPU(150)는, 화상 데이터가 백 버퍼(400)로부터 백 버퍼(402)로 카피됨과 동시에, 화상 데이터를 업스케일링 또는 다운스케일링하도록 구성될 수 있다. 통합 GPU(150)는, 데이터가 백 버퍼(400)로부터 백 버퍼(402)로 카피됨에 따라 화상 데이터를 RGB 포맷으로 변환하도록 구성될 수도 있다.
단계(515)에서, 통합 GPU(150)는 화상 분석 결과들(155)을 생성하기 위해 백 버퍼(402)를 분석하도록 구성된다. 본 발명의 일부 실시예들에서, CPU(102)는 화상 분석 결과들(155)을 생성하도록 구성될 수 있다. 단계(520)에서, 화상 분석 결과들(155)은 시스템 메모리(104) 또는 로컬 메모리(205)에 저장된다. 단계(525)에서, 화상 분석 결과들(155)은, 화상 데이터가 디스플레이 디바이스(110)로 출력됨에 따라, 백 버퍼(402)에 저장된 화상 데이터에 적용될 조정된 설정들을 나타내는 조정된 화상 설정들(160)을 생성하기 위해 분석된다. 조정된 화상 설정들(160)은 백라이팅의 변화, 컬러 채널 효과들, 및 그외의 전력 감소 또는 디스플레이 옵션들의 원인이 된다. CPU(102) 또는 통합 GPU(150)는 조정된 화상 설정들(160)을 생성하도록 구성될 수 있다.
단계(530)에서, 코어 로직(105 또는 115)은, 임의의 디스플레이 조정들, 예를 들어, 백라이트 레벨들의 변화들 등이 디스플레이 디바이스(110)를 제어하기 위해 행해질 지의 여부를 결정한다. 디스플레이 조정들이 이루어지면, 단계(535)에서, 디스플레이 조정들이 디스플레이 디바이스(110)에 적용된다. 단계(540)에서, 프런트 버퍼(260)는 백 버퍼(402)와 스왑되어, 백 버퍼(402)가 디스플레이 디바이스(110)에 출력된다. 단계(545)에서, 통합 GPU(150)는 백 버퍼(402)로부터의 화상 데이터를 판독하고, 조정된 화상 데이터를 디스플레이 디바이스(110)에 출력하기 전에 조정된 화상 설정들(160)을 적용하도록 구성된다.
디스플레이 디바이스(110)로의 출력을 위한 최종 이미지들의 처리는 개별 GPU(112)로부터 통합 GPU(150)로 오프로드되어, 개별 GPU(112)에 의한 비디오 및 그래픽 데이터의 처리 성능을 개선한다. 통합 GPU(150)는 비디오 및 2D 및/또는 3D 그래픽 처리로부터 생성되는 화상 데이터의 최종 RGB 값들을 조정하여 감소된 백라이팅을 보상하고, 컬러 채널들에 대해 특수 효과들을 수행하거나, 컬러 채널들을 오버드라이빙함으로써 LCD 반응성을 개선할 수 있다.
본 발명은 특정 실시예들을 참조하여 설명되었다. 그러나, 본 기술분야의 당업자는, 첨부된 특허청구범위에 개시된 바와 같은 본 발명의 광범위한 사상 및 범주를 벗어나지 않으면서 변경 및 변형이 이루어질 수 있음을 이해할 것이다. 본 발명의 일 실시예는 컴퓨터 시스템과 함께 사용되는 컴퓨터 프로그램 제품으로서 구현될 수 있다. 프로그램 제품의 프로그램(들)은 (본 명세서에서 설명된 방법들을 포함하는) 실시예들의 기능들을 정의하고, 컴퓨터 판독가능한 다양한 기억 매체 상에 포함될 수 있다. 예시적인 컴퓨터 판독가능한 기억 매체는, (ⅰ) 정보가 영구적으로 저장되는 기입 불가능한 기억 매체(예를 들어, CD-ROM 드라이브에 의해 판독될 수 있는 CD-ROM 디스크들, 플래시 메모리, ROM 칩들 또는 임의의 유형의 고체 상태 비휘발성 반도체 메모리 등의 컴퓨터 내의 판독 전용 디바이스들), 및 (ⅱ) 변경가능한 정보가 저장되는 기입 가능한 기억 매체(예를 들어, 디스켓 드라이브 또는 하드 디스크 드라이브 내의 플로피 디스크들 또는 임의의 유형의 고체 상태 랜덤 액세스 반도체 메모리)를 포함하나, 이에 한정되는 것은 아니다. 따라서, 전술한 설명 및 도면들은 제한적인 의미보다는 예시적인 것으로 간주되어야 한다.
도 1a 및 도 1b는 본 발명의 하나 이상의 양태를 구현하도록 구성된 컴퓨터 시스템을 예시하는 블록도.
도 2a 및 도 2b는 각각, 본 발명의 하나 이상의 양태에 따른, 도 1a 및 도 1b의 컴퓨터 시스템을 위한 코어 로직의 블록도.
도 3은 본 발명의 하나 이상의 양태에 따른, 하이브리드 시스템 내의 통합 프로세서와 개별 프로세서 사이의 처리의 분배를 나타내는 개념도.
도 4는 본 발명의 하나 이상의 양태들에 따른, 버퍼들의 위치들, 화상 분석 결과들, 및 조정된 화상 설정들을 예시하는 하이브리드 시스템의 부분도.
도 5는 본 발명의 하나 이상의 양태들에 따른, 하이브리드 시스템을 이용하여 화상들을 처리하기 위한 방법 단계들의 흐름도.
<도면의 주요 부분에 대한 부호의 설명>
100: 시스템
104: 시스템 메모리
105: 코어 로직
106: 프런트 사이드 버스
108: 입력 디바이스
110: 디스플레이 디바이스
112: 개별 GPU
114: 시스템 디스크
116: 스위치
118: 네트워크 어댑터
120, 121: 애드 인 카드
150: 통합 GPU
200: 시스템 관리 유닛
205: 로컬 메모리
260: 프런트 버퍼
300: 비디오 어플리케이션
305: 사용자 모드 드라이버
310: 커널 모드 드라이버

Claims (10)

  1. 표시를 위한 화상들을 처리하기 위한 하이브리드 시스템으로서,
    메모리를 포함하는 개별 프로세서 - 상기 개별 프로세서는
    알파, 적색, 녹색, 청색(ARGB) 포맷으로 표현되는 화상 데이터를 생성하고,
    상기 메모리의 백 버퍼 내에 상기 화상 데이터를 저장하고,
    상기 화상 데이터를 제2 메모리 내에 저장된 제2 백 버퍼에 전달하도록 구성됨 - ; 및
    상기 제2 메모리에 연결된 통합 프로세서 - 상기 통합 프로세서는
    상기 화상 데이터를 처리함으로써 생성되는 화상 분석 결과들을 획득하고,
    표시를 위한 조정된 화상 데이터를 생성하기 위해 상기 제2 백 버퍼 내에 저장된 화상 데이터에 조정된 화상 설정을 적용하도록 구성되며, 상기 조정된 화상 설정은 상기 화상 분석 결과들에 기초하여 결정됨 -
    를 포함하는 하이브리드 시스템.
  2. 제1항에 있어서,
    상기 통합 프로세서는 상기 조정된 화상 설정을 생성하기 위해 상기 화상 분석 결과들을 분석하도록 구성되는 하이브리드 시스템.
  3. 제1항에 있어서,
    상기 통합 프로세서에 연결되고 상기 조정된 화상 설정을 생성하기 위해 상기 화상 분석 결과들을 분석하도록 구성된 중앙 처리 유닛(CPU)을 더 포함하는 하이브리드 시스템.
  4. 제1항에 있어서,
    상기 통합 프로세서는 디스플레이 디바이스의 백라이트 레벨을 수정하도록 구성되는 코어 로직 내에 포함되고, 상기 조정된 화상 설정은 상기 디스플레이 디바이스의 상기 백라이트 레벨에 기초하는 하이브리드 시스템.
  5. 제1항에 있어서,
    상기 통합 프로세서에 연결되는 디스플레이 디바이스를 더 포함하고, 상기 통합 프로세서는 상기 조정된 화상 데이터를 상기 디스플레이 디바이스에 출력하도록 더 구성되는 하이브리드 시스템.
  6. 제1항에 있어서,
    상기 개별 프로세서는 상기 화상 분석 결과들을 생성하기 위해 상기 백 버퍼 내에 저장된 화상 데이터를 처리하도록 더 구성되는 하이브리드 시스템.
  7. 제1항에 있어서,
    상기 통합 프로세서는 상기 화상 분석 결과들을 생성하기 위해 상기 제2 백 버퍼 내에 저장된 화상 데이터를 처리하도록 더 구성되는 하이브리드 시스템.
  8. 제1항에 있어서,
    상기 조정된 화상 설정은 상기 화상 데이터의 콘트라스트 레벨들의 수정을 지정하는 하이브리드 시스템.
  9. 제1항에 있어서,
    상기 조정된 화상 설정은 상기 화상 데이터의 컬러 채널들의 오버드라이빙(overdriving)을 지정하는 하이브리드 시스템.
  10. 제1항에 있어서,
    상기 통합 프로세서는 상기 제2 백 버퍼 내에 저장되는 화상 데이터를 스케일링(scaling)하도록 더 구성되는 하이브리드 시스템.
KR1020090109487A 2008-11-14 2009-11-13 하이브리드 시스템 구성을 이용한 화상 처리 KR101121595B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/271,710 US8054316B2 (en) 2008-11-14 2008-11-14 Picture processing using a hybrid system configuration
US12/271,710 2008-11-14

Publications (2)

Publication Number Publication Date
KR20100054741A KR20100054741A (ko) 2010-05-25
KR101121595B1 true KR101121595B1 (ko) 2012-02-28

Family

ID=42171663

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090109487A KR101121595B1 (ko) 2008-11-14 2009-11-13 하이브리드 시스템 구성을 이용한 화상 처리

Country Status (4)

Country Link
US (2) US8054316B2 (ko)
JP (1) JP5258061B2 (ko)
KR (1) KR101121595B1 (ko)
CN (1) CN101740004B (ko)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200820125A (en) * 2006-10-24 2008-05-01 Sunplus Technology Co Ltd Image processing method and system for personal computer
US8890876B1 (en) * 2007-12-21 2014-11-18 Oracle America, Inc. Microprocessor including a display interface in the microprocessor
US9336752B1 (en) * 2007-12-21 2016-05-10 Oracle America, Inc. Microprocessor including a display interface in the microprocessor
JP4623207B2 (ja) * 2008-11-27 2011-02-02 ソニー株式会社 表示制御装置、表示制御方法、およびプログラム
KR20100084338A (ko) * 2009-01-16 2010-07-26 삼성전자주식회사 이미지 드로잉 방법 및 장치
US8902149B2 (en) * 2009-06-17 2014-12-02 Sharp Laboratories Of America, Inc. Methods and systems for power control event responsive display devices
US8165724B2 (en) * 2009-06-17 2012-04-24 Sharp Laboratories Of America, Inc. Methods and systems for power-controlling display devices
US8730251B2 (en) * 2010-06-07 2014-05-20 Apple Inc. Switching video streams for a display without a visible interruption
US8321696B2 (en) * 2010-08-31 2012-11-27 Dell Products L.P. Method to support switchable graphics with one voltage regulator
US8860716B2 (en) * 2010-10-13 2014-10-14 3D Nuri Co., Ltd. 3D image processing method and portable 3D display apparatus implementing the same
KR101090981B1 (ko) * 2011-05-09 2011-12-08 주식회사 쓰리디누리 3차원 영상신호 처리방법 및 이를 구현하는 휴대형 3차원 디스플레이 장치
CN102789299B (zh) * 2011-05-18 2015-03-25 鸿富锦精密工业(深圳)有限公司 Cpu电压保护电路
US10817043B2 (en) * 2011-07-26 2020-10-27 Nvidia Corporation System and method for entering and exiting sleep mode in a graphics subsystem
CN103246342B (zh) * 2012-02-10 2016-03-02 联想(北京)有限公司 电子设备及其电源管理方法
US10216286B2 (en) * 2012-03-06 2019-02-26 Todd E. Chornenky On-screen diagonal keyboard
US9208751B2 (en) * 2012-08-24 2015-12-08 Samsung Electronics Co., Ltd. GPU-based LCD dynamic backlight scaling
KR20140030823A (ko) * 2012-09-04 2014-03-12 삼성전자주식회사 3차원 작업 부하를 이용하여 dvfs 정책을 수행하는 시스템-온 칩 및 이의 동작 방법
CN103777973A (zh) * 2012-10-24 2014-05-07 英业达科技有限公司 电脑装置及其唤醒方法
US20180197509A1 (en) * 2015-08-11 2018-07-12 Sony Corporation Information processing device, information processing method, and program
US11410264B2 (en) 2019-09-27 2022-08-09 Intel Corporation Switchable image source in a hybrid graphics systems
CN112925592A (zh) * 2019-12-05 2021-06-08 超威半导体公司 渲染主页面的内核软件驱动的颜色重新映射

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100677751B1 (ko) 2005-06-23 2007-02-02 삼성전자주식회사 다중 이미지 프로세서를 사용하는 디스플레이장치를 위한osd 구현장치 및 그 방법

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5502576A (en) * 1992-08-24 1996-03-26 Ramsay International Corporation Method and apparatus for the transmission, storage, and retrieval of documents in an electronic domain
JP3406965B2 (ja) * 2000-11-24 2003-05-19 キヤノン株式会社 複合現実感提示装置及びその制御方法
US7002664B2 (en) * 2004-01-21 2006-02-21 Silverbrook Research Pty Ltd Hybrid digital photofinishing system
US7520429B2 (en) * 2004-03-31 2009-04-21 United Parcel Service Of America, Inc. Systems and methods for an electronic programmable merchandise tag
US8036710B2 (en) * 2004-05-07 2011-10-11 Qualcomm, Incorporated Power-efficient multi-antenna wireless device
JP4161944B2 (ja) * 2004-07-01 2008-10-08 セイコーエプソン株式会社 表示コントローラ及び電子機器
US20100145562A1 (en) * 2004-12-01 2010-06-10 Ise Corporation Method of Controlling Engine Stop-Start Operation for Heavy-Duty Hybrid-Electric Vehicles
US7689331B2 (en) * 2004-12-01 2010-03-30 Ise Corporation Method of controlling engine stop-start operation for heavy-duty hybrid-electric and hybrid-hydraulic vehicles
JP4595801B2 (ja) * 2005-12-09 2010-12-08 セイコーエプソン株式会社 画像処理装置
US20070174411A1 (en) * 2006-01-26 2007-07-26 Brokenshire Daniel A Apparatus and method for efficient communication of producer/consumer buffer status
US7768517B2 (en) * 2006-02-21 2010-08-03 Nvidia Corporation Asymmetric multi-GPU processing
JP2007276425A (ja) * 2006-04-12 2007-10-25 Seiko Epson Corp プリンタ及び印刷方法
US20080030510A1 (en) * 2006-08-02 2008-02-07 Xgi Technology Inc. Multi-GPU rendering system
US8238624B2 (en) * 2007-01-30 2012-08-07 International Business Machines Corporation Hybrid medical image processing

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100677751B1 (ko) 2005-06-23 2007-02-02 삼성전자주식회사 다중 이미지 프로세서를 사용하는 디스플레이장치를 위한osd 구현장치 및 그 방법

Also Published As

Publication number Publication date
CN101740004A (zh) 2010-06-16
KR20100054741A (ko) 2010-05-25
JP5258061B2 (ja) 2013-08-07
US8054316B2 (en) 2011-11-08
US20100123725A1 (en) 2010-05-20
US8149234B2 (en) 2012-04-03
JP2010118062A (ja) 2010-05-27
US20120042190A1 (en) 2012-02-16
CN101740004B (zh) 2013-01-09

Similar Documents

Publication Publication Date Title
KR101121595B1 (ko) 하이브리드 시스템 구성을 이용한 화상 처리
US8294714B1 (en) Accelerated rendering with temporally interleaved details
US8451279B2 (en) System, method and computer program product for adjusting a refresh rate of a display
TWI524176B (zh) 用於顯示功率管理之方法及裝置
US10796478B2 (en) Dynamic rendering for foveated rendering
KR101713177B1 (ko) 가상 디스플레이들에 대한 시스템 및 방법
US9171350B2 (en) Adaptive resolution DGPU rendering to provide constant framerate with free IGPU scale up
JP4834472B2 (ja) 情報処理装置、動画再生方法、およびプログラム
US8994640B2 (en) Low motion blur liquid crystal display
US20100164968A1 (en) Hybrid graphics display power management
US8207977B1 (en) System, method, and computer program product for changing a refresh rate based on an identified hardware aspect of a display system
US20070030229A1 (en) Defective pixel management for flat panel displays
EP2426660A1 (en) Method and apparatus for optimizing data flow in a graphics co-processor
EP4226615A1 (en) Methods and apparatus for histogram based and adaptive tone mapping using a plurality of frames
US8284210B1 (en) Bandwidth-driven system, method, and computer program product for changing a refresh rate
CN112740278B (zh) 用于图形处理的方法及设备
US20140118406A1 (en) Display control device and data processing system
US20160358303A1 (en) Low-power state with a variable refresh rate display
US9250683B2 (en) System, method, and computer program product for allowing a head to enter a reduced power mode
US9412194B2 (en) Method for sub-pixel texture mapping and filtering
US11847995B2 (en) Video data processing based on sampling rate
US20150199833A1 (en) Hardware support for display features
CN117198233A (zh) 彩色电子墨水屏一体机画面显示方法及相关设备
JP2011234377A (ja) 情報処理装置、動画再生方法、およびプログラム

Legal Events

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

Payment date: 20150106

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160104

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170102

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180110

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190102

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20200102

Year of fee payment: 9