# US 12,111,674 B2 · System-on-chip and an operating method thereof

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,111,674 B2
- Document ID: US12111674B2
- Status: Granted
- Kind: B2
- Application number: 17/720,483
- Filed: 2022-04-14
- Published: 2023-03-09
- Granted: 2024-10-08
- Earliest claimed: 2021-09-06
- Assignees: Samsung Electronics Co., Ltd.
- Applicants: Samsung Electronics Co., Ltd.
- Inventors: Choonghoon Park; Jong-Lae Park; Bumgyu Park; Youngtae Lee; Donghee Han
- Web page: https://patentgrep.com/patent/US12111674B2

## CPC

- G05F 1/66: Regulating electric power
- G05F 1/462: {as a function of the requirements of the load, e.g. delay, temperature, specific voltage/current characteristic}
- G06F 1/324: by lowering clock frequency
- G06F 1/3243: {Power saving in microcontroller unit}
- G06F 1/3296: by lowering the supply or operating voltage
- G06F 15/7807: {System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package}
- Y02D 10/00: Energy efficient computing, e.g. low power processors, power management or thermal management
- G05F: SYSTEMS FOR REGULATING ELECTRIC OR MAGNETIC VARIABLES
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- Y02D: CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE

## Abstract

An operating method of a system-on-chip (SoC) which includes a processor including a first core and a dynamic voltage and frequency scaling (DVFS) module and a clock management unit (CMU) for supplying an operating clock to the first core, the operating method including: obtaining a required performance of the first core; finding available frequencies meeting the required performance; obtaining information for calculating energy consumption for each of the available frequencies; calculating the energy consumption for each of the available frequencies, based on the information; determining a frequency, which causes minimum energy consumption, from among the available frequencies as an optimal frequency; and adjusting an operating frequency to be supplied to the first core to the optimal frequency.

## Claims

### Claim 1

An operating method of a system-on-chip (SoC) which includes a processor including a first core and a dynamic voltage and frequency scaling (DVFS) module and a clock management unit (CMU) for supplying an operating clock to the first core, the operating method comprising:
obtaining a required performance of the first core;
finding available frequencies meeting the required performance;
obtaining information for calculating energy consumption for each of the available frequencies;
calculating the energy consumption for each of the available frequencies, based on the information;
determining a frequency, which causes minimum energy consumption, from among the available frequencies as an optimal frequency; and
adjusting an operating frequency to be supplied to the first core to the optimal frequency,
wherein the calculating of the energy consumption for each of the available frequencies based on the information includes:
calculating a dynamic power for a first frequency from among the available frequencies, based on the information;
calculating a static power for the first frequency, based on the information; and
multiplying each of the dynamic power and the static power by a unit time, wherein the unit time is determined differently depending on whether the power is dynamic or static.

### Claim 2 (depends on 1)

The method of claim 1, wherein the obtaining of the required performance of the first core includes:
obtaining a minimum frequency corresponding to the required performance of the first core.

### Claim 3 (depends on 2)

The method of claim 2, wherein the finding of the available frequencies includes:
determining frequencies, which are higher than or equal to the minimum frequency, from among the frequencies in a list of frequencies capable of being used as the operating frequency of the first core.

### Claim 4 (depends on 1)

The method of claim 1, wherein the obtaining of the information for calculating the energy consumption for each of the available frequencies includes:
obtaining information of frequencies capable of being used as the operating frequency to be supplied to the first core;
obtaining information of voltage levels capable of being used as a level of an operating voltage to be supplied to the first core; and
obtaining temperature information of the first core.

### Claim 5 (depends on 1)

The method of claim 1, wherein the calculating of the static power for the first frequency based on the information includes:
finding a first leakage power, corresponding to a first voltage which corresponds to the first frequency and a current temperature of the first core, from a leakage power table, and
wherein the information includes a level of the first voltage and the current temperature of the first core.

### Claim 6

An operating method of a system-on-chip (SoC) which includes a processor including a first cluster, which includes a first core and a second core, and a dynamic voltage and frequency scaling (DVFS) module and a clock management unit (CMU) for supplying an operating clock to the first core, the operating method comprising:
obtaining a required performance of the first core;
finding available frequencies meeting the required performance;
obtaining information for calculating energy consumption for each of the available frequencies;
calculating the energy consumption for each of the available frequencies, based on the information;
determining a frequency, which causes minimum energy consumption, from among the available frequencies as an optimal frequency; and
adjusting an operating frequency to be supplied to the first core to the optimal frequency,
wherein the information includes a level of an operating voltage of the second core included in the first cluster,
wherein the calculating of the energy consumption for each of the available frequencies based on the information includes:
calculating a dynamic power for a first frequency from among the available frequencies, based on the information;
calculating a static power for the first frequency, based on the information; and
multiplying each of the dynamic power and the static power by a unit time, wherein the unit time is determined differently depending on whether the power is dynamic or static.

