KR20140030823A - 3차원 작업 부하를 이용하여 dvfs 정책을 수행하는 시스템-온 칩 및 이의 동작 방법 - Google Patents

3차원 작업 부하를 이용하여 dvfs 정책을 수행하는 시스템-온 칩 및 이의 동작 방법 Download PDF

Info

Publication number
KR20140030823A
KR20140030823A KR1020120097465A KR20120097465A KR20140030823A KR 20140030823 A KR20140030823 A KR 20140030823A KR 1020120097465 A KR1020120097465 A KR 1020120097465A KR 20120097465 A KR20120097465 A KR 20120097465A KR 20140030823 A KR20140030823 A KR 20140030823A
Authority
KR
South Korea
Prior art keywords
gpu
operating
data
operating voltage
operating frequency
Prior art date
Application number
KR1020120097465A
Other languages
English (en)
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 KR1020120097465A priority Critical patent/KR20140030823A/ko
Priority to US14/016,453 priority patent/US20140063026A1/en
Priority to CN201310397845.4A priority patent/CN103677208A/zh
Priority to JP2013183116A priority patent/JP2014053006A/ja
Publication of KR20140030823A publication Critical patent/KR20140030823A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • 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
    • 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/324Power saving characterised by the action undertaken by lowering clock frequency
    • 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
    • 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/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • 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

Abstract

시스템-온 칩(SoC) 및 이의 동작 방법이 개시된다. 본 발명의 실시예에 따르면, GPU(graphics processing unit) 및 디스플레이 컨트롤러를 포함하는 시스템 온 칩의 동작 방법은, 상기 GPU의 입력 데이터 및 상기 디스플레이 컨트롤러의 출력 데이터 중 적어도 하나를 수신하는 단계; 및 상기 수신한 데이터에 따라 상기 GPU의 동작 주파수와 동작 전압을 조절하는 단계를 포함한다.

Description

