KR20210016773A - Electronic device for controlling frequency of processor and method of operating the same - Google Patents

Electronic device for controlling frequency of processor and method of operating the same Download PDF

Info

Publication number
KR20210016773A
KR20210016773A KR1020190094960A KR20190094960A KR20210016773A KR 20210016773 A KR20210016773 A KR 20210016773A KR 1020190094960 A KR1020190094960 A KR 1020190094960A KR 20190094960 A KR20190094960 A KR 20190094960A KR 20210016773 A KR20210016773 A KR 20210016773A
Authority
KR
South Korea
Prior art keywords
application
instruction set
processor
electronic device
set structure
Prior art date
Application number
KR1020190094960A
Other languages
Korean (ko)
Inventor
신영철
조대현
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020190094960A priority Critical patent/KR20210016773A/en
Priority to US16/983,090 priority patent/US11609596B2/en
Priority to EP20851124.6A priority patent/EP3942385B1/en
Priority to PCT/KR2020/010196 priority patent/WO2021025404A1/en
Publication of KR20210016773A publication Critical patent/KR20210016773A/en

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/04Generating or distributing clock signals or signals derived directly therefrom
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable 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/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/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/3243Power saving in microcontroller unit
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)

Abstract

According to various embodiments of the present invention, an electronic device capable of reducing power consumption comprises: a touch screen; and a processor including a plurality of cores. The processor may be set to check a first application satisfying a specified condition related to boosting of the processor among at least one application executed in the electronic device, check a first instruction set architecture (ISA) of the first application, and boost a frequency of a clock signal applied to at least one of the plurality of cores according to the type of the first ISA.

Description

프로세서의 주파수를 제어하는 전자 장치와 이의 동작 방법{ELECTRONIC DEVICE FOR CONTROLLING FREQUENCY OF PROCESSOR AND METHOD OF OPERATING THE SAME}Electronic device that controls the frequency of the processor and its operation method {ELECTRONIC DEVICE FOR CONTROLLING FREQUENCY OF PROCESSOR AND METHOD OF OPERATING THE SAME}

본 발명은, 다양한 실시 예에 따라 프로세서의 주파수를 제어하는 전자 장치와 이의 동작 방법에 관한 것이다.The present invention relates to an electronic device for controlling a frequency of a processor and a method of operating the same, according to various embodiments.

최근 태블릿(tablet) PC, 스마트 폰, 스마트 워치 등과 같은 전자 장치 또는 이동통신 단말기의 사용이 일반화되고 있으며, 전자 장치 또는 이동통신 단말기는 무선 통신의 기능뿐만 아니라 사진, 음악, 동영상, 게임 등의 다양한 기능들이 개발되어 적용되고 있다. 이에 따라, 사용자는 전자 장치 또는 이동통신 단말기를 이용하여 다양한 어플리케이션들을 사용할 수 있다. 다양한 어플리케이션들에 대하여, 전자 장치 또는 이동통신 단말기는 빠른 응답을 제공할 수 있도록 최적화된 성능을 제공하여야 한다. 전자 장치 또는 이동통신 단말기는 최적화된 성능을 제공하기 위해, CPU 주파수 부스터 기능을 이용할 수 있다. 예컨대, 이동통신 단말기는, 어플리케이션에 대하여 빠른 응답이 요구되는 상태에서, CPU의 주파수를 특정한 주파수 값으로 부스트하고, 해당 어플리케이션에 대한 태스크의 처리 속도를 증가시킬 수 있다.Recently, the use of electronic devices or mobile communication terminals such as tablet PCs, smart phones, smart watches, etc. has become common, and electronic devices or mobile communication terminals have various functions such as photos, music, videos, and games as well as wireless communication functions. Functions have been developed and applied. Accordingly, the user can use various applications using an electronic device or a mobile communication terminal. For various applications, an electronic device or a mobile communication terminal must provide optimized performance to provide a quick response. The electronic device or mobile communication terminal may use a CPU frequency booster function to provide optimized performance. For example, in a state in which a quick response to an application is required, the mobile communication terminal can boost the frequency of the CPU to a specific frequency value and increase the processing speed of a task for the application.

명령어 집합 구조(instruction set architecture(ISA))는 마이크로프로세서에 의해 인식될 수 있는 기계어 명령어를 의미할 수 있다. 마이크로프로세서는 ISA의 명령어를 분석하고, 분석한 명령어에 대응하는 특정한 기능을 수행할 수 있다. The instruction set architecture (ISA) may mean a machine language instruction that can be recognized by a microprocessor. The microprocessor can analyze the ISA instructions and perform specific functions corresponding to the analyzed instructions.

기존의 이동통신 단말기에서 수행되는 CPU의 주파수 부스터는, 어플리케이션이 가진 명령어 집합 구조(ISA)를 고려하지 않았다. 즉, 기존의 이동통신 단말기는, CPU의 주파수 부스터의 성능과 전력 소모량이 명령어 집합 구조(ISA) 별로 달라지는 설계의 특성을 고려하지 않고, 부스트될 주파수 값을 결정되었다. 이로 인해, 서로 다른 타입의 명령어 집합 구조(ISA)를 가지는 어플리케이션들에 있어서, 특정한 명령어 집합 구조(ISA)를 가지는 어플리케이션은 주파수 부스터를 수행하더라도 성능 저하가 발생될 수 있었다. The frequency booster of the CPU performed in the existing mobile communication terminal does not take into account the instruction set structure (ISA) of the application. That is, in the conventional mobile communication terminal, the frequency value to be boosted was determined without considering the design characteristics in which the performance and power consumption of the CPU frequency booster varies for each instruction set structure (ISA). For this reason, in applications having different types of instruction set structure (ISA), performance degradation may occur even if the application having a specific instruction set structure (ISA) performs a frequency booster.

또한, 기존의 이동 통신 단말기는 어플리케이션이 가진 명령어 집합 구조(ISA)를 고려하지 않아, 어플리케이션의 태스크를 처리하는데 최적의 성능을 제공하지 못하면서 동시에 주파수 부스터를 수행으로 인한 많은 전력을 소모할 수 있었다. In addition, the existing mobile communication terminal does not take into account the instruction set structure (ISA) of the application, and thus does not provide optimal performance for processing the task of the application, and at the same time consumes a lot of power due to the frequency booster.

본 발명의 다양한 실시 예는, 프로세서의 어플리케이션의 명령어 집합 구조(ISA)에 기초하여 프로세서의 클럭 주파수를 제어하여, 서로 다른 타입의 명령어 집합 구조(ISA)를 가지는 어플리케이션들을 빠르게 처리하기 위한 주파수 부스트 효율을 증가시키고 전력 소모를 감소시킬 수 있는 전자 장치와 이의 동작 방법을 제공할 수 있다.Various embodiments of the present invention control the clock frequency of the processor based on the instruction set structure (ISA) of the application of the processor, and frequency boost efficiency for rapidly processing applications having different types of instruction set structure (ISA). It is possible to provide an electronic device and a method of operating the same that can increase and reduce power consumption.

다양한 실시 예에 따른 전자 장치는, 터치 스크린, 및 복수의 코어들을 포함하는 프로세서를 포함하고, 상기 프로세서는, 상기 전자 장치에서 실행 중인 적어도 하나의 어플리케이션 중 상기 프로세서의 부스트와 관련된 지정된 조건을 만족하는 제1어플리케이션을 확인하고, 상기 제1어플리케이션의 제1명령어 집합 구조(instruction set architecture(ISA))를 확인하고, 상기 제1명령어 집합 구조의 종류에 따라 상기 복수의 코어들 중 적어도 하나의 코어에 인가되는 클럭 신호의 주파수를 부스트하도록 설정될 수 있다.An electronic device according to various embodiments of the present disclosure includes a touch screen and a processor including a plurality of cores, wherein the processor satisfies a specified condition related to a boost of the processor among at least one application running on the electronic device. Check the first application, check the first instruction set architecture (ISA) of the first application, and at least one of the plurality of cores according to the type of the first instruction set structure It can be set to boost the frequency of the applied clock signal.

다양한 실시 예에 따른 전자 장치의 동작 방법은, 상기 전자 장치에서 실행 중인 적어도 하나의 어플리케이션 중 상기 프로세서의 부스트와 관련된 지정된 조건을 만족하는 제1어플리케이션을 확인하는 동작, 상기 제1어플리케이션의 제1명령어 집합 구조(instruction set architecture(ISA))를 확인하는 동작, 및 상기 제1명령어 집합 구조의 종류에 따라 상기 전자 장치에 포함된 적어도 하나의 프로세서에 인가되는 클럭 신호의 주파수를 부스트하는 동작을 포함할 수 있다.An operation method of an electronic device according to various embodiments of the present disclosure includes: checking a first application that satisfies a specified condition related to a boost of the processor among at least one application running in the electronic device, and a first command of the first application Checking an instruction set architecture (ISA), and boosting a frequency of a clock signal applied to at least one processor included in the electronic device according to the type of the first instruction set structure. I can.

다양한 실시 예에 따른 컴퓨터로 판독할 수 있는 기록 매체는, 전자 장치에서 실행 중인 적어도 하나의 어플리케이션 중 프로세서의 부스트와 관련된 지정된 조건을 만족하는 제1어플리케이션을 확인하는 동작, 상기 제1어플리케이션의 제1명령어 집합 구조(instruction set architecture(ISA))를 확인하는 동작, 및 상기 제1명령어 집합 구조의 종류에 따라 상기 전자 장치에 포함된 적어도 하나의 프로세서에 인가되는 클럭 신호의 주파수를 부스트하는 동작을 실행하는 프로그램을 저장할 수 있다.A computer-readable recording medium according to various embodiments of the present disclosure includes an operation of checking a first application that satisfies a specified condition related to a boost of a processor among at least one application running on an electronic device, and a first application of the first application. Checking the instruction set architecture (ISA) and boosting the frequency of a clock signal applied to at least one processor included in the electronic device according to the type of the first instruction set structure You can save the program you play.

본 발명의 다양한 실시 예에 따른 전자 장치는, 프로세서의 어플리케이션의 명령어 집합 구조(ISA)에 기초하여 프로세서의 주파수 부스트를 위한 주파수 값을 제어하여, 어플리케이션의 처리 속도를 증가시키고, 이로 인한 전력 소모를 감소시킬 수 있다.An electronic device according to various embodiments of the present disclosure controls a frequency value for a frequency boost of a processor based on an instruction set structure (ISA) of an application of the processor, thereby increasing the processing speed of an application and reducing power consumption. Can be reduced.

본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 상세한 설명이 제공된다.
도 1은 다양한 실시 예들에 따른, 네트워크 환경 내의 전자 장치의 블럭도이다.
도 2는 다양한 실시 예들에 따른, 전자 장치의 개략적인 블럭도이다.
도 3은 다양한 실시 예들에 따른, 전자 장치의 동작 방법을 설명하기 위한 플로우 차트이다.
도 4는 다양한 실시 예들에 따른, 전자 장치가 프로세서의 주파수를 부스트하는 동작을 설명하기 위한 블럭도이다.
도 5는 다양한 실시 예들에 따른, 전자 장치가 테이블을 이용하여 부스트를 위한 주파수 값을 결정하는 동작을 설명하기 위한 플로우 차트이다.
도 6a와 도 6b는 다양한 실시 예들에 따른, 전자 장치가 부스트를 위한 주파수 값을 결정하는데 이용되는 테이블이다.
도 7a는 다양한 실시 예들에 따른, 프로세서에 포함된 코어들 각각의 주파수 부스트를 위한 테이블이다.
도 7b는 다양한 실시 예들에 따른, 프로세서에 포함된 코어들 각각의 주파수 부스트를 설명하기 위한 그래프이다.
도 8은 다양한 실시 예들에 따른, 전자 장치가 프로세서의 부스트를 위한 주파수 값을 결정하는 동작을 설명하기 위한 플로우 차트이다.
도 9는 다양한 실시 예들에 따른, 전자 장치가 프로세서의 부스트를 위한 주파수 값을 결정하는 동작을 설명하기 위한 플로우 차트이다.
도 10은 다양한 실시 예들에 따른, 전자 장치가 프로세서의 부스트를 위한 주파수 값을 결정하는 동작을 설명하기 위한 플로우 차트이다.
도 11a와 도 11b는 다양한 실시 예들에 따른, 전자 장치가 부스트를 위한 주파수 값을 결정하는 동작을 설명하기 위한 사용자 인터페이스이다.
도 12는 다양한 실시 예들에 따른, 전자 장치가 부스트를 위한 주파수 값을 결정하는 동작을 설명하기 위한 사용자 인터페이스이다.
A detailed description of each drawing is provided in order to more fully understand the drawings cited in the detailed description of the present invention.
1 is a block diagram of an electronic device in a network environment, according to various embodiments.
2 is a schematic block diagram of an electronic device according to various embodiments.
3 is a flowchart illustrating a method of operating an electronic device according to various embodiments of the present disclosure.
4 is a block diagram illustrating an operation of boosting a frequency of a processor by an electronic device according to various embodiments of the present disclosure.
5 is a flowchart illustrating an operation of determining, by an electronic device, a frequency value for a boost using a table, according to various embodiments of the present disclosure.
6A and 6B are tables used by an electronic device to determine a frequency value for a boost, according to various embodiments.
7A is a table for frequency boosting of each of cores included in a processor according to various embodiments of the present disclosure.
7B is a graph illustrating a frequency boost of each of cores included in a processor, according to various embodiments.
8 is a flowchart illustrating an operation of determining, by an electronic device, a frequency value for boosting a processor, according to various embodiments of the present disclosure.
9 is a flowchart illustrating an operation of determining, by an electronic device, a frequency value for boosting a processor, according to various embodiments of the present disclosure.
10 is a flowchart illustrating an operation of determining, by an electronic device, a frequency value for boosting a processor, according to various embodiments.
11A and 11B are user interfaces for explaining an operation of determining, by an electronic device, a frequency value for boost, according to various embodiments.
12 is a user interface for describing an operation of determining, by an electronic device, a frequency value for a boost, according to various embodiments.

도 1은, 다양한 실시 예들에 따른, 네트워크 환경(100) 내의 전자 장치(101)의 블럭도이다. 도 1을 참조하면, 네트워크 환경(100)에서 전자 장치(101)는 제 1 네트워크(198)(예: 근거리 무선 통신 네트워크)를 통하여 전자 장치(102)와 통신하거나, 또는 제 2 네트워크(199)(예: 원거리 무선 통신 네트워크)를 통하여 전자 장치(104) 또는 서버(108)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(101)는 서버(108)를 통하여 전자 장치(104)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(130), 입력 장치(150), 음향 출력 장치(155), 표시 장치(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 또는 안테나 모듈(197)을 포함할 수 있다. 어떤 실시예에서는, 전자 장치(101)에는, 이 구성요소들 중 적어도 하나(예: 표시 장치(160) 또는 카메라 모듈(180))가 생략되거나, 하나 이상의 다른 구성 요소가 추가될 수 있다. 어떤 실시예에서는, 이 구성요소들 중 일부들은 하나의 통합된 회로로 구현될 수 있다. 예를 들면, 센서 모듈(176)(예: 지문 센서, 홍채 센서, 또는 조도 센서)은 표시 장치(160)(예: 디스플레이)에 임베디드된 채 구현될 수 있다1 is a block diagram of an electronic device 101 in a network environment 100 according to various embodiments. Referring to FIG. 1, in a network environment 100, the electronic device 101 communicates with the electronic device 102 through a first network 198 (for example, a short-range wireless communication network), or a second network 199 It is possible to communicate with the electronic device 104 or the server 108 through (eg, a long-distance wireless communication network). According to an embodiment, the electronic device 101 may communicate with the electronic device 104 through the server 108. According to an embodiment, the electronic device 101 includes a processor 120, a memory 130, an input device 150, an audio output device 155, a display device 160, an audio module 170, and a sensor module ( 176, interface 177, haptic module 179, camera module 180, power management module 188, battery 189, communication module 190, subscriber identification module 196, or antenna module 197 ) Can be included. In some embodiments, at least one of these components (eg, the display device 160 or the camera module 180) may be omitted or one or more other components may be added to the electronic device 101. In some embodiments, some of these components may be implemented as one integrated circuit. For example, the sensor module 176 (eg, a fingerprint sensor, an iris sensor, or an illuminance sensor) may be implemented while being embedded in the display device 160 (eg, a display).

프로세서(120)는, 예를 들면, 소프트웨어(예: 프로그램(140))를 실행하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)을 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(120)는 다른 구성요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리(132)에 로드하고, 휘발성 메모리(132)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리(134)에 저장할 수 있다. 일실시예에 따르면, 프로세서(120)는 메인 프로세서(121)(예: 중앙 처리 장치 또는 어플리케이션 프로세서), 및 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(123)(예: 그래픽 처리 장치, 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 추가적으로 또는 대체적으로, 보조 프로세서(123)는 메인 프로세서(121)보다 저전력을 사용하거나, 또는 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서(123)는 메인 프로세서(121)와 별개로, 또는 그 일부로서 구현될 수 있다.The processor 120, for example, executes software (eg, a program 140) to implement at least one other component (eg, a hardware or software component) of the electronic device 101 connected to the processor 120. It can be controlled and can perform various data processing or operations. According to an embodiment, as at least part of data processing or operation, the processor 120 may store commands or data received from other components (eg, the sensor module 176 or the communication module 190) to the volatile memory 132. The command or data stored in the volatile memory 132 may be processed, and result data may be stored in the nonvolatile memory 134. According to an embodiment, the processor 120 includes a main processor 121 (eg, a central processing unit or an application processor), and a secondary processor 123 (eg, a graphic processing unit, an image signal processor) that can be operated independently or together with the main processor 121 (eg, a central processing unit or an application processor). , A sensor hub processor, or a communication processor). Additionally or alternatively, the coprocessor 123 may be set to use lower power than the main processor 121 or to be specialized for a designated function. The secondary processor 123 may be implemented separately from the main processor 121 or as a part thereof.

보조 프로세서(123)는, 예를 들면, 메인 프로세서(121)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(121)를 대신하여, 또는 메인 프로세서(121)가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서(121)와 함께, 전자 장치(101)의 구성요소들 중 적어도 하나의 구성요소(예: 표시 장치(160), 센서 모듈(176), 또는 통신 모듈(190))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일실시예에 따르면, 보조 프로세서(123)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성 요소(예: 카메라 모듈(180) 또는 통신 모듈(190))의 일부로서 구현될 수 있다. The coprocessor 123 is, for example, on behalf of the main processor 121 while the main processor 121 is in an inactive (eg, sleep) state, or the main processor 121 is active (eg, an application is executed). ) While in the state, together with the main processor 121, at least one of the components of the electronic device 101 (for example, the display device 160, the sensor module 176, or the communication module 190) It is possible to control at least some of the functions or states related to. According to an embodiment, the coprocessor 123 (eg, an image signal processor or a communication processor) may be implemented as part of another functionally related component (eg, the camera module 180 or the communication module 190). have.

메모리(130)는, 전자 장치(101)의 적어도 하나의 구성요소(예: 프로세서(120) 또는 센서모듈(176))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램(140)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(130)는, 휘발성 메모리(132) 또는 비휘발성 메모리(134)를 포함할 수 있다. The memory 130 may store various data used by at least one component of the electronic device 101 (eg, the processor 120 or the sensor module 176). The data may include, for example, software (eg, the program 140) and input data or output data for commands related thereto. The memory 130 may include a volatile memory 132 or a nonvolatile memory 134.

프로그램(140)은 메모리(130)에 소프트웨어로서 저장될 수 있으며, 예를 들면, 운영 체제(142), 미들 웨어(144) 또는 어플리케이션(146)을 포함할 수 있다. The program 140 may be stored as software in the memory 130, and may include, for example, an operating system 142, middleware 144, or an application 146.

입력 장치(150)는, 전자 장치(101)의 구성요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예: 사용자)로부터 수신할 수 있다. 입력 장치(150)는, 예를 들면, 마이크, 마우스, 또는 키보드를 포함할 수 있다. The input device 150 may receive a command or data to be used for a component of the electronic device 101 (eg, the processor 120) from an outside (eg, a user) of the electronic device 101. The input device 150 may include, for example, a microphone, a mouse, or a keyboard.

음향 출력 장치(155)는 음향 신호를 전자 장치(101)의 외부로 출력할 수 있다. 음향 출력 장치(155)는, 예를 들면, 스피커 또는 리시버를 포함할 수 있다. 스피커는 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용될 수 있고, 리시버는 착신 전화를 수신하기 위해 사용될 수 있다. 일실시예에 따르면, 리시버는 스피커와 별개로, 또는 그 일부로서 구현될 수 있다.The sound output device 155 may output an sound signal to the outside of the electronic device 101. The sound output device 155 may include, for example, a speaker or a receiver. The speaker can be used for general purposes such as multimedia playback or recording playback, and the receiver can be used to receive incoming calls. According to one embodiment, the receiver may be implemented separately from the speaker or as part of it.

표시 장치(160)는 전자 장치(101)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 표시 장치(160)는, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일실시예에 따르면, 표시 장치(160)는 터치를 감지하도록 설정된 터치 회로(touch circuitry), 또는 상기 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 센서 회로(예: 압력 센서)를 포함할 수 있다. The display device 160 may visually provide information to the outside of the electronic device 101 (eg, a user). The display device 160 may include, for example, a display, a hologram device, or a projector and a control circuit for controlling the device. According to an embodiment, the display device 160 may include a touch circuitry set to sense a touch, or a sensor circuit (eg, a pressure sensor) set to measure the strength of a force generated by the touch. have.

오디오 모듈(170)은 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 일실시예에 따르면, 오디오 모듈(170)은, 입력 장치(150)를 통해 소리를 획득하거나, 음향 출력 장치(155), 또는 전자 장치(101)와 직접 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(102)) (예: 스피커 또는 헤드폰))를 통해 소리를 출력할 수 있다.The audio module 170 may convert sound into an electric signal or, conversely, convert an electric signal into sound. According to an embodiment, the audio module 170 acquires sound through the input device 150, the sound output device 155, or an external electronic device (for example, an external electronic device directly or wirelessly connected to the electronic device 101). Sound may be output through the electronic device 102) (for example, a speaker or headphones).

센서 모듈(176)은 전자 장치(101)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일실시예에 따르면, 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다. The sensor module 176 detects an operating state (eg, power or temperature) of the electronic device 101, or an external environmental state (eg, a user state), and generates an electrical signal or data value corresponding to the detected state. can do. According to an embodiment, the sensor module 176 may include, for example, a gesture sensor, a gyro sensor, an atmospheric pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biometric sensor, It may include a temperature sensor, a humidity sensor, or an illuminance sensor.

인터페이스(177)는 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 직접 또는 무선으로 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 일실시예에 따르면, 인터페이스(177)는, 예를 들면, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.The interface 177 may support one or more designated protocols that may be used for the electronic device 101 to directly or wirelessly connect with an external electronic device (eg, the electronic device 102 ). According to an embodiment, the interface 177 may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.

연결 단자(178)는, 그를 통해서 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 일실시예에 따르면, 연결 단자(178)는, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.The connection terminal 178 may include a connector through which the electronic device 101 can be physically connected to an external electronic device (eg, the electronic device 102 ). According to an embodiment, the connection terminal 178 may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (eg, a headphone connector).

햅틱 모듈(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 일실시예에 따르면, 햅틱 모듈(179)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.The haptic module 179 may convert an electrical signal into a mechanical stimulus (eg, vibration or movement) or an electrical stimulus that a user can perceive through a tactile or motor sense. According to an embodiment, the haptic module 179 may include, for example, a motor, a piezoelectric element, or an electrical stimulation device.

카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일실시예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다.The camera module 180 may capture a still image and a video. According to an embodiment, the camera module 180 may include one or more lenses, image sensors, image signal processors, or flashes.

전력 관리 모듈(188)은 전자 장치(101)에 공급되는 전력을 관리할 수 있다. 일실시예에 따르면, 전력 관리 모듈(388)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다.The power management module 188 may manage power supplied to the electronic device 101. According to an embodiment, the power management module 388 may be implemented as, for example, at least a part of a power management integrated circuit (PMIC).

배터리(189)는 전자 장치(101)의 적어도 하나의 구성 요소에 전력을 공급할 수 있다. 일실시예에 따르면, 배터리(189)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.The battery 189 may supply power to at least one component of the electronic device 101. According to an embodiment, the battery 189 may include, for example, a non-rechargeable primary cell, a rechargeable secondary cell, or a fuel cell.

통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102), 전자 장치(104), 또는 서버(108))간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일실시예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(194)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 제 1 네트워크(198)(예: 블루투스, WiFi direct 또는 IrDA(infrared data association) 같은 근거리 통신 네트워크) 또는 제 2 네트워크(199)(예: 셀룰러 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부 전자 장치와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성 요소(예: 단일 칩)으로 통합되거나, 또는 서로 별도의 복수의 구성 요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈(192)은 가입자 식별 모듈(196)에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크 내에서 전자 장치(101)를 확인 및 인증할 수 있다. The communication module 190 is a direct (eg, wired) communication channel or a wireless communication channel between the electronic device 101 and an external electronic device (eg, electronic device 102, electronic device 104, or server 108). It is possible to support establishment and communication through the established communication channel. The communication module 190 operates independently of the processor 120 (eg, an application processor), and may include one or more communication processors that support direct (eg, wired) communication or wireless communication. According to an embodiment, the communication module 190 is a wireless communication module 192 (eg, a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module 194 (eg : A LAN (local area network) communication module, or a power line communication module) may be included. Among these communication modules, a corresponding communication module is a first network 198 (for example, a short-range communication network such as Bluetooth, WiFi direct or IrDA (infrared data association)) or a second network 199 (for example, a cellular network, the Internet, or It can communicate with external electronic devices through a computer network (for example, a telecommunication network such as a LAN or WAN). These various types of communication modules may be integrated into one component (eg, a single chip), or may be implemented as a plurality of separate components (eg, multiple chips). The wireless communication module 192 uses subscriber information (e.g., International Mobile Subscriber Identifier (IMSI)) stored in the subscriber identification module 196 in a communication network such as the first network 198 or the second network 199. The electronic device 101 can be checked and authenticated.

안테나 모듈(197)은 신호 또는 전력을 외부(예: 외부 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일실시예에 따르면, 안테나 모듈(197)은 하나 이상의 안테나들을 포함할 수 있고, 이로부터, 제 1 네트워크 198 또는 제 2 네트워크 199와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면, 통신 모듈(190)에 의하여 선택될 수 있다. 신호 또는 전력은 상기 선택된 적어도 하나의 안테나를 통하여 통신 모듈(190)과 외부 전자 장치 간에 송신되거나 수신될 수 있다.The antenna module 197 may transmit a signal or power to the outside (eg, an external electronic device) or receive from the outside. According to an embodiment, the antenna module 197 may include one or more antennas, from which at least one antenna suitable for a communication method used in a communication network such as a first network 198 or a second network 199, For example, it may be selected by the communication module 190. The signal or power may be transmitted or received between the communication module 190 and an external electronic device through the at least one selected antenna.

상기 구성요소들 중 적어도 일부는 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input and output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))를 통해 서로 연결되고 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.At least some of the components are connected to each other through a communication method (e.g., a bus, general purpose input and output (GPIO), serial peripheral interface (SPI), or mobile industry processor interface (MIPI))) between peripheral devices and signals ( E.g. commands or data) can be exchanged with each other.

일실시예에 따르면, 명령 또는 데이터는 제 2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부의 전자 장치(104)간에 송신 또는 수신될 수 있다. 전자 장치(102, 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일실시예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 외부 전자 장치들(102, 104, or 108) 중 하나 이상의 외부 장치들에서 실행될 수 있다. 예를 들면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부를 수행하라고 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다.According to an embodiment, commands or data may be transmitted or received between the electronic device 101 and the external electronic device 104 through the server 108 connected to the second network 199. Each of the electronic devices 102 and 104 may be a device of the same or different type as the electronic device 101. According to an embodiment, all or part of the operations executed by the electronic device 101 may be executed by one or more of the external electronic devices 102, 104, or 108. For example, when the electronic device 101 needs to perform a function or service automatically or in response to a request from a user or another device, the electronic device 101 does not execute the function or service by itself. In addition or in addition, it is possible to request one or more external electronic devices to perform the function or at least part of the service. One or more external electronic devices receiving the request may execute at least a part of the requested function or service, or an additional function or service related to the request, and transmit the execution result to the electronic device 101. The electronic device 101 may process the result as it is or additionally and provide it as at least a part of a response to the request. To this end, for example, cloud computing, distributed computing, or client-server computing technology may be used.

본 문서에 개시된 다양한 실시예들에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치 (예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치를 포함할 수 있다. 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.Electronic devices according to various embodiments disclosed in this document may be devices of various types. The electronic device may include, for example, a portable communication device (eg, a smart phone), a computer device, a portable multimedia device, a portable medical device, a camera, a wearable device, or a home appliance. The electronic device according to the embodiment of the present document is not limited to the above-described devices.

본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시예들로 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나", "A 또는 B 중 적어도 하나,""A, B 또는 C," "A, B 및 C 중 적어도 하나,"및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제 3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.Various embodiments of this document and terms used therein are not intended to limit the technical features described in this document to specific embodiments, and should be understood to include various modifications, equivalents, or substitutes of the corresponding embodiments. In connection with the description of the drawings, similar reference numerals may be used for similar or related components. The singular form of a noun corresponding to an item may include one or a plurality of the items unless clearly indicated otherwise in a related context. In this document, “A or B”, “at least one of A and B”, “at least one of A or B,” “A, B or C,” “at least one of A, B and C,” and “A Each of the phrases such as "at least one of B, or C" may include all possible combinations of items listed together in the corresponding phrase among the phrases. Terms such as "first", "second", or "first" or "second" may be used simply to distinguish the component from other corresponding components, and the components may be referred to in other aspects (eg, importance or Order) is not limited. Some (eg, a first) component is referred to as “coupled” or “connected” with or without the terms “functionally” or “communicatively” to another (eg, second) component. When mentioned, it means that any of the above components can be connected to the other components directly (eg by wire), wirelessly, or via a third component.

본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일실시예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다. The term "module" used in this document may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic blocks, parts, or circuits. The module may be an integrally configured component or a minimum unit of the component or a part thereof that performs one or more functions. For example, according to an embodiment, the module may be implemented in the form of an application-specific integrated circuit (ASIC).

본 문서의 다양한 실시예들은 기기(machine)(예: 전자 장치(101)) 의해 읽을 수 있는 저장 매체(storage medium)(예: 내장 메모리(136) 또는 외장 메모리(138))에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램(140))로서 구현될 수 있다. 예를 들면, 기기(예: 전자 장치(101))의 프로세서(예: 프로세서(120))는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체 는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적’은 저장매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.Various embodiments of the present document include one or more instructions stored in a storage medium (eg, internal memory 136 or external memory 138) readable by a machine (eg, electronic device 101). It may be implemented as software (for example, the program 140) including them. For example, the processor (eg, the processor 120) of the device (eg, the electronic device 101) may call and execute at least one command among one or more commands stored from a storage medium. This makes it possible for the device to be operated to perform at least one function according to the at least one command invoked. The one or more instructions may include code generated by a compiler or code executable by an interpreter. A storage medium that can be read by a device may be provided in the form of a non-transitory storage medium. Here,'non-transient' only means that the storage medium is a tangible device and does not contain a signal (e.g., electromagnetic wave), and this term refers to the case where data is semi-permanently stored in the storage medium. It does not distinguish between temporary storage cases.

일실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.According to an embodiment, a method according to various embodiments disclosed in the present document may be provided by being included in a computer program product. Computer program products can be traded between sellers and buyers as commodities. The computer program product is distributed in the form of a device-readable storage medium (e.g. compact disc read only memory (CD-ROM)), or through an application store (e.g. Play Store TM ) or two user devices ( It can be distributed (e.g., downloaded or uploaded) directly between, e.g. smartphones). In the case of online distribution, at least a portion of the computer program product may be temporarily stored or temporarily generated in a storage medium that can be read by a device such as a server of a manufacturer, a server of an application store, or a memory of a relay server.

다양한 실시예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있다. 다양한 실시예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.According to various embodiments, each component (eg, module or program) of the above-described components may include a singular number or a plurality of entities. According to various embodiments, one or more components or operations among the above-described corresponding components may be omitted, or one or more other components or operations may be added. Alternatively or additionally, a plurality of components (eg, a module or a program) may be integrated into one component. In this case, the integrated component may perform one or more functions of each component of the plurality of components in the same or similar to that performed by the corresponding component among the plurality of components prior to the integration. . According to various embodiments, operations performed by a module, program, or other component are sequentially, parallel, repeatedly, or heuristically executed, or one or more of the above operations are executed in a different order or omitted. Or one or more other actions may be added.

도 2는 다양한 실시 예들에 따른, 전자 장치의 개략적인 블럭도이다.2 is a schematic block diagram of an electronic device according to various embodiments.

도 2를 참조하면, 전자 장치(201)는, 프로세서(220), 메모리(230), 및 디스플레이(260)를 포함할 수 있다. 전자 장치(201)는, 도 1의 전자 장치(101 또는 102)와 실질적으로 동일하거나 유사하게 구현될 수 있다.Referring to FIG. 2, the electronic device 201 may include a processor 220, a memory 230, and a display 260. The electronic device 201 may be implemented substantially the same as or similar to the electronic device 101 or 102 of FIG. 1.

다양한 실시 예에 따라, 프로세서(220)는 전자 장치(201)의 전반적인 동작을 제어할 수 있다. 예컨대, 프로세서(220)는 도 1의 프로세서(120)와 실질적으로 동일하거나 유사하게 구현될 수 있다.According to various embodiments, the processor 220 may control the overall operation of the electronic device 201. For example, the processor 220 may be implemented substantially the same as or similar to the processor 120 of FIG. 1.

다양한 실시 예에 따라, 프로세서(220)는, 복수의 코어들(또는 클러스터들)을 포함할 수 있다. 예컨대, 프로세서(220)는, 제1코어(221), 제2코어(222), 및 제3코어(223)을 포함할 수 있다. 예컨대, 제1코어(221), 제2코어(222), 및 제3코어(223) 각각은 적어도 하나의 코어(또는 코어 프로세서)를 포함할 수 있다. 즉, 도 2에서는 프로세서(220)가 3개의 코어만을 포함하도록 도시하고 있으나, 이는, 단지 예시적으로 프로세서(220)가 3종류의 코어들을 포함하는 것을 의미하는 것이고, 프로세서(220)가 포함하는 코어들의 갯수는 이에 한정되지 않을 수 있다. 예컨대, 제1코어(221)는, 적어도 하나의 빅 코어를 포함할 수 있고, 제2코어(222)는, 적어도 하나의 미들 코어를 포함할 수 있고, 제3코어(223)는 적어도 하나의 리틀 코어를 포함할 수 있다. 예컨대, 상대적으로 빅 코어는 고성능, 미들 코어는 중간 성능, 리틀 코어는 저성능의 프로세서일 수 있다. 즉, 프로세서(220)는, 헤테로지니어스(heterogenous) 코어 구조를 포함할 수 있다. 예컨대, 프로세서(220)는, 어플리케이션(또는 어플리케이션의 태스크)의 워크 로드(work load)에 따라 제1코어(221), 제2코어(222), 및 제3코어(223) 중 적어도 하나의 코어를 통해 상기 어플리케이션(또는 어플리케이션의 태스크)를 실행(또는 처리)할 수 있다.According to various embodiments, the processor 220 may include a plurality of cores (or clusters). For example, the processor 220 may include a first core 221, a second core 222, and a third core 223. For example, each of the first core 221, the second core 222, and the third core 223 may include at least one core (or core processor). That is, although FIG. 2 shows that the processor 220 includes only three cores, this means that the processor 220 includes three types of cores by way of example only, and the processor 220 includes The number of cores may not be limited thereto. For example, the first core 221 may include at least one big core, the second core 222 may include at least one middle core, and the third core 223 may include at least one It may include a little core. For example, a big core may be a high performance processor, a middle core may be a medium performance processor, and a little core may be a low performance processor. That is, the processor 220 may include a heterogenous core structure. For example, the processor 220 may include at least one of the first core 221, the second core 222, and the third core 223 according to the work load of the application (or task of the application). Through this, the application (or task of the application) may be executed (or processed).

다양한 실시 예에 따라, 프로세서(220)는, 부스트가 필요한(또는 요구되는) 어플리케이션 또는 어플리케이션의 태스크를 확인할 수 있다. 예컨대, 프로세서(220)는, 전자 장치(201)에서 실행 중인 적어도 하나의 어플리케이션 중 프로세서(220)의 부스트와 관련된 지정된 조건을 만족하는 어플리케이션(또는 어플리케이션의 태스크)을 확인할 수 있다. 예컨대, 부스트와 관련된 지정된 조건은 부스트가 필요한 조건을 의미할 수 있으며, 프로세서(220)에 의해 자동으로 또는 수동으로 지정될 수 있다. 예컨대, 워크 로드(예컨대, CPU 부하 정도 또는 CPU 부하율)가 지정된 값(또는 지정된 레벨에 대응하는 값)보다 많은 태스크, 즉시 응답하도록 설정된 어플리케이션(또는 어플리케이션의 태스크)의 실행, 디스플레이(260)의 최상단에 표시되는 어플리케이션, 작업 우선 순위가 높은 어플리케이션(또는 어플리케이션의 태스크)의 실행, 현재 활성화된 어플리케이션의 태스크, 및/또는 사용자의 입력에 대응하는 어플리케이션(또는 어플리케이션의 태스크) 등이 지정된 조건을 만족할 수 있다.According to various embodiments of the present disclosure, the processor 220 may identify an application requiring (or required) a boost or a task of the application. For example, the processor 220 may identify an application (or task of an application) that satisfies a specified condition related to a boost of the processor 220 among at least one application being executed in the electronic device 201. For example, a specified condition related to a boost may mean a condition requiring a boost, and may be automatically or manually specified by the processor 220. For example, tasks with a workload (eg, CPU load level or CPU load ratio) greater than a specified value (or a value corresponding to a specified level), execution of an application set to respond immediately (or a task of an application), the top of the display 260 The application displayed in, execution of the application (or task of the application) with a high job priority, the task of the currently active application, and/or the application (or task of the application) corresponding to the user's input can satisfy the specified conditions. have.

다양한 실시 예에 따라, 프로세서(220)는, 부스트가 필요한(또는 요구되는) 어플리케이션 또는 어플리케이션의 태스크가 확인되면, 해당 어플리케이션의 명령어 집합 구조(instruction set architecture(ISA))를 확인할 수 있다. 예컨대, 명령어 집합 구조는 32비트 명령어 집합 구조 또는 64비트 명령어 집합 구조를 포함할 수 있다. 예컨대, 프로세서(220)는 어플리케이션의 'ApplicationInfo Class' 내의 'primaryCpuAbi' 및 'dalvik VMRuntime'을 통해 해당 어플리케이션이 어떤 명령어 집합을 가지고 있는지 확인할 수 있다. 즉, 프로세서(220)는 어플리케이션이 32비트 명령어 집합 및 64비트 명령어 집합 중 어떤 명령어 집합을 가지고 있는지 확인 또는 판단할 수 있다.According to various embodiments of the present disclosure, when an application requiring (or requiring) a boost or a task of an application is identified, the processor 220 may check an instruction set architecture (ISA) of the application. For example, the instruction set structure may include a 32-bit instruction set structure or a 64-bit instruction set structure. For example, the processor 220 may check what instruction set the corresponding application has through'primaryCpuAbi' and'dalvik VMRuntime' in the'ApplicationInfo Class' of the application. That is, the processor 220 may check or determine which instruction set the application has from the 32-bit instruction set and the 64-bit instruction set.

다양한 실시 예에 따라, 프로세서(220)는, 디스플레이(260)의 최상단에 표시되는 어플리케이션이 변경될 때마다, 현재 디스플레이(260)의 최상단에 표시된 어플리케이션의 명령어 집합 구조를 확인할 수 있다. 예컨대, 프로세서(220)는 디스플레이(260)의 최상단에 표시되는 어플리케이션이 변경될 때, 'Activity Resume'와 관련된 '호출(call)'이 발생되고, 새롭게 변경된 어플리케이션의 정보를 확인할 수 있다. 어플리케이션의 정보에 기초하여, 프로세서(220)는 해당 어플리케이션이 어떤 명령어 집합을 가지고 있는지 확인할 수 있다.According to various embodiments of the present disclosure, whenever an application displayed on the top of the display 260 is changed, the processor 220 may check an instruction set structure of an application currently displayed on the top of the display 260. For example, when the application displayed on the top of the display 260 is changed, the processor 220 may generate a'call' related to the'Activity Resume' and check information of the newly changed application. Based on the information of the application, the processor 220 may check which instruction set the corresponding application has.

다양한 실시 예에 따라, 프로세서(220)는 명령어 집합 구조(또는 명령어 집합 구조)에 따라 프로세서(220)(또는 프로세서(220)의 주파수)를 부스트할 수 있다. 예컨대, 프로세서(220)(또는 프로세서(220)의 주파수)를 부스트하는 것은, 프로세서(220)에 인가되는 클럭 신호의 주파수 값을 부스트(또는 증가)하는 동작을 의미할 수 있다. 보다 구체적으로, 프로세서(220)의 주파수를 부스트하는 것은, 프로세서(220)에 인가되는 클럭 신호(clock signal)의 최소 주파수 값을 결정하고, 결정된 주파수 값 이상의 주파수를 가지는 클럭 신호에 기초하여 프로세서(220)를 구동시키는 것을 의미할 수 있다. 이때, 클럭 신호는, 프로세서(220)의 내부 또는 외부에 구비된 클럭 발진 회로에 의해 출력될 수 있다. According to various embodiments, the processor 220 may boost the processor 220 (or the frequency of the processor 220) according to the instruction set structure (or instruction set structure). For example, boosting the processor 220 (or the frequency of the processor 220) may refer to an operation of boosting (or increasing) a frequency value of a clock signal applied to the processor 220. More specifically, boosting the frequency of the processor 220 determines a minimum frequency value of a clock signal applied to the processor 220, and based on a clock signal having a frequency equal to or greater than the determined frequency value, the processor ( 220) may mean driving. In this case, the clock signal may be output by a clock oscillation circuit provided inside or outside the processor 220.

다양한 실시 예에 따라, 프로세서(220)는 명령어 집합 구조(또는 명령어 집합 구조의 종류)에 따라 프로세서(220)에 포함된 복수의 코어들(221, 222, 및 223) 중 적어도 하나의 코어에 인가되는 클럭 신호의 주파수를 부스트할 수 있다. 예컨대, 프로세서(220)는, 제1코어(221)(예컨대, 빅 코어 또는 빅 클러스터), 제2코어(222)(예컨대, 미들 코어 또는 미들 클러스터) 각각에 인가되는 클럭 신호의 주파수 값을 부스트할 수 있다. 프로세서(220)는, 제1코어(221)(예컨대, 빅 코어 또는 빅 클러스터), 제2코어(222)(예컨대, 미들 코어 또는 미들 클러스터), 및 제3코어(223)(예컨대, 리틀 코어 또는 리틀 클러스터) 각각에 인가되는 클럭 신호의 주파수 값을 부스트할 수 있다. 또는, 프로세서(220)는, 제2코어(222)(예컨대, 미들 코어 또는 미들 클러스터) 또는 제3코어(223)(예컨대, 리틀 코어 또는 리틀 클러스터)에 인가되는 클럭 신호의 주파수 값을 부스트할 수 있다. According to various embodiments, the processor 220 is applied to at least one of the plurality of cores 221, 222, and 223 included in the processor 220 according to the instruction set structure (or the type of instruction set structure). The frequency of the clock signal can be boosted. For example, the processor 220 boosts the frequency value of a clock signal applied to each of the first core 221 (eg, a big core or a big cluster) and the second core 222 (eg, a middle core or a middle cluster) can do. The processor 220 includes a first core 221 (eg, a big core or a big cluster), a second core 222 (eg, a middle core or a middle cluster), and a third core 223 (eg, a little core). Alternatively, a frequency value of a clock signal applied to each of the little clusters) may be boosted. Alternatively, the processor 220 may boost the frequency value of a clock signal applied to the second core 222 (eg, a middle core or a middle cluster) or a third core 223 (eg, a little core or a little cluster). I can.

다양한 실시 예에 따라, 프로세서(220)는 명령어 집합 구조(또는 명령어 집합 구조의 종류)에 따라 복수의 코어들(221, 222, 및 223) 중 적어도 하나의 코어에 인가되는 클럭 신호의 주파수 값을 결정할 수 있다. 또한, 프로세서(220)는 복수의 코어들(221, 222, 및 223) 중 적어도 하나의 코어에 결정된 주파수 값 이상의 주파수를 가지는 클럭 신호를 인가할 수 있다. 이때, 프로세서(220)는, 명령어 집합 구조의 종류에 따른 특정 주파수 값들에 대응하는 복수의 코어들(221, 222, 및 223) 각각의 성능과 전력 소모량을 나타내는 테이블을 이용하여 주파수 값을 결정할 수 있다.According to various embodiments, the processor 220 calculates a frequency value of a clock signal applied to at least one of the plurality of cores 221, 222, and 223 according to the instruction set structure (or the type of instruction set structure). You can decide. Also, the processor 220 may apply a clock signal having a frequency equal to or greater than the determined frequency value to at least one of the plurality of cores 221, 222, and 223. At this time, the processor 220 may determine a frequency value using a table representing the performance and power consumption of each of the plurality of cores 221, 222, and 223 corresponding to specific frequency values according to the type of the instruction set structure. have.

비록, 도 2에서는 전자 장치(201)가 하나의 프로세서를 포함하도록 도시하고 있으나, 전자 장치(201)는 복수의 프로세서를 포함할 수도 있다. 즉, 전자 장치(201)는 적어도 하나의 프로세서를 포함할 수 있으며, 본원의 기술적 사상은, 적어도 하나의 프로세서를 부스트하는 동작에도 적용될 수 있다.Although, in FIG. 2, the electronic device 201 is illustrated to include one processor, the electronic device 201 may include a plurality of processors. That is, the electronic device 201 may include at least one processor, and the technical idea of the present application may also be applied to an operation of boosting at least one processor.

다양한 실시 예에 따라, 메모리(230)는, 전자 장치(201)의 데이터 또는 정보를 저장할 수 있다. 예컨대, 메모리(230)는 명령어 집합 구조의 종류에 따른 특정 주파수 값들에 대응하는 복수의 코어들(221, 222, 및 223) 각각의 성능과 전력 소모량을 나타내는 테이블에 대한 정보를 저장할 수 있다. 또한, 메모리(230)는 어플리케이션들에 대한 정보를 저장할 수 있다. 메모리(230)는 도 1의 메모리(130)와 실질적으로 동일하거나 유사하게 구현될 수 있다. According to various embodiments, the memory 230 may store data or information of the electronic device 201. For example, the memory 230 may store information on a table indicating the performance and power consumption of each of the plurality of cores 221, 222, and 223 corresponding to specific frequency values according to the type of instruction set structure. Additionally, the memory 230 may store information on applications. The memory 230 may be implemented substantially the same as or similar to the memory 130 of FIG. 1.

다양한 실시 예에 따라, 디스플레이(260)는, 전자 장치(201)의 데이터 또는 정보를 표시할 수 있다. 예컨대, 디스플레이(260)는 터치 스크린으로 구현될 수 있다. 디스플레이(260)는 도 1의 표시 장치(160)와 실질적으로 동일하거나 유사하게 구현될 수 있다.According to various embodiments, the display 260 may display data or information of the electronic device 201. For example, the display 260 may be implemented as a touch screen. The display 260 may be implemented substantially the same as or similar to the display device 160 of FIG. 1.

도 3은 다양한 실시 예들에 따른, 전자 장치의 동작 방법을 설명하기 위한 플로우 차트이다.3 is a flowchart illustrating a method of operating an electronic device according to various embodiments of the present disclosure.

도 3을 참조하면, 다양한 실시 예에 따라, 프로세서(도 2의 프로세서(220))는 현재의 워크 로드, 어플리케이션의 실행 상태 등을 모니터링할 수 있고, 부스트가 필요한 상황이 확인 또는 감지되면, 프로세서(220)의 부스트 동작을 시작할 수 있다. Referring to FIG. 3, according to various embodiments, a processor (processor 220 of FIG. 2) may monitor a current workload, an execution state of an application, etc., and when a situation requiring a boost is identified or detected, the processor The boost operation of 220 can be started.

다양한 실시 예에 따라, 동작 301에서, 프로세서(220)는, 프로세서(220)의 주파수 부스트와 관련된 지정된 조건을 만족하는 어플리케이션을 확인할 수 있다. 예컨대, 지정된 조건을 만족하는 어플리케이션은, 디스플레이(도 2의 디스플레이(260))에서 활성화된 윈도우에서 실행되는 적어도 하나의 어플리케이션, 디스플레이(260)의 최상단에 표시된 어플리케이션(예컨대, 디스플레이(260)에서 활성화된 복수의 윈도우들 각각에서 실행되는 어플리케이션 중 가장 최근에 사용된 어플리케이션), 즉시 응답이 필요한 어플리케이션, 사용자의 입력에 대응하는 어플리케이션 등을 포함할 수 있다.According to various embodiments, in operation 301, the processor 220 may check an application that satisfies a specified condition related to a frequency boost of the processor 220. For example, an application that satisfies the specified condition is at least one application executed in a window activated on the display (display 260 in FIG. 2), and an application displayed at the top of the display 260 (eg, activated on the display 260). The most recently used application among the applications executed in each of the plurality of windows), an application requiring an immediate response, an application corresponding to a user input, and the like may be included.

다양한 실시 예에 따라, 동작 303에서, 프로세서(220)는 확인된 어플리케이션의 명령어 집합 구조(ISA)를 확인할 수 있다. 예컨대, 프로세서(220)는 해당 어플리케이션의 명령어 집합 구조가 32비트 또는 64비트의 명령어 집합 구조인지 확인할 수 있다.According to various embodiments of the present disclosure, in operation 303, the processor 220 may check an instruction set structure (ISA) of the identified application. For example, the processor 220 may check whether the instruction set structure of the corresponding application is a 32-bit or 64-bit instruction set structure.

다양한 실시 예에 따라, 동작 305에서, 프로세서(220)는 명령어 집합 구조(또는 명령어 집합 구조의 종류)에 기초하여 프로세서(220)를 부스트하기 위한 주파수 값을 결정할 수 있다.According to various embodiments, in operation 305, the processor 220 may determine a frequency value for boosting the processor 220 based on the instruction set structure (or the type of the instruction set structure).

다양한 실시 예에 따라, 동작 307에서, 프로세서(220)는 프로세서(220)의 주파수를 부스트할 수 있다. 예컨대, 프로세서(220)는 결정된 주파수 값 이상의 주파수를 가지는 클럭 신호를 프로세서(220)에 포함된 적어도 하나의 코어에 인가할 수 있다. 예컨대, 프로세서(220) 내부의 각각의 코어는, 코어에서 현재 처리 중인 로드(load)에 따라 주파수(또는 주파수 값)가 결정될 수 있으며, 부스트 동작이 필요한 이벤트가 발생되면, 기존에 처리되는 로드(load)에 대응하는 상태와는 별도로 부스트 동작에 부합하는 주파수(또는 주파수 값)가 결정될 수 있다. 또한, 프로세서(220)는, 각 코어가 해당 주파수로 동작될 수 있도록 전압을 조정할 수 있다. 프로세서(220)는, 부스트된 주파수를 가지는 클럭 신호가 인가되는 적어도 하나의 코어가 해당 어플리케이션의 태스크를 처리하게 할 수 있다. 예컨대, 프로세서(220)는, 부스트된 주파수를 가지는 클럭 신호가 제1코어(예컨대, 도 2의 제1코어(221))에 인가되면, 어플리케이션의 태스크가 제1코어에서 처리되도록 제1코어(221)를 제어할 수 있다.According to various embodiments, in operation 307, the processor 220 may boost the frequency of the processor 220. For example, the processor 220 may apply a clock signal having a frequency equal to or higher than the determined frequency value to at least one core included in the processor 220. For example, for each core inside the processor 220, a frequency (or a frequency value) may be determined according to a load currently being processed by the core, and when an event requiring a boost operation occurs, a load ( A frequency (or frequency value) corresponding to the boost operation may be determined separately from a state corresponding to load). In addition, the processor 220 may adjust the voltage so that each core can operate at a corresponding frequency. The processor 220 may cause at least one core to which a clock signal having a boosted frequency is applied to process a task of a corresponding application. For example, when a clock signal having a boosted frequency is applied to the first core (eg, the first core 221 in FIG. 2), the processor 220 may perform a task of the application in the first core. 221) can be controlled.

도 4는 다양한 실시 예들에 따른, 전자 장치가 프로세서의 주파수를 부스트하는 동작을 설명하기 위한 블럭도이다. 4 is a block diagram illustrating an operation of boosting a frequency of a processor by an electronic device according to various embodiments of the present disclosure.

도 4를 참조하면, 전자 장치(예컨대, 도 2의 전자 장치(201))는, 프로세서(예컨대, 도 2의 프로세서(220))에 의해, 스케줄러(420) 및 부스트 제어 모듈(440)을 실행할 수 있다.Referring to FIG. 4, an electronic device (eg, the electronic device 201 of FIG. 2) executes a scheduler 420 and a boost control module 440 by a processor (eg, the processor 220 of FIG. 2 ). I can.

다양한 실시 예에 따라, 스케줄러(420)는 전자 장치(201)에서 실행되는 어플리케이션들의 스케쥴링과 관련된 동작을 제어할 수 있다. 스케줄러(420)는 어플리케이션의 태스크들(411, 412)을 확인할 수 있다. 또한, 스케줄러(420)는, ISA 확인 모듈(430)을 통해, 어플리케이션의 태스크들(411, 412)의 명령어 집합 구조를 확인할 수 있다. 즉, ISA 확인 모듈(430)은, 어플리케이션의 태스크들(411, 412)의 명령어 집합 구조의 종류를 확인할 수 있다. 예컨대, ISA 확인 모듈(430)은, 제1태스크들(411)이 32비트 명령어 집합 구조를 가짐을 확인할 수 있고, 제2태스크들(412)이 64비트 명령어 집합 구조를 가짐을 확인할 수 있다.According to various embodiments, the scheduler 420 may control an operation related to scheduling of applications executed in the electronic device 201. The scheduler 420 may check the tasks 411 and 412 of the application. In addition, the scheduler 420 may check the instruction set structure of the tasks 411 and 412 of the application through the ISA verification module 430. That is, the ISA verification module 430 may check the type of the instruction set structure of the tasks 411 and 412 of the application. For example, the ISA verification module 430 can confirm that the first tasks 411 have a 32-bit instruction set structure, and can confirm that the second tasks 412 have a 64-bit instruction set structure.

다양한 실시 예에 따라, 부스트 제어 모듈(440)은, ISA 확인 모듈(430)에 의해 확인된 태스크들(411, 412)의 명령어 집합 구조의 종류에 대한 정보를 획득할 수 있다. According to various embodiments, the boost control module 440 may obtain information on the type of the instruction set structure of the tasks 411 and 412 identified by the ISA verification module 430.

다양한 실시 예에 따라, 부스트 제어 모듈(440)은, 명령어 집합 구조의 종류에 따라 복수의 코어들(예컨대, 도 2의 221, 222, 및 223) 중 적어도 하나의 코어에 인가되는 클럭 신호의 주파수 값을 결정할 수 있다. 이때, 부스트 제어 모듈(440)은, 확인된 명령어 집합 구조의 종류에 대응하는 테이블 정보를 획득할 수 있다. 예컨대, 부스트 제어 모듈(440)은, 32비트 태스크의 경우 32비트 테이블 정보를 획득할 수 있고, 64비트 태스크의 경우 64비트 테이블 정보를 획득할 수 있다. 이때, 테이블 정보는, 해당 명령어 집합 구조의 종류에 대하여, 특정 주파수 값들에 대응하는 복수의 코어들(221, 222, 및 223) 각각의 성능과 전력 소모량에 대한 정보를 포함할 수 있다. 부스트 제어 모듈(440)은, 테이블 정보를 이용하여 프로세서(220)에 포함된 적어도 하나의 코어의 구동 주파수를 부스트하기 위한 주파수 값을 결정할 수 있다.According to various embodiments, the boost control module 440 includes a frequency of a clock signal applied to at least one of a plurality of cores (eg, 221, 222, and 223 of FIG. 2) according to the type of the instruction set structure. Value can be determined. In this case, the boost control module 440 may obtain table information corresponding to the type of the identified instruction set structure. For example, the boost control module 440 may obtain 32-bit table information in case of a 32-bit task, and obtain 64-bit table information in case of a 64-bit task. In this case, the table information may include information on the performance and power consumption of each of the plurality of cores 221, 222, and 223 corresponding to specific frequency values with respect to the type of the instruction set structure. The boost control module 440 may determine a frequency value for boosting the driving frequency of at least one core included in the processor 220 using the table information.

다양한 실시 예에 따라, 부스트 제어 모듈(440)은, 프로세서(220)의 주파수를 부스트하기 위한 부스트 제어 명령을 출력할 수 있다. 예컨대, 부스트 제어 명령은, 복수의 코어들(221, 222, 및 223) 중 적어도 하나의 코어에 결정된 주파수 값 이상의 주파수를 가지는 클럭 신호가 인가되도록 프로세서(220)를 제어하는 명령을 포함할 수 있다.According to various embodiments, the boost control module 440 may output a boost control command for boosting the frequency of the processor 220. For example, the boost control command may include a command for controlling the processor 220 so that a clock signal having a frequency greater than or equal to the determined frequency value is applied to at least one of the plurality of cores 221, 222, and 223. .

도 5는 다양한 실시 예들에 따른, 전자 장치가 테이블을 이용하여 부스트를 위한 주파수 값을 결정하는 동작을 설명하기 위한 플로우 차트이다.5 is a flowchart illustrating an operation of determining, by an electronic device, a frequency value for a boost using a table, according to various embodiments of the present disclosure.

도 5를 참조하면, 다양한 실시 예에 따라, 프로세서(도 2의 프로세서(220))는, 프로세서(220)의 주파수 부스트와 관련된 지정된 조건을 만족하는 어플리케이션을 확인할 수 있다. 예컨대, 프로세서(220)는, 해당하는 어플리케이션이 확인되면, 프로세서(220)의 주파수를 부스트하기 위한 동작을 시작할 수 있다.Referring to FIG. 5, according to various embodiments, the processor (the processor 220 of FIG. 2) may identify an application that satisfies a specified condition related to a frequency boost of the processor 220. For example, when a corresponding application is identified, the processor 220 may start an operation to boost the frequency of the processor 220.

다양한 실시 예에 따라, 동작 501에서, 프로세서(220)는 해당하는 어플리케이션의 명령어 집합 구조(ISA)를 확인할 수 있다. 예컨대, 프로세서(220)는 어플리케이션의 명령어 집합 구조가 32비트 명령어 집합 구조 또는 64비트 명령어 집합 구조인지 여부를 확인할 수 있다.According to various embodiments, in operation 501, the processor 220 may check an instruction set structure (ISA) of a corresponding application. For example, the processor 220 may check whether the instruction set structure of the application is a 32-bit instruction set structure or a 64-bit instruction set structure.

다양한 실시 예에 따라, 동작 503에서, 프로세서(220)는, 확인된 명령어 집합 구조의 종류에 따른 주파수 값에 대응하는 프로세서의 성능과 전력 소모량을 나타내는 테이블을 확인할 수 있다. 예컨대, 프로세서(220)는, 확인된 명령어 집합 구조가 32비트이면, 32비트에 대하여 주파수 값들에 대응하는 프로세서의 성능과 전력 소모량을 나타내는 테이블을 획득할 수 있다. 또는, 프로세서(220)는, 명령어 집합 구조가 64비트이면, 64비트에 대하여 주파수 값들에 대응하는 프로세서의 성능과 전력 소모량을 나타내는 테이블을 획득할 수 있다. 이때, 32비트에 대한 테이블에 포함된 값들과 64비트에 대한 테이블에 포함된 값들은 서로 상이할 수 있다. According to various embodiments of the present disclosure, in operation 503, the processor 220 may check a table indicating the performance and power consumption of the processor corresponding to the frequency value according to the type of the identified instruction set structure. For example, if the identified instruction set structure is 32 bits, the processor 220 may obtain a table indicating the performance and power consumption of the processor corresponding to frequency values for 32 bits. Alternatively, if the instruction set structure is 64 bits, the processor 220 may obtain a table indicating the performance and power consumption of the processor corresponding to the frequency values for 64 bits. In this case, values included in the table for 32 bits and values included in the table for 64 bits may be different from each other.

다양한 실시 예에 따라, 동작 505에서, 프로세서(220)는, 획득된 테이블(예컨대, 32비트에 대한 테이블 또는 64비트에 대한 테이블)을 이용하여 프로세서(220)의 주파수 부스트를 위한 주파수 값을 결정할 수 있다. 예컨대, 프로세서(220)는, 테이블에 포함된 성능과 전력 소모량 중 적어도 하나에 기초하여, 프로세서(220)의 주파수를 부스트하기 위한 주파수 값을 결정할 수 있다. 한편, 주파수 값을 결정하는 동작은, 하기의 도 6a 및 도 6b를 이용하여 자세하게 설명할 것이다.According to various embodiments, in operation 505, the processor 220 determines a frequency value for a frequency boost of the processor 220 using the obtained table (eg, a table for 32 bits or a table for 64 bits). I can. For example, the processor 220 may determine a frequency value for boosting the frequency of the processor 220 based on at least one of performance and power consumption included in the table. Meanwhile, the operation of determining the frequency value will be described in detail with reference to FIGS. 6A and 6B below.

도 6a와 도 6b는 다양한 실시 예들에 따른, 전자 장치가 부스트를 위한 주파수 값을 결정하는데 이용되는 테이블이다.6A and 6B are tables used by an electronic device to determine a frequency value for a boost, according to various embodiments.

도 6a를 참조하면, 다양한 실시 예에 따라, 제1테이블(601)은 64비트의 어플리케이션(또는 어플리케이션의 태스크)에 대하여 특정한 주파수 값들에 대응하는 프로세서(예컨대, 도 2의 프로세서(220))의 성능과 전력 소모량을 나타내는 테이블일 수 있다. 도 6b를 참조하면, 다양한 실시 예에 따라, 제2테이블(602)은 32비트 어플리케이션(또는 어플리케이션의 태스크)에 대하여 특정한 주파수 값들에 대응하는 프로세서(220)의 성능과 전력 소모량을 나타내는 테이블일 수 있다. 예컨대, 성능과 전력 소모량에 대한 값은 상대적인 값을 의미할 수 있다.Referring to FIG. 6A, according to various embodiments, a first table 601 of a processor (eg, processor 220 of FIG. 2) corresponding to specific frequency values for a 64-bit application (or task of an application) It may be a table showing performance and power consumption. Referring to FIG. 6B, according to various embodiments, the second table 602 may be a table representing the performance and power consumption of the processor 220 corresponding to specific frequency values for a 32-bit application (or task of the application). have. For example, values for performance and power consumption may mean relative values.

다양한 실시 예에 따라, 동일한 주파수로 프로세서(예컨대, 프로세서에 포함된 코어)의 주파수를 부스트했을 때, 64비트에 대한 제1테이블(601)에 포함된 값(성능 및 전력 소모량)과 32비트에 대한 제2테이블(602)에 포함된 값(성능 및 전력 소모량)은 서로 상이할 수 있다. According to various embodiments, when the frequency of the processor (eg, a core included in the processor) is boosted at the same frequency, the value (performance and power consumption) included in the first table 601 for 64 bits and 32 bits are Values (performance and power consumption) included in the second table 602 for each may be different from each other.

다양한 실시 예에 따라, 제1테이블(601)에서, 빅 코어(예컨대, 도 2의 제1코어(221))는 제1주파수(610)(주파수 값이 '819000'kHz)로 부스트되면, 성능은 '307'이고, 전력 소모량은 '193'일 수 있다. 또한, 제1테이블(601)에서, 미들 코어(예컨대, 도 2의 제2코어(222))는 제2주파수(620)(주파수 값이 '1404000'kHz)로 부스트되면, 성능은 '311'이고, 전력 소모량은 '212'일 수 있다. 이때, 빅 코어가 제1주파수(610)로 부스트되었을 때 성능은, 미들 코어를 제2주파수(620)로 부스트했을 때 성능과 유사한 값일 수 있다. 반면에, 빅 코어를 제1주파수(610)로 부스트했을 때 전력 소모량은, 미들 코어를 제2주파수(620)로 부스트했을 때 전력 소모량보다 적은 값일 수 있다. According to various embodiments, in the first table 601, when the big core (eg, the first core 221 in FIG. 2) is boosted to the first frequency 610 (the frequency value is '819000' kHz), the performance May be '307' and the power consumption may be '193'. In addition, in the first table 601, when the middle core (eg, the second core 222 of FIG. 2) is boosted to a second frequency 620 (the frequency value is '1404000' kHz), the performance is '311' And the power consumption may be '212'. In this case, when the big core is boosted to the first frequency 610, the performance may be similar to the performance when the middle core is boosted to the second frequency 620. On the other hand, when the big core is boosted to the first frequency 610, the power consumption may be less than the power consumption when the middle core is boosted to the second frequency 620.

다양한 실시 예에 따라, 도 6a를 참조하면, 프로세서(220)는, 64비트 ISA를 가지는 어플리케이션의 태스크를 수행할 때, 비슷한 성능을 제공하면서 전력 소모량을 감소시킬 수 있는 빅 코어의 주파수를 부스트할 수 있다. 이때, 프로세서(220)는, 클럭 신호의 최소 주파수가 819000kHz가 되도록 설정할 수 있다. 즉, 프로세서(220)는, 최소 주파수가 819000kHz인 클럭 신호를 빅 코어에 인가하고, 빅 코어에 의해 64비트 ISA를 가지는 어플리케이션의 태스크가 수행되도록 제어할 수 있다.According to various embodiments, referring to FIG. 6A, when performing a task of an application having a 64-bit ISA, the processor 220 may boost the frequency of the big core, which can reduce power consumption while providing similar performance. I can. In this case, the processor 220 may set the minimum frequency of the clock signal to be 819000 kHz. That is, the processor 220 may apply a clock signal having a minimum frequency of 819000 kHz to the big core, and control the task of an application having a 64-bit ISA to be performed by the big core.

다양한 실시 예에 따라, 도 6b를 참조하면, 제2테이블(602)에서, 빅 코어(예컨대, 도 2의 제1코어(221))는 제3주파수(630)(주파수 값이 '1378000'kHz)로 부스트되면, 성능은 '298'이고, 전력 소모량은 '277'일 수 있다. 또한, 제2테이블(602)에서, 미들 코어(예컨대, 도 2의 제2코어(222))는 제4주파수(640)(주파수 값이 '1404000'kHz)로 부스트되면, 성능은 '298'이고, 전력 소모량은 '201'일 수 있다. 이때, 빅 코어를 제3주파수(630)로 부스트했을 때 성능은, 미들 코어를 제4주파수(640)로 부스트했을 때 성능과 동일한 값일 수 있다. 반면에, 빅 코어를 제3주파수(630)로 부스트했을 때 전력 소모량은, 미들 코어를 제4주파수(620)로 부스트했을 때 전력 소모량보다 높은 값일 수 있다. According to various embodiments, referring to FIG. 6B, in the second table 602, the big core (eg, the first core 221 in FIG. 2) is a third frequency 630 (the frequency value is '1378000' kHz. ), the performance may be '298' and the power consumption may be '277'. In addition, in the second table 602, when the middle core (eg, the second core 222 in FIG. 2) is boosted to the fourth frequency 640 (the frequency value is '1404000' kHz), the performance is '298'. And the power consumption may be '201'. In this case, when the big core is boosted to the third frequency 630, the performance may be the same as the performance when the middle core is boosted to the fourth frequency 640. On the other hand, the power consumption when the big core is boosted to the third frequency 630 may be higher than the power consumption when the middle core is boosted to the fourth frequency 620.

다양한 실시 예에 따라, 도 6b를 참조하면, 프로세서(220)는, 32비트 ISA를 가지는 어플리케이션의 태스크를 수행할 때, 동일한 성능을 제공하면서 전력 소모량을 감소시킬 수 있는 미들 코어의 주파수를 부스트할 수 있다. 이때, 프로세서(220)는, 클럭 신호의 최소 주파수가 1404000kHz가 되도록 설정할 수 있다. 즉, 프로세서(220)는, 최소 주파수가 1404000kHz인 클럭 신호를 미들 코어에 인가하고, 미들 코어에 의해 32비트 ISA를 가지는 어플리케이션의 태스크가 수행되도록 제어할 수 있다.According to various embodiments, referring to FIG. 6B, when performing a task of an application having a 32-bit ISA, the processor 220 may boost the frequency of the middle core, which can reduce power consumption while providing the same performance. I can. In this case, the processor 220 may set the minimum frequency of the clock signal to be 1404000 kHz. That is, the processor 220 may apply a clock signal having a minimum frequency of 1404000 kHz to the middle core and control the middle core to perform a task of an application having a 32-bit ISA.

다양한 실시 예에 따라, 프로세서(220)는 어플리케이션의 명령어 집합 구조를 고려하지 않을 경우, 프로세서(220)의 주파수 부스트에 의해, 미들 코어에 '1404000'kHz의 주파수 값 이상의 클럭 신호를 인가할 수 있다. 즉, 프로세서(220)는, 64비트 ISA를 가지는 어플리케이션이든 32비트 ISA를 가지는 어플리케이션이든 일괄적으로 미들 코어의 주파수를 '1404000'kHz로 부스트할 수 있다. 이때, 64비트의 어플리케이션은 본 발명을 적용했을 때보다 전력 소모량이 많을 수 있다. 즉, 본 발명은, 비슷한 성능을 제공하면서 전력 소모량을 줄일 수 있는 효과가 있다. According to various embodiments, the processor 220 may apply a clock signal equal to or higher than a frequency value of '1404000' kHz to the middle core by a frequency boost of the processor 220 if the instruction set structure of the application is not considered. . That is, the processor 220, whether an application having a 64-bit ISA or an application having a 32-bit ISA, may collectively boost the frequency of the middle core to '1404000' kHz. In this case, the 64-bit application may consume more power than when the present invention is applied. That is, the present invention has an effect of reducing power consumption while providing similar performance.

도 7a는 다양한 실시 예들에 따른, 프로세서에 포함된 코어들 각각의 주파수 부스트를 위한 테이블이다. 도 7b는 다양한 실시 예들에 따른, 프로세서에 포함된 코어들 각각의 주파수 부스트를 설명하기 위한 그래프이다.7A is a table for frequency boosting of each of cores included in a processor according to various embodiments of the present disclosure. 7B is a graph illustrating a frequency boost of each of cores included in a processor, according to various embodiments.

도 7a를 참조하면, 다양한 실시 예에 따라, 프로세서(도 2의 프로세서(220))는 빅 코어(예컨대, 도 2의 제1코어(221))를 테이블(700)의 가장 좌측에 주파수 값으로 부스트하면, 미들 코어(예컨대, 도 2의 제2코어(222)), 및 리틀 코어(예컨대, 도 2의 제3코어(223))도 해당하는 주파수로 동시에 부스트할 수 있다. 예컨대, 빅 코어가 '2340000'kHz로 부스트되면, 미들 코어는 '2314000'kHz로 부스트되고 리틀 코어도 '1950000'kHz로 부스트될 수 있다. 또는, 빅 코어가 '2080000'kHz로 부스트되면, 미들 코어는 '2210000'kHz로 부스트될 수 있다. 이때, 리틀 코어는 부스트되지 않을 수 있다. 예컨대, 테이블(700)은, 빅 코어가 특정 주파수로 부스트되었을 때, 빅 코어와 다른 코어들(예컨대, 미들 코어 및 리틀 코어) 사이의 부스트에 대한 연관 관계를 나타내는 테이블일 수 있다.Referring to FIG. 7A, according to various embodiments, a processor (processor 220 of FIG. 2) uses a big core (eg, the first core 221 of FIG. 2) as a frequency value at the leftmost of the table 700. When boosting, the middle core (eg, the second core 222 of FIG. 2) and the little core (eg, the third core 223 of FIG. 2) may also be boosted at a corresponding frequency at the same time. For example, when the big core is boosted to '2340000' kHz, the middle core is boosted to '2314000' kHz, and the little core can also be boosted to '1950000' kHz. Alternatively, when the big core is boosted to '2080000' kHz, the middle core may be boosted to '2210000' kHz. At this time, the little core may not be boosted. For example, the table 700 may be a table indicating an association relationship between a big core and other cores (eg, a middle core and a little core) for boost when the big core is boosted to a specific frequency.

다양한 실시 예에 따라, 미들 코어가 부스트되면, 빅 코어와 리틀 코어는 미들 코어와 연계하여 부스트되지 않을 수 있다. 마찬가지로, 리틀 코어가 부스트되면, 빅 코어와 미들 코어는 리틀 코어와 연계하여 부스트되지 않을 수 있다. 즉, 빅 코어가 부스트되었을 때에만, 도 7a의 테이블(700)과 같이, 미들 코어와 리틀 코어가 연계되어 부스트될 수 있다.According to various embodiments, when the middle core is boosted, the big core and the little core may not be boosted in connection with the middle core. Likewise, if the little core is boosted, the big core and the middle core may not be boosted in association with the little core. That is, only when the big core is boosted, as in the table 700 of FIG. 7A, the middle core and the little core may be linked and boosted.

도 7a와 도 7b를 참조하면, 다양한 실시 예에 따라, 빅 코어(701)는 제1주파수(710)(주파수 값이 '819000'kHz)로 부스트되면, 동시에 미들 코어(702)는 제2주파수(720)(주파수 값이 '1222000'kHz)로 부스트될 수 있다. 이때, 리틀 코어(705)는 제3주파수(730)(주파수 값이 '0')에 기초하여 부스트되지 않을 수 있다. 반면에, 미들 코어(702)가 제4주파수(주파수 값이 '1404000'kHz)로 부스트되면, 다른 코어들(701 및 705)과 연계되지 않고 미들 코어(702)만 부스트될 수 있다. 7A and 7B, according to various embodiments, when the big core 701 is boosted to a first frequency 710 (the frequency value is '819000' kHz), the middle core 702 is simultaneously It can be boosted to 720 (frequency value is '1222000' kHz). In this case, the little core 705 may not be boosted based on the third frequency 730 (the frequency value is '0'). On the other hand, when the middle core 702 is boosted to a fourth frequency (the frequency value is '1404000' kHz), only the middle core 702 may be boosted without being linked to other cores 701 and 705.

도 7b를 참조하면, 다양한 실시 예에 따라, 빅 코어(701)가 제1주파수(710)(주파수 값이 '819000'kHz)로 부스트될 경우, 빅 코어가 제1주파수(710)(주파수 값이 '819000'kHz)로 부스트되고 미들 코어도 제2주파수(720)(주파수 값이 '1222000'kHz)로 부스트되므로, 빅 코어(701)를 부스트하는 것이 성능 측면에서 헤비한 워크로드를 가진 태스크를 처리할 때 유리할 수 있다. 즉, 미들 코어(702)가 제4주파수(740)(주파수 값이 '1404000'kHz)로 부스트될 경우, 다른 코어들(701 및 705)과 연계되지 않고 미들 코어(702)만 부스트되므로, 미들 코어(702)를 부스트하는 것이 성능 측면에서 헤비한 워크로드를 가진 태스크를 처리할 때 다소 불리할 수 있다. 즉, 본 발명은, 비슷한 전력 소모량으로 성능 측면에서 헤비한 워크로드를 가진 태스크를 처리할 때 유리한 효과가 있다. Referring to FIG. 7B, according to various embodiments, when the big core 701 is boosted to a first frequency 710 (the frequency value is '819000' kHz), the big core is the first frequency 710 (frequency value This is boosted to '819000' kHz) and the middle core is also boosted to the second frequency 720 (frequency value is '1222000' kHz), so boosting the big core 701 is a task with a heavy workload in terms of performance. It can be advantageous when processing. That is, when the middle core 702 is boosted to the fourth frequency 740 (the frequency value is '1404000' kHz), since only the middle core 702 is boosted without being linked to other cores 701 and 705, the middle Boosting the core 702 can be a bit disadvantageous when dealing with tasks with heavy workloads in terms of performance. That is, the present invention has an advantageous effect when processing a task having a heavy workload in terms of performance with similar power consumption.

다양한 실시 예에 따라, 빅 코어(701)는 2개의 코어들을 포함할 수 있고, 미들 코어(702)는 2개의 코어들을 포함할 수 있고, 리틀 코어(705)는 4개의 코어들을 포함할 수 있다. 다만, 상기의 코어들의 갯수는 예시적인 것일 뿐, 본 발명의 기술적 사상은 이에 한정되지 않을 수 있다.According to various embodiments, the big core 701 may include two cores, the middle core 702 may include two cores, and the little core 705 may include four cores. . However, the number of cores is merely exemplary, and the technical idea of the present invention may not be limited thereto.

한편, 도 6a, 도 6b, 도 7a, 및 도 7b에 도시된 값들은 설명을 위해 예시적으로 반영한 것이고, 본 발명의 기술적 사상은 이에 한정되지 않을 수 있다.Meanwhile, the values shown in FIGS. 6A, 6B, 7A, and 7B are exemplarily reflected for explanation, and the technical idea of the present invention may not be limited thereto.

도 8은 다양한 실시 예들에 따른, 전자 장치가 프로세서의 부스트를 위한 주파수 값을 결정하는 동작을 설명하기 위한 플로우 차트이다.8 is a flowchart illustrating an operation of determining, by an electronic device, a frequency value for boosting a processor, according to various embodiments of the present disclosure.

도 8을 참조하면, 다양한 실시 예에 따라, 동작 801에서, 프로세서(도 2의 프로세서(220))는 어플리케이션의 명령어 집합 구조(ISA)를 확인할 수 있다. 예컨대, 어플리케이션은 디스플레이(예컨대, 도 2의 디스플레이(260))의 최상단에 표시되는 어플리케이션, 즉시 응답이 필요한 어플리케이션, 또는 화면 변환이나 애니메이션 동작을 제공하는 어플리케이션 등과 같이 헤비한 워크로드가 필요한 어플리케이션일 수 있다.Referring to FIG. 8, according to various embodiments, in operation 801, a processor (processor 220 of FIG. 2) may check an instruction set structure (ISA) of an application. For example, the application may be an application that requires a heavy workload, such as an application displayed at the top of a display (eg, the display 260 of FIG. 2), an application that requires an immediate response, or an application that provides screen conversion or animation operation. have.

다양한 실시 예에 따라, 동작 803에서, 프로세서(220)는 어플리케이션의 명령어 집합 구조가 32비트 명령어 집합 구조인지 여부를 확인 또는 판단할 수 있다According to various embodiments, in operation 803, the processor 220 may check or determine whether the instruction set structure of the application is a 32-bit instruction set structure.

다양한 실시 예에 따라, 동작 805에서, 프로세서(220)는, 어플리케이션의 명령어 집합 구조가 32비트 명령어 집합 구조이면, 32비트 명령어 집합 구조에 기초하여 32비트 테이블 정보를 획득하여 부스트를 위한 주파수 값을 결정할 수 있다. According to various embodiments, in operation 805, if the instruction set structure of the application is a 32-bit instruction set structure, the processor 220 obtains 32-bit table information based on the 32-bit instruction set structure to obtain a frequency value for boost. You can decide.

다양한 실시 예에 따라, 동작 807에서, 어플리케이션의 명령어 집합 구조가 32비트 명령어 집합 구조가 아닌 64비트 명령어 집합 구조이면, 64비트 명령어 집합 구조에 기초하여 64비트 테이블 정보를 획득하여 부스트를 위한 주파수 값을 결정할 수 있다. According to various embodiments, in operation 807, if the instruction set structure of the application is a 64-bit instruction set structure instead of a 32-bit instruction set structure, a frequency value for boost is obtained by obtaining 64-bit table information based on the 64-bit instruction set structure. Can be determined.

다양한 실시 예에 따라, 동작 809에서, 프로세서(220)는 전체 시스템을 고려하여, 프로세서(220)의 주파수를 부스트하기 위한 최종 주파수 값을 결정할 수 있다. 예컨대, 프로세서(220)는, 사용자의 인터랙션 및/또는 전자 장치(201)의 상태 등을 고려하여, 최종 주파수 값을 결정할 수 있다. 최종 주파수 값을 결정하는 방법은, 도 9와 도 10에서 보다 상세하게 설명할 것이다.According to various embodiments, in operation 809, the processor 220 may determine a final frequency value for boosting the frequency of the processor 220 in consideration of the entire system. For example, the processor 220 may determine a final frequency value in consideration of the user's interaction and/or the state of the electronic device 201. A method of determining the final frequency value will be described in more detail with reference to FIGS. 9 and 10.

다양한 실시 예에 따라, 프로세서(220)는, 사용자의 터치 입력에 의한 스크롤 또는 드래그 동작, 액티비티 전환이나 알람 등이 수신되었을 때, 뱃지(badge) 업데이트, 컨텐트 로딩(loading) 등을 위해 부스트가 필요할 경우, 상술한 동작 방법에 따라 부스트를 수행할 수 있다.According to various embodiments, the processor 220 needs a boost for updating a badge, loading a content, etc., when a scroll or drag operation, an activity change or an alarm, etc. is received by a user's touch input. In this case, the boost can be performed according to the above-described operation method.

도 9는 다양한 실시 예들에 따른, 전자 장치가 프로세서의 부스트를 위한 주파수 값을 결정하는 동작을 설명하기 위한 플로우 차트이다.9 is a flowchart illustrating an operation of determining, by an electronic device, a frequency value for boosting a processor, according to various embodiments of the present disclosure.

도 9를 참조하면, 다양한 실시 예에 따라, 프로세서(도 2의 프로세서(220))는, 복수의 어플리케이션들(또는 적어도 하나의 어플리케이션)을 실행할 수 있다. 동작 901에서, 프로세서(220)의 주파수 부스트 동작이 시작되면, 어플리케이션의 제1명령어 집합 구조(ISA)를 확인할 수 있다. 예컨대, 프로세서(220)는, 제1명령어 집합 구조가 32비트 또는 64비트인지 여부를 확인(또는 판단)할 수 있다. 예컨대, 상기 어플리케이션은, 복수의 어플리케이션들 중 부스트에 관련된 지정된 조건을 만족하는 어플리케이션일 수 있다.Referring to FIG. 9, according to various embodiments, a processor (the processor 220 of FIG. 2) may execute a plurality of applications (or at least one application). In operation 901, when the frequency boost operation of the processor 220 starts, the first instruction set structure (ISA) of the application may be checked. For example, the processor 220 may check (or determine) whether the first instruction set structure is 32 bits or 64 bits. For example, the application may be an application that satisfies a specified condition related to boost among a plurality of applications.

다양한 실시 예에 따라, 동작 903에서, 프로세서(220)는, 실행 중인 복수의 어플리케이션들 중 제1명령어 집합 구조와 상이한 종류의 제2명령어 집합 구조와 같은 종류의 명령어 집합 구조를 가진 제2어플리케이션들을 확인할 수 있다. 또한, 프로세서(220)는, 실행 중인 복수의 어플리케이션들 중 제1명령어 집합 구조와 동일한 종류의 명령어 집합 구조를 가진 제1어플리케이션들도 확인할 수 있다. 예컨대, 제1명령어 집합 구조가 32비트 또는 64비트이면, 제2명령어 집합 구조는 64비트 또는 32비트일 수 있다.According to various embodiments, in operation 903, the processor 220 selects second applications having the same type of instruction set structure as the first instruction set structure and a different type of second instruction set structure among a plurality of running applications. I can confirm. In addition, the processor 220 may also check first applications having the same type of instruction set structure as the first instruction set structure among a plurality of applications being executed. For example, if the first instruction set structure is 32 bits or 64 bits, the second instruction set structure may be 64 bits or 32 bits.

다양한 실시 예에 따라, 동작 905에서, 프로세서(220)는, 제1명령어 집합 구조와 같은 종류의 명령어 집합 구조를 가진 제1어플리케이션들의 갯수와 제2명령어 집합 구조와 같은 종류의 명령어 집합 구조를 가진 제2어플리케이션들의 갯수를 비교할 수 있다. 예컨대, 프로세서(220)는, 제2어플리케이션들의 갯수가 제1어플리케이션들의 갯수보다 많은지 확인할 수 있다.According to various embodiments, in operation 905, the processor 220 includes the number of first applications having the same type of instruction set structure as the first instruction set structure and the same type of instruction set structure as the second instruction set structure. The number of second applications can be compared. For example, the processor 220 may check whether the number of second applications is greater than the number of first applications.

다양한 실시 예에 따라, 제2어플리케이션들의 갯수가 제1어플리케이션들의 갯수보다 많으면(905의 예), 동작 907에서, 프로세서(220)는, 제1명령어 집합 구조가 아닌 제2명령어 집합 구조의 종류에 기초하여 프로세서(220)의 주파수 부스트를 위한 주파수 값을 결정할 수 있다. 이는, 전체 시스템을 고려할 때, 제1명령어 집합 구조의 종류를 고려하는 것보다 제2명령어 집합 구조의 종류를 고려하여 프로세서(220)의 주파수를 부스트하는 것이 효과적이기 때문이다. According to various embodiments, if the number of second applications is greater than the number of first applications (example of 905), in operation 907, the processor 220 is configured to the type of the second instruction set structure rather than the first instruction set structure. Based on the frequency value for the frequency boost of the processor 220 may be determined. This is because, when considering the entire system, it is effective to boost the frequency of the processor 220 in consideration of the type of the second instruction set structure rather than considering the type of the first instruction set structure.

다양한 실시 예에 따라, 제2어플리케이션들의 갯수가 제1어플리케이션들의 갯수보다 많지 않으면(905의 아니오), 동작 909에서, 프로세서(220)는, 제1명령어 집합 구조의 종류에 기초하여 부스트를 위한 주파수 값을 결정할 수 있다. According to various embodiments, if the number of second applications is not greater than the number of first applications (No in 905), in operation 909, the processor 220 determines the frequency for boost based on the type of the first instruction set structure. Value can be determined.

다양한 실시 예에 따라, 동작 905에서, 프로세서(220)는, 제1어플리케이션들의 갯수와 제2어플리케이션들의 갯수를 비교할 때, 특정 어플리케이션은 가중치를 부여할 수도 있다. 예컨대, 즉시 응답이 필요한 어플리케이션은 2 또는 3의 가중치가 부여될 수 있고, 프로세서(220)는 가중치를 반영하여 제1어플리케이션들의 갯수와 제2어플리케이션들의 갯수를 비교할 수 있다. 예컨대, 가중치는 프로세서(220)에 의해 자동으로 또는 사용자에 의해 설정될 수 있다.According to various embodiments, in operation 905, the processor 220 may assign a weight to a specific application when comparing the number of first applications and the number of second applications. For example, an application requiring an immediate response may be given a weight of 2 or 3, and the processor 220 may compare the number of first applications and the number of second applications by reflecting the weight. For example, the weight may be set automatically by the processor 220 or by a user.

도 10은 다양한 실시 예들에 따른, 전자 장치가 프로세서의 부스트를 위한 주파수 값을 결정하는 동작을 설명하기 위한 플로우 차트이다.10 is a flowchart illustrating an operation of determining, by an electronic device, a frequency value for boosting a processor, according to various embodiments.

도 10을 참조하면, 프로세서(도 2의 프로세서(220))는, 복수의 어플리케이션들(또는 적어도 하나의 어플리케이션)을 실행할 수 있다. 동작 1001에서, 프로세서(220)의 주파수 부스트 동작이 시작되면, 제1어플리케이션의 제1명령어 집합 구조(ISA)를 확인할 수 있다. 예컨대, 프로세서(220)는, 제1명령어 집합 구조가 32비트 또는 64비트인지 여부를 확인(또는 판단)할 수 있다. 예컨대, 상기 제1어플리케이션은, 복수의 어플리케이션들 중 부스트에 관련된 지정된 조건을 만족하는 어플리케이션일 수 있다.Referring to FIG. 10, the processor (the processor 220 of FIG. 2) may execute a plurality of applications (or at least one application). In operation 1001, when the frequency boost operation of the processor 220 starts, the first instruction set structure (ISA) of the first application may be checked. For example, the processor 220 may check (or determine) whether the first instruction set structure is 32 bits or 64 bits. For example, the first application may be an application that satisfies a specified condition related to boost among a plurality of applications.

다양한 실시 예에 따라, 동작 1003에서, 프로세서(220)는, 제1어플리케이션과 관련되고 제1명령어 집합 구조와 상이한 종류의 제2명령어 집합 구조와 같은 종류의 명령어 집합 구조를 가진 제2어플리케이션들을 확인할 수 있다. 예컨대, 프로세서(220)는, 제1어플리케이션이 카메라 어플리케이션이면, 시스템 서버(system server), 카메라 할(camera HAL)과 같이 카메라 어플리케이션의 동작과 관련된 태스크들이 제2명령어 집합 구조와 같은 종류의 명령어 집합 구조를 가지고 있는지 확인할 수 있다. 예컨대, 제1명령어 집합 구조가 32비트 또는 64비트이면, 제2명령어 집합 구조는 64비트 또는 32비트일 수 있다.According to various embodiments, in operation 1003, the processor 220 identifies second applications that are related to the first application and have the same type of instruction set structure as the first instruction set structure and a different type of second instruction set structure. I can. For example, if the first application is a camera application, the processor 220 includes tasks related to the operation of the camera application, such as a system server and a camera HAL, which have the same type of instruction set as the second instruction set structure. You can check if it has a structure. For example, if the first instruction set structure is 32 bits or 64 bits, the second instruction set structure may be 64 bits or 32 bits.

다양한 실시 예에 따라, 동작 1005에서, 프로세서(220)는, 제1어플리케이션과 관련된 제2어플리케이션들 중 제2명령어 집합 구조와 같은 종류의 명령어 집합 구조를 가진 제2어플리케이션들의 갯수를 확인할 수 있다. 예컨대, 프로세서(220)는, 제2명령어 집합 구조를 가진 제2어플리케이션들의 갯수가 기설정된 갯수보다 많은지 확인할 수 있다. 예컨대, 기설정된 갯수는, 프로세서(220)에 의해 자동으로 또는 사용자에 의해 설정될 수 있다.According to various embodiments, in operation 1005, the processor 220 may check the number of second applications having the same type of instruction set structure as the second instruction set structure among second applications related to the first application. For example, the processor 220 may check whether the number of second applications having a second instruction set structure is greater than a preset number. For example, the preset number may be set automatically by the processor 220 or by a user.

다양한 실시 예에 따라, 제2명령어 집합 구조를 가진 제2어플리케이션들의 갯수가 기설정된 갯수보다 많으면(1005의 예), 동작 1007에서, 프로세서(220)는, 제1명령어 집합 구조가 아닌 제2명령어 집합 구조의 종류에 기초하여 프로세서(220)의 주파수 부스트를 위한 주파수 값을 결정할 수 있다. 이는, 전체 시스템을 고려할 때, 제1명령어 집합 구조의 종류를 고려하는 것보다 제2명령어 집합 구조의 종류를 고려하여 프로세서(220)의 주파수를 부스트하는 것이 효과적이기 때문이다. According to various embodiments, if the number of second applications having a second instruction set structure is greater than a preset number (example of 1005), in operation 1007, the processor 220 may perform a second instruction other than the first instruction set structure. The frequency value for the frequency boost of the processor 220 may be determined based on the type of the set structure. This is because, when considering the entire system, it is effective to boost the frequency of the processor 220 in consideration of the type of the second instruction set structure rather than considering the type of the first instruction set structure.

다양한 실시 예에 따라, 제2명령어 집합 구조를 가진 제2어플리케이션들의 갯수가 기설정된 갯수보다 많지 않으면(1005의 아니오), 동작 1009에서, 프로세서(220)는, 제1명령어 집합 구조의 종류에 기초하여 부스트를 위한 주파수 값을 결정할 수 있다. According to various embodiments, if the number of second applications having a second instruction set structure is not greater than a preset number (No of 1005), in operation 1009, the processor 220 is based on the type of the first instruction set structure. Thus, the frequency value for the boost can be determined.

도 9와 도 10은, 본 발명의 다양한 실시 예 중 전체 시스템을 고려하여 어떤 종류의 명령어 집합 구조에 기초하여 프로세서의 주파수 부스트를 수행할 지에 대한 실시 예를 설명한 것이다. 이와 관련하여, 본 발명의 기술적 사상은 상술한 실시 예에만 한정되지 않고, 전체 시스템을 고려할 수 있는 다양한 방법이 적용될 수 있다. 9 and 10 illustrate an embodiment of how to perform a frequency boost of a processor based on a type of instruction set structure in consideration of the entire system among various embodiments of the present invention. In this regard, the technical idea of the present invention is not limited only to the above-described embodiments, and various methods that can consider the entire system may be applied.

도 11a와 도 11b는 다양한 실시 예들에 따른, 전자 장치가 부스트를 위한 주파수 값을 결정하는 동작을 설명하기 위한 사용자 인터페이스이다.11A and 11B are user interfaces for explaining an operation of determining, by an electronic device, a frequency value for boost, according to various embodiments.

도 11a를 참조하면, 다양한 실시 예에 따라, 전자 장치(1101)(예컨대, 도 2의 전자 장치(201))는 메신저 어플리케이션을 실행할 수 있다. 예컨대, 전자 장치(1101)는 디스플레이(예컨대, 도 2의 디스플레이(260))를 통해 메신저 화면(1110)을 표시할 수 있다. 예컨대, 메신저 어플리케이션은 제1종류의 제1명령어 집합 구조를 가질 수 있다. Referring to FIG. 11A, according to various embodiments, the electronic device 1101 (eg, the electronic device 201 of FIG. 2) may execute a messenger application. For example, the electronic device 1101 may display the messenger screen 1110 through a display (eg, the display 260 of FIG. 2 ). For example, the messenger application may have a first type of instruction set structure.

다양한 실시 예에 따라, 전자 장치(1101)는, 메신저 어플리케이션이 실행되는 상태에서, 대화 입력 창(1115)에 대한 사용자의 터치 입력을 수신할 수 있다.According to various embodiments, the electronic device 1101 may receive a user's touch input to the conversation input window 1115 while the messenger application is running.

도 11b를 참조하면, 다양한 실시 예에 따라, 전자 장치(1101)는 대화 입력 창(1115)에 대한 사용자의 터치 입력에 응답하여, 키보드 어플리케이션을 실행할 수 있다. 예컨대, 키보드 어플리케이션은 즉시 응답이 필요한 어플리케이션일 수 있다. 전자 장치(1101)는 키보드 어플리케이션의 빠른 응답을 위해, 프로세서(예컨대, 도 2의 프로세서(220))의 주파수를 부스트할 수 있다. 즉, 전자 장치(1101)는, 키보드 어플리케이션에 대한 키보드 화면(1120)을 빠르게 표시할 수 있도록 프로세서(220)의 주파수를 부스트할 수 있다. 예컨대, 키보드 어플리리케이션은, 제1종류와 상이한 제2종류의 제2명령어 집합 구조를 가질 수 있다. 예컨대, 메신저 어플리케이션이 64비트의 명령어 집합 구조를 가진 경우, 키보드 어플리케이션은 32비트 명령어 집합 구조를 가질 수 있다.Referring to FIG. 11B, according to various embodiments, the electronic device 1101 may execute a keyboard application in response to a user's touch input on the conversation input window 1115. For example, the keyboard application may be an application requiring an immediate response. The electronic device 1101 may boost the frequency of the processor (eg, the processor 220 of FIG. 2) for quick response of the keyboard application. That is, the electronic device 1101 may boost the frequency of the processor 220 so that the keyboard screen 1120 for the keyboard application can be quickly displayed. For example, the keyboard application may have a second instruction set structure of a second type different from the first type. For example, when a messenger application has a 64-bit instruction set structure, the keyboard application may have a 32-bit instruction set structure.

다양한 실시 예에 따라, 전자 장치(1101)는 64비트의 명령어 집합 구조 및 32비트의 명령어 집합 구조 중 어느 하나의 명령어 집합 구조의 종류에 기초하여 프로세서(220)의 주파수를 부스트할 수 있다. 예컨대, 전자 장치(1101)는, 키보드 어플리케이션이 즉시 응답이 필요한 어플리케이션으로 설정되어 있으므로, 키보드 어플리케이션의 명령어 집합 구조의 종류(예컨대, 32비트)에 기초하여 프로세서(220)의 주파수를 부스트할 수 있다. 즉, 전자 장치(1101)는, 32비트 테이블 정보를 이용하여 프로세서(220)의 주파수 부스트를 위한 주파수 값을 결정할 수 있다. 또한, 전자 장치(1101)는 프로세서(220)에 포함된 복수의 코어들 중 주파수 부스트가 적용된 적어도 하나의 코어가 키보드 어플리케이션의 태스크를 처리하도록 제어할 수 있다.According to various embodiments, the electronic device 1101 may boost the frequency of the processor 220 based on a type of any one of a 64-bit instruction set structure and a 32-bit instruction set structure. For example, the electronic device 1101 may boost the frequency of the processor 220 based on the type (eg, 32 bits) of the instruction set structure of the keyboard application since the keyboard application is set as an application requiring an immediate response. . That is, the electronic device 1101 may determine a frequency value for the frequency boost of the processor 220 using the 32-bit table information. Also, the electronic device 1101 may control at least one core to which a frequency boost is applied among a plurality of cores included in the processor 220 to process a task of the keyboard application.

도 12는 다양한 실시 예들에 따른, 전자 장치가 부스트를 위한 주파수 값을 결정하는 동작을 설명하기 위한 사용자 인터페이스이다.12 is a user interface for describing an operation of determining, by an electronic device, a frequency value for a boost, according to various embodiments.

도 12를 참조하면, 다양한 실시 예에 따라, 전자 장치(1201)(예컨대, 도 2의 전자 장치(201))는 멀티 윈도우 환경에서 복수의(예컨대, 2개)의 어플리케이션들을 실행할 수 있다. 예컨대, 전자 장치(1201)는 디스플레이(예컨대, 도 2의 디스플레이(260))를 통해 2개의 윈도우(1210 및 1220)를 표시할 수 있다. 제1윈도우(1210)는 제1어플리케이션의 실행 화면이 표시될 수 있고, 제2윈도우(1220)는 제2어플리케이션의 실행 화면이 표시될 수 있다. 예컨대, 제1어플리케이션은 제1종류의 명령어 집합 구조를 가질 수 있고, 제2어플리케이션은 제1종류와 상이한 제2종류의 명령어 집합 구조를 가질 수 있다. 예컨대, 제1어플리케이션(예컨대, 웹 서치 어플리케이션)은 32비트 명령어 집합 구조를 가질 수 있고, 제2어플리케이션(예컨대, 비디오 어플리케이션)은 64비트 명령어 집합 구조를 가질 수 있다.Referring to FIG. 12, according to various embodiments, the electronic device 1201 (eg, the electronic device 201 of FIG. 2) may execute a plurality of (eg, two) applications in a multi-window environment. For example, the electronic device 1201 may display two windows 1210 and 1220 through a display (eg, the display 260 of FIG. 2 ). The first window 1210 may display the execution screen of the first application, and the second window 1220 may display the execution screen of the second application. For example, the first application may have a first type of instruction set structure, and the second application may have a second type of instruction set structure different from the first type. For example, a first application (eg, a web search application) may have a 32-bit instruction set structure, and a second application (eg, a video application) may have a 64-bit instruction set structure.

다양한 실시 예에 따라, 전자 장치(1201)는 복수의 윈도우들 중 어느 하나의 윈도우에 대응하는 어플리케이션의 명령어 집합 구조에 기초하여 프로세서(220)의 주파수를 부스트할 수 있다. 즉, 전자 장치(1201)는 64비트의 명령어 집합 구조 및 32비트의 명령어 집합 구조 중 어느 하나의 명령어 집합 구조의 종류에 기초하여 프로세서(220)의 주파수를 부스트할 수 있다. According to various embodiments of the present disclosure, the electronic device 1201 may boost the frequency of the processor 220 based on an instruction set structure of an application corresponding to any one of a plurality of windows. That is, the electronic device 1201 may boost the frequency of the processor 220 based on the type of any one of the 64-bit instruction set structure and the 32-bit instruction set structure.

다양한 실시 예에 따라, 전자 장치(1201)는 복수의 윈도우들 중 현재 활성화된 윈도우를 확인할 수 있다. 예컨대, 전자 장치(1201)는 활성화된 제1윈도우(1210)를 확인할 수 있다. 전자 장치(1201)는, 제1윈도우(1210)에 대응하는 제1어플리케이션이 가진 명령어 집합 구조의 종류(예컨대, 32비트)에 기초하여 프로세서(220)의 주파수를 부스트할 수 있다. 즉, 전자 장치(1101)는, 32비트 테이블 정보를 이용하여 프로세서(220)의 주파수 부스트를 위한 주파수 값을 결정할 수 있다. 또한, 전자 장치(1201)는 프로세서(220)에 포함된 복수의 코어들 중 주파수 부스트가 적용된 적어도 하나의 코어가 제1어플리케이션의 태스크를 처리하도록 제어할 수 있다. 이때, 제2어플리케이션의 태스크는 주파수 부스트가 적용된 적어도 하나의 코어에 의해 처리되지 않을 수 있다.According to various embodiments of the present disclosure, the electronic device 1201 may check a currently activated window among a plurality of windows. For example, the electronic device 1201 may check the activated first window 1210. The electronic device 1201 may boost the frequency of the processor 220 based on the type (eg, 32 bits) of an instruction set structure of the first application corresponding to the first window 1210. That is, the electronic device 1101 may determine a frequency value for the frequency boost of the processor 220 using the 32-bit table information. Also, the electronic device 1201 may control at least one core to which a frequency boost is applied among a plurality of cores included in the processor 220 to process a task of the first application. In this case, the task of the second application may not be processed by at least one core to which the frequency boost is applied.

다양한 실시 예에 따라, 전자 장치(1201)는 복수의 윈도우들 중 터치 스크린(예컨대, 도 2의 디스플레이(260))을 통해 수신된 사용자의 입력에 대응하는 어플리케이션을 확인할 수 있다. 예컨대, 전자 장치(1201)는, 사용자의 입력이 제1윈도우(1210)에 수신되면, 제1윈도우(1210)에 대응하는 제1어플리케이션이 가진 명령어 집합 구조의 종류(예컨대, 32비트)에 기초하여 프로세서(220)의 주파수를 부스트할 수 있다. 즉, 전자 장치(1101)는, 32비트 테이블 정보를 이용하여 프로세서(220)의 주파수 부스트를 위한 주파수 값을 결정할 수 있다. 또한, 전자 장치(1201)는 프로세서(220)에 포함된 복수의 코어들 중 주파수 부스트가 적용된 적어도 하나의 코어가 제1어플리케이션의 태스크를 처리하도록 제어할 수 있다. 이때, 제2어플리케이션의 태스크는 주파수 부스트가 적용된 적어도 하나의 코어에 의해 처리되지 않을 수 있다.According to various embodiments, the electronic device 1201 may check an application corresponding to a user input received through a touch screen (eg, the display 260 of FIG. 2) among a plurality of windows. For example, when the user's input is received in the first window 1210, the electronic device 1201 is based on the type of instruction set structure (eg, 32 bits) of the first application corresponding to the first window 1210. Thus, the frequency of the processor 220 can be boosted. That is, the electronic device 1101 may determine a frequency value for the frequency boost of the processor 220 using the 32-bit table information. Also, the electronic device 1201 may control at least one core to which a frequency boost is applied among a plurality of cores included in the processor 220 to process a task of the first application. In this case, the task of the second application may not be processed by at least one core to which the frequency boost is applied.

다양한 실시 예에 따른 전자 장치는, 터치 스크린, 및 복수의 코어들을 포함하는 프로세서를 포함하고, 상기 프로세서는, 상기 전자 장치에서 실행 중인 적어도 하나의 어플리케이션 중 상기 프로세서의 부스트와 관련된 지정된 조건을 만족하는 제1어플리케이션을 확인하고, 상기 제1어플리케이션의 제1명령어 집합 구조(instruction set architecture(ISA))를 확인하고, 상기 제1명령어 집합 구조의 종류에 따라 상기 복수의 코어들 중 적어도 하나의 코어에 인가되는 클럭 신호의 주파수를 부스트하도록 설정될 수 있다.An electronic device according to various embodiments of the present disclosure includes a touch screen and a processor including a plurality of cores, wherein the processor satisfies a specified condition related to a boost of the processor among at least one application running on the electronic device. Check the first application, check the first instruction set architecture (ISA) of the first application, and at least one of the plurality of cores according to the type of the first instruction set structure It can be set to boost the frequency of the applied clock signal.

상기 프로세서는, 상기 제1명령어 집합 구조의 종류에 따라, 상기 적어도 하나의 코어를 부스트하기 위한 주파수 값을 결정하고, 상기 적어도 하나의 코어가 상기 주파수 값 이상의 주파수를 가지는 클럭 신호를 이용하여 구동되도록 상기 적어도 하나의 코어를 제어하도록 설정될 수 있다.The processor determines a frequency value for boosting the at least one core according to a type of the first instruction set structure, and the at least one core is driven using a clock signal having a frequency equal to or higher than the frequency value. It may be set to control the at least one core.

상기 프로세서는, 명령어 집합 구조의 종류에 따른 특정 주파수 값들에 대응하는 상기 복수의 코어들 각각의 성능과 전력 소모량을 나타내는 테이블을 이용하여 상기 주파수 값을 결정하도록 설정될 수 있다.The processor may be configured to determine the frequency value by using a table indicating the performance and power consumption of each of the plurality of cores corresponding to specific frequency values according to the type of the instruction set structure.

상기 프로세서는, 상기 적어도 하나의 어플리케이션이 서로 다른 종류의 명령어 집합 구조를 가지는 어플리케이션들을 포함하면, 상기 어플리케이션들 중 상기 터치 스크린의 최상단에 표시된 어플리케이션을 상기 제1어플리케이션으로 결정하도록 설정될 수 있다.If the at least one application includes applications having different types of instruction set structures, the processor may be configured to determine an application displayed at the top of the touch screen among the applications as the first application.

상기 프로세서는, 상기 최상단에 표시된 상기 제1어플리케이션이 제2어플리케이션으로 변경되면, 상기 제2어플리케이션의 제2명령어 집합 구조를 확인하고, 상기 제2명령어 집합 구조의 종류에 기초하여 상기 클럭 주파수를 부스트하도록 설정될 수 있다.When the first application displayed at the top is changed to a second application, the processor checks the second instruction set structure of the second application, and boosts the clock frequency based on the type of the second instruction set structure. Can be set to

상기 프로세서는, 상기 적어도 하나의 어플리케이션이 서로 다른 종류의 명령어 집합 구조를 가지는 어플리케이션들을 포함하면, 상기 어플리케이션들 중 즉시 응답하도록 설정된 어플리케이션을 상기 제1어플리케이션으로 결정하도록 설정될 수 있다.If the at least one application includes applications having different types of instruction set structures, the processor may be configured to determine an application set to respond immediately among the applications as the first application.

상기 프로세서는, 상기 적어도 하나의 어플리케이션이 서로 다른 종류의 명령어 집합 구조를 가지는 어플리케이션들을 포함하면, 상기 터치 스크린을 통해 수신된 사용자의 입력에 대응하는 어플리케이션을 상기 제1어플리케이션으로 결정하도록 설정될 수 있다.The processor may be configured to determine an application corresponding to a user input received through the touch screen as the first application, if the at least one application includes applications having different types of instruction set structures. .

상기 프로세서는, 상기 적어도 하나의 어플리케이션이 서로 다른 복수의 윈도우들 각각에서 실행되면, 활성화된 윈도우를 확인하고, 상기 활성화된 윈도우에 대응하는 어플리케이션을 상기 제1어플리케이션으로 결정하도록 설정될 수 있다.When the at least one application is executed in each of a plurality of different windows, the processor may be configured to check an activated window and determine an application corresponding to the activated window as the first application.

상기 프로세서는, 상기 제1어플리케이션이 상기 제1명령어 집합 구조를 가지더라도, 상기 적어도 하나의 어플리케이션 중 상기 제1명령어 집합 구조와 다른 제2명령어 집합 구조를 가지는 어플리케이션의 갯수가 상기 제1명령어 집합 구조를 가지는 어플리케이션의 갯수보다 많으면, 상기 제2명령어 집합 구조에 기초하여 상기 클럭 주파수를 부스트하도록 설정될 수 있다.The processor, even if the first application has the first instruction set structure, the number of applications having a second instruction set structure different from the first instruction set structure among the at least one application is the first instruction set structure If it is greater than the number of applications having a, it may be set to boost the clock frequency based on the second instruction set structure.

상기 프로세서는, 상기 제1어플리케이션이 제1명령어 집합 구조를 가지더라도, 상기 제1명령어 집합 구조와 다른 제2명령어 집합 구조를 가지고 상기 제1어플리케이션과 관련된 어플리케이션들의 갯수가 기설정된 갯수보다 많으면, 상기 제2명령어 집합 구조에 기초하여 상기 클럭 주파수를 부스트하도록 설정될 수 있다.The processor, even if the first application has a first instruction set structure, if the number of applications related to the first application having a second instruction set structure different from the first instruction set structure is greater than a predetermined number, the It may be set to boost the clock frequency based on the second instruction set structure.

상기 제1명령어 집합 구조는 32비트 명령어 집합 구조 또는 64비트 명령어 집합 구조를 포함할 수 있다.The first instruction set structure may include a 32-bit instruction set structure or a 64-bit instruction set structure.

다양한 실시 예에 따른 전자 장치의 동작 방법은, 상기 전자 장치에서 실행 중인 적어도 하나의 어플리케이션 중 상기 프로세서의 부스트와 관련된 지정된 조건을 만족하는 제1어플리케이션을 확인하는 동작, 상기 제1어플리케이션의 제1명령어 집합 구조(instruction set architecture(ISA))를 확인하는 동작, 및 상기 제1명령어 집합 구조의 종류에 따라 상기 전자 장치에 포함된 적어도 하나의 프로세서에 인가되는 클럭 신호의 주파수를 부스트하는 동작을 포함할 수 있다.An operation method of an electronic device according to various embodiments of the present disclosure includes: checking a first application that satisfies a specified condition related to a boost of the processor among at least one application running in the electronic device, and a first command of the first application Checking an instruction set architecture (ISA), and boosting a frequency of a clock signal applied to at least one processor included in the electronic device according to the type of the first instruction set structure. I can.

상기 클럭 주파수를 부스트하는 동작은, 상기 제1명령어 집합 구조의 종류에 따라, 상기 적어도 하나의 프로세서를 부스트하기 위한 주파수 값을 결정하는 동작, 및 상기 적어도 하나의 프로세서가 상기 주파수 값 이상의 주파수를 가지는 클럭 신호를 이용하여 구동되도록 상기 적어도 하나의 프로세서를 제어하는 동작을 포함할 수 있다.The boosting of the clock frequency may include determining a frequency value for boosting the at least one processor according to a type of the first instruction set structure, and the at least one processor having a frequency equal to or greater than the frequency value. The operation of controlling the at least one processor to be driven using a clock signal may be included.

상기 주파수 값을 결정하는 동작은, 명령어 집합 구조의 종류에 따른 특정 주파수 값들에 대응하는 상기 적어도 하나의 프로세서의 성능과 전력 소모량을 나타내는 테이블을 이용하여 상기 주파수 값을 결정하는 동작을 더 포함할 수 있다.The determining of the frequency value may further include determining the frequency value by using a table indicating the performance and power consumption of the at least one processor corresponding to specific frequency values according to the type of the instruction set structure. have.

상기 제1어플리케이션을 확인하는 동작은, 상기 적어도 하나의 어플리케이션이 서로 다른 종류의 명령어 집합 구조를 가지는 어플리케이션들을 포함하면, 상기 어플리케이션들 중 상기 전자 장치의 디스플레이의 최상단에 표시된 어플리케이션을 상기 제1어플리케이션으로 결정하는 동작을 포함할 수 있다.In the checking of the first application, if the at least one application includes applications having different types of command set structures, an application displayed at the top of the display of the electronic device among the applications is used as the first application. It may include an act of determining.

상기 전자 장치의 동작 방법은, 상기 최상단에 표시된 상기 제1어플리케이션이 제2어플리케이션으로 변경되면, 상기 제2어플리케이션의 제2명령어 집합 구조를 확인하는 동작, 및 상기 제2명령어 집합 구조의 종류에 기초하여 상기 클럭 주파수를 부스트하는 동작을 더 포함할 수 있다.The operation method of the electronic device includes: when the first application displayed at the top is changed to a second application, checking a second instruction set structure of the second application, and based on the type of the second instruction set structure Thus, the operation of boosting the clock frequency may be further included.

상기 제1어플리케이션을 확인하는 동작은, 상기 적어도 하나의 어플리케이션이 서로 다른 종류의 명령어 집합 구조를 가지는 어플리케이션들을 포함하면, 상기 어플리케이션들 중 즉시 응답하도록 설정된 어플리케이션을 상기 제1어플리케이션으로 결정하는 동작을 포함할 수 있다.The checking of the first application includes determining an application set to respond immediately among the applications as the first application, if the at least one application includes applications having different types of command set structures. can do.

상기 클럭 주파수를 부스트하는 동작은, 상기 제1어플리케이션이 상기 제1명령어 집합 구조를 가지더라도, 상기 적어도 하나의 어플리케이션 중 상기 제1명령어 집합 구조와 다른 제2명령어 집합 구조를 가지는 어플리케이션의 갯수가 상기 제1명령어 집합 구조를 가지는 어플리케이션의 갯수보다 많으면, 상기 제2명령어 집합 구조에 기초하여 상기 클럭 주파수를 부스트하는 동작을 더 포함할 수 있다.In the operation of boosting the clock frequency, even if the first application has the first instruction set structure, the number of applications having a second instruction set structure different from the first instruction set structure among the at least one application is the number of the If the number of applications having the first instruction set structure is greater than the number of applications, an operation of boosting the clock frequency based on the second instruction set structure may be further included.

상기 클럭 주파수를 부스트하는 동작은, 상기 제1어플리케이션이 제1명령어 집합 구조를 가지더라도, 상기 제1명령어 집합 구조와 다른 제2명령어 집합 구조를 가지고 상기 제1어플리케이션과 관련된 어플리케이션들의 갯수가 기설정된 갯수보다 많으면, 상기 제2명령어 집합 구조에 기초하여 상기 클럭 주파수를 부스트하는 동작을 더 포함할 수 있다.The operation of boosting the clock frequency includes a preset number of applications related to the first application having a second instruction set structure different from the first instruction set structure, even if the first application has a first instruction set structure. If the number is greater than the number, the operation of boosting the clock frequency based on the second instruction set structure may be further included.

다양한 실시 예에 따른 컴퓨터로 판독할 수 있는 기록 매체는, 전자 장치에서 실행 중인 적어도 하나의 어플리케이션 중 프로세서의 부스트와 관련된 지정된 조건을 만족하는 제1어플리케이션을 확인하는 동작, 상기 제1어플리케이션의 제1명령어 집합 구조(instruction set architecture(ISA))를 확인하는 동작, 및 상기 제1명령어 집합 구조의 종류에 따라 상기 전자 장치에 포함된 적어도 하나의 프로세서에 인가되는 클럭 신호의 주파수를 부스트하는 동작을 실행하는 프로그램을 저장할 수 있다.A computer-readable recording medium according to various embodiments of the present disclosure includes an operation of checking a first application that satisfies a specified condition related to a boost of a processor among at least one application running on an electronic device, and a first application of the first application. Checking the instruction set architecture (ISA) and boosting the frequency of a clock signal applied to at least one processor included in the electronic device according to the type of the first instruction set structure You can save the program you play.

상기 전자 장치의 전술한 구성요소들 각각은 하나 또는 그 이상의 부품(component)으로 구성될 수 있으며, 해당 구성 요소의 명칭은 전자 장치의 종류에 따라서 달라질 수 있다. 다양한 실시 예에서, 전자 장치는 전술한 구성요소 중 적어도 하나를 포함하여 구성될 수 있으며, 일부 구성요소가 생략되거나 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 또한, 다양한 실시 예에 따른 전자 장치의 구성 요소들 중 일부가 결합되어 하나의 개체(entity)로 구성됨으로써, 결합되기 이전의 해당 구성 요소들의 기능을 동일하게 수행할 수 있다.Each of the aforementioned components of the electronic device may be composed of one or more components, and the name of the corresponding component may vary depending on the type of the electronic device. In various embodiments, the electronic device may be configured to include at least one of the above-described components, and some components may be omitted or additional other components may be further included. In addition, some of the constituent elements of the electronic device according to various embodiments of the present disclosure are combined to form a single entity, so that functions of the corresponding constituent elements before the combination may be performed in the same manner.

그리고 본 문서에 개시된 실시 예는 개시된, 기술 내용의 설명 및 이해를 위해 제시된 것이며, 본 개시의 범위를 한정하는 것은 아니다. 따라서, 본 개시의 범위는, 본 개시의 기술적 사상에 근거한 모든 변경 또는 다양한 다른 실시 예를 포함하는 것으로 해석되어야 한다.In addition, the embodiments disclosed in this document are provided for the description and understanding of the disclosed and technical content, and do not limit the scope of the present disclosure. Accordingly, the scope of the present disclosure should be construed as including all changes or various other embodiments based on the technical idea of the present disclosure.

201: 전자 장치
220: 프로세서
221: 제1코어
222: 제2코어
223: 제3코어
230: 메모리
260: 디스플레이
201: electronic device
220: processor
221: primary core
222: second core
223: third core
230: memory
260: display

Claims (20)