### Claim 7 (depends on 6)

The method of claim 6, wherein the obtaining of the required performance of the first core includes:
obtaining a minimum frequency required by the first core.

### Claim 8 (depends on 7)

The method of claim 7, wherein the finding of the available frequencies includes:
determining frequencies, which are higher than or equal to the minimum frequency, from among the frequencies in a list of frequencies capable of being used by the first core as the available frequencies.

### Claim 9 (depends on 6)

The method of claim 6, wherein the obtaining of the information for calculating the energy consumption for each of the available frequencies includes:
obtaining information of frequencies capable of being used as the operating frequency to be supplied to the first core;
obtaining information of the level of the operating voltage of the second core; and
obtaining temperature information of the first core.

### Claim 10 (depends on 6)

The method of claim 6, wherein the calculating of the static power for the first frequency based on the information includes:
finding a first leakage power, corresponding to a first voltage which corresponds to the first frequency and a current temperature of the first core, from a leakage power table, and
wherein the information includes a level of the first voltage and the current temperature of the first core.

### Claim 11

A system-on-chip (SoC) comprising:
a processor including a first core;
a clock management unit (CMU) configured to generate an operating clock and supply the operating clock to the first core, under control of the processor; and
a memory configured to store a dynamic voltage and frequency scaling (DVFS) program,
wherein the DVFS program, when executed by the processor, causes the processor to:
obtain a required performance of the first core;
find available frequencies meeting the required performance;
obtain information for calculating energy consumption for each of the available frequencies;
calculate the energy consumption for each of the available frequencies, based on the information;
determine a frequency, which causes minimum energy consumption, from among the available frequencies as an optimal frequency; and
scale an operating frequency to be supplied to the first core to the optimal frequency,
wherein the DVFS program, when executed by the processor, further causes the processor to:
calculate a first dynamic power and a first static power for a first frequency from among the available frequencies, based on the information;
calculate first dynamic energy for the first frequency based on the first dynamic power;
calculate first static energy for the first frequency based on the first static power; and
calculate first energy consumption associated with the first frequency by multiplying the first dynamic energy and the first static energy by a unit time, wherein the unit time is determined differently depending on whether the energy is dynamic or static.

### Claim 12 (depends on 11)

The SoC of claim 11, wherein the DVFS program, when executed by the processor, further causes the processor to:
obtain a minimum frequency corresponding to the required performance of the first core;
obtain a frequency table including a list of frequencies capable of being used by the first core; and
determine frequencies, which are higher than or equal to the minimum frequency, from among the frequencies in the list as the available frequencies.

### Claim 13 (depends on 11)

The SoC of claim 11, further comprising:
a temperature sensor configured to measure a temperature of the first core under control of the processor; and
a temperature management unit (TMU) configured to manage the temperature of the first core, based on a measurement of the temperature sensor,
wherein the DVFS program, when executed by the processor, further causes the processor to:
obtain, from the CMU, information of frequencies capable of being used as the operating frequency to be supplied to the first core;
obtain information of voltage levels capable of being used as an operating voltage level to be supplied to the first core; and
obtain temperature information of the first core from the TMU.

### Claim 14 (depends on 11)

The SoC of claim 11, wherein the DVFS program, when executed by the processor, further causes the processor to:
find a first leakage power, corresponding to a first voltage which corresponds to the first frequency and a current temperature of the first core, from a leakage power table, and
wherein the information includes a level of the first voltage and the current temperature of the first core.

### Claim 15 (depends on 11)

The SoC of claim 11, further comprising:
a temperature sensor configured to measure a temperature of the first core under control of the processor; and
a temperature management unit (TMU) configured to manage the temperature of the first core, based on a measurement of the temperature sensor,
wherein the processor further includes a first cluster including the first core and a second core, and
wherein the DVFS program, when executed by the processor, further causes the processor to:
obtain, from the CMU, information of frequencies capable of being used as the operating frequency to be supplied to the first core;
obtain information of a level of an operating voltage of the second core; and
obtain temperature information of the first core from the TMU.

### Claim 16 (depends on 15)

The SoC of claim 15, wherein the DVFS program, when executed by the processor, further causes the processor to:
calculate the first dynamic power for the first frequency from among the available frequencies, based on the level of the operating voltage of the second core;
calculate the first dynamic energy for the first frequency, based on the first dynamic power;
calculate the first static power for the first frequency, based on the temperature information of the first core and the level of the operating voltage of the second core;
calculate the first static energy for the first frequency, based on the first static power; and
calculate the first energy consumption for the first frequency, based on the first dynamic energy and the first static energy.
