KR20240043635A - Power management chip, electronic device having the same, and operating method thereof - Google Patents

Power management chip, electronic device having the same, and operating method thereof Download PDF

Info

Publication number
KR20240043635A
KR20240043635A KR1020220159550A KR20220159550A KR20240043635A KR 20240043635 A KR20240043635 A KR 20240043635A KR 1020220159550 A KR1020220159550 A KR 1020220159550A KR 20220159550 A KR20220159550 A KR 20220159550A KR 20240043635 A KR20240043635 A KR 20240043635A
Authority
KR
South Korea
Prior art keywords
power
low
data
entry
state
Prior art date
Application number
KR1020220159550A
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 US18/129,466 priority Critical patent/US20240103601A1/en
Publication of KR20240043635A publication Critical patent/KR20240043635A/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/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • 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/3293Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02JCIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
    • H02J9/00Circuit arrangements for emergency or stand-by power supply, e.g. for emergency lighting
    • H02J9/005Circuit arrangements for emergency or stand-by power supply, e.g. for emergency lighting using a power saving mode
    • 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)
  • Business, Economics & Management (AREA)
  • Emergency Management (AREA)
  • Power Engineering (AREA)
  • Power Sources (AREA)

Abstract

본 발명에 따른 전자 장치의 동작 방법은, 유휴 상태를 발생하는 단계, 저전력 관리 모듈에서 복수의 저전력 상태들 중에서 어느 하나를 선택하는 단계, 및 상기 선택된 저전력 상태에 따라 복수의 장치들의 각각을 저전력 모드로 진입하는 단계를 포함하고, 상기 선택하는 단계는, 상기 유휴 상태의 시간 조건, 전력 소모, 및 이전 저전력 상태의 진입 성공률을 평가함으로써 상기 저전력 상태를 선택하는 단계를 포함할 수 있다.A method of operating an electronic device according to the present invention includes generating an idle state, selecting one of a plurality of low-power states in a low-power management module, and switching each of the plurality of devices to a low-power mode according to the selected low-power state. and entering the low-power state, wherein the selecting step may include selecting the low-power state by evaluating the time conditions of the idle state, power consumption, and a success rate of entering the previous low-power state.

Figure P1020220159550
Figure P1020220159550

Description

전력 관리 칩, 그것을 포함하는 전자 장치, 및 그것의 동작 방법{POWER MANAGEMENT CHIP, ELECTRONIC DEVICE HAVING THE SAME, AND OPERATING METHOD THEREOF}POWER MANAGEMENT CHIP, ELECTRONIC DEVICE HAVING THE SAME, AND OPERATING METHOD THEREOF}

본 발명은 전력 관리 칩, 그것을 포함하는 전자 장치, 및 그것의 동작 방법에 관한 것이다.The present invention relates to a power management chip, an electronic device incorporating the same, and a method of operating the same.

일반적으로, 스마트 폰, TV, 태블릿 PC 등의 모바일 전자 장치는 높은 하드웨어 사양으로, 좋은 성능과 빠른 속도를 지원한다. 모바일 전자 장치는 사용자의 편의성을 높이기 위하여, 다양한 사용자 인터페이스 환경을 제공하고 있다. 그러나, 하드웨어 사양이 높아지고, 기능들과 사용자 인터페이스 환경이 다양해 질수록, 전자 장치에서 소모되는 전력량이 늘어나고, 전자 장치의 배터리 용량은 점점 늘어나고 있다. 이에 사용성 향상을 위하여 전자 장치의 소모 전력을 줄일 필요성이 증가하고 있다.In general, mobile electronic devices such as smartphones, TVs, and tablet PCs have high hardware specifications and support good performance and fast speed. Mobile electronic devices provide various user interface environments to increase user convenience. However, as hardware specifications increase and functions and user interface environments become more diverse, the amount of power consumed by electronic devices increases, and the battery capacity of electronic devices continues to increase. Accordingly, the need to reduce power consumption of electronic devices to improve usability is increasing.

본 발명의 목적은 전력 소모를 줄이는 전력 관리 칩, 그것을 포함하는 전자 장치, 및 그것의 동작 방법을 제공하는 데 있다.An object of the present invention is to provide a power management chip that reduces power consumption, an electronic device including the same, and a method of operating the same.

본 발명의 목적은 성능을 향상시키는 전원 관리 칩, 그것을 포함하는 전자 장치, 및 그것의 동작 방법을 제공하는 데 있다.An object of the present invention is to provide a power management chip that improves performance, an electronic device including the same, and a method of operating the same.

본 발명의 실시 예에 따른 전자 장치의 동작 방법은, 유휴 상태를 발생하는 단계; 저전력 관리 모듈에서 복수의 저전력 상태들 중에서 어느 하나를 선택하는 단계; 및 상기 선택된 저전력 상태에 따라 복수의 장치들의 각각을 저전력 모드로 진입하는 단계를 포함하고, 상기 선택하는 단계는, 상기 유휴 상태의 시간 조건, 전력 소모, 및 이전 저전력 상태의 진입 성공률을 평가함으로써 상기 저전력 상태를 선택하는 단계를 포함할 수 있다.A method of operating an electronic device according to an embodiment of the present invention includes generating an idle state; selecting one of a plurality of low power states in a low power management module; and entering each of the plurality of devices into a low-power mode according to the selected low-power state, wherein the selecting step includes evaluating the idle state time condition, power consumption, and success rate of entering the previous low-power state. It may include selecting a low power state.

본 발명의 실시 예에 따른 전력 관리 칩은, 저전력 관리를 위한 설정 데이터를 저장하는 특수 기능 레지스터; 저전력 상태별 제 1 데이터를 저장하는 제 1 테이블; 저전력 상태에 대응하는 장치별 제 2 데이터를 저장하는 제 2 테이블; 및 상기 설정 데이터, 제 1 데이터, 및 제 2 데이터를 이용하여 복수의 저전력 상태들 중에서 어느 하나를 선택하고, 상기 선택된 저전력 상태에 따라 복수의 장치들의 각각의 저전력 진입 성공률과 우선순위를 결정하는 로직 회로를 포함할 수 있다.A power management chip according to an embodiment of the present invention includes a special function register that stores setting data for low power management; A first table storing first data for each low power state; a second table storing second data for each device corresponding to a low power state; and logic to select one of a plurality of low-power states using the setting data, first data, and second data, and to determine the low-power entry success rate and priority of each of the plurality of devices according to the selected low-power state. May include circuits.

본 발명의 실시 예에 따른 전자 장치는, 시스템 온 칩; 상기 시스템 온 칩의 동작에 필요한 데이터를 임시로 저장하는 버퍼 메모리; 상기 시스템 온 칩의 전원을 관리하는 전력 관리 칩; 디스플레이 데이터를 디스플레이 하는 디스플레이 장치; 터치 데이터를 발생하는 터치 패널; 및 상기 시스템 온 칩으로부터 데이터를 저장하는 저장 장치를 포함하고, 상기 전력 관리 칩은 복수의 저전력 상태들의 각각의 소모 전력과 저전력 진입까지의 소모 시간 이력, 및 저전력 진입 성공률 이력을 기반으로, 상기 복수의 저전력 상태들 중에서 어느 하나를 선택하고, 상기 선택된 저전력 상태에 따라 상기 시스템 온 칩, 상기 버퍼 메모리, 상기 디스플레이 장치, 상기 터치 패널, 및 상기 저장 장치의 각각을 저전력 모드로 진입시키는 것을 특징으로 한다.An electronic device according to an embodiment of the present invention includes a system on a chip; a buffer memory that temporarily stores data required for operation of the system-on-chip; a power management chip that manages power of the system-on-chip; A display device that displays display data; A touch panel that generates touch data; and a storage device for storing data from the system-on-chip, wherein the power management chip is based on the power consumption of each of the plurality of low-power states, the consumption time history until low-power entry, and the low-power entry success rate history, Selecting one of the low power states, and entering each of the system on chip, the buffer memory, the display device, the touch panel, and the storage device into a low power mode according to the selected low power state. .

본 발명의 실시 예에 따른 프로세서는, 제 1 장치; 제 2 장치; 중앙 처리 장치; 및 상기 제 1 장치, 상기 제 2 장치, 및 상기 중앙 처리 장치의 전력을 관리하는 전력 관리 유닛을 포함하고, 상기 전력 관리 유닛은 유휴 시간에 소모 전력, 평균 진입 소모 시간, 및 저전력 진입 성공률을 기반으로 복수의 저전력 상태들 중에서 어느 하나를 선택하고, 상기 선택된 저전력 상태에 따라 상기 제 1 장치, 상기 제 2 장치, 및 상기 중앙 처리 장치의 저전력 처리 동작을 제어하는 것을 특징으로 한다.A processor according to an embodiment of the present invention includes a first device; second device; central processing unit; and a power management unit that manages power of the first device, the second device, and the central processing unit, wherein the power management unit manages power consumption during idle time, average entry consumption time, and low-power entry success rate. Selecting one of a plurality of low-power states and controlling low-power processing operations of the first device, the second device, and the central processing unit according to the selected low-power state.

본 발명의 실시 예에 따른 전력 관리 칩, 그것을 포함하는 전자 장치, 및 그것의 동작 방법은, 저전력 상태의 과거 이력을 기반으로 효율적으로 전력 소모를 줄일 수 있다.A power management chip, an electronic device including the same, and an operating method thereof according to an embodiment of the present invention can efficiently reduce power consumption based on past history of low-power states.

본 발명의 실시 예에 따른 전력 관리 칩, 그것을 포함하는 전자 장치, 및 그것의 동작 방법은, 전력 상태 선택할 때, 전력을 가장 절약할 수 있는 전력 상태를 추정 및 선택할 수 있다.The power management chip, the electronic device including the same, and its operating method according to an embodiment of the present invention can estimate and select a power state that can save the most power when selecting a power state.

본 발명의 실시 예에 따른 전력 관리 칩, 그것을 포함하는 전자 장치, 및 그것의 동작 방법은, 각 전력 상태 별 소모 전력, 저전력 진입까지의 소모 시간 이력, 저전력 진입 성공률 이력을 고려하여, 전력 상태 별 전력 소모 정도를 정량화 시킴으로써 비교할 수 있다.A power management chip, an electronic device including the same, and a method of operating the same according to an embodiment of the present invention consider the power consumption for each power state, the consumption time history until low power entry, and the low power entry success rate history for each power state. Comparison can be made by quantifying the level of power consumption.

본 발명의 실시 예에 따른 전력 관리 칩, 그것을 포함하는 전자 장치, 및 그것의 동작 방법은, 저전력 처리 동작에서, 각 장치의 기존 진입 성공률을 고려하여 처리 순서를 결정함으로써, 진입 실패 비용을 최소화하고, 효율적인 후처리를 가능하다.A power management chip, an electronic device including the same, and a method of operating the same according to an embodiment of the present invention determine the processing order in consideration of the existing entry success rate of each device in a low-power processing operation, thereby minimizing the cost of entry failure. , efficient post-processing is possible.

이하에 첨부되는 도면들은 본 실시 예에 관한 이해를 돕기 위한 것으로, 상세한 설명과 함께 실시 예들을 제공한다.
도 1은 실시 예에 따른 전자 장치를 보여주는 도면이다.
도 2는 본 발명의 실시 예에 따른 저전력 상태를 예시적으로 보여주는 도면이다.
도 3은 본 발명의 실시 예에 따른 전력 관리 칩(130)을 예시적으로 보여주는 도면이다.
도 4는 본 발명의 실시 예에 따른 특수 기능 레지스터(131)에 저장된 설정 데이터를 예시적으로 보여주는 도면이다.
도 5는 본 발명의 실시 예에 따른 저전력 상태별 데이터 테이블(132)의 엔트리를 예시적으로 보여주는 도면이다.
도 6은 본 발명의 실시 예에 따른 장치별 데이터 테이블(133)의 엔트리를 예시적으로 보여주는 도면이다.
도 7은 본 발명의 실시 예에 따른 로직 회로(134)를 예시적으로 보여주는 도면이다.
도 8은 본 발명의 실시 예에 따른 전자 장치의 동작 방법을 예시적으로 보여주는 흐름도이다.
도 9는 본 발명의 실시 예에 따른 전자 장치(100)의 저전력 상태를 선택하는 방법을 예시적으로 보여주는 흐름도이다.
도 10은 본 발명의 실시 예에 따른 전자 장치(100)의 저전력 상태 진입 동작을 예시적으로 보여주는 흐름도이다.
도 11은 본 발명의 실시 예에 따른 컴퓨팅 시스템을 예시적으로 보여주는 도면이다.
도 12는 본 발명의 실시 예에 따른 프로세서의 저전력 모드 진입 동작을 보여주는 래더 다이어그램이다.
도 13은 본 발명의 실시 예에 따른 모바일 장치(2000)를 예시적으로 보여주는 도면이다.
도 14는 본 발명의 실시 예에 따른 신경망 연산 시스템(3000)을 보여주는 도면이다.
The drawings attached below are intended to aid understanding of the present embodiment and provide examples along with a detailed description.
1 is a diagram showing an electronic device according to an embodiment.
Figure 2 is a diagram illustrating a low power state according to an embodiment of the present invention.
Figure 3 is a diagram illustrating the power management chip 130 according to an embodiment of the present invention.
Figure 4 is a diagram illustrating setting data stored in the special function register 131 according to an embodiment of the present invention.
Figure 5 is a diagram illustrating entries in the data table 132 for each low power state according to an embodiment of the present invention.
FIG. 6 is a diagram illustrating entries in the data table 133 for each device according to an embodiment of the present invention.
FIG. 7 is a diagram illustrating a logic circuit 134 according to an embodiment of the present invention.
Figure 8 is a flowchart exemplarily showing a method of operating an electronic device according to an embodiment of the present invention.
FIG. 9 is a flowchart illustrating a method of selecting a low power state of the electronic device 100 according to an embodiment of the present invention.
FIG. 10 is a flowchart illustrating an operation of entering a low-power state of the electronic device 100 according to an embodiment of the present invention.
Figure 11 is a diagram illustrating a computing system according to an embodiment of the present invention.
Figure 12 is a ladder diagram showing a low-power mode entry operation of a processor according to an embodiment of the present invention.
FIG. 13 is a diagram illustrating a mobile device 2000 according to an embodiment of the present invention.
Figure 14 is a diagram showing a neural network operation system 3000 according to an embodiment of the present invention.

아래에서는 도면들을 이용하여 본 발명의 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시 할 수 있을 정도로 본 발명의 내용을 명확하고 상세하게 기재할 것이다.Below, using the drawings, the content of the present invention will be described clearly and in detail so that a person skilled in the art can easily implement it.

본 발명의 실시 예에 따른 전력 관리 칩, 그것을 포함하는 전자 장치, 및 그것의 동작 방법은 유휴 시간(Idle Time) 발생하고, 진입할 전력 상태 선택하고, 선택된 전력 상태에 따라 각 장치를 정해진 순서에 따라 처리하는 저전력 처리 동작을 수행할 수 있다. 이로써, 본 발명은 전력 상태 선택할 때, 전력을 가장 절약할 수 있는 전력 상태를 추정 및 선택할 수 있다. 특히, 본 발명은 각 전력 상태 별 소모 전력, 저전력 진입까지의 소모 시간 이력, 저전력 진입 성공률 이력을 고려하여, 전력 상태 별 전력 소모 정도를 정량화 시킴으로써 비교할 수 있다. 또한, 본 발명은 저전력 처리 동작에서, 각 장치의 기존 진입 성공률을 고려하여 처리 순서를 결정함으로써, 진입 실패 비용을 최소화하고, 효율적인 후처리를 가능하게 한다.A power management chip, an electronic device including the same, and a method of operating the same according to an embodiment of the present invention generate idle time, select a power state to enter, and operate each device in a predetermined order according to the selected power state. Low-power processing operations can be performed according to the processing requirements. Accordingly, when selecting a power state, the present invention can estimate and select a power state that can save the most power. In particular, the present invention considers the power consumption for each power state, the consumption time history until low power entry, and the low power entry success rate history, and can be compared by quantifying the degree of power consumption for each power state. In addition, the present invention determines the processing order in consideration of the existing entry success rate of each device in low-power processing operations, thereby minimizing entry failure costs and enabling efficient post-processing.