3차원 작업 부하를 이용하여 DVFS 정책을 수행하는 시스템-온 칩 및 이의 동작 방법{SOC PERFORMING DYNAMIC VOLTAGE AND FREQUENCY SCALING POLICIES USING 3D WORKLOAD AND METHOD USING THE SAME}
본 발명은 시스템-온 칩(SoC: System on Chip) 및 이의 동작 방법에 관한 것으로, 보다 상세하게는 그래픽 프로세서의 작업 부하에 따라 동적으로 동작 주파수와 전압을 조절할 수 있는 시스템-온 칩 및 이의 동작 방법에 관한 것이다.
SoC는 프로세서, 멀티미디어(multimedia), 그래픽(graphic), 인터페이스, 및 보안 등 다양한 기능들을 포함하는 더욱 복잡한 시스템으로 발전하고 있다.
배터리를 사용하는 휴대용 장치(portable device)에 다양한 기능이 컨버전스되면서, 휴대용 장치의 성능 뿐만 아니라, 휴대용 장치의 전력 소모량을 최소화하는 방안에 대한 연구가 진행되고 있다. 이의 일환으로 DVFS(Dynamic Voltage Frequency Scaling, 이하 DVFS) 정책이 사용된다.
DVFS 기술은 알고리즘(algorithm)을 통해 CPU의 주파수(Frequency)와 전압(Voltage)을 조절하는 기술이다. 성능과 전력 소모는 서로 대조적인(trade-off)관계에 있다. 따라서, 전력 소모를 줄이기 위해서는 성능을 낮추어야 한다.
GPU(Graphics Processor Unit)의 경우 동작시와 비동작시 각각의 경우에만 동적으로 전력을 조절하였다. 이에 따라 GPU가 지속적으로 동작할 경우 불필요한 전력이 소모된다.
따라서, 본 발명이 이루고자 하는 기술적인 과제는, GPU의 입력 데이터 및 디스플레이 컨트롤러의 출력 데이터 중 적어도 하나에 따라 동적으로 동작주파수와 동작 전압을 조절할 수 있는 시스템-온 칩 및 이의 동작 방법을 제공하는 것이다.
상술한 과제를 해결하기 위한 실시예에 따르면, GPU(graphics processing unit) 및 디스플레이 컨트롤러를 포함하는 시스템 온 칩(SoC)의 동작 방법은, 상기 GPU의 입력 데이터 및 상기 디스플레이 컨트롤러의 출력 데이터 중 적어도 하나를 수신하는 단계, 및 상기 수신한 데이터에 따라 상기 GPU의 동작 주파수와 동작 전압을 조절하는 단계를 포함한다.
상기 GPU의 동작 주파수와 동작 전압은 상기 GPU의 입력 데이터의 프레임당 정점(vertex) 개수에 기초하여 조절될 수 있다.
상기 GPU의 동작 주파수와 동작 전압은 상기 디스플레이 컨트롤러의 출력 데이터의 프레임 업데이트 속도(frame update rate)에 기초하여 조절될 수 있다.
상기 GPU의 동작 주파수와 동작 전압은 상기 정점 개수 및 상기 디스플레이 컨트롤러의 출력 데이터의 프레임 업데이트 속도에 기초하여 조절될 수 있다.
상기 GPU의 동작 주파수와 동작 전압은 상기 정점 개수 및 상기 프레임 업데이트 속도에 각각 가중치를 적용하여 산출된 값에 따라 결정될 수 있다.
상기 GPU의 동작 주파수와 동작 전압은 상기 정점 개수 및 상기 프레임 업데이트 속도 중 적어도 하나가 기설정된 임계 범위를 벗어날 때 변경될 수 있다.
상기 GPU의 동작 주파수와 동작 전압은 상기 정점 개수 및 상기 프레임 업데이트 속도가 기설정된 임계 범위를 모두 벗어날 때 변경될 수 있다.
상기 GPU의 동작 주파수와 동작 전압 조절 단계는 기설정된 주기마다 반복될 수 있다.
상기 GPU의 동작 주파수와 동작 전압은 상기 정점 개수, 상기 프레임 업데이트 속도 및 상기 GPU의 동작 여부가 측정된 시간과 상기 측정된 시간 내 상기 GPU가 동작하는 시간의 비율에 기초하여 조절될 수 있다.
상술한 과제를 해결하기 위한 실시예에 따른 시스템-온 칩(SoC)은, 입력 데이터를 수신하고 상기 입력 데이터에 기초하여 제1 출력 데이터를 생성하고 출력하는 GPU, 상기 제1 출력 데이터에 기초하여 제2 출력 데이터를 생성하고 출력하는 디스플레이 컨트롤러, 및 상기 입력 데이터 및 상기 제2 출력 데이터 중 적어도 하나에 따라 상기 GPU의 동작 주파수 및 동작 전압을 조절하는 CPU(110)를 포함한다.
상기 GPU의 동작 주파수와 동작 전압은 상기 입력 데이터의 프레임당 정점(vertex) 개수에 기초하여 조절될 수 있다.
상기 GPU의 동작 주파수와 동작 전압은 상기 제2 출력 데이터의 프레임 업데이트 속도(frame update rate)에 기초하여 조절될 수 있다.
상기 GPU의 동작 주파수와 동작 전압은 상기 정점 개수 및 상기 제2 출력 데이터의 프레임 업데이트 속도에 기초하여 조절될 수 있다.
상기 GPU의 동작 주파수와 동작 전압은 상기 정점 개수, 상기 프레임 업데이트 속도 및 상기 GPU의 동작 여부가 측정된 시간과 상기 측정된 시간 내 상기 GPU가 동작하는 시간의 비율에 기초하여 조절될 수 있다.
상기 GPU의 동작 주파수와 동작 전압은 상기 정점 개수, 상기 프레임 업데이트 속도 및 상기 GPU의 동작 여부가 측정된 시간과 상기 측정된 시간 내 상기 GPU가 동작하는 시간의 비율에 각각 가중치를 적용하여 산출된 값에 따라 결정될 수 있다.
실시예에 따르면, 그래픽 프로세서에서 처리해야 할 입력 데이터의 종류에 따라 그래픽 프로세서의 작업 부하를 미리 예측하여 동작 주파수와 동작 전압을 동적으로 조절할 수 있다. 이에 따라 전력 소모를 보다 줄일 수 있다.
또한, 디스플레이 장치에 업데이트되는 프레임의 개수를 참조하여, 미리 예측하고 조절된 동작 주파수와 동작 전압을 추가로 조절할 수 있다. 이를 통해, 디스플레이 장치의 성능을 보장할 수 있다.
도 1은 본 발명의 실시예에 따른 전자 시스템의 블록도를 나타낸다.
도 2는 본 발명의 실시예에 따른 DVFS 제어부 및 다른 구성요소들 간의 관계를 도시한 블록도이다.
도 3은 본 발명의 실시예에 따른 3D DVFS의 신호 처리 과정을 나타내는 블록도이다.
도 4는 본 발명의 실시예에 따른 GPU의 작업 부하를 측정하는 방법을 나타내는 타이밍도이다.
도 5는 본 발명의 실시예에 따른 SoC 동작 방법을 개략적으로 도시한 순서도이다.
도 6a는 본 발명의 일 실시예에 따른 SoC 동작 방법을 도시한 순서도이다.
도 6b는 본 발명의 다른 실시예에 따른 SoC 동작 방법을 도시한 순서도이다.
도 6c는 본 발명의 또 다른 실시예에 따른 SoC 동작 방법을 도시한 순서도이다.
도 7은 본 발명의 실시예에 따른 SoC를 포함하는 전자 시스템의 실시예를 나타내는 블록도이다.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시 예들에 대해서 특정한 구조적 또는 기능적 설명들은 단지 본 발명의 개념에 따른 실시 예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시 예들은 다양한 형태들로 실시될 수 있으며 본 명세서에 설명된 실시 예들에 한정되지 않는다.
본 발명의 개념에 따른 실시 예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시 예들을 도면에 예시하고 본 명세서에 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예들을 특정한 개시 형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1구성요소는 제2구성요소로 명명될 수 있고, 유사하게 제2구성요소는 제1구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다.
도 1은 본 발명의 실시 예에 따른 전자 시스템(10)의 블록도를 나타낸다. 도 2는 본 발명의 실시예에 따른 DVFS 제어부(115) 및 다른 구성요소들 간의 관계를 도시한 블록도이다.
도 1을 참조하면, 전자 시스템(10)은 이동 전화기, 스마트폰, 태블릿 컴퓨터(tablet computer), PDA(personal digital assistant), EDA(enterprise digital assistant), 디지털 스틸 카메라(digital still camera), 디지털 비디오 카메라(digital video camera), PMP(portable multimedia player), PDN(personal navigation device 또는 portable navigation device), 손으로 들고 다닐 수 있는 게임 콘솔(handheld game console), 또는 e-북(e-book)과 같이 손으로 들고 다닐 수 있는 장치(handheld device)로 구현될 수 있다.
전자 시스템(10)은 SoC(100), 메모리 장치(190) 및 디스플레이 장치(195)를 포함한다. SoC(100)는 중앙처리장치(CPU: Central Processing Unit, 110), ROM(read only memory; 120), RAM(random access memory; 130), 타이머(135), 그래픽 프로세싱 유닛(GPU: Graphics Processing Unit, 140), 클럭 관리부(145, CMU: clock management unit), 디스플레이 컨트롤러(150), 메모리 컨트롤러(170), 및 버스(180)를 포함할 수 있다. SoC(100)는 도시된 구성요소 외에도 다른 구성요소를 더 포함할 수 있다. 전자 시스템(10)은 또한 전원관리부(160, PMIC:power management IC)를 더 포함할 수 있다.
도 1의 실시예에서는, PMIC(160)는 SoC(100) 외부에 구현되나, 다른 실시예에서는 PMIC(160)가 SoC(100) 내에 구현될 수 있다. PMIC(160)는 전압 제어부(161) 및 전압 발생부(165)를 포함할 수 있다.
프로세서(processor)라고도 불릴 수 있는 CPU(110)는 메모리 장치(190)에 저장된 프로그램들 및/또는 데이터를 처리 또는 실행할 수 있다. 예컨대, CPU(110)는 클락 신호 발생기(미 도시)로부터 출력된 클락 신호에 응답하여 상기 프로그램들 및/또는 상기 데이터를 처리 또는 실행할 수 있다.
CPU(110)는 멀티-코어 프로세서(multi-core processor)로 구현될 수 있다. 상기 멀티-코어 프로세서는 두 개 또는 그 이상의 독립적인 실질적인 프로세서들('코어들(cores)'이라고 불림)을 갖는 하나의 컴퓨팅 컴포넌트(computing component)이고, 상기 프로세서들 각각은 프로그램 명령들(program instructions)을 읽고 실행할 수 있다. 상기 멀티-코어 프로세서는 다수의 가속기를 동시에 구동할 수 있으므로, 상기 멀티-코어 프로세서를 포함하는 데이터 처리 시스템은 멀티-가속(multi-acceleration)을 수행할 수 있다.
ROM(120), RAM(130), 및 메모리 장치(190)에 저장된 프로그램들 및/또는 데이터는 필요에 따라 CPU(110)의 메모리에 로드(load)될 수 있다.
ROM(120)은 영구적인 프로그램들 및/또는 데이터를 저장할 수 있다. ROM(120)은 EPROM(erasable programmable read-only memory) 또는 EEPROM(electrically erasable programmable read-only memory)으로 구현될 수 있다.
RAM(130)은 프로그램들, 데이터, 또는 명령들(instructions)을 일시적으로 저장할 수 있다. 예컨대, 메모리(120 또는 190)에 저장된 프로그램들 및/또는 데이터는 CPU(110)의 제어 또는 ROM(120)에 저장된 부팅 코드(booting code)에 따라 RAM(130)에 일시적으로 저장될 수 있다. RAM(130)은 DRAM(dynamic RAM) 또는 SRAM(static RAM)으로 구현될 수 있다.
GPU(140)는 메모리 컨트롤러(170)가 메모리 장치(190)로부터 리드(read)한 데이터를 디스플레이에 적합한 신호로 처리한다.
GPU(140) 내부 또는 GPU(140)의 전단에 성능 측정부(PMU: Performance Monitoring Unit, 141)가 구비될 수 있다. 성능 측정부(141)는 GPU(140)의 외부에 구비될 수도 있다. 성능 측정부(141)는 GPU(140)의 성능을 측정하기 위한 모듈이다. 예컨대, GPU(140)로 입력되는 데이터의 량 및/또는 GPU(140)로부터 출력되는 데이터의 량을 측정할 수 있고, GPU(140)의 메모리 사용량을 측정할 수도 있다.
CMU(145)는 동작 클럭 신호를 생성한다. CMU(145)는 위상 동기 루프 회로(PLL : Phase Locked Loop), 지연 동기 루프(DLL : Delayed Locked Loop), 수정자(crystal)등의 클럭 생성 장치로 이루어질 수 있다.
동작 클럭 신호는 GPU(140)로 공급될 수 있다. 물론 동작 클럭 신호는 다른 구성요소(예컨대, 메모리 컨트롤러 등)로 공급될 수도 있다.
CMU(145)는 DVFS 제어부(도 2의 115)의 제어에 따라 동작 클럭 신호의 주파수를 변경할 수 있다. 예컨대, DVFS 제어부(115)는 GPU(140)의 작업 부하를 예측하고, 예측 결과에 따라 미리 설정된 복수(2이상)의 정책들 중 하나를 선택할 수 있다. 복수의 정책들(예컨대, 제1 DVFS 정책 또는 제2 DVFS 정책)은 각각 기설정된 동작 주파수와 동작 전압을 가질 수 있다.
DVFS 제어부(115)는 선택된 정책에 따라 CMU(145)를 제어할 수 있고, 이에 따라, CMU(145)는 DVFS 제어부(115)의 제어를 받아, 선택된 정책(예컨대, 제1 DVFS 정책 또는 제2 DVFS 정책)을 수행하기 위하여 동작 클럭 신호의 주파수를 변경할 수 있다.
전압 제어부(161)는 DVFS 제어부(115)에서 선택된 제1 DVFS 정책 또는 제2 DVFS 정책에 기초하여 전압 발생부(165)를 제어할 수 있다. 전압 발생부(165)는 전압 제어부(161)의 제어에 따라, 선택된 제1 DVFS 정책 또는 제2 DVFS 정책에 기초하여 GPU(140)의 동작 전압을 생성하여 GPU(140)로 출력할 수 있다.
메모리 콘트롤러(170)는 메모리 장치(190)와 인터페이스하기 위한 블록이다. 메모리 콘트롤러(170)는 메모리 장치(190)의 동작을 전반적으로 제어하며, 또한 호스트와 메모리 장치(190)간의 제반 데이터 교환을 제어한다. 예컨대, 메모리 콘트롤러(170)는 호스트의 요청에 따라 메모리 콘트롤러(170)를 제어하여 메모리 장치(190)에 데이터를 쓰거나 메모리 장치(190)로부터 데이터를 독출한다.
여기서, 호스트는 CPU(110), GPU(140), 디스플레이 컨트롤러(150)와 같은 마스터 장치일 수 있다.
메모리 장치(190)는 데이터를 저장하기 위한 저장 장소로서, OS(Operating System), 각종 프로그램들, 및 각종 데이터를 저장할 수 있다. 메모리 장치(190)는 DRAM 일수 있으나, 이에 한정되는 것은 아니다. 예컨대, 메모리 장치(190)는 비휘발성 메모리 장치(플래시 메모리, PRAM, MRAM, ReRAM, 또는 FeRAM 장치)일 수도 있다. 본 발명의 다른 실시예에서는 메모리 장치(190)는 SoC(100) 내부에 구비되는 내장 메모리일 수 있다.
각 구성 요소(110, 120, 130, 140, 150, 및 170)는 시스템 버스(180)를 통하여 서로 통신할 수 있다.
디스플레이 디바이스(195)는 디스플레이 컨트롤러(150)로부터 출력된 출력 영상 신호를 디스플레이할 수 있다. 예컨대, 디스플레이 디바이스(195)는 LCD(liquid crystal display), LED(light emitting diode), OLED(Organic LED), 또는 AMOLED(active-matrix OLED) 디바이스로 구현될 수 있다.
디스플레이 콘트롤러(150)는 디스플레이 디바이스(195)의 동작을 제어한다.
DVFS 제어부(115)는 소프트웨어(S/W) 또는 펌웨어(firmware)로 구현될 수 있다. DVFS 제어부(115)는 프로그램으로 구현되어 메모리(130, 120 또는 190)에 탑재되고, SoC(100)가 파워온되면 CPU(110)에 의하여 실행될 수 있다.
DVFS 제어부(115)는 메모리(130, 120, 190), 타이머(135), GPU(140), CMU(145), 및 PMIC(160)를 제어할 수 있으며, 그 외의 모듈들도 제어할 수 있다. 메모리(130, 120, 190), 타이머(135), GPU(140), CMU(145), 및 PMIC(160)는 각각 하드웨어(H/W)로 구현될 수 있다.
DVFS 제어부(115)와 메모리(130, 120, 190), 타이머(135), GPU(140), CMU(145), 및 PMIC(160) 사이에는 운영체제(OS:operating system) 및 미들웨어(middleware)가 개입될 수 있다.
도 3은 본 발명의 실시예에 따른 3D DVFS의 신호 처리 과정을 나타내는 블록도이다.
도 1 내지 도 3을 참조하면, GPU(140)는 입력 데이터(DATA_IN)를 ROM(120), RAM(130), 또는 메모리 장치(190)로부터 수신할 수 있다. 입력 데이터(DATA_IN)는 3차원(3D) 이미지를 디스플레이하기 위한 정보를 포함하며, 구체적으로 정점(vertex) 및 텍스쳐(texture) 데이터를 포함할 수 있다. GPU(140)는 입력 데이터(DATA_IN)를 디스플레이에 적합하도록 처리하여 제1 출력 데이터(DATA_OUT_1)를 생성하고, 메모리 장치(190)의 프레임 버퍼로 출력한다.
디스플레이 컨트롤러(150)는 메모리 장치(190)의 프레임 버퍼로부터 제1 출력 데이터(DATA_OUT_1)를 수신한다. 디스플레이 컨트롤러(150)는 제1 출력 데이터(DATA_OUT_1)에 기초하여 제2 출력 데이터(DATA_OUT_2)를 생성하고 디스플레이 디바이스(195)로 출력한다.
CPU(110)는 상기 입력 데이터(DATA_IN) 및 상기 제2 출력 데이터(DATA_OUT_2) 중 적어도 하나를 수신하여, 상기 수신한 데이터에 따라 상기 GPU(140)의 동작 주파수 및 동작 전압을 조절할 수 있다. 구체적으로, CPU(110)는 DVFS 제어부(115)를 통해 CMU(145)를 제어하여 GPU(140)의 동작 주파수를 조절하고, PMIC(160)를 제어하여 GPU(140)의 동작 전압을 조절할 수 있다. 설명의 편의를 위해 이에 대하여는 도 5 내지 도 6c에서 보다 자세히 설명한다.
한편, CPU(110)는 입력 데이터(DATA_IN) 및/또는 제2 출력 데이터(DATA_OUT_2)와 함께, GPU(140)의 작업 부하를 PMU(141)로부터 수신할 수 있다. CPU(110)는 상기 수신한 데이터에 따라 상기 GPU(140)의 동작 주파수 및 동작 전압을 조절할 수 있다.
도 4는 본 발명의 실시예에 따른 GPU의 작업 부하를 측정하는 방법을 나타내는 타이밍도이다.
3차원(3D) 작업 부하(workload)는 측정한 일정 주기의 시간(TS) 중 GPU의 동작 시간(T1+T2+T3)의 비율로 나타낼 수 있다. GPU의 동작 시간은 각각의 3D 작업에 대한 동작 시간(T1, T2, T3)의 합이다. 각각의 3D 작업에 대한 동작 시간(T1, T2, T3)은 3D 그래픽 파이프라인 상에서 기하학적 프로세스(Geometry process; GP) 및 픽셀 프로세스(Pixel process; PP)를 수행하는 시간을 포함하며, GPU가 작업을 시작한 시점과 작업을 마친 시점의 차이를 이용하여 측정할 수 있다. GPU가 작업을 시작한 시점은 3D 드라이버에서 GPU에 작업을 전달하여 GPU가 구동되는 시점으로 정의할 수 있다. GPU가 작업을 마치는 시점은 GPU가 인터럽트를 통해 이벤트를 전달하는 시점으로 정의할 수 있다. 예컨대, GPU의 작업 부하(WL_GPU)는 수학식 1에 의해 산출될 수 있다.
Figure pat00001
도 5는 본 발명의 실시예에 따른 SoC 동작 방법을 개략적으로 도시한 순서도이다.
도 3 및 도 5를 참조하면, CPU(110)는 GPU(140)의 입력 데이터(DATA_IN) 및 디스플레이 컨트롤러(150)의 출력 데이터(DATA_OUT_2) 중 적어도 하나를 수신한다(S101). CPU(110)는 상기 수신한 데이터에 따라 상기 GPU(140)의 동작 주파수와 동작 전압을 조절한다(S103).
구체적으로, CPU(110)는 입력 데이터(DATA_IN)의 복잡성에 따라 GPU(140)의 작업 부하의 크기를 GPU(140)의 작업 전에 미리 예측하여, 작업 부하에 따라 DVFS 정책을 변경하여 GPU(140)의 동작 주파수와 동작 전압을 조절할 수 있다. 이에 따라 전력 소모를 보다 줄일 수 있다.
일례로, GPU(140)의 입력 데이터(DATA_IN)는 정점(vertex) 및 텍스쳐(texture) 데이터를 포함할 수 있다. 프레임당 정점의 개수가 많으면 GPU(140)의 작업 부하가 클 것을 미리 예측할 수 있으므로, GPU(140)의 동작 주파수와 동작 전압을 증가시킬 수 있다.
예컨대, 임베디드 단말을 위한 오픈지엘 함수(Open Graphics Library for Embedded Systems application programming interface; OpenGL ES API)를 이용하여 3D 렌더링을 하는 경우, glDrawArray, glDrawElement 함수를 이용하여 3D 개체(object)를 그리게 된다. 이때 3D 개체의 정점 개수가 상기 함수의 파라미터로 전달된다. 따라서 상기 함수 내에서 정점의 개수를 카운트하여 누적해 나가고, 한 프레임의 마지막 단계에서 전체 정점 개수의 합을 저장한 후 초기화하여, 매 프레임마다 그리고자 하는 정점 개수를 구할 수 있다. 프레임당 정점 개수를 기설정된 기준값과 비교하여, 프레임당 정점 개수가 기준값보다 큰 경우 GPU(140)의 동작 주파수와 동작 전압을 증가시킬 수 있다. 기준값은 각 시스템마다 다를 수 있다.
이상에서 프레임당 정점 개수에 따라 GPU(140)의 동작 주파수와 동작 전압을 조절하는 방법을 설명하였으나, 프레임당 정점 개수 대신 입력 데이터(DATA_IN)의 복잡성을 나타내는 다른 요소가 사용될 수도 있다.
한편, CPU(110)는 출력 데이터(DATA_OUT_2)의 프레임 업데이트 속도에 따라 미리 예측하고 조절된 동작 주파수와 동작 전압을 추가로 조절하여, 디스플레이 장치의 성능을 보장할 수 있다.
예컨대, 디스플레이 컨트롤러(150)는 애니메이션 표현 시 디스플레이 디바이스(195)로 정해진 프레임 속도에 맞추어 프레임을 전송한다. 이때 매 프레임마다 얼마나 변화된 프레임이 전송되는지, 또는 이전 프레임이 전송되는지를 카운트하여 실제 프레임 업데이트 속도를 측정할 수 있다. 상기 프레임 업데이트 속도와 기설정된 임계값을 비교하여, 상기 프레임 업데이트 속도가 임계값보다 낮으면 동작 주파수와 동작 전압을 증가시키고, 상기 프레임 업데이트 속도가 임계값보다 높으면 동작 주파수와 동작 전압을 감소시킬 수 있다.
이상에서 프레임 업데이트 속도에 따라 GPU(140)의 동작 주파수와 동작 전압을 조절하는 방법을 설명하였으나, 프레임 업데이트 속도 대신 다른 요소가 사용될 수도 있다.
상기 GPU(140)의 동작 주파수와 동작 전압 조절 단계는 기설정된 주기마다 반복될 수 있다.
도 6a는 본 발명의 일 실시예에 따른 SoC 동작 방법을 도시한 순서도이다.
도 3 및 도 6a를 참조하면, CPU(110)는 GPU(140)의 입력 데이터(DATA_IN) 및 디스플레이 컨트롤러(150)의 출력 데이터(DATA_OUT_2)를 수신한다(S201). CPU(110)는 GPU(140)의 입력데이터(DATA_IN)에서 프레임당 정점(vertex) 개수를 추출하고, 디스플레이 컨트롤러(150)의 출력 데이터(DATA_OUT_2)에서 프레임 업데이트 속도(frame update rate)를 추출한다(S203). 프레임당 정점 개수 및 프레임 업데이트 속도에 각각 가중치를 적용하여 가중치합을 산출하며(S205), 가중치는 기설정된 값일 수 있다. 가중치합과 기설정된 제1 임계범위를 비교하여 가중치합 값이 제1 임계범위 내인지 판단한다(S207). 가중치합이 제1 임계범위 내에 있을 경우, GPU(140)의 동작 주파수 및 동작 전압을 그대로 유지한다. 한편, 가중치합이 제1 임계범위를 벗어나는 값을 가질 경우, GPU(140)의 동작 주파수 및 동작 전압을 조절한다(S209). 예컨대, 가중치합이 상한 임계값보다 클 경우 GPU(140)의 동작 주파수 및 동작 전압을 증가시키고, 가중치합이 하한 임계값보다 작을 경우 GPU(140)의 동작 주파수 및 동작 전압을 감소시킬 수 있다.
도 6b는 본 발명의 다른 실시예에 따른 SoC 동작 방법을 도시한 순서도이다.
S201 및 S203 단계는 도 6a에서 설명한 내용과 동일하다. S203 단계를 실행한 후, 이하의 단계들이 실행된다. 프레임당 정점 개수가 제2 임계 범위 내인지 판단한다(S211). 프레임당 정점 개수가 제2 임계 범위 내일 경우, 프레임 업데이트 속도가 제3 임계 범위 내인지 판단한다(S213). 프레임 업데이트 속도가 제3 임계 범위 내일 경우, GPU(140)의 동작 주파수 및 동작 전압을 유지한다. 프레임당 정점 개수가 제2 임계 범위를 벗어나거나, 프레임 업데이트 속도가 제3 임계 범위를 벗어날 경우, GPU(140)의 동작 주파수 및 동작 전압을 조절한다(S215).
도 6c는 본 발명의 또 다른 실시예에 따른 SoC 동작 방법을 도시한 순서도이다.
S201 및 S203 단계는 도 6a에서 설명한 내용과 동일하다. S203 단계를 실행한 후, 이하의 단계들이 실행된다. 프레임당 정점 개수가 제2 임계 범위 내인지 판단한다(S217). 프레임당 정점 개수가 제2 임계 범위를 벗어날 경우, 프레임 업데이트 속도가 제3 임계 범위 내인지 판단한다(S219). 프레임 업데이트 속도가 제3 임계 범위를 벗어날 경우, GPU(140)의 동작 주파수 및 동작 전압을 조절한다(S221). 프레임당 정점 개수가 제2 임계 범위 내이거나, 프레임 업데이트 속도가 제3 임계 범위 내일 경우, GPU(140)의 동작 주파수 및 동작 전압을 유지한다.
이상에서 GPU(140)의 동작 주파수 및 동작 전압을 GPU(140)의 입력 데이터(DATA_IN) 및 디스플레이 컨트롤러(150)의 출력 데이터(DATA_OUT_2)에 기초하여 조절하는 방법을 설명하였다. 그러나 GPU(140)의 동작 주파수 및 동작 전압을 상기 입력 데이터(DATA_IN), 출력 데이터(DATA_OUT_2) 및 GPU(140)의 작업 부하에 기초하여 조절할 수도 있다. 상기 GPU의 작업 부하(WL_GPU)는 수학식 1에 의해 산출될 수 있다. 입력 데이터(DATA_IN), 출력 데이터(DATA_OUT_2) 및 GPU의 작업 부하(WL_GPU)에 각각 가중치를 적용하여 산출된 값에 따라 GPU(140)의 동작 주파수 및 동작 전압을 조절할 수 있으나, 이에 한정되지 아니하고 다양한 실시예로 GPU(140)의 동작 주파수 및 동작 전압을 조절하도록 구현이 가능하다.
도 7은 본 발명의 실시예에 따른 SoC를 포함하는 전자 시스템의 실시 예를 나타내는 블록도이다. 이를 참조하면, 전자 시스템은 PC(personal computer) 또는 데이터 서버(200), 랩탑(laptop) 컴퓨터(300) 또는 휴대용 장치(400)로 구현될 수 있다. 휴대용 장치(400)는 이동 전화기, 스마트 폰(smart phone), 태블릿 (tablet) PC, PDA(personal digital assistant), EDA(enterprise digital assistant), 디지털 스틸 카메라 (digital still camera), 디지털 비디오 카메라 (digital video camera), PMP(portable multimedia player), PDN(personal navigation device 또는 portable navigation device), 휴대용 게임 콘솔(handheld game console), 또는 e-북(e-book)으로 구현될 수 있다.
전자 시스템(200, 300, 400)은 프로세서(100), 파워 소스(410), 저장 장치(420), 메모리(430), 입출력 포트들(440), 확장 카드(450), 네트워크 장치(460), 및 디스플레이(470)를 포함한다. 실시 예에 따라. 전자 시스템(200, 300, 400)은 카메라 모듈(480)을 더 포함할 수 있다.
프로세서(100)는 도 1에 도시된 SoC(100)를 의미한다. 프로세서(100)는 멀티-코어 프로세서일 수 있다.
프로세서(100)는 구성 요소들(elements; 100, 및 410~480) 중에서 적어도 하나의 동작을 제어할 수 있다.
파워 소스(410)는 구성 요소들(100, 및 410~480) 중에서 적어도 하나로 동작 전압을 공급할 수 있다.
저장 장치(420)는 하드디스크 드라이브(hard disk drive) 또는 SSD(solid state drive)로 구현될 수 있다.
메모리(430)는 휘발성 메모리 또는 불휘발성 메모리로 구현될 수 있으며, 도 1의 메모리 장치(190)에 해당할 수 있다. 실시 예에 따라, 메모리(430)에 대한 데이터 액세스 동작, 예컨대, 리드 동작, 라이트 동작(또는 프로그램 동작), 또는 이레이즈 동작을 제어할 수 있는 메모리 컨트롤러는 프로세서(100)에 집적 또는 내장될 수 있다. 다른 실시 예에 따라, 상기 메모리 컨트롤러는 프로세서(100)와 메모리(430) 사이에 구현될 수 있다.
입출력 포트들(440)은 전자 시스템(200, 300, 400)으로 데이터를 전송하거나 또는 전자 시스템(200, 300, 400)으로부터 출력된 데이터를 외부 장치로 전송할 수 있는 포트들을 의미한다. 예컨대, 입출력 포트들(440)은 컴퓨터 마우스와 같은 포인팅 장치(pointing device)를 접속하기 위한 포트, 프린터를 접속하기 위한 포트, 또는 USB 드라이브를 접속하기 위한 포트일 수 있다.
확장 카드(450)는 SD(secure digital) 카드 또는 MMC(multimedia card)로 구현될 수 있다. 실시 예에 따라, 확장 카드(450)는 SIM(Subscriber Identification Module) 카드 또는 USIM(Universal Subscriber Identity Module) 카드일 수 있다.
네트워크 장치(460)는 전자 시스템(200, 300, 400)을 유선 네트워크 또는 무선 네트워크에 접속시킬 수 있는 장치를 의미한다.
디스플레이(470)는 저장 장치(420), 메모리(430), 입출력 포트들(440), 확장 카드(450), 또는 네트워크 장치(460)로부터 출력된 데이터를 디스플레이할 수 있다.
카메라 모듈(480)은 광학 이미지를 전기적인 이미지로 변환할 수 있는 모듈을 의미한다. 따라서, 카메라 모듈(480)로부터 출력된 전기적인 이미지는 저장 장치(420), 메모리(430), 또는 확장 카드(450)에 저장될 수 있다. 또한, 카메라 모듈 (480)로부터 출력된 전기적인 이미지는 디스플레이(420)를 통하여 디스플레이될 수 있다.
이상에서는 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
10 : 전자 시스템 100 : 시스템-온 칩
110 : 중앙처리장치 115 : DVFS 제어부
120 : ROM 130 : RAM
135 : 타이머 140 : GPU
141 : 성능 측정부 145 : CMU
150 : 디스플레이 콘트롤러 160 : PMIC
161 : 전압 제어부 165 : 전압 발생부
170 : 메모리 콘트롤러 180 : 버스
190 : 메모리 장치 195 : 디스플레이 디바이스
DATA_IN : 입력 데이터 DATA_OUT_1 : 제1 출력 데이터
DATA_OUT_2 : 제2 출력 데이터

Claims (10)

  1. GPU(graphics processing unit) 및 디스플레이 컨트롤러를 포함하는 시스템 온 칩(SoC: System On Chip)의 동작 방법에 있어서,
    상기 GPU의 입력 데이터 및 상기 디스플레이 컨트롤러의 출력 데이터 중 적어도 하나를 수신하는 단계; 및
    상기 수신한 데이터에 따라 상기 GPU의 동작 주파수와 동작 전압을 조절하는 단계를 포함하는 SoC의 동작 방법.
  2. 제1항에 있어서, 상기 GPU의 동작 주파수와 동작 전압은
    상기 GPU의 입력 데이터의 프레임당 정점(vertex) 개수에 기초하여 조절되는 SoC의 동작 방법.
  3. 제2항에 있어서, 상기 GPU의 동작 주파수와 동작 전압은
    상기 정점 개수 및 상기 디스플레이 컨트롤러의 출력 데이터의 프레임 업데이트 속도에 기초하여 조절되는 SoC의 동작 방법.
  4. 제3항에 있어서, 상기 GPU의 동작 주파수와 동작 전압은
    상기 정점 개수 및 상기 프레임 업데이트 속도에 각각 가중치를 적용하여 산출된 값에 따라 결정되는 SoC의 동작 방법.
  5. 제3항에 있어서, 상기 GPU의 동작 주파수와 동작 전압은
    상기 정점 개수 및 상기 프레임 업데이트 속도 중 적어도 하나가 기설정된 임계 범위를 벗어날 때 변경되는 SoC의 동작 방법.
  6. 제3항에 있어서, 상기 GPU의 동작 주파수와 동작 전압은
    상기 정점 개수 및 상기 프레임 업데이트 속도가 기설정된 임계 범위를 모두 벗어날 때 변경되는 SoC의 동작 방법.
  7. 제3항에 있어서, 상기 GPU의 동작 주파수와 동작 전압은
    상기 정점 개수, 상기 프레임 업데이트 속도 및 상기 GPU의 동작 여부가 측정된 시간과 상기 측정된 시간 내 상기 GPU가 동작하는 시간의 비율에 기초하여 조절되는 SoC의 동작 방법.
  8. 입력 데이터를 수신하고 상기 입력 데이터에 기초하여 제1 출력 데이터를 생성하고 출력하는 GPU;
    상기 제1 출력 데이터에 기초하여 제2 출력 데이터를 생성하고 출력하는 디스플레이 컨트롤러; 및
    상기 입력 데이터 및 상기 제2 출력 데이터 중 적어도 하나에 따라 상기 GPU의 동작 주파수 및 동작 전압을 조절하는 CPU를 포함하는 SoC.
  9. 제8항에 있어서, 상기 GPU의 동작 주파수와 동작 전압은
    상기 입력 데이터의 프레임당 정점(vertex) 개수에 기초하여 조절되는 SoC.
  10. 제8항에 있어서, 상기 GPU의 동작 주파수와 동작 전압은
    상기 제2 출력 데이터의 프레임 업데이트 속도(frame update rate)에 기초하여 조절되는 SoC.
KR1020120097465A 2012-09-04 2012-09-04 3차원 작업 부하를 이용하여 dvfs 정책을 수행하는 시스템-온 칩 및 이의 동작 방법 KR20140030823A (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020120097465A KR20140030823A (ko) 2012-09-04 2012-09-04 3차원 작업 부하를 이용하여 dvfs 정책을 수행하는 시스템-온 칩 및 이의 동작 방법
US14/016,453 US20140063026A1 (en) 2012-09-04 2013-09-03 Soc performing dynamic voltage and frequency scaling policies using 3d workload, and method using the same
CN201310397845.4A CN103677208A (zh) 2012-09-04 2013-09-04 利用3d工作量执行动态电压和频率缩放策略的半导体器件
JP2013183116A JP2014053006A (ja) 2012-09-04 2013-09-04 3次元作業負荷を用いてDVFS政策を行うSoC及びその動作方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120097465A KR20140030823A (ko) 2012-09-04 2012-09-04 3차원 작업 부하를 이용하여 dvfs 정책을 수행하는 시스템-온 칩 및 이의 동작 방법

Publications (1)

Publication Number Publication Date
KR20140030823A true KR20140030823A (ko) 2014-03-12

Family

ID=50186912

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120097465A KR20140030823A (ko) 2012-09-04 2012-09-04 3차원 작업 부하를 이용하여 dvfs 정책을 수행하는 시스템-온 칩 및 이의 동작 방법

Country Status (4)

Country Link
US (1) US20140063026A1 (ko)
JP (1) JP2014053006A (ko)
KR (1) KR20140030823A (ko)
CN (1) CN103677208A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170048847A (ko) * 2015-10-27 2017-05-10 삼성전자주식회사 영상 처리 장치 및 이를 포함하는 표시 시스템
US9829952B2 (en) 2014-11-24 2017-11-28 Samsung Electronics Co., Ltd. Processor that has its operating frequency controlled in view of power consumption during operation and semiconductor device including the same
KR20190036307A (ko) * 2017-09-27 2019-04-04 이화여자대학교 산학협력단 Dvfs 기법을 이용하는 모바일 디바이스

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9436263B2 (en) * 2014-02-21 2016-09-06 Qualcomm Incorporated Systems and methods for power optimization using throughput feedback
KR102164099B1 (ko) * 2014-03-28 2020-10-12 삼성전자 주식회사 시스템 온 칩, 이의 작동 방법, 및 이를 포함하는 장치
KR102222752B1 (ko) 2014-08-01 2021-03-04 삼성전자주식회사 프로세서의 동적 전압 주파수 스케일링 방법
US9940905B2 (en) * 2015-02-03 2018-04-10 Qualcomm Incorporated Clock rate adjustment for processing unit
US9760113B2 (en) * 2015-02-20 2017-09-12 Sony Interactive Entertainment America Llc Backward compatibility through use of spoof clock and fine grain frequency control
CN106155263B (zh) * 2015-04-14 2021-07-20 华为技术有限公司 一种参数调节方法及装置
KR20180078558A (ko) * 2016-12-30 2018-07-10 삼성전자주식회사 시스템 온 칩의 구동 방법, 이를 수행하는 시스템 온 칩 및 이를 포함하는 전자 시스템
CN106873696B (zh) * 2017-03-20 2018-03-20 东南大学 一种自适应快速电源电压调节系统
US10540737B2 (en) 2017-12-22 2020-01-21 International Business Machines Corporation Processing unit performance projection using dynamic hardware behaviors
US10719903B2 (en) 2017-12-22 2020-07-21 International Business Machines Corporation On-the fly scheduling of execution of dynamic hardware behaviors
US10699369B2 (en) * 2017-12-27 2020-06-30 Intel Corporation Intelligent memory DVFS scheme exploiting graphics inter-frame level correlation
CN111902790B (zh) * 2018-08-30 2022-05-31 华为技术有限公司 一种调频方法、装置及计算机可读存储介质
KR20200084987A (ko) * 2019-01-03 2020-07-14 삼성전자주식회사 전력을 제어하기 위한 전자 회로
CN110059291A (zh) * 2019-03-15 2019-07-26 上海大学 一种基于gpu的三阶低秩张量补全方法
CN110209501B (zh) * 2019-06-03 2022-02-08 Oppo广东移动通信有限公司 图形处理器的频率调整方法、装置、终端及存储介质
CN110286710B (zh) * 2019-07-01 2021-05-18 联想(北京)有限公司 一种控制方法、处理器及电子设备
US11409341B2 (en) 2019-10-01 2022-08-09 Intel Corporation Repeating graphics render pattern detection
KR20210101663A (ko) * 2020-02-10 2021-08-19 삼성전자주식회사 프레임의 생성에 소요된 시간 및 최대 허용 시간에 기반하여 프로세싱 유닛을 제어하는 전자 장치 및 전자 장치의 동작 방법
US20220100407A1 (en) * 2020-09-30 2022-03-31 Seagate Technology, Llc Data storage system with workload-based dynamic power consumption

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7937606B1 (en) * 2006-05-18 2011-05-03 Nvidia Corporation Shadow unit for shadowing circuit status
US20080055318A1 (en) * 2006-08-31 2008-03-06 Glen David I J Dynamic frame rate adjustment
US8112640B2 (en) * 2006-10-02 2012-02-07 Samsung Electronics Co., Ltd. Method of controlling voltage of power supplied to 3D graphics data processor and the 3D graphics data processor using the method
US8458497B2 (en) * 2007-10-11 2013-06-04 Qualcomm Incorporated Demand based power control in a graphics processing unit
US8199158B2 (en) * 2008-06-11 2012-06-12 Intel Corporation Performance allocation method and apparatus
US8054316B2 (en) * 2008-11-14 2011-11-08 Nvidia Corporation Picture processing using a hybrid system configuration
US8694811B2 (en) * 2010-10-29 2014-04-08 Texas Instruments Incorporated Power management for digital devices

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9829952B2 (en) 2014-11-24 2017-11-28 Samsung Electronics Co., Ltd. Processor that has its operating frequency controlled in view of power consumption during operation and semiconductor device including the same
KR20170048847A (ko) * 2015-10-27 2017-05-10 삼성전자주식회사 영상 처리 장치 및 이를 포함하는 표시 시스템
KR20190036307A (ko) * 2017-09-27 2019-04-04 이화여자대학교 산학협력단 Dvfs 기법을 이용하는 모바일 디바이스

Also Published As

Publication number Publication date
CN103677208A (zh) 2014-03-26
US20140063026A1 (en) 2014-03-06
JP2014053006A (ja) 2014-03-20

Similar Documents

Publication Publication Date Title
KR20140030823A (ko) 3차원 작업 부하를 이용하여 dvfs 정책을 수행하는 시스템-온 칩 및 이의 동작 방법
US9588915B2 (en) System on chip, method of operating the same, and apparatus including the same
KR101991682B1 (ko) Dvfs 제어 방법 및 이를 이용한 시스템-온 칩
US11656675B2 (en) Application processor performing a dynamic voltage and frequency scaling operation, computing system including the same, and operation method thereof
KR101927233B1 (ko) 이기종 멀티-코어 시스템의 gpu 전력 측정 방법
US9696771B2 (en) Methods and systems for operating multi-core processors
US20140184619A1 (en) System-on-chip performing dynamic voltage and frequency scaling
US11372472B2 (en) System on chip for reducing wake-up time, method of operating same, and computer system including same
KR20130110459A (ko) 시스템-온 칩, 이를 포함하는 전자 시스템 및 그 제어 방법
US11693466B2 (en) Application processor and system on chip
KR102222752B1 (ko) 프로세서의 동적 전압 주파수 스케일링 방법
US11734067B2 (en) Multi-core system and controlling operation of the same
US20140245047A1 (en) Information processing apparatus, operation state control method, and computer program product
US10725525B2 (en) Method of operating system-on-chip, system-on-chip performing the same and electronic system including the same
KR20140021283A (ko) 다중 dvfs 정책을 이용한 soc 및 이의 동작 방법
CN111936952A (zh) 用于处理器的响应式自主硬件性能状态控制的系统、装置和方法
US20230266815A1 (en) Dvfs controlling method, semiconductor device and semiconductor system using the dvfs controlling method
CN105807887B (zh) CPU和SoC桥片构架的节能型系统、处理装置及方法

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid