WO2022062646A1 - Power saving method and apparatus for core cluster, and chip, device and storage medium - Google Patents

Power saving method and apparatus for core cluster, and chip, device and storage medium Download PDF

Info

Publication number
WO2022062646A1
WO2022062646A1 PCT/CN2021/109332 CN2021109332W WO2022062646A1 WO 2022062646 A1 WO2022062646 A1 WO 2022062646A1 CN 2021109332 W CN2021109332 W CN 2021109332W WO 2022062646 A1 WO2022062646 A1 WO 2022062646A1
Authority
WO
WIPO (PCT)
Prior art keywords
processor
cluster
enter
processing device
core
Prior art date
Application number
PCT/CN2021/109332
Other languages
French (fr)
Chinese (zh)
Inventor
刘君
Original Assignee
哲库科技(北京)有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 哲库科技(北京)有限公司 filed Critical 哲库科技(北京)有限公司
Publication of WO2022062646A1 publication Critical patent/WO2022062646A1/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/3243Power saving in microcontroller unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • 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

Definitions

  • the present application relates to electronic technology, and relates to, but is not limited to, power saving methods and devices, chips, devices, and storage media for processor clusters.
  • cluster structures At present, in the field of electronic technology, from early single-core processors, to multi-core processors, to cluster structures, the purpose is to improve the processing capability of the system under a limited main frequency.
  • the introduction of cluster structure also provides the basis for the realization of multi-task parallelism.
  • a cluster structure is a more sophisticated approach that groups several processor cores into a group called a cluster. Typically, several such clusters can be set up within a slice. Since each cluster contains multiple processor cores, it has more processing power.
  • processor clusters Core Cluster
  • the present application provides a power saving method for a processor cluster, wherein the processor cluster includes at least two processor cores, and the method includes: completing, in any one of the processor cores in the processor cluster, each of the allocated processor cores.
  • any of the processor cores enters an idle state; the any processor core determines whether it is the last processor core in the processor cluster to enter the idle state; if any of the processor cores enter the idle state The processor core is not the last processor core in the processor cluster to enter the idle state, and any of the processor cores enters the sleep state.
  • the processing device is any processing device in a processor cluster, and the processing device includes: a determining module, configured to enter an idle state when each assigned non-idle task is completed , determine whether it is the last processing device in the processor cluster to enter the idle state; the control module is configured to control the processing device if it is not the last processing device in the processor cluster to enter the idle state Go to sleep.
  • the present application provides a chip, the chip includes at least two processors, and when any one of the processors executes a computer program, the method described in the present application is implemented.
  • An electronic device provided by the present application includes a memory and at least two processors, wherein the memory stores a computer program that can be run on the processors, and when any one of the processors executes the program, the computer program described in the present application is implemented. method.
  • a computer-readable storage medium provided by this application has a computer program stored thereon, and when the computer program is executed by a processor, the method described in this application is implemented.
  • FIG. 1A is a schematic flowchart of an implementation of a power saving method for a processor cluster provided by the present application
  • 1B is a schematic diagram of the effect comparison of two technical solutions provided by the application.
  • FIG. 2 is a schematic structural diagram of a modem provided by the application.
  • FIG. 3 is a schematic flowchart of another implementation of the power saving method for a processor cluster provided by the present application.
  • FIG. 4 is a schematic flowchart of another implementation of the power saving method for a processor cluster provided by the present application.
  • FIG. 5 is a schematic structural diagram of a processing device provided by the present application.
  • FIG. 6 is a schematic structural diagram of an electronic device provided by the present application.
  • first ⁇ second ⁇ third involved in this application is used to distinguish similar or different objects, and does not represent a specific ordering of objects. It can be understood that “first ⁇ second ⁇ third” Where permitted, the specific order or sequence may be interchanged to enable the application described herein to be practiced in sequences other than those illustrated or described herein.
  • FIG. 1A is a schematic flowchart of the implementation of the power saving method for the processor cluster of the present application, as shown in FIG. 1A , The method may include the following steps 101 to 103:
  • Step 101 When any one of the processor cores in the processor cluster completes each non-idle task assigned, the any processor core enters an idle state, and determines whether it is in the processor cluster. The last processor core to enter the idle state; if yes, go to step 102; otherwise, go to step 103.
  • the processor cluster includes at least two processor cores, for example, including 4 processor cores or 6 processor cores.
  • the number of processor cores included in the processor cluster is not limited.
  • Each processor core corresponds to a processor.
  • the component corresponding to the processor cluster may be a multi-core processor. That is to say, in this application, a processor and a multi-core processor correspond to a hardware concept, and a processor cluster and a processor core correspond to a software concept.
  • the number of processors of the multi-core processor is not limited, and may be two or more. There is also no limitation on whether the corresponding processors of these processor cores are of the same model. These processors can be the same model or different.
  • the processor core after each processor core enters the idle state, or when it is determined that it is about to enter the sleep state, the processor core sends a notification message to each other processor core to notify that it has entered the idle state.
  • Each processor core can determine whether it is the last processor core in the processor cluster to enter the idle state according to the number of received notification messages.
  • each processor core in the processor cluster has one or more non-idle tasks and also has one idle task.
  • the priority of the idle task is the lowest, and the processor core enters the idle state after executing each non-idle task, that is, executes the idle task. That is, the step of determining whether it is the last processor core in the processor cluster to enter the idle state is performed; based on this, step 102 or step 103 is performed.
  • Step 102 the any processor core enters a sleep state, and controls the processor cluster to enter a power saving state.
  • the any processor core can control the processor cluster to enter a power saving state before entering the sleep state; in some embodiments, the any processor core can also control the processor cluster to enter the sleep state Controls the processor cluster to enter a power saving state. In this application, this is not limited.
  • the so-called power saving state means that the power consumption of the processor cluster is reduced compared to the previous working state.
  • the power-saving state is a power-off state or a sleep state.
  • the value of a specific variable in the shared memory may be backed up first; then, the shared memory is controlled to be powered off.
  • peripheral devices of the at least two processor cores can also be controlled to power off, enter the sleep state after the wake-up time is set, and notify the power management Unit (Power Management Unit, PMU), so that the PMU stops supplying power to the processor cluster.
  • PMU Power Management Unit
  • the PMU disconnects the power supply circuit between the power supply unit and the components corresponding to the processor cluster, so that the processor cluster enters a power-off state.
  • the power supply circuit between the power supply unit and the components corresponding to the processor cluster may not be disconnected, but the power supply to some components (such as shared memory and/or peripheral devices, etc.) in the components corresponding to the processor cluster may be stopped.
  • the component can go to sleep.
  • each processor core in the processor cluster has a power management function, that is, any processor core, as the last core to enter the idle state, has the ability to control the processor cluster to enter the power saving state.
  • a power management function that is, any processor core, as the last core to enter the idle state
  • Step 103 any of the processor cores enters a sleep state.
  • each processor core in the processor cluster has a power management function. After completing the assigned non-idle task, each processor core enters the idle state, and then judges whether it is the last one to enter the idle state. If not, it can enter the sleep state without still being in the active state, thereby saving unnecessary power consumption, which is useful for enhancing the endurance of low-power electronic products with strict power consumption requirements. great significance. Especially for mobile phones that people are inseparable from, under the premise of ensuring product functions, low power consumption can greatly extend the battery life of mobile phones, thereby improving user experience.
  • the processor cluster includes 4 processor cores, that is, 4 cores.
  • the main processor core ie, the main core
  • the main core has a power management function, and none of core1, core2, and core3 have this function; thus, the main core must wait until the last core even if it is not the last core to enter the idle state. After a core goes to sleep, it can go to sleep by itself.
  • the main core is the first processor core to enter the idle state. At this time, the main core cannot directly enter the sleep state, but remains in the Active state until core1 to Only when core 3 enters the sleep state can the main core enter the sleep state and control the power-off of the components corresponding to the processor cluster.
  • each processor core since each processor core has a power management capability, for example, as shown in Timeline 2 in FIG. 1B , once the above-mentioned main core enters the idle state, it is not the last processor core to enter the idle state. , you can directly enter the sleep state without waiting for core1 to core3 to enter the sleep state before entering the sleep state.
  • the task of power management can be completed by other cores. For example, core3 is the last to enter the idle state, so core3 can complete the power management task and control the power-off of the components corresponding to the processor cluster.
  • the main core can save the time in the active state (t1 as shown in FIG. 1B ). That is, compared with the previous technical solution (that is, only the main core has the power management function), the main core can enter the sleep state t1 earlier, thereby saving the power consumption of the main core and improving the battery life of the electronic device where it is located. , which is obviously beneficial to improve the user experience.
  • FIG. 2 is a schematic structural diagram of the modem of the application.
  • the modem 2 includes a multi-core processor 20, a PMU 21, a power supply unit (Power Supply) 22, a shared memory 23 and Peripherals (peripherals) 24;
  • the multi-core processor 20 includes 4 processors, namely the processor 201, the processor 202, the processor 203 and the processor 204;
  • the PMU 21 includes an AND logic detection circuit (AND) 211.
  • the multi-core processor includes 4 processors here is just an example, which should not limit the protection scope of the present application.
  • the multi-core processor may include any number of processors, which is not limited.
  • the power saving method for a processor cluster provided in this application is applicable to any processor cluster having two or more processor cores, that is, a multi-core processor.
  • Peripherals 24 are peripherals of multi-core processor 20 .
  • peripheral devices 24 are serial devices, timers, and/or interface devices (eg, USB), and the like.
  • each processor can execute a program instruction to write a sleep bit to a register, thereby triggering the controller to be set, and the PMU detects that all processors have entered sleep through an AND logic detection circuit.
  • the multi-core processor 20 is controlled to be powered off, that is, the power supply circuit between the power supply unit 22 and the multi-core processor 20 is disconnected.
  • the so-called low-power consumption scenarios of communication terminals refer to portable electronic products with batteries. These products often have relatively high requirements on the battery life of the products. Therefore, how to make these products have lower power consumption on the premise of ensuring functions? become an important issue to be solved.
  • FIG. 3 is a schematic flowchart of another implementation of the power saving method for the processor cluster of the present application. , as shown in FIG. 3, the method may include the following steps 301 to 307:
  • Step 301 when any one of the processor cores in the processor cluster completes each assigned non-idle task, the any processor core enters an idle state, and determines whether it is in the processor cluster. The last processor core to enter the idle state; if yes, go to step 302; otherwise, go to step 307;
  • Step 302 the any processor core backs up the specific variable value in the shared memory of each of the processor cores.
  • the processor core may back up certain variable values in the shared memory of each of the processor cores after entering the idle state and before entering the sleep state. In this way, the related service interruption problem caused by the loss of these data after entering the sleep state can be prevented, thereby effectively improving the communication service quality.
  • Step 303 after backing up the specific variable value in the shared memory, the any processor core controls the shared memory to be powered off, and then proceeds to step 304 .
  • the so-called shared memory refers to the cache device shared by each processor core in the processor cluster.
  • the shared memory is the second level cache (L2 Cache).
  • Step 304 the one processor core controls the peripheral devices of the at least two processor cores to power off, and then proceeds to step 305 .
  • the peripheral devices may be part or all of the peripheral devices of the at least two processor cores. That is, the one processor core can control part or all of the peripheral devices of the at least two processor cores to power off. For example, controlling peripheral devices such as serial devices, timers, and/or interface devices (eg, USB) to power off.
  • peripheral devices such as serial devices, timers, and/or interface devices (eg, USB) to power off.
  • Step 305 the any processor core sets the wake-up time of the processor cluster.
  • the communication terminal does not always communicate with the network, but is discontinuous.
  • the network determines that there is no related service of the terminal, it will tell the terminal when to enter the sleep state, that is, the terminal periodically receives messages sent by the network.
  • the wake-up time setting is for the terminal to wake up after sleeping for a period of time to detect whether the network calls itself.
  • step 302 to step 305 is not limited.
  • the processor core can first set the wake-up time of the processor cluster, then back up specific variable values, power off the shared memory, and finally power off the peripheral devices; of course, the processor core can also power off the peripheral devices first , then set the wake-up time of the processor cluster, and finally back up the specific variable values, power off the shared memory, and other execution sequences, which are not exhaustive here.
  • Step 306 after controlling the power off of the shared memory, controlling the power off of the peripheral devices, and setting the wake-up time of the processor cluster, the any processor core enters a sleep state, and notifies the PMU, so that the PMU When it is detected that each of the processor cores has entered a sleep state, the power supply to the processor cluster is stopped.
  • the PMU may disconnect the power supply circuit between the power supply unit and the components corresponding to the processor cluster, thereby stopping power supply to the processor cluster.
  • steps 302 to 306 are an implementation manner of controlling the processor cluster to enter a power saving state.
  • Controlling the processor cluster to enter a power saving state may include at least one of the above steps 302 to 306 .
  • the shared memory is controlled to be powered off after the peripheral device is controlled to be powered off and/or the value of a specific variable in the shared memory is backed up.
  • the processor core can notify the PMU that it has entered a sleep state in software or hardware.
  • the processor core can send a notification message to the PMU through Bluetooth or other wireless communication methods; in hardware, for example, the processor core can write sleep bits into registers by executing specific program instructions ( sleep bit), thereby informing the PMU that each processor core enters the sleep state when the register stores the sleep bit written by each processor core.
  • sleep bit specific program instructions
  • the controller can be triggered to set the bit, and the PMU stops the feed after detecting that all the processor cores have entered the sleep state through an AND logic detection circuit.
  • the processor cluster is powered, for example, the power supply circuit between the power supply unit and the components corresponding to the processor cluster is disconnected.
  • Step 307 any of the processor cores enters a sleep state, and notifies the PMU to enter a sleep state, so that the PMU stops supplying power to the processor cluster when it detects that each of the processor cores has entered a sleep state , to put the processor cluster into a power-saving state.
  • the processor core may notify the PMU to enter the sleep state before or after entering the sleep state. Understandably, the purpose of informing the PMU is to facilitate the PMU to know in time whether each processor core in the processor cluster has entered the sleep state, so as to quickly disconnect the power supply circuit between the power supply unit and the components corresponding to the processor cluster, thereby Save power consumption.
  • a processor core may write sleep bits to a register; wherein the register is used to notify the PMU of each of the processing when the sleep bits written by each of the processor cores are stored
  • the cores are in sleep state.
  • the controller when the sleep bit written by each processor core is stored in the register, the controller will be set, so that when the PMU detects that the controller is set through the AND logic detection circuit, it determines Each of the processor cores enters a sleep state. As such, the implementation notifies the PMU to go to sleep.
  • the PMU processor core is notified by hardware to enter the sleep state, so that a quick notification can be realized, so that the PMU can disconnect the power supply circuit in a more timely manner, thereby saving power consumption.
  • the software of the modem system uses an operating system (Operating System, OS) to uniformly schedule each processor core in the processor cluster, and the operating system assigns tasks to different processor cores.
  • OS Operating System
  • the software power management scheme determines a processor core in the system as the main processor core, and creates an idle task on the main processor core.
  • the main processor core enters a sleep state after all other processor cores enter an idle state. That is to say, whenever the main processor core enters the idle state, it needs to be the last one to enter the sleep state.
  • the L2 cache is the shared memory of all processor cores in the processor cluster.
  • the main processor core as the last processor core to sleep, must always be in the active (Active) state, until all other processor cores confirm that they have returned to sleep before they can sleep.
  • the idle state must wait for other processor cores to sleep before entering the sleep state, which prolongs the activation time of the main processor core, resulting in a waste of power.
  • Reasonable arrangement of tasks on each processor core can effectively solve such problems.
  • the processor core If it is the last processor core to enter the idle state, the processor core backs up the variables that the system needs to save, turns off the L2 cache (ie the second level cache) and peripheral devices, and sets the processor cluster's Wake up time, and then put yourself to sleep.
  • the hardware PMU unit detects that all processor cores have been sleeping, and powers off the corresponding components of the processor cluster as a whole; if you are not the last processor core to enter the idle state, only Put yourself into a sleep state, and hand off the work of controlling the overall power-off of the components corresponding to the processor cluster to other processor cores that have not yet been sleeping.
  • the software power management of multi-core processors is improved to distributed management, and the power-off process of the components corresponding to the processor cluster is centrally managed by the main processor core to each processor core. It can be processed on demand, so that tasks that are not activated by each processor core can enter a sleep state, so that there is no unnecessary waiting state for a processor core, which can save power more effectively.
  • the multi-core system can make the processor cluster enter the sleep state faster when it is sleeping, so as to avoid unnecessary waiting time.
  • the power management function is distributed to each processor core, thereby reducing the standby power consumption of the system and saving power.
  • the centralized management is changed to the distributed management, so as to better adapt to the power control of the multi-core system and reduce the standby power consumption of the system.
  • the present application provides a processing device, the processing device includes each module included and each unit included in each module; in the process of implementation, the processing device may be a central processing unit (CPU), Microprocessor (MPU), Digital Signal Processor (DSP), Field Programmable Gate Array (FPGA) or Graphics Processing Unit (GPU), etc.
  • CPU central processing unit
  • MPU Microprocessor
  • DSP Digital Signal Processor
  • FPGA Field Programmable Gate Array
  • GPU Graphics Processing Unit
  • FIG. 5 is a schematic structural diagram of the processing device of the present application.
  • the processing device 50 is any processing device in the processor cluster, and the processing device 50 includes a determination module 501 and a control module 502, wherein:
  • a determination module 501 configured to enter an idle state when completing each assigned non-idle task, and determine whether it is the last processing device in the processor cluster to enter the idle state;
  • the control module 502 is configured to control the processing device 50 to enter the sleep state if it is not the last processing device in the processor cluster to enter the idle state.
  • control module 502 is further configured to, if it is the last processing device in the processor cluster to enter the idle state, control the processing device 50 to enter the sleep state, and control the processor cluster to enter the idle state Power saving state.
  • control module 502 is configured to, if it is the last processing device in the processor cluster to enter the idle state, control the processor cluster to enter the idle state before or after the processing device 50 enters the sleep state Power saving state.
  • the processing device 50 further includes a notification module, the notification module is configured to notify the PMU processing device 50 to enter the sleep state if the processing device 50 is not the last processing device in the processor cluster to enter the idle state , so that the PMU stops supplying power to the processor cluster when it detects that each of the processing devices has entered a sleep state.
  • the notification module is configured to write a sleep bit to a register; wherein the register is configured to notify the PMU of each of the sleep bits written by each of the processing devices when storing the sleep bits written by each of the processing devices.
  • the processing devices all enter the sleep state.
  • control module 502 is configured to back up the specific variable value in the shared memory of each processing device; after backing up the specific variable value in the shared memory, control the shared memory Power off.
  • control module 502 is configured to back up certain variable values in the shared memory of each processing device 50 after the processing device 50 enters the idle state and before entering the sleep state.
  • control module 502 is further configured to control the power-off of peripheral devices of each of the processing devices.
  • the processing device 50 further includes a notification module; wherein, the control module 502 is further configured to set the wake-up time of the processor cluster; control the shared memory to power off and control the peripheral device to power off And/or after the wake-up time of the processor cluster is set, the notification module is triggered to notify the PMU, so that the PMU stops supplying power to the processor cluster when it detects that each of the processing devices has entered a sleep state.
  • each functional unit in each embodiment of the present application may be integrated into one processing unit, or may exist independently physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated units may be implemented in the form of hardware, or may be implemented in the form of software functional units. It can also be implemented in the form of a combination of software and hardware.
  • the present application provides a chip, the chip includes at least two processors, and any one of the processors executes a computer program When implementing the power saving method of the processor cluster described in this application.
  • FIG. 6 is a schematic structural diagram of the electronic device of the present application.
  • the electronic device 60 includes a memory 601 and at least two processors 602 .
  • the running computer program when any one of the processors executes the program, implements the power saving method of the processor cluster described in this application.
  • the memory 601 is configured to store instructions and applications executable by the processor 602, and can also cache data to be processed or processed by the processor 602 and various modules in the electronic device 60 (eg, image data, audio data, voice communication data and Video communication data), which can be realized by flash memory (FLASH) or random access memory (Random Access Memory, RAM).
  • FLASH flash memory
  • RAM Random Access Memory
  • the electronic device may be a portable device or a non-portable device.
  • the electronic device may be a portable device such as a smartphone, a laptop, a tablet, an e-reader, a phone watch, a smart bracelet, or an MP3 player.
  • the electronic device may also be a non-portable device such as a computer.
  • the present application if the above-mentioned power saving method for a processor cluster is implemented in the form of a software function module and sold or used as an independent product, it can also be stored in a computer-readable storage medium.
  • the technical solutions of the present application can be embodied in the form of software products in essence or the parts that contribute to related technologies.
  • the computer software products are stored in a storage medium and include several instructions for making the electronic device All or part of the methods described in the various embodiments of the present application are performed.
  • the aforementioned storage medium includes: a U disk, a mobile hard disk, a read only memory (Read Only Memory, ROM), a magnetic disk or an optical disk and other media that can store program codes.
  • the present application is not limited to any particular combination of hardware and software.
  • the present application provides a computer-readable storage medium on which a computer program is stored, and when the computer program is executed by a processor, implements the power saving method for a processor cluster provided by the foregoing embodiments.
  • the present application provides a computer program product containing instructions, which, when running on an electronic device such as a computer, enables the electronic device to execute the method for saving power of a processor cluster provided by the foregoing method embodiments.
  • the disclosed apparatus and method may be implemented in other manners.
  • the embodiments of the touch screen system described above are only illustrative.
  • the division of the modules is only a logical function division.
  • there may be other division methods for example, multiple modules or components may be combined , or can be integrated into another system, or some features can be ignored, or not implemented.
  • the coupling, or direct coupling, or communication connection between the components shown or discussed may be through some interfaces, and the indirect coupling or communication connection of devices or modules may be electrical, mechanical or other forms. of.
  • modules described above as separate components may or may not be physically separated, and the components shown as modules may or may not be physical modules; they may be located in one place or distributed to multiple network units; Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution in this embodiment.
  • each functional module in each embodiment of the present application may all be integrated in one processing unit, or each module may be separately used as a unit, or two or more modules may be integrated in one unit; the above integration
  • the module can be implemented in the form of hardware, or it can be implemented in the form of hardware plus software functional units.
  • the aforementioned program can be stored in a computer-readable storage medium, and when the program is executed, the execution includes: The steps of the above method embodiments; and the aforementioned storage medium includes: a removable storage device, a read only memory (Read Only Memory, ROM), a magnetic disk or an optical disk and other media that can store program codes.
  • ROM Read Only Memory
  • the above-mentioned integrated units of the present application are implemented in the form of software function modules and sold or used as independent products, they may also be stored in a computer-readable storage medium.
  • the technical solutions of the present application can be embodied in the form of software products in essence or the parts that contribute to related technologies.
  • the computer software products are stored in a storage medium and include several instructions for making the electronic device All or part of the methods described in the various embodiments of the present application are performed.
  • the aforementioned storage medium includes various media that can store program codes, such as a removable storage device, a ROM, a magnetic disk, or an optical disk.

