A solid state disk power consumption regulation method, device, system and electronic equipment

CN122884337APending Publication Date: 2026-10-09SHANDONG YUNHAI GUOCHUANG CLOUD COMPUTING EQUIP IND INNOVATION CENT CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611339098.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-08-31
Publication Date
2026-10-09

AI Technical Summary

Technical Problem

[0004]本申请提供了一种固态硬盘功耗调控方法、装置、系统及电子设备,以至少解决相关技术中容易造成部分Plane资源闲置或者部分区域负载集中,影响SSD的资源利用率及读写性能的问题

Benefits of technology

[0010]通过本申请,由于通过确定当前平面允许并发量,并将当前平面允许并发量分配至目标通道和对应的目标逻辑单元,实现了功耗的平面级精细分配,以适配并发操作粒度,避免多通道架构的固态硬盘的平面资源发生闲置或过载,实现多通道负载均衡度提升,提高了固态硬盘的资源利用率及读写性能。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122884337A_ABST
    Figure CN122884337A_ABST
Patent Text Reader

Abstract

The application discloses a solid state disk power consumption regulation method, device, system and electronic equipment, and relates to the technical field of solid state disks. The current plane allowed concurrency is determined, and the current plane allowed concurrency is distributed to a target channel and a corresponding target logical unit, so that fine plane-level distribution of power consumption is realized, concurrent operation granularity is adapted, plane resources of the solid state disk with a multi-channel architecture are prevented from being idle or overloaded, multi-channel load balancing is improved, and the resource utilization rate and read-write performance of the solid state disk are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of solid-state drive technology, and in particular to a method, apparatus, system and electronic device for controlling the power consumption of a solid-state drive. Background Technology

[0002] With the increasing demands for storage capacity and data processing performance in solid-state drives (SSDs), multi-channel architectures are widely used in SSDs. Each channel includes multiple logical unit numbers (LUNs), and each LUN includes multiple planes. LUNs can independently process storage commands, and in operations such as asynchronous multi-plane independent read (AIPR), multiple planes within the same LUN can concurrently execute storage operations, making planes an increasingly important resource granularity for practical concurrent processing.

[0003] In related technologies, SSD power consumption control is typically based on LUNs as the basic granularity for resource management and power control, configuring concurrent resources for the SSD according to the number of working LUNs. However, with the application of Plane-level concurrent operations, resource allocation at the LUN granularity is difficult to match with actual Plane-level concurrency requirements, easily leading to some Plane resources being idle or some areas having concentrated loads, affecting the SSD's resource utilization and read / write performance. Summary of the Invention

[0004] This application provides a method, apparatus, system, and electronic device for controlling the power consumption of a solid-state drive (SSD), in order to at least solve the problem in related technologies that easily leads to idle resources in some planes or concentrated load in some areas, affecting the resource utilization and read / write performance of the SSD.

[0005] This application provides a method for controlling the power consumption of a solid-state drive, including: Obtain the resource configuration information of the solid-state drive, the current power consumption control requirements, and the current plane actual concurrency of each working logic unit corresponding to each working channel in the solid-state drive; Based on the current power consumption control requirements and the actual concurrency of each working logic unit corresponding to each working channel in the solid-state drive, determine the allowable concurrency of the current plane; Based on the resource configuration information of the solid-state drive (SSD), the current plane's allowed concurrency is allocated to the target channel and the corresponding target logical unit to regulate the SSD's power consumption.

[0006] This application also provides a solid-state drive power consumption control device, including: The acquisition module is used to acquire the resource configuration information of the solid-state drive, the current power consumption control requirements, and the current plane actual concurrency of each working logic unit corresponding to each working channel in the solid-state drive. The determination module is used to determine the allowable concurrency of the current plane based on the current power consumption control requirements and the actual concurrency of the current plane for each working logic unit corresponding to each working channel in the solid-state drive. The control module is used to allocate the current plane's allowed concurrency to the target channel and the corresponding target logic unit according to the resource configuration information of the solid-state drive, so as to control the power consumption of the solid-state drive.

[0007] This application also provides an electronic device, including: a memory for storing a computer program; and a processor for implementing the steps of any of the above-described solid-state drive power consumption control methods when executing the computer program.

[0008] This application also provides a computer-readable storage medium storing a computer program, wherein when the computer program is executed by a processor, it implements the steps of any of the above-described solid-state drive power consumption control methods.

[0009] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of any of the above-described solid-state drive power consumption control methods.

[0010] By using this application, fine-grained power consumption at the plane level is achieved by determining the current plane's allowed concurrency and allocating the current plane's allowed concurrency to the target channel and the corresponding target logic unit. This adapts to the granularity of concurrent operations, avoids the plane resources of multi-channel solid-state drives from being idle or overloaded, improves the load balancing of multi-channels, and enhances the resource utilization and read / write performance of solid-state drives. Attached Figure Description

[0011] To more clearly illustrate the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0012] Figure 1 This is a schematic diagram of a multi-channel solid-state drive. Figure 2 A schematic flowchart illustrating the solid-state drive power consumption control method provided in this application embodiment; Figure 3 This is a schematic diagram of the solid-state drive power consumption control system provided in the embodiments of this application; Figure 4A schematic diagram of the training process of the preset machine learning algorithm provided in the embodiments of this application; Figure 5 A flowchart illustrating an exemplary solid-state drive power consumption control method provided in this application embodiment; Figure 6 This is a schematic diagram of the solid-state drive power consumption control device provided in the embodiments of this application; Figure 7 This is a schematic diagram of the solid-state drive power consumption control system provided in the embodiments of this application; Figure 8 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation

[0013] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the protection scope of this application.

[0014] It should be noted that, in the description of this application, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. The terms "first," "second," etc., in this application are used to distinguish similar objects and are not used to describe a specific order or sequence.

[0015] like Figure 1 The diagram shows the structure of a multi-channel solid-state drive (SSD). An SSD contains multiple channels (ch), and each channel contains multiple LUNs (Logical Units). A LUN is the smallest unit of independent processing commands for NAND Flash. Each LUN contains multiple planes, which can operate concurrently via AIPR or multi-plane commands. Each plane contains many blocks, which are the smallest units of erase commands. Each block contains many pages, which are the units for reading and writing data. However, the independent hardware interfaces of each channel present numerous challenges to inter-channel coordination.

[0016] Traditional SSD power management methods are usually based on LUN level, which has the following core problems: First, the resource allocation granularity is coarse and cannot adapt to the concurrent operation requirements at the plane level (such as the concurrent granularity of random read after enabling AIPR is plane level), resulting in resource waste or performance bottlenecks; Second, power control lacks dynamic adaptability, and static strategies cannot respond to changes in I / O operation status in real time, which can easily lead to an imbalance between high performance and high power consumption or low power consumption and low performance.

[0017] To address the aforementioned technical problems, this application provides a solid-state drive (SSD) power consumption control method, apparatus, system, and electronic device. By determining the current plane's allowed concurrency and allocating it to target channels and corresponding target logic units, fine-grained power consumption allocation at the plane level is achieved to adapt to the granularity of concurrent operations. This avoids idle or overloaded plane resources in multi-channel SSDs, improves multi-channel load balancing, and enhances the resource utilization and read / write performance of SSDs.

[0018] To enable those skilled in the art to better understand the present application, the present application will be further described in detail below with reference to the accompanying drawings and specific embodiments.

[0019] This application provides a method for controlling the power consumption of a solid-state drive (SSD) with a multi-channel architecture. The implementation subject of this application is an electronic device, such as a server, desktop computer, laptop computer, tablet computer, or other electronic device that can be used to control the power consumption of a multi-channel SSD.

[0020] like Figure 2 The diagram shown is a flowchart illustrating a solid-state drive power consumption control method provided in an embodiment of this application. The method includes: Step 201: Obtain the resource configuration information of the solid-state drive, the current power consumption control requirements, and the current plane actual concurrency of each working logic unit corresponding to each working channel in the solid-state drive.

[0021] The resource configuration information includes a channel working status bitmap of the solid-state drive and a corresponding logical unit working status bitmap for each channel; the channel working status bitmap is used to distinguish between working channels and idle channels; the logical unit working status bitmap is used to distinguish between working logical units and idle logical units.

[0022] It's important to note that a bitmap is a data structure that uses binary bits to represent the states of multiple resources. For example, one binary bit can correspond to one channel; when the bit is in the first state, it indicates that the corresponding channel is in a working state; when the bit is in the second state, it indicates that the corresponding channel is in an idle state. This forms a channel working state bitmap. Similarly, a corresponding logic unit working state bitmap can be set for each channel, where one binary bit corresponds to one logic unit, used to indicate whether the corresponding logic unit is in a working or idle state. Therefore, a channel working state bitmap can be used to distinguish between working channels and idle channels, and a logic unit working state bitmap can be used to distinguish between working logic units and idle logic units.

[0023] Here, a working channel refers to a channel currently participating in SSD data processing or permitted to participate in concurrent processing, while an idle channel refers to a channel not currently participating in corresponding concurrent processing. A working logical unit refers to a LUN in the corresponding working channel that is currently participating in or permitted to participate in concurrent processing, while an idle logical unit is a LUN that is not currently participating in corresponding concurrent processing.

[0024] It should be further explained that the state of the working channel and the working logic unit can be configured by the solid-state drive firmware according to the current storage business, I / O requests and resource configuration, and can be saved through registers for reading during the power consumption control process.

[0025] Furthermore, the current plane actual concurrency is used to represent the number of Plane resources actually participating in concurrent processing at the current moment. For example, for a working LUN, if four Planes are currently participating in read operations simultaneously, then the current plane actual concurrency corresponding to that working LUN can be 4. By obtaining the current plane actual concurrency for each working LUN corresponding to each working channel, the actual Plane-level concurrent resource usage of the SSD can be obtained. Figure 3 The diagram shown is a structural schematic of the solid-state drive power consumption control system provided in this application embodiment. It mainly consists of components such as a sampling module, a calculation module, a monitoring module, and a register module, achieving efficient plane-level control.

[0026] Specifically, the actual concurrency of the current plane can be obtained through the sampling module. The sampling module interacts with the NAND controller according to a pre-configured sampling period and sampling step size to sample the concurrency of the working channels and working LUN planes in the solid-state drive (SSD), and saves the sampling results to the register module. The registers are connected to the SSD firmware via the APB bus. The sampling period determines the time interval between two adjacent samples, and the sampling step size determines the number of concurrent plane resources acquired or counted during a single sampling process. The firmware can configure the sampling period and sampling step size according to the actual operating scenario of the SSD.

[0027] Specifically, in one embodiment, the current operating power consumption of the solid-state drive can be obtained; based on the relationship between the current operating power consumption and a preset lower limit of operating power consumption, and the relationship between the current operating power consumption and a preset upper limit of operating power consumption, the current power consumption control requirements of the solid-state drive can be determined.

[0028] Specifically, the solid-state drive (SSD) may also include a monitoring module. This module acquires physical operating parameters such as current power consumption during SSD operation and provides these parameters to the power consumption control process. The monitoring module consists of sensors for relevant physical parameters built into each channel (CH), connected to the NAND flash memory via chip pins. The module samples power consumption, current, and temperature data for each CH at regular intervals to determine the current operating power consumption of the SSD and saves the results to a register module. The monitoring module can also dynamically adjust limiting coefficients based on power consumption and actual load conditions to avoid consuming firmware resources, enabling faster power consumption adjustments and preventing SSD damage.

[0029] Specifically, if the current operating power consumption of the SSD is lower than the preset lower limit, it indicates that the SSD's current performance is low and its capabilities are not being fully utilized. Therefore, the current power consumption control requirement is to increase the SSD's operating power consumption. If the current operating power consumption of the SSD is higher than the preset upper limit, it indicates that the SSD's operating power consumption is too high and its security is low. Therefore, the current power consumption control requirement is to reduce the SSD's operating power consumption. The purpose of this current power consumption control is to adjust the SSD's operating power consumption to between the preset lower and upper limits.

[0030] Step 202: Determine the allowable concurrency of the current plane based on the current power consumption control requirements and the actual concurrency of the current plane of each working logic unit corresponding to each working channel in the solid-state drive.

[0031] Among them, the current power consumption control requirement is used to characterize the current power consumption adjustment requirement of the solid-state drive; the current plane allowed concurrency is used to represent the number of plane resources that the solid-state drive is allowed to participate in concurrent processing at the same time under the current power consumption control requirement, and is used to describe the upper limit or target resource quota of plane concurrency resources determined according to the current power consumption control requirement; the current plane actual concurrency is used to describe the number of planes that are currently actually participating in concurrent processing.

[0032] Specifically, the current plane-level resource usage of the SSD can be determined based on the actual concurrent load, and the number of planes allowed to participate in concurrent processing can be adjusted in conjunction with current power consumption control requirements. For example, when the current power consumption control requirement is to reduce power consumption, the number of planes allowed to participate in concurrent processing can be reduced, thereby reducing the number of storage resources in a working state at the same time; when the current power consumption control requirement is to improve performance (increase power consumption), the number of planes allowed to participate in concurrent processing can be increased, thereby improving concurrent processing capabilities. Thus, by controlling the number of plane-level concurrent resources, a correlation can be established between SSD performance and power consumption.

[0033] Step 203: Based on the resource configuration information of the solid-state drive, allocate the current plane's allowed concurrency to the target channel and the corresponding target logic unit to regulate the power consumption of the solid-state drive.

[0034] Here, the target channel refers to the channel that actually carries Plane concurrent resources during the current power consumption control process; the target logic unit refers to the logic unit in the target channel that actually carries Plane concurrent resources.

[0035] Specifically, after determining the current plane's allowed concurrency, based on the SSD's resource configuration information, the current plane's allowed concurrency is mapped to specific target channels and target logical units, resulting in a specific Plane-level resource allocation result. Specifically, the target channels participating in power consumption control and their corresponding target logical units can be determined based on the SSD's current resource configuration, and the current plane's allowed concurrency is allocated according to the resource organization relationship between the target channels and target logical units. This refines power consumption control from traditional LUN-level resource control to Plane-level resource control, ensuring that the resource granularity of power consumption control matches the actual execution granularity supporting Plane-level concurrent operations.

[0036] Based on the above embodiments, as an implementable approach, in one embodiment, the allowable concurrency of the current plane is determined according to the current power consumption control requirements and the actual concurrency of the current plane for each working logic unit corresponding to each working channel in the solid-state drive, including: Step 2021: Determine the target power consumption limit coefficient based on the current power consumption control requirements; Step 2023: Determine the allowed concurrency of the current plane based on the target power consumption limit coefficient and the actual concurrency of the current plane of each working logic unit corresponding to each working channel in the solid-state drive.

[0037] It should be noted that the initial value of the allowed concurrency (Nmax) for the current plane is configured by the firmware, and subsequent values ​​are determined based on the target power consumption limit. The result is calculated from the number of planes sampled (Nsample): Nmax = ×Nsample. Power consumption can be adjusted by changing the limiting factor. When higher power consumption is needed, the target power consumption limiting factor should be increased. When it is necessary to reduce power consumption, the target power consumption limit factor is reduced. This solution reduces firmware intervention and allows for faster and more precise power consumption adjustment.

[0038] Specifically, in one embodiment, the original power consumption limit coefficient can be increased or decreased in a stepwise manner according to the current power consumption control requirements to obtain the target power consumption limit coefficient, until the current operating power consumption of the solid-state drive is controlled to the preset operating power consumption target range.

[0039] Specifically, a preset step size for adjusting the power limit coefficient can be set. When the current operating power consumption exceeds the upper limit, the original power limit coefficient is reduced by the preset step size to achieve a step-wise decrease. When the current operating power consumption is below the lower limit, the original power limit coefficient is increased by the preset step size to achieve a step-wise increase, until the current operating power consumption enters the preset target range. The endpoints of the preset target range are the preset lower limit and the preset upper limit, respectively.

[0040] Accordingly, in one embodiment, the discrete level corresponding to the current operating power consumption of the solid-state drive can be determined according to the current power consumption control requirements; and the target power consumption limit coefficient can be determined based on a preset machine learning algorithm according to the discrete level corresponding to the current operating power consumption of the solid-state drive.

[0041] Specifically, the preset machine learning algorithm can adopt the Q-learning algorithm. The basic idea of ​​the preset machine learning algorithm is to continuously observe the current state, perform actions, and obtain rewards after the actions are performed, and iteratively update the Q-table between the state and the actions, so as to learn the better actions to be taken in different states.

[0042] Specifically, in one embodiment, a target power consumption control action for the solid-state drive (SSD) can be determined based on a preset machine learning algorithm and the discrete level corresponding to the current operating power consumption of the SSD; and a target power consumption limit coefficient can be determined based on the target power consumption control action of the SSD.

[0043] The pre-defined machine learning algorithm takes the real-time power consumption status of the SSD (current operating power consumption) as input parameters and the target power consumption limit coefficient as output. By learning the corresponding pattern of power consumption status, limit coefficient, and operating feedback, it automatically generates the optimal limit coefficient for different power consumption scenarios. It can quickly adapt to power consumption fluctuations and achieve a dynamic balance between power consumption and performance without manually setting complex rules or relying on multi-parameter collaborative judgment, thus meeting the efficient control needs of simple scenarios.

[0044] Specifically, multiple discrete levels can be preset, and the target power consumption control action corresponding to each discrete level can be determined, thereby determining the target power consumption limit coefficient corresponding to the target power consumption control action.

[0045] The target power consumption control action is a specific operational instruction output by a machine learning algorithm at a given discrete level of power consumption, used to adjust the limiting coefficient. For example, forcefully reducing power consumption ( Take a smaller value), weak power reduction ( Take a moderately small value), benchmark balance ( (Base value), weak performance improvement () Take a moderately large value), significantly improve performance ( Take the larger value).

[0046] Specifically, in one embodiment, historical power consumption data of the solid-state drive (SSD) can be acquired; the historical power consumption data can be discretized into low power consumption level, medium power consumption level, and high power consumption level to form a power consumption state space; wherein the discretized levels include low power consumption level, medium power consumption level, and high power consumption level; multiple power consumption control actions can be defined to form an action space; wherein each power consumption control action corresponds to a constraint coefficient value; based on an initial machine learning algorithm, a mapping table is constructed using the power consumption state space and the action space; based on a reward function, the mapping table is iteratively optimized according to the SSD's operational feedback to obtain a target mapping table.

[0047] Among them, the preset machine learning algorithm determines the target power consumption control action of the solid-state drive based on the target mapping table.

[0048] Specifically, the power state space uses power consumption as the core parameter, divided into three discrete levels: low power consumption, medium power consumption, and high power consumption, covering SSD operating scenarios. The low power consumption level indicates the SSD is operating in a low-power range, not fully utilizing its performance; the medium power consumption level indicates the SSD is operating in the optimal power consumption range, balancing performance and energy consumption; and the high power consumption level indicates the SSD is operating in a high-power range, posing a risk of energy waste or overheating. The action space maintains five core discrete constraint coefficients, covering the needs of power reduction, maintaining balance, and improving performance. For example, strong power reduction (… Taking the smaller value is suitable for high-power scenarios, and can quickly reduce power consumption, with a slight reduction in power consumption. Taking a moderately small value) is suitable for transitional scenarios between medium and high power consumption levels, enabling smooth power consumption adjustment and baseline balance. (Base value) is suitable for medium power consumption levels, maintaining a balance between performance and energy consumption, with a slight performance boost ( A moderately large value is suitable for low power consumption levels, which can moderately improve performance and significantly boost performance. (Take a larger value) is suitable for scenarios with low power consumption and high performance requirements.

[0049] Specifically, such as Figure 4The diagram illustrates the training process of the preset machine learning algorithm provided in this application embodiment. During training, the preset machine learning algorithm can initially set the Q-table (mapping table, a mapping table of 3 power consumption states × 5 actions) to 0, and configure training parameters such as learning rate, discount factor, and exploration rate. In each training cycle, the current operating power consumption is first obtained and the current power consumption state is determined; then, a power control action is selected according to the preset exploration rate. During the exploration phase (30% exploration), actions can be randomly selected to explore new control strategies; during the utilization phase (70% optimal strategy), the action with the largest current Q-table value can be selected. After executing the selected power control action, the reward value is determined based on the change in operating power consumption after the action. For example, a positive reward can be given when the action keeps the solid-state drive power consumption at a medium power consumption level P1, or when the solid-state drive moves from a low power consumption level P0 or a high power consumption level P2 to a medium power consumption level P1; a negative reward can be given when the high power consumption state P2 persists, or when performance is excessively increased in the low power consumption state P0, resulting in ineffective energy consumption; and a zero reward can be given when the action does not change the current power consumption level. The specific values ​​for positive, negative, and zero rewards can be set according to actual application requirements. For example, positive rewards can be set to +5 to +10, and negative rewards can be set to -5 to -15. The corresponding Q-table is updated based on the obtained reward values, and this process is iterated over multiple training cycles until the Q-table changes stabilize (convergence, reward fluctuations not exceeding a threshold), thus obtaining the target mapping table, which is then stored in the register module. During actual operation, the target mapping table can be queried based on the current power consumption state to determine the corresponding target power consumption control action. Then, based on this target power consumption control action, the target power consumption limit coefficient is determined, and finally, the allowed concurrency of the current plane is determined based on the target power consumption limit coefficient.

[0050] Specifically, in one embodiment, the number of concurrent sampling planes of the solid-state drive can be determined based on the actual concurrency of the current plane of each working logic unit corresponding to each working channel in the solid-state drive; and the allowable concurrency of the current plane can be determined based on the number of concurrent sampling planes of the solid-state drive and the target power consumption limit coefficient.

[0051] Specifically, such as Figure 5The diagram illustrates an exemplary solid-state drive (SSD) power consumption control method provided in this application. During normal SSD operation, the monitoring module collects real-time power consumption at fixed intervals to quickly determine its power level (P0 / P1 / P2). A preset machine learning algorithm reads the converged Q-table (target mapping table) from the register module, matches the optimal limiting coefficient (target power consumption limiting coefficient) corresponding to the current power level, and sends it to the calculation module. The calculation module updates the total number of allowed concurrent planes (current plane allowed concurrency) according to the formula Nmax=β×Nsample, and reallocates resources. If the power level changes subsequently, the process returns to step one for re-collection and adjustment. Here, the number of concurrent sampling planes (Nsample) is the cumulative number of actual concurrent current planes for each working logic unit corresponding to all working channels in the SSD.

[0052] Based on the above embodiments, as an implementable approach, in one embodiment, the current plane's allowed concurrency is allocated to the target channel and the corresponding target logic unit according to the solid-state drive's resource configuration information, in order to regulate the solid-state drive's power consumption, including: Step 2031: Determine the number of working channels and the number of working logic units corresponding to each working channel based on the resource configuration information of the solid-state drive. Step 2032: When the number of target channels is equal to the number of working channels and the number of target logic units is equal to the number of working logic units, each working channel is taken as a target channel and each working logic unit is taken as a target logic unit. Step 2033: Based on the number of target channels, allocate the current plane's allowed concurrency to each target channel to determine the plane's concurrency allocation corresponding to each target channel; Step 2034: For any target channel, based on the number of target logic units corresponding to the target channel, allocate the plane concurrency allocation corresponding to the target channel to each target logic unit corresponding to the target channel, so as to determine the plane concurrency allocation corresponding to each target logic unit.

[0053] For example, the solid-state drive has 16 channels, and each channel has 8 LUNs. By reading the channel status bitmap, the number of channels currently in operation can be determined; further, by using the LUN status bitmap corresponding to each channel, the number of LUNs in operation under each working channel can be determined. The number of working channels and the number of working LUNs corresponding to each working channel can dynamically change according to the current workload and firmware configuration.

[0054] It should be noted that there are three ways to control the power consumption of solid-state drives (SSDs): (1) keep the number of working channels and LUNs constant, and adjust the total number of allowed concurrent planes by limiting the ratio to reduce the workload and thus reduce power consumption. This method is relatively simple to manage and implement; (2) keep the number of working channels constant, and adjust the number of LUNs and planes; (3) adjust the number of channels, LUNs, and planes simultaneously. This method is more complex to manage but can flexibly cope with situations where power consumption changes rapidly. The number of target channels and the number of target logic units can be determined according to preset balanced scheduling rules, and this application does not limit them.

[0055] Specifically, when using the first method, the number of target channels is equal to the number of working channels, and the number of target logic units is equal to the number of working logic units. This means that the range of channels and logic units participating in resource allocation is not changed during the current power consumption control process. Instead, the number of concurrent Plane resources is adjusted within the range of working channels and working LUNs.

[0056] Specifically, in one embodiment, when the number of target channels is equal to the number of working channels, but the number of target logic units is not equal to the number of working logic units, each working channel can be used as a target channel, each working logic unit and at least one idle logic unit can be used as a target logic unit, or some working logic units can be used as target logic units.

[0057] Specifically, when using the second method, the number of working channels remains constant, while the number of working logic units participating in Plane concurrent processing is adjusted. For example, when there are originally 4 working channels, each with 4 working LUNs, the number of LUNs participating in Plane concurrent processing for each channel can be increased or decreased according to power consumption control requirements. When it is necessary to increase the number of LUNs participating in concurrent processing, one or more idle LUNs can be adjusted to target LUNs; when it is necessary to reduce the number of LUNs participating in concurrent processing, only a portion of the working LUNs can be selected as target LUNs. Thus, while keeping the number of working channels constant, power consumption can be adjusted by simultaneously adjusting the number of LUNs and the Plane concurrency.

[0058] Specifically, in one embodiment, when the number of target channels is not equal to the number of working channels and the number of target logic units is not equal to the number of working logic units, each working channel and at least one idle working channel may be used as the target channel, or a portion of the working channels may be used as the target channel, and each working logic unit and at least one idle logic unit may be used as the target logic unit, or a portion of the working logic units may be used as the target logic unit.

[0059] Specifically, when using the third approach, the number of channels, LUNs, and Planes involved in concurrent processing are adjusted simultaneously. For example, when power consumption needs to be reduced rapidly, the number of working channels can be reduced, and the number of target LUNs corresponding to each working channel and the number of Planes corresponding to each target LUN can be further reduced. When performance needs to be improved rapidly, the number of channels, LUNs, and Planes involved in the process can be increased. Compared to adjusting only the number of Planes, adjusting the channels, LUNs, and Planes simultaneously provides a wider range of resource adjustments and is suitable for scenarios where power consumption needs to change rapidly.

[0060] Specifically, in one embodiment, the system can determine whether the current plane's allowed concurrency meets the target channel average allocation condition based on the number of target channels; if the current plane's allowed concurrency meets the target channel average allocation condition, the current plane's allowed concurrency is evenly allocated to each target channel; if the current plane's allowed concurrency does not meet the target channel average allocation condition, a first quotient and a first remainder are calculated between the current plane's allowed concurrency and the number of target channels; the plane concurrency allocation corresponding to the first quotient is allocated to each target channel, and the plane concurrency allocation corresponding to the first remainder is allocated to a portion of the target channels in a round-robin fashion according to a preset target channel order.

[0061] It should be noted that each modification to the target power consumption limit triggers a reallocation of the computing module. The number of Planes (Nmax) is allocated by evenly distributing the channels (ch) and LUNs (lunts). The remainder can be allocated either evenly or completely (evenly: the remainder is distributed to the working channels (ch) and LUNs, in ascending order; completely: the remainder is distributed to the lowest-order working channels (ch) and LUNs). For example, an SSD has 16 channels, each channel has 8 LUNs, and the firmware is configured to work at channels ch0, ch1, ch4, and ch6; each channel works on 4 LUNs (lun0, lun1, lun2, and lun3), allowing a total of 42 concurrent channels (the current plane's allowed concurrency). If the calculation module uses a full partitioning method ({ch6:10; ch4:10; ch1:10; ch0:12}), the LUNs of ch1, ch4, and ch6 are allocated as {lun3:2; lun2:2; lun1:2; lun0:4}. If it uses an equal partitioning method ({ch6:10; ch4:10; ch1:11; ch0:11}), the LUNs of ch0 and ch1 are allocated as {lun3:2; lun2:3; lun1:3; lun0:3}, and the LUNs of ch4 and ch6 are allocated as {lun3:2; lun2:2; lun1:3; lun0:3}. The equal partitioning method maximizes fairness between ch and LUNs, while the full partitioning method can further improve the performance of certain ch and LUNs and better handle unexpected situations.

[0062] It should be further noted that the target channel average allocation condition defined in the embodiments of this application refers to the current plane's allowed concurrency being an integer multiple of the target channel number, that is, the plane concurrency allocation can be equally distributed among the target channels. The above example does not meet the target channel average allocation condition.

[0063] Specifically, in order to achieve round-robin allocation, this application embodiment adds a round-robin module to the SSD: to balance the number of concurrent planes on each channel and LUN, a time-slice round-robin scheduling method is adopted, and the number of concurrent planes of each working channel and LUN is cyclically shifted according to the bitmap. The specific round-robin method is as follows: The rotation of the maximum concurrent Plane across different channels is calculated as follows: Assuming there are 16 channels (ch), the maximum allowed concurrent Plane count is 42, and the working channels are ch0, ch1, ch4, and ch6, the initial allocation is {ch6:10, ch4:10; ch1:10; ch0:12}. Every time interval t2 (t2>t1), rotation is ensured first within a channel, then between channels. The rotation order between different channels is {ch6:10, ch4:10; ch1:10; ch0:12}, {ch6:10, ch4:10; ch1:12; ch0:10}, {ch6:10, ch4:12; ch1:10; ch0:10}, {ch6:12, ch4:10; ch1:10; ch0:10}, {ch6:10, ch4:10; ch0:10}, {ch6:10, ch4:10; ch0:10}. ch1:10;ch0:12}.

[0064] Accordingly, in one embodiment, for any target channel, based on the number of target logic units corresponding to the target channel, it can be determined whether the plane concurrency allocation corresponding to the target channel meets the target logic unit average allocation condition; if the plane concurrency allocation corresponding to the target channel meets the target logic unit average allocation condition, the plane concurrency allocation corresponding to the target channel is evenly allocated to each target logic unit; if the plane concurrency allocation corresponding to the target channel does not meet the target logic unit average allocation condition, a second quotient and a second remainder are calculated between the plane concurrency allocation corresponding to the target channel and the number of target logic units; the plane concurrency allocation corresponding to the second quotient is allocated to each target logic unit respectively, and the plane concurrency allocation corresponding to the second remainder is allocated to a portion of the target logic units in a round-robin manner according to a preset target logic unit order.

[0065] It should be further explained that the target logic unit average allocation condition defined in the embodiments of this application means that the plane concurrent allocation corresponding to the target channel is an integer multiple of the number of target logic units in the target channel, that is, the plane concurrent allocation can be equally distributed among the target logic units. The above example does not meet the target logic unit average allocation condition.

[0066] The rotation between different LUNs within the same channel is as follows: Assuming a channel has 4 working LUNs, the maximum number of planes allowed to run concurrently in this channel (the plane concurrency allocation corresponding to the target channel) is 10. The initial allocation of planes to each LUN is {lun3:2; lun2:2; lun1:2; lun0:4}. Every time interval t1, the number of planes within the same channel cyclically shifts to the right among the LUNs: {lun3:2; lun2:2; lun1:2; lun0:4}, {lun3:2; lun2:2; lun1:4; lun0:2}, {lun3:2; lun2:4; lun1:2; lun0:2}, {lun3:4; lun2:2; lun1:2; lun0:2}, {lun3:2; lun2:2; lun1:2; lun0:4}.

[0067] Specifically, in one embodiment, the planar concurrent allocation amount allocated to each target logic unit in the same target channel can be cyclically shifted between target logic units according to a preset first time period; and the planar concurrent allocation amount allocated to each target channel can be cyclically shifted between target channels according to a preset second time period.

[0068] The second time period is longer than the first time period.

[0069] It should be noted that by setting different rotation cycles, the system can first complete the LUN-level resource rotation within a single target channel, and then perform resource rotation between target channels, thereby simultaneously taking into account the load balancing of channel-level and LUN-level resources.

[0070] The solid-state drive (SSD) power consumption control method provided in this application achieves fine-grained power allocation at the plane level by determining the current allowed concurrency and allocating it to target channels and corresponding target logic units. This adapts to the granularity of concurrent operations, preventing idle or overloaded plane resources in multi-channel SSDs, improving multi-channel load balancing, and enhancing SSD resource utilization and read / write performance. Furthermore, it achieves a dynamic balance between SSD power consumption and performance, avoiding imbalances such as high performance with high power consumption or low power consumption with low performance.

[0071] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method.

[0072] The embodiments of this application also provide a solid-state drive power consumption control device for executing the solid-state drive power consumption control method provided in the above embodiments.

[0073] like Figure 6 The diagram shown is a structural schematic of a solid-state drive power consumption control device provided in an embodiment of this application. The solid-state drive power consumption control device 60 includes: an acquisition module 601, a determination module 602, and a control module 603.

[0074] The module includes an acquisition module for acquiring the resource configuration information of the solid-state drive (SSD), the current power consumption control requirements, and the actual concurrency of each working logic unit corresponding to each working channel in the SSD. A determination module is used to determine the allowed concurrency of the current plane based on the current power consumption control requirements and the actual concurrency of each working logic unit corresponding to each working channel in the SSD. A control module is used to allocate the allowed concurrency of the current plane to the target channel and the corresponding target logic unit based on the SSD's resource configuration information, thereby controlling the power consumption of the SSD.

[0075] Specifically, in one embodiment, the resource configuration information includes a channel working status bitmap of the solid-state drive and a logic unit working status bitmap corresponding to each channel; The channel working status bitmap is used to distinguish between working channels and idle channels; The logic unit working status bitmap is used to distinguish between working logic units and idle logic units.

[0076] Specifically, in one embodiment, the apparatus further includes: The demand determination module is used to obtain the current operating power consumption of the solid-state drive; based on the relationship between the current operating power consumption and the preset lower limit of operating power consumption, and the relationship between the current operating power consumption and the preset upper limit of operating power consumption, the current power consumption control demand of the solid-state drive is determined.

[0077] Specifically, in one embodiment, the determining module includes: The coefficient determination unit is used to determine the target power consumption limit coefficient based on the current power consumption control requirements. The concurrency determination unit is used to determine the allowed concurrency of the current plane based on the target power consumption limit coefficient and the actual concurrency of the current plane of each working logic unit corresponding to each working channel in the solid-state drive.

[0078] Specifically, in one embodiment, the system determining unit is specifically used for: Based on the current power consumption control requirements, the original power consumption limit coefficient is increased or decreased in a stepwise manner to obtain the target power consumption limit coefficient, until the current operating power consumption of the solid-state drive is controlled to the preset operating power consumption target range.

[0079] Specifically, in one embodiment, the system determining unit is specifically used for: Based on the current power consumption control requirements, determine the discrete level corresponding to the current operating power consumption of the solid-state drive; Based on a pre-set machine learning algorithm, the target power consumption limit coefficient is determined according to the discrete level corresponding to the current operating power consumption of the solid-state drive.

[0080] Specifically, in one embodiment, the system determining unit is specifically used for: Based on a pre-set machine learning algorithm, the target power consumption control action of the solid-state drive is determined according to the discrete level corresponding to the current operating power consumption of the solid-state drive. The target power consumption limit factor is determined based on the target power consumption adjustment action of the solid-state drive.

[0081] Specifically, in one embodiment, the device further includes: The training module acquires historical power consumption data of the solid-state drive (SSD); discretizes this data into low, medium, and high power consumption levels to form a power state space; the discrete levels include low, medium, and high power consumption; defines multiple power control actions to form an action space; each power control action corresponds to a constraint coefficient value; constructs a mapping table based on the power state space and action space using an initial machine learning algorithm; iteratively optimizes the mapping table based on the SSD's operational feedback using a reward function to obtain a target mapping table; a pre-defined machine learning algorithm determines the target power control actions for the SSD based on the target mapping table.

[0082] Specifically, in one embodiment, the concurrency determination unit is specifically used for: The number of concurrent sampling planes of the solid-state drive is determined based on the actual concurrency of the current plane of each working logic unit corresponding to each working channel in the solid-state drive. The allowed concurrency of the current plane is determined based on the number of concurrent sampling planes of the solid-state drive and the target power consumption limit factor.

[0083] Specifically, in one embodiment, the control module is specifically used for: Based on the resource configuration information of the solid-state drive, determine the number of working channels and the number of working logic units corresponding to each working channel; When the number of target channels equals the number of working channels and the number of target logic units equals the number of working logic units, each working channel is taken as the target channel and each working logic unit is taken as the target logic unit. Based on the number of target channels, the current plane's allowed concurrency is allocated to each target channel to determine the corresponding plane concurrency allocation for each target channel; For any target channel, the plane concurrency allocation corresponding to the target channel is allocated to each target logic unit corresponding to the target channel based on the number of target logic units corresponding to the target channel, so as to determine the plane concurrency allocation corresponding to each target logic unit.

[0084] Specifically, in one embodiment, the control module is further configured to: When the number of target channels equals the number of working channels, but the number of target logic units does not equal the number of working logic units, each working channel is used as the target channel, and each working logic unit and at least one idle logic unit are used as the target logic unit, or some working logic units are used as the target logic unit.

[0085] Specifically, in one embodiment, the control module is further configured to: When the number of target channels is not equal to the number of working channels, and the number of target logic units is not equal to the number of working logic units, each working channel and at least one idle working channel shall be used as the target channel, or a portion of the working channels shall be used as the target channel, and each working logic unit and at least one idle logic unit shall be used as the target logic unit, or a portion of the working logic units shall be used as the target logic unit.

[0086] Specifically, in one embodiment, the control module is specifically used for: Based on the number of target channels, determine whether the current plane's allowed concurrency meets the target channel average distribution condition; If the current plane's allowed concurrency meets the target channel's average allocation condition, the current plane's allowed concurrency will be evenly allocated to each target channel. If the current plane's allowed concurrency does not meet the target channel's average allocation condition, calculate the first quotient and the first remainder between the current plane's allowed concurrency and the target number of channels; The plane concurrency allocation corresponding to the first quotient is allocated to each target channel, and the plane concurrency allocation corresponding to the first remainder is allocated to some target channels in a round-robin manner according to the preset target channel order.

[0087] Specifically, in one embodiment, the control module is specifically used for: For any target channel, based on the number of target logic units corresponding to the target channel, determine whether the plane concurrency allocation corresponding to the target channel meets the average allocation condition of the target logic units; If the plane concurrency allocation corresponding to the target channel meets the average allocation condition of the target logic unit, the plane concurrency allocation corresponding to the target channel will be evenly allocated to each target logic unit. If the plane concurrency allocation corresponding to the target channel does not meet the average allocation condition of the target logic units, calculate the second quotient and the second remainder between the plane concurrency allocation corresponding to the target channel and the number of target logic units. The plane concurrency allocation corresponding to the second quotient is allocated to each target logic unit, and the plane concurrency allocation corresponding to the second remainder is allocated to a portion of the target logic units in a round-robin fashion according to the preset target logic unit order.

[0088] Specifically, in one embodiment, the control module is further configured to: According to the preset first time period, the plane concurrent allocation of each target logic unit in the same target channel is cyclically shifted between target logic units; According to the preset second time period, the plane concurrent allocation of each target channel is cyclically shifted between target channels; The second time period is longer than the first time period.

[0089] For a description of the features in the embodiment corresponding to the solid-state drive power consumption control device, please refer to the relevant description of the embodiment corresponding to the solid-state drive power consumption control method, which will not be repeated here.

[0090] Embodiments of this application also provide a solid-state drive power consumption control system, such as... Figure 7 The diagram shown is a structural schematic of a solid-state drive power consumption control system provided in this application embodiment, including a multi-channel solid-state drive and a hard disk controller. The hard disk controller uses any of the above-mentioned solid-state drive power consumption control methods to control the power consumption of the solid-state drive.

[0091] Embodiments of this application also provide an electronic device, such as... Figure 8 The diagram shown is a schematic diagram of the structure of an electronic device provided in an embodiment of this application, including a processor 10 and a memory 20. The memory 20 stores a computer program, and the processor 10 is configured to run the computer program to execute the steps in any of the above-described embodiments of the solid-state drive power consumption control method.

[0092] Embodiments of this application also provide a computer-readable storage medium storing a computer program, wherein the computer program is configured to execute the steps in any of the above embodiments of the solid-state drive power consumption control method when running.

[0093] In one exemplary embodiment, the aforementioned computer-readable storage medium may include, but is not limited to, various media capable of storing computer programs, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard disk, magnetic disk, or optical disk.

[0094] The embodiments of this application also provide a computer program product, which includes a computer program that, when executed by a processor, implements the steps in any of the above embodiments of the solid-state drive power consumption control method.

[0095] Embodiments of this application also provide another computer program product, including a non-volatile computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps in any of the above embodiments of the solid-state drive power consumption control method.

[0096] Any of the components, modules, units, parts, methods, and operations described herein can be implemented using software, firmware, hardware (e.g., fixed logic circuitry), manual processing, or any combination thereof. Alternatively or additionally, any functionality described herein can be executed at least in part by one or more hardware logic components, such as, but not limited to, a central processing unit (CPU), a field-programmable gate array (FPGA), an application-specific integrated circuit (ASIC), an application-specific standard product (ASSP), a system-on-a-chip (SoC), a complex programmable logic device (CPLD), a microprocessor (MCU), etc. The terms "system," "computing device," or "apparatus" as used herein encompass various means, devices, and machines for processing data, including, for example, one or more programmable processors, computers, SoCs, or combinations thereof. The apparatus may also include code that creates an execution environment for the computer program in question, such as code constituting processor firmware, a protocol stack, a database management system, an operating system, a cross-platform runtime environment, a virtual machine, or one or more combinations thereof. The aforementioned computer program (also known as a program, software, software application, app, script, or code) can be written in any form of programming language, including compiled or interpreted languages, declarative or procedural languages, and can be deployed in any form, including as a standalone program or as a module, component, subroutine, object, or other unit suitable for a computing environment.

[0097] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0098] The above provides a detailed description of a solid-state drive power consumption control method, apparatus, system, and electronic device provided in this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the embodiments above are only intended to help understand the method and core ideas of this application. It should be noted that those skilled in the art can make various improvements and modifications to this application without departing from its principles, and these improvements and modifications also fall within the protection scope of the claims of this application.

Claims

1. A method for controlling the power consumption of a solid-state drive, characterized in that, include: Obtain the resource configuration information of the solid-state drive, the current power consumption control requirements, and the current plane actual concurrency of each working logic unit corresponding to each working channel in the solid-state drive; Based on the current power consumption control requirements and the actual concurrency of each working logic unit corresponding to each working channel in the solid-state drive, determine the current plane's allowed concurrency. Based on the resource configuration information of the solid-state drive, the current plane's allowed concurrency is allocated to the target channel and the corresponding target logic unit to regulate the power consumption of the solid-state drive.

2. The solid-state drive power consumption control method according to claim 1, characterized in that, The resource configuration information includes a channel working status bitmap of the solid-state drive and a logic unit working status bitmap corresponding to each channel. The channel working status bitmap is used to distinguish between working channels and idle channels; The logic unit working status bitmap is used to distinguish between working logic units and idle logic units.

3. The solid-state drive power consumption control method according to claim 1, characterized in that, The method further includes: Obtain the current operating power consumption of the solid-state drive; Based on the relationship between the current operating power consumption and the preset lower limit of operating power consumption, and the relationship between the current operating power consumption and the preset upper limit of operating power consumption, the current power consumption control requirements of the solid-state drive are determined.

4. The solid-state drive power consumption control method according to claim 1, characterized in that, The step of determining the allowable concurrency of the current plane based on the current power consumption control requirements and the actual concurrency of the current plane for each working logic unit corresponding to each working channel in the solid-state drive includes: Based on the current power consumption control requirements, determine the target power consumption limit coefficient; The allowed concurrency of the current plane is determined based on the target power consumption limit coefficient and the actual concurrency of the current plane of each working logic unit corresponding to each working channel in the solid-state drive.

5. The solid-state drive power consumption control method according to claim 4, characterized in that, The step of determining the target power consumption limit coefficient based on the current power consumption control requirements includes: Based on the current power consumption control requirements, the original power consumption limit coefficient is increased or decreased in a stepwise manner to obtain the target power consumption limit coefficient, until the current operating power consumption of the solid-state drive is controlled to the preset operating power consumption target range.

6. The solid-state drive power consumption control method according to claim 4, characterized in that, The step of determining the target power consumption limit coefficient based on the current power consumption control requirements includes: Based on the current power consumption control requirements, determine the discrete level corresponding to the current operating power consumption of the solid-state drive; Based on a preset machine learning algorithm, the target power consumption limit coefficient is determined according to the discrete level corresponding to the current operating power consumption of the solid-state drive.

7. The solid-state drive power consumption control method according to claim 6, characterized in that, The step of determining the target power consumption limit coefficient based on a preset machine learning algorithm and the discrete level corresponding to the current operating power consumption of the solid-state drive includes: Based on a preset machine learning algorithm, the target power consumption control action of the solid-state drive is determined according to the discrete level corresponding to the current operating power consumption of the solid-state drive. The target power consumption limit coefficient is determined based on the target power consumption control action of the solid-state drive.

8. The solid-state drive power consumption control method according to claim 7, characterized in that, The method further includes: Obtain the historical power consumption data of the solid-state drive; The historical operating power consumption data is discretized into low power consumption level, medium power consumption level and high power consumption level to form a power consumption state space; wherein, the discretized level includes the low power consumption level, medium power consumption level and high power consumption level; Define multiple power consumption control actions to form an action space; each power consumption control action corresponds to a limit coefficient value. Based on the initial machine learning algorithm, a mapping table is constructed using the power state space and action space; Based on the reward function and the operational feedback of the solid-state drive, the mapping table is iteratively optimized to obtain the target mapping table; The preset machine learning algorithm determines the target power consumption control action of the solid-state drive based on the target mapping table.

9. The solid-state drive power consumption control method according to claim 4, characterized in that, The step of determining the allowed concurrency of the current plane based on the target power consumption limit coefficient and the actual concurrency of the current plane for each working logic unit corresponding to each working channel in the solid-state drive includes: The number of concurrent sampling planes of the solid-state drive is determined based on the actual concurrency of the current plane of each working logic unit corresponding to each working channel in the solid-state drive. The allowable concurrency of the current plane is determined based on the number of concurrent sampling planes of the solid-state drive and the target power consumption limit coefficient.

10. The solid-state drive power consumption control method according to claim 1, characterized in that, The step of allocating the current plane's allowed concurrency to the target channel and corresponding target logic unit based on the resource configuration information of the solid-state drive (SSD) to regulate the power consumption of the SSD includes: Based on the resource configuration information of the solid-state drive, determine the number of working channels and the number of working logic units corresponding to each working channel; When the number of target channels is equal to the number of working channels and the number of target logic units is equal to the number of working logic units, each working channel is taken as a target channel and each working logic unit is taken as a target logic unit. Based on the number of target channels, the current plane's allowed concurrency is allocated to each target channel to determine the plane's concurrency allocation corresponding to each target channel; For any of the target channels, the plane concurrency allocation corresponding to the target channel is allocated to each of the target logic units corresponding to the target channel according to the number of target logic units corresponding to the target channel, so as to determine the plane concurrency allocation corresponding to each of the target logic units.

11. The solid-state drive power consumption control method according to claim 10, characterized in that, The method further includes: When the number of target channels is equal to the number of working channels, but the number of target logic units is not equal to the number of working logic units, each working channel is used as a target channel, and each working logic unit and at least one idle logic unit are used as target logic units, or some working logic units are used as target logic units.

12. The solid-state drive power consumption control method according to claim 10, characterized in that, The method further includes: When the number of target channels is not equal to the number of working channels, and the number of target logic units is not equal to the number of working logic units, each working channel and at least one idle working channel are used as target channels, or a portion of the working channels are used as target channels, and each working logic unit and at least one idle logic unit are used as target logic units, or a portion of the working logic units are used as target logic units.

13. The solid-state drive power consumption control method according to claim 10, characterized in that, The step of allocating the current plane's allowed concurrency to each of the target channels based on the number of target channels, to determine the plane concurrency allocation corresponding to each target channel, includes: Based on the number of target channels, determine whether the current plane's allowed concurrency meets the target channel average allocation condition; If the current plane's allowed concurrency meets the target channel's average allocation condition, the current plane's allowed concurrency will be evenly allocated to each of the target channels. If the current plane's allowed concurrency does not meet the target channel average allocation condition, calculate the first quotient and the first remainder between the current plane's allowed concurrency and the number of target channels; The planar concurrency allocation corresponding to the first quotient is allocated to each of the target channels, and the planar concurrency allocation corresponding to the first remainder is allocated to a portion of the target channels in a round-robin fashion according to the preset target channel order.

14. The solid-state drive power consumption control method according to claim 13, characterized in that, For any of the target channels, the method of allocating the plane concurrency allocation corresponding to the target channel to each of the target logic units corresponding to the target channel, based on the number of target logic units corresponding to the target channel, to determine the plane concurrency allocation corresponding to each of the target logic units, includes: For any of the target channels, based on the number of target logic units corresponding to the target channel, it is determined whether the plane concurrency allocation corresponding to the target channel satisfies the average allocation condition of the target logic units; If the plane concurrency allocation corresponding to the target channel meets the target logic unit average allocation condition, the plane concurrency allocation corresponding to the target channel is averaged to each of the target logic units. If the plane concurrency allocation corresponding to the target channel does not meet the average allocation condition of the target logic units, calculate the second quotient and the second remainder between the plane concurrency allocation corresponding to the target channel and the number of the target logic units; The plane concurrency allocation corresponding to the second quotient is allocated to each of the target logic units, and the plane concurrency allocation corresponding to the second remainder is allocated to a portion of the target logic units in a round-robin fashion according to the preset target logic unit order.

15. The solid-state drive power consumption control method according to claim 14, characterized in that, The method further includes: According to a preset first time period, the plane concurrent allocation amount allocated to each target logic unit in the same target channel is cyclically shifted between target logic units; According to a preset second time period, the plane concurrent allocation amount allocated to each target channel is cyclically shifted between target channels; The second time period is longer than the first time period.

16. A solid-state drive power consumption control device, characterized in that, include: The acquisition module is used to acquire the resource configuration information of the solid-state drive, the current power consumption control requirements, and the current plane actual concurrency of each working logic unit corresponding to each working channel in the solid-state drive. The determination module is used to determine the current plane's allowed concurrency based on the current power consumption control requirements and the current plane's actual concurrency of each working logic unit corresponding to each working channel in the solid-state drive. The control module is used to allocate the current plane's allowed concurrency to the target channel and the corresponding target logic unit according to the resource configuration information of the solid-state drive, so as to control the power consumption of the solid-state drive.

17. A solid-state drive power consumption control system, characterized in that, include: Multi-channel solid-state drives and hard drive controllers; The hard disk controller uses the solid-state hard disk power consumption control method as described in any one of claims 1 to 15 to control the power consumption of the solid-state hard disk.

18. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor, configured to implement the steps of the solid-state drive power consumption control method as described in any one of claims 1 to 15 when executing the computer program.

19. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, wherein when the computer program is executed by a processor, it implements the steps of the solid-state drive power consumption control method as described in any one of claims 1 to 15.

20. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the steps of the solid-state drive power consumption control method as described in any one of claims 1 to 15.