KR101672154B1 - 유휴 컴포넌트들의 전원을 차단함으로써 디스플레이 파이프라인에서 전력을 절감하는 방법 및 디바이스 - Google Patents

유휴 컴포넌트들의 전원을 차단함으로써 디스플레이 파이프라인에서 전력을 절감하는 방법 및 디바이스 Download PDF

Info

Publication number
KR101672154B1
KR101672154B1 KR1020157023014A KR20157023014A KR101672154B1 KR 101672154 B1 KR101672154 B1 KR 101672154B1 KR 1020157023014 A KR1020157023014 A KR 1020157023014A KR 20157023014 A KR20157023014 A KR 20157023014A KR 101672154 B1 KR101672154 B1 KR 101672154B1
Authority
KR
South Korea
Prior art keywords
image data
mode
display
scaling
data
Prior art date
Application number
KR1020157023014A
Other languages
English (en)
Other versions
KR20150113063A (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 KR20150113063A publication Critical patent/KR20150113063A/ko
Application granted granted Critical
Publication of KR101672154B1 publication Critical patent/KR101672154B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3265Power saving in display device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4007Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
    • 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
    • G09G5/363Graphics controllers
    • 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
    • G09G5/39Control of the bit-mapped memory
    • G09G5/391Resolution modifying circuits, e.g. variable screen formats
    • 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
    • G09G5/39Control of the bit-mapped memory
    • G09G5/395Arrangements specially adapted for transferring the contents of the bit-mapped memory to the screen
    • 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
    • G09G5/39Control of the bit-mapped memory
    • G09G5/399Control of the bit-mapped memory using two or more bit-mapped memories, the operations of which are switched in time, e.g. ping-pong buffers
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2330/00Aspects of power supply; Aspects of display protection and defect management
    • G09G2330/02Details of power systems and of start or stop of display operation
    • G09G2330/021Power management, e.g. power saving
    • 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/04Changes in size, position or resolution of an image
    • G09G2340/0407Resolution change, inclusive of the use of different resolutions for different screen areas
    • 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/04Changes in size, position or resolution of an image
    • G09G2340/045Zooming at least part of an image, i.e. enlarging it or shrinking it
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/12Frame memory handling
    • G09G2360/127Updating a frame memory using a transfer of data from a source area to a destination area
    • Y02B60/1242
    • Y02B60/1282
    • Y02B60/32
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Graphics (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)
  • Image Processing (AREA)
  • Image Generation (AREA)
  • Power Sources (AREA)

Abstract

디스플레이 파이프라인(200) 내의 전력 관리에 관한 기술들이 개시된다. 디스플레이 버퍼(114)는 데이터 전달 상호접속부를 통해 이미지 데이터(202)를 수신한다. 데이터 전달 상호접속부는, 스케일링 모드 또는 비-스케일링 모드에서 동작하는 디스플레이 파이프라인(200)에 기초하여 전원이 차단된다. 디스플레이 버퍼(114)는 이미지 데이터의 적어도 일부분을 디스플레이 파이프라인(200)의 하나 이상의 컴포넌트로 전송하고, 전송하는 것에 응답하여 데이터 전달 상호접속부에 전원이 투입된다. 일부 실시예들에서, 디스플레이 버퍼(114)는 복수의 라인 버퍼(310a 내지 310x)를 포함하고, 각각의 라인 버퍼는 각자의 이미지 소스 라인(312)을 저장하도록 구성된다. 그러한 실시예에서, 디스플레이될 이미지들을 렌더링하도록 구성된 디스플레이 파이프라인(200)은 디스플레이 버퍼(114)를 포함하고, 전원을 차단하는 것은 수신된 이미지 데이터가 두 개 이상의 이미지 소스 라인(312)을 포함하는 것에 응답하여 수행된다.

Description

유휴 컴포넌트들의 전원을 차단함으로써 디스플레이 파이프라인에서 전력을 절감하는 방법 및 디바이스{METHOD AND DEVICE FOR SAVING POWER IN A DISPLAY PIPELINE BY POWERING DOWN IDLE COMPONENTS}
본 개시 내용은 디스플레이 파이프라인에 관한 것으며, 보다 상세하게는 디스플레이 파이프라인과 연관된 전력 관리에 관한 것이다.
컴퓨터 시스템들의 전력 및 복잡성이 증가함에 따라, 그래픽 동작들이 전용 그래픽 렌더링 하드웨어를 사용하여 수행되는 것이 점점 늘고 있다. 따라서, 그래픽 처리 유닛(GPU)은 디스플레이를 통해 표시될 픽셀 데이터의 이미지들을 렌더링하기 위해 디스플레이 파이프 내에 다양한 내장된 그리고 구성가능한 구조물들을 포함할 수 있다. 이 구조물들은, 예를 들어, 래스터화, 오버레잉, 블렌딩, 클리핑, 디더링, 색 공간 변환, 프레임 회전, 프레임 버퍼링 등에 대응하는 다양한 파이프라인 단계들을 구현할 수 있다.
일부 경우들에서, 디스플레이 파이프라인은 또한 이미지들을, 예컨대, 출력 디바이스의 기본 해상도로 스케일링하기 위한 전용 구조물들을 포함할 수 있다. 구조물들은 이미지 데이터를 업스케일링 또는 다운스케일링하기 위해 선형 변환들을 수행하는 스케일링 동작들을 구현할 수 있다. 그러한 스케일링은 수평 및/또는 수직 스케일링을 포함할 수 있다.
본 개시 내용은 전력 관리가 디스플레이 버퍼의 동작에 기초하여 수행되는 실시예들을 기술한다. 일 실시예에서, 디스플레이 버퍼는, 소스 라인들을 사용하여 디스플레이를 위한 이미지들을 렌더링하는 디스플레이 파이프라인을 위해 메모리로부터 인출된 이미지 소스 라인들(예컨대, 수평 또는 수직 이미지 라인들)을 저장한다. 다양한 실시예들에서, 이미지 소스 라인들은, 디스플레이 파이프에 의해 수행되는 동작들에 기초하여, 개별 라인들 또는 복수의 라인의 블록들로서 인출될 수 있다. 예를 들어, 일 실시예에서, 디스플레이 파이프는, 그것이 스케일링하는 경우에는 보다 빈번하게 개별 라인들을 인출할 수 있고, 스케일링하지 않는 경우에는 덜 빈번하게 블록들을 인출할 수 있다.
다양한 실시예들에서, 하나 이상의 회로는, 디스플레이 버퍼에 대해 복수의 이미지 소스 라인들이 인출되고 있는지 또는 개별 이미지 소스 라인들이 인출되고 있는지에 따라 전력 관리될 수 있다. 일부 실시예들에서, 이들 회로는, 이미지 소스 라인들을 메모리로부터 디스플레이 버퍼로 전송하는 데이터 전달 상호접속부, 이미지 소스 라인들을 저장하는 메모리의 메모리 제어기 등을 포함할 수 있다. 따라서, 일 실시예에서, 이미지 소스 라인들의 블록들이 인출되고 있는 경우, 이들 회로는 그것들이 소스 라인들의 인출 사이에서 유휴일 때 전원이 차단될 수 있다(즉, 그들의 전력이 감소될 수 있다). 그것들은 이어서, 추가의 소스 라인들을 인출하기 위한 요청이 수신되면, 전원이 투입될 수 있다. 많은 경우들에서, 전력 관리 회로들은 이러한 방식으로, 성능을 충분히 저하시키지 않으면서 전력 절감을 달성할 수 있다.
도 1은 컴퓨터 시스템의 일 실시예를 예시하는 블록도이다.
도 2는 컴퓨터 시스템 내의 디스플레이 파이프의 일 실시예를 예시하는 블록도이다.
도 3은 디스플레이 파이프 내의 컴포넌트들의 일 실시예를 예시하는 블록도이다.
도 4는 이미지 데이터를 수신하기 위한 방법의 일 실시예를 예시하는 흐름도이다.
도 5는 데이터 전달 상호접속부의 전원을 차단하기 위한 방법의 일 실시예를 예시하는 흐름도이다.
도 6은 상이한 모드들에서 디스플레이 파이프를 동작하기 위한 방법의 일 실시예를 예시하는 흐름도이다.
본 명세서는 "일 실시예" 또는 "실시예"에 대한 참조를 포함한다. "일 실시예에서" 또는 "실시예에서"라는 문구들이 나타난다고 해서, 반드시 동일한 실시예를 지칭하는 것은 아니다. 특정 특징부들, 구조물들 또는 특징들이 본 개시 내용과 일관성을 유지하는 임의의 적합한 방식으로 조합될 수 있다.
본 개시 내용의 다양한 유닛들, 회로들 또는 다른 컴포넌트들이 과제 또는 과제들을 수행"하도록 구성되는" 것으로 설명 또는 청구될 수 있다. 이러한 문맥들에서, "~하도록 구성되는"은, 유닛들/회로들/컴포넌트들이 동작 중 그러한 과제 또는 과제들을 수행하는 구조물(예컨대, 회로)을 포함함을 나타냄으로써, 구조물을 내포하도록 사용된다. 따라서, 유닛/회로/컴포넌트는 특정된 유닛/회로/컴포넌트가 현재 작동 상태가 아닌(예컨대, 켜진 경우가 아닌) 경우에도 과제를 수행하도록 구성되는 것으로 칭해질 수 있는 것이다. 유닛들/회로들/컴포넌트들이 "~하도록 구성되는"이라는 문구와 함께 사용되는 경우, 이는 예를 들어, 동작을 구현하도록 실행 가능한 프로그램 명령어들을 저장한 메모리, 회로들 등과 같은 하드웨어를 포함한다. 유닛/회로/컴포넌트가 하나 이상의 과제를 수행하도록 "구성되는"이라는 표현은 그러한 유닛/회로/컴포넌트에 대해 미특허법 35 U.S.C. § 112, 여섯째 문단 규정이 적용되지 않도록 하는 의도의 명시이다.
이제 도 1을 참조하면, 시스템(100)의 일 실시예의 블록도가 도시된다. 예시된 바와 같이, 시스템(100)은 프로세서 유닛(108), 메모리(106), 솔리드 스테이트 디바이스(112), 디스플레이 유닛(110) 및 패브릭(102)과 같은 다양한 컴포넌트들을 포함한다. 시스템(100)은 임의의 적합한 컴퓨터 시스템에 대응할 수 있다. 따라서, 일부 실시예들에서, 시스템(100)은 모바일 디바이스(예컨대, 모바일 폰, 태블릿, 개인 휴대 정보 단말기(PDA) 등), 데스크톱 컴퓨터 시스템, 서버 시스템, 네트워크 디바이스(예컨대, 라우터, 게이트웨이 등), 마이크로제어기 등일 수 있다. 일 실시예에서, 시스템(100)의 복수의 컴포넌트는 시스템 온 칩(즉, 컴퓨터의 컴포넌트들을 단일 집적회로 내로 통합하는 집적회로) 내에 함께 포함될 수 있다.
특정 실시예들에서, 시스템(100)은 시스템(100)에 연결된 스크린 상에 비디오 및 이미지들을 렌더링하도록 구성될 수 있다. 따라서, 다양한 실시예들에서, 시스템(100)은 디스플레이를 렌더링하기 전에 그래픽 데이터를 처리 및 조작하도록 전용되는 특수 회로를 포함한다.
또한, 시스템(100)은 전력-관리되도록 구성될 수 있다. 따라서, 다양한 실시예들에서, 시스템(100)은 전원을 디스에이블할 수 있고/있거나 하나 이상의 회로 또는 패브릭(즉, 패브릭(102))이 전력-관리된 상태로 진입하게 할 수 있다. 여기서 사용된 바와 같이, 용어들 "전력-관리", "전원 차단", "수면 모드로 됨" 등은 회로의 전력 소모를 감소시키는 것을 지칭한다. 이러한 감소는 예를 들어, 클록 게이팅(즉, 회로의 클록 신호의 수신을 디스에이블함), 전력 게이팅(즉, 회로의 전압 공급을 디스에이블함) 등을 통해 달성될 수 있다. 특정 경우들에서, 회로를 전력 게이팅하는 것은 회로가 클록-게이팅되는 경우보다 더 큰 전력 절감을 가져올 수 있다. 회로의 전원 차단 또는 표준화된 버스는 회로의 기능이 디스에이블되는 것을 야기할 수 있다.
일부 실시예들에서, 전력-관리된 상태는 컴포넌트들(102 내지 114) 중 복수의 컴포넌트들 또는 전체로서의 시스템(100)에 적용 가능할 수 있다. 예를 들어, 시스템(100)이 모바일 폰 또는 태플릿인 일 실시예에서, 시스템(100)은, 모바일 폰 또는 태블릿이 유휴일 때(예컨대, 사용자의 주머니에 있을 때, 또는 사용자가 태블릿으로부터 떨어져 이동했을 때) 전력-관리 상태로 진입하도록 구성된다. 시스템(100)이 저-전력 상태인 동안, 그것은 아래에서 더 논의되는 바와 같이 패브릭(102), 메모리 제어기(104) 및 메모리(106)를 클록 게이팅 또는 전력 게이팅할 수 있다. 시스템(100)에 대한 전력 관리는 많은 이유들로 바람직할 수 있다. 일부 실시예들에서, 시스템(100)의 전력 관리는 전체적인 에너지 소모를 감소시키고, 배터리 수명을 연장하고, 냉각 요건들을 감소시키고, 에너지 및 냉각에 대한 동작 비용들을 감소시킬 수 있다.
예시된 바와 같이, 시스템(100)의 컴포넌트들은 패브릭(102)을 통해 연결된다. 용어 "패브릭"(또는 "데이터 전달 상호접속부")은 일반적으로 두 개 이상의 구조물들(예컨대, 디스플레이 처리 유닛(110) 및 메모리(106)) 사이에서 공유되는 물리적 접속부들의 세트를 지칭한다. 이들 물리적 접속부는 시스템(100) 상에 존재할 수 있는 디바이스들, 컴포넌트들 또는 유닛들 내에서 정보를 전달하기 위한 경로들을 제공한다. 따라서, 일부 실시예들에서, 패브릭(102)은 하나 이상의 버스, 제어기, 상호접속부, 및/또는 브릿지를 포함할 수 있다. 일부 실시예들에서, 패브릭(102)은 단일 통신 프로토콜을 구현할 수 있고, 패브릭(102)에 연결된 요소들은 내부적으로 단일 통신 프로토콜로부터 다른 통신 프로토콜들로 전환할 수 있다. 예를 들어, 일 실시예에서, 패브릭(102)은 노스브릿지(Northbridge) 및 사우스브릿지(Southbridge)를 포함한다. 하기에서 더 논의되는 바와 같이, 다양한 실시예들에서, 패브릭(102)은, 유휴인 경우에 전원을 차단하고, 통신을 수신하면 전원을 다시 투입하도록 구성될 수 있다.
다양한 실시예들에서, 프로세서 유닛(108)은 디스플레이 처리 유닛(110), 메모리 제어기(104), 메모리(106) 및 저장 디바이스(112)의 동작을 제어하는 프로그램 명령어들(에컨대, 드라이버들)을 실행할 수 있다. 그러한 실시예에서, 프로세서 유닛(108)은 또한, 시스템(100) 내의 하나 이상의 컴포넌트로 전달될 데이터를 제공할 수 있는 프로그램 명령어들(예컨대, 애플리케이션들)을 실행할 수 있다. 프로세서 유닛(108)은 임의의 명령어 세트 아키텍처를 구현할 수 있으며, 그 명령어 세트 아키텍처 내에 정의된 명령어들을 실행하도록 구성될 수 있다. 프로세서 유닛(108)은 스칼라, 수퍼스칼라, 파이프라인들, 수퍼파이프라인형, 비순차형, 순차형, 추측형, 비추측형(non-speculative) 등 또는 이들의 조합을 포함하는 임의의 마이크로아키텍처를 채택할 수 있다. 프로세서 유닛(108)은 회로를 포함할 수 있으며, 선택적으로는 마이크로코딩 기술들을 구현할 수 있다. 더욱이, 프로세서 유닛(108)은 하나 이상의 캐시 레벨을 포함할 수 있다. 일부 실시예에서, 프로세서 유닛(108)은 복수의 프로세서일 수 있다.
일 실시예에서, 메모리(106)는 이미지 디스플레이를 렌더링하는 데 사용될 수 있는 이미지 데이터를 저장한다. 이미지 데이터는 디스플레이 유닛 상의 각각의 특정 픽셀에 대한 이미지 값을 특정하는 데이터의 비트들을 포함할 수 있다. 이미지 데이터는 본 명세서에서 비트맵들로서 또한 지칭될 수 있는 래스터 그래픽을 포함할 수 있다. 래스터 그래픽 데이터는 디스플레이 매체를 통해 볼 수 있는 개별 픽셀들의 격자로서 저장 및 조작될 수 있다. 비트맵은 픽셀 단위로 그것의 폭 및 높이에 의해 특징지어질 수 있다. 통상적으로 컬러 비트맵은 RGB(즉, 적색, 녹색, 청색) 색 공간에서 정의될 수 있고, 그것은 픽셀당 투명도 값들과 같은 추가의 데이터를 저장하기 위해 사용되는 알파 채널을 추가로 포함할 수 있다. 다른 실시예들에서, 이미지 데이터는 sRGB, ARGB(Adobe RGB), CMYK(cyan magenta yellow key), YCBCR, CIE 1931 XYZ 등과 같은 다른 색 공간들을 사용하여 정의될 수 있다. 일부 실시예들에서, 이미지 데이터는 부표본화된 채도(subsampled chroma)를 포함할 수 있다. 예를 들어, YCBCR 4:2:2 색 공간의 경우, 두 개의 수평 인접 픽셀은 휘도(즉, 광 세기)와 관련된 그들 자신의 각자의 Y 성분들을 포함할 수 있고, CB 및 CR 채도 성분들을 공유할 수 있다. 메모리(106)는 비디오들, 그림들, 및 디스플레이 유닛 상에 디스플레이될 수 있는 다른 유형의 그래픽 이미지들과 같은 다양한 유형의 이미지 데이터를 저장할 수 있다.
이미지 데이터는 컴퓨터 모니터, 텔레비전 또는 폰 모니터와 같은 디스플레이 유닛으로 렌더링될 수 있다. 디지털 이미지 데이터를 디스플레이하도록 구성되는 임의의 이미징 디바이스가 사용될 수 있다. 이미지 디바이스는 디스플레이 처리 유닛(110)에 의해 판독된 데이터를 디스플레이하도록 구성될 수 있으며, 이는 하기에서 더 논의된다.
메모리(106)는 임의의 유형의 메모리, 예컨대 동적 랜덤 액세스 메모리(DRAM), SDRAM(synchronous DRAM), 더블 데이터 레이트(double data rate)(DDR, DDR2, DDR3 등), SRAM(mDDR2 등과 같은 모바일 버전의 SDRAM, 및/또는 LPDDR2 등과 같은 저-전력 버전의 SDRAM을 포함), RAMBUS DRAM(RDRAM), 정적 RAM(SRAM) 등일 수 있다. 하나 이상의 메모리 디바이스는 단일 인라인 메모리 모듈(SIMM)들, 듀얼 인라인 메모리 모듈(DIMM)들 등과 같은 메모리 모듈들을 형성하기 위하여 회로 보드 상에 연결될 수 있다. 일부 실시예들에서, 메모리(106)는 칩 온 칩(chip-on-chip) 구성, 패키지 온 패키지(package-on-package) 구성 또는 멀티칩 모듈 구성에서 집적회로로 실장될 수 있다.
다양한 실시예들에서, 메모리(106)는 메모리 제어기(104)에 의해 제어될 수 있다. 따라서, 메모리 제어기(104)는 유닛들(108, 110)로부터 패브릭(102)을 통해 수신된 데이터 요청들에 응답하여 판독 및 기록 동작들의 수행을 용이하게 할 수 있다. 메모리 제어기(104)는 메모리 리프레싱, 메모리 행-주소 및 열-주소 스트로브 동작들 등과 같은 다양한 메모리 물리적 인터페이스(physical interface; PHY) 기능들을 수행할 수 있다. 하기에 논의된 바와 같이, 메모리 제어기(104)는 또한 메모리(106)를 전력-관리하는 데 사용될 수 있다. 이미지 데이터는 패브릭(102)을 통해 액세스되고 디스플레이 처리 유닛(110)으로 전달될 수 있으며, 이는 하기에서 더 논의되는 바와 같다.
다양한 실시예들에서, 저장 디바이스(112)는 프로세서 유닛(108)에 의해 실행 가능한 프로그램 명령어들(예컨대, 애플리케이션들)을 저장할 수 있다. 특정 실시예들에서, 저장 디바이스(112)는 복수의 이미지 데이터를 저장할 수 있으며, 복수의 이미지 데이터는 메모리(106)로 전달될 수 있거나(즉, 그 데이터에 대한 미래의 요청들이 더욱 빨리 제공되도록) 또는 디스플레이 처리 유닛(110)으로 직접 전달될 수 있다. 저장 디바이스(112)는 임의의 적합한 유형의 비-휘발성 메모리 하드 디스크 드라이브(예컨대, 소형 컴퓨터 시스템 인터페이스(Small Computer System Interface; SCSI) 드라이브, 직렬 AT 어태치먼트(Serial AT Attachment; SATA) 드라이브 등), 테이프 드라이브, 광 드라이브(예컨대, CD 드라이브, DVD 드라이브, Blu-Ray 드라이브 등) 등일 수 있다. 저장 디바이스(112)는 또한 솔리드 스테이트 디바이스(SSD), 예컨대 NAND 플래시 메모리, NOR 플래시 메모리, nano RAM("NRAM") 등을 포함하는 것일 수 있다.
다양한 실시예들에서, 디스플레이 처리 유닛(110)은 시스템(100)이 디스플레이 유닛 상에 데이터를 렌더링할 수 있게 이미지 데이터를 처리하도록 구성된다. 디스플레이 처리 유닛(110)은 래스터화, 오버레잉, 블렌딩, 클리핑, 디더링, 색 공간 변환, 프레임 회전 및 프레임 버퍼링과 같은 다양한 파이프라인 단계들을 포함하는 디스플레이 파이프를 포함할 수 있다. 디스플레이 처리 유닛(110)은 또한 이러한 단계들 중 하나 이상에 의해 사용되는 이미지 데이터를 버퍼링하는 하나 이상의 디스플레이 버퍼(114)를 포함한다. 다양한 실시예들에서, 데이터는 이미지 소스 라인들로서 버퍼링될 수 있다. 본 명세서에서 사용되는 바와 같이, "이미지 소스 라인"은 이미지의 수직 또는 수평 라인에 대응하는 이미지 데이터(즉, 픽셀들의 수평 또는 수직 라인에 대응하는 데이터)를 지칭한다. 본 개시 내용을 위해, 이 용어는 전체 라인(예컨대, 이미지의 전체 폭에 걸쳐 이어지는 수평 라인) 또는 라인의 일부분(예컨대, 수평 라인 내의 9개 픽셀)을 지칭할 수 있다. 따라서, 다양한 실시예들에서, 디스플레이 버퍼(114)에 저장된 소스 라인들은 전체 라인이 아니라 이미지 내의 부분 라인에 대응할 수 있다.
다양한 실시예들에서, 디스플레이 처리 유닛(110)은, 이미지 데이터를 위한 요청들을 패브릭(102)을 통해 메모리(106)로 송신함으로써, 버퍼(114)에 저장할 이미지 데이터를 인출한다. 특정 실시예들에서, 시스템(100) 내의 회로는, 디스플레이 처리 유닛(110)에 의해 이미지 데이터를 인출하는 것에 기초하여 전력-관리될 수 있다. 일 실시예에서, 이 회로는 패브릭(102)을 포함한다. 따라서, 패브릭(102)은 하나 이상의 버스 제어기, 제어 라인들, 데이터 라인들, 및/또는 클록 신호 라인들로의 전력을 감소시킴으로써 전력 관리될 수 있다. 일부 실시예들에서, 패브릭(102) 전체로의 전력이 감소될 수 있으며; 다른 실시예들에서는, 단지 일부분 - 예컨대, 디스플레이 처리 유닛(110)과 메모리 제어기(104) 사이에서 상호접속하는 제어기들 및 라인들 - 으로의 전력이 감소될 수 있다. 일 실시예에서, 메모리 제어기(104) 또한 전력 관리될 수 있다 - 예컨대, 유닛(104)은 클록 게이팅 및/또는 전력 게이팅될 수 있다.
일부 실시예들에서, 유닛들(110, 104)은 이미지 데이터의 인출에 기초하여 전력 관리될 수 있다. 일 실시예에서, 데이터가 인출되는 속도는 유닛들의 전원을 차단할지 여부를 결정하는 데 있어서의 한 인자이다. 예를 들어, 다양한 실시예들에서, 디스플레이 처리 유닛(110)은, 디스플레이 처리 유닛(110)에 의해 수행되는 동작들에 따라, 개별 이미지 소스 라인들을 빈번하게 인출할 수 있거나(예컨대, 개별 라인이 매 10 ms당 인출될 수 있음) 또는 복수의 이미지 소스 라인의 블록들을 덜 빈번하게 인출할 수 있다(예컨대, 블록이 매 100 ms당 인출될 수 있음). (예를 들어, 도 2 및 도 3에 관하여 논의되는 바와 같이, 일 실시예에서, 개별 이미지 소스 라인들 또는 라인들의 블록들은, 디스플레이 처리 유닛(110)이 이미지 데이터를 스케일링하는지 여부에 기초하여 인출될 수 있다.) 다양한 실시예들에서, 디스플레이 처리 유닛(110)이 복수의 이미지 소스 라인의 블록들을 인출하는 경우, 패브릭(102) 및 메모리 제어기(104)는 데이터의 다른 블록이 인출되기 전에 얼마간 유휴일 수 있다. 결과적으로, 그러한 실시예에서, 패브릭(102) 및 메모리 제어기(104)의 전원은 차단될 수 있다.
특정 실시예들에서, 패브릭(102) 및/또는 메모리 제어기(104)의 전원을 차단하는 결정은, 특정 유닛이 얼마나 오래 유휴였는지를 추적하는 타이머에 기초할 수 있다. 일 실시예에서, 타이머가, 유닛(예컨대, 패브릭(102) 또는 메모리 제어기(104))이 할당된 시간 동안 유휴였음을 나타내면, 제어 로직은 그 유닛으로 하여금 전원이 차단되게 할 수 있다. 그와 같이, 디스플레이 처리 유닛(110)이 데이터를 버스트로 인출하여, 인출들 사이에서 패브릭(102) 및 메모리 제어기(104)를 유휴 상태로 둘 때, 유닛들(102, 104)은 특정한 임계치를 충족하는 타이머에 응답하여 전원이 차단될 수 있다. 예를 들어, 제어 로직은, 타이머가 100 ms 이상의 유휴 기간을 나타낸 후, 패브릭(102)의 전원을 차단할 수 있다. 일 실시예에서, 패브릭(102) 및/또는 메모리 제어기(104)로의 전력이 감소되면, 전력은 임의의 유닛(예컨대, 디스플레이 처리 유닛(110) 또는 프로세서 유닛(108))으로부터의 데이터에 대한 후속 요청(예컨대, 판독 또는 기록 요청)에 응답하여 복귀될 수 있다.
이제 도 2를 참조하면, 디스플레이 처리 유닛(110)의 블록도가 도시되어 있다. 앞서 논의한 바와 같이, 다양한 실시예들에서, 디스플레이 처리 유닛(110)은 시스템(100)이 디스플레이 유닛 상에 데이터를 렌더링할 수 있기 위해 이미지 데이터를 인출 및 처리하도록 구성될 수 있다. 예시된 실시예에서, 디스플레이 처리 유닛(110)은 이미지 렌더링을 용이하게 하는 디스플레이 파이프(200)를 포함한다. 디스플레이 파이프(200)는 이어서 디스플레이 버퍼들(114, 115), 스케일링 유닛들(210, 211), 및 블렌딩 유닛(230)을 포함한다. 일부 실시예들에서, 디스플레이 버퍼(114) 및 스케일링 유닛(210)은 각각 디스플레이 버퍼(115) 및 스케일링 유닛(211)과 일치한다. (그와 같이, 유닛들(114, 210)에 적용 가능한 임의의 설명은 유닛들(115, 211)에 유사하게 적용 가능하다.) 도시되지 않았지만, 디스플레이 파이프(200)는 다양한 실시예들에서 복수의 추가적인 파이프라인 단계를 포함할 수 있다.
앞서 언급한 바와 같이, 일 실시예에서, 디스플레이 버퍼(114)는 메모리(106)로부터 인출된 이미지 데이터(202)를 저장하도록 구성된다. 특정 실시예들에서, 이미지 데이터(202)는 대안적으로 저장 디바이스(112)로부터 인출될 수 있다. 도 3에 관하여 기술되는 바와 같이, 다양한 실시예들에서, 이미지 데이터(202)는 디스플레이 버퍼(114)의 라인 버퍼들 내에 이미지 소스 라인들로서 저장된다. 본 명세서에서 사용되는 바와 같이, 용어 "라인 버퍼"는 개별 이미지 소스 라인(또는 소스 라인의 일부분)을 저장하도록 구성된 회로를 지칭한다. 또한 논의되는 바와 같이, 디스플레이 버퍼(114)는, 디스플레이 처리 유닛(110)이 동작하고 있는 모드(예컨대, 스케일 또는 비-스케일 모드)에 의존하여, 한 번에 하나의 이미지 소스 라인을 인출할 수 있거나 복수의 이미지 소스 라인의 블록들을 인출할 수 있다.
예시된 실시예에서, 스케일링 유닛(210)은 버퍼(114)로부터 수신된 이미지 데이터(202)를 스케일링하도록 구성된다. 일반적으로, 스케일링은 이미지의 픽셀 해상도를 변경하는 것을 지칭할 수 있다. 스케일링 유닛(210)에 의해 수행되는 스케일링은 다운스케일링, 업스케일링, 수직 스케일링 및/또는 수평 스케일링을 포함할 수 있다. 예를 들어, 폭이 200 픽셀이고 높이가 100 픽셀인 해상도를 갖는 이미지는 폭이 100 픽셀이고 높이가 75 픽셀인 해상도를 갖도록 수평 및 수직으로 다운스케일링될 수 있다. 일 실시예에서, 스케일링 유닛(210)은, 스케일링된 이미지에 대한 출력 픽셀 성분들(예컨대, R, G, B 성분들)을 원래 이미지 내의 이웃 픽셀들의 성분들에 기초하여 생성함으로써, 그러한 이미지의 해상도를 감소시킬 수 있다. 다음 실시예로서, 스케일링은, 애플리케이션이 디스플레이 유닛의 기본 해상도와 일치하지 않는 이미지 데이터를 생성할 때(예컨대, 원래 컴퓨터 스크린 상에 웹 컨텐츠를 디스플레이하도록 포맷된 웹 브라우저가, 대신에 폰 상에서 보여짐), 수행될 수 있다.
일부 경우들에서, 그러나(예컨대, 애플리케이션이 기본 해상도로 포맷되는 경우), 모든 이미지 소스 라인들이 스케일링되지는 않는다. 따라서, 다양한 실시예들에서, 디스플레이 파이프(200)는 "스케일 모드" 또는 비-스케일 모드"에서 동작하도록 구성될 수 있다. 일 실시예에서, 디스플레이 파이프(200)가 스케일 모드에서 동작하고 있는 경우, 이미지 소스 라인들은 블렌딩 유닛(230)으로 전송되기 전에 스케일링 유닛(210)에 의해 스케일링된다. 스케일 모드에 있는 동안, 디스플레이 버퍼(114)는 또한 메모리로부터 한 번에 하나씩 개별 이미지 소스 라인들을 인출할 수 있다. 비-스케일 모드에서, 이미지 소스 라인들은 블렌딩 유닛(230)으로 전송되기 전에 스케일링되지 않는다. 특정 실시예들에서, 비-스케일 모드에서 동작하고 있는 경우, 디스플레이 버퍼(114)는 이미지 소스 라인들을 블록으로 인출할 수 있다. (즉, 한 번에 두 개 이상의 이미지 소스 라인).
예시된 실시예에서, (스케일링된 그리고 스케일링되지 않은) 이미지 소스 라인들은 블렌딩 유닛(230)으로 전송될 수 있다(또는, 다른 실시예들에서, 파이프라인 내의 상이한 단계들로 전송됨). 추가적인 이미지 데이터는 이미지 데이터(202)와 함께 디스플레이될 다른 이미지에 관한 정보(예컨대, 투명도 또는 위치 설정과 관련된)를 포함할 수 있다. 이미지 소스 라인들 및 추가적인 이미지 데이터는 최종 이미지(예컨대, 데스크톱 배경과 조합된 아이콘들)를 렌더링하기 위해 블렌딩 유닛(230)에 의해 다양한 방법들로 조합될 수 있다.
이제 도 3을 참조하면, 디스플레이 버퍼(114) 및 스케일링 유닛(210)의 블록도가 더욱 상세히 도시되어 있다. 도시된 바와 같이, 디스플레이 파이프(200)는 스케일링과 관련된 회로(즉, 스케일링 유닛(210)), 디스플레이 버퍼(114), 스케일 모드 레지스터(340) 및 멀티플렉서(350)를 포함한다. 예시된 실시예에서, 디스플레이 버퍼(114)는 또한 복수의 라인 버퍼(310a 내지 310x)(일 실시예에서, 9개의 버퍼(310)) - 각각의 라인 버퍼는 각자의 이미지 소스 라인을 저장하도록 구성됨 -, 및 버퍼 판독 로직(320)을 포함한다. 논의되는 바와 같이, 다양한 실시예들에서, 회로들(310 내지 350)은 스케일 및 비-스케일 모드들에 대한 지원을 구현하는 데 사용될 수 있다.
예시된 실시예에서, 디스플레이 파이프(200)가 동작하는 모드는 하나 이상의 비트에 의해 나타내어지는 스케일 모드 레지스터(340)의 값에 의해 제어될 수 있다. 다양한 실시예들에서, 운영체제는 레지스터(340) 내의 값을 설정할 수 있다(즉, 디스플레이 파이프(200)가 어느 모드에서 동작해야 할지를 제어함). 다양한 실시예들에서, 비-스케일 모드에 있는 동안, 버퍼 판독 로직(320)은 그것이 선택적으로 한 번에 하나의 라인 버퍼(310a 내지 310x)를 판독하도록 구성될 수 있다. 그와 같이, 디스플레이 버퍼(114)는, 각각의 라인 버퍼가 버퍼 판독 로직(320)에 의해 판독될 때까지, 버퍼들(310a 내지 310x) 내에 모든 이미지 소스 라인들을 보유하도록 구성될 수 있다. 후속적으로, 디스플레이 버퍼(114)는 버퍼 판독 로직(320)에 의해 판독될 이미지 소스 라인들의 다른 블록을 인출할 수 있다.
스케일 모드에서, 버퍼 판독 로직(320)은 모든 라인 버퍼들(310a 내지 310x)을 동시에 판독하도록 구성될 수 있다. 각각의 판독 후에, 디스플레이 버퍼(114)는 각각의 이미지 소스 라인을 인접한 라인 버퍼로 시프트 다운하고(shift down)(예컨대, 이미지 소스 라인을 라인 버퍼(310a)로부터 라인 버퍼(310b)로 전달함), 새로운 이미지 소스 라인을 인출하도록(예컨대, 라인 버퍼(310a)를 새로운 이미지 소스 라인으로 채움) 구성될 수 있다. 따라서, 디스플레이 버퍼(114)는, 각각의 판독이 버퍼 판독 로직(320)에 의해 수행된 후 새로운 이미지 소스 라인을 인출하도록 구성될 수 있다.
스케일 모드에서, 이미지 소스 라인들은 스케일링 경로(322)를 통해 스케일링 유닛(210)으로 전달된다. 예시된 바와 같이, 스케일링 유닛(210)은 수평 스케일러(332) 및 수직 스케일러(334)를 포함한다. 수평 스케일러(332)는 픽셀들의 수평 라인들을 처리하도록 구성될 수 있고; 유사하게, 수직 스케일러(334)는 픽셀들의 수직 라인들을 처리하도록 구성될 수 있다. 예시된 바와 같이, 스케일링 유닛(210)은 원래 이미지 내의 이웃 픽셀들의 특징들에 기초하여 스케일링된 이미지 내의 출력 픽셀 성분들을 생성하도록 구성될 수 있다. 예를 들어, 스케일링 경로(322)가 9개의 이미지 소스 라인을 (즉, 라인 버퍼들(310a 내지 310x)로부터) 전송하는 경우, 이 소스 라인들은 서로 인접하는 픽셀들의 9개 라인을 나타낸다. 그와 같이, 수평 스케일러(332) 및 수직 스케일러(334)는 공식들의 임의의 조합을 9개의 이미지 소스 라인에 적용하여 스케일링된 라인(335)을 출력할 수 있다.
비-스케일 모드에서, 이미지 소스 라인들은 바이패스 경로(324)를 통해 멀티플렉서(350)로 전달될 수 있다. 그와 같이, 이미지 소스 라인들은 스케일링되지 않는다. 예시된 바와 같이, 스케일 모드 레지스터(340)는, 디스플레이 파이프(200)가 어떤 모드에서 동작하도록 구성되는지를, 멀티플렉서(350)에 나타낼 수 있다. 그에 따라 멀티플렉서(350)는 스케일링된 라인(335) 또는 바이패스 경로(324)를 선택하고, 이미지 데이터를 블렌딩 유닛(230) 또는 파이프라인 내의 다른 단계로 출력할 수 있다.
디스플레이 파이프(200)가 부표본화된 채도를 이용해 엔코딩된 이미지 데이터 상에서 동작하고 있는 특정 실시예들에서, 디스플레이 파이프(200)는 스케일 모드 및 비-스케일 모드의 기능을 통합하는 혼성 모드에서 동작할 수 있다. 이 혼성 모드에서, 이미지 데이터는 하나의 차원(예컨대, 수평 차원)에서 스케일링되고 다른 차원에서는 스케일링되지 않을 수 있다. 일 실시예에서, 그러한 모드에서 동작할 때, 디스플레이 파이프(200)는 스케일링 경로(322)를 통해 이미지 데이터를 전송할 수 있다. 비-스케일링 모드와 같이, 개별 소스 이미지 라인들은 라인 버퍼들(310)로부터 (즉, 한 번에 하나씩) 판독되어, 복수의 이미지 소스 라인의 블록들이 메모리(106)로부터 판독되는 것을 가능하게 할 수 있다. 스케일링 유닛에 도착하면, 이미지 소스 라인들은 관련 있는 스케일러(예컨대, 수평 스케일러(332) 또는 수직 스케일러(334))에 의해 처리될 수 있고 관련 없는 스케일러는 바이패스할 수 있다. 예를 들어, YCBCR 4:2:2 색 공간의 경우, 데이터가 RGB 색 공간으로 전환되고 있는 경우 두 개의 수평으로 인접한 픽셀들이 CB 및 CR 채도 성분들을 공유하므로, 수평 업스케일링이 수행될 수 있다. 그러한 상황에서, 수평 스케일러(332)는, 수직 스케일러(334)가 바이패스되는 동안 업스케일링을 수행할 수 있다. 다양한 실시예들에서, 스케일러들(332 또는 334) 중 하나를 바이패스하는 것은, 바이패스된 스케일러가 전력 게이팅 및/또는 클록 게이팅될 수 있으므로, 추가적인 전력 절감을 제공할 수 있다.
앞서 논의된 바와 같이, 비-스케일 모드에서, 버퍼 판독 로직(320)은 각각의 라인 버퍼(310a 내지 310x)를 한 번에 하나씩 선택적으로 판독하도록 구성될 수 있다. 이 모드에서, 디스플레이 버퍼(114)는 이미지 소스 라인 데이터의 블록들을 버스트로 (이미지 소스 라인을 연속적으로 인출하는 것과는 대조적으로) 인출할 수 있다. 이것은 패브릭(102) 및 메모리 제어기(104)를 인출들 사이에서 유휴 상태로 둔다. 그와 같이, 패브릭(102) 및 메모리 제어기(104)는 특정한 임계치를 충족하는 유휴 시간에 응답하여 전원이 차단될 수 있다. 이것은 상당한 전력 절감을 가져온다. 추가적으로, 바이패스 경로(324)를 통해 스케일링 유닛(210)을 바이패스하거나(예컨대, 비-스케일 모드에서) 또는 개별 스케일러들(332, 334)을 바이패스함으로써(예컨대, 혼성 모드에서), 추가적인 전력 절감이 달성될 수 있다(예컨대, 스케일링 유닛(210) 또는 개별 스케일러(332, 334)가 사용되지 않을 때 전원이 차단될 수 있음). 특정 실시예들에서, 스케일 모드에서 패브릭(102)은 인출 동작들 사이에서 전원이 차단될 수 있지만, 패브릭(102)은 비-스케일 모드에서 동작할 때보다는 더 짧은 간격들 동안 전원이 차단될 수 있다.
이제 도 4로 넘어가면, 시스템 내에서 비-스케일 모드를 구현하기 위한 방법의 일 실시예를 예시하는 흐름도가 도시된다. 방법(400)은 시스템(100)과 같은 하나 이상의 회로의 전력 관리를 지원하는 임의의 적합한 시스템에 의해 수행될 수 있다. 다양한 실시예들에서, 도 4에 도시된 블록들 중 일부는 동시에 수행되거나, 도시된 바와는 상이한 순서로 수행되거나, 또는 생략될 수 있다. 추가적인 방법 요소들이 또한 원하는 경우 수행될 수 있다.
방법(400)은 단계(402)에서 시작되고, 프레임의 초반에, 스케일 모드에서 동작할지 여부에 관한 결정이 결정 블록(404)에서 이루어진다. 만약 예이면, 흐름은 스케일 모드에서 동작하도록 진행한다. 만약 아니오이면, 흐름은 단계(410)에서 시작하는 비-스케일 모드에서 동작하도록 진행한다. 단계(410)에서 유닛(예컨대, 디스플레이 파이프(200))은 데이터 전달 상호접속부(예컨대, 패브릭(102))를 통해 데이터(예컨대, 이미지 데이터(202))를 수신한다. 특정 실시예들에서, 단계(410)는, 디스플레이 파이프(200)가 비-스케일 또는 혼성 모드에서 동작하고 있는 동안 발생할 수 있다. 디스플레이 파이프는 그에 따라 (예컨대, 스케일 모드 레지스터(340) 내에 설정된 비트로부터) 지시(indication)를 수신하고, 이미지 소스 라인들을 블록으로 인출하도록 진행할 수 있다. 결정 블록(415)에서, 수신된 이미지 데이터의 양이 데이터의 임계량보다 더 큰 지 여부(예컨대, 두 개 이상의 소스 라인이 인출됨)에 대한 결정이 이루어진다. 앞서 논의한 바와 같이, 디스플레이 파이프가 비-스케일(또는 혼성) 모드에서 동작하도록 구성됨에 따라, 이미지 데이터의 임계량이 수신되면, 디스플레이 파이프는 각각의 라인 버퍼(예컨대, 310a 내지 310x)를 선택적으로 판독하도록 진행한다. 데이터의 임계량이 수신되지 않는 경우, 흐름은 단계(410)로 다시 진행하고, 이 지점에서, 디스플레이 파이프는 임계량이 수신될 때까지 계속해서 이미지 데이터를 인출할 수 있다.
앞서 설명한 바와 같이, 결정 블록(415)에서, 데이터의 임계량이 수신되는 경우, 데이터 전달 상호접속부 및 다른 유닛들(예컨대, 메모리 제어기(104))은, 디스플레이 파이프가 이미지 데이터를 판독하는 동안 유휴인 채로 유지될 수 있다. 앞서 논의한 바와 같이, 일부 실시예들에서, 단계(415)는, 데이터 전달 상호접속부가 시간의 임계량 동안 유휴였는지 여부를 결정하기 위하여 타이머를 체크하는 것을 수반한다. 다른 실시예들에서, 데이터의 임계량이 수신되었다는 지시가 디스플레이 파이프(200)에 의해 송신될 수 있다. 따라서, 데이터 전달 상호접속부의 전원이 차단되어야 한다는 지시 또는 결정이 이루어지면, 단계(420)에서 데이터 전달 상호접속부의 전원이 차단된다. 단계(420)는 또한 메모리 제어기(104)와 같은 다른 회로로의 전력을 감소시키거나 전원을 차단하는 것을 포함할 수 있다. 다른 실시예들에서, 데이터 전달 상호접속부의 일부분은(그것의 모든 것과는 대조적으로) 전원이 차단될 수 있다.
단계(425)에서 디스플레이 파이프는 수신된 데이터를 출력부로 전송한다. 특정 실시예들에서, 이것은 블렌딩 유닛(예컨대, 블렌딩 유닛(230))일 수 있거나 파이프라인 내의 임의의 다른 단계로 일 수 있다. 이 지점에서, 디스플레이 파이프는 보다 많은 데이터를 인출할 수 있다. 그와 같이, 이미지 데이터를 전송하는 것에 응답하여, 단계(430)에서, 더 많은 데이터가 인출될 수 있도록 데이터 전달 상호접속부로 전원이 투입된다. 단계(435)에서, 프레임의 끝에 도달했는지에 관한 결정이 이루어진다. 만약 예이면, 흐름은 단계(402)로 다시 진행한다. 만약 아니오이면, 흐름은 단계(410)로 다시 진행하고, 여기서 더 많은 데이터가 데이터 전달 상호접속부(410)을 통해 수신된다. 앞서 논의한 바와 같이, 특정 실시예들에서, 스케일 모드에서 동작하는 것은, 디스플레이 파이프가 한 번에 하나의 이미지 소스 라인을 연속적으로 인출하는 것으로 인해, 인출들 사이에서 패브릭의 전원이 차단되는 것을 방지한다. 그러나, 다른 실시예들에서, 패브릭은 스케일 모드에서 여전히 전원이 차단될 수 있지만, 비-스케일 모드에서 발생하는 것보다 상당히 더 적은 시간 동안만 차단될 수 있다.
이제 도 5로 넘어가면, 데이터 전달 상호접속부의 전원을 차단하기 위한 방법의 일 실시예를 예시하는 흐름도가 도시된다. 방법(400)과 유사하게, 방법(500)은 전력 관리를 지원하는 임의의 적합한 시스템에 의해 수행될 수 있다. 다양한 실시예들에서, 방법(500)은 이미지 데이터를 인출하기 위해 방법(400)을 수행하는 임의의 시스템에 의해 사용될 수 있다. 다양한 실시예들에서, 도 5에 도시된 블록들 중 일부는 동시에 수행되거나, 도시된 바와는 상이한 순서로 수행되거나, 또는 생략될 수 있다. 추가적인 방법 요소들이 또한 원하는 경우 수행될 수 있다.
방법(500)은 단계(502)에서 시작하며, 여기서 이미지 데이터(예컨대, 이미지 데이터(202))는 데이터 전달 상호접속부(예컨대, 패브릭(102))을 통해 전송된다. 앞서 논의한 바와 같이, 다양한 실시예들에서, 이미지 데이터는 메모리(예컨대, 메모리(106))로부터 디스플레이 파이프(예컨대, 디스플레이 파이프(200))로 전달될 수 있다. 결정 블록(504)에서, 상호접속부가 유휴인지 여부에 관한 결정이 이루어진다. 앞서 언급한 바와 같이, 특정 실시예들에서, 이 결정은 타이머에 의해 이루어질 수 있다. 상호접속부가 유휴가 아닌 경우, 흐름은 단계(502)로 다시 진행한다. 상호접속부가 유휴인 경우, 흐름은 단계(516)로 진행하고, 여기서 상호접속부가 시간의 임계량 동안 유휴였는지에 관한 결정이 이루어진다. 유휴 시간이 시간의 임계량 미만인 경우, 흐름은 결정 블록(504)까지 다시 진행한다. 그렇지 않다면, 흐름은 단계(522)까지 진행한다. 단계(522)에서 데이터 전달 상호접속부는 전력 게이팅된다. 단계(524)에서 데이터 전달 상호접속부가 데이터 요청을 수신하면(예컨대, 디스플레이 파이프(200)가 메모리(106)로부터 데이터의 다른 블록을 인출할 것을 요청함) 다시 전원이 투입된다.
이제 도 6으로 다시 넘어가면, 두 개의 상이한 모드에서 디스플레이 파이프를 동작시키기 위한 방법의 일 실시예를 예시하는 흐름도가 도시된다. 다양한 실시예들에서, 방법(600)은 디스플레이 처리 유닛(예컨대, 디스플레이 처리 유닛(110)) 내에서 수행된다. 다양한 실시예들에서, 도 6에 도시된 블록들 중 일부는 동시에 수행되거나, 도시된 바와는 상이한 순서로 수행되거나, 또는 생략될 수 있다. 추가적인 방법 요소들이 또한 원하는 경우 수행될 수 있다.
방법(600)은 단계(602)에서 시작하며, 여기서 디스플레이 버퍼(예컨대, 디스플레이 버퍼(114)) 내의 라인 버퍼들(예컨대, 라인 버퍼들(310a 내지 310x))은 데이터(예컨대, 이미지 데이터(202))로 채워진다. 결정 블록(604)에서, 디스플레이 파이프가 비-스케일 모드에서 동작하고 있는지에 관한 결정이 이루어진다(예컨대, 일 실시예에서, 이것은 스케일 모드 레지스터(340)와 같은 레지스터에 의해 지시될 수 있음). 스케일 모드가 지시되는 경우, 흐름은 단계(608)로 진행한다. 단계(608)에서, 판독 로직(예컨대, 버퍼 판독 로직(320))은 모든 라인 버퍼들을 판독한다. 앞서 논의한 바와 같이, 모든 라인 버퍼들을 판독하는 것에 후속하여, 디스플레이 파이프는 새로운 이미지 소스 라인을 연속적으로 인출한다. 따라서, 단계(610)에서, 패브릭이 유휴로 유지되지 않을 때, 시스템은 패브릭에 계속해서 전력을 공급한다. 흐름은 단계(602)까지 다시 진행한다.
결정 블록(604)에서, 비-스케일 모드가 지시되는 경우 흐름은 단계(614)로 진행한다. 단계(614)에서, 데이터 전달 상호접속부의 전원이 차단된다(즉, 특정 실시예들에서 타이머가 이것을 제어하고; 다른 실시예들에서는 디스플레이 파이프가 이것을 제어할 수 있다). 단계(616)에서, 판독 로직은 선택적으로 각각의 라인 버퍼를 한 번에 하나씩 판독한다. 모든 버퍼들을 판독한 후, 단계(618)에서, 패브릭에 전원이 투입된다. 흐름은 단계(602)로 다시 진행된다.
특정 실시예들이 앞서 기술되었지만, 단일 실시예만이 특정한 특징과 관련하여 설명될지라도, 이들 실시예는 본 개시 내용의 범주를 제한하도록 의도되지 않는다. 개시 내용에 제공된 특징들의 예들은 달리 제시되지 않는 한 제한적인 것이 아니라 예시적인 것으로 의도된다. 상기 설명은 그러한 대안들, 변형들, 및 등가물들을 커버하도록 의도되며, 이는 본 개시 내용의 이득을 갖는 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이다.
본 개시 내용의 범주는, 그것이 본 명세서에서 다루어지는 임의의 또는 모든 문제들을 경감시키든 아니든 간에, 본 명세서에서 개시되는(명시적으로 또는 함축적으로) 임의의 특징이나 특징들의 조합, 또는 그것들의 임의의 일반화를 포함한다. 따라서, 본 출원(또는 본 출원에 대하여 우선권을 주장하는 출원)의 절차 동안에 새로운 청구항들이 이러한 임의의 특징들의 조합으로 형성될 수 있다. 특히, 첨부된 청구범위와 관련하여, 종속 청구항들로부터의 특징들이 독립 청구항들의 특징들과 조합될 수 있고, 각각의 독립 청구항들로부터의 특징들이 단지 첨부된 청구범위에서 나열된 특정 조합들로만이 아닌 임의의 적절한 방식으로 조합될 수 있다.

Claims (20)

  1. 방법으로서,
    디스플레이 유닛을 제1 동작 모드에서 동작하는 단계 - 상기 제1 동작 모드에서 동작하는 단계는,
    디스플레이 버퍼가, 데이터 전달 상호접속부를 통해 이미지 데이터의 세트들 - 각각의 세트는 제1 크기를 가짐 - 을 수신하는 단계,
    스케일링 회로가, 상기 디스플레이 버퍼로부터의 이미지 데이터를 적어도 2차원에서 스케일링하는 단계를 포함함 -; 및
    상기 디스플레이 유닛을 제2 동작 모드에서 동작하는 단계 - 상기 제2 동작 모드에서 동작하는 단계는,
    상기 디스플레이 버퍼가, 상기 데이터 전달 상호접속부를 통해 이미지 데이터의 세트들 - 각각의 세트는 상기 제1 크기보다 큰 제2 크기를 가짐 - 을 수신하는 단계,
    상기 스케일링 회로가, 상기 디스플레이 버퍼로부터의 이미지 데이터를 최대 1차원에서 스케일링하는 단계, 및
    상기 디스플레이 버퍼가 상기 이미지 데이터의 세트들을 수신하는 것 사이의 하나 이상의 시간 간격 동안, 상기 데이터 전달 상호접속부의 전원을 차단하는 단계를 포함함 -
    를 포함하는, 방법.
  2. 제1항에 있어서, 상기 디스플레이 버퍼는 복수의 라인 버퍼를 포함하며, 각각의 라인 버퍼는 각자의 이미지 소스 라인을 저장하도록 구성되고, 디스플레이될 이미지들을 렌더링하도록 구성된 디스플레이 파이프가 상기 디스플레이 버퍼를 포함하고;
    상기 전원을 차단하는 단계는 상기 수신된 이미지 데이터가 두 개 이상의 이미지 소스 라인을 포함하는 것에 응답하여 수행되는, 방법.
  3. 제2항에 있어서, 상기 제2 동작 모드에서 동작하는 단계는,
    상기 복수의 라인 버퍼로부터 상기 이미지 소스 라인들 중 하나 이상을 선택적으로 판독하는 단계를 포함하며, 상기 선택적으로 판독하는 단계는 상기 시간 간격 동안 복수 회 수행되는, 방법.
  4. 제1항에 있어서, 상기 제2 동작 모드는 비-스케일 모드이며, 상기 제2 동작 모드에서 동작하는 단계는, 상기 스케일링 회로가, 상기 디스플레이 버퍼로부터의 상기 이미지 데이터를 스케일링하지 않고 바이패스 경로를 통해 상기 디스플레이 버퍼로부터 상기 이미지 데이터를 전송하는 단계를 포함하는, 방법.
  5. 제1항에 있어서,
    디스플레이 파이프의 레지스터에 저장된 프로그램가능 설정에 기초하여 상기 제1 동작 모드를 사용할지 또는 상기 제2 동작 모드를 사용할지를 결정하는 단계를 추가로 포함하는, 방법.
  6. 제1항에 있어서,
    상기 데이터 전달 상호접속부의 전원을 차단하는 단계는 상기 데이터 전달 상호접속부가 유휴였던 시간의 양을 나타내는 값을 유지하는 타이머에 기초하는 것을 추가로 포함하는, 방법.
  7. 장치로서,
    데이터 전달 상호접속부;
    디스플레이 버퍼; 및
    디스플레이 파이프를 포함하며, 상기 디스플레이 파이프는,
    제1 모드에서 동작하도록 구성되고 - 상기 제1 모드에서 상기 디스플레이 파이프는,
    상기 데이터 전달 상호접속부를 통해 이미지 데이터의 세트들 - 각각의 세트는 제1 크기를 가짐 - 을 수신하고, 상기 이미지 데이터의 세트들을 상기 디스플레이 버퍼에 저장하고,
    상기 디스플레이 버퍼로부터의 이미지 데이터를 적어도 2차원에서 스케일링하도록 구성됨 -;
    제2 모드에서 동작하도록 구성되며 - 상기 제2 모드에서 상기 디스플레이 파이프는,
    상기 데이터 전달 상호접속부를 통해 이미지 데이터의 세트들 - 각각의 세트는 상기 제1 크기보다 큰 제2 크기를 가짐 - 을 수신하고, 상기 이미지 데이터의 세트들을 상기 디스플레이 버퍼에 저장하고,
    상기 디스플레이 버퍼로부터의 이미지 데이터를 최대 1차원에서 스케일링하도록 구성됨 -; 상기 장치는, 상기 제2 모드에서, 이미지 데이터의 세트들을 수신하는 것 사이의 하나 이상의 시간 간격 동안 상기 데이터 전달 상호접속부로의 전력을 감소시키도록 구성되는, 장치.
  8. 제7항에 있어서, 상기 장치는, 상기 이미지 데이터의 세트들을 인출하는 것 사이의 간격에 응답하여 상기 데이터 전달 상호접속부로의 전력을 감소시키도록 구성되며, 각각의 세트는 상기 제2 크기를 갖고, 상기 간격의 길이는 임계값을 초과하는, 장치.
  9. 제8항에 있어서, 상기 장치는 상기 데이터 전달 상호접속부가 유휴로 유지된 시간의 양을 나타내는 타이머를 유지하도록 구성되고, 상기 장치는 상기 타이머에 기초하여 상기 데이터 전달 상호접속부로의 전력을 감소시키도록 구성되는, 장치.
  10. 제7항에 있어서, 상기 장치는, 상기 제2 모드에서, 이미지 데이터의 세트들을 인출하는 것 사이에서 메모리 제어기로의 전력을 감소시키도록 구성되며, 상기 메모리 제어기는 상기 메모리로부터 데이터를 검색하도록 구성되는, 장치.
  11. 제7항에 있어서, 상기 디스플레이 버퍼는, 이미지 데이터의 라인들을 저장하도록 구성된 복수의 라인 버퍼를 포함하고, 상기 제1 크기는 이미지 데이터의 단일 라인에 대응하며, 상기 제2 크기는 이미지 데이터의 복수의 라인에 대응하는, 장치.
  12. 제7항에 있어서, 상기 제2 모드는 비-스케일 모드이고, 상기 디스플레이 파이프는, 상기 제2 모드에서, 상기 이미지 데이터의 세트들을 스케일링하지 않고 상기 디스플레이 버퍼에 저장된 상기 이미지 데이터의 세트들로 하여금 스케일링 회로를 바이패스하게 함으로써, 상기 디스플레이 버퍼로부터의 이미지 데이터를 최대 1차원에서 스케일링하도록 구성되는, 장치.
  13. 제11항에 있어서, 상기 디스플레이 파이프는, 상기 제1 모드에서 상기 디스플레이 버퍼 내의 상기 이미지 데이터의 수평 및 수직 스케일링 둘 다를 수행하도록 구성되는, 장치.
  14. 제12항에 있어서, 상기 디스플레이 파이프는 부표본화된 채도(subsampled chroma)를 갖는 이미지 소스 라인들을 인출하도록 구성되고, 상기 디스플레이 파이프는, 상기 제2 모드에서, 부표본화된 채도를 갖는 상기 이미지 소스 라인들로 하여금 상기 스케일링 회로의 수직 스케일러 또는 수평 스케일러를 바이패스하게 하도록 구성되는, 장치.
  15. 장치로서,
    데이터 전달 상호접속부를 통해 메모리로부터 이미지 데이터를 수신하도록 구성된 복수의 라인 버퍼;
    상기 라인 버퍼들로부터의 이미지 데이터를 복수의 차원에서 스케일링하도록 구성된 스케일링 회로; 및
    디스플레이 회로를 포함하며, 상기 디스플레이 회로는,
    상기 스케일링 회로를 사용하여 상기 이미지 데이터의 적어도 일부분에 대해 하나 이상의 스케일링 동작을 적어도 2차원에서 수행함으로써 이미지 데이터의 출력 라인을 생성하는 스케일링 모드에서 동작하도록 구성되고 - 상기 이미지 데이터의 상기 적어도 일부분은 상기 복수의 라인 버퍼 중 두 개 이상을 포함하는 라인 버퍼들의 제1 세트로부터 판독됨 -;
    비-스케일링 모드 또는 혼합 모드에서 동작하도록 구성되는 - 상기 비-스케일링 모드 또는 혼합 모드에서 상기 장치는, 라인 버퍼들의 제1 세트보다 작은 수의 라인 버퍼들을 포함하는 라인 버퍼들의 제2 세트로부터 상기 이미지 데이터의 일부분을 선택적으로 판독하고 라인 버퍼들의 상기 제2 세트로부터의 상기 이미지 데이터를 바이패스하거나 라인 버퍼들의 상기 제2 세트로부터의 상기 이미지 데이터에 대해 하나 이상의 스케일링 동작을 최대 1차원에서 수행함으로써 이미지 데이터의 출력 라인을 생성하고; 상기 비-스케일링 모드 또는 상기 혼합 모드에서, 상기 라인 버퍼들에 대해 이미지 데이터를 인출하는 것 사이의 하나 이상의 시간 간격 동안, 상기 데이터 전달 상호접속부로의 전력을 감소시키도록 구성됨 -, 장치.
  16. 제15항에 있어서, 상기 장치는, 상기 스케일링 모드에서 동작하고 있는 동안, 상기 데이터 전달 상호접속부로의 전력을 유지하도록 구성되는, 장치.
  17. 제15항에 있어서, 상기 디스플레이 회로는,
    상기 비-스케일링 모드 또는 상기 혼합 모드에서, 상기 메모리로부터 제 1 세트의 판독 동작들을 수행하고 - 상기 제1 세트 내의 각각의 판독 동작은 복수의 이미지 소스 라인에 관한 것임 -;
    상기 스케일링 모드에서 동작하는 것에 응답하여, 상기 메모리로부터 제2 세트의 판독 동작들을 수행하도록 구성되며 - 상기 제2 세트 내의 하나의 판독 동작은 단일 이미지 소스 라인에 관한 것임 -;
    상기 디스플레이 회로는 상기 제1 세트보다 높은 속도에서 상기 제2 세트를 수행하도록 구성되는, 장치.
  18. 제15항에 있어서,
    상기 장치가 상기 스케일링 모드에서 동작할지, 상기 비-스케일링 모드에서 동작할지, 또는 상기 혼합 모드에서 동작할지를 나타내는 값을 저장하도록 구성된 레지스터를 추가로 포함하는, 장치.
  19. 제15항에 있어서, 상기 장치는,
    이미지 데이터의 세트를 부표본화된 채도를 갖는 것으로서 식별하고;
    상기 이미지 데이터의 세트로 하여금, 상기 식별에 응답하여 상기 스케일링 회로의 수평 스케일러 및 수직 스케일러 중 하나를 바이패스하게 하도록 구성되는, 장치.
  20. 제15항에 있어서, 상기 장치는,
    상기 비-스케일링 모드에서 동작하는 동안 상기 메모리의 메모리 제어기로의 전력을 감소시키고;
    상기 스케일링 모드에서 동작하고 있는 동안 상기 메모리 제어기로의 전력을 유지하도록 구성되는, 장치.
KR1020157023014A 2013-02-21 2014-02-12 유휴 컴포넌트들의 전원을 차단함으로써 디스플레이 파이프라인에서 전력을 절감하는 방법 및 디바이스 KR101672154B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/773,522 2013-02-21
US13/773,522 US9105112B2 (en) 2013-02-21 2013-02-21 Power management for image scaling circuitry
PCT/US2014/015979 WO2014130316A1 (en) 2013-02-21 2014-02-12 Method and device for saving power in a display pipeline by powering down idle components

Publications (2)

Publication Number Publication Date
KR20150113063A KR20150113063A (ko) 2015-10-07
KR101672154B1 true KR101672154B1 (ko) 2016-11-02

Family

ID=50236267

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157023014A KR101672154B1 (ko) 2013-02-21 2014-02-12 유휴 컴포넌트들의 전원을 차단함으로써 디스플레이 파이프라인에서 전력을 절감하는 방법 및 디바이스

Country Status (7)

Country Link
US (1) US9105112B2 (ko)
JP (1) JP6078173B2 (ko)
KR (1) KR101672154B1 (ko)
CN (1) CN105074612B (ko)
DE (1) DE112014000938B4 (ko)
TW (1) TWI524176B (ko)
WO (1) WO2014130316A1 (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10817043B2 (en) * 2011-07-26 2020-10-27 Nvidia Corporation System and method for entering and exiting sleep mode in a graphics subsystem
US9653043B2 (en) * 2013-02-06 2017-05-16 Dexin Corporation Input device for magnifying a screen content and method thereof
KR101440231B1 (ko) * 2013-05-15 2014-09-12 엘에스산전 주식회사 고속철도에서 atc 불연속정보 처리방법
US20150015782A1 (en) * 2013-07-12 2015-01-15 Vixs Systems, Inc. Video processing device for reformatting an audio/video signal and methods for use therewith
TWI538519B (zh) * 2014-11-17 2016-06-11 廣達電腦股份有限公司 視訊影像之擷取裝置
KR102327803B1 (ko) * 2014-11-21 2021-11-17 삼성전자 주식회사 전력 소모를 줄이기 위한 전력 제어 방법 및 장치
TWI653527B (zh) * 2014-12-27 2019-03-11 美商英特爾公司 當計算元件運作時致能系統低電力狀態之技術
CN106303152A (zh) * 2015-05-25 2017-01-04 聚晶半导体股份有限公司 图像处理芯片与图像处理系统
US10474408B2 (en) * 2017-09-07 2019-11-12 Apple Inc. Image data processing pipeline bypass systems and methods
US10304506B1 (en) * 2017-11-10 2019-05-28 Advanced Micro Devices, Inc. Dynamic clock control to increase stutter efficiency in the memory subsystem
JP2019109353A (ja) * 2017-12-18 2019-07-04 シャープ株式会社 表示制御装置および該表示制御装置を備えた液晶表示装置
US11709624B2 (en) * 2018-02-15 2023-07-25 Xilinx, Inc. System-on-chip having multiple circuits and memory controller in separate and independent power domains
US11012694B2 (en) 2018-05-01 2021-05-18 Nvidia Corporation Dynamically shifting video rendering tasks between a server and a client
US10713756B2 (en) * 2018-05-01 2020-07-14 Nvidia Corporation HW-assisted upscaling and multi-sampling using a high resolution depth buffer

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6894706B1 (en) 1998-09-18 2005-05-17 Hewlett-Packard Development Company, L.P. Automatic resolution detection
US7802118B1 (en) 2006-12-21 2010-09-21 Nvidia Corporation Functional block level clock-gating within a graphics processor
US20120038822A1 (en) 2010-08-13 2012-02-16 Au Optronics Corp. Scaling-up control method and scaling-up control apparatus for use in display device

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5469223A (en) * 1993-10-13 1995-11-21 Auravision Corporation Shared line buffer architecture for a video processing circuit
DE69606769T2 (de) * 1995-06-07 2000-11-16 Seiko Epson Corp Rechnersystem mit einem videoanzeigesteuergerät mit leistungssparbetriebsarten
JP3497988B2 (ja) * 1998-04-15 2004-02-16 株式会社ルネサステクノロジ 図形処理装置及び図形処理方法
JP2000206953A (ja) * 1999-01-19 2000-07-28 Toshiba Corp 計算機の表示制御方法及び装置
JP2000298536A (ja) * 1999-04-15 2000-10-24 Toshiba Corp 情報処理装置
US6765622B2 (en) * 2001-10-26 2004-07-20 Koninklijke Philips Electronics N.V. Line-buffer reuse in vertical pixel-processing arrangement
JP2004302065A (ja) * 2003-03-31 2004-10-28 Canon Inc 表示装置の駆動制御装置及び駆動制御方法
US20050030319A1 (en) * 2003-08-06 2005-02-10 Rai Barinder Singh Method and apparatus for reducing the transmission requirements of a system for transmitting image data to a display device
US7418606B2 (en) 2003-09-18 2008-08-26 Nvidia Corporation High quality and high performance three-dimensional graphics architecture for portable handheld devices
US9883202B2 (en) 2006-10-06 2018-01-30 Nxp Usa, Inc. Scaling video processing complexity based on power savings factor
JP5523035B2 (ja) * 2009-09-18 2014-06-18 パナソニック株式会社 画像処理装置、及び画像処理方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6894706B1 (en) 1998-09-18 2005-05-17 Hewlett-Packard Development Company, L.P. Automatic resolution detection
US7802118B1 (en) 2006-12-21 2010-09-21 Nvidia Corporation Functional block level clock-gating within a graphics processor
US20120038822A1 (en) 2010-08-13 2012-02-16 Au Optronics Corp. Scaling-up control method and scaling-up control apparatus for use in display device

Also Published As

Publication number Publication date
TW201433912A (zh) 2014-09-01
DE112014000938B4 (de) 2020-06-25
US20140232731A1 (en) 2014-08-21
JP6078173B2 (ja) 2017-02-08
WO2014130316A1 (en) 2014-08-28
DE112014000938T5 (de) 2015-11-26
CN105074612B (zh) 2017-10-20
US9105112B2 (en) 2015-08-11
KR20150113063A (ko) 2015-10-07
TWI524176B (zh) 2016-03-01
CN105074612A (zh) 2015-11-18
JP2016509261A (ja) 2016-03-24

Similar Documents

Publication Publication Date Title
KR101672154B1 (ko) 유휴 컴포넌트들의 전원을 차단함으로써 디스플레이 파이프라인에서 전력을 절감하는 방법 및 디바이스
US8838859B2 (en) Cable with fade and hot plug features
US6078339A (en) Mutual exclusion of drawing engine execution on a graphics device
US9990690B2 (en) Efficient display processing with pre-fetching
JP2016509280A (ja) グラフィックスプロセッシングユニットベースのメモリ転送動作を行うためのマルチモードメモリアクセス技法
KR20130060114A (ko) 인라인 이미지 회전
US20170323419A1 (en) Systems and methods for time shifting tasks
US20080055322A1 (en) Method and apparatus for optimizing data flow in a graphics co-processor
US9196187B2 (en) System and method of reducing power using a display inactive indication
US10110927B2 (en) Video processing mode switching
US10013046B2 (en) Power management techniques
JP4916156B2 (ja) 半導体集積回路装置
US7849414B2 (en) Edge anti-aliasing
US8773455B2 (en) RGB-out dither interface
US10955903B2 (en) Low power advertising mode for sequential image presentation

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