Chip, power consumption control method and device, electronic equipment and storage medium

By introducing statistical and control units into the chip, the power-on and power-off status of the memory data channel is dynamically adjusted, solving the problem of increased memory power consumption and achieving power control and energy-saving effects in different business scenarios.

CN119882982BActive Publication Date: 2026-05-01BEIJING X RING TECHNOLOGY CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
BEIJING X RING TECHNOLOGY CO LTD
Filing Date
2024-12-26
Publication Date
2026-05-01

AI Technical Summary

Technical Problem

As the memory capacity of electronic devices increases, the proportion of memory power consumption in the overall power consumption gradually rises, making it difficult to effectively reduce the power consumption of electronic devices. In particular, in mobile devices with low power consumption requirements, existing technologies struggle to achieve effective power consumption control.

Method used

By introducing statistical and control units into the chip, the power-on and power-off status of the memory's data channels can be dynamically adjusted. Based on the frequency requirements of the main control unit and the actual frequency, the target data channel that needs power supply control can be determined from multiple data channels, thereby achieving dynamic control of each data channel of the memory.

Benefits of technology

It enables dynamic management of memory data channels under different business scenarios, meets power consumption control requirements, reduces the power consumption of electronic devices, and achieves the goal of saving power.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119882982B_ABST
    Figure CN119882982B_ABST
Patent Text Reader

Abstract

The application provides a chip, a power consumption control method and device, electronic equipment and a storage medium. The method comprises the following steps: acquiring frequency data of a memory required by a master control unit and a first actual frequency of the memory by a statistical unit; and determining a first target data channel which needs to be controlled in power supply from a plurality of data channels of the memory. By determining the first target data channel which needs to be controlled in power supply, dynamic control of power-on and power-off of each data channel of the memory is realized, and the power consumption control requirement in each service scenario is met.
Need to check novelty before this filing date? Find Prior Art

Description

Chips, power consumption control methods, devices, electronic devices and storage media Technical Field

[0001] This application relates to the field of data processing technology, and in particular to a chip, a power consumption control method, an apparatus, an electronic device, and a storage medium. Background Technology

[0002] Currently, electronic devices are becoming increasingly sophisticated, and the capacity of their memory is also increasing. Data shows that memory power consumption accounts for a gradually increasing proportion of the total power consumption of electronic devices. Therefore, optimizing memory power consumption is crucial for reducing the overall power consumption of electronic devices and improving system performance. Summary of the Invention

[0003] This application aims to at least partially address one of the technical problems in the related art.

[0004] To this end, this application proposes a chip, a power consumption control method, a device, an electronic device, and a storage medium to dynamically adjust the power-on and power-off status of the memory's data channel, thereby meeting the needs of business scenarios and power consumption control, and achieving the goal of power saving.

[0005] One embodiment of this application proposes a chip, including: a statistical unit and a control unit;

[0006] The statistical unit is used to determine the target frequency data of the memory required by the main control unit based on the received frequency data of the memory required by the main control unit.

[0007] The control unit, connected to the statistics unit, is used to determine the first target data channel that needs power supply control from multiple data channels of the memory based on the target frequency data of the memory required by the main control unit and the first actual frequency of the memory.

[0008] Another aspect of this application proposes a power consumption control method, including:

[0009] Based on the received memory frequency data required by the main control unit, determine the target frequency data of the memory required by the main control unit;

[0010] Based on the target frequency data of the memory required by the main control unit and the first actual frequency of the memory, the first target data channel that needs to be controlled by power supply is determined from the multiple data channels of the memory.

[0011] Another embodiment of this application provides an electronic device including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, it implements the method described in the foregoing aspect.

[0012] Another embodiment of this application proposes a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the method described in the foregoing aspect.

[0013] Another embodiment of this application proposes a computer program product having a computer program stored thereon, which, when executed by a processor, implements the method described in the foregoing aspect.

[0014] This application proposes a chip, power consumption control method, device, electronic device, and storage medium. By obtaining the memory frequency data required by the main control unit and the first actual frequency of the memory through a statistical unit, the first target data channel that needs to be controlled for power supply is determined from multiple data channels of the memory. By determining the first target data channel to be controlled for power supply, the power-on and power-off status of each data channel of the memory can be dynamically controlled, thereby meeting the power consumption control requirements of various business scenarios.

[0015] Additional aspects and advantages of this application will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of this application. Attached Figure Description

[0016] The above and / or additional aspects and advantages of this application will become apparent and readily understood from the following description of the embodiments taken in conjunction with the accompanying drawings, wherein:

[0017] Figure 1A is a schematic diagram of the memory access architecture in related technologies;

[0018] Figure 1B is a schematic diagram of the structure of a chip provided in an embodiment of this application;

[0019] Figure 2 is a flowchart illustrating a power consumption control method provided in an embodiment of this application;

[0020] Figure 3 is a flowchart illustrating another power consumption control method provided in an embodiment of this application;

[0021] Figure 4 is a schematic diagram of another power consumption control scenario provided by an embodiment of this application;

[0022] Figure 5 is a flowchart illustrating another power consumption control method provided in an embodiment of this application;

[0023] Figure 6 is a block diagram of an electronic device provided in an embodiment of this application. Detailed Implementation

[0024] The embodiments of this application are described in detail below. Examples of these embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and intended to explain this application, and should not be construed as limiting this application.

[0025] In electronic devices, memory with multiple data channels is widely used because it can provide multiple parallel data transmission paths to improve data transmission rate and data processing efficiency. Figure 1A is a schematic diagram of the memory access architecture in related technologies. As shown in Figure 1A, there are multiple master control units, named master0, master1, master2, and master3. master0, master1, master2, and master3 synchronously send memory access information to the chip via interrupts. By parsing the memory access information, the chip determines the data channel to access the memory from the four data channels: channel0, channel1, channel2, and channel3. If multiple data channels are always open, the device power consumption cannot be reduced. For mobile devices with high low-power requirements, such as smartphones and smart wearable devices, effective power consumption control is necessary.

[0026] To address this, this application proposes a chip comprising a statistical unit and a control unit. The statistical unit acquires the memory frequency data required by the main control unit and the first actual frequency of the memory. It then determines the first target data channel requiring power supply control from multiple data channels of the memory. Therefore, by determining the first target data channel to be controlled by power supply, dynamic control of the power-on and power-off status of each data channel of the memory is achieved, thus meeting the power consumption control requirements of various business scenarios.

[0027] The following description, with reference to the accompanying drawings, describes a chip, power consumption control method, apparatus, electronic device, and storage medium according to embodiments of this application.

[0028] Figure 1B is a schematic diagram of a chip structure provided in an embodiment of this application. As shown in Figure 1B, the chip includes a statistical unit 101 and a control unit 102.

[0029] The chip can be a Memory Management Unit (MMU) or a System Memory Management Unit (SMMU), etc., which will not be listed here.

[0030] The statistics unit 101 is used to determine the target frequency data of the memory required by the main control unit based on the received frequency data of the memory required by the main control unit.

[0031] The master control unit is the bus master unit. As an example, the master control unit includes at least one of the following: a Neural Processing Unit (NPU), a Vision Processing Unit (VPU), a Graphics Processing Unit (GPU), and a high-priority Advanced CPU.

[0032] In one scenario of this application embodiment, the main control unit determines the required memory frequency data based on the executed services. When the main control unit executes many services, the required memory frequency data is higher; when the main control unit has completed its services, the required memory frequency data is lower. Therefore, the required memory frequency data for each main control unit is sent according to actual needs.

[0033] In one implementation of this application, there is one main control unit, and the frequency data of the memory required by the main control unit is used as the target frequency data of the memory required by the main control unit.

[0034] In another implementation of this application, if there are multiple main control units, the target frequency data of the memory required by each main control unit is determined based on the frequency data of the memory required by each main control unit and the current actual frequency data of the memory.

[0035] The control unit 120, connected to the statistics unit 110, is used to determine the first target data channel that needs to be controlled by power supply from multiple data channels of the memory based on the target frequency data of the memory required by the main control unit and the first actual frequency of the memory, and to send the power supply control information of the first target data channel to the first target data channel that needs to be controlled by power supply.

[0036] Among them, memory refers to memory that uses multiple data channels for data transmission, such as dynamic random access memory (Low-Power Double Data Rate, LPDDR).

[0037] In this embodiment of the application, the target frequency data of the memory required by the main control unit is determined, that is, the target frequency data of the memory to be set based on actual needs. The power supply control includes powering on the data channel, that is, switching from the power-off state to the power-on state; or powering off the data channel, that is, switching from the power-on state to the power-off state.

[0038] The following explains the power supply control situation for different scenarios:

[0039] In the first scenario, if the target frequency is greater than the first actual frequency of the memory, then the actual frequency of the memory needs to be increased to match the business execution requirements of the main control unit. In this case, the first target data channel to be powered on can be determined based on the unpowered data channels among the multiple data channels of the memory.

[0040] In the second scenario, if the target frequency is lower than the first actual frequency of the memory's current operation, then the actual frequency of the memory's operation needs to be reduced to reduce power consumption. In this case, the first target data channel to be powered on can be determined based on the data channels in the memory that are not powered on.

[0041] Power supply control refers to powering on or off the data channel. Power supply control information consists of power-on or power-off commands.

[0042] In one scenario, where there are services to be executed in electronic devices or chips, the entire system has high frequency requirements for LPDDR. By using frequency data, the first target data channel to be powered on is determined, and the power-on command for the first target data channel is sent to the first target data channel via the bus to meet the needs of service execution.

[0043] In another scenario, where there are no pending services in the electronic device or chip, the entire system has a lower frequency requirement for LPDDR. By using the frequency data, the first target data channel to be powered down is determined, and the power-down command for the first target data channel is sent to the first target data channel via the bus to reduce power consumption.

[0044] In the chip of this application embodiment, the frequency data of the memory required by the main control unit and the first actual frequency of the memory are obtained by the statistics unit. The first target data channel that needs to be controlled by power supply is determined from the multiple data channels of the memory. By determining the first target data channel to be controlled by power supply, the power-on and power-off status of each data channel of the memory is dynamically controlled, which meets the power consumption control requirements of various business scenarios.

[0045] Based on the above embodiments, in one implementation of the embodiments of this application, the statistics unit 110 is further configured to:

[0046] The target main control unit is determined based on the frequency data of the memory required by each main control unit;

[0047] Based on the memory frequency data required by the target master control unit, determine the target memory frequency data required by the master control unit. The target frequency data is used to adjust the memory frequency to meet the frequency requirements of multiple master control units.

[0048] The following implementation describes how the target master control unit is determined based on the frequency data of the memory required by each master control unit: In the first implementation of this application, the frequency data of the memory required by each master control unit is compared with the first actual frequency of the memory. Since the frequency data of the memory required by each master control unit is less than the first actual frequency, each master control unit is designated as the target master control unit. The first actual frequency is a frequency value.

[0049] The frequency data can be either a frequency value or a frequency range.

[0050] In this process, when the frequency data is a frequency range, the frequency range of the memory required by each master control unit is compared with the first actual frequency of the memory. Since the upper limit of the frequency range of the memory required by each master control unit is less than the first actual frequency, that is, the frequency adjustment needs of each master control unit are consistent, each master control unit is taken as the target master control unit.

[0051] In this process, when the frequency data is a frequency value, the frequency value required by each main control unit is compared with the first actual frequency of the memory. Since the frequency value required by each main control unit is less than the first actual frequency, meaning the frequency adjustment needs of each main control unit are consistent, each main control unit is designated as the target main control unit. The first actual frequency is the current operating frequency of the memory.

[0052] In the second implementation of this application, the frequency data of the memory required by each main control unit is compared with the first actual frequency of the memory. In response to the fact that the frequency data of the memory required by each main control unit is greater than the first actual frequency, each main control unit is regarded as the target main control unit.

[0053] In this process, when the frequency data is a frequency range, the frequency range of the memory required by each master control unit is compared with the first actual frequency of the memory. Since the lower limit of the frequency range of the memory required by each master control unit is greater than the first actual frequency, that is, the frequency adjustment needs of each master control unit are consistent, each master control unit is taken as the target master control unit.

[0054] In this process, when the frequency data is a frequency value, the frequency value required by each main control unit is compared with the first actual frequency of the memory. Since the frequency value required by each main control unit is greater than the first actual frequency, that is, the frequency adjustment needs of each main control unit are consistent, each main control unit is taken as the target main control unit.

[0055] In the third implementation of this application, the chip can obtain the weight information of the main control unit. This weight information can be sent along with the power data, adjusted based on different service requirements, or it can be a pre-stored value in the chip. The weight information is the identification information of each main control unit. The weight value of each main control unit is determined based on its identification information, indicating its importance in voting. As one implementation, the weight value of each main control unit is determined by querying a pre-defined mapping relationship based on its identification. A higher weight value indicates greater importance of the memory frequency data voted for by that main control unit in the voting process, and vice versa. The weight values ​​of each main control unit can differ in different service scenarios, enabling flexible configuration. For example, in a standby scenario, the weight value of CPU A will be larger, allowing CPU A to send the required frequency data in standby mode and then power down the memory data channel based on that required frequency data, thus entering standby mode and reducing power consumption. One implementation involves comparing the memory frequency range required by each master control unit with the first actual memory frequency. Since the frequency domain data of the memory required by multiple master control units is neither all greater than nor all less than the first actual frequency, a target master control unit is determined from among the multiple master control units based on their weight information. In other words, the memory frequency data required by multiple master control units is not all greater than the first actual frequency, nor is it all less than the first actual frequency. Specifically, the multiple master control units include at least two types of master control units: those requiring memory frequency data greater than the first actual memory frequency, those requiring memory frequency data less than the first actual memory frequency, and those requiring memory frequency data matching the first actual memory frequency. It also includes master control units whose required memory frequency data matches the current first actual memory frequency. It's important to understand that if the first actual frequency falls within the memory frequency range required by each master control unit, then the current first actual memory frequency matches the frequency data that each master control unit wants the memory to be set to, meaning no frequency adjustment is needed, and no power-on or power-off processing of the data channel is required.

[0056] In the case where the frequency data is a frequency range, in response to the fact that the frequency range of the memory required by multiple master control units is not all greater than the first actual frequency and not all less than the first actual frequency, the target master control unit is determined from multiple master control units based on the weight information of multiple master control units.

[0057] As an example, if the frequency ranges of memory required by multiple master control units are neither all greater than nor all less than the first actual frequency, they can be divided into three types of master control units based on the size of the frequency ranges required by each master control unit. For ease of identification, these are referred to as the first master control unit, the second master control unit, and the third master control unit. Specifically, the upper limit of the frequency range required by the first master control unit is less than the first actual frequency; the lower limit of the frequency range required by the second master control unit is greater than the first actual frequency; and the lower limit of the frequency range required by the third master control unit is less than or equal to the first actual frequency, while the upper limit of the frequency range required by the third master control unit is greater than or equal to the first actual frequency. As an example, this explanation uses the case where multiple master control units include both the first and second master control units. For cases where multiple master control units include both the second and third master control units, or vice versa, the principle can be found in the explanations regarding multiple master control units including both the first and second master control units, which will not be repeated in this embodiment.

[0058] In response to the presence of at least one first master control unit and at least one second master control unit among multiple master control units, a first total weight of at least one first master control unit is determined based on the weight of the at least one first master control unit, i.e., the weights of the at least one first master control unit are summed to obtain the first total weight. Similarly, a second total weight of at least one second master control unit is determined, i.e., the weights of the at least one second master control unit are summed to obtain the second total weight.

[0059] Furthermore, based on the comparison results of the first total weight and the second total weight, the target main control unit is determined from at least one first main control unit and at least one second main control unit, improving the accuracy of target main control unit determination and thus improving the accuracy of target frequency data determination for memory. This is illustrated below through three scenarios:

[0060] In the first scenario, in response to the first total weight being greater than the second total weight, at least one first master control unit is designated as the target master control unit. When the first total weight is greater than the second total weight, it indicates that the master control unit requiring a reduction in memory frequency has a higher weight. Therefore, it is considered that a reduction in memory frequency is more appropriate, and at least one first master control unit is designated as the target master control unit. This allows for the subsequent determination of the target memory frequency data required by multiple master control units based on the memory frequency data required by at least one first master control unit, thus improving accuracy.

[0061] In the second scenario, in response to the first total weight being less than the second total weight, at least one second master control unit is designated as the target master control unit. When the first total weight is less than the second total weight, it indicates that the master control unit requiring an increased memory frequency has a higher weight. Therefore, it is considered that the memory frequency should be increased more, and at least one second master control unit is designated as the target master control unit. This allows for the subsequent determination of the target memory frequency data required by multiple master control units based on the memory frequency data required by at least one second master control unit, thus improving accuracy.

[0062] In the third scenario, in response to the first total weight equaling the second total weight, at least one second master control unit is designated as the target master control unit. When the first total weight equals the second total weight, it indicates that the weight of the master control unit requesting an increase in frequency and the weight of the master control unit requesting a decrease in frequency are the same. Therefore, at least one second master control unit is designated as the target master control unit. Since the memory frequency data requested by each second master control unit is relatively large, using at least one second master control unit as the target master control unit ensures that the subsequently determined target memory frequency also meets the memory frequency data required by at least one first master control unit, thus improving the accuracy of determining the required target memory frequency.

[0063] In the case where the frequency data is a frequency value, in response to the fact that the frequency domain values ​​of the memory required by multiple master control units are not all greater than the first actual frequency and are not all less than the first actual frequency, the target master control unit is determined from multiple master control units based on the weight information of multiple master control units.

[0064] As an example, if the frequency domain values ​​of the memory required by multiple control units are neither all greater than nor all less than the first actual frequency, they can be divided into three types of control units based on the magnitude of the frequency values ​​required by each control unit. For ease of identification, these are referred to as the first control unit, the second control unit, and the third control unit. Specifically, the first control unit requires a frequency value less than the first actual frequency, the second control unit requires a frequency value greater than the first actual frequency, and the third control unit requires a frequency value equal to the first actual frequency. Therefore, the multiple control units include at least two types of control units: the first control unit requires a memory setting frequency greater than the first actual frequency, the second control unit requires a memory setting frequency less than the first actual frequency, and the control unit requires a memory setting frequency equal to the first actual frequency. The third control unit also includes control units where the frequency values ​​required for memory setting are all equal to the current first actual frequency of the memory.

[0065] The method for determining the target master control unit in this scenario is the same as the principle for determining the target master control unit mentioned above, and will not be repeated here.

[0066] Specifically, the target frequency data of the memory required by the main control unit is determined based on the frequency data of the memory required by the target main control unit:

[0067] In one implementation of this application, the frequency data includes frequency ranges. The intersection of the frequency ranges of memory required by multiple target main control units is taken, and this intersection is used as the target frequency range for the memory required by the multiple main control units. Specifically, a minimum upper frequency limit is determined from the upper limits of the frequency ranges of memory required by the multiple target main control units, and a maximum lower frequency limit is determined from the lower limits of the frequency ranges of memory required by the multiple target main control units. Based on the determined maximum lower frequency limit and minimum upper frequency limit, the target frequency range for the memory required by the multiple main control units is determined to meet the frequency requirements of the multiple main control units. For example, if there are two target main control units, one target main control unit requires memory with a frequency range of [6400-7200], and the other target main control unit requires memory with a frequency range of [3200-7000], then the determined target frequency range is [6400-7000]. It should be noted that subsequent power-on / off decisions for the data channels can be made based on the target frequency range, or multiple discrete frequency values ​​can be determined based on the target frequency range, and a target frequency value can be determined based on the multiple discrete frequency values, and subsequent power-on / off decisions for the data channels can be made based on the target frequency value.

[0068] In another implementation of this application, the frequency data includes frequency values. Based on the frequency values ​​required by the target main control unit, the maximum frequency value is determined, and the maximum frequency value is used as the target frequency value to meet the frequency requirements of multiple main control units.

[0069] Based on the above embodiments, for power-down control scenarios, as one implementation method, the control unit 120 is also used for:

[0070] The first actual frequency and the target frequency data are compared. In response to the first actual frequency being greater than the target frequency data, the bandwidth of the first data channel in the power-on state is obtained. Based on the difference between the first actual frequency and the target frequency data, the first target data channel to be powered off is determined from the first data channels in the power-on state. As one implementation, based on the bandwidth of the first data channel and a set bandwidth threshold, a second data channel with a bandwidth threshold less than the set bandwidth threshold is determined. Based on the difference between the first actual frequency and the target frequency data, the first target data channel to be powered off is determined from the second data channel.

[0071] The target frequency data can be a target frequency range or a target frequency value. This embodiment uses a target frequency range as an example. The principle is similar for the case where the target frequency data is a target frequency value, and will not be elaborated upon here. As one implementation, the control unit 120 is also used for:

[0072] The first step is to compare the first actual frequency with the target frequency range.

[0073] The second step is to obtain the bandwidth of the first data channel in the power-on state in response to the first actual frequency being greater than the upper limit of the target frequency range.

[0074] In this embodiment, if the first actual frequency is greater than the upper limit of the target frequency range, it indicates that the current actual frequency of the memory is greater than the upper limit of the frequency range that each main control unit needs to set for the memory. This means that the main control unit has a low load and does not need the memory to operate at such a high frequency. Therefore, it is necessary to reduce the memory frequency by powering down the data channels, thereby reducing system power consumption. One implementation method for the power-down strategy of the data channels is to obtain the bandwidth of the first data channels in the power-on state. The bandwidth indicates the amount of data transmitted by each first data channel per unit time. Based on the bandwidth of each first data channel, the amount of data transmitted by each first data channel can be determined.

[0075] The third step is to determine the first target data channel to be powered off from the first data channel that is in the power-on state, based on the difference between the first actual frequency and the upper limit of the target frequency range.

[0076] In one implementation of this application, a second data channel with a bandwidth less than the first data channel is determined based on the bandwidth of the first data channel and a set bandwidth threshold. A first target data channel to be powered down is then determined from the second data channels based on the difference between the first actual frequency and the upper limit of the target frequency range. For example, for every set value difference between the first actual frequency and the upper limit of the target frequency range, such as a set value of 2400MHz, one data channel needs to be powered down. This data channel can be a data channel with a smaller bandwidth among the second data channels. If a data channel with a larger bandwidth needs to be powered down, its bandwidth needs to be transferred to a data channel with a smaller bandwidth. Powering down the data channel with the smaller bandwidth avoids this situation, improves the accuracy of power-down, and reduces power consumption while meeting actual needs.

[0077] In the second implementation of this application, the bandwidths of the first data channels are sorted. Based on the difference between the first actual frequency and the upper limit of the target frequency range, the first data channel with smaller bandwidth is determined from the sorting results. The number of data channels to be powered down can also be determined based on the difference. That is, for every set value difference between the first actual frequency and the upper limit of the target frequency range, such as 2400MHz, one data channel needs to be powered down. If a data channel with a larger bandwidth is powered down, its bandwidth needs to be transferred to the data channel with a smaller bandwidth. By powering down the data channel with the smaller bandwidth, the above situation can be avoided, the accuracy of power-down can be improved, and power consumption can be reduced while meeting actual needs.

[0078] The fourth step is to send the power supply control information of the first target data channel to be powered off to the first target data channel to be powered off.

[0079] As one implementation method, the power supply control information of the first target data channel to be powered down can be sent to the first target data channel to be powered down via a bus, wherein the bus follows the bus protocol (Advanced eXtensible Interface, AXI).

[0080] Based on the above embodiments, as a scenario for power-on control, and as one implementation method, the control unit 120 is further used for:

[0081] In response to data where the first actual frequency is less than the target frequency, the bandwidth of the third data channel in the power-off state is obtained, and the first target data channel to be powered on is determined from the third data channel in the power-off state based on the difference between the first actual frequency and the target frequency data.

[0082] The target frequency data can be a target frequency range or a target frequency value. This embodiment uses a target frequency range as an example. The principle is similar for the case where the target frequency data is a target frequency value, and will not be elaborated upon here. As one implementation, the control unit 120 is also used for:

[0083] The first step is to compare the first actual frequency with the target frequency range.

[0084] The second step is to obtain the bandwidth of the third data channel in the power-down state in response to the first actual frequency being less than the lower limit of the target frequency range.

[0085] In this embodiment, if the first actual frequency is less than the lower limit of the target frequency range, it indicates that the current actual frequency of the memory is less than the lower limit of the frequency range that each main control unit needs to set for the memory. This means that the load on the main control unit is increasing, and the memory needs to operate at a higher frequency. Therefore, it is necessary to increase the memory frequency through the power-on data channel to meet the needs of the actual scenario. As one implementation method for the power-on strategy of the data channel, the bandwidth of the third data channel in the power-off state is obtained. The bandwidth indicates the amount of data transmitted per unit time by each third data channel.

[0086] The third step is to determine the first target data channel to be powered on from the third data channel in the power-off state, based on the difference between the first actual frequency and the lower limit of the target frequency range.

[0087] In one implementation of this application, the difference between the lower limit of the first actual frequency and the target frequency range is compared with a set value. For example, if the set value is 2400MHz, and the difference is n set values, then n data channels to be powered on are randomly determined from the third data channels in the power-off state, and the n data channels to be powered on are used as the first target data channels to be powered on.

[0088] The fourth step is to send the power supply control information of the first target data channel to be powered on to the first target data channel to be powered on.

[0089] In this process, the power supply control information of the first target data channel to be powered on is sent to the first target data channel to be powered on. This can be done by referring to the transmission method of the first target data channel to be powered off in the previous embodiment. The principle is the same, so it will not be repeated here.

[0090] In the case where the target frequency data is the target frequency value, the following electrical scenario will be used as an example for explanation:

[0091] The first step is to compare the first actual frequency with the target frequency value.

[0092] The second step is to obtain the bandwidth of the first data channel in the power-on state in response to the first actual frequency being greater than the target frequency value.

[0093] The third step is to determine the first target data channel to be powered off from the first data channel that is in the power-on state, based on the difference between the first actual frequency and the target frequency value.

[0094] The fourth step is to send the power supply control information of the first target data channel to be powered off to the first target data channel to be powered off.

[0095] For details, please refer to the explanation of the target frequency range in the aforementioned embodiments. The principle is similar and will not be repeated here. The principle is also similar for the power-on scenario, and will not be repeated here.

[0096] Furthermore, when the main control unit needs to perform business processing, it will power on the data channel through voting. After power-on, the main control unit may not immediately send voting data to power off the data channel to reduce power consumption after completing the business. This can lead to situations where the actual memory frequency requirement is low, but the actual memory is running at a higher frequency. To reduce power consumption in a timely manner, the following approach can be used as an implementation method:

[0097] The first step is to periodically obtain the second actual frequency of the memory and the bandwidth of the fourth data channel when it is powered on.

[0098] The second step is to determine the total bandwidth of the fourth data channel, and based on the total bandwidth of the fourth data channel, determine the expected frequency of the memory.

[0099] In this embodiment, there is at least one fourth data channel in the power-on state. The bandwidths of at least one fourth data channel are added together to obtain a sum, which is used as the total bandwidth of at least one fourth data channel. Then, a set frequency mapping relationship is obtained. The frequency mapping relationship stores the mapping relationship between the total bandwidth and frequency of the data channels. According to the frequency mapping relationship, the expected frequency of the memory corresponding to the total bandwidth can be queried and determined. The expected frequency of the memory refers to the frequency set by the memory to meet the data transmission requirements of the total bandwidth corresponding to at least one fourth data channel in the power-on state.

[0100] The third step is to determine the second target data channel to be powered down from the fourth data channel, in response to the memory's expected frequency being lower than the second actual frequency.

[0101] In this application, the expected frequency of the memory and the second actual frequency are compared. If the expected frequency of the memory is less than the second actual frequency, that is, the memory does not need to work at a higher second actual frequency, then the second target data channel to be powered down needs to be determined from the fourth data channel. The determination method can refer to the relevant explanation of the first target data channel to be powered down in the previous embodiment. The principle is the same and will not be repeated here.

[0102] The fourth step is to send the power-down command of the second target data channel to the second target data channel.

[0103] The fourth step can be referred to the relevant explanations in the aforementioned embodiments, as the principle is the same, and will not be repeated here.

[0104] In the chip of this application embodiment, the target frequency data of the memory required by the main control unit is determined according to the frequency data of the memory required by the main control unit and the weight information of the main control unit. According to the target frequency data of the memory required by the main control unit and the first actual frequency of the memory, the first target data channel that needs to be controlled by power supply is determined from multiple data channels of the memory. The power supply control information of the first target data channel is sent to the first target data channel. Based on the frequency data sent by the main control unit, the power-on and power-off status of the memory data channels is dynamically adjusted, which meets the needs of business scenarios and power consumption control, and achieves the purpose of power saving.

[0105] Based on the above embodiments, Figure 2 is a flowchart illustrating a power consumption control method provided in this application embodiment.

[0106] The power consumption control method in this application embodiment is executed by a power consumption control device, which can be disposed in an electronic device or a chip, enabling the electronic device or chip to execute the power consumption control method of this application embodiment. The electronic device can be a mobile terminal, such as a mobile phone, tablet computer, personal digital assistant, wearable device, or other hardware device with various operating systems, touchscreens, and / or displays, etc., and is not limited in this embodiment.

[0107] The chip can be a Memory Management Unit (MMU) or a System Memory Management Unit (SMMU), etc., which will not be listed here.

[0108] As shown in Figure 2, the method may include the following steps:

[0109] Step 201: Determine the target frequency data of the memory required by the main control unit based on the received frequency data of the memory required by the main control unit.

[0110] The master control unit is the bus master unit. As an example, the master control unit includes at least one of the following: a Neural Processing Unit (NPU), a Vision Processing Unit (VPU), a Graphics Processing Unit (GPU), and a high-priority Advanced CPU.

[0111] In one scenario of this application embodiment, the main control unit determines the required memory frequency data based on the executed services. When the main control unit executes many services, the required memory frequency data is higher; when the main control unit has completed its services, the required memory frequency data is lower. Therefore, voting data is sent according to actual needs. As one implementation method, the voting data is initiated via an interrupt, and the voting data includes the memory frequency data required by each main control unit.

[0112] In one implementation of this application, there is one main control unit, and the frequency data of the memory required by the main control unit is used as the target frequency data of the memory required by the main control unit.

[0113] In another implementation of this application, if there are multiple main control units, the target frequency data of the memory required by the main control unit is determined based on the frequency data of the memory required by the main control unit included in the voting data of the main control unit, and the current actual frequency data of the memory.

[0114] Step 202: Based on the target frequency data of the memory required by the main control unit and the first actual frequency of the memory, determine the first target data channel that needs to be controlled by power supply from the multiple data channels of the memory.

[0115] Among them, memory refers to memory that uses multiple data channels for data transmission, such as LPDDR memory.

[0116] In this embodiment, the target frequency data of the memory required by the main control unit is determined, which is the target frequency data that the memory needs to be set based on actual requirements. Power supply control includes powering on the data channel, i.e., switching from a power-off state to a power-on state; or powering off the data channel, i.e., switching from a power-on state to a power-off state. The power supply control scenarios are described below for different situations:

[0117] In the first scenario, if the target frequency data is greater than the first actual frequency currently running in the memory, then it is necessary to increase the actual frequency running in the memory to match the business execution requirements of the main control unit. In this case, the first target data channel to be powered on can be determined based on the data channels that are not powered on among the multiple data channels of the memory.

[0118] In the second scenario, if the target frequency data is less than the first actual frequency currently running in the memory, then it is necessary to reduce the actual frequency running in the memory to reduce power consumption. In this case, the first target data channel to be powered on can be determined based on the data channels in the memory that are not powered on.

[0119] The power supply control information includes power-on commands and power-off commands.

[0120] In one scenario, where there are pending services in electronic devices or chips, the entire system has high frequency requirements for LPDDR. By using the frequency and weight information in the voting data, the first target data channel to be powered on is determined. Then, the power-on command for the first target data channel is sent to the first target data channel through the bus to power on the first target data channel and meet the needs of service execution.

[0121] In another scenario, where there are no pending services in the electronic device or chip, the entire system has a lower frequency requirement for LPDDR. By using the frequency and weight information in the voting data, the first target data channel to be powered down is determined. Then, the power-down command for the first target data channel is sent to the first target data channel through the bus to power down the first target data channel, thereby reducing power consumption.

[0122] It should be noted that the explanations and descriptions of the chip in the foregoing embodiments also apply to this embodiment, as the principle is the same, and will not be repeated here.

[0123] In the power consumption control method of this application embodiment, the frequency data of the memory required by the main control unit and the first actual frequency of the memory are obtained by the statistics unit. The first target data channel that needs to be controlled by power supply is determined from the multiple data channels of the memory. By determining the first target data channel to be controlled by power supply, the power-on and power-off status of each data channel of the memory can be dynamically controlled, thus meeting the power consumption control requirements of various business scenarios.

[0124] Based on the above embodiments, Figure 3 is a flowchart illustrating another power consumption control method provided in this application. As shown in Figure 3, the method includes the following steps:

[0125] Step 301: Determine the target master control unit based on the frequency data of the memory required by each master control unit.

[0126] Step 302: Determine the target frequency data of the memory required by multiple main control units based on the frequency data of the memory required by the target main control unit.

[0127] Step 303: Compare the first actual frequency and the target frequency data.

[0128] Steps 301 to 303 can be referred to the relevant explanations in the foregoing embodiments, as the principles are the same, and will not be repeated here.

[0129] Step 304: In response to data where the first actual frequency is greater than the target frequency, obtain the bandwidth of the first data channel in the power-on state.

[0130] In this embodiment, the target frequency data is described using the target frequency range as an example. For the case where the target frequency data is the target frequency value, please refer to the relevant explanations in the foregoing embodiments. The principle is the same, and it will not be repeated here.

[0131] In this embodiment, if the first actual frequency is greater than the upper limit of the target frequency range, it indicates that the current actual frequency of the memory is greater than the upper limit of the frequency range that each main control unit needs to set for the memory. This means that the main control unit has a low load and does not need the memory to operate at such a high frequency. Therefore, it is necessary to reduce the memory frequency by powering down the data channels, thereby reducing system power consumption. One implementation method for the power-down strategy of the data channels is to obtain the bandwidth of the first data channels in the power-on state. The bandwidth indicates the amount of data transmitted by each first data channel per unit time. Based on the bandwidth of each first data channel, the amount of data transmitted by each first data channel can be determined.

[0132] Step 305: Based on the difference between the first actual frequency and the target frequency data, determine the first target data channel to be powered off from the first data channel that is in the power-on state.

[0133] In one implementation of this application, a second data channel with a bandwidth less than the first data channel is determined based on the bandwidth of the first data channel and a set bandwidth threshold. A first target data channel to be powered down is then determined from the second data channels based on the difference between the first actual frequency and the upper limit of the target frequency range. For example, for every set value difference between the first actual frequency and the upper limit of the target frequency range, such as a set value of 2400MHz, one data channel needs to be powered down. This data channel can be a data channel with a smaller bandwidth among the second data channels. If a data channel with a larger bandwidth needs to be powered down, its bandwidth needs to be transferred to a data channel with a smaller bandwidth. Powering down the data channel with the smaller bandwidth avoids this situation, improves the accuracy of power-down, and reduces power consumption while meeting actual needs.

[0134] In the second implementation of this application, the bandwidths of the first data channels are sorted. Based on the difference between the first actual frequency and the upper limit of the target frequency range, the first data channel with smaller bandwidth is determined from the sorting results. The number of data channels to be powered down can also be determined based on the difference. That is, for every set value difference between the first actual frequency and the upper limit of the target frequency range, such as 2400MHz, one data channel needs to be powered down. If a data channel with a larger bandwidth is powered down, its bandwidth needs to be transferred to the data channel with a smaller bandwidth. By powering down the data channel with the smaller bandwidth, the above situation can be avoided, the accuracy of power-down can be improved, and power consumption can be reduced while meeting actual needs.

[0135] Step 306: Send the power supply control information of the first target data channel to be powered off to the first target data channel to be powered off.

[0136] As an example, there are multiple master control units. Each master control unit synchronously sends memory frequency voting data to the chip via interrupts. This allows the statistics unit in the chip to perform statistics and arbitration based on the voting data sent by the multiple master control units, in order to determine the target data channel that needs to be powered on or off from the four data channels of the memory, namely data channel 0, data channel 1, data channel 2 and data channel 3. Figure 4 is a schematic diagram of a power consumption control scenario provided by an embodiment of this application. As shown in Figure 4, the main control unit is called a master, which includes an ACPU, an NPU, a VPU, and a GPU. The ACPU, NPU, VPU, and GPU synchronously send their respective voting data to the statistics unit via interrupts. The statistics unit determines the target main control units as the NPU and GPU based on the four voting data. Then, based on the memory frequency required by the NPU and GPU, it determines the target frequency data of the memory required by the four main control units. Furthermore, based on the determined target frequency data of the memory and the first actual frequency of the memory, it determines the first target data channel that needs to be powered down from multiple data channels of the memory. For example, in a scenario where the NPU and GPU are not performing business, the first target data channels that need to be powered down are determined to be channel0 and channel2. The power-down commands for channel0 and channel2 are sent to channel0 and channel2 through the bus in Figure 4, so that channel0 and channel2 switch from the power-on state to the power-down state under the control of the power-down command, thereby achieving the purpose of power consumption reduction. The bus follows the bus protocol (Advanced eXtensible Interface, AXI).

[0137] It should be noted that the explanations and descriptions of the chip in the foregoing embodiments also apply to this embodiment, as the principle is the same, and will not be repeated here.

[0138] In the power consumption control method of this application embodiment, voting data on memory frequency sent by the main control unit is received. The voting data includes the memory frequency data required by the main control unit. Based on the memory frequency data required by the main control unit, the target memory frequency data required by the main control unit is determined. Based on the target memory frequency data required by the main control unit and the first actual frequency of the memory, a first target data channel that needs power supply control is determined from multiple data channels of the memory. The power supply control information of the first target data channel is sent to the first target data channel. Based on the voting data of the main control unit, the power-on and power-off status of the memory data channels is dynamically adjusted to meet the needs of business scenarios and power consumption control, thereby achieving the purpose of power saving.

[0139] Based on the above embodiments, this application provides another power consumption control method. Figure 5 is a flowchart illustrating another power consumption control method provided by this application. As shown in Figure 5, the method includes the following steps:

[0140] Step 501: Determine the target master control unit based on the frequency data of the memory required by each master control unit.

[0141] Step 502: Determine the target frequency data of the memory required by multiple main control units based on the frequency data of the memory required by the target main control unit.

[0142] Steps 501 to 502 can be referred to the relevant explanations in the foregoing embodiments, as the principle is the same, and will not be repeated here.

[0143] Step 503: Compare the first actual frequency and the target frequency data.

[0144] Step 504: In response to the first actual frequency being less than the target frequency data, the bandwidth of the third data channel in the power-down state is obtained.

[0145] In this embodiment, the target frequency data is described using the target frequency range as an example. For the case where the target frequency data is the target frequency value, please refer to the relevant explanations in the foregoing embodiments. The principle is the same, and it will not be repeated here.

[0146] In this embodiment, if the first actual frequency is less than the lower limit of the target frequency range, it indicates that the current actual frequency of the memory is less than the lower limit of the frequency range that each main control unit needs to set for the memory. This means that the load on the main control unit has increased, and the memory needs to operate at a higher frequency. Therefore, it is necessary to increase the memory frequency data through the power-on data channel to meet the needs of the actual scenario. As one implementation method for the power-on strategy of the data channel, the bandwidth of the third data channel in the power-off state is obtained. The bandwidth indicates the amount of data transmitted per unit time by each third data channel.

[0147] Step 505: Based on the difference between the first actual frequency and the lower limit of the target frequency range, determine the first target data channel to be powered on from the third data channel in the power-off state.

[0148] In one implementation of this application, the difference between the lower limit of the first actual frequency and the target frequency range is compared with a set value. For example, if the set value is 2400MHz, and the difference is n set values, then n data channels to be powered on are randomly selected from the third data channels in the power-off state, and these n data channels are used as the first target data channels to be powered on.

[0149] Step 506: Send the power supply control information of the first target data channel to be powered on to the first target data channel to be powered on.

[0150] In this process, the power supply control information of the first target data channel to be powered on is sent to the first target data channel to be powered on. This can be done by referring to the transmission method of the first target data channel to be powered off in the previous embodiment. The principle is the same, so it will not be repeated here.

[0151] Step 507: Periodically obtain the second actual frequency of the memory and the bandwidth of the fourth data channel when it is powered on.

[0152] In this embodiment, when the main control unit needs to perform business processing, it will power on the data channel through voting. After powering on, the main control unit may not send voting data to power off the data channel in a timely manner to reduce power consumption after completing the business. This may result in a situation where the actual memory frequency requirement is low, but the actual memory is running at a higher frequency. In order to reduce power consumption in a timely manner, as an implementation method, the second actual frequency of the memory during actual operation and the bandwidth of the fourth data channel in the power-on state can be obtained periodically.

[0153] Step 508: Determine the total bandwidth of the fourth data channel, and determine the expected frequency of the memory based on the total bandwidth of the fourth data channel.

[0154] In this embodiment, there is at least one fourth data channel in the power-on state. The bandwidths of at least one fourth data channel are added together to obtain a sum, which is used as the total bandwidth of at least one fourth data channel. Then, a set frequency mapping relationship is obtained. The frequency mapping relationship stores the mapping relationship between the total bandwidth and frequency of the data channels. According to the frequency mapping relationship, the expected frequency of the memory corresponding to the total bandwidth can be queried and determined. The expected frequency of the memory refers to the frequency set by the memory to meet the data transmission requirements of the total bandwidth corresponding to at least one fourth data channel in the power-on state.

[0155] Step 509: In response to the memory's expected frequency being less than the second actual frequency, determine the second target data channel to be powered down from the fourth data channel.

[0156] In this application, the expected frequency of the memory and the second actual frequency are compared. If the expected frequency of the memory is less than the second actual frequency, that is, the memory does not need to work at a higher second actual frequency, then the second target data channel to be powered down needs to be determined from the fourth data channel. The determination method can refer to the relevant explanation of the first target data channel to be powered down in the previous embodiment. The principle is the same and will not be repeated here.

[0157] Step 510: Send the power-down command of the second target data channel to the second target data channel.

[0158] Step 510 can be explained in the same way as the previous embodiments, and will not be repeated here.

[0159] It should be noted that the explanations and descriptions of the chip in the foregoing embodiments also apply to this embodiment, as the principle is the same, and will not be repeated here.

[0160] In the power consumption control method of this application embodiment, voting data on memory frequency sent by the main control unit is received. The voting data includes the memory frequency data required by the main control unit. Based on the memory frequency data required by the main control unit, the target memory frequency data required by the main control unit is determined. Based on the target memory frequency data required by the main control unit and the first actual frequency of the memory, a first target data channel that needs power supply control is determined from multiple data channels of the memory. The power supply control information of the first target data channel is sent to the first target data channel. Based on the voting data of the main control unit, the power-on and power-off status of the memory data channels is dynamically adjusted to meet the needs of business scenarios and power consumption control, thereby achieving the purpose of power saving.

[0161] To implement the above embodiments, this application also proposes an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, it implements the method described in the foregoing method embodiments.

[0162] To implement the above embodiments, this application also proposes a non-transitory computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the method described in the foregoing method embodiments.

[0163] To implement the above embodiments, this application also proposes a computer program product having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the method described in the foregoing method embodiments.

[0164] Figure 6 is a block diagram of an electronic device provided in an embodiment of this application. For example, the electronic device 800 may be a mobile phone, computer, digital broadcasting terminal, messaging device, game console, tablet device, medical device, fitness equipment, personal digital assistant, etc.

[0165] Referring to FIG6, the electronic device 800 may include one or more of the following components: processing component 802, memory 804, power component 806, multimedia component 808, audio component 810, input / output (I / O) interface 812, sensor component 814, and communication component 816.

[0166] Processing component 802 typically controls the overall operation of electronic device 800, such as operations associated with display, telephone calls, data communication, camera operation, and recording operations. Processing component 802 may include one or more processors 820 to execute instructions to complete all or part of the steps of the methods described above. Furthermore, processing component 802 may include one or more modules to facilitate interaction between processing component 802 and other components. For example, processing component 802 may include a multimedia module to facilitate interaction between multimedia component 808 and processing component 802.

[0167] Memory 804 is configured to store various types of data to support the operation of electronic device 800. Examples of this data include instructions for any application or method operating on electronic device 800, contact data, phonebook data, messages, pictures, videos, etc. Memory 804 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk.

[0168] Power component 806 provides power to various components of electronic device 800. Power component 806 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to electronic device 800.

[0169] Multimedia component 808 includes a screen that provides an output interface between the electronic device 800 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touchscreen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensors may sense not only the boundaries of the touch or swipe action but also the duration and pressure associated with the touch or swipe operation. In some embodiments, multimedia component 808 includes a front-facing camera and / or a rear-facing camera. When the electronic device 800 is in an operating mode, such as a shooting mode or a video mode, the front-facing camera and / or the rear-facing camera may receive external multimedia data. Each front-facing camera and rear-facing camera may be a fixed optical lens system or have focal length and optical zoom capabilities.

[0170] Audio component 810 is configured to output and / or input audio signals. For example, audio component 810 includes a microphone (MIC) configured to receive external audio signals when electronic device 800 is in an operating mode, such as call mode, recording mode, and voice recognition mode. The received audio signals may be further stored in memory 804 or transmitted via communication component 816. In some embodiments, audio component 810 also includes a speaker for outputting audio signals.

[0171] I / O interface 812 provides an interface between processing component 802 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include, but are not limited to, home buttons, volume buttons, power buttons, and lock buttons.

[0172] Sensor assembly 814 includes one or more sensors for providing state assessments of various aspects of electronic device 800. For example, sensor assembly 814 can detect the on / off state of electronic device 800, the relative positioning of components such as the display and keypad of electronic device 800, changes in position of electronic device 800 or a component of electronic device 800, the presence or absence of user contact with electronic device 800, orientation or acceleration / deceleration of electronic device 800, and temperature changes of electronic device 800. Sensor assembly 814 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. Sensor assembly 814 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, sensor assembly 814 may also include an accelerometer, gyroscope, magnetometer, pressure sensor, or temperature sensor.

[0173] Communication component 816 is configured to facilitate wired or wireless communication between electronic device 800 and other devices. Electronic device 800 can access wireless networks based on communication standards, such as WiFi, 4G, or 5G, or combinations thereof. In one exemplary embodiment, communication component 816 receives broadcast signals or broadcast-related information from an external broadcast management system via a broadcast channel. In one exemplary embodiment, communication component 816 also includes a near-field communication (NFC) module to facilitate short-range communication. For example, the NFC module may be implemented based on radio frequency identification (RFID) technology, Infrared Data Association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.

[0174] In an exemplary embodiment, the electronic device 800 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to perform the methods described above.

[0175] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as a memory 804 including instructions, which can be executed by a processor 820 of an electronic device 800 to perform the above-described method. For example, the non-transitory computer-readable storage medium may be a ROM, random access memory (RAM), CD-ROM, magnetic tape, floppy disk, and optical data storage device, etc.

[0176] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., refer to specific features, structures, materials, or characteristics described in connection with that embodiment or example, which are included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples.

[0177] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this application, "multiple" means at least two, such as two, three, etc., unless otherwise explicitly specified.

[0178] Any process or method description in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or more executable instructions for implementing custom logic functions or processes, and the scope of the preferred embodiments of this application includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functions involved, as should be understood by those skilled in the art to which embodiments of this application pertain.

[0179] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (such as a computer-based system, a processor-included system, or other system that can fetch and execute instructions from, an instruction execution system, apparatus, or device). For the purposes of this specification, "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transmit programs for use by, or in conjunction with, an instruction execution system, apparatus, or device. More specific examples (a non-exhaustive list) of computer-readable media include: an electrical connection having one or more wires (electronic device), a portable computer disk drive (magnetic device), random access memory (RAM), read-only memory (ROM), erasable and editable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disc read-only memory (CDROM). Alternatively, the computer-readable medium may be paper or other suitable media on which the program can be printed, since the program can be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, interpreting, or otherwise processing as necessary, and then stored in a computer memory.

[0180] It should be understood that various parts of this application can be implemented using hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented using software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.

[0181] Those skilled in the art will understand that all or part of the steps of the methods in the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, the program includes one or a combination of the steps of the method embodiments.

[0182] Furthermore, the functional units in the various embodiments of this application can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into a module. The integrated module can be implemented in hardware or as a software functional module. If the integrated module is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium.

[0183] The storage medium mentioned above can be a read-only memory, a disk, or an optical disk, etc. Although embodiments of this application have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting this application. Those skilled in the art can make changes, modifications, substitutions, and variations to the above embodiments within the scope of this application.

Claims

1. A chip, characterized in that, include: Statistical units and control units; The statistical unit is used to determine the target frequency data of the memory required by the main control unit based on the received frequency data of the memory required by the main control unit. The control unit, connected to the statistics unit, is used to determine the first target data channel that needs power supply control from multiple data channels of the memory based on the target frequency data of the memory required by the main control unit and the first actual frequency of the memory. The statistical unit is further configured to: compare the frequency data of the memory required by each main control unit with the first actual frequency of the memory to determine the target main control unit; and determine the target frequency data of the memory required by the main control unit based on the frequency data of the memory required by the target main control unit.

2. The chip as described in claim 1, characterized in that, The statistical unit is further configured to: in response to the fact that the frequency data of the memory required by each main control unit is less than the first actual frequency, designate each main control unit as the target main control unit.

3. The chip as described in claim 1, characterized in that, The statistical unit is further configured to: in response to the fact that the frequency data of the memory required by each main control unit is greater than the first actual frequency, designate each main control unit as the target main control unit.

4. The chip as described in claim 1, characterized in that, The statistical unit is further configured to: in response to the fact that the frequency domain data of the memory required by the multiple main control units are not all greater than the first actual frequency and are not all less than the first actual frequency, determine the target main control unit from the multiple main control units according to the weight information of the multiple main control units.

5. The chip according to any one of claims 1-4, characterized in that, The control unit is further configured to: compare the first actual frequency with the target frequency data; and, in response to the first actual frequency being greater than the target frequency data, obtain the bandwidth of the first data channel in the power-on state. Based on the difference between the first actual frequency and the target frequency data, a first target data channel to be powered off is determined from the first data channels that are in the power-on state.

6. The chip as described in claim 5, characterized in that, The control unit is further configured to: determine a second data channel with a bandwidth less than the bandwidth threshold based on the bandwidth of the first data channel and a set bandwidth threshold; and determine a first target data channel to be powered off from the second data channel based on the difference between the first actual frequency and the target frequency data.

7. The chip according to any one of claims 1-4, characterized in that, The control unit is further configured to: compare the first actual frequency with the target frequency data; and, in response to the first actual frequency being less than the target frequency data, obtain the bandwidth of the third data channel in the power-down state. Based on the difference between the first actual frequency and the target frequency data, the first target data channel to be powered on is determined from the third data channel in the power-off state.

8. The chip as described in claim 7, characterized in that, The control unit is further configured to: periodically acquire the second actual frequency of the memory and the bandwidth of the fourth data channel in the power-on state; determine the total bandwidth of the fourth data channel; determine the desired frequency of the memory based on the total bandwidth of the fourth data channel; and, in response to the desired frequency of the memory being less than the second actual frequency, determine a second target data channel to be powered off from the fourth data channel. Send the power-down command of the second target data channel to the second target data channel.

9. A power consumption control method, characterized in that, include: Based on the received memory frequency data required by the main control unit, determine the target frequency data of the memory required by the main control unit; Based on the target frequency data of the memory required by the main control unit and the first actual frequency of the memory, the first target data channel that needs to be controlled by power supply is determined from the multiple data channels of the memory; Determining the target frequency data of the memory required by the main control unit includes: comparing the frequency data of the memory required by each main control unit with the first actual frequency of the memory to determine the target main control unit; Based on the frequency data of the memory required by the target main control unit, determine the target frequency data of the memory required by the main control unit.

10. An electronic device, characterized in that, It includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, it implements the method as described in claim 9.

11. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the method as described in claim 9.

Citation Information

Patent Citations

  • Memory management device and method and electronic equipment

    CN115735172A