도 1은 본 발명의 실시 예에 따른 전자 장치(100)를 예시적으로 보여주는 도면이다. 도 1을 참조하면, 전자 장치(100)는 시스템 온 칩(110; SoC), 버퍼 메모리(120), 전력 관리 칩(130; PMIC), 디스플레이 장치(140; LCD), 터치 패널(150), 저장 장치(170)를 포함할 수 있다.FIG. 1 is a diagram illustrating an electronic device 100 according to an embodiment of the present invention. Referring to FIG. 1, the electronic device 100 includes a system on a chip (SoC) 110, a buffer memory 120, a power management chip (130), a PMIC (PMIC), a display device (LCD) 140, a touch panel 150, It may include a storage device 170.

시스템 온 칩(110)은 적어도 하나의 프로세서(111; CPU), 메모리 제어기(110), 성능 제어기(113; PFMC), 활동 모니터 유닛(114, AMU), 클록 관리 유닛(115; CMU), 사용자 인터페이스 제어기(116), 메모리 인터페이스 회로(117), 가속기(118), 및 시스템 버스(119)를 포함할 수 있다. 한편, 전자 장치(100)의 구성 요소들은 여기에 제한되지 않는다고 이해되어야 할 것이다.System-on-a-chip 110 includes at least one processor 111 (CPU), a memory controller 110, a performance controller 113 (PFMC), an activity monitor unit 114 (AMU), a clock management unit 115 (CMU), and a user. It may include an interface controller 116, a memory interface circuit 117, an accelerator 118, and a system bus 119. Meanwhile, it should be understood that the components of the electronic device 100 are not limited here.

프로세서(111)는 전자 장치(100)에서 수행될 소프트웨어(응용 프로그램, 운영 체제, 장치 드라이버들)를 실행하도록 구현될 수 있다. 또한, 프로세서(111)는 버퍼 메모리(120)에 로드되는 운영 체제(OS)를 실행하도록 구현될 수 있다. 또한 프로세서(111)는 운영 체제(OS) 기반에서 구동될 다양한 응용 프로그램들(Application Program)을 실행할 수 있다. 프로세서(111)는 동종 멀티-코어 프로세서(Homogeneous Multi-Core Processor) 혹은 이종 멀티-코어 프로세서(Heterogeneous Multi-Core Processor)로 구현될 수 있다.The processor 111 may be implemented to execute software (application programs, operating systems, device drivers) to be executed in the electronic device 100. Additionally, the processor 111 may be implemented to execute an operating system (OS) loaded into the buffer memory 120. Additionally, the processor 111 can execute various application programs to be run based on an operating system (OS). The processor 111 may be implemented as a homogeneous multi-core processor or a heterogeneous multi-core processor.

또한, 프로세서(111)는 적어도 2개의 독립적으로 구동 가능한 프로세서 코어들을 갖는 컴퓨팅 컴포넌트로 구현될 수 있다. 여기서 코어들의 각각은 프로그램 명령들(Program Instructions)을 독립적으로 읽고 실행할 수 있다. 코어들의 각각은 독립된 구동 클록 및 독립된 구동 전압에 의해서 동작하는 복수의 파워 도메인(Power Domain)으로 구성될 수 있다. 또한, 멀티-코어들 각각에 공급되는 구동 전압과 구동 클록 신호를 코어 단위로 차단 혹은 연결할 수 있다. 각각의 파워 도메인들에 제공되는 구동 전압과 클록 신호를 특정 코어로부터 차단하는 것을 핫플러그-아웃(Hotplug-out)이라 칭할 수 있고, 구동 전압과 클록을 특정 코어에 제공하는 것을 핫플러그-인(Hotplug-in)이라 칭할 수 있다. Additionally, the processor 111 may be implemented as a computing component having at least two independently operable processor cores. Here, each of the cores can independently read and execute program instructions. Each of the cores may be composed of a plurality of power domains that operate by independent driving clocks and independent driving voltages. Additionally, the driving voltage and driving clock signal supplied to each of the multi-cores can be blocked or connected on a core-by-core basis. Blocking the driving voltage and clock signal provided to each power domain from a specific core can be called hot plug-out, and providing the driving voltage and clock to a specific core can be called hot plug-in. It can be called Hotplug-in.

또한, 각 파워 도메인에 제공되는 구동 클록의 주파수 및 구동 전압의 레벨은 코어들 각각의 처리 로드에 따라 가변 될 수 있다. 즉, 각각의 코어는 태스크들을 처리하는데 소요되는 시간이 길수록 대응하는 파워 도메인에 제공되는 구동 클록의 주파수나 구동 전압의 레벨을 상승시키는 DVFS(Dynamic Voltage and Frequency Scaling) 방식으로 제어될 수 있다. DVFS를 통하여 조정된 프로세서(111)의 구동 전압 및 구동 클록의 동작 주파수를 참조하여 핫플러그-인 및 핫플러그-아웃을 수행할 수 있다. 운영 체제(OS)의 커널에서는 이러한 방식의 프로세서(111) 제어를 위해서 런 큐(Run Queue)에 있는 태스크들의 수와 프로세서(111)의 구동 전압 및 구동 클록을 특정 시간 간격으로 모니터링할 수 있다. 또한, 운영체제(OS)의 커널은 모니터링된 정보를 참조하여 프로세서(111)의 핫플러그-인(Hotplug-in) 혹은 핫플러그-아웃(Hotplug-out)을 제어할 수 있다.Additionally, the frequency of the driving clock and the level of the driving voltage provided to each power domain may vary depending on the processing load of each core. That is, each core can be controlled using a Dynamic Voltage and Frequency Scaling (DVFS) method that increases the level of the driving clock frequency or driving voltage provided to the corresponding power domain as the time required to process tasks increases. Hot plug-in and hot plug-out can be performed by referring to the driving voltage of the processor 111 and the operating frequency of the driving clock adjusted through DVFS. To control the processor 111 in this manner, the kernel of the operating system (OS) can monitor the number of tasks in the run queue and the driving voltage and driving clock of the processor 111 at specific time intervals. Additionally, the kernel of the operating system (OS) can control hot plug-in or hot plug-out of the processor 111 with reference to the monitored information.

메모리 제어기(112)는 버퍼 메모리(120)와 시스템 온 칩(110) 사이에서 인터페이싱을 제공하도록 구현될 수 있다. 또한, 메모리 제어기(112)는 프로세서(111)나 다른 기능 블록(Intellectual Property: IP)의 요청에 따라 버퍼 메모리(120)를 액세스할 수 있다. 예를 들어, 메모리 제어기(112)는 프로세서(111)의 쓰기 요청에 따라 데이터를 버퍼 메모리(120)에 쓸 수 있다. 또한, 메모리 제어기(112)는 프로세서(111)의 읽기 요청에 따라 버퍼 메모리(120)로부터 데이터를 읽어내어 시스템 버스(119)를 통해서 프로세서(111)나 메모리 인터페이스 회로(117)에 전달할 수 있다.Memory controller 112 may be implemented to provide interfacing between buffer memory 120 and system-on-chip 110. Additionally, the memory controller 112 may access the buffer memory 120 according to a request from the processor 111 or another functional block (Intellectual Property: IP). For example, the memory controller 112 may write data to the buffer memory 120 according to a write request from the processor 111. Additionally, the memory controller 112 may read data from the buffer memory 120 in response to a read request from the processor 111 and transfer it to the processor 111 or the memory interface circuit 117 through the system bus 119.

버퍼 메모리(120)는 부팅시 운영 체제(OS)나 기본 응용 프로그램들(Application Program)를 로드될 수 있다. 예를 들어, 전자 장치(100)의 부팅시에 저장 장치(170)에 저장된 OS 이미지가 부팅 시퀀스에 의거하여 버퍼 메모리(120)로 로드된다. 운영 체제(OS)에 의해서 전자 장치(100)의 제반 입출력 동작들이 지원될 수 있다. 마찬가지로, 사용자의 의하여 선택되거나 기본적인 서비스 제공을 위해서 응용 프로그램들이 버퍼 메모리(120)에 로드될 수 있다. 버퍼 메모리(120)는, 카메라와 같은 이미지 센서로부터 제공되는 영상 데이터를 저장하는 버퍼 메모리로 사용될 수도 있을 것이다. 버퍼 메모리(120)는 SRAM(Static Random Access Memory)이나 DRAM(Dynamic Random Access Memory)과 같은 휘발성 메모리이거나, PRAM, MRAM, ReRAM, FRAM, NOR 플래시 메모리 등의 비휘발성 메모리일 수 있다.The buffer memory 120 may load an operating system (OS) or basic application programs (Application Program) upon booting. For example, when the electronic device 100 boots, the OS image stored in the storage device 170 is loaded into the buffer memory 120 based on the boot sequence. All input/output operations of the electronic device 100 may be supported by the operating system (OS). Likewise, application programs selected by the user or to provide basic services may be loaded into the buffer memory 120. The buffer memory 120 may be used as a buffer memory to store image data provided from an image sensor such as a camera. The buffer memory 120 may be volatile memory such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM), or non-volatile memory such as PRAM, MRAM, ReRAM, FRAM, or NOR flash memory.

성능 제어기(113)는 운영 체제(OS)의 커널로부터 제공되는 제어 요청에 따라 시스템 온 칩(110)의 동작 파라미터들을 조정하도록 구현될 수 있다. 예를 들어, 능 제어기(113)는 시스템 온 칩(110)의 성능을 높이기 위해서 DVFS(Dynamic Voltage Frequency Scaling)의 레벨을 조정할 수 있다. 또한, 성능 제어기(113)는 커널의 요청에 따라 프로세서(111)의 Big.LITTLE과 같은 멀티-코어 프로세서의 구동 모드를 제어할 수 있다. 이때, 성능 제어기(113)는 내부에 구동 전압 및 구동 클록의 동작 주파수를 설정하는 성능 테이블(PFMT)을 포함할 수 있다. 성능 제어기(113)는 전력 관리 칩(130)에 연결된 AMU(114) 및 CMU(115)이 각 파워 도메인에 지정된 구동 전압 및 구동 클록을 제공하도록 제어할 수 있다.The performance controller 113 may be implemented to adjust the operating parameters of the system-on-chip 110 according to a control request provided from the kernel of an operating system (OS). For example, the function controller 113 may adjust the level of Dynamic Voltage Frequency Scaling (DVFS) to increase the performance of the system-on-chip 110. Additionally, the performance controller 113 can control the driving mode of a multi-core processor such as Big.LITTLE of the processor 111 according to the kernel's request. At this time, the performance controller 113 may internally include a performance table (PFMT) that sets the operating frequency of the driving voltage and driving clock. The performance controller 113 may control the AMU 114 and CMU 115 connected to the power management chip 130 to provide the driving voltage and driving clock specified for each power domain.

사용자 인터페이스 제어기(116)는 사용자 인터페이스 장치들로부터의 사용자 입력 및 출력을 제어하도록 구현될 수 있다. 예를 들어, 사용자 인터페이스 제어기(116)는 프로세서(111)의 제어에 따라 디스플레이 장치(140; LCD)에 데이터를 입력하기 위한 키보드 화면 등을 표시할 수 있다. 또한, 사용자 인터페이스 제어기(116)는 사용자가 요청한 데이터를 표시하도록 디스플레이 장치(140)를 제어할 수 있다. 사용자 인터페이스 제어기(116)는 터치 패널(150)과 같은 사용자 입력 수단으로부터의 제공되는 데이터를 사용자 입력 데이터로 디코딩할 수 있다.User interface controller 116 may be implemented to control user input and output from user interface devices. For example, the user interface controller 116 may display a keyboard screen for inputting data on the display device 140 (LCD) under the control of the processor 111. Additionally, the user interface controller 116 may control the display device 140 to display data requested by the user. The user interface controller 116 may decode data provided from a user input means, such as the touch panel 150, into user input data.

스토리지 인터페이스 회로(117)는 프로세서(111)의 요청에 따라 저장 장치(170)를 액세스하도록 구현될 수 있다. 즉, 스토리지 인터페이스 회로(117)는 시스템 온 칩(110)과 저장 장치(170) 사이의 인터페이스를 제공한다. 프로세서(111)에 의해서 처리된 데이터가 스토리지 인터페이스 회로(117)를 통해 저장 장치(170)에 저장될 수 있다. 또한, 저장 장치(170)에 저장된 데이터는 스토리지 인터페이스 회로(117)를 통해 프로세서(111)에 제공될 수 있다. 실시 예에 있어서, 스토리지 인터페이스 회로(117)는 NVMe(non-volatile memory express), PCIe(peripheral component interconnect express), SATA(serial at attachment), SCSI(small computer system interface), SAS(serial attached SCSI), UAS(USB(universal storage bus) attached SCSI), iSCSI(internet small computer system interface), Fiber Channel, FCoE(fiber channel over Ethernet) 중 적어도 하나로 구현될 수 있다.The storage interface circuit 117 may be implemented to access the storage device 170 according to a request from the processor 111. That is, the storage interface circuit 117 provides an interface between the system on chip 110 and the storage device 170. Data processed by the processor 111 may be stored in the storage device 170 through the storage interface circuit 117. Additionally, data stored in the storage device 170 may be provided to the processor 111 through the storage interface circuit 117. In an embodiment, the storage interface circuit 117 may include non-volatile memory express (NVMe), peripheral component interconnect express (PCIe), serial at attachment (SATA), small computer system interface (SCSI), and serial attached SCSI (SAS). , UAS (universal storage bus (USB) attached SCSI), iSCSI (internet small computer system interface), Fiber Channel, and FCoE (fiber channel over Ethernet) may be implemented.

저장 장치(170)는 전자 장치(100)의 저장 매체(Storage Medium)로서 제공 될 수 있다. 저장 장치(170)는 응용 프로그램들(Application Program), 운영 체제 이미지(OS Image) 및 각종 데이터를 저장할 수 있다. 저장 장치(170)는 메모리 카드(MMC, eMMC, SD, MicroSD 등)로 제공될 수도 있다. 저장 장치(170)는 낸드 플래시 메모리(NAND flash memory), 수직형 낸드 플래시 메모리, 노아 플래시 메모리(NOR flash memory), 저항성 램(resistive random access memory; RRAM), 상변화 메모리(phase-change memory; PRAM), 자기저항 메모리(magnetoresistive random access memory; MRAM), 강유전체 메모리(ferroelectric random access memory; FRAM), 혹은 스핀주입 자화반전 메모리(spin transfer torque random access memory; STT-RAM)을 포함할 수 있다. 다른 실시 예에 있어서, 저장 장치(170)는 시스템 온 칩(110)의 내부에 구비되는 내장 메모리일 수 있다.The storage device 170 may be provided as a storage medium of the electronic device 100. The storage device 170 can store application programs, operating system images, and various data. The storage device 170 may be provided as a memory card (MMC, eMMC, SD, MicroSD, etc.). The storage device 170 includes NAND flash memory, vertical NAND flash memory, NOR flash memory, resistive random access memory (RRAM), and phase-change memory; It may include PRAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), or spin transfer torque random access memory (STT-RAM). In another embodiment, the storage device 170 may be an internal memory provided inside the system-on-chip 110.

가속기(118)는 멀티미디어 혹은 멀티미디어 데이터의 처리 속도를 향상하기 위한 별도의 기능 블록(IP)으로 제공될 수 있다. 예를 들어, 가속기(118)는 텍스트(Text), 오디오(Audio), 정지 영상들(Still images), 애니메이션(Animation), 비디오(Video), 2차원 데이터, 혹은 3차원 데이터의 처리 성능을 향상시키기 위한 기능 블록(IP)으로 제공될 수 있다. 실시 예에 있어서, 가속기(118)는 저전력 관리 동작을 가속하도록 구현될 수 있다. 가속기(118)는 저전력 가속 모듈을 구동함으로써, 과거 전력 관리 이력을 이용하여 저전력 모드 진입을 가속시킬 수 있다.The accelerator 118 may be provided as a separate functional block (IP) to improve the processing speed of multimedia or multimedia data. For example, the accelerator 118 improves the processing performance of text, audio, still images, animation, video, 2-dimensional data, or 3-dimensional data. It can be provided as a function block (IP) to do this. In embodiments, accelerator 118 may be implemented to accelerate low power management operations. The accelerator 118 can accelerate entry into a low-power mode using past power management history by driving a low-power acceleration module.

시스템 버스(119)는 시스템 온 칩(110)의 내부에서 온-칩 네트워크를 제공하기 위한 버스이다. 예를 들어, 시스템 버스(119)는, 데이터 버스, 어드레스 버스 및 컨트롤 버스를 포함할 수 있다. 데이터 버스는 데이터가 이동하는 경로이다. 주로, 버퍼 메모리(120)이나 저장 장치(170)로의 메모리 접근 경로를 제공될 것이다. 어드레스 버스는 기능 블록들(IPs) 간의 어드레스 교환 경로를 제공한다. 컨트롤 버스는 기능 블록들(IPs) 간의 제어 신호를 전달하는 경로를 제공한다. 하지만, 시스템 버스(119)의 구성은 여기에 제한되지 않으며, 효율적인 관리를 위한 중재 수단들을 더 포함할 수 있다.The system bus 119 is a bus for providing an on-chip network inside the system on chip 110. For example, the system bus 119 may include a data bus, an address bus, and a control bus. The data bus is the path along which data moves. Mainly, a memory access path to the buffer memory 120 or the storage device 170 will be provided. The address bus provides an address exchange path between functional blocks (IPs). The control bus provides a path to transfer control signals between functional blocks (IPs). However, the configuration of the system bus 119 is not limited to this and may further include mediation means for efficient management.

전력 관리 칩(130; PMIC)은 전자 장치(100)의 내부 구성들의 각각에 제공되는 전원을 관리하도록 구현될 수 있다. 전력 관리 칩(130)은 전력 제어 신호에 응답하여 시스템 온 칩(110)에 제공하도록 구현될 수 있다. 특히, 전력 관리 칩(130)는 저전력 모드 진입시 과거 전력 관리 이력을 이용하여 복수의 저전력 상태들 중에서 최적의 저전력 상태를 선택하도록 구현될 수 있다. 실시 예에 있어서, 전력 관리 칩(130)은 예정된 대기 시간보다 적은 최소 요구 시간을 갖는 저전력 상태들 중에서 대응하는 저전력 상태에서 전력 소모와 기존 저전력 상태 진입 성공률/진입 소모 시간을 기반으로 OS의 저전력 상태를 선택할 수 있다. 실시 예에 있어서, 전력 관리 칩(130)은 각 장치 별로 대응하는 저전력 상태에 대한 기존 저전력 상태 진입 성공률 및 설정된 우선순위 기반으로 저전력 상태 가능 여부를 확인 및 처리할 수 있다.The power management chip 130 (PMIC) may be implemented to manage power provided to each of the internal components of the electronic device 100. The power management chip 130 may be implemented to provide a power control signal to the system-on-chip 110 in response. In particular, the power management chip 130 may be implemented to select an optimal low-power state among a plurality of low-power states using past power management history when entering a low-power mode. In an embodiment, the power management chip 130 determines the low-power state of the OS based on the power consumption in the corresponding low-power state among low-power states with a minimum required time less than the scheduled standby time and the existing low-power state entry success rate/entry consumption time. You can select . In an embodiment, the power management chip 130 may check and process whether a low power state is possible based on the existing low power state entry success rate and set priority for the low power state corresponding to each device.

또한, 전력 관리 칩(130)은 저전력 상태에 소모되는 예정 시간과 기존 실제 소모 시간, 예정 전력 소모량, 기존 진입 성공률을 고려하여 진입할 최적의 저전력 상태를 선택할 수 있다. 또한, 전력 관리 칩(130)은 저전력 상태 진입 시, 각 장치의 기존 진입 성공률 및 설정된 우선 순위를 고려하여 정해진 순서로 처리할 수 있다. 예를 들어, 전력 관리 칩(130)은 각 장치별 저전력 진입 성공률과 설정된 우선 순위를 기반으로 시스템 온 칩(110), 버퍼 메모리(120), 디스플레이 장치(140), 터치 패널(150), 및 저장 장치(170)의 저전력 처리 순서를 결정할 수 있다.Additionally, the power management chip 130 can select the optimal low-power state to enter by considering the scheduled time consumed in the low-power state, the existing actual consumption time, the scheduled power consumption, and the existing entry success rate. Additionally, when entering a low-power state, the power management chip 130 can process the devices in a determined order by considering the existing entry success rate and set priority of each device. For example, the power management chip 130 operates on the system-on-chip 110, buffer memory 120, display device 140, touch panel 150, and The low-power processing order of the storage device 170 may be determined.

한편, 도 1의 도시된 전력 관리 칩(130)은 시스템 온 칩(100)의 외부에 배치되고 있지만, 본 발명이 여기에 제한되지 않는다고 이해되어야 할 것이다. 본 발명의 전력 관리 칩은 전력 관리 유닛(power management unit; PMU)을 포함하여 시스템 온 칩(110) 내부에 기능 블록으로 제공될 수 있다.Meanwhile, the power management chip 130 shown in FIG. 1 is disposed outside the system-on-chip 100, but it should be understood that the present invention is not limited thereto. The power management chip of the present invention may be provided as a functional block inside the system-on-chip 110, including a power management unit (PMU).

일반적인 전자 장치는 불필요한 전력 소모를 최소화하기 위하여 OS에서 예정된 대기 시간보다 적은 최소 요구 시간을 갖는 저전력 상태를 선택하고, OS에서 관리하는 고정된 순서로 각 장치의 저전력 상태 가능 여부를 확인 및 처리하고 있다. 이러한 전자 장치는 예정된 대기 시간을 보장한 저전력 상태로 진입할 수 있다. 하지만, 이러한 대기 시간은 최적은 아니다.In order to minimize unnecessary power consumption, typical electronic devices select a low-power state with a minimum required time that is less than the standby time scheduled by the OS, and check and process whether the low-power state is possible for each device in a fixed order managed by the OS. . These electronic devices can enter low-power states with a guaranteed scheduled standby time. However, this waiting time is not optimal.

반면에, 본 발명의 실시 예에 따른 전자 장치(100)는 과거 저전력 상태 이력을 이용하여 OS의 저전력 상태를 선택하고, 각 장치의 저전력 상태를 처리함으로써, 예정된 대기 시간을 보장하며 저전력 상태로 진입할 수 있다. 또한, 본 발명의 실시 예에 따른 전자 장치(100)는 저전력 상태 진입할 경우 대응하는 저전력 상태에서 소모될 전력과 기존 진입 성공률 및 소모 시간을 기반으로 효과적으로 전력 감소를 기대할 수 있다. 또한, 본 발명의 실시 예에 따른 전자 장치(100)는 저전력 상태로 진입하지 못할지라도 기존 진입 성공률 기반으로 처리함으로써, 진입 불가 여부를 더 빠르게 판단할 수 있다. On the other hand, the electronic device 100 according to an embodiment of the present invention selects the low-power state of the OS using the past low-power state history, processes the low-power state of each device, and enters the low-power state while ensuring the scheduled standby time. can do. Additionally, when the electronic device 100 according to an embodiment of the present invention enters a low-power state, it can be expected to effectively reduce power based on the power to be consumed in the corresponding low-power state and the existing entry success rate and consumption time. In addition, even if the electronic device 100 according to an embodiment of the present invention cannot enter the low power state, it can more quickly determine whether entry is impossible by processing based on the existing entry success rate.

도 2는 본 발명의 실시 예에 따른 저전력 상태를 예시적으로 보여주는 도면이다. 도 2를 참조하면, 전자 장치(100)는 복수의 장치들(DEV1 ~ DEVn, n의 2 이상의 정수)의 각각에 활성/비활성 여부에 대응하는 복수의 저전력 상태들(S1 ~ Sk, k는 2 이상의 정수) 중에서 어느 하나에 따른 저전력 모드로 진입할 수 있다. 여기서, 저전력 상태들(S1 ~ Sk)의 각각은 슬립 상태(sleep state)로 불릴 수 있다. 일반적으로 슬립 상태는 아이들(idle) 및 파워-게이티드(power-gated) 상태를 포함한다. Figure 2 is a diagram illustrating a low power state according to an embodiment of the present invention. Referring to FIG. 2, the electronic device 100 displays a plurality of low-power states (S1 to Sk, k is 2) corresponding to whether each of the plurality of devices (DEV1 to DEVn, n is an integer of 2 or more) is active/inactive. You can enter a low-power mode according to any one of the above integers). Here, each of the low power states (S1 to Sk) may be called a sleep state. Sleep states generally include idle and power-gated states.

한편, 본 발명에 따른 전력 관리 칩은 장치의 활성화/비활성화 여부에 따른 저전력 관리 뿐만 아니라, 장치들의 각각의 활성화 상태(active state)에서 구동되는 OS 혹은 어플리케이션의 실행/미실행 여부에 따른 저전력 관리도 할 수 있다.Meanwhile, the power management chip according to the present invention not only manages low power according to whether the device is activated or deactivated, but also manages low power according to whether the OS or application running in each active state of the device is executed or not executed. can do.

도 3은 본 발명의 실시 예에 따른 전력 관리 칩(130)을 예시적으로 보여주는 도면이다. 도 3을 참조하면, 전력 관리 칩(130)은 특수 기능 레지스터(131; SFR), 저전력 상태별 데이터 테이블(132), 장치별 데이터 테이블(133), 및 논리 회로(134)를 포함할 수 있다.Figure 3 is a diagram illustrating the power management chip 130 according to an embodiment of the present invention. Referring to FIG. 3, the power management chip 130 may include a special function register 131 (SFR), a data table 132 for each low power state, a data table 133 for each device, and a logic circuit 134. .

특수 기능 레지스터(131; SFR)은 저전력 관리를 위한 설정 데이터를 저장하도록 구현될 수 있다.The special function register 131 (SFR) may be implemented to store setting data for low power management.

저전력 상태별 데이터 테이블(132; 제 1 테이블)은 복수의 저전력 상태들의 각각에 대응하는 상태별(state-specific) 데이터를 저장할 수 있다. The low-power state data table 132 (first table) may store state-specific data corresponding to each of a plurality of low-power states.

장치별 데이터 테이블(133; 제 2 테이블)은 선택된 저전력 상태에 따른 장치별(device-specific) 데이터를 저장할 수 있다.The device-specific data table 133 (second table) may store device-specific data according to the selected low power state.

논리 회로(134)는 저전력 상태를 선택하고, 선택된 저전력 상태에 따라 최적의 저전력 모드 진입을 위한 동작을 수행하도록 구현될 수 있다.The logic circuit 134 may be implemented to select a low-power state and perform an operation to enter the optimal low-power mode according to the selected low-power state.

본 발명의 실시 예에 따른 전력 관리 칩(130)은, 저전력 상태에서의 전력 소모, 저전력 상태 진입 성공률, 저전력 진입 소모 시간을 기반으로 선택하는 저전력 상태 선택 기법을 이용할 수 있다. 실시 예에 있어서, 전력 관리 칩(130)은 각 장치별 저전력 상태 진입 성공률과 설정된 우선순위 기반으로 저전력 처리 순서를 조정하는 저전력 처리 순서를 결정할 수 있다. 실시 예에 있어서, 전력 관리 칩(130)은 유휴 시간이 주어지면 전력을 최대한 절약할 수 있는 상태를 결정하고, 결정된 상태를 특수 기능 레지스터(SFR; 131)에 업데이트 할 수 있다. 이때 각 상태의 소모 전력, 진입 소모 시간, 진입 성공률을 기반으로 모든 상태를 수치화 시킴으로써, 전력 관리 칩(130)은 각 상태의 비교 후 최적의 전력 상태를 결정할 수 있다.The power management chip 130 according to an embodiment of the present invention may use a low-power state selection technique that selects based on power consumption in the low-power state, low-power state entry success rate, and low-power entry consumption time. In an embodiment, the power management chip 130 may determine a low-power processing order that adjusts the low-power processing order based on the success rate of entering the low-power state for each device and the set priority. In an embodiment, the power management chip 130 may determine a state that can maximize power savings given idle time and update the determined state in the special function register (SFR) 131. At this time, by quantifying all states based on the power consumption, entry consumption time, and entry success rate of each state, the power management chip 130 can determine the optimal power state after comparing each state.

또한, 전력 관리 칩(130)은 장치별 저전력 진입 성공률과 설정된 우선순위를 기반으로 처리될 장치 순서를 결정하여 장치별 데이터 테이블(133)에 업데이트 할 수 있다. 전력 관리 칩(130)은 상술된 저전력 관리 동작에 따른 저전력 관리 모듈을 실행할 수 있다. 저전력 관리 모듈은 이러한 전력 처리 결과를 토대로 각 테이블(132, 133)을 업데이트 할 수 있다.Additionally, the power management chip 130 may determine the order of devices to be processed based on the low power entry success rate and set priority for each device and update the data table 133 for each device. The power management chip 130 may execute a low-power management module according to the low-power management operation described above. The low-power management module can update each table 132 and 133 based on these power processing results.

도 4는 본 발명의 실시 예에 따른 특수 기능 레지스터(131)에 저장된 설정 데이터를 예시적으로 보여주는 도면이다. 도 4를 참조하면, 특수 기능 레지스터(131)은 복수의 설정 데이터(SFRD1 ~ SFRD10)를 저장할 수 있다.Figure 4 is a diagram illustrating setting data stored in the special function register 131 according to an embodiment of the present invention. Referring to FIG. 4, the special function register 131 may store a plurality of setting data (SFRD1 to SFRD10).

제 1 설정 데이터(SFRD1)는 저전력 상태별 데이터 테이블(132), 및 장치별 데이터 테이블(133)를 내부 메모리에 구성할 지 혹은 외부 메모리에 구성할 지를 설정하기 위한 값을 저장할 수 있다. 실시 예에 있어서, 저전력 상태별 데이터 테이블(132), 및 장치별 데이터 테이블(133)을 외부 메모리에 구성할 경우, 설정 데이터(SFRD1)는 사용될 외부 메모리 영역의 시작 주소와 각 테이블 엔트리 개수를 포함할 수 있다.The first setting data (SFRD1) may store a value for setting whether to configure the low-power state data table 132 and the device-specific data table 133 in internal memory or external memory. In an embodiment, when the data table 132 for each low power state and the data table 133 for each device are configured in external memory, the setting data SFRD1 includes the starting address of the external memory area to be used and the number of entries in each table. can do.

제 2 설정 데이터(SFRD2)는 예정된 유휴 시간(Idle Time)을 지시할 수 있다. 설정된 유휴 시간과 저전력 상태 테이블(132)을 기준으로 최적의 저전력 상태를 선택하는 동작이 시작되거나 종료 될 수 있다. 제 3 설정 데이터(SFRD3)는 저전력 상태의 선택에 사용될 평균 소모 시간의 기준 회수를 지시할 수 있다. 예를 들어, 성공 회수가 기준 회수보다 클 때 평균 소모 시간이 계산될 수 있다. The second setting data (SFRD2) may indicate a scheduled idle time (Idle Time). The operation of selecting the optimal low-power state based on the set idle time and the low-power state table 132 may be started or ended. The third setting data (SFRD3) may indicate the reference number of average consumption times to be used for selecting the low power state. For example, the average time spent may be calculated when the number of successes is greater than the reference number.

제 4 설정 데이터(SFRD4)는 저전력 상태의 선택에 사용될 진입 성공률의 기준 회수를 지시할 수 있다. 예를 들어, 성공 회수 + 실패 회수가 기준 회수보다 클 때, 진입 성공률이 계산될 수 있다. 제 5 설정 데이터(SFRD5)는 저전력 상태 선택에 사용될 보정 값을 지시할 수 있다. 제 6 설정 데이터(SFRD6)는 현재 동작 상태와 선택된 저전력 상태를 지시할 수 있다. The fourth setting data (SFRD4) may indicate the reference number of entry success rates to be used for selecting the low power state. For example, when the number of successes + the number of failures is greater than the reference number, the entry success rate can be calculated. The fifth setting data (SFRD5) may indicate a correction value to be used for selecting a low power state. The sixth setting data (SFRD6) may indicate the current operating state and the selected low power state.

제 7 설정 데이터(SFRD7)는 저전력 상태 진입 소모 시간을 지시할 수 있다. 측정하고, 업데이트하기 위한 동작을 시작/종료를 지시할 수 있다. 제 8 설정 데이터(SFRD8)는 장치 처리 순서 계산을 시작할 기준 회수를 지시할 수 있다. 예를 들어, 전체 장치의 성공 회수 + 실패 회수 합이 기준 회수보다 클 때, 성공률이 계산될 수 있다. 제 9 설정 데이터(SFRD9)는 장치 처리 순서 계산에 우선 순위를 사용할 지 여부를 지시할 수 있다. The seventh setting data (SFRD7) may indicate the time consumed to enter a low power state. You can instruct the start/end of actions to measure and update. The eighth setting data (SFRD8) may indicate the reference number of times to start calculating the device processing sequence. For example, when the sum of the number of successes + the number of failures of the entire device is greater than the reference number, the success rate may be calculated. The ninth setting data (SFRD9) may indicate whether to use priority in calculating device processing order.

제 10 설정 데이터(SFRD10)는 장치 중 첫번째 처리 순서의 엔트리 인덱스(Entry Index)를 지시할 수 있다. 예를 들어, 성공 회수 + 실패 회수 합이 기준 회수 이하일 때, 첫번째 처리 순서의 엔트리 인덱스가 설정될 수 있다. 실시 예에 있어서, 각 장치의 저전력 진입 성공 여부는 비트-맵(bit-map) 등을 통해 반영될 수 있다. 또한, IP 내부 데이터 및 각 테이블은 초기화 될 수 있다The tenth setting data (SFRD10) may indicate the entry index of the first processing order among the devices. For example, when the sum of the number of successes + the number of failures is less than or equal to the reference number, the entry index of the first processing order may be set. In an embodiment, whether each device successfully enters low power may be reflected through a bit-map or the like. Additionally, IP internal data and each table can be initialized

도 5는 본 발명의 실시 예에 따른 저전력 상태별 데이터 테이블(132)의 엔트리를 예시적으로 보여주는 도면이다. 도 5를 참조하면, 저전력 상태별 데이터 테이블(132은 저전력 상태들의 각각의 엔트리를 포함할 수 있다.Figure 5 is a diagram illustrating entries in the data table 132 for each low power state according to an embodiment of the present invention. Referring to FIG. 5, the data table 132 for each low-power state may include entries for each of the low-power states.

상태 ID는 저전력 상태를 구분하는 위한 고유 번호이다. 소모 전력은 각 상태에서 소모될 전력량이다. 에너지 모델을 기반으로 계산된 값이다. 소모 전력 값은 저전력 관리 모듈(SW)의 바이너리에 포함되거나 SW에 의해 계산될 수 있다. 최소 유지 시간은 상태의 최소 유지 시간이다. 최소 유지 시간은 SW 바이너리에 포함되거나 SW에 의해 계산될 수 있다. 평균 진입 소모 시간은 진입까지의 누적 평균 소모 시간이다. 평균 진입 소모 시간은 대응하는 상태가 선택되어 진입할 때마다 전력 관리 칩(130)에 의해 업데이트될 수 있다. 성공 회수는 누적 성공 회수다. 누적 성공 회수는 전력 관리 칩(130)에 의해 업데이트될 수 있다. 실패 회수는 누적 실패 회수다. 누적 실패 회수는 전력 관리 칩(130)에 의해 업데이트될 수 있다.State ID is a unique number to distinguish low power states. Power consumption is the amount of power to be consumed in each state. This value is calculated based on the energy model. The power consumption value may be included in the binary of the low-power management module (SW) or calculated by the SW. Minimum holding time is the minimum holding time of a state. The minimum holding time can be included in the SW binary or calculated by SW. The average entry time is the cumulative average time until entry. The average entry consumption time may be updated by the power management chip 130 each time a corresponding state is selected and entered. The number of successes is the cumulative number of successes. The cumulative number of successes may be updated by the power management chip 130. The number of failures is the cumulative number of failures. The cumulative number of failures may be updated by the power management chip 130.

도 6은 본 발명의 실시 예에 따른 장치별 데이터 테이블(133)의 엔트리를 예시적으로 보여주는 도면이다. 도 6을 참조하면, 장치별 데이터 테이블(133)은 선택된 저전력 상태에 따른 장치들의 각각의 데이터를 갖는 엔트리를 포함할 수 있다. FIG. 6 is a diagram illustrating entries in the data table 133 for each device according to an embodiment of the present invention. Referring to FIG. 6, the device-specific data table 133 may include entries containing data for each device according to the selected low power state.

장치 ID는 장치를 구분하기 위한 고유 번호이다. 우선 순위는 처리 우선 순위이다. 우선 순위는 필요에 따라 설정될 수 있다. 우선 순위는 순서 결정 요소로 사용될 수 있다. 성공 회수는 누적 성공 회수다. 성공 회수는 순서 결정 요소로 사용될 수 있다. 실패 회수는 누적 실패 회수다. 실패 회수는 순서 결정 요소로 사용될 수 있다. 다음 순서 엔트리 인덱스는 우선 순위와 진입 성공률에 따라 장치 처리 순서를 결정하고, 대응하는 장치의 다음 순서의 장치 엔트리 인덱스를 지시한다. 만일, 첫 번째 장치일 경우, 다음 순서 엔트리 인덱스는 0이다.Device ID is a unique number to identify the device. Priority is the processing priority. Priorities can be set as needed. Priority can be used as an ordering factor. The number of successes is the cumulative number of successes. The number of successes can be used as an ordering factor. The number of failures is the cumulative number of failures. The number of failures can be used as an ordering factor. The next-order entry index determines the device processing order according to priority and entry success rate, and indicates the next-order device entry index of the corresponding device. If it is the first device, the next order entry index is 0.

도 7은 본 발명의 실시 예에 따른 로직 회로(134)를 예시적으로 보여주는 도면이다. 도 7을 참조하면, 로직 회로(134)는 타이머(134-1), 저전력 상태 선택 로직(134-2), 저전력 상태별 데이터 테이블 업데이트 로직(134-3), 장치별 데이터 테이블 업데이트 로직(134-4) 및 장치 처리 순서 업데이트 로직(134-5)을 포함할 수 있다.FIG. 7 is a diagram illustrating a logic circuit 134 according to an embodiment of the present invention. Referring to FIG. 7, the logic circuit 134 includes a timer 134-1, a low-power state selection logic 134-2, a data table update logic for each low-power state 134-3, and a data table update logic for each device 134. -4) and may include device processing order update logic (134-5).

타이머(134-1)는 저전력 상태 진입 소모 시간을 측정하도록 구현될 수 있다. 타이머(134-1)는 특수 기능 레지스터(131)의 설정값에 의해 시작될 수 있다.The timer 134-1 may be implemented to measure the time consumed to enter a low power state. The timer 134-1 may be started by the setting value of the special function register 131.

저전력 상태 선택 로직(134-2)은 테이블의 시간 조건, 소모 전력, 성공률을 기반으로 저전력 상태를 선택하도록 구현될 수 있다. 저전력 상태 선택 로직(134-2)은 특수 기능 레지스터(131)의 설정값에 의해 동작을 시작할 수 있다.The low-power state selection logic 134-2 may be implemented to select a low-power state based on the time condition, power consumption, and success rate of the table. The low power state selection logic 134-2 may start operation based on the setting value of the special function register 131.

저전력 상태별 데이터 테이블 업데이트 로직(134-3)은, 타이머(134-1)가 종료되었을 때 측정 값을 대응하는 상태 엔트리의 평균 소모 시간을 계산하고, 관련된 정보를 업데이트 하도록 구현될 수 있다. 저전력 상태 진입 여부가 결정되었을 때, 저전력 상태별 데이터 테이블 업데이트 로직(134-3)은 대응하는 상태 엔트리의 진입 성공률을 업데이트 할 수 있다. 성공 회수/실패 회수 값이 표현 범위를 넘어갈 경우, 저전력 상태별 데이터 테이블 업데이트 로직(134-3)은 각각 1회 라이트 쉬프트(right-shift)하여 업데이트 할 수 있다.The data table update logic 134-3 for each low-power state may be implemented to calculate the average consumption time of the state entry corresponding to the measurement value when the timer 134-1 expires and update related information. When it is determined whether to enter a low-power state, the data table update logic 134-3 for each low-power state may update the entry success rate of the corresponding state entry. If the number of successes/number of failures values exceeds the expression range, the data table update logic 134-3 for each low-power state can be updated by right-shifting once each.

장치별 데이터 테이블 업데이트 로직(134-4)은 특수 기능 레지스터(131)에 의해 장치의 성공 여부가 추가되면 대응하는 엔트리의 성공 회수/실패 회수를 업데이트 하도록 구현될 수 있다. 성공 회수/실패 회수 값이 표현 범위를 넘어갈 경우, 장치별 데이터 테이블 업데이트 로직(134-4)은 각각 1회 라이트-쉬프트(right-shift)하여 업데이트할 수 있다.The device-specific data table update logic 134-4 may be implemented to update the number of successes/failures of the corresponding entry when the success or failure of the device is added by the special function register 131. If the number of successes/number of failures values exceeds the expression range, the data table update logic 134-4 for each device can be updated by right-shifting once each.

장치 처리 순서 업데이트 로직(134-5)은 상태 엔트리가 업데이트 된 후에, 장치 별 테이블 값들을 기반으로 장치 처리 순서를 계산하고, 각 엔트리의 다음 순서 엔트리 인덱스를 업데이트 하도록 구현될 수 있다.The device processing order update logic 134-5 may be implemented to calculate the device processing order based on table values for each device and update the next-order entry index of each entry after the status entry is updated.

도 8은 본 발명의 실시 예에 따른 전자 장치의 동작 방법을 예시적으로 보여주는 흐름도이다. 도 8을 참조하면, 전자 장치(100)은 다음과 같이 동작할 수 있다.Figure 8 is a flowchart exemplarily showing a method of operating an electronic device according to an embodiment of the present invention. Referring to FIG. 8, the electronic device 100 may operate as follows.

전자 장치(100)에 유휴 시간이 발생될 수 있다(S110). 전력 관리 칩(130)의 전력 관리 모듈은 복수의 저전력 상태들 중에서 어느 하나의 저전력 상태를 선택될 수 있다(S120). 여기서 저전력 상태는 기존 저전력 상태의 진입 성공률과 유휴 시간을 고려하여 선택될 수 있다. 전력 관리 칩(130)의 제어 아래에서 선택된 저전력 상태에 따라 각 장치가 저전력 모드로 진입할 수 있다(S130).Idle time may occur in the electronic device 100 (S110). The power management module of the power management chip 130 may select one low power state among a plurality of low power states (S120). Here, the low-power state can be selected by considering the entry success rate and idle time of the existing low-power state. Each device may enter a low-power mode according to the low-power state selected under the control of the power management chip 130 (S130).

실시 예에 있어서, 저전력 관리 모듈은 소프트웨어, 하드웨어, 혹은 펌웨어적으로 구현될 수 있다. 실시 예에 있어서, 특수 기능 레지스터를 이용하여 저전력 관리 모듈이 설정될 수 있다. 실시 예에 있어서, 전력 소모, 저전력 진입 성공률, 및 저전력 소모 시간을 기반으로 저전력 상태가 선택될 수 있다. 실시 예에 있어서, 저전력 진입 성공률은 저전력 상태에서 복수의 장치들의 각각의 진입 성공 회수와 진입 실패 회수를 이용하여 계산될 수 있다.In embodiments, the low-power management module may be implemented in software, hardware, or firmware. In an embodiment, the low-power management module may be configured using a special function register. In an embodiment, a low-power state may be selected based on power consumption, low-power entry success rate, and low-power consumption time. In an embodiment, the low-power entry success rate may be calculated using the number of entry successes and entry failure counts of each of a plurality of devices in a low-power state.

실시 예에 있어서, 전자 장치(100)는 복수의 저전력 상태들의 각각에 대응하는 제 1 데이터를 갖는 제 1 테이블과 선택된 저전력 상태에 따라 복수의 장치들의 각각에 대응하는 제 2 데이터를 갖는 제 2 테이블을 포함하고, 제 1 데이터는 전력 소모, 최소 홀딩 시간, 평균 진입 시간, 성공 회수 혹은 실패 회수를 포함하고, 제 2 데이터는 우선순위, 성공 회수, 실패 회수, 혹은 다음 엔트리 인덱스를 포함할 수 있다. 실시 예에 있어서, 저전력 모드로 진입한 후에, 제 1 테이블 및 제 2 테이블이 업데이트 될 수 있다. 실시 예에 있어서, 복수의 장치들 중에서 진입 실패 확률이 가장 높은 장치가 우선적으로 저전력 모드로 진입 될 수 있다. 실시 예에 있어서, 복수의 장치들의 각각의 진입 실패 확률을 업데이트하고, 진입 실패 확률에 따라 장치의 처리 우선 순위가 결정될 수 있다.In an embodiment, the electronic device 100 includes a first table having first data corresponding to each of a plurality of low power states and a second table having second data corresponding to each of the plurality of devices according to the selected low power state. The first data may include power consumption, minimum holding time, average entry time, number of successes, or number of failures, and the second data may include priority, number of successes, number of failures, or next entry index. . In an embodiment, after entering a low power mode, the first table and the second table may be updated. In an embodiment, the device with the highest entry failure probability among a plurality of devices may preferentially enter the low power mode. In an embodiment, the entry failure probability of each of a plurality of devices may be updated, and the processing priority of the device may be determined according to the entry failure probability.

도 9는 본 발명의 실시 예에 따른 전자 장치(100)의 저전력 상태를 선택하는 방법을 예시적으로 보여주는 흐름도이다.FIG. 9 is a flowchart illustrating a method of selecting a low power state of the electronic device 100 according to an embodiment of the present invention.

전력 관리 칩(130, 도 1 참조)의 저전력 관리 모듈은 특수 기능 레지스터(131; SFR)을 통해 예정된 유휴 시간(Idle Time)을 설정하고, 저전력 관리 동작을 시작 할 수 있다(S121). 여기서 저전력 관리 모듈은 소프트웨어/하드웨어/펌웨어적으로 구현될 수 있다. 저전력 관리 모듈의 상태 선택 로직(134-2)은 시간 조건, 소모 전력, 성공률을 평가하여 최적의 저전력 상태를 선택하고, 선택된 저전력 상태를 특수 기능 레지스터(131; SFR)에 업데이트할 수 있다(S122). 이러한 저전력 상태 선택 동작 과정은 특수 기능 레지스터(131; SFR)의 동작 상태 필드에 반영될 수 있다. 저전력 상태를 선택하는 구체적인 동작은 같다. 예정된 유휴 시간보다 최소 유지 시간이 작은 상태들 중에서 소모 전력*(예정된 유휴 시간 - 평균 진입 소모 시간)*보정 값*진입 성공률 값이 가장 큰 상태를 선택할 수 있다. 여기서, 평균 진입 소모 시간은 성공 회수가 특수 기능 레지스터(131; SFR)의 기준 회수보다 클 때 적용될 수 있다. 또한, 진입 성공률은 성공 회수 + 실패 회수가 특수 기능 레지스터(131; SFR)의 기준 회수보다 클 때 적용될 수 있다.The low-power management module of the power management chip 130 (see FIG. 1) can set a scheduled idle time through the special function register 131 (SFR) and start a low-power management operation (S121). Here, the low-power management module can be implemented in software/hardware/firmware. The state selection logic 134-2 of the low-power management module may select the optimal low-power state by evaluating time conditions, power consumption, and success rate, and update the selected low-power state in the special function register 131 (SFR) (S122) ). This low-power state selection operation process may be reflected in the operation status field of the special function register 131 (SFR). The specific operation of selecting a low power state is the same. Among the states with a minimum maintenance time smaller than the scheduled idle time, the state with the largest power consumption * (scheduled idle time - average entry consumption time) * correction value * entry success rate value can be selected. Here, the average entry consumption time may be applied when the number of successes is greater than the reference number of the special function register 131 (SFR). Additionally, the entry success rate can be applied when the number of successes + the number of failures is greater than the standard number of special function registers 131 (SFR).

이후에, 저전력 관리 모듈은 특수 기능 레지스터(131; SFR)의 동작 상태 필드를 통해 선택이 완료되었는지 확인한 뒤, 선택된 상태 필드에서 그 값을 읽는다(S123). 저전력 관리 모듈의 선택된 상태 필드를 읽으면, IP 내부 타이머(133-2)가 동작을 시작할 수 있다.Afterwards, the low-power management module checks whether the selection is complete through the operation status field of the special function register 131 (SFR) and then reads the value from the selected status field (S123). When the selected status field of the low power management module is read, the IP internal timer 133-2 can start operation.

도 10은 본 발명의 실시 예에 따른 전자 장치(100)의 저전력 모드 진입 동작을 예시적으로 보여주는 흐름도이다. 도 10을 참조하면, 저전력 모드 진입은 다음과 같이 진행될 수 있다.FIG. 10 is a flowchart exemplarily showing a low-power mode entry operation of the electronic device 100 according to an embodiment of the present invention. Referring to FIG. 10, entering the low power mode may proceed as follows.

전력 관리 칩(130)의 저전력 관리 모듈은 특수 기능 레지스터(131; SFR)에서 첫번째 처리 순서의 엔트리 인덱스를 읽을 수 있다(S131). 저전력 관리 모듈은 장치의 저전력 처리를 수행할 수 있다(S132). 저전력 관리 모듈은 다음 순서 인덱스 필드 값을 확인함으로써 장치 별 테이블에 대응하는 엔트리를 읽을 수 있다. 저전력 관리 모듈은 상술된 과정을 모든 장치에 대하여 반복할 수 있다(S133). 저전력 모드 진입에 실패한 장치가 있을 때, 실패한 엔트리 인덱스와 성공 여부를 특수 기능 레지스터(131; SFR)에 기록하고, 재개(Resume) 과정으로 진입 될 수 있다.The low-power management module of the power management chip 130 can read the entry index of the first processing order from the special function register 131 (SFR) (S131). The low-power management module may perform low-power processing of the device (S132). The low-power management module can read the entry corresponding to the device-specific table by checking the next order index field value. The low-power management module can repeat the above-described process for all devices (S133). When a device fails to enter the low power mode, the failed entry index and success status are recorded in the special function register 131 (SFR), and the device can enter the resume process.

한편, 모든 장치에 대한 저전력 처리가 완료되면, 저전력 관리 모듈은 성공 여부를 특수 기능 레지스터(131; SFR)에 업데이트 할 수 있다(S134). 특수 기능 레지스터(131; SFR)에 장치 처리에 대한 성공 여부가 기록 되면, IP 내부 타이머(134-1) 동작이 종료될 수 있다. 장치별 데이터 테이블 업데이트 로직(134-3)은 성공 여부에 따라 장치의 성공 회수 혹은 실패 회수를 업데이트할 수 있다. 타이머(134-1)의 동작이 종료되면, IP의 저전력 상태별 데이터 테이블 업데이트 로직(134-3)은 소모된 시간을 확인하고, 소모된 시간에 대응하는 엔트리의 평균 소모 시간과 장치 처리에 대한 성공 여부에 따라 엔트리의 성공 회수/실패 회수를 업데이트할 수 있다. 한편, 장치의 성공 회수 혹은 실패 회수가 업데이트된 후에, 전체 장치의 성공 회수 + 실패 회수 합이 특수 기능 레지스터(131; SFR)에 설정된 기준 회수보다 클 경우, 장치 처리 순서 업데이트 로직(134-5)은 장치의 처리 순서를 계산하고, 계산된 처리 순서에 대응하는 각 엔트리의 다음 순서 엔트리 인덱스를 업데이트할 수 있다.Meanwhile, when low-power processing for all devices is completed, the low-power management module can update the special function register 131 (SFR) with success status (S134). When the success of device processing is recorded in the special function register 131 (SFR), the operation of the IP internal timer 134-1 may be terminated. The data table update logic 134-3 for each device can update the number of successes or failures of the device depending on success. When the operation of the timer 134-1 ends, the data table update logic 134-3 for each low power state of the IP checks the consumed time, and updates the average consumed time of the entry corresponding to the consumed time and device processing. Depending on success or failure, the number of successes/failures of the entry can be updated. Meanwhile, after the number of successes or number of failures of the device is updated, if the sum of the number of successes + number of failures of all devices is greater than the reference number set in the special function register 131 (SFR), the device processing order update logic 134-5 Calculate the processing order of the device and update the next-order entry index of each entry corresponding to the calculated processing order.

한편, 전자 장치(100)는, 저전력 관리 모듈의 상술된 저전력 처리 과정에 대응하는 데이터를 추출할 수 있다. 상술된 저전력 처리 과정에서 업데이트되고 사용되었던 데이터를 메모리 접근을 통해 추출할 수 있다. 이에 필요에 따라 저전력 처리 전 과정을 추적하며 전체 데이터를 추출할 수 있다. 이렇게 추출된 데이터는 저전력 동작의 분석에 사용될 수 있다.Meanwhile, the electronic device 100 may extract data corresponding to the above-described low-power processing process of the low-power management module. Data that has been updated and used in the low-power processing described above can be extracted through memory access. Accordingly, if necessary, the entire low-power processing process can be tracked and the entire data can be extracted. This extracted data can be used for analysis of low-power operation.

한편, 본 발명은 RTOS(Real Time Operating System)에 적용 가능하다. RTOS는 고정된 우선순위를 모든 프로세스에 할당한다. 스케줄러는 이렇게 할당된 프로세스들을 우선순위에 따라 대기 큐(ready queue)를 배열한다.Meanwhile, the present invention is applicable to RTOS (Real Time Operating System). RTOS assigns a fixed priority to all processes. The scheduler arranges the allocated processes in a ready queue according to priority.

도 11은 본 발명의 실시 예에 따른 컴퓨팅 시스템을 예시적으로 보여주는 도면이다. 도 11을 참조하면, 컴퓨팅 시스템(900)은 사용자 인터페이스 계층(902), 어플리케이션 프로그램 계층(904), RTOS 시스템(906) 및 기본 장치 하드웨어(914)를 포함할 수 있다.Figure 11 is a diagram illustrating a computing system according to an embodiment of the present invention. Referring to FIG. 11 , computing system 900 may include a user interface layer 902, an application program layer 904, an RTOS system 906, and basic device hardware 914.

RTOS 시스템(906)은 태스크 생성기(908), 태스크 스케줄러(910), 및 태스크 동기화기(912)를 포함할 수 있다. 태스크 생성기(908)는 두 레벨 스택 방식을 이용하여 복수의 태스크들을 생성하도록 되어 있다. 태스크 스케줄러(910)는 스택 포인터를 제 1 레벨 스택에서 제 2 레벨 스택으로 이동하고, 제 1 태스크가 선점되는지를 판단한다. 제 1 태스크가 선점되지 않는 경우, 제 2 상태의 제 1 태스크에 제 2 레벨 스택을 할당하고, 태스크 스케줄러를 통해 제 1 태스크가 제 2 상태로부터의 제어를 포기하고 자원을 대기하는 중인지를 판단하여, 실행할 제 1 태스크를 스케줄링 하도록 되어 있다. 태스크 동기화기(912)는 제 1 태스크가 자신을 포기하고, 제 2 태스크에 의한 사용을 위해 제 2 레벨 스택을 제공하는 경우, 제 2 레벨 스택에서 제 1 레벨 스택으로 스택 포인터를 다시 이동한다.RTOS system 906 may include a task generator 908, a task scheduler 910, and a task synchronizer 912. The task generator 908 is configured to generate a plurality of tasks using a two-level stack method. The task scheduler 910 moves the stack pointer from the first level stack to the second level stack and determines whether the first task is preempted. If the first task is not preempted, the second level stack is assigned to the first task in the second state, and the task scheduler determines whether the first task is giving up control from the second state and waiting for resources. , the first task to be executed is scheduled. Task synchronizer 912 moves the stack pointer from the second level stack back to the first level stack when the first task gives up, providing the second level stack for use by the second task.

한편, 상술된 저전력 관리는 RTOS를 기반으로 기술하였지만, 본 발명은 전력 관리(Power Management) 기능이 포함된 환경에 모두 적용 가능하다. 경우에 따라 계산식에 가중치나 다른 요소를 추가하거나 삭제할 수 있다. 그에 따라 테이블 엔트리의 구성 또한 유연하게 가져갈 수 있다. 각 장치 및 전체 시스템의 소모 전력을 디지털 데이터로 접근할 수 있을 경우, 이를 계산 요소에 활용할 수 있고 추가 가공을 통해 다양하고 유의미한 데이터로 추출할 수 있다.Meanwhile, although the above-described low-power management was described based on RTOS, the present invention is applicable to any environment that includes a power management function. In some cases, weights or other elements can be added or deleted from the calculation formula. Accordingly, the composition of table entries can also be flexible. If the power consumption of each device and the entire system can be accessed as digital data, it can be used as a calculation element and extracted into various meaningful data through additional processing.

도 12는 본 발명의 실시 예에 따른 프로세서의 저전력 관리 동작을 보여주는 래더 다이어그램이다. 도 12를 참조하면, 프로세서의 저전력 관리 동작은 다음과 같이 진행될 수 있다.Figure 12 is a ladder diagram showing a low-power management operation of a processor according to an embodiment of the present invention. Referring to FIG. 12, the low-power management operation of the processor may proceed as follows.

CPU는 다양한 환경 정보를 기반으로 유휴 시간을 발생할 수 있다(S10). 이후 CPU는 유휴 시간에 따른 저전력 상태 관리(LP MGMT)를 PMU에 요청할 수 있다(S11). PMU는 LP MGMT 요청에 따라 저전력 테이블들을 이용하여 저전력 상태들 중에서 최적의 저전력 상태를 선택할 수 있다(S12). PMU는 최적의 선택된 상태에 대응하는 CPU 저전력 제어 신호(CPU_LP)를 CPU로 출력할 수 있다(S13). CPU는 CPU 저전력 제어 신호(CPU_LP)에 따른 저전력 모드 진입 여부의 성공/실패 정보를 PMU로 피드백 할 수 있다(S14). PMU는 최적의 선택된 상태에 대응하는 제 1 장치 저전력 제어 신호(DEV1_LP)를 제 1 장치(DEV1)로 출력할 수 있다(S15). 제 1 장치(DEV1)는 제 1 장치 저전력 제어 신호(DEV1_LP)에 따른 저전력 모드 진입 여부의 성공/실패 정보를 PMU로 피드백 할 수 있다(S16). PMU는 최적의 선택된 상태에 대응하는 제 2 장치 저전력 제어 신호(DEV2_LP)를 제 2 장치(DEV2)로 출력할 수 있다(S17). 제 2 장치(DEV2)는 제 2 장치 저전력 제어 신호(DEV2_LP)에 따른 저전력 모드 진입 여부의 성공/실패 정보를 PMU로 피드백 할 수 있다(S18).The CPU can generate idle time based on various environmental information (S10). Afterwards, the CPU can request low-power state management (LP MGMT) according to idle time from the PMU (S11). The PMU can select the optimal low-power state among low-power states using low-power tables according to LP MGMT request (S12). The PMU can output a CPU low power control signal (CPU_LP) corresponding to the optimal selected state to the CPU (S13). The CPU can feed back success/failure information on whether to enter the low power mode according to the CPU low power control signal (CPU_LP) to the PMU (S14). The PMU may output a first device low power control signal (DEV1_LP) corresponding to the optimal selected state to the first device (DEV1) (S15). The first device (DEV1) may feed back success/failure information on whether to enter the low power mode according to the first device low power control signal (DEV1_LP) to the PMU (S16). The PMU may output a second device low power control signal (DEV2_LP) corresponding to the optimally selected state to the second device (DEV2) (S17). The second device (DEV2) may feed back success/failure information on whether to enter the low power mode according to the second device low power control signal (DEV2_LP) to the PMU (S18).

이후에 PMU는 CPU, DEV1, 및 DEV2의 성공/실패 정보를 기반으로 저전력 테이블을 업데이트 할 수 있다(S19).Afterwards, the PMU can update the low-power table based on the success/failure information of CPU, DEV1, and DEV2 (S19).

한편, 본 발명의 저전력 관리 기법은 모바일 장치에 적용 가능하다.Meanwhile, the low-power management technique of the present invention is applicable to mobile devices.

도 13은 본 발명의 실시 예에 따른 모바일 장치(2000)를 예시적으로 보여주는 도면이다. 도 13을 참조하면, 모바일 장치(2000)는 전력 관리 칩(Power Management Integrated Circuit; PMIC)(2100), AP(Application Processor)(2200), 입력 장치(2300), 디스플레이 장치(2400), 메모리 장치(2500) 및 배터리(2600)를 포함할 수 잇다.FIG. 13 is a diagram illustrating a mobile device 2000 according to an embodiment of the present invention. Referring to FIG. 13, the mobile device 2000 includes a power management integrated circuit (PMIC) 2100, an application processor (AP) 2200, an input device 2300, a display device 2400, and a memory device. It may include (2500) and a battery (2600).

전력 관리 칩(2100)은 배터리(2600)로부터 전원을 공급받고, AP(2200), 입력 장치(2300), 디스플레이 장치(2400) 혹은 메모리 장치(2500)의 전원을 공급하고 관리할 수 있다. 모바일 장치(2000)는 전력 관리 칩(2100)을 적어도 하나를 포함할 수 있다. 실시 예에 있어서, 모바일 장치(2000)는 하나의 전력 관리 칩(2100)를 이용하여 AP(2200), 입력 장치(2300), 디스플레이 장치(2400) 혹은 메모리 장치(2500)에 전원을 공급할 수 있다. 다른 실시 예에 있어서, 모바일 장치(2000)는 AP(2200), 입력 장치(2300), 디스플레이 장치(2400) 혹은 메모리 장치(2500) 각각에 개별적으로 전원을 공급하기 위한 복수의 전력 관리 칩(2100)을 포함할 수 있다.The power management chip 2100 receives power from the battery 2600 and can supply and manage power to the AP 2200, the input device 2300, the display device 2400, or the memory device 2500. The mobile device 2000 may include at least one power management chip 2100. In an embodiment, the mobile device 2000 may supply power to the AP 2200, the input device 2300, the display device 2400, or the memory device 2500 using a single power management chip 2100. . In another embodiment, the mobile device 2000 includes a plurality of power management chips 2100 to individually supply power to the AP 2200, the input device 2300, the display device 2400, or the memory device 2500. ) may include.

한편, 전력 관리 칩(2100)은 도 1 내지 도 11에서 설명된 바와 같이, 기존의 저전력 상태의 성공/실패 정보를 저장하는 저전력 테이블(상태별 데이터 테이블, 장치별 데이터 테이블)을 이용하여 저전력 관리를 수행하도록 구현될 수 있다.Meanwhile, as explained in FIGS. 1 to 11, the power management chip 2100 manages low power using a low power table (data table by state, data table by device) that stores success/failure information of existing low power states. It can be implemented to perform.

AP(2200)는 모바일 장치(2000)의 전반적인 동작을 제어할 수 있다. 예를 들어, AP(2200)는 입력 장치(2300)에 의하여 발생한 입력 신호에 따라 메모리 장치(2500)에 저장된 데이터를 디스플레이 장치(2400)를 통하여 표시할 수 있다. 입력 장치(2300)는 터치 패드 혹은 컴퓨터 마우스와 같은 포인팅 장치, 키패드, 혹은 키보드로 구현될 수 있다. AP(2200)는 DVFS 모듈을 실행함으로써 메모리 계층 별로 활동(성능/병목)을 모니터링하고, 모니터링 결과에 따라 메모리 계층의 주파수/전압을 변경할 수 있다.The AP 2200 can control the overall operation of the mobile device 2000. For example, the AP 2200 may display data stored in the memory device 2500 through the display device 2400 according to an input signal generated by the input device 2300. The input device 2300 may be implemented as a pointing device such as a touch pad or computer mouse, a keypad, or a keyboard. The AP (2200) can monitor activity (performance/bottleneck) for each memory layer by executing the DVFS module and change the frequency/voltage of the memory layer according to the monitoring results.

메모리 장치(2500)는 모바일 장치(2000)의 적어도 하나의 구성 요소에 의해 사용되는 다양한 데이터, 예를 들어, 소프트웨어 및, 이와 관련된 명령에 대한 입력 데이터 혹은 출력 데이터를 저장하도록 구현될 수 있다. 메모리 장치(2500)는, 휘발성 메모리 혹은 비휘발성 메모리를 포함할 수 있다. 실시 예에 있어서, 메모리장치(2500)는, 다양한 태스크에 대응하는 태스크 수행 조건에 대한 정보가 저장될 수 있다. 예를 들어, 모바일 장치(2000)는 사용자 식별 정보별로 태스크 수행 조건을 대응시켜 저장할 수 있다. 메모리 장치(2500)는, 모바일 장치(2000)의 다양한 동작을 위한 로드 제어 정보를 저장할 수 있다.The memory device 2500 may be implemented to store various data used by at least one component of the mobile device 2000, for example, input data or output data for software and commands related thereto. The memory device 2500 may include volatile memory or non-volatile memory. In an embodiment, the memory device 2500 may store information about task performance conditions corresponding to various tasks. For example, the mobile device 2000 may store task performance conditions corresponding to user identification information. The memory device 2500 may store load control information for various operations of the mobile device 2000.

배터리(2600)는 충전이 가능한 이차 전지로 구현될 수 있다. 예를 들어, 배터리(2600)는 인터페이스 회로를 통하여 수신되는 전원 혹은 무선 충전 모듈을 통하여 수신되는 전원을 이용하여 충전될 수 있다.The battery 2600 may be implemented as a rechargeable secondary battery. For example, the battery 2600 may be charged using power received through an interface circuit or power received through a wireless charging module.

인터페이스 회로는, 외부의 전원 소스에 유선으로 연결됨으로써 외부의 전원 소스로부터의 전원을 전력 관리 칩(2100)로 전달할 수 있다. 인터페이스 회로는 전원을 제공하기 위한 케이블을 연결하기 위한 커넥터로 구현되거나 전원을 제공하기 위한 케이블 및 케이블을 외부의 전원 소스로 연결하기 위한 커넥터로 구현될 수 있다. 예를 들어, 인터페이스 회로는, 다양한 USB(universal serial bus) 타입의 커넥터로 구현될 수 있다. 하지만, 커넥터의 종류에 제한이 없다고 이해되어야 할 것이다. 만약, 외부의 전원 소스로부터 직류의 전원을 수신하는 경우에, 인터페이스 회로는 수신한 직류의 전원을 전력 관리 칩(2100)로 전달하거나, 혹은 전압의 크기를 컨버팅 함으로써 전달할 수 있다. 반면에, 외부의 전원 소스로부터 교류의 전원을 수신하는 경우, 인터페이스 회로는 직류 전원으로 컨버팅 혹은 전압의 크기를 컨버팅 함으로써 전력 관리 칩(2100)로 전달할 수 있다.The interface circuit can transmit power from an external power source to the power management chip 2100 by being connected to an external power source by a wire. The interface circuit may be implemented as a connector for connecting a cable for providing power, or as a cable for providing power and a connector for connecting the cable to an external power source. For example, the interface circuit may be implemented with various USB (universal serial bus) type connectors. However, it should be understood that there is no limitation on the type of connector. If direct current power is received from an external power source, the interface circuit can transfer the received direct current power to the power management chip 2100, or by converting the magnitude of the voltage. On the other hand, when receiving alternating current power from an external power source, the interface circuit can transmit it to the power management chip 2100 by converting it to direct current power or converting the magnitude of the voltage.

무선 충전 모듈은, WPC(Wireless Power Consortium) 표준 (혹은, Qi 표준)에서 정의된 방식 혹은 A4WP(Alliance for Wireless Power) 표준 (혹은, AFA(air fuel alliance) 표준)에서 정의된 방식으로 구현될 수 있다. 무선 충전 모듈은 주변에 형성된 시간에 따라 크기가 변경되는 자기장에 의하여 유도 기전력이 발생되는 코일을 포함할 수 있다. 무선 충전 모듈은 수신용 코일, 적어도 하나의 커패시터, 임피던스 매칭 회로, 정류기, DC-DC 컨버터, 혹은 통신 회로 중 적어도 하나를 포함할 수 있다. 통신 회로는, 온/오프 키잉 변복조 방식의 인-밴드(In-band) 통신 회로로 구현되거나, 혹은 아웃-밴드(Out-of-Band) 통신 회로(예: BLE 통신 모듈)로 구현될 수도 있다. 다양한 실시예에 따라서, 무선 충전 모듈은, RF 방식에 기반하여 빔-포밍된 RF(Radio Frequency) 웨이브를 수신할 수도 있다.The wireless charging module can be implemented in the way defined in the WPC (Wireless Power Consortium) standard (or Qi standard) or the A4WP (Alliance for Wireless Power) standard (or AFA (air fuel alliance) standard). there is. The wireless charging module may include a coil in which induced electromotive force is generated by a magnetic field whose size changes over time formed around the coil. The wireless charging module may include at least one of a receiving coil, at least one capacitor, an impedance matching circuit, a rectifier, a DC-DC converter, or a communication circuit. The communication circuit may be implemented as an in-band communication circuit using an on/off keying modulation/demodulation method, or may be implemented as an out-of-band communication circuit (e.g., BLE communication module). . According to various embodiments, the wireless charging module may receive a beam-formed RF (Radio Frequency) wave based on an RF method.

실시 예에 있어서, 인터페이스 회로 혹은 무선 충전 모듈은 충전기(charger)로 연결될 수 있다. 배터리(2600)는 충전기에 의하여 조정된 전원을 이용하여 충전될 수도 있다. 충전기 혹은 컨버터는, 전력 관리 칩(2100)로부터 독립적인 소자로 구현되거나, 혹은 전력 관리 칩(2100)의 적어도 일부로 구현될 수도 있다. 배터리(2600)는, 저장된 전원을 전력 관리 칩(2100)로 전달할 수도 있다. 인터페이스 회로를 통한 전원 혹은 무선 충전 모듈을 통한 전원은, 배터리(2600)로 전달되거나, 혹은 전력 관리 칩(2100)로 전달될 수도 있다.In an embodiment, the interface circuit or wireless charging module may be connected to a charger. The battery 2600 may be charged using power adjusted by a charger. The charger or converter may be implemented as an element independent from the power management chip 2100, or may be implemented as at least part of the power management chip 2100. The battery 2600 may transmit stored power to the power management chip 2100. Power through the interface circuit or power through the wireless charging module may be delivered to the battery 2600 or may be delivered to the power management chip 2100.

한편, 본 발명은 신경망 연산 시스템에 적용 가능하다.Meanwhile, the present invention is applicable to a neural network operation system.

도 14는 본 발명의 실시 예에 따른 신경망 연산 시스템(3000)을 보여주는 도면이다. 도 14를 참조하면, 신경망 연산 시스템(3000)은 신경망(neural network) 모델을 실행할 수 있다. 신경망 모델은 인간의 뇌가 정보를 처리하는 학습 방식을 모델링한 것으로서, 음성, 이미지, 비디오 등과 같은 다양한 사용자 데이터에서 객체 혹은 특정 정보를 정확하게 인식하고 판별할 수 있는 모델을 지칭할 수 있다.Figure 14 is a diagram showing a neural network operation system 3000 according to an embodiment of the present invention. Referring to FIG. 14, the neural network operation system 3000 may execute a neural network model. A neural network model is a model of the learning method in which the human brain processes information, and can refer to a model that can accurately recognize and determine objects or specific information from various user data such as voice, image, video, etc.

신경망 연산 시스템(3000)은 휴대용 통신 단말기(mobile phone), 스마트폰(smart phone), 태블릿 PC(tablet personal computer), 웨어러블 기기, 헬스케어 기기 혹은 IoT(internet of things) 기기와 같은 모바일(mobile) 시스템일 수 있다. 하지만 신경망 연산 시스템(3000)은 반드시 모바일 시스템에 한정되는 것은 아니고, 개인용 컴퓨터(personal computer), 랩탑(laptop) 컴퓨터, 서버(server), 미디어 재생기(media player) 혹은 내비게이션(navigation)과 같은 차량용 장비(automotive device) 등이 될 수도 있다.The neural network operation system 3000 is a mobile device such as a portable communication terminal (mobile phone), smart phone, tablet PC (tablet personal computer), wearable device, healthcare device, or IoT (internet of things) device. It could be a system. However, the neural network operation system 3000 is not necessarily limited to mobile systems, but may be used in vehicle equipment such as personal computers, laptop computers, servers, media players, or navigation. (automotive device), etc.

신경망 연산 시스템(3000)은 시스템 버스(3001), 프로세서(3100), 메모리 제어기(3200), 및 메모리 장치(3300)를 포함할 수 있다. 시스템 버스(3001)은 프로세서(3100), 메모리 제어기(3200) 및 메모리 장치(3300) 간의 통신을 지원할 수 있다.The neural network operation system 3000 may include a system bus 3001, a processor 3100, a memory controller 3200, and a memory device 3300. System bus 3001 may support communication between processor 3100, memory controller 3200, and memory device 3300.

프로세서(3100)는 메모리 장치(3300)에 저장된 데이터를 이용하여 신경망 연산을 수행할 수 있다. 예를 들어, 신경망 연산은 신경망 모델에 포함되는 노드 별 데이터 및 가중치를 읽고, 데이터 및 가중치의 컨볼루션 연산을 수행하며, 연산 결과를 저장하거나 출력하는 동작을 포함할 수 있다. 또한, 프로세서(3100)는 CPU(Central Processing Unit; 3110), GPU(Graphic Processing unit; 3120), NPU(Neural Processing Unit; 3130), DSP(Digital Signal Processor; 3140), 가속기(3150), 및 전원 관리 유닛(3160; PMU)을 포함할 수 있다.The processor 3100 may perform a neural network operation using data stored in the memory device 3300. For example, a neural network operation may include reading data and weights for each node included in the neural network model, performing a convolution operation on the data and weights, and storing or outputting the operation results. Additionally, the processor 3100 includes a Central Processing Unit (CPU) 3110, a Graphic Processing Unit (GPU) 3120, a Neural Processing Unit (NPU) 3130, a Digital Signal Processor (DSP) 3140, an accelerator 3150, and a power supply. It may include a management unit 3160 (PMU).

CPU(3110)는 범용성이 높은 연산 장치일 수 있다. GPU(3120)는 그래픽 처리와 같은 병렬 연산에 최적화된 연산 장치일 수 있다. NPU(3130)는 신경망 연산에 최적화된 연산 장치로서, 컨볼루션 연산과 같이 신경망 연산에 주로 사용되는 단위 연산을 실행하기 위한 논리 블록들을 포함할 수 있다. DSP(3140)는 아날로그 신호의 실시간 디지털 처리에 최적화된 연산 장치일 수 있다. 가속기(3150)는 특정 기능을 신속하게 수행하기 위한 연산 장치일 수 있다. 프로세서(3100)가 신경망 모델을 실행할 때 다양한 하드웨어 장치들이 함께 동작할 수 있다. 예를 들어, 신경망 모델을 실행하기 위해서 NPU(3130)뿐만 아니라 CPU(3110), GPU(3120) 등의 이기종 연산 장치들이 함께 동작할 수 있다. 뿐만 아니라, 신경망 모델의 입력 데이터를 읽고, 출력 데이터를 저장하기 위해 메모리 제어기(3200) 및 데이터 버스(3001)가 동작할 수 있다. The CPU 3110 may be a highly versatile computing device. The GPU 3120 may be a computing device optimized for parallel operations such as graphics processing. The NPU 3130 is an operation device optimized for neural network operations and may include logical blocks for executing unit operations mainly used in neural network operations, such as convolution operations. The DSP 3140 may be an arithmetic device optimized for real-time digital processing of analog signals. The accelerator 3150 may be a computing device to quickly perform a specific function. When the processor 3100 executes a neural network model, various hardware devices may operate together. For example, in order to execute a neural network model, heterogeneous computing devices such as the NPU 3130 as well as the CPU 3110 and GPU 3120 may operate together. In addition, the memory controller 3200 and the data bus 3001 may operate to read input data of the neural network model and store output data.

본 발명의 실시 예에 따른 신경망 연산 시스템의 계층구조를 예시적으로 보여주는 도면이다. 신경망 연산 시스템은 하드웨어 계층(HW), 시스템 소프트웨어 계층(SW) 및 어플리케이션 계층(APP)을 포함할 수 있다. 하드웨어 계층(HW)은 신경망 연산 시스템의 최하위 계층으로서, 시스템 버스, 프로세서, 및 메모리 제어기 등의 하드웨어 장치들을 포함할 수 있다. 프로세서는 이기종 연산 장치들, 예를 들어 CPU, GPU, NPU, DSP 및 기타 가속기를 포함할 수 있다. 시스템 소프트웨어 계층(SW)은 하드웨어 계층(HW)의 하드웨어 장치들을 관리하고, 추상화된 플랫폼을 제공할 수 있다. This is a diagram illustrating the hierarchical structure of a neural network operation system according to an embodiment of the present invention. A neural network computing system may include a hardware layer (HW), a system software layer (SW), and an application layer (APP). The hardware layer (HW) is the lowest layer of the neural network operation system and may include hardware devices such as a system bus, processor, and memory controller. A processor may include heterogeneous computing devices, such as CPU, GPU, NPU, DSP, and other accelerators. The system software layer (SW) manages the hardware devices of the hardware layer (HW) and can provide an abstracted platform.

예를 들어, 시스템 소프트웨어 계층(SW)은 리눅스와 같은 커널을 구동할 수 있다. 시스템 소프트웨어 계층(SW)은 DVFS 및 신경망 모델 실행기를 포함할 수 있다. DVFS는 마이크로 아키텍처 정보를 이용하여 메모리 계층 별로 하드웨어 장치들의 동작 주파수를 결정할 수 있다. 신경망 모델 실행기는 DVFS에 의해 결정된 동작 주파수로 동작하는 하드웨어 장치들을 이용하여 신경망 모델을 실행할 수 있다. 또한, 신경망 모델 실행기는 신경망 모델 실행 결과로서 신경망 모델의 실제 실행시간을 출력할 수 있다. 또한, 시스템 소프트웨어 계층(SW)은 프로세서에 의해 구동될 수 있다. 예를 들어, 시스템 소프트웨어 계층(SW)은 CPU에 의해 구동될 수 있다. 하지만, 시스템 소프트웨어 계층(SW)이 구동될 수 있는 연산 장치는 CPU로 제한되지 않는다고 이해되어야 할 것이다. 어플리케이션 계층(APP)은 시스템 소프트웨어 계층(SW) 상에서 실행될 수 있으며, 복수의 신경망 모델들 및 기타 어플리케이션들을 포함할 수 있다. 예를 들어, 기타 어플리케이션들은 카메라 어플리케이션을 포함할 수 있다.For example, the system software layer (SW) can run a kernel such as Linux. The system software layer (SW) may include DVFS and neural network model executor. DVFS can determine the operating frequency of hardware devices for each memory layer using microarchitecture information. The neural network model executor can execute the neural network model using hardware devices operating at an operating frequency determined by DVFS. Additionally, the neural network model executor can output the actual execution time of the neural network model as a result of neural network model execution. Additionally, the system software layer (SW) may be driven by a processor. For example, the system software layer (SW) may be driven by the CPU. However, it should be understood that the computing device on which the system software layer (SW) can run is not limited to the CPU. The application layer (APP) may run on the system software layer (SW) and may include multiple neural network models and other applications. For example, other applications may include a camera application.

전원 관리 유닛(3160; PMU)은 도 1 내지 도 13에 설명된 바와 같이 유휴 시간에 과거 이력을 기반으로 최적의 저전력 상태를 선택 및 실행하도록 구현될 수 있다. 전원 관리 유닛(3160)은 소프트웨어적으로, 하드웨어적으로, 혹은 펌웨어적으로 구현될 수 있다. 또한, 전원 관리 유닛(3160)은 신경망을 이용하여 최적의 저전력 상태를 선택함으로써 프로세서(3100)을 저전력 모드로 진입시킬 수 있다.Power management unit 3160 (PMU) may be implemented to select and execute an optimal low power state based on past history during idle time, as described in FIGS. 1 to 13 . The power management unit 3160 may be implemented in software, hardware, or firmware. Additionally, the power management unit 3160 may cause the processor 3100 to enter a low-power mode by selecting an optimal low-power state using a neural network.

메모리 제어기(3200)는 프로세서(3100)로부터 수신된 데이터를 메모리 장치(3300)에 저장하는 동작 및 메모리 장치(3300)에 저장된 데이터를 프로세서(3100)로 출력하는 동작을 제어하도록 구현될 수 있다.The memory controller 3200 may be implemented to control an operation of storing data received from the processor 3100 in the memory device 3300 and an operation of outputting data stored in the memory device 3300 to the processor 3100.

메모리 장치(3300)는 프로세서(3100)가 신경망 연산을 수행하기 위해 필요한 데이터를 저장하도록 구현될 수 있다. 예를 들어, 메모리 장치(3300)에는 프로세서(3100)에 의해 실행될 수 있는 하나 이상의 신경망 모델이 로드될 수 있다. 또한, 메모리 장치(3300)는 신경망 모델의 입력 데이터 및 출력 데이터를 저장할 수 있다. 메모리 장치(3300)는 DRAM(Dynamic Random Access Memory), SDRAM(Synchronous DRAM), SRAM(Static RAM), RRAM(Resistive RAM) 등과 같은 휘발성 메모리를 포함할 수 있으며, 플래시 메모리와 같은 비휘발성 메모리를 포함할 수도 있다.The memory device 3300 may be implemented to store data necessary for the processor 3100 to perform a neural network operation. For example, one or more neural network models that can be executed by the processor 3100 may be loaded into the memory device 3300. Additionally, the memory device 3300 may store input data and output data of a neural network model. The memory device 3300 may include volatile memory such as Dynamic Random Access Memory (DRAM), Synchronous DRAM (SDRAM), Static RAM (SRAM), Resistive RAM (RRAM), and non-volatile memory such as flash memory. You may.

본 개시에 사용된 용어 "모듈"은, 예를 들어, 하드웨어, 소프트웨어 혹은 펌웨어(firmware) 중 하나 혹은 둘 이상의 조합을 포함하는 단위(unit)를 의미할 수 있다. "모듈"은 예를 들어, 유닛(unit), 로직(logic), 논리 블록(logical block), 부품(component) 혹은 회로(circuit) 등의 용어와 바꾸어 사용(interchangeably use)될 수 있다. "모듈"은, 일체로 구성된 부품의 최소 단위 혹은 그 일부가 될 수 있다. "모듈"은 하나 혹은 그 이상의 기능을 수행하는 최소 단위 혹은 그 일부가 될 수도 있다. "모듈"은 기계적으로 혹은 전자적으로 구현될 수 있다. 예를 들면, 본 개시에 따른 "모듈"은, 알려졌거나 앞으로 개발될, 어떤 동작들을 수행하는ASIC(Application-Specific Integrated Circuit) 칩, FPGAs(Field-Programmable Gate Arrays) 혹은 프로그램 가능 논리 장치(programmable-logic device) 중 적어도 하나를 포함할 수 있다.The term “module” used in this disclosure may mean, for example, a unit that includes one or a combination of two or more of hardware, software, or firmware. “Module” may be used interchangeably with terms such as unit, logic, logical block, component, or circuit, for example. A “module” can be the smallest unit of integrated parts or a part thereof. A “module” may be the minimum unit or part of one that performs one or more functions. A “module” may be implemented mechanically or electronically. For example, a “module” according to the present disclosure is an Application-Specific Integrated Circuit (ASIC) chip, Field-Programmable Gate Arrays (FPGAs), or programmable logic device, known or to be developed in the future, that performs certain operations. logic device).

다양한 실시예에 따르면, 본 개시에 따른 장치(예: 모듈들 혹은 그 기능들) 혹은 방법(예: 동작들)의 적어도 일부는, 예컨대, 프로그래밍 모듈의 형태로 컴퓨터로 읽을 수 있는 저장매체(computer-readable storage media)에 저장된 명령어로 구현될 수 있다. 명령어는, 하나 이상의 프로세서에 의해 실행될 경우, 하나 이상의 프로세서가 상기 명령어에 대응하는 기능을 수행할 수 있다. 컴퓨터로 읽을 수 있는 저장매체는, 예를 들면, 메모리가 될 수 있다. 프로그래밍 모듈의 적어도 일부는, 예를 들면, 프로세서에 의해 구현(implement)될 수 있다. 프로그래밍 모듈의 적어도 일부는 하나 이상의 기능을 수행하기 위한, 예를 들면, 모듈, 프로그램, 루틴, 명령어 세트(sets of instructions) 혹은 프로세스 등을 포함할 수 있다.According to various embodiments, at least a portion of the device (e.g., modules or functions thereof) or method (e.g., operations) according to the present disclosure is stored in a computer-readable storage medium (e.g., in the form of a programming module). -can be implemented as instructions stored in readable storage media). When an instruction is executed by one or more processors, one or more processors may perform a function corresponding to the instruction. A computer-readable storage medium may be, for example, memory. At least a portion of the programming module may be implemented, for example, by a processor. At least a portion of a programming module may include, for example, modules, programs, routines, sets of instructions, or processes to perform one or more functions.

본 발명은 Power State별 소모 전력 및 과거 이력 기반의 Power Management 정책을 개시한다. 본 발명은 저전력 진입 시, 전력을 가장 많이 절약할 수 있는 Power State를 추정하여 결정할 수 있다. 이를 위해 각 Power State의 저전력 효율성을 비교할 수 있는 정량화된 수치가 필요하다. 본 발명의 실시 예에 따른 정량화된 수치는 소모 전력, 평균 진입 소모 시간, 진입 성공률을 사용하여 계산할 수 있다. 예를 들어, 계산 방법은 소모 전력 x (주어진 유휴 시간 - 평균 진입 소모 시간) x 진입 성공률 x 보정 값으로 결정될 수 있다. 또한, 진입 소모 시간과 진입 성공률을 저전력 처리 시마다 갱신하게 하여 정확도가 향상될 수 있다. 본 발명은 저전력 처리 시, 진입 실패 비용을 줄이고 빠르게 후처리 할 수 있다. 이를 위해 진입 실패 확률이 높은 장치가 먼저 처리되도록 해야 한다.The present invention discloses a power management policy based on power consumption by power state and past history. The present invention can estimate and determine the Power State that can save the most power when entering low power. To achieve this, quantified numbers are needed to compare the low-power efficiency of each Power State. Quantified values according to an embodiment of the present invention can be calculated using power consumption, average entry consumption time, and entry success rate. For example, the calculation method may be determined as power consumption x (given idle time - average entry consumption time) x entry success rate x correction value. Additionally, accuracy can be improved by updating the entry consumption time and entry success rate at each low-power processing. The present invention reduces entry failure costs and enables quick post-processing during low-power processing. To achieve this, devices with a high probability of entry failure must be processed first.

본 발명은 각 장치의 진입 성공률을 갱신하며 이에 따른 처리 우선 순위를 제공한다. 진입 성공률과 처리 우선순위는 각 장치의 진입 성공/실패 마다 갱신된다. OS의 저전력 상태 선택 방법은, 저전력 상태에서의 전력 소모와 기존 저전력 상태 진입 성공률/저전력 진입 소모 시간을 기반으로 저전력 상태를 선정하는 것을 포함한다. 저전력 상태의 전력 소모, 진입 소모 시간, 진입 성공률을 기반으로 최적의 Power State를 선택하는 방식이 이용된다. 진입 소모 시간과 진입 성공률을 지속적으로 갱신하여 정확도가 향상된다. The present invention updates the entry success rate of each device and provides processing priorities accordingly. The entry success rate and processing priority are updated for each device's entry success/failure. The low-power state selection method of the OS includes selecting a low-power state based on power consumption in the low-power state and the existing low-power state entry success rate/low-power entry consumption time. A method is used to select the optimal Power State based on the power consumption of the low-power state, entry consumption time, and entry success rate. Accuracy is improved by continuously updating entry consumption time and entry success rate.

각 장치를 저전력 상태로 처리하는 방법은, 각 장치 별로 기존 저전력 상태 진입 성공률과 설정된 우선순위 기반으로 저전력 처리 순서를 정하여 처리하는 것을 포함한다. 각 장치 별 진입 성공률을 토대로 우선순위가 제공된다. 진입 성공률과 우선순위를 지속적으로 갱신하여 정확도가 향상된다. The method of processing each device into a low-power state includes determining and processing the low-power processing order based on the existing low-power state entry success rate and set priority for each device. Priority is provided based on the entry success rate for each device. Accuracy is improved by continuously updating the entry success rate and priority.

RTOS의 저전력 상태(Idle Time) 처리 과정은, Idle Time(유휴 시간) 발생하고, OS의 역할에 다양한 프로그램을 관리하고 Device를 관리하는 역할이 포함되어 있다. 만약 CPU를 점유하는 프로그램이 없는 기간(Idle Time)이 발생할 경우, OS는 저전력 상태로 진입할 수 있다. 이 저전력 상태는 전력 소모에 민감한 제품들에서 아주 중요하게 다루어 질 수 있다.The RTOS' low-power state (Idle Time) processing process generates Idle Time, and the role of the OS includes managing various programs and managing devices. If there is a period (Idle Time) in which no program is occupying the CPU, the OS may enter a low power state. This low-power state can be very important in power-consumption-sensitive products.

Power State 선정은, Idle Time이 매우 다양하게 발생하는 만큼, 논리적으로 정의된 Power State 또한 다양하게 존재할 수 있다. 그리고 각 Power State에 따라 저전력 처리에 포함되는 Device 구성이 달라질 수도 있다. 상황에 따라 같은 Device 내에서도 처리 과정이 달라질 수 있다. 따라서, 매번 실제 진입까지의 시간이 다를 수 있고, 진입 여부(성공 혹은 실패)도 달라질 수 있다.When selecting a Power State, as the Idle Time occurs in many different ways, the logically defined Power State can also exist in various ways. And depending on each power state, the device configuration included in low-power processing may vary. Depending on the situation, the processing process may vary even within the same device. Therefore, the time until actual entry may be different each time, and whether entry (success or failure) may also vary.

각 Device의 저전력 처리 수행은, 선정된 Power State에 따라 저전력 상태로 진입할 Device들을 하나씩 처리한다. 해당 Device들이 모두 저전력 상태로 처리되어야 선정된 Power State로 진입할 수 있다. 만약 특정 Device가 저전력 상태로 진입할 수 없는 상황이라면, 선정된 Power State로 천이할 수 없는 상황이므로 이미 저전력 상태로 진입한 Device를 모두 원상 복구 해야 한다.When performing low-power processing for each device, devices that will enter a low-power state are processed one by one according to the selected power state. Only when all relevant devices are processed into a low-power state can they enter the selected power state. If a specific device cannot enter the low-power state, it cannot transition to the selected power state, so all devices that have already entered the low-power state must be restored to their original state.

진입까지의 소모 시간 이력 및 진입 성공률 이력을 위한 테이블이 존재한다. 2개의 Data Table을 가지고 있고 각각 저전력 진입 시 마다 갱신된다. State-specific data table은 각 State의 소모 전력, 최소 유지 시간, 평균 진입 소모 시간, 성공/실패 횟수를 관리하며, 이는 각 State의 전력 소모 정도를 산출하여 정량화 할 때 사용된다. Device-specific data table은 각 Device에 대한 저전력 진입 성공률을 관리하며, 이는 각 Device의 저전력 처리 순서를 결정하는데 사용된다.There is a table for the history of time spent until entry and the history of entry success rate. It has two data tables and is updated each time low power is entered. The state-specific data table manages the power consumption, minimum maintenance time, average entry consumption time, and number of success/failures for each state, which is used to calculate and quantify the power consumption of each state. The device-specific data table manages the low-power entry success rate for each device, which is used to determine the low-power processing order of each device.

한편, 상술된 본 발명의 내용은 발명을 실시하기 위한 구체적인 실시 예들에 불과하다. 본 발명은 구체적이고 실제로 이용할 수 있는 수단 자체 뿐 아니라, 장차 기술로 활용할 수 있는 추상적이고 개념적인 아이디어인 기술적 사상을 포함 할 것이다.Meanwhile, the contents of the present invention described above are only specific examples for carrying out the invention. The present invention will include not only concrete and practically usable means, but also technical ideas, which are abstract and conceptual ideas that can be used as technology in the future.

100: 전자 장치
110: 시스템 온 칩
120: 버퍼 메모리
130: 전력 관리 칩
100: electronic device
110: System-on-Chip
120: buffer memory
130: Power management chip

Claims (20)

전자 장치의 동작 방법에 있어서,
유휴 상태를 발생하는 단계;
저전력 관리 모듈에서 복수의 저전력 상태들 중에서 어느 하나를 선택하는 단계; 및
상기 선택된 저전력 상태에 따라 복수의 장치들의 각각을 저전력 모드로 진입하는 단계를 포함하고,
상기 선택하는 단계는, 상기 유휴 상태의 시간 조건, 전력 소모, 및 이전 저전력 상태의 진입 성공률을 평가함으로써 상기 저전력 상태를 선택하는 단계를 포함하는 방법.
In a method of operating an electronic device,
generating an idle state;
selecting one of a plurality of low power states in a low power management module; and
Entering each of the plurality of devices into a low-power mode according to the selected low-power state,
The method of claim 1 , wherein the selecting step includes selecting the low power state by evaluating the time conditions of the idle state, power consumption, and entry success rate of previous low power states.
제 1 항에 있어서,
상기 저전력 관리 모듈은 소프트웨어, 하드웨어, 혹은 펌웨어적으로 구현되는 것을 특징으로 하는 방법.
According to claim 1,
A method wherein the low-power management module is implemented in software, hardware, or firmware.
제 1 항에 있어서,
특수 기능 레지스터를 이용하여 상기 저전력 관리 모듈을 설정하는 단계를 더 포함하는 방법.
According to claim 1,
The method further includes configuring the low power management module using a special function register.
제 1 항에 있어서,
상기 선택하는 단계는,
전력 소모, 저전력 진입 성공률, 및 저전력 소모 시간을 기반으로 상기 저전력 상태를 선택하는 단계를 포함하는 방법.
According to claim 1,
The selection step is,
A method comprising selecting the low power state based on power consumption, low power entry success rate, and low power consumption time.
제 4 항에 있어서,
상기 저전력 진입 성공률은 저전력 상태에서 상기 복수의 장치들의 각각의 진입 성공 회수와 진입 실패 회수를 이용하여 계산되는 것을 특징으로 하는 방법.
According to claim 4,
The low-power entry success rate is calculated using the number of entry successes and entry failures of each of the plurality of devices in a low-power state.
제 1 항에 있어서,
상기 전자 장치는 상기 복수의 저전력 상태들의 각각에 대응하는 제 1 데이터를 갖는 제 1 테이블과 상기 선택된 저전력 상태에 따라 상기 복수의 장치들의 각각에 대응하는 제 2 데이터를 갖는 제 2 테이블을 포함하고,
상기 제 1 데이터는 전력 소모, 최소 홀딩 시간, 평균 진입 시간, 성공 회수 혹은 실패 회수를 포함하고,
상기 제 2 데이터는 우선순위, 성공 회수, 실패 회수, 혹은 다음 엔트리 인덱스를 포함하는 것을 특징으로 하는 방법.
According to claim 1,
The electronic device includes a first table having first data corresponding to each of the plurality of low power states and a second table having second data corresponding to each of the plurality of devices according to the selected low power state,
The first data includes power consumption, minimum holding time, average entry time, number of successes or failures,
Wherein the second data includes priority, number of successes, number of failures, or next entry index.
제 6 항에 있어서,
상기 저전력 모드로 진입하는 단계는,
상기 선택된 저전력 상태에 따라 상기 복수의 장치들의 각각의 처리 순서를 결정하는 단계; 및
상기 처리 순서에 따라 상기 복수의 장치들의 각각을 저전력 모드로 진입시키는 단계를 더 포함하는 방법.
According to claim 6,
The step of entering the low power mode is,
determining a processing order for each of the plurality of devices according to the selected low power state; and
The method further includes entering each of the plurality of devices into a low power mode according to the processing order.
제 6 항에 있어서,
상기 저전력 모드로 진입한 후에, 상기 제 1 테이블 및 상기 제 2 테이블을 업데이트하는 단계를 더 포함하는 방법.
According to claim 6,
After entering the low power mode, the method further includes updating the first table and the second table.
제 1 항에 있어서,
상기 저전력 모드로 진입하는 단계는,
상기 복수의 장치들 중에서 진입 실패 확률이 가장 높은 장치를 우선적으로 저전력 모드로 진입시키는 단계를 포함하는 방법.
According to claim 1,
The step of entering the low power mode is,
A method including the step of preferentially entering a low-power mode among the plurality of devices with the highest probability of entry failure.
제 1 항에 있어서,
상기 복수의 장치들의 각각의 진입 실패 확률을 업데이트하는 단계; 및
상기 진입 실패 확률에 따라 장치의 처리 우선 순위를 결정하는 단계를 더 포함하는 방법.
According to claim 1,
updating the entry failure probability of each of the plurality of devices; and
The method further includes determining a processing priority of the device according to the entry failure probability.
저전력 관리를 위한 설정 데이터를 저장하는 특수 기능 레지스터;
저전력 상태별 제 1 데이터를 저장하는 제 1 테이블;
저전력 상태에 대응하는 장치별 제 2 데이터를 저장하는 제 2 테이블; 및
상기 설정 데이터, 제 1 데이터, 및 제 2 데이터를 이용하여 복수의 저전력 상태들 중에서 어느 하나를 선택하고, 상기 선택된 저전력 상태에 따라 복수의 장치들의 각각의 저전력 진입 성공률과 우선순위를 결정하는 로직 회로를 포함하는 전력 관리 칩.
A special function register that stores configuration data for low-power management;
A first table storing first data for each low-power state;
a second table storing second data for each device corresponding to a low power state; and
A logic circuit that selects one of a plurality of low-power states using the setting data, first data, and second data, and determines the low-power entry success rate and priority of each of the plurality of devices according to the selected low-power state. Power management chip containing.
제 11 항에 있어서,
상기 설정 데이터는 상기 제 1 테이블 및 상기 제 2 테이블을 외부에 구성할 지 혹은 내부에 구성할 지를 지시하는 데이터, 상기 제 1 테이블 및 상기 제 2 테이블의 엔트리 개수를 지시하는 데이터, 유휴 시간을 지시하는 데이터, 평균 소모 시간의 기준 회수를 지시하는 데이터, 저전력 진입 성공률의 기준 회수를 지시하는 데이터, 저전력 상태 선택에 사용할 보정값을 지시하는 데이터, 현재 동작 상태와 선택된 상태를 지시하는 데이터, 처리 순서 계산을 위한 기준 회수를 지시하는 데이터, 혹은 장치의 첫번째 처리 순서의 엔트리 인덱스를 지시하는 데이터를 포함하는 것을 특징으로 하는 전력 관리 칩.
According to claim 11,
The setting data includes data indicating whether to configure the first table and the second table externally or internally, data indicating the number of entries in the first table and the second table, and idle time. data, data indicating the standard number of average consumption times, data indicating the standard number of low-power entry success rates, data indicating the correction value to be used for low-power state selection, data indicating the current operating state and selected state, and processing order. A power management chip comprising data indicating a reference number of times for calculation, or data indicating an entry index of the first processing order of the device.
제 11 항에 있어서,
상기 로직 회로는 저전력 상태 진입 소모 시간을 측정하는 위한 타이머를 포함하는 전력 관리 칩.
According to claim 11,
A power management chip wherein the logic circuit includes a timer for measuring consumption time to enter a low power state.
제 11 항에 있어서,
상기 로직 회로는, 상기 제 1 데이터 및 상기 제 2 데이터에 따른 시간 조건, 소모 전력, 저전력 진입 성공률을 기반으로 상기 복수의 저전력 상태들 중에서 어느 하나를 선택하는 상태 선택 로직을 포함하는 전력 관리 칩.
According to claim 11,
The logic circuit includes a state selection logic that selects one of the plurality of low-power states based on time conditions, power consumption, and low-power entry success rate according to the first data and the second data.
제 11 항에 있어서,
상태 엔트리의 평균 소모 시간을 계산하고, 상기 상태 엔트리의 진입 성공률을 계산하고, 상기 평균 소모 시간과 상기 진입 성공률에 따라 상기 제 1 데이터를 업데이트하는 저전력 상태별 데이터 테이블 업데이트 로직;
상기 선택된 저전력 상태에 따른 상기 복수의 장치들의 각각의 성공 회수 및 실패 회수를 갖는 상기 제 2 데이터를 업데이트하는 장치별 데이터 테이블 업데이트 로직; 및
상기 제 2 데이터에 따른 상기 복수의 장치들의 처리 순서를 계산하고, 각 엔트리의 다음 순서 엔트리 인덱스를 업데이트하는 장치 처리 순서 업데이트 로직을 포함하는 전력 관리 칩.
According to claim 11,
a data table update logic for each low-power state that calculates an average consumption time of a state entry, calculates an entry success rate of the state entry, and updates the first data according to the average consumption time and the entry success rate;
Device-specific data table update logic that updates the second data with the number of successes and number of failures of each of the plurality of devices according to the selected low power state; and
A power management chip comprising device processing order update logic that calculates a processing order of the plurality of devices according to the second data and updates a next-order entry index of each entry.
시스템 온 칩;
상기 시스템 온 칩의 동작에 필요한 데이터를 임시로 저장하는 버퍼 메모리;
상기 시스템 온 칩의 전원을 관리하는 전력 관리 칩;
디스플레이 데이터를 디스플레이 하는 디스플레이 장치;
터치 데이터를 발생하는 터치 패널; 및
상기 시스템 온 칩으로부터 데이터를 저장하는 저장 장치를 포함하고,
상기 전력 관리 칩은 복수의 저전력 상태들의 각각의 소모 전력과 저전력 진입까지의 소모 시간 이력, 및 저전력 진입 성공률 이력을 기반으로, 상기 복수의 저전력 상태들 중에서 어느 하나를 선택하고, 상기 선택된 저전력 상태에 따라 상기 시스템 온 칩, 상기 버퍼 메모리, 상기 디스플레이 장치, 상기 터치 패널, 및 상기 저장 장치의 각각을 저전력 모드로 진입시키는 것을 특징으로 하는 전자 장치.
system-on-a-chip;
a buffer memory that temporarily stores data required for operation of the system-on-chip;
a power management chip that manages power of the system-on-chip;
A display device that displays display data;
A touch panel that generates touch data; and
A storage device for storing data from the system-on-chip,
The power management chip selects one of the plurality of low power states based on the power consumption of each of the plurality of low power states, the consumption time history until low power entry, and the low power entry success rate history, and enters the selected low power state. Accordingly, an electronic device characterized in that each of the system on chip, the buffer memory, the display device, the touch panel, and the storage device enters a low power mode.
제 16 항에 있어서,
상기 시스템 온 칩은 저전력 모드를 가속화하는 저전력 가속 모듈을 구동하는 가속기를 포함하는 전자 장치.
According to claim 16,
The system-on-chip electronic device includes an accelerator that drives a low-power acceleration module to accelerate a low-power mode.
제 16 항에 있어서,
상기 전력 관리 칩은 각 장치별 저전력 진입 성공률과 설정된 우선 순위를 기반으로 상기 시스템 온 칩, 상기 버퍼 메모리, 상기 디스플레이 장치, 상기 터치 패널, 및 상기 저장 장치의 저전력 처리 순서를 결정하는 것을 특징으로 하는 전자 장치.
According to claim 16,
The power management chip determines the low-power processing order of the system on chip, the buffer memory, the display device, the touch panel, and the storage device based on the low-power entry success rate and set priority for each device. Electronic devices.
제 16 항에 있어서,
상기 전력 관리 칩은 상기 시스템 온 칩의 내부에 배치되는 것을 특징으로 하는 전자 장치.
According to claim 16,
The electronic device is characterized in that the power management chip is disposed inside the system-on-chip.
제 16 항에 있어서,
상기 전력 관리 칩은,
상기 복수의 저전력 상태들의 각각에 대응하는 엔트리들을 갖는 제 1 테이블; 및
상기 시스템 온 칩, 상기 버퍼 메모리, 상기 디스플레이 장치, 상기 터치 패널, 및 상기 저장 장치의 각각의 대응하는 제 2 테이블을 포함하고,
상기 제 1 테이블 및 상기 제 2 테이블은 저전력 처리 동작 후에 업데이트 되는 것을 특징으로 하는 전자 장치.




According to claim 16,
The power management chip is,
a first table having entries corresponding to each of the plurality of low power states; and
a second table corresponding to each of the system-on-chip, the buffer memory, the display device, the touch panel, and the storage device;
The electronic device, wherein the first table and the second table are updated after a low-power processing operation.




KR1020220159550A 2022-09-27 2022-11-24 Power management chip, electronic device having the same, and operating method thereof KR20240043635A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US18/129,466 US20240103601A1 (en) 2022-09-27 2023-03-31 Power management chip, electronic device having the same, and operating method thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020220122633 2022-09-27
KR20220122633 2022-09-27

Publications (1)

Publication Number Publication Date
KR20240043635A true KR20240043635A (en) 2024-04-03

Family

ID=90662496

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220159550A KR20240043635A (en) 2022-09-27 2022-11-24 Power management chip, electronic device having the same, and operating method thereof

Country Status (1)

Country Link
KR (1) KR20240043635A (en)

Similar Documents

Publication Publication Date Title
US10649935B2 (en) Deferred inter-processor interrupts
US11372472B2 (en) System on chip for reducing wake-up time, method of operating same, and computer system including same
US9696771B2 (en) Methods and systems for operating multi-core processors
US9600059B2 (en) Facilitating power management in a multi-core processor
US8726055B2 (en) Multi-core power management
US9588915B2 (en) System on chip, method of operating the same, and apparatus including the same
JP2014071903A (en) SoC THAT CONTROLS POWER SUPPLY ACCORDING TO DATA TRANSACTION AND METHOD OF OPERATING THE SAME
US10990153B2 (en) Application processor and system on chip
TW200941207A (en) Power management in electronic systems
KR20160128751A (en) APPLICATION PROCESSOR, SYSTEM ON CHIP (SoC), AND COMPUTING DEVICE INCLUDING THE SoC
US11734067B2 (en) Multi-core system and controlling operation of the same
US10996876B2 (en) Systems and methods for dynamically modifying memory namespace allocation based on memory attributes and application requirements
US10275007B2 (en) Performance management for a multiple-CPU platform
CN108268119B (en) Method for operating system-on-chip, system-on-chip and electronic system
KR20240043635A (en) Power management chip, electronic device having the same, and operating method thereof
US20240103601A1 (en) Power management chip, electronic device having the same, and operating method thereof
KR20210007417A (en) Multi-core system and controlling operation of the same
US9658674B2 (en) Mobile system optimization method
US11442522B2 (en) Method of controlling performance boosting of semiconductor device based on at least user input and feedback from previous boosting policies and semiconductor device performing the method
US20240061492A1 (en) Processor performing dynamic voltage and frequency scaling, electronic device including the same, and method of operating the same
US20230266815A1 (en) Dvfs controlling method, semiconductor device and semiconductor system using the dvfs controlling method
KR20240059344A (en) System on chip and operation method thereof
KR20240059343A (en) System on chip and operation method thereof