Abstract

Disclosed are a power saving method and apparatus for a core cluster, and a chip, a device and a storage medium. The core cluster comprises at least two cores. The method comprises: when any core in a core cluster completes each distributed non-idle task, the any core entering an idle state; the any core determining whether same is the last core, in the core cluster, which enters the idle state; and if the any core is not the last core, in the core cluster, which enters the idle state, the any core entering a sleep state.

Description

处理器簇的节电方法及装置、芯片、设备、存储介质Power saving method and device, chip, device and storage medium for processor cluster
相关申请的交叉引用CROSS-REFERENCE TO RELATED APPLICATIONS
本申请基于申请号为202011019751.X、申请日为2020年09月24日的中国专利申请提出,并要求该中国专利申请的优先权,该中国专利申请的全部内容在此以全文引入的方式引入本申请。This application is based on the Chinese patent application with the application number of 202011019751.X and the application date of September 24, 2020, and claims the priority of the Chinese patent application. The entire content of the Chinese patent application is hereby incorporated by way of full-text introduction this application.
技术领域technical field
本申请涉及电子技术,涉及但不限于处理器簇的节电方法及装置、芯片、设备、存储介质。The present application relates to electronic technology, and relates to, but is not limited to, power saving methods and devices, chips, devices, and storage media for processor clusters.
背景技术Background technique
目前,在电子技术领域,从早期的单核处理器,到多核处理器,再到簇结构,其目的均是为了在有限的主频下,提高系统的处理能力。簇结构的引入也同时为多任务并行提供了实现的基础。簇结构是一个更完善的方法,其将若干个处理器核(core)组成一个组,称为簇。通常,在一个片内可以设置若干个这样的簇。由于每个簇含有多个处理器核,所以它的处理能力更强大。At present, in the field of electronic technology, from early single-core processors, to multi-core processors, to cluster structures, the purpose is to improve the processing capability of the system under a limited main frequency. The introduction of cluster structure also provides the basis for the realization of multi-task parallelism. A cluster structure is a more sophisticated approach that groups several processor cores into a group called a cluster. Typically, several such clusters can be set up within a slice. Since each cluster contains multiple processor cores, it has more processing power.
在手机、Ipad、MP3播放器以及电话手表等这些对功耗要求比较严格的便携式电子产品中,其芯片方案多采用处理器簇(Core Cluster),因此,如何节约处理器簇的耗电量,在这些对低功耗要求较高的电子产品中显得尤为重要。In portable electronic products such as mobile phones, Ipads, MP3 players, and phone watches that have strict power consumption requirements, the chip solutions mostly use processor clusters (Core Cluster). Therefore, how to save the power consumption of the processor cluster, It is particularly important in these electronic products that require high low power consumption.
发明内容SUMMARY OF THE INVENTION
本申请提供的处理器簇的节电方法及装置、芯片、设备、存储介质,是这样实现的:The power saving method and device, chip, device, and storage medium of a processor cluster provided by this application are implemented as follows:
本申请提供的处理器簇的节电方法,所述处理器簇包括至少两个处理器核,所述方法包括:在所述处理器簇中的任一所述处理器核完成被分配的每一非空闲任务时,所述任一处理器核进入空闲状态;所述任一处理器核确定是否是所 述处理器簇中最后一个进入所述空闲状态的处理器核;如果所述任一处理器核不是所述处理器簇中最后一个进入所述空闲状态的处理器核,所述任一处理器核进入睡眠状态。The present application provides a power saving method for a processor cluster, wherein the processor cluster includes at least two processor cores, and the method includes: completing, in any one of the processor cores in the processor cluster, each of the allocated processor cores. When a non-idle task occurs, any of the processor cores enters an idle state; the any processor core determines whether it is the last processor core in the processor cluster to enter the idle state; if any of the processor cores enter the idle state The processor core is not the last processor core in the processor cluster to enter the idle state, and any of the processor cores enters the sleep state.
本申请提供的一种处理装置,所述处理装置为处理器簇中的任一处理装置,所述处理装置包括:确定模块,用于在完成被分配的每一非空闲任务时,进入空闲状态,确定是否是所述处理器簇中最后一个进入所述空闲状态的处理装置;控制模块,用于如果不是所述处理器簇中最后一个进入所述空闲状态的处理装置,控制所述处理装置进入睡眠状态。A processing device provided by the present application, the processing device is any processing device in a processor cluster, and the processing device includes: a determining module, configured to enter an idle state when each assigned non-idle task is completed , determine whether it is the last processing device in the processor cluster to enter the idle state; the control module is configured to control the processing device if it is not the last processing device in the processor cluster to enter the idle state Go to sleep.
本申请提供的一种芯片,所述芯片包括至少两个处理器,任一所述处理器执行计算机程序时实现本申请所述的方法。The present application provides a chip, the chip includes at least two processors, and when any one of the processors executes a computer program, the method described in the present application is implemented.
本申请提供的一种电子设备,包括存储器和至少两个处理器,所述存储器存储有可在处理器上运行的计算机程序,任一所述处理器执行所述程序时实现本申请所述的方法。An electronic device provided by the present application includes a memory and at least two processors, wherein the memory stores a computer program that can be run on the processors, and when any one of the processors executes the program, the computer program described in the present application is implemented. method.
本申请提供的一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现本申请所述的方法。A computer-readable storage medium provided by this application has a computer program stored thereon, and when the computer program is executed by a processor, the method described in this application is implemented.
附图说明Description of drawings
此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本申请的实施例,并于说明书一起用于说明本申请的技术方案。The accompanying drawings herein are incorporated into and constitute a part of this specification, and these drawings illustrate embodiments consistent with the present application, and together with the description, serve to explain the technical solutions of the present application.
图1A为本申请提供的处理器簇的节电方法的实现流程示意图;FIG. 1A is a schematic flowchart of an implementation of a power saving method for a processor cluster provided by the present application;
图1B为本申请提供的两种技术方案的效果对比示意图;1B is a schematic diagram of the effect comparison of two technical solutions provided by the application;
图2为本申请提供的调制解调器的结构示意图;2 is a schematic structural diagram of a modem provided by the application;
图3为本申请提供的处理器簇的节电方法的另一实现流程示意图;3 is a schematic flowchart of another implementation of the power saving method for a processor cluster provided by the present application;
图4为本申请提供的处理器簇的节电方法的又一实现流程示意图;4 is a schematic flowchart of another implementation of the power saving method for a processor cluster provided by the present application;
图5为本申请提供的处理装置的结构示意图;5 is a schematic structural diagram of a processing device provided by the present application;
图6为本申请提供的电子设备的结构示意图。FIG. 6 is a schematic structural diagram of an electronic device provided by the present application.
具体实施方式detailed description
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请中的附图,对本申请的具体技术方案做进一步详细描述。以下实施例用于说明本申请,但不用来限制本申请的范围。In order to make the purpose, technical solutions and advantages of the present application clearer, the specific technical solutions of the present application will be further described in detail below with reference to the accompanying drawings in the present application. The following examples are used to illustrate the present application, but are not intended to limit the scope of the present application.
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请的目的,不是旨在限制本申请。Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the technical field to which this application belongs. The terminology used herein is for the purpose of describing the present application only and is not intended to limit the present application.
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。In the following description, reference is made to "some embodiments" which describe a subset of all possible embodiments, but it is understood that "some embodiments" can be the same or a different subset of all possible embodiments, and Can be combined with each other without conflict.
需要指出,本申请所涉及的术语“第一\第二\第三”用以区别类似或不同的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请能够以除了在这里图示或描述的以外的顺序实施。It should be pointed out that the term "first\second\third" involved in this application is used to distinguish similar or different objects, and does not represent a specific ordering of objects. It can be understood that "first\second\third" Where permitted, the specific order or sequence may be interchanged to enable the application described herein to be practiced in sequences other than those illustrated or described herein.
本申请提供一种处理器簇的节电方法,所述处理器簇包括至少两个处理器核,图1A为本申请的处理器簇的节电方法的实现流程示意图,如图1A所示,该方法可以包括以下步骤101至步骤103:The present application provides a power saving method for a processor cluster, where the processor cluster includes at least two processor cores. FIG. 1A is a schematic flowchart of the implementation of the power saving method for the processor cluster of the present application, as shown in FIG. 1A , The method may include the following steps 101 to 103:
步骤101,在所述处理器簇中的任一所述处理器核完成被分配的每一非空闲任务时,所述任一处理器核进入空闲状态,以及确定是否是所述处理器簇中最后一个进入所述空闲状态的处理器核;如果是,执行步骤102;否则,执行步骤103。Step 101: When any one of the processor cores in the processor cluster completes each non-idle task assigned, the any processor core enters an idle state, and determines whether it is in the processor cluster. The last processor core to enter the idle state; if yes, go to step 102; otherwise, go to step 103.
处理器簇中包括至少两个处理器核,例如,包括4个处理器核或者6个处理器核等。在本申请中,对于处理器簇中包含的处理器核的数量不做限定。每一处理器核对应一处理器。相应地,处理器簇对应的部件可以是多核处理器。也就是说,在本申请中,处理器、多核处理器对应硬件概念,处理器簇、处理器核对应软件概念。对于多核处理器的处理器数目不做限定,可以是两个或两个以上。对于这些处理器核各自对应的处理器是否是相同型号的处理器也不做 限定。这些处理器可以型号相同,也可以不同。The processor cluster includes at least two processor cores, for example, including 4 processor cores or 6 processor cores. In this application, the number of processor cores included in the processor cluster is not limited. Each processor core corresponds to a processor. Correspondingly, the component corresponding to the processor cluster may be a multi-core processor. That is to say, in this application, a processor and a multi-core processor correspond to a hardware concept, and a processor cluster and a processor core correspond to a software concept. The number of processors of the multi-core processor is not limited, and may be two or more. There is also no limitation on whether the corresponding processors of these processor cores are of the same model. These processors can be the same model or different.
在一些实施例中,每一处理器核在进入空闲状态之后,或者在确定即将进入睡眠状态的情况下,该处理器核向其他每一处理器核发送通知消息,通知已进入空闲状态。每一处理器核可以根据接收的通知消息的数目,来判断自己是否是处理器簇中最后一个进入空闲状态的处理器核。In some embodiments, after each processor core enters the idle state, or when it is determined that it is about to enter the sleep state, the processor core sends a notification message to each other processor core to notify that it has entered the idle state. Each processor core can determine whether it is the last processor core in the processor cluster to enter the idle state according to the number of received notification messages.
在一些实施例中,处理器簇中的每一处理器核具有一个或多个非空闲任务,还具有一个空闲任务。空闲任务的优先级最低,处理器核在执行完每一非空闲任务之后,进入空闲状态,即执行空闲任务。也就是,执行所述确定是否是处理器簇中最后一个进入空闲状态的处理器核的步骤;基于此执行步骤102或者步骤103。In some embodiments, each processor core in the processor cluster has one or more non-idle tasks and also has one idle task. The priority of the idle task is the lowest, and the processor core enters the idle state after executing each non-idle task, that is, executes the idle task. That is, the step of determining whether it is the last processor core in the processor cluster to enter the idle state is performed; based on this, step 102 or step 103 is performed.
步骤102,所述任一处理器核进入睡眠状态,并控制所述处理器簇进入节电状态。 Step 102, the any processor core enters a sleep state, and controls the processor cluster to enter a power saving state.
在一些实施例中,所述任一处理器核可以在进入睡眠状态之前,控制处理器簇进入节电状态;在一些实施例中,所述任一处理器核还可以在进入睡眠状态之后,控制处理器簇进入节电状态。在本申请中,对此不做限定。In some embodiments, the any processor core can control the processor cluster to enter a power saving state before entering the sleep state; in some embodiments, the any processor core can also control the processor cluster to enter the sleep state Controls the processor cluster to enter a power saving state. In this application, this is not limited.
所谓节电状态,指的是处理器簇相比于之前的工作状态,功耗降低。例如,节电状态为下电状态或者睡眠状态等。在一些实施例中,作为最后一个进入空闲状态的处理器核,可以先对共享内存中的特定变量值进行备份;然后,控制共享内存下电。在一些实施例中,作为最后一个进入空闲状态的处理器核,还可以控制所述至少两个处理器核的外围设备等下电,在设定唤醒时间之后,进入睡眠状态,并通知功率管理单元(Power Management Unit,PMU),以使PMU停止对处理器簇供电。例如,PMU断开供电单元与处理器簇对应的部件之间的供电电路,从而使得处理器簇进入下电状态。当然,也可以不断开供电单元与处理器簇对应的部件之间的供电电路,而是停止给处理器簇对应的部件中的某些器件(例如共享内存和/或外围设备等)供电,该部件进入睡眠状态即可。The so-called power saving state means that the power consumption of the processor cluster is reduced compared to the previous working state. For example, the power-saving state is a power-off state or a sleep state. In some embodiments, as the last processor core to enter the idle state, the value of a specific variable in the shared memory may be backed up first; then, the shared memory is controlled to be powered off. In some embodiments, as the last processor core to enter the idle state, peripheral devices of the at least two processor cores can also be controlled to power off, enter the sleep state after the wake-up time is set, and notify the power management Unit (Power Management Unit, PMU), so that the PMU stops supplying power to the processor cluster. For example, the PMU disconnects the power supply circuit between the power supply unit and the components corresponding to the processor cluster, so that the processor cluster enters a power-off state. Of course, the power supply circuit between the power supply unit and the components corresponding to the processor cluster may not be disconnected, but the power supply to some components (such as shared memory and/or peripheral devices, etc.) in the components corresponding to the processor cluster may be stopped. The component can go to sleep.
可以理解地,处理器簇中的每一处理器核均具备电源管理功能,即任一处理器核作为最后一个进入空闲状态的核,均具有控制处理器簇进入节电状态的 能力。这样,就无需一个主处理器核在等待其他所有处理器核均进入睡眠状态之后来控制处理器簇进入节电状态了,从而能够节约主处理器核不必要的工作时长,进而节约处理器簇的功耗。Understandably, each processor core in the processor cluster has a power management function, that is, any processor core, as the last core to enter the idle state, has the ability to control the processor cluster to enter the power saving state. In this way, there is no need for one main processor core to control the processor cluster to enter the power saving state after waiting for all other processor cores to enter the sleep state, thereby saving unnecessary working time of the main processor core, thereby saving the processor cluster power consumption.
步骤103,所述任一处理器核进入睡眠状态。 Step 103, any of the processor cores enters a sleep state.
可以理解地,处理器簇中的每一处理器核均具有电源管理功能,每一处理器核在完成被分配的非空闲任务之后,进入空闲状态,此时判断自己是否是最后一个进入空闲状态的处理器核;如果不是,则可以进入睡眠状态,而无需依然处于激活状态,从而能够节约不必要的功率消耗,这对于增强对功耗要求比较严格的低功耗电子产品的续航能力,具有重大的意义。尤其对于人们形影不离的手机来讲,在保证产品功能的前提下,功耗较低能够大大延长手机的续航时间,从而提升用户使用体验。Understandably, each processor core in the processor cluster has a power management function. After completing the assigned non-idle task, each processor core enters the idle state, and then judges whether it is the last one to enter the idle state. If not, it can enter the sleep state without still being in the active state, thereby saving unnecessary power consumption, which is useful for enhancing the endurance of low-power electronic products with strict power consumption requirements. great significance. Especially for mobile phones that people are inseparable from, under the premise of ensuring product functions, low power consumption can greatly extend the battery life of mobile phones, thereby improving user experience.
举例来说,假设处理器簇包括4个处理器核,即4个core。在一些实施例中,只有主处理器核(即主core)具有电源管理功能,core1、core2和core3均没有该功能;这样,主core即使不是最后一个进入空闲状态的core,也必须要等到最后一个core进入睡眠状态之后,自己才能够进入睡眠。例如图1B中的时间轴1所示,主core是第一个进入空闲状态的处理器核,此时主core不能够直接进入睡眠状态,而是仍要处于激活(Active)状态,直至core1至core3均进入睡眠状态,主core才能够进入睡眠状态,控制处理器簇对应的部件下电。For example, it is assumed that the processor cluster includes 4 processor cores, that is, 4 cores. In some embodiments, only the main processor core (ie, the main core) has a power management function, and none of core1, core2, and core3 have this function; thus, the main core must wait until the last core even if it is not the last core to enter the idle state. After a core goes to sleep, it can go to sleep by itself. For example, as shown in Timeline 1 in Figure 1B, the main core is the first processor core to enter the idle state. At this time, the main core cannot directly enter the sleep state, but remains in the Active state until core1 to Only when core 3 enters the sleep state can the main core enter the sleep state and control the power-off of the components corresponding to the processor cluster.
而在另一些实施例中,由于每一处理器核均具有电源管理能力,这样例如图1B中的时间轴2所示,上述主core一旦进入空闲状态且不是最后一个进入空闲状态的处理器核,即可直接进入睡眠状态,而无需等待core1至core3均进入睡眠状态才进入睡眠状态,电源管理的任务可以由其他core来完成。例如,core3是最后一个进入空闲状态的,因此可以由core3完成电源管理任务,控制处理器簇对应的部件下电。In other embodiments, since each processor core has a power management capability, for example, as shown in Timeline 2 in FIG. 1B , once the above-mentioned main core enters the idle state, it is not the last processor core to enter the idle state. , you can directly enter the sleep state without waiting for core1 to core3 to enter the sleep state before entering the sleep state. The task of power management can be completed by other cores. For example, core3 is the last to enter the idle state, so core3 can complete the power management task and control the power-off of the components corresponding to the processor cluster.
由此可见,采用后一技术方案,主core可以节省处于激活状态的时间(如图1B所示的t1)。即相比于前一技术方案(即仅有主core具备电源管理功能的方案),主core可以提前t1时长进入睡眠状态,从而节约了主core的功耗,进 而提升了所在电子设备的续航时间,这显然是有利于改善用户的使用体验的。It can be seen that, by adopting the latter technical solution, the main core can save the time in the active state (t1 as shown in FIG. 1B ). That is, compared with the previous technical solution (that is, only the main core has the power management function), the main core can enter the sleep state t1 earlier, thereby saving the power consumption of the main core and improving the battery life of the electronic device where it is located. , which is obviously beneficial to improve the user experience.
本申请提供一种调制解调器(modem),图2为本申请调制解调器的结构示意图,如图2所示,该调制解调器2包括多核处理器20、PMU 21、供电单元(Power Supply)22、共享内存23和外围设备(peripherals)24;其中,多核处理器20包括4个处理器,即处理器201、处理器202、处理器203和处理器204;PMU 21包括与逻辑检测电路(AND)211。The application provides a modem, and FIG. 2 is a schematic structural diagram of the modem of the application. As shown in FIG. 2 , the modem 2 includes a multi-core processor 20, a PMU 21, a power supply unit (Power Supply) 22, a shared memory 23 and Peripherals (peripherals) 24; wherein, the multi-core processor 20 includes 4 processors, namely the processor 201, the processor 202, the processor 203 and the processor 204; the PMU 21 includes an AND logic detection circuit (AND) 211.
需要说明的是,这里多核处理器包括4个处理器只是一种示例,不应当造成对本申请保护范围的限制。在本申请中,多核处理器可以包括任意数量的处理器,对此不做限制。本申请提供的处理器簇的节电方法,适用于具有两个或两个以上处理器核的任意处理器簇,也即多核处理器。外围设备24是多核处理器20的外围设备。例如,外围设备24为串口设备、计时器(timer)和/或接口设备(例如USB)等。It should be noted that the fact that the multi-core processor includes 4 processors here is just an example, which should not limit the protection scope of the present application. In this application, the multi-core processor may include any number of processors, which is not limited. The power saving method for a processor cluster provided in this application is applicable to any processor cluster having two or more processor cores, that is, a multi-core processor. Peripherals 24 are peripherals of multi-core processor 20 . For example, peripheral devices 24 are serial devices, timers, and/or interface devices (eg, USB), and the like.
在通信终端的低功耗场景中,终端的调制解调器在非连续接收(Discontinuous Reception,DRX)的非激活状态或者飞行(Airplane)模式下需要进入睡眠状态。在一些实施例中,每个处理器可以通过执行程序指令,从而向寄存器写入睡眠比特(sleep bit),进而触发控制器置位,PMU通过一个与逻辑检测电路检测到所有处理器都进入睡眠状态之后,控制多核处理器20下电,即断开供电单元22与多核处理器20之间的供电电路。In a low-power consumption scenario of a communication terminal, the modem of the terminal needs to enter a sleep state in a discontinuous reception (Discontinuous Reception, DRX) inactive state or in an airplane (Airplane) mode. In some embodiments, each processor can execute a program instruction to write a sleep bit to a register, thereby triggering the controller to be set, and the PMU detects that all processors have entered sleep through an AND logic detection circuit. After the state, the multi-core processor 20 is controlled to be powered off, that is, the power supply circuit between the power supply unit 22 and the multi-core processor 20 is disconnected.
可以理解地,所谓通信终端的低功耗场景,是指具有电池的便携式电子产品,这些产品往往对产品的续航能力要求比较高,因此如何使得这些产品在保证功能的前提下功率消耗较低,成为待解决的重要课题。Understandably, the so-called low-power consumption scenarios of communication terminals refer to portable electronic products with batteries. These products often have relatively high requirements on the battery life of the products. Therefore, how to make these products have lower power consumption on the premise of ensuring functions? become an important issue to be solved.
基于此,在本申请中提供一种处理器簇的节电方法,所述处理器簇包括至少两个处理器核,图3为本申请的处理器簇的节电方法的另一实现流程示意图,如图3所示,该方法可以包括以下步骤301至步骤307:Based on this, the present application provides a power saving method for a processor cluster, where the processor cluster includes at least two processor cores. FIG. 3 is a schematic flowchart of another implementation of the power saving method for the processor cluster of the present application. , as shown in FIG. 3, the method may include the following steps 301 to 307:
步骤301,在所述处理器簇中的任一所述处理器核完成被分配的每一非空闲任务时,所述任一处理器核进入空闲状态,以及确定是否是所述处理器簇中最后一个进入所述空闲状态的处理器核;如果是,执行步骤302;否则,执行 步骤307; Step 301, when any one of the processor cores in the processor cluster completes each assigned non-idle task, the any processor core enters an idle state, and determines whether it is in the processor cluster. The last processor core to enter the idle state; if yes, go to step 302; otherwise, go to step 307;
步骤302,所述任一处理器核对每一所述处理器核的共享内存中的特定变量值进行备份。 Step 302, the any processor core backs up the specific variable value in the shared memory of each of the processor cores.
在一些实施例中,该处理器核可以在进入空闲状态之后且在进入睡眠状态之前,将每一所述处理器核的共享内存中的特定变量值进行备份。这样,可以防止在进入睡眠状态之后因这些数据丢失而导致的相关业务中断问题,从而有效提高通信的服务质量。In some embodiments, the processor core may back up certain variable values in the shared memory of each of the processor cores after entering the idle state and before entering the sleep state. In this way, the related service interruption problem caused by the loss of these data after entering the sleep state can be prevented, thereby effectively improving the communication service quality.
步骤303,在对所述共享内存中的特定变量值进行备份之后,所述任一处理器核控制所述共享内存下电,然后进入步骤304。 Step 303 , after backing up the specific variable value in the shared memory, the any processor core controls the shared memory to be powered off, and then proceeds to step 304 .
无论是处理器簇中的哪一个处理器核最后进入空闲状态,均具有控制共享内存下电的能力,如此无需告知主处理器核使它来控制共享内存下电,从而能够更快地使共享内存进入下电状态,进而节约处理器簇的功耗。No matter which processor core in the processor cluster finally enters the idle state, it has the ability to control the power-off of the shared memory, so there is no need to tell the main processor core to control the power-off of the shared memory, so that the shared memory can be powered off faster. The memory enters a powered-down state, thereby saving the power consumption of the processor cluster.
所谓共享内存,是指处理器簇中每一处理器核共同享用的缓存设备。例如,该共享内存为二级缓存(L2 Cache)。The so-called shared memory refers to the cache device shared by each processor core in the processor cluster. For example, the shared memory is the second level cache (L2 Cache).
步骤304,所述任一处理器核控制所述至少两个处理器核的外围设备下电,然后进入步骤305。 Step 304 , the one processor core controls the peripheral devices of the at least two processor cores to power off, and then proceeds to step 305 .
需要说明的是,外围设备可以是所述至少两个处理器核的部分或全部外围设备。也就是说,所述任一处理器核可以控制所述至少两个处理器核的部分或全部外围设备下电。例如,控制串口设备、计时器(timer)和/或接口设备(例如USB)等外围设备下电。It should be noted that the peripheral devices may be part or all of the peripheral devices of the at least two processor cores. That is, the one processor core can control part or all of the peripheral devices of the at least two processor cores to power off. For example, controlling peripheral devices such as serial devices, timers, and/or interface devices (eg, USB) to power off.
步骤305,所述任一处理器核设定所述处理器簇的唤醒时间。 Step 305, the any processor core sets the wake-up time of the processor cluster.
可以理解地,通信终端并不是一直要和网络通信的,而是非连续的。网络在确定没有终端的相关业务时,会告诉终端哪段时间可以进入睡眠状态,即终端周期性地接收网络发送的消息。唤醒时间的设置,是为了终端在睡眠一段时间之后,醒来检测下网络是否呼叫自己。Understandably, the communication terminal does not always communicate with the network, but is discontinuous. When the network determines that there is no related service of the terminal, it will tell the terminal when to enter the sleep state, that is, the terminal periodically receives messages sent by the network. The wake-up time setting is for the terminal to wake up after sleeping for a period of time to detect whether the network calls itself.
需要说明的是,在本申请中,对于步骤302至步骤305的执行顺序不做限定。该处理器核可以先设定处理器簇的唤醒时间,再对特定变量值进行备份然 后将共享内存下电,最后将外围设备下电;当然,该处理器核还可以先将外围设备下电,再设定处理器簇的唤醒时间,最后将特定变量值进行备份后将共享内存下电等等其他执行顺序,此处不再穷举。It should be noted that, in this application, the execution order of step 302 to step 305 is not limited. The processor core can first set the wake-up time of the processor cluster, then back up specific variable values, power off the shared memory, and finally power off the peripheral devices; of course, the processor core can also power off the peripheral devices first , then set the wake-up time of the processor cluster, and finally back up the specific variable values, power off the shared memory, and other execution sequences, which are not exhaustive here.
步骤306,所述任一处理器核在控制所述共享内存下电、控制所述外围设备下电和设定所述处理器簇的唤醒时间之后,进入睡眠状态,并通知PMU,以使PMU检测到每一所述处理器核均进入睡眠状态时,停止给所述处理器簇供电。 Step 306, after controlling the power off of the shared memory, controlling the power off of the peripheral devices, and setting the wake-up time of the processor cluster, the any processor core enters a sleep state, and notifies the PMU, so that the PMU When it is detected that each of the processor cores has entered a sleep state, the power supply to the processor cluster is stopped.
在一些实施例中,PMU可以断开供电单元与处理器簇对应的部件之间的供电电路,从而停止给处理器簇供电。In some embodiments, the PMU may disconnect the power supply circuit between the power supply unit and the components corresponding to the processor cluster, thereby stopping power supply to the processor cluster.
可以理解地,步骤302至步骤306为控制处理器簇进入节电状态的一种实现方式。控制处理器簇进入节电状态可以包括上述步骤302至步骤306的至少之一。例如,控制外围设备下电和/或对共享内存中的特定变量值进行备份之后控制该共享内存下电。Understandably, steps 302 to 306 are an implementation manner of controlling the processor cluster to enter a power saving state. Controlling the processor cluster to enter a power saving state may include at least one of the above steps 302 to 306 . For example, the shared memory is controlled to be powered off after the peripheral device is controlled to be powered off and/or the value of a specific variable in the shared memory is backed up.
该处理器核可以以软件或硬件的方式通知PMU已进入睡眠状态。以软件的方式,例如该处理器核可以通过蓝牙或者其他无线通信方式,向PMU发送通知消息;以硬件的方式,例如该处理器核可以通过执行特定的程序指令向向寄存器写入睡眠比特(sleep bit),从而在寄存器存储了每一处理器核写入的睡眠比特时通知PMU每一处理器核均进入睡眠状态。在一些实施例中,在寄存器中存储了每一处理器核写入的睡眠比特时能够触发控制器置位,PMU通过一个与逻辑检测电路检测到所有处理器核都进入睡眠状态之后,停止给处理器簇供电,例如断开供电单元与处理器簇对应的部件之间的供电电路。The processor core can notify the PMU that it has entered a sleep state in software or hardware. In software, for example, the processor core can send a notification message to the PMU through Bluetooth or other wireless communication methods; in hardware, for example, the processor core can write sleep bits into registers by executing specific program instructions ( sleep bit), thereby informing the PMU that each processor core enters the sleep state when the register stores the sleep bit written by each processor core. In some embodiments, when the sleep bit written by each processor core is stored in the register, the controller can be triggered to set the bit, and the PMU stops the feed after detecting that all the processor cores have entered the sleep state through an AND logic detection circuit. The processor cluster is powered, for example, the power supply circuit between the power supply unit and the components corresponding to the processor cluster is disconnected.
步骤307,所述任一处理器核进入睡眠状态,并通知PMU进入睡眠状态,以使所述PMU在检测到每一所述处理器核均进入睡眠状态时,停止给所述处理器簇供电,以使处理器簇进入节电状态。 Step 307, any of the processor cores enters a sleep state, and notifies the PMU to enter a sleep state, so that the PMU stops supplying power to the processor cluster when it detects that each of the processor cores has entered a sleep state , to put the processor cluster into a power-saving state.
需要说明的是,该处理器核可以在进入睡眠状态之前或者之后通知PMU进入睡眠状态。可以理解地,通知PMU的目的是为了便于PMU及时获知处理器簇中的每一处理器核是否均进入睡眠状态,以便快速断开供电单元与处理器 簇对应的部件之间的供电电路,从而节约功耗。It should be noted that the processor core may notify the PMU to enter the sleep state before or after entering the sleep state. Understandably, the purpose of informing the PMU is to facilitate the PMU to know in time whether each processor core in the processor cluster has entered the sleep state, so as to quickly disconnect the power supply circuit between the power supply unit and the components corresponding to the processor cluster, thereby Save power consumption.
在一些实施例中,处理器核可以向寄存器写入睡眠比特;其中,所述寄存器用于在存储有每一所述处理器核写入的睡眠比特时,通知所述PMU每一所述处理器核均进入睡眠状态。在硬件实现时,当寄存器中存储了每一处理器核写入的睡眠比特时,控制器就会置位,从而在所述PMU通过与逻辑检测电路检测到所述控制器置位时,确定每一所述处理器核均进入睡眠状态。如此,实现通知PMU进入睡眠状态。In some embodiments, a processor core may write sleep bits to a register; wherein the register is used to notify the PMU of each of the processing when the sleep bits written by each of the processor cores are stored The cores are in sleep state. In hardware implementation, when the sleep bit written by each processor core is stored in the register, the controller will be set, so that when the PMU detects that the controller is set through the AND logic detection circuit, it determines Each of the processor cores enters a sleep state. As such, the implementation notifies the PMU to go to sleep.
可以理解地,在本申请中,通过硬件方式通知PMU处理器核进入睡眠状态,这样可以实现快速通知,使得PMU更加及时断开供电电路,从而节约功耗。It can be understood that, in the present application, the PMU processor core is notified by hardware to enter the sleep state, so that a quick notification can be realized, so that the PMU can disconnect the power supply circuit in a more timely manner, thereby saving power consumption.
在实际应用中,调制解调器系统的软件使用一个操作系统(Operating System,OS)对处理器簇中的每一处理器核统一调度,由操作系统分配任务(task)到不同的处理器核上。软件功耗管理方案在系统中确定一个处理器核作为主处理器核,在主处理器核上创建一个空闲任务(idle task)。该主处理器核在其他的处理器核都进入空闲状态后,进入睡眠状态。也就是说,主处理器核无论在何时进入空闲状态的,都需要最后一个进入睡眠状态,在进入空闲状态之后且在进入睡眠状态之前,如果其他所有处理器核都进入睡眠状态,则负责管理整个处理器簇的下电过程,包括控制二级缓存(L2 Cache)和外围设备的下电,以及系统变量备份等;其中二级缓存即为处理器簇中所有处理器核的共享内存。In practical applications, the software of the modem system uses an operating system (Operating System, OS) to uniformly schedule each processor core in the processor cluster, and the operating system assigns tasks to different processor cores. The software power management scheme determines a processor core in the system as the main processor core, and creates an idle task on the main processor core. The main processor core enters a sleep state after all other processor cores enter an idle state. That is to say, whenever the main processor core enters the idle state, it needs to be the last one to enter the sleep state. After entering the idle state and before entering the sleep state, if all other processor cores enter the sleep state, they are responsible for Manage the power-off process of the entire processor cluster, including controlling the power-off of the L2 Cache and peripheral devices, and backup of system variables, etc. The L2 cache is the shared memory of all processor cores in the processor cluster.
发明人在研究上述流程的过程中发现:主处理器核作为最后一个处理器核睡眠,要一直处于激活(Active)状态,直到等到其他所有的处理器核都确认回复已经睡眠后才能让自己睡眠,即使主处理器核已经没有任务,处于空闲状态也要等待其他处理器核均已睡眠才能够进入睡眠状态,这就延长了主处理器核的激活时长,从而导致造成电量的浪费。而合理的安排每个处理器核上的任务可以有效解决这样的问题。In the process of researching the above process, the inventor found that: the main processor core, as the last processor core to sleep, must always be in the active (Active) state, until all other processor cores confirm that they have returned to sleep before they can sleep. , even if the main processor core has no tasks, the idle state must wait for other processor cores to sleep before entering the sleep state, which prolongs the activation time of the main processor core, resulting in a waste of power. Reasonable arrangement of tasks on each processor core can effectively solve such problems.
基于此,下面将说明本申请在一个实际的应用场景中的示例性应用。Based on this, an exemplary application of the present application in a practical application scenario will be described below.
简单来讲,在本技术方案中,通过合理安排各个处理器核上的任务,能够避免主处理器核不必要的等待时间。在本申请中,将处理器簇的下电过程由一个主处理器核集中管理的方案,改成分布式的下电管理,而不再区分主处理器核和其他处理器核。如图4所示,在每个处理器核(即core0至core3)上创建一个空闲任务(idle task),每个处理器核在执行完每一非空闲任务之后,进入空闲状态,在执行空闲任务时都可以决定是自己单独进入睡眠状态或者还是处理器簇对应的部件整体下电,判定是自己单独睡眠还是处理器簇对应的部件整体下电的条件是:判断自己是否是最后一个进入空闲状态的处理器核;如果是最后一个进入空闲状态的处理器核,则该处理器核备份系统需要保存的变量、关掉L2缓存(即二级缓存)和外围设备,设定处理器簇的唤醒时间,然后让自己睡眠,这时候硬件PMU单元检测到所有的处理器核都已经睡眠就让处理器簇对应的部件整体下电;如果自己不是最后一个进入空闲状态的处理器核,则只让自己进入睡眠状态,控制处理器簇对应的部件整体下电的工作交给其他还没有睡眠的处理器核来执行。To put it simply, in this technical solution, by reasonably arranging tasks on each processor core, unnecessary waiting time of the main processor core can be avoided. In this application, the solution in which the power-off process of the processor cluster is centrally managed by one main processor core is changed to distributed power-off management, and the main processor core and other processor cores are no longer distinguished. As shown in Figure 4, an idle task (idle task) is created on each processor core (ie core0 to core3). During the task, you can decide whether to go to sleep alone or to power off the components corresponding to the processor cluster as a whole. The conditions for determining whether to sleep alone or the components corresponding to the processor cluster are powered off as a whole are: to determine whether you are the last to enter the idle state. If it is the last processor core to enter the idle state, the processor core backs up the variables that the system needs to save, turns off the L2 cache (ie the second level cache) and peripheral devices, and sets the processor cluster's Wake up time, and then put yourself to sleep. At this time, the hardware PMU unit detects that all processor cores have been sleeping, and powers off the corresponding components of the processor cluster as a whole; if you are not the last processor core to enter the idle state, only Put yourself into a sleep state, and hand off the work of controlling the overall power-off of the components corresponding to the processor cluster to other processor cores that have not yet been sleeping.
从图4所示的流程可以看出,对于多核处理器的软件电源管理改进为分布式管理,把由主处理器核集中管理处理器簇对应的部件下电过程改为每个处理器核都可按需处理,这样每个处理器核没有激活的任务就可以进入睡眠状态,这样就不存在一个处理器核处于不必要的等待状态,可以更有效的节约电量。As can be seen from the process shown in Figure 4, the software power management of multi-core processors is improved to distributed management, and the power-off process of the components corresponding to the processor cluster is centrally managed by the main processor core to each processor core. It can be processed on demand, so that tasks that are not activated by each processor core can enter a sleep state, so that there is no unnecessary waiting state for a processor core, which can save power more effectively.
在本申请中,能够使多核系统在睡眠时让处理器簇更快的进入睡眠状态,避免不必要的等待时间。通过改变操作系统的任务分配,把电源管理功能分布到每一个处理器核上,从而降低系统待机功耗,节约电量。In the present application, the multi-core system can make the processor cluster enter the sleep state faster when it is sleeping, so as to avoid unnecessary waiting time. By changing the task distribution of the operating system, the power management function is distributed to each processor core, thereby reducing the standby power consumption of the system and saving power.
通过对软件电源管理方案的改进,由集中式管理改为分布式管理,从而更好的适应多核系统的电源控制,降低系统待机功耗。Through the improvement of the software power management scheme, the centralized management is changed to the distributed management, so as to better adapt to the power control of the multi-core system and reduce the standby power consumption of the system.
基于前述的实施例,本申请提供一种处理装置,该处理装置包括所包括的各模块、以及各模块所包括的各单元;在实施的过程中,处理装置可以为中央 处理器(CPU)、微处理器(MPU)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)或图形处理器(GPU)等。Based on the foregoing embodiments, the present application provides a processing device, the processing device includes each module included and each unit included in each module; in the process of implementation, the processing device may be a central processing unit (CPU), Microprocessor (MPU), Digital Signal Processor (DSP), Field Programmable Gate Array (FPGA) or Graphics Processing Unit (GPU), etc.
图5为本申请处理装置的结构示意图,如图5所示,该处理装置50为处理器簇中的任一处理装置,所述处理装置50包括确定模块501和控制模块502,其中:FIG. 5 is a schematic structural diagram of the processing device of the present application. As shown in FIG. 5 , the processing device 50 is any processing device in the processor cluster, and the processing device 50 includes a determination module 501 and a control module 502, wherein:
确定模块501,用于在完成被分配的每一非空闲任务时,进入空闲状态,确定是否是所述处理器簇中最后一个进入所述空闲状态的处理装置;A determination module 501, configured to enter an idle state when completing each assigned non-idle task, and determine whether it is the last processing device in the processor cluster to enter the idle state;
控制模块502,用于如果不是所述处理器簇中最后一个进入所述空闲状态的处理装置,控制处理装置50进入睡眠状态。The control module 502 is configured to control the processing device 50 to enter the sleep state if it is not the last processing device in the processor cluster to enter the idle state.
在一些实施例中,控制模块502,还用于如果是所述处理器簇中最后一个进入所述空闲状态的处理装置,控制所述处理装置50进入睡眠状态,并控制所述处理器簇进入节电状态。In some embodiments, the control module 502 is further configured to, if it is the last processing device in the processor cluster to enter the idle state, control the processing device 50 to enter the sleep state, and control the processor cluster to enter the idle state Power saving state.
在一些实施例中,控制模块502,用于如果是所述处理器簇中最后一个进入所述空闲状态的处理装置,在所述处理装置50进行睡眠状态之前或者之后控制所述处理器簇进入节电状态。In some embodiments, the control module 502 is configured to, if it is the last processing device in the processor cluster to enter the idle state, control the processor cluster to enter the idle state before or after the processing device 50 enters the sleep state Power saving state.
在一些实施例中,处理装置50还包括通知模块,所述通知模块用于如果处理装置50不是所述处理器簇中最后一个进入所述空闲状态的处理装置,通知PMU处理装置50进入睡眠状态,以使所述PMU在检测到每一所述处理装置均进入睡眠状态时,停止给所述处理器簇供电。In some embodiments, the processing device 50 further includes a notification module, the notification module is configured to notify the PMU processing device 50 to enter the sleep state if the processing device 50 is not the last processing device in the processor cluster to enter the idle state , so that the PMU stops supplying power to the processor cluster when it detects that each of the processing devices has entered a sleep state.
在一些实施例中,所述通知模块用于向寄存器写入睡眠比特;其中,所述寄存器用于在存储有每一所述处理装置写入的睡眠比特时,通知所述PMU每一所述处理装置均进入睡眠状态。In some embodiments, the notification module is configured to write a sleep bit to a register; wherein the register is configured to notify the PMU of each of the sleep bits written by each of the processing devices when storing the sleep bits written by each of the processing devices. The processing devices all enter the sleep state.
在一些实施例中,控制模块502,用于对每一所述处理装置的共享内存中的特定变量值进行备份;在对所述共享内存中的特定变量值进行备份之后,控制所述共享内存下电。In some embodiments, the control module 502 is configured to back up the specific variable value in the shared memory of each processing device; after backing up the specific variable value in the shared memory, control the shared memory Power off.
在一些实施例中,控制模块502,用于在处理装置50进入空闲状态之后且在进入睡眠状态之前,对每一所述处理装置的共享内存中的特定变量值进行备 份。In some embodiments, the control module 502 is configured to back up certain variable values in the shared memory of each processing device 50 after the processing device 50 enters the idle state and before entering the sleep state.
在一些实施例中,控制模块502,还用于控制每一所述处理装置的外围设备下电。In some embodiments, the control module 502 is further configured to control the power-off of peripheral devices of each of the processing devices.
在一些实施例中,处理装置50还包括通知模块;其中,控制模块502,还用于设定所述处理器簇的唤醒时间;在控制所述共享内存下电、控制所述外围设备下电和/或设定所述处理器簇的唤醒时间之后,触发所述通知模块通知PMU,以使PMU检测到每一所述处理装置均进入睡眠状态时,停止给所述处理器簇供电。In some embodiments, the processing device 50 further includes a notification module; wherein, the control module 502 is further configured to set the wake-up time of the processor cluster; control the shared memory to power off and control the peripheral device to power off And/or after the wake-up time of the processor cluster is set, the notification module is triggered to notify the PMU, so that the PMU stops supplying power to the processor cluster when it detects that each of the processing devices has entered a sleep state.
以上处理装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请处理装置实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。The descriptions of the above processing apparatus embodiments are similar to the descriptions of the above method embodiments, and have similar beneficial effects to the method embodiments. For technical details not disclosed in the embodiments of the processing apparatus of the present application, please refer to the description of the method embodiments of the present application for understanding.
需要说明的是,上述处理装置实施例对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。也可以采用软件和硬件结合的形式实现。It should be noted that, the division of modules in the above embodiments of the processing apparatus is schematic, which is only a logical function division, and other division manners may be used in actual implementation. In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or may exist independently physically, or two or more units may be integrated into one unit. The above-mentioned integrated units may be implemented in the form of hardware, or may be implemented in the form of software functional units. It can also be implemented in the form of a combination of software and hardware.
当上述实施例提供的处理器簇的节电方法中的部分或全部通过软件来实现时,本申请提供一种芯片,所述芯片包括至少两个处理器,任一所述处理器执行计算机程序时实现本申请所述的处理器簇的节电方法。When part or all of the power saving method for a processor cluster provided by the above embodiments is implemented by software, the present application provides a chip, the chip includes at least two processors, and any one of the processors executes a computer program When implementing the power saving method of the processor cluster described in this application.
本申请提供一种电子设备,图6为本申请电子设备的结构示意图,如图6所示,电子设备60包括存储器601和至少两个处理器602,所述存储器存储有可在处理器602上运行的计算机程序,任一所述处理器执行所述程序时实现本申请所述的处理器簇的节电方法。The present application provides an electronic device. FIG. 6 is a schematic structural diagram of the electronic device of the present application. As shown in FIG. 6 , the electronic device 60 includes a memory 601 and at least two processors 602 . The running computer program, when any one of the processors executes the program, implements the power saving method of the processor cluster described in this application.
存储器601配置为存储由处理器602可执行的指令和应用,还可以缓存待处理器602以及电子设备60中各模块待处理或已经处理的数据(例如,图像数据、音频数据、语音通信数据和视频通信数据),可以通过闪存(FLASH)或 随机访问存储器(Random Access Memory,RAM)实现。The memory 601 is configured to store instructions and applications executable by the processor 602, and can also cache data to be processed or processed by the processor 602 and various modules in the electronic device 60 (eg, image data, audio data, voice communication data and Video communication data), which can be realized by flash memory (FLASH) or random access memory (Random Access Memory, RAM).
需要说明的是,电子设备可以是多种多样的。电子设备可以是便携式设备还可以是非便携式设备。例如,电子设备可以是智能手机、笔记本电脑、平板电脑、电子阅读器、电话手表、智能手环或MP3播放器等便携式设备。又如,电子设备还可以是计算机等非便携式设备。It should be noted that electronic devices can be of various kinds. The electronic device may be a portable device or a non-portable device. For example, the electronic device may be a portable device such as a smartphone, a laptop, a tablet, an e-reader, a phone watch, a smart bracelet, or an MP3 player. For another example, the electronic device may also be a non-portable device such as a computer.
需要说明的是,本申请中,如果以软件功能模块的形式实现上述的处理器簇的节电方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得电子设备执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本申请不限制于任何特定的硬件和软件结合。It should be noted that, in the present application, if the above-mentioned power saving method for a processor cluster is implemented in the form of a software function module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. Based on this understanding, the technical solutions of the present application can be embodied in the form of software products in essence or the parts that contribute to related technologies. The computer software products are stored in a storage medium and include several instructions for making the electronic device All or part of the methods described in the various embodiments of the present application are performed. The aforementioned storage medium includes: a U disk, a mobile hard disk, a read only memory (Read Only Memory, ROM), a magnetic disk or an optical disk and other media that can store program codes. As such, the present application is not limited to any particular combination of hardware and software.
本申请提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例提供的处理器簇的节电方法。The present application provides a computer-readable storage medium on which a computer program is stored, and when the computer program is executed by a processor, implements the power saving method for a processor cluster provided by the foregoing embodiments.
本申请提供了一种包含指令的计算机程序产品,当其在计算机等电子设备上运行时,使得电子设备执行上述方法实施例提供的处理器簇的节电方法。The present application provides a computer program product containing instructions, which, when running on an electronic device such as a computer, enables the electronic device to execute the method for saving power of a processor cluster provided by the foregoing method embodiments.
这里需要指出的是:以上芯片、电子设备和存储介质等实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请芯片、电子设备和存储介质等实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。It should be pointed out here that the descriptions of the above embodiments such as chips, electronic devices, and storage media are similar to the descriptions of the above method embodiments, and have similar beneficial effects to the method embodiments. For technical details that are not disclosed in the embodiments of the chip, electronic device, and storage medium of the present application, please refer to the description of the method embodiments of the present application for understanding.
应理解,说明书通篇提到的“一个实施例”或“一实施例”或“一些实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”或“在一些实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各 过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请的实施过程构成任何限定。上述本申请序号仅仅为了描述,不代表实施例的优劣。It is to be understood that reference throughout the specification to "one embodiment" or "an embodiment" or "some embodiments" means that a particular feature, structure or characteristic associated with the embodiment is included in at least one embodiment of the present application. Thus, appearances of "in one embodiment" or "in an embodiment" or "in some embodiments" in various places throughout this specification are not necessarily necessarily referring to the same embodiment. Furthermore, the particular features, structures or characteristics may be combined in any suitable manner in one or more embodiments. It should be understood that, in various embodiments of the present application, the size of the sequence numbers of the above-mentioned processes does not mean the sequence of execution, and the execution sequence of each process should be determined by its functions and internal logic, rather than the implementation of the present application. The process constitutes any qualification. The above serial numbers in the present application are only for description, and do not represent the advantages or disadvantages of the embodiments.
上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述。The above descriptions of the various embodiments tend to emphasize the differences between the various embodiments, and the similarities or similarities can be referred to each other. For the sake of brevity, details are not repeated herein.
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如对象A和/或对象B,可以表示:单独存在对象A,同时存在对象A和对象B,单独存在对象B这三种情况。The term "and/or" in this article is only an association relationship to describe associated objects, indicating that there can be three kinds of relationships, such as object A and/or object B, it can mean that object A exists alone, and object A and object exist simultaneously B, there are three cases of object B alone.
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者设备中还存在另外的相同要素。It should be noted that, herein, the terms "comprising", "comprising" or any other variation thereof are intended to encompass non-exclusive inclusion, such that a process, method, article or device comprising a series of elements includes not only those elements, It also includes other elements not expressly listed or inherent to such a process, method, article or apparatus. Without further limitation, an element qualified by the phrase "comprising a..." does not preclude the presence of additional identical elements in the process, method, article, or device that includes the element.
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其他的方式实现。以上所描述的触摸屏系统的实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个模块或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或模块的间接耦合或通信连接,可以是电性的、机械的或其他形式的。In the several embodiments provided in this application, it should be understood that the disclosed apparatus and method may be implemented in other manners. The embodiments of the touch screen system described above are only illustrative. For example, the division of the modules is only a logical function division. In actual implementation, there may be other division methods, for example, multiple modules or components may be combined , or can be integrated into another system, or some features can be ignored, or not implemented. In addition, the coupling, or direct coupling, or communication connection between the components shown or discussed may be through some interfaces, and the indirect coupling or communication connection of devices or modules may be electrical, mechanical or other forms. of.
上述作为分离部件说明的模块可以是、或也可以不是物理上分开的,作为模块显示的部件可以是、或也可以不是物理模块;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部模块来实现本实施例方案的目的。The modules described above as separate components may or may not be physically separated, and the components shown as modules may or may not be physical modules; they may be located in one place or distributed to multiple network units; Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution in this embodiment.
另外,在本申请各实施例中的各功能模块可以全部集成在一个处理单元中,也可以是各模块分别单独作为一个单元,也可以两个或两个以上模块集成在一个单元中;上述集成的模块既可以采用硬件的形式实现,也可以采用硬件加软 件功能单元的形式实现。In addition, each functional module in each embodiment of the present application may all be integrated in one processing unit, or each module may be separately used as a unit, or two or more modules may be integrated in one unit; the above integration The module can be implemented in the form of hardware, or it can be implemented in the form of hardware plus software functional units.
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。Those of ordinary skill in the art can understand that all or part of the steps of implementing the above method embodiments can be completed by program instructions related to hardware, the aforementioned program can be stored in a computer-readable storage medium, and when the program is executed, the execution includes: The steps of the above method embodiments; and the aforementioned storage medium includes: a removable storage device, a read only memory (Read Only Memory, ROM), a magnetic disk or an optical disk and other media that can store program codes.
或者,本申请上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得电子设备执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。Alternatively, if the above-mentioned integrated units of the present application are implemented in the form of software function modules and sold or used as independent products, they may also be stored in a computer-readable storage medium. Based on this understanding, the technical solutions of the present application can be embodied in the form of software products in essence or the parts that contribute to related technologies. The computer software products are stored in a storage medium and include several instructions for making the electronic device All or part of the methods described in the various embodiments of the present application are performed. The aforementioned storage medium includes various media that can store program codes, such as a removable storage device, a ROM, a magnetic disk, or an optical disk.
本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。The methods disclosed in the several method embodiments provided in this application can be arbitrarily combined under the condition of no conflict to obtain new method embodiments.
本申请所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。The features disclosed in the several product embodiments provided in this application can be combined arbitrarily without conflict to obtain a new product embodiment.
本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。The features disclosed in several method or device embodiments provided in this application can be combined arbitrarily without conflict to obtain new method embodiments or device embodiments.
以上所述,仅为本申请的实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。The above is only the embodiment of the present application, but the protection scope of the present application is not limited to this. Covered within the scope of protection of this application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

Claims (20)

  1. 一种处理器簇的节电方法,所述处理器簇包括至少两个处理器核,所述方法包括:A power saving method for a processor cluster, wherein the processor cluster includes at least two processor cores, and the method includes:
    在所述处理器簇中的任一所述处理器核完成被分配的每一非空闲任务时,所述任一处理器核进入空闲状态;When any one of the processor cores in the processor cluster completes each assigned non-idle task, the any one of the processor cores enters an idle state;
    所述任一处理器核确定是否是所述处理器簇中最后一个进入所述空闲状态的处理器核;The any processor core determines whether it is the last processor core in the processor cluster to enter the idle state;
    如果所述任一处理器核不是所述处理器簇中最后一个进入所述空闲状态的处理器核,所述任一处理器核进入睡眠状态。If the any processor core is not the last processor core in the processor cluster to enter the idle state, the any processor core enters the sleep state.
  2. 根据权利要求1所述的方法,其中,所述方法还包括:The method of claim 1, wherein the method further comprises:
    如果所述任一处理器核是所述处理器簇中最后一个进入所述空闲状态的处理器核,所述任一处理器核进入睡眠状态,并控制所述处理器簇进入节电状态。If the any processor core is the last processor core in the processor cluster to enter the idle state, the any processor core enters a sleep state, and controls the processor cluster to enter a power saving state.
  3. 根据权利要求2所述的方法,其中,所述任一处理器核控制所述处理器簇进入节电状态,包括:The method according to claim 2, wherein controlling the processor cluster to enter a power saving state by any of the processor cores comprises:
    所述任一处理器核在进入睡眠状态之前或者之后控制所述处理器簇进入节电状态。The any processor core controls the processor cluster to enter a power saving state before or after entering the sleep state.
  4. 根据权利要求1所述的方法,其中,如果所述任一处理器核不是所述处理器簇中最后一个进入所述空闲状态的处理器核,所述方法还包括:The method of claim 1, wherein, if the any processor core is not the last processor core in the processor cluster to enter the idle state, the method further comprises:
    所述任一处理器核通知功率管理单元PMU所述任一处理器核进入睡眠状态,以使所述PMU在检测到每一所述处理器核均进入睡眠状态时,停止给所述处理器簇供电。The any processor core notifies the power management unit PMU that the any processor core enters the sleep state, so that the PMU stops sending the processor to the processor when it detects that each of the processor cores has entered the sleep state Cluster power.
  5. 根据权利要求4所述的方法,其中,所述任一处理器核通知PMU所述任一处理器核进入睡眠状态,包括:The method according to claim 4, wherein the any processor core notifies the PMU that the any processor core enters a sleep state, comprising:
    所述任一处理器核向寄存器写入睡眠比特;其中,所述寄存器用于在存储有每一所述处理器核写入的睡眠比特时,通知所述PMU每一所述处理器核均进入睡眠状态。The any of the processor cores writes sleep bits to a register; wherein the register is used to notify the PMU that each of the processor cores has a sleep bit stored with the sleep bits written by each of the processor cores. Go to sleep.
  6. 根据权利要求5所述的方法,其中,所述通知所述PMU每一所述处理器核均进入睡眠状态,包括:The method of claim 5, wherein the informing the PMU that each of the processor cores enters a sleep state comprises:
    当所述寄存器中存储有每一处理器核写入的睡眠比特时控制器置位,从而在所述PMU通过与逻辑检测电路检测到所述控制器置位时,确定每一所述处理器核均进入睡眠状态。When the sleep bit written by each processor core is stored in the register, the controller is set, so that when the PMU detects that the controller is set through the AND logic detection circuit, it is determined that each processor is set The cores go to sleep.
  7. 根据权利要求2或3所述的方法,其中,所述任一处理器核控制所述处理器簇进入节电状态,包括:The method according to claim 2 or 3, wherein the any processor core controls the processor cluster to enter a power saving state, comprising:
    所述任一处理器核控制所述至少两个处理器核的外围设备下电;The any processor core controls peripheral devices of the at least two processor cores to power off;
    和/或,所述任一处理器核对每一所述处理器核的共享内存中的特定变量值进行备份;在对所述共享内存中的特定变量值进行备份之后,所述任一处理器核控制所述共享内存下电。And/or, the any processor core backs up the specific variable value in the shared memory of each processor core; after backing up the specific variable value in the shared memory, the any processor core backs up the specific variable value in the shared memory. The core controls the power down of the shared memory.
  8. 根据权利要求7所述的方法,其中,所述任一处理器核对每一所述处理器核的共享内存中的特定变量值进行备份,包括:The method according to claim 7, wherein the any one of the processor cores backs up the specific variable value in the shared memory of each of the processor cores, comprising:
    所述任一处理器核在进入空闲状态之后且在进入睡眠状态之前,对每一所述处理器核的共享内存中的特定变量值进行备份。The specific variable value in the shared memory of each of the processor cores is backed up by any of the processor cores after entering the idle state and before entering the sleep state.
  9. 根据权利要求7所述的方法,其中,所述任一处理器核控制所述处理器簇进入节电状态,还包括:The method of claim 7, wherein the any processor core controls the processor cluster to enter a power saving state, further comprising:
    所述任一处理器核设定所述处理器簇的唤醒时间;The any processor core sets the wake-up time of the processor cluster;
    所述任一处理器核在控制所述共享内存下电、控制所述至少两个处理器核的外围设备下电和/或设定所述处理器簇的唤醒时间之后,通知PMU,以使PMU检测到每一所述处理器核均进入睡眠状态时,停止给所述处理器簇供电。After controlling the power-off of the shared memory, controlling the power-off of peripheral devices of the at least two processor cores, and/or setting the wake-up time of the processor cluster, the any processor core notifies the PMU to enable the When the PMU detects that each of the processor cores has entered a sleep state, it stops supplying power to the processor cluster.
  10. 根据权利要求9所述的方法,其中,所述停止给所述处理器簇供电,包括:断开供电单元与所述处理器簇对应的部件之间的供电电路。The method according to claim 9, wherein the stopping of supplying power to the processor cluster comprises: disconnecting a power supply circuit between a power supply unit and a component corresponding to the processor cluster.
  11. 一种处理装置,所述处理装置为处理器簇中的任一处理装置,所述处理装置,包括:A processing device, the processing device is any processing device in a processor cluster, and the processing device includes:
    确定模块,用于在完成被分配的每一非空闲任务时,进入空闲状态,确定是否是所述处理器簇中最后一个进入所述空闲状态的处理装置;a determining module, configured to enter an idle state when completing each assigned non-idle task, and determine whether it is the last processing device in the processor cluster to enter the idle state;
    控制模块,用于如果不是所述处理器簇中最后一个进入所述空闲状态的处理装置,控制所述处理装置进入睡眠状态。A control module, configured to control the processing device to enter a sleep state if it is not the last processing device in the processor cluster to enter the idle state.
  12. 根据权利要求11所述的处理装置,其中,所述控制模块,还用于如果是所述处理器簇中最后一个进入所述空闲状态的处理装置,控制所述处理装置进入睡眠状态,并控制所述处理器簇进入节电状态。The processing device according to claim 11, wherein the control module is further configured to control the processing device to enter the sleep state if it is the last processing device in the processor cluster to enter the idle state, and control the processing device to enter the sleep state. The processor cluster enters a power saving state.
  13. 根据权利要求12所述的处理装置,其中,所述控制模块,用于如果是所述处理器簇中最后一个进入所述空闲状态的处理装置,在所述处理装置进入睡眠状态之前或者之后控制所述处理器簇进入节电状态。The processing device according to claim 12, wherein the control module is configured to control the processing device before or after the processing device enters the sleep state if it is the last processing device in the processor cluster to enter the idle state The processor cluster enters a power saving state.
  14. 根据权利要求12或13所述的处理装置,其中,所述控制模块,用于:对每一所述处理装置的共享内存中的特定变量值进行备份;在对所述共享内存中的特定变量值进行备份之后,控制所述共享内存下电;或者,还用于控制每一所述处理装置的外围设备下电。The processing device according to claim 12 or 13, wherein the control module is configured to: back up specific variable values in the shared memory of each of the processing devices; After the values are backed up, the shared memory is controlled to be powered off; or, it is also used to control the peripheral devices of each of the processing devices to be powered off.
  15. 根据权利要求14所述的处理装置,其中,还包括通知模块;The processing device according to claim 14, further comprising a notification module;
    所述控制模块,还用于:设定所述处理器簇的唤醒时间;在控制所述共享内存下电、控制所述外围设备下电和/或设定所述处理器簇的唤醒时间之后,触发所述通知模块通知PMU,以使PMU检测到每一所述处理装置均进入睡眠状态时,停止给所述处理器簇供电。The control module is further configured to: set the wake-up time of the processor cluster; after controlling the power-off of the shared memory, controlling the power-off of the peripheral device and/or setting the wake-up time of the processor cluster , triggering the notification module to notify the PMU, so that the PMU stops supplying power to the processor cluster when it detects that each of the processing devices has entered a sleep state.
  16. 根据权利要求11所述的处理装置,其中,所述处理装置还包括通知模块,用于如果所述处理装置不是所述处理器簇中最后一个进入所述空闲状态的的处理装置,通知功率管理单元PMU所述处理装置进入睡眠状态,以使所述PMU在检测到每一所述处理装置均进入睡眠状态时,停止给所述处理器簇供电。The processing device of claim 11, wherein the processing device further comprises a notification module for notifying power management if the processing device is not the last processing device in the processor cluster to enter the idle state The unit PMU puts the processing devices into a sleep state, so that the PMU stops supplying power to the processor cluster when it detects that each of the processing devices has entered a sleep state.
  17. 根据权利要求16所述的处理装置,其中,所述通知模块,用于向寄存器写入睡眠比特;其中,所述寄存器用于在存储有每一所述处理装置写入的睡眠比特时,通知所述PMU每一所述处理装置均进入睡眠状态。The processing device according to claim 16, wherein the notification module is configured to write a sleep bit into a register; wherein the register is configured to notify the register when the sleep bit written by each processing device is stored. The PMU enters a sleep state for each of the processing devices.
  18. 一种芯片,所述芯片包括至少两个处理器,任一所述处理器执行计算机程序时实现如权利要求1至10任一项所述的方法。A chip, the chip includes at least two processors, and any one of the processors implements the method according to any one of claims 1 to 10 when executing a computer program.
  19. 一种电子设备,包括存储器和至少两个处理器,所述存储器存储有可在处理器上运行的计算机程序,任一所述处理器执行所述程序时实现如权利要求1至10任一项所述的方法。An electronic device, comprising a memory and at least two processors, the memory stores a computer program that can be run on the processors, and any one of the processors executing the program implements any one of claims 1 to 10 the method described.
  20. 一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如权利要求1至10任一项所述的方法。A computer-readable storage medium having a computer program stored thereon, the computer program implementing the method according to any one of claims 1 to 10 when executed by a processor.
PCT/CN2021/109332 2020-09-24 2021-07-29 Power saving method and apparatus for core cluster, and chip, device and storage medium WO2022062646A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202011019751.XA CN112114651B (en) 2020-09-24 2020-09-24 Power saving method and device for processor cluster, chip, equipment and storage medium
CN202011019751.X 2020-09-24

Publications (1)

Publication Number Publication Date
WO2022062646A1 true WO2022062646A1 (en) 2022-03-31

Family

ID=73800632

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/109332 WO2022062646A1 (en) 2020-09-24 2021-07-29 Power saving method and apparatus for core cluster, and chip, device and storage medium

Country Status (2)

Country Link
CN (1) CN112114651B (en)
WO (1) WO2022062646A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112114651B (en) * 2020-09-24 2022-08-16 哲库科技(北京)有限公司 Power saving method and device for processor cluster, chip, equipment and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101539797A (en) * 2008-03-18 2009-09-23 联芯科技有限公司 Method, system and device for controlling dynamic clock and power supply
US20090254901A1 (en) * 2008-04-08 2009-10-08 Broadcom Corp. Systems and methods for using operating system (os) virtualisation for minimizing power consumption in mobile phones
CN111077976A (en) * 2018-10-18 2020-04-28 珠海全志科技股份有限公司 Method for realizing idle state low power consumption mode of multi-core processor and processor
CN112114651A (en) * 2020-09-24 2020-12-22 哲库科技(北京)有限公司 Power saving method and device for processor cluster, chip, equipment and storage medium

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102193826B (en) * 2011-05-24 2012-12-19 哈尔滨工程大学 Method for high-efficiency task scheduling of heterogeneous multi-core processor
US9360918B2 (en) * 2012-12-21 2016-06-07 Advanced Micro Devices, Inc. Power control for multi-core data processor
US9760158B2 (en) * 2014-06-06 2017-09-12 Intel Corporation Forcing a processor into a low power state
US9891695B2 (en) * 2015-06-26 2018-02-13 Intel Corporation Flushing and restoring core memory content to external memory
CN105608049A (en) * 2015-12-23 2016-05-25 魅族科技(中国)有限公司 Method and device for controlling CPU of intelligent terminal
CN106681472B (en) * 2016-10-20 2019-08-23 南方电网科学研究院有限责任公司 Heterogeneous multi-nucleus processor power consumption control apparatus and its power consumption control method
CN110989820A (en) * 2019-11-29 2020-04-10 上海庆科信息技术有限公司 Method and device for controlling power consumption of processor, processor and electronic device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101539797A (en) * 2008-03-18 2009-09-23 联芯科技有限公司 Method, system and device for controlling dynamic clock and power supply
US20090254901A1 (en) * 2008-04-08 2009-10-08 Broadcom Corp. Systems and methods for using operating system (os) virtualisation for minimizing power consumption in mobile phones
CN111077976A (en) * 2018-10-18 2020-04-28 珠海全志科技股份有限公司 Method for realizing idle state low power consumption mode of multi-core processor and processor
CN112114651A (en) * 2020-09-24 2020-12-22 哲库科技(北京)有限公司 Power saving method and device for processor cluster, chip, equipment and storage medium

Also Published As

Publication number Publication date
CN112114651B (en) 2022-08-16
CN112114651A (en) 2020-12-22

Similar Documents

Publication Publication Date Title
US8977880B2 (en) Method for managing power supply of multi-core processor system involves powering off main and slave cores when master bus is in idle state
US6711691B1 (en) Power management for computer systems
US8443216B2 (en) Hardware automatic performance state transitions in system on processor sleep and wake events
US20140149770A1 (en) Low-power states for a computer system with integrated baseband
US20110145616A1 (en) System and method for controlling central processing unit power in a virtualized system
JP5773288B2 (en) Wake-up method, hot-swap method, and device based on high-speed interchip HSIC interface
US20070005995A1 (en) Power management system for computing platform
WO2007078628A2 (en) Method and apparatus for providing for detecting processor state transitions
US10394307B2 (en) Information processing apparatus, information processing method, and program
US9329658B2 (en) Block-level sleep logic
US10564708B2 (en) Opportunistic waking of an application processor
TW201643607A (en) Methods and systems for coordination of operating states amongst multiple SOCs within a computing device
WO2013003255A2 (en) Processor core with higher performance burst operation with lower power dissipation sustained workload mode
US6694442B2 (en) Method for saving power in a computer by idling system controller and reducing frequency of host clock signal used by system controller
US20140013140A1 (en) Information processing apparatus and computer program product
WO2016043899A1 (en) Technologies for collaborative hardware and software scenario-based power management
JP2013222321A (en) Memory control apparatus, memory control method, information processing apparatus and program
WO2022062646A1 (en) Power saving method and apparatus for core cluster, and chip, device and storage medium
KR20220122670A (en) Long Idle State Systems and Methods
CN111913669A (en) SSD power-down speed improving method and device, computer equipment and storage medium
KR20140026308A (en) Apparatus and method for managing power in multi-core system
CN111176408B (en) SoC low-power-consumption processing method and device
WO2013159464A1 (en) Multiple core processor clock control device and control method
US20140189400A1 (en) Processing system and associated method
US20230114256A1 (en) Feature modification in standby mode based on power source capacity

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21871024

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21871024

Country of ref document: EP

Kind code of ref document: A1