전자 장치에 있어서,
터치 스크린; 및
복수의 코어들을 포함하는 프로세서를 포함하고, 상기 프로세서는,
상기 전자 장치에서 실행 중인 적어도 하나의 어플리케이션 중 상기 프로세서의 부스트와 관련된 지정된 조건을 만족하는 제1어플리케이션을 확인하고,
상기 제1어플리케이션의 제1명령어 집합 구조(instruction set architecture(ISA))를 확인하고,
상기 제1명령어 집합 구조의 종류에 따라 상기 복수의 코어들 중 적어도 하나의 코어에 인가되는 클럭 신호의 주파수를 부스트하도록 설정된 전자 장치.
In the electronic device,
touch screen; And
Including a processor including a plurality of cores, the processor,
Identifying a first application that satisfies a specified condition related to a boost of the processor among at least one application running on the electronic device,
Check the first instruction set architecture (ISA) of the first application,
An electronic device configured to boost a frequency of a clock signal applied to at least one of the plurality of cores according to a type of the first instruction set structure.
제1항에 있어서, 상기 프로세서는,
상기 제1명령어 집합 구조의 종류에 따라, 상기 적어도 하나의 코어를 부스트하기 위한 주파수 값을 결정하고,
상기 적어도 하나의 코어가 상기 주파수 값 이상의 주파수를 가지는 클럭 신호를 이용하여 구동되도록 상기 적어도 하나의 코어를 제어하도록 설정된 전자 장치.
The method of claim 1, wherein the processor,
Determine a frequency value for boosting the at least one core according to the type of the first instruction set structure,
The electronic device configured to control the at least one core so that the at least one core is driven using a clock signal having a frequency equal to or greater than the frequency value.
제2항에 있어서, 상기 프로세서는,
명령어 집합 구조의 종류에 따른 특정 주파수 값들에 대응하는 상기 복수의 코어들 각각의 성능과 전력 소모량을 나타내는 테이블을 이용하여 상기 주파수 값을 결정하도록 설정된 전자 장치.
The method of claim 2, wherein the processor,
An electronic device configured to determine the frequency value by using a table indicating the performance and power consumption of each of the plurality of cores corresponding to specific frequency values according to a type of instruction set structure.
제1항에 있어서, 상기 프로세서는,
상기 적어도 하나의 어플리케이션이 서로 다른 종류의 명령어 집합 구조를 가지는 어플리케이션들을 포함하면, 상기 어플리케이션들 중 상기 터치 스크린의 최상단에 표시된 어플리케이션을 상기 제1어플리케이션으로 결정하도록 설정된 전자 장치.
The method of claim 1, wherein the processor,
When the at least one application includes applications having different types of instruction set structures, an electronic device configured to determine an application displayed on the uppermost portion of the touch screen among the applications as the first application.
제4항에 있어서, 상기 프로세서는,
상기 최상단에 표시된 상기 제1어플리케이션이 제2어플리케이션으로 변경되면, 상기 제2어플리케이션의 제2명령어 집합 구조를 확인하고,
상기 제2명령어 집합 구조의 종류에 기초하여 상기 클럭 주파수를 부스트하도록 설정된 전자 장치.
The method of claim 4, wherein the processor,
When the first application displayed at the top is changed to a second application, the second instruction set structure of the second application is checked, and
An electronic device configured to boost the clock frequency based on a type of the second instruction set structure.
제1항에 있어서, 상기 프로세서는,
상기 적어도 하나의 어플리케이션이 서로 다른 종류의 명령어 집합 구조를 가지는 어플리케이션들을 포함하면, 상기 어플리케이션들 중 즉시 응답하도록 설정된 어플리케이션을 상기 제1어플리케이션으로 결정하도록 설정된 전자 장치.
The method of claim 1, wherein the processor,
When the at least one application includes applications having different types of instruction set structures, an electronic device configured to determine an application set to respond immediately among the applications as the first application.
제1항에 있어서, 상기 프로세서는,
상기 적어도 하나의 어플리케이션이 서로 다른 종류의 명령어 집합 구조를 가지는 어플리케이션들을 포함하면, 상기 터치 스크린을 통해 수신된 사용자의 입력에 대응하는 어플리케이션을 상기 제1어플리케이션으로 결정하도록 설정된 전자 장치.
The method of claim 1, wherein the processor,
When the at least one application includes applications having different types of command set structures, an electronic device configured to determine an application corresponding to a user input received through the touch screen as the first application.
제1항에 있어서, 상기 프로세서는,
상기 적어도 하나의 어플리케이션이 서로 다른 복수의 윈도우들 각각에서 실행되면, 활성화된 윈도우를 확인하고, 상기 활성화된 윈도우에 대응하는 어플리케이션을 상기 제1어플리케이션으로 결정하도록 설정된 전자 장치.
The method of claim 1, wherein the processor,
When the at least one application is executed in each of a plurality of different windows, an electronic device configured to check an activated window and determine an application corresponding to the activated window as the first application.
제1항에 있어서, 상기 프로세서는,
상기 제1어플리케이션이 상기 제1명령어 집합 구조를 가지더라도, 상기 적어도 하나의 어플리케이션 중 상기 제1명령어 집합 구조와 다른 제2명령어 집합 구조를 가지는 어플리케이션의 갯수가 상기 제1명령어 집합 구조를 가지는 어플리케이션의 갯수보다 많으면, 상기 제2명령어 집합 구조에 기초하여 상기 클럭 주파수를 부스트하도록 설정된 전자 장치.
The method of claim 1, wherein the processor,
Even if the first application has the first instruction set structure, the number of applications having a second instruction set structure different from the first instruction set structure among the at least one application is the number of applications having the first instruction set structure. If the number is greater than the number, the electronic device is configured to boost the clock frequency based on the second instruction set structure.
제1항에 있어서, 상기 프로세서는,
상기 제1어플리케이션이 제1명령어 집합 구조를 가지더라도, 상기 제1명령어 집합 구조와 다른 제2명령어 집합 구조를 가지고 상기 제1어플리케이션과 관련된 어플리케이션들의 갯수가 기설정된 갯수보다 많으면, 상기 제2명령어 집합 구조에 기초하여 상기 클럭 주파수를 부스트하도록 설정된 전자 장치.
The method of claim 1, wherein the processor,
Even if the first application has a first instruction set structure, if the number of applications related to the first application having a second instruction set structure different from the first instruction set structure is greater than a preset number, the second instruction set An electronic device configured to boost the clock frequency based on a structure.
제1항에 있어서,
상기 제1명령어 집합 구조는 32비트 명령어 집합 구조 또는 64비트 명령어 집합 구조를 포함하는 전자 장치.
The method of claim 1,
The first instruction set structure includes a 32-bit instruction set structure or a 64-bit instruction set structure.
전자 장치의 동작 방법에 있어서,
상기 전자 장치에서 실행 중인 적어도 하나의 어플리케이션 중 프로세서의 부스트와 관련된 지정된 조건을 만족하는 제1어플리케이션을 확인하는 동작;
상기 제1어플리케이션의 제1명령어 집합 구조(instruction set architecture(ISA))를 확인하는 동작; 및
상기 제1명령어 집합 구조의 종류에 따라 상기 전자 장치에 포함된 적어도 하나의 프로세서에 인가되는 클럭 신호의 주파수를 부스트하는 동작을 포함하는 전자 장치의 동작 방법.
In the method of operating an electronic device,
Checking a first application that satisfies a specified condition related to a boost of a processor among at least one application running in the electronic device;
Confirming a first instruction set architecture (ISA) of the first application; And
And boosting a frequency of a clock signal applied to at least one processor included in the electronic device according to a type of the first instruction set structure.
제12항에 있어서, 상기 클럭 주파수를 부스트하는 동작은,
상기 제1명령어 집합 구조의 종류에 따라, 상기 적어도 하나의 프로세서를 부스트하기 위한 주파수 값을 결정하는 동작; 및
상기 적어도 하나의 프로세서가 상기 주파수 값 이상의 주파수를 가지는 클럭 신호를 이용하여 구동되도록 상기 적어도 하나의 프로세서를 제어하는 동작을 포함하는 전자 장치의 동작 방법.
The method of claim 12, wherein boosting the clock frequency comprises:
Determining a frequency value for boosting the at least one processor according to the type of the first instruction set structure; And
And controlling the at least one processor so that the at least one processor is driven using a clock signal having a frequency equal to or greater than the frequency value.
제13항에 있어서, 상기 주파수 값을 결정하는 동작은,
명령어 집합 구조의 종류에 따른 특정 주파수 값들에 대응하는 상기 적어도 하나의 프로세서의 성능과 전력 소모량을 나타내는 테이블을 이용하여 상기 주파수 값을 결정하는 동작을 더 포함하는 전자 장치의 동작 방법.
The method of claim 13, wherein determining the frequency value comprises:
The method of operating an electronic device further comprising determining the frequency value by using a table indicating performance and power consumption of the at least one processor corresponding to specific frequency values according to a type of instruction set structure.
제12항에 있어서, 상기 제1어플리케이션을 확인하는 동작은,
상기 적어도 하나의 어플리케이션이 서로 다른 종류의 명령어 집합 구조를 가지는 어플리케이션들을 포함하면, 상기 어플리케이션들 중 상기 전자 장치의 디스플레이의 최상단에 표시된 어플리케이션을 상기 제1어플리케이션으로 결정하는 동작을 포함하는 전자 장치의 동작 방법.
The method of claim 12, wherein the checking of the first application comprises:
If the at least one application includes applications having different types of command set structures, an operation of an electronic device including determining an application displayed at the top of the display of the electronic device among the applications as the first application Way.
제15항에 있어서,
상기 최상단에 표시된 상기 제1어플리케이션이 제2어플리케이션으로 변경되면, 상기 제2어플리케이션의 제2명령어 집합 구조를 확인하는 동작; 및
상기 제2명령어 집합 구조의 종류에 기초하여 상기 클럭 주파수를 부스트하는 동작을 더 포함하는 전자 장치의 동작 방법.
The method of claim 15,
When the first application displayed at the top is changed to a second application, checking a structure of a second instruction set of the second application; And
The method of operating an electronic device further comprising boosting the clock frequency based on the type of the second instruction set structure.
제12항에 있어서, 상기 제1어플리케이션을 확인하는 동작은,
상기 적어도 하나의 어플리케이션이 서로 다른 종류의 명령어 집합 구조를 가지는 어플리케이션들을 포함하면, 상기 어플리케이션들 중 즉시 응답하도록 설정된 어플리케이션을 상기 제1어플리케이션으로 결정하는 동작을 포함하는 전자 장치의 동작 방법.
The method of claim 12, wherein the checking of the first application comprises:
And if the at least one application includes applications having different types of instruction set structures, determining an application set to respond immediately among the applications as the first application.
제12항에 있어서, 상기 클럭 주파수를 부스트하는 동작은,
상기 제1어플리케이션이 상기 제1명령어 집합 구조를 가지더라도, 상기 적어도 하나의 어플리케이션 중 상기 제1명령어 집합 구조와 다른 제2명령어 집합 구조를 가지는 어플리케이션의 갯수가 상기 제1명령어 집합 구조를 가지는 어플리케이션의 갯수보다 많으면, 상기 제2명령어 집합 구조에 기초하여 상기 클럭 주파수를 부스트하는 동작을 더 포함하는 전자 장치의 동작 방법.
The method of claim 12, wherein boosting the clock frequency comprises:
Even if the first application has the first instruction set structure, the number of applications having a second instruction set structure different from the first instruction set structure among the at least one application is the number of applications having the first instruction set structure. If the number is greater than the number, the operation method of the electronic device further comprising boosting the clock frequency based on the second instruction set structure.
제12항에 있어서, 상기 클럭 주파수를 부스트하는 동작은,
상기 제1어플리케이션이 제1명령어 집합 구조를 가지더라도, 상기 제1명령어 집합 구조와 다른 제2명령어 집합 구조를 가지고 상기 제1어플리케이션과 관련된 어플리케이션들의 갯수가 기설정된 갯수보다 많으면, 상기 제2명령어 집합 구조에 기초하여 상기 클럭 주파수를 부스트하는 동작을 더 포함하는 전자 장치의 동작 방법.
The method of claim 12, wherein boosting the clock frequency comprises:
Even if the first application has a first instruction set structure, if the number of applications related to the first application having a second instruction set structure different from the first instruction set structure is greater than a preset number, the second instruction set The method of operating an electronic device further comprising boosting the clock frequency based on the structure.
컴퓨터로 판독할 수 있는 기록 매체에 있어서,
전자 장치에서 실행 중인 적어도 하나의 어플리케이션 중 프로세서의 부스트와 관련된 지정된 조건을 만족하는 제1어플리케이션을 확인하는 동작;
상기 제1어플리케이션의 제1명령어 집합 구조(instruction set architecture(ISA))를 확인하는 동작; 및
상기 제1명령어 집합 구조의 종류에 따라 상기 전자 장치에 포함된 적어도 하나의 프로세서에 인가되는 클럭 신호의 주파수를 부스트하는 동작을 실행하는 프로그램을 저장할 수 있는 컴퓨터로 판독할 수 있는 기록 매체.
In a computer-readable recording medium,
Identifying a first application that satisfies a specified condition related to a boost of a processor among at least one application running in the electronic device;
Confirming a first instruction set architecture (ISA) of the first application; And
A computer-readable recording medium capable of storing a program that performs an operation of boosting a frequency of a clock signal applied to at least one processor included in the electronic device according to the type of the first instruction set structure.
KR1020190094960A 2019-08-05 2019-08-05 Electronic device for controlling frequency of processor and method of operating the same KR20210016773A (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020190094960A KR20210016773A (en) 2019-08-05 2019-08-05 Electronic device for controlling frequency of processor and method of operating the same
US16/983,090 US11609596B2 (en) 2019-08-05 2020-08-03 Electronic device for controlling frequency of processor and method of operating the same
EP20851124.6A EP3942385B1 (en) 2019-08-05 2020-08-03 Electronic device for controlling frequency of processor and method of operating the same
PCT/KR2020/010196 WO2021025404A1 (en) 2019-08-05 2020-08-03 Electronic device for controlling frequency of processor and method of operating the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190094960A KR20210016773A (en) 2019-08-05 2019-08-05 Electronic device for controlling frequency of processor and method of operating the same

Publications (1)

Publication Number Publication Date
KR20210016773A true KR20210016773A (en) 2021-02-17

Family

ID=74498427

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190094960A KR20210016773A (en) 2019-08-05 2019-08-05 Electronic device for controlling frequency of processor and method of operating the same

Country Status (4)

Country Link
US (1) US11609596B2 (en)
EP (1) EP3942385B1 (en)
KR (1) KR20210016773A (en)
WO (1) WO2021025404A1 (en)

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6882952B1 (en) 2001-02-28 2005-04-19 Lsi Logic Corporation System and method for measuring bus frequency
US20080263324A1 (en) 2006-08-10 2008-10-23 Sehat Sutardja Dynamic core switching
KR100934215B1 (en) * 2007-10-29 2009-12-29 한국전자통신연구원 Microprocessor based on event handling instruction set and event processing method using the same
US8615647B2 (en) 2008-02-29 2013-12-24 Intel Corporation Migrating execution of thread between cores of different instruction set architecture in multi-core processor and transitioning each core to respective on / off power state
US20100312991A1 (en) 2008-05-08 2010-12-09 Mips Technologies, Inc. Microprocessor with Compact Instruction Set Architecture
US8621253B1 (en) * 2012-06-26 2013-12-31 Google Inc. Processor boost based on user interface demand
US20140136823A1 (en) * 2012-11-15 2014-05-15 Daniel J. Ragland Enabling A User And/Or Software To Dynamically Control Performance Tuning Of A Processor
JP6060756B2 (en) 2013-03-18 2017-01-18 富士通株式会社 Frequency control device, frequency control method, and frequency control program
US9411642B2 (en) * 2014-01-17 2016-08-09 Nvidia Corporation Using high priority thread to boost CPU clock rate
US9958932B2 (en) 2014-11-20 2018-05-01 Apple Inc. Processor including multiple dissimilar processor cores that implement different portions of instruction set architecture
EP3230853A4 (en) 2014-12-09 2019-05-29 Intel Corporation System and method for execution of application code compiled according to two instruction set architectures
EP3125072B8 (en) * 2015-07-29 2018-11-14 Samsung Electronics Co., Ltd. Method of managing power and electronic device
US20180095792A1 (en) * 2016-10-05 2018-04-05 Mediatek Inc. Multi-core system including heterogeneous processor cores with different instruction set architectures
US10713213B2 (en) 2016-12-21 2020-07-14 Intel Corporation Systems and methods for multi-architecture computing
KR20180076631A (en) 2016-12-28 2018-07-06 삼성전자주식회사 Method and system for performance boosting for semiconductor device

Also Published As

Publication number Publication date
US20210041907A1 (en) 2021-02-11
EP3942385A4 (en) 2022-05-11
EP3942385A1 (en) 2022-01-26
US11609596B2 (en) 2023-03-21
WO2021025404A1 (en) 2021-02-11
EP3942385B1 (en) 2023-10-04

Similar Documents

Publication Publication Date Title
EP3697138B1 (en) Electronic device for adaptive power management
KR20200047162A (en) Electronic device for displaying an executable application on a split screen and method for the same
US11442554B2 (en) Electronic device and method for recommending word in same
US11024266B2 (en) Method for maintaining performance of an application and electronic device thereof
KR102514763B1 (en) Method for utilizing input device and electronic device for the same
US11622247B2 (en) Electronic device and method of controlling electronic device
KR102372644B1 (en) Operation method of operating system and electronic device supporting the same
KR102606041B1 (en) An Electronic Device changing the ID based on the state information and another Electronic Device checking the state information
KR20210046426A (en) Application optimizing method and electronic device supporting the same
US20190227705A1 (en) Method for displaying user interface of application and electronic device thereof
US11360752B2 (en) Electronic device performing restoration on basis of comparison of constant value and control method thereof
KR20200014003A (en) Electronic apparatus for controlling display of virtual input interface in environment of a plurality of output screens and operating method thereof
KR20210016773A (en) Electronic device for controlling frequency of processor and method of operating the same
US20210248003A1 (en) Electronic device for scheduling based on heterogeneous multi-processor and operating method thereof
US20200244750A1 (en) System for processing user data and controlling method thereof
US20210004264A1 (en) Method for displaying use history and electronic device for performing same
KR20210101687A (en) Apparatus and method for converting audio output
US20200167299A1 (en) Electronic device for scheduling a plurality of tasks and operating method thereof
US20210181926A1 (en) Method, electronic device and storage medium for providing mode switching
KR20210017247A (en) Electronic device controlling luminance and its luminance control method
KR20200101199A (en) Electronic device for performing thermal controlling and method for operating thefeof
KR102666329B1 (en) Method and electronic device for executing application
KR102408961B1 (en) Method for processing a delayed task and electronic device implementing the same
KR20210104521A (en) An electronic device performing a restoration based on a comparison of constant value and control method thereof
KR20210132862A (en) Method for controlling clock and elecronic device therefor

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal