Solid state disk power consumption optimization method and device, equipment and storage medium

By monitoring the power consumption status of SSDs in real time and managing power consumption according to the vote of functional modules, the problem of excessive power consumption of SSDs is solved, and power consumption optimization and cost reduction are achieved.

CN120010762APending Publication Date: 2025-05-16DAPUSTOR CORP
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202411828192.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-12
Publication Date
2025-05-16

AI Technical Summary

Technical Problem

Existing SSDs consume too much power, resulting in increased server power consumption pressure, cooling challenges and operating costs.

Method used

By monitoring the power consumption status of the solid-state drive in real time, when it is in a normal power consumption status, it is determined whether the votes of each functional module are received. If the votes are received, the operating frequency of some functional modules will be turned off or reduced to enter the low-power consumption status.

Benefits of technology

It realizes the power consumption optimization of the solid-state drive, reduces the operating power consumption, reduces the power consumption pressure and operating costs of the server, and meets the different scenario requirements of multiple functional modules in the solid-state drive for power consumption performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120010762A_ABST
    Figure CN120010762A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of solid state disks, and discloses a solid state disk power consumption optimization method and device, equipment and a storage medium. The solid state disk power consumption optimization method comprises the following steps: monitoring the power consumption state of a solid state disk in real time, wherein the power consumption state comprises a low power consumption state and a normal power consumption state; when the solid state disk is in the normal power consumption state, judging whether a first vote of each functional module in the solid state disk is received or not; and if the first vote of each functional module in the solid state disk is received, closing part of the functional modules and / or reducing the operation frequency of the part of the functional modules, so that the solid state disk enters a low-power-consumption state. By introducing the voting mechanism, idle power consumption can be reduced, different scene requirements of a plurality of functional modules in the solid state disk on power consumption performance can be met, power consumption of the solid state disk is reduced by managing power consumption in the solid state disk, and then power consumption pressure and operation cost of the server are reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of solid state hard disks, and in particular to a method, device, equipment and storage medium for optimizing power consumption of a solid state hard disk. Background Art

[0002] With the development and popularization of PCIe GEN5 (PCI Special Interest Group, the fifth generation of peripheral component interconnect express), the performance of NVME (Non-Volatile Memory Express, non-volatile memory host controller interface specification) solid-state drives based on PCIe GEN5 is getting higher and higher. PCIe GEN provides higher speed and performance. Under such high speed and performance, the power consumption of solid-state drives will rise rapidly, thereby increasing the power consumption pressure, heat dissipation challenges and operating costs of servers. Summary of the invention

[0003] The main purpose of the present invention is to provide a method, device, equipment and storage medium for optimizing the power consumption of a solid state drive, aiming to solve the technical problem of excessive power consumption of existing solid state drives.

[0004] A first aspect of the present invention provides a method for optimizing power consumption of a solid state drive, the method comprising:

[0005] Real-time monitoring of the power consumption state of the solid state drive, wherein the power consumption state includes a low power consumption state and a normal power consumption state;

[0006] When the solid state drive is in a normal power consumption state, determining whether a first vote of each functional module in the solid state drive is received;

[0007] If the first vote of each functional module in the solid state drive is received, some functional modules are turned off and / or the operating frequency of some functional modules is reduced to make the solid state drive enter a low power consumption state.

[0008] Optionally, in a first implementation of the first aspect of the present invention, after real-time monitoring of the power consumption state of the solid state drive, the method further includes:

[0009] When the solid state drive is in a low power consumption state, determining whether a second vote of one or more functional modules in the solid state drive is received;

[0010] If a second vote is received from one or more functional modules in the solid state drive, some functional modules are turned on and / or the operating frequency of some functional modules is restored to make the solid state drive exit the low power consumption state.

[0011] Optionally, in a second implementation of the first aspect of the present invention, the functional module includes a backend module, and before determining whether a first vote of the backend module in the solid state drive is received, the solid state drive power consumption optimization method further includes:

[0012] Monitor in real time whether the current backend module receives IO requests to access the storage medium;

[0013] If an IO request to access the storage medium is received, the timer is reset and monitoring continues;

[0014] If no IO request for accessing the storage medium is received, determining whether the accumulated duration of the timer exceeds a preset duration threshold;

[0015] If the accumulated duration of the timer does not exceed the preset duration threshold, continue monitoring;

[0016] If the accumulated duration of the timer exceeds a preset duration threshold, some functional modules related to the backend module are shut down and / or the operating frequency of some functional modules related to the backend module is reduced;

[0017] Initiate the first vote for the backend module to enter low power consumption.

[0018] Optionally, in a third implementation of the first aspect of the present invention, before determining whether a second vote from a back-end module in the solid-state hard disk is received, the solid-state hard disk power consumption optimization method further includes:

[0019] Monitor in real time whether the current backend module receives IO requests to access the storage medium;

[0020] If no IO request to access the storage medium is received, monitoring continues;

[0021] If an IO request to access the storage medium is received, a second vote is initiated for the back-end module to exit low power consumption;

[0022] Some functional modules related to the backend module are enabled and / or the operating frequencies of some functional modules related to the backend module are restored.

[0023] Optionally, in a fourth implementation of the first aspect of the present invention, the solid state drive power consumption optimization method further includes:

[0024] Before initiating the first vote for the backend module to enter low power consumption, turn off the output enable of the phase-locked loop oscillation circuit module;

[0025] After initiating the second vote for the back-end module to exit low power consumption, the output enable of the phase-locked loop oscillation circuit module is turned on.

[0026] Optionally, in a fifth implementation of the first aspect of the present invention, the solid state drive power consumption optimization method further includes:

[0027] Before initiating the first vote for the back-end module to enter low power consumption, the parameter configuration process for restoring each flash chip channel is split and processed in parallel;

[0028] After initiating the second vote for the backend module to exit low power consumption, based on the parameter configuration process, execution operations of the recovery steps of each channel are issued in parallel, so that each channel can execute the same recovery steps in parallel.

[0029] Optionally, in a sixth implementation of the first aspect of the present invention, the functional module includes a front-end module, a flash translation layer module and a back-end module;

[0030] Among them, when the solid state drive enters a low power consumption state, the front-end module and the flash translation layer module adopt a strategy of reducing the operating frequency, and the back-end module adopts a strategy of shutting down the module and reducing the module operating frequency.

[0031] A second aspect of the present invention further provides a solid state hard disk power consumption optimization device, the solid state hard disk power consumption optimization device comprising:

[0032] A monitoring module, used to monitor the power consumption state of the solid state drive in real time, wherein the power consumption state includes a low power consumption state and a normal power consumption state;

[0033] A judgment module, when the solid state drive is in a normal power consumption state, judges whether a first vote of each functional module in the solid state drive is received;

[0034] The optimization module is used to shut down some functional modules and / or reduce the operating frequency of some functional modules if the first vote of each functional module in the solid state drive is received, so as to make the solid state drive enter a low power consumption state.

[0035] Optionally, in a first implementation of the second aspect of the present invention, the judgment module is further used to: when the solid-state drive is in a low power consumption state, judge whether a second vote of one or more functional modules in the solid-state drive is received;

[0036] The optimization module is also used to: if a second vote is received from one or more functional modules in the solid state drive, then enable some functional modules and / or restore the operating frequency of some functional modules to make the solid state drive exit the low power consumption state.

[0037] Optionally, in a second implementation of the second aspect of the present invention, the functional module includes a back-end module, and the monitoring module is further used to: monitor in real time whether the current back-end module receives an IO request for accessing a storage medium; if an IO request for accessing a storage medium is received, reset the timer and continue monitoring; if no IO request for accessing the storage medium is received, determine whether the accumulated duration of the timer exceeds a preset duration threshold; if the accumulated duration of the timer does not exceed the preset duration threshold, continue monitoring;

[0038] The optimization module is also used for: if the accumulated duration of the timer exceeds a preset duration threshold, shutting down some functional modules related to the back-end module and / or reducing the operating frequency of some functional modules related to the back-end module; initiating a first vote for the back-end module to enter low power consumption.

[0039] Optionally, in a third implementation of the second aspect of the present invention, the monitoring module is further used to: monitor in real time whether the current backend module receives an IO request for accessing the storage medium; if no IO request for accessing the storage medium is received, continue monitoring;

[0040] The optimization module is also used to: if an IO request to access the storage medium is received, initiate a second vote for the back-end module to exit low power consumption; turn on some functional modules related to the back-end module and / or restore the operating frequency of some functional modules related to the back-end module.

[0041] Optionally, in a fourth implementation of the second aspect of the present invention, the optimization module is further used to:

[0042] Before initiating the first vote for the backend module to enter low power consumption, the output enable of the phase-locked loop oscillation circuit module is turned off; after initiating the second vote for the backend module to exit low power consumption, the output enable of the phase-locked loop oscillation circuit module is turned on.

[0043] Optionally, in a fifth implementation of the second aspect of the present invention, the optimization module is further used to:

[0044] Before initiating the first vote for the back-end module to enter low power consumption, the parameter configuration process for restoring each flash chip channel is split and processed in parallel;

[0045] After initiating the second vote for the backend module to exit low power consumption, based on the parameter configuration process, execution operations of the recovery steps of each channel are issued in parallel, so that each channel can execute the same recovery steps in parallel.

[0046] Optionally, in a sixth implementation of the second aspect of the present invention, the functional module includes a front-end module, a flash translation layer module and a back-end module;

[0047] Among them, when the solid state drive enters a low power consumption state, the front-end module and the flash translation layer module adopt a strategy of reducing the operating frequency, and the back-end module adopts a strategy of shutting down the module and reducing the module operating frequency.

[0048] The third aspect of the present invention provides a computer device, comprising: a memory and at least one processor, wherein the memory stores instructions; the at least one processor calls the instructions in the memory so that the computer device executes the above-mentioned solid-state hard disk power consumption optimization method.

[0049] A fourth aspect of the present invention provides a computer-readable storage medium, wherein the computer-readable storage medium stores instructions, which, when executed on a computer, enable the computer to execute the above-mentioned method for optimizing power consumption of a solid-state hard disk.

[0050] In the power consumption optimization method of the solid state drive provided by the present invention, the operation of the solid state drive adopts two modes, low power consumption state and normal power consumption state, and can be switched automatically. When the solid state drive is in the normal power consumption state, it is monitored in real time whether the switching conditions for entering the low power consumption state are met, and it is specifically determined whether the first vote (vote to enter the low power consumption state) of each functional module in the solid state drive is received; if the first vote of each functional module in the solid state drive is received, some functional modules are turned off and / or the operating frequency of some functional modules is reduced to make the solid state drive enter the low power consumption state. In the present invention, when the functional modules in the solid state drive do not detect a request, a vote is initiated to enter the low power consumption state, and the purpose of reducing the operating power consumption of the solid state drive is achieved by turning off and / or reducing the operating frequency of some functional modules. The voting mechanism introduced in the present invention can not only reduce the idle power consumption, but also meet the different scene requirements of the power consumption performance of multiple functional modules in the solid state drive. By managing the power consumption in the solid state drive, the power consumption of the solid state drive is reduced, thereby reducing the power consumption pressure and operating cost of the server. BRIEF DESCRIPTION OF THE DRAWINGS

[0051] Figure 1 A schematic diagram of a first embodiment of a method for optimizing power consumption of a solid state drive according to an embodiment of the present invention;

[0052] Figure 2 It is a schematic diagram of a second embodiment of the method for optimizing power consumption of a solid state drive according to an embodiment of the present invention;

[0053] Figure 3 A schematic diagram of a third embodiment of the method for optimizing power consumption of a solid state drive according to an embodiment of the present invention;

[0054] Figure 4 A schematic diagram of a fourth embodiment of a method for optimizing power consumption of a solid state drive according to an embodiment of the present invention;

[0055] Figure 5This is a schematic diagram of the operation steps of the back-end module on NAND-related hardware in an embodiment of the present invention;

[0056] Figure 6 A schematic diagram of an embodiment of a solid state hard disk power consumption optimization device according to an embodiment of the present invention;

[0057] Figure 7 FIG. 1 is a schematic diagram of an embodiment of a computer device in an embodiment of the present invention. DETAILED DESCRIPTION

[0058] The terms "first", "second", "third", "fourth", etc. (if any) in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments described herein can be implemented in an order other than that illustrated or described herein. In addition, the terms "including" or "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0059] For ease of understanding, the specific process of the embodiment of the present invention is described below. Figure 1 , a first embodiment of the method for optimizing power consumption of a solid state drive in an embodiment of the present invention includes:

[0060] 101. Monitor the power consumption state of the solid state drive in real time, where the power consumption state includes a low power consumption state and a normal power consumption state;

[0061] In this embodiment, in order to achieve the control of the power consumption of the solid-state drive, a low power consumption state is introduced. At the same time, in order to facilitate the distinction between the low power consumption state and the non-low power consumption state, the power consumption state of the solid-state drive is further divided into two operating modes: a low power consumption state and a normal power consumption state. The low power consumption state represents the working state of the solid-state drive when it is inactive or under low load, that is, a state in which power consumption optimization is adopted, while the normal power consumption state represents the working state of the solid-state drive when processing data or performing operations, which can be a normal power consumption working state or a high power consumption working state, that is, a state in which power consumption optimization is not performed. Among them, the working state of the solid-state drive can be switched from the normal power consumption state to the low power consumption state, and can also exit the low power consumption state and return to the normal power consumption state.

[0062] In this embodiment, by continuously monitoring the power consumption status of the solid-state drive, it is ensured that the working status of the solid-state drive can be accurately identified in real time, such as a low power consumption state or a normal working state (that is, corresponding to having exited the low power consumption state).

[0063] 102. When the solid state drive is in a normal power consumption state, determining whether a first vote of each functional module in the solid state drive is received;

[0064] In this embodiment, in order to facilitate dynamic optimization of the power consumption of the solid state drive, a triggering condition for optimizing the power consumption of the solid state drive is set, specifically, a condition for triggering the solid state drive to enter a low power consumption state.

[0065] In this embodiment, in addition to user requests, there are also requests generated inside the SSD, such as garbage collection, wear leveling, cold data migration, etc., which will also generate a large number of requests. In addition, even in the absence of user requests and internal requests, the SSD has some internal background tasks to execute, such as temperature monitoring, firmware inspection, internal formatting, PCIe link processing, etc. Therefore, in order to reduce the idle power consumption of the SSD while meeting the different power consumption performance requirements of multiple functional modules in the SSD, a voting mechanism is introduced as a condition to trigger the SSD to enter a low power consumption state.

[0066] The prior art generally adopts direct statistics on the actual power consumption of the solid-state hard disk. If the actual power consumption exceeds the preset power consumption threshold, the power consumption of the solid-state hard disk is optimized. The present embodiment adds a voting mechanism in the solid-state hard disk to determine whether to optimize the power consumption of the solid-state hard disk through voting. This method can cope with different power consumption performance requirements of different functional modules of the solid-state hard disk.

[0067] In this embodiment, the solid-state hard disk includes many functional modules, such as an interface module, a data reading and writing module, a cache management module, etc. Each functional module votes (enters a low power consumption state or exits a low power consumption state) according to its own workload and power consumption requirements. The voting results of each functional module can indicate that the functional module is currently in an idle or low-load state, so it can be considered to shut down or reduce its operating frequency, thereby reducing the power consumption of the solid-state hard disk.

[0068] In this embodiment, the voting rules and voting methods used by each functional module are not limited and are set according to actual application needs. Among them, the first vote represents that the corresponding functional module agrees to enter the low power consumption state.

[0069] In an optional embodiment, the following voting rules are used to vote for entering a low power consumption state:

[0070] (1) Any functional module that needs to enter a low-power state can vote, one module corresponds to one vote;

[0071] (2) At any time in the normal power consumption state, any functional module can vote to enter the low power consumption state, but it will enter the low power consumption state only when all members (all functional modules) vote in favor, otherwise it will not enter the low power consumption state;

[0072] (3) If the device is already in low power state, voting to enter low power state will not execute any task.

[0073] In an optional embodiment, a voting device is provided to count the voting status of each functional module in the solid-state drive. For example, if there are 10 functional modules in the solid-state drive that participate in power consumption optimization, then when initializing the voting device, the voting objects corresponding to the 10 functional modules and their voting status parameters are set (for example, the voting parameters for entering a low power consumption state and the voting parameters for exiting a low power consumption state are set). By real-time monitoring of the changes in the voting status parameters of each voting object in the voting device, the voting results of each functional module in the solid-state drive can be determined, and then it can be used to determine whether the first vote of each functional module in the solid-state drive has been received.

[0074] It should be further explained that, in this embodiment, there is no limit to the conditions for triggering each functional module to initiate voting to enter a low power consumption state. The first vote may be triggered when entering an idle state, or the first vote may be triggered when the accumulated time after entering the idle state exceeds a preset time.

[0075] 103. If the first vote of each functional module in the solid state drive is received, some functional modules are turned off and / or the operating frequency of some functional modules is reduced to make the solid state drive enter a low power consumption state.

[0076] In this embodiment, if the first vote of each functional module in the solid-state hard drive is received, that is, each functional module requests to enter a low power consumption state, then it is necessary to control the solid-state hard drive to enter a low power consumption state. If the first vote of each functional module in the solid-state hard drive is not received, the power consumption state of the solid-state hard drive continues to be monitored.

[0077] In this embodiment, when it is determined that the first vote of each functional module in the solid state drive is received, any one of the following operations needs to be specifically performed:

[0078] (1) Disable some functional modules

[0079] (2) Reduce the operating frequency of some functional modules

[0080] (3) Close some functional modules and reduce the operating frequency of some functional modules

[0081] In this embodiment, shutting down a functional module means that the corresponding functional module suspends providing corresponding services in a low power consumption state, and reducing the operating frequency of the functional module means lowering the operating frequency in a normal state to adapt to an idle low power consumption state. It should be noted that the above three operations of entering a low power consumption state are specifically set according to actual scene requirements.

[0082] For example, when the solid-state drive enters a low-power state, the FLC (flash controller) MCU (microprocessor) is set to the HALT (shutdown) state, the FLC Phy Controller Clock is set to the Disable (disabled) state, the FLC Phy PLL output is set to the Disabled state, etc. The operating frequency of the DSU (Data Synchronization Unit) module is reduced from 1.0 GHz to 150 MHz, the operating frequency of the FLC module is reduced from 400 MHz to 100 MHz, the operating frequency of the DPFE (Data Path Front End) module is reduced from 420 MHz to 100 MHz, and the operating frequency of the DPBE (Data Path Back End) module is reduced from 300 MHz to 100 MHz, etc.

[0083] In this embodiment, there are many functional modules in the solid-state drive that can participate in power consumption optimization, such as Trim module, Format module, PCIE link speed monitoring module, PCIE link event management module, debugging module, front-end module, flash translation layer module and back-end module, etc. In addition, in the future, more voting participants can be added according to the increase of various functional modules in the solid-state drive. The frequency reduction operation will be performed only after all voting participants agree to reduce the system clock frequency. At the same time, any voting participant who needs to restore the system clock frequency will perform the frequency recovery operation.

[0084] (1) Front-end module

[0085] The front-end module is the interface part for the solid state drive (SSD) to communicate with the host. It is mainly responsible for receiving read and write requests from the host and converting these requests into commands that can be understood by the SSD. The front-end module is connected to the host through a standard interface (such as SATA, SAS, PCIe, etc.) and communicates in accordance with the corresponding protocol (such as ATA, SCSI, NVMe, etc.).

[0086] The front-end module mainly includes: host interface, physical layer (PHY layer), command parsing module, data transmission module and other specific functional modules.

[0087] (2) Flash Translation Layer Module

[0088] The Flash Translation Layer (FTL) is the core software layer in the SSD, responsible for converting the logical address of the host into the physical address of the flash memory and completing the data read and write operations. FTL also undertakes many other important tasks, such as garbage collection, wear leveling, bad block management, etc.

[0089] The flash translation layer module mainly includes: address mapping module, garbage collection module, wear leveling module, bad block management module and other specific functional modules.

[0090] (3) Backend module

[0091] The back-end module is the part of the SSD that interacts directly with the flash memory. It is mainly responsible for writing data to or reading data from the flash memory and ensuring the correctness and reliability of the data.

[0092] The back-end module mainly includes: flash memory controller, ECC (Error Correction Code) module, flash memory interface module and other specific functional modules.

[0093] In an optional embodiment, when the solid-state drive enters a low power state, the front-end module and the flash translation layer module adopt a strategy of reducing the operating frequency, and the back-end module adopts a strategy of shutting down modules and reducing the operating frequency of modules, such as shutting down the ECC module and reducing the operating frequency of the flash controller.

[0094] In this embodiment, the operation of the solid-state drive adopts two modes, low power consumption state and normal power consumption state, and can be switched automatically. When the solid-state drive is in the normal power consumption state, it monitors in real time whether the switching conditions for entering the low power consumption state are met, and specifically determines whether the first vote of each functional module in the solid-state drive (vote to enter the low power consumption state) is received; if the first vote of each functional module in the solid-state drive is received, some functional modules are turned off and / or the operating frequency of some functional modules is reduced to make the solid-state drive enter the low power consumption state. In this embodiment, when the functional modules in the solid-state drive do not detect a request, a vote is initiated to enter the low power consumption state. By turning off and / or reducing the operating frequency of some functional modules, the purpose of reducing the operating power consumption of the solid-state drive is achieved. The voting mechanism introduced in this embodiment can not only reduce idle power consumption, but also meet the different scenario requirements of power consumption performance of multiple functional modules in the solid-state drive. By managing power consumption in the solid-state drive, the power consumption pressure, heat dissipation challenge and operating cost of the server are achieved.

[0095] See also Figure 2 , Figure 2This is the second embodiment of the SSD power consumption optimization method in the embodiment of the present invention. The first embodiment of the SSD power consumption optimization method is used to enable the SSD to enter a low power consumption state from a normal power consumption state, while this embodiment is used to enable the SSD to exit a low power consumption state.

[0096] Specifically, after the above step 101: real-time monitoring of the power consumption state of the solid state drive, the method further includes:

[0097] 201. Monitor the power consumption state of the solid state drive in real time, where the power consumption state includes a low power consumption state and a normal power consumption state;

[0098] 202. When the solid state drive is in a normal power consumption state, determining whether a first vote of each functional module in the solid state drive is received;

[0099] 203. If the first vote of each functional module in the solid state drive is received, shut down some functional modules and / or reduce the operating frequency of some functional modules to make the solid state drive enter a low power consumption state;

[0100] 204. When the solid state drive is in a low power consumption state, determining whether a second vote from one or more functional modules in the solid state drive is received;

[0101] 205. If a second vote of one or more functional modules in the solid state drive is received, some functional modules are enabled and / or the operating frequency of some functional modules is restored to make the solid state drive exit the low power consumption state.

[0102] In this embodiment, when the solid-state drive is in a low power state, the solid-state drive is in an idle state (no internal or external requests), that is, it does not process any requests. When there are any types of requests internally or externally, the solid-state drive needs to exit the low power state in order to process the requests in a timely manner.

[0103] In this embodiment, in order to quickly exit the low power consumption state of the solid state drive and thus respond to the request in time, a voting mechanism is also used to exit the low power consumption state of the solid state drive.

[0104] In an optional embodiment, the following voting rules are used to vote on exiting the low power consumption state:

[0105] (1) Any functional module that needs to exit the low power state can vote, one module corresponds to one vote;

[0106] (2) At any time in the low power state, any functional module can vote to exit the low power state. As long as there is one vote to exit the low power state, the action of exiting the low power state will be executed;

[0107] (3) If the low power consumption state has been exited, the other functional modules or this functional module will not continue to vote to exit the low power consumption state.

[0108] In an optional embodiment, the voting device used in the low power consumption state can be reused. By real-time monitoring the voting state parameter changes of each voting object in the voting device, the voting results of each functional module in the solid state drive can be determined, and then it can be used to determine whether the second vote of one or more functional modules in the solid state drive is received.

[0109] In this embodiment, if a second vote is received from one or more functional modules in the solid-state hard drive, that is, each functional module requests to exit the low power consumption state, then it is necessary to control the solid-state hard drive to exit the low power consumption state. If a second vote is not received from one or more functional modules in the solid-state hard drive, the power consumption state of the solid-state hard drive continues to be monitored.

[0110] In this embodiment, when it is determined that the second vote of one or more functional modules in the solid state drive is received, any one of the following operations needs to be specifically performed:

[0111] (1) Enable some functional modules

[0112] (2) Restore the operating frequency of some functional modules

[0113] (3) Enable some functional modules and restore the operating frequency of some functional modules

[0114] In this embodiment, starting a functional module means that the corresponding functional module provides corresponding services in a non-low power consumption state (equivalent to a normal power consumption state), and restoring the operating frequency of the functional module means reducing the operating frequency relative to entering a low power consumption state, that is, restoring the operating frequency before entering a low power consumption state. It should be noted that the three operations of exiting the low power consumption state are specifically set according to the actual scenario needs.

[0115] For example, when the SSD exits the low power state, set the FLC MCU to the Run state, set the FLCPhy Controller Clock to the Enabled state, set the FLC Phy PLL output to the Enabled state, etc. Restore the operating frequency of the DSU module from 150MHz to 1.0GHz, restore the operating frequency of the FLC module from 100MHz to 400MHz, restore the operating frequency of the DPFE module from 100MHz to 420MHz, and restore the operating frequency of the DPBE module from 100MHz to 300MHz.

[0116] The SSD power consumption optimization method of this embodiment provides a low power consumption mode, in which the low power consumption state of the SSD is achieved by shutting down some functional modules and / or reducing the operating frequency of some functional modules, thereby achieving power saving. At the same time, the SSD power consumption optimization method further provides a solution for exiting the low power consumption mode, achieving the exit of the low power consumption mode and the normal operation of each functional module, thereby further supporting the feasibility of the SSD running in the low power consumption mode.

[0117] See also Figure 3 , Figure 3 This is the third embodiment of the method for optimizing the power consumption of a solid-state drive in the embodiments of the present invention. In this embodiment, since the back-end module manages a large number of hardware circuits that interact with the storage medium NAND, such as NAND flash memory interface circuits, power management circuits, etc., if these hardware circuits can be turned off or the operating frequency can be reduced in an idle state, a certain amount of power consumption can be saved. Therefore, the back-end can be used as an independent voting object and adopt a separate power consumption optimization processing flow. In this embodiment, the method for optimizing the power consumption of a solid-state drive includes:

[0118] 301. Monitor the power consumption state of the solid state drive in real time, where the power consumption state includes a low power consumption state and a normal power consumption state;

[0119] 302. When the solid state drive is in a normal power consumption state, monitor in real time whether the current backend module receives an IO request for accessing the storage medium;

[0120] 303. If an IO request for accessing the storage medium is received, reset the timer and continue monitoring;

[0121] 304. If no IO request for accessing the storage medium is received, determining whether the accumulated duration of the timer exceeds a preset duration threshold;

[0122] 305. If the accumulated duration of the timer does not exceed the preset duration threshold, continue monitoring;

[0123] 306. If the accumulated duration of the timer exceeds a preset duration threshold, shut down some functional modules related to the backend module and / or reduce the operating frequency of some functional modules related to the backend module;

[0124] 307, initiating a first vote for the back-end module to enter low power consumption;

[0125] 308. Determine whether the first vote of each functional module in the solid state drive is received;

[0126] 309. If the first vote of each functional module in the solid state drive is received, shut down some functional modules and / or reduce the operating frequency of some functional modules to make the solid state drive enter a low power consumption state.

[0127] In this embodiment, since the solid-state hard disk adopts a voting method to enter the low power consumption mode, and there are large differences in the environments in which different functional modules are located and the functions they implement, especially the back-end module manages a large number of hardware circuit modules that interact with the storage medium NAND. Therefore, in order to improve the speed at which certain functional modules respond to entering the full disk low power consumption, such as improving the corresponding speed of the back-end module, when the back-end module has no IO request, that is, when the solid-state hard disk is in a normal power consumption state, the back-end module pre-closes some functional modules related to the back-end module before voting and / or reduces the operating frequency of some functional modules related to the back-end module, such as the NAND flash memory interface circuit, the power management circuit and other hardware circuit modules, and then the back-end module votes to enter the full disk low power consumption state.

[0128] In this embodiment, in order to address special circumstances of certain functional modules in the solid-state drive, such as the problem that the back-end module manages many hardware circuits resulting in a slow response to entering a full-disk low-power state, before initiating a vote to enter a low-power state, some functional modules related to the back-end module are pre-shutdown and / or the operating frequency of some functional modules related to the back-end module is reduced, and then the back-end module initiates a vote to enter a low-power state, thereby improving the response speed of the solid-state drive entering a full-screen low-power state.

[0129] See also Figure 4 , Figure 4 This is the fourth embodiment of the SSD power consumption optimization method in the embodiment of the present invention. In this embodiment, the backend continues to exit the SSD low power consumption state as an independent voting object. In this embodiment, the SSD power consumption optimization method includes:

[0130] 401. Monitor the power consumption state of the solid state drive in real time, where the power consumption state includes a low power consumption state and a normal power consumption state;

[0131] 402. When the solid state drive is in a low power consumption state, monitor in real time whether the current backend module receives an IO request for accessing the storage medium;

[0132] 403. If no IO request for accessing the storage medium is received, continue monitoring;

[0133] 404. If an IO request for accessing the storage medium is received, a second vote is initiated for the backend module to exit low power consumption;

[0134] 405. Start some functional modules related to the backend module and / or restore the operating frequency of some functional modules related to the backend module;

[0135] 406. Determine whether a second vote from one or more functional modules in the solid state drive is received;

[0136] 407. If a second vote of one or more functional modules in the solid state drive is received, some functional modules are enabled and / or the operating frequency of some functional modules is restored to make the solid state drive exit the low power consumption state.

[0137] In this embodiment, the back-end module exits the idle low-power state depending on the receipt of an IO request to access the storage medium. Before exiting the low-power state, the back-end module will only receive the IO request and suspend it, and will not immediately schedule the request to the hardware for execution. If an IO request arrives, the back-end module needs to vote to exit low power immediately. Before the back-end module can actually process the request, it needs to vote to exit low power and perform operations on NAND-related hardware, which will cause a certain delay in the processing of IO requests. Therefore, in this embodiment, the following measures are adopted to simplify the operation steps of exiting low power as much as possible and reduce the time consumption of exiting low power, as follows:

[0138] (1) Before initiating the first vote for the back-end module to enter low power consumption, the output enable of the phase-locked loop oscillation circuit module is turned off; after initiating the second vote for the back-end module to exit low power consumption, the output enable of the phase-locked loop oscillation circuit module is turned on.

[0139] The phase-locked loop oscillation circuit (PLL) module is a voltage-controlled oscillator that uses phase synchronization to tune the voltage-controlled oscillator. The frequency and phase of the oscillation signal inside the loop are controlled by an external reference signal to achieve automatic tracking of the output signal frequency to the input signal frequency, so as to generate a negative feedback control system of the target frequency. The phase-locked loop oscillation circuit module has an output enable switch. To disable the output of the PLL module is to turn off the output enable of the PLL. If the entire PLL module is turned off, the PLL module needs to be retrained when the PLL module is re-enabled, which is very time-consuming. Therefore, in this optional embodiment, only the output enable of the PLL module is turned off or on, thereby saving restart time and increasing the speed of switching from a low power consumption state to a normal power consumption state.

[0140] The back-end module stabilizes the PLL module in advance and only disables the PLL module output before initiating a vote to enter low power consumption at the back-end. After initiating a vote to exit low power consumption, it only needs to re-enable the output, thereby minimizing the recovery time.

[0141] (2) Before initiating a first vote for the back-end module to enter low power consumption, the parameter configuration process for restoring each flash memory chip channel is split and parallelized; after initiating a second vote for the back-end module to exit low power consumption, based on the parameter configuration process, the execution operations of the recovery steps of each channel are issued in parallel, so that each channel can execute the same recovery steps in parallel.

[0142] like Figure 5As shown by the solid arrow in the middle, the prior art performs operations on NAND-related hardware in serial on a channel basis, and the execution of each channel can be divided into several steps, some of which require waiting, which results in a relatively long hardware operation time. In this embodiment, the back-end module pre-processes the operations on NAND-related hardware in advance, specifically: splitting and parallelizing the parameter configuration process for restoring each flash chip channel, so that other operations can be executed in parallel while the waiting state is completed, thereby achieving the purpose of reducing time consumption.

[0143] like Figure 5 As shown by the dotted arrows in the middle, in this embodiment, the execution operations of each step can be issued to all channels in parallel at the same time. Where waiting is required, all channels wait together. Therefore, the time consumed in the waiting stage is only the waiting time consumed by one channel in the existing serial scheme, thereby greatly saving the time consumed by hardware operations, improving execution efficiency, and shortening the response time of the back-end module to IO requests.

[0144] In this embodiment, in order to address the problem that the back-end module needs to perform operations on NAND-related hardware before actually processing the request, which causes a delay in responding to IO request processing, the back-end module has adopted sharding, parallelization, and pipelined some hardware-related operations while reducing idle power consumption, thereby enabling a quick response to sudden user requests.

[0145] The above describes the SSD power consumption optimization method in the embodiment of the present invention. The following describes the SSD power consumption optimization device in the embodiment of the present invention. Figure 6 , an embodiment of a solid state hard disk power consumption optimization device in an embodiment of the present invention includes:

[0146] The monitoring module 601 is used to monitor the power consumption state of the solid state drive in real time, where the power consumption state includes a low power consumption state and a normal power consumption state;

[0147] The judgment module 602 judges whether the first vote of each functional module in the solid-state hard disk is received when the solid-state hard disk is in a normal power consumption state;

[0148] The optimization module 603 is used to shut down some functional modules and / or reduce the operating frequency of some functional modules if the first vote of each functional module in the solid state drive is received, so as to make the solid state drive enter a low power consumption state.

[0149] Optionally, in one embodiment, the determination module 602 is further used to: when the solid state drive is in a low power consumption state, determine whether a second vote from one or more functional modules in the solid state drive is received;

[0150] The optimization module 603 is also used for: if a second vote is received from one or more functional modules in the solid state drive, then starting some functional modules and / or restoring the operating frequency of some functional modules to make the solid state drive exit the low power consumption state.

[0151] Optionally, in one embodiment, the functional module includes a backend module, and the monitoring module 601 is further used to: monitor in real time whether the current backend module receives an IO request for accessing the storage medium; if an IO request for accessing the storage medium is received, reset the timer and continue monitoring; if no IO request for accessing the storage medium is received, determine whether the accumulated duration of the timer exceeds a preset duration threshold; if the accumulated duration of the timer does not exceed the preset duration threshold, continue monitoring;

[0152] The optimization module 603 is also used for: if the accumulated duration of the timer exceeds a preset duration threshold, shutting down some functional modules related to the back-end module and / or reducing the operating frequency of some functional modules related to the back-end module; initiating the first vote for the back-end module to enter low power consumption.

[0153] Optionally, in one embodiment, the monitoring module 601 is further used to: monitor in real time whether the current backend module receives an IO request for accessing the storage medium; if no IO request for accessing the storage medium is received, continue monitoring;

[0154] The optimization module 603 is also used to: if an IO request for accessing the storage medium is received, initiate a second vote for the back-end module to exit low power consumption; start some functional modules related to the back-end module and / or restore the operating frequency of some functional modules related to the back-end module.

[0155] Optionally, in one embodiment, the optimization module 603 is further configured to:

[0156] Before initiating the first vote for the backend module to enter low power consumption, the output enable of the phase-locked loop oscillation circuit module is turned off; after initiating the second vote for the backend module to exit low power consumption, the output enable of the phase-locked loop oscillation circuit module is turned on.

[0157] Optionally, in one embodiment, the optimization module 603 is further configured to:

[0158] Before initiating the first vote for the back-end module to enter low power consumption, the parameter configuration process for restoring each flash chip channel is split and processed in parallel;

[0159] After initiating the second vote for the backend module to exit low power consumption, based on the parameter configuration process, execution operations of the recovery steps of each channel are issued in parallel, so that each channel can execute the same recovery steps in parallel.

[0160] Optionally, in one embodiment, the functional module includes a front-end module, a flash translation layer module and a back-end module;

[0161] Among them, when the solid state drive enters a low power consumption state, the front-end module and the flash translation layer module adopt a strategy of reducing the operating frequency, and the back-end module adopts a strategy of shutting down the module and reducing the module operating frequency.

[0162] Since the embodiments of the device part correspond to the embodiments of the above-mentioned method, please refer to the above-mentioned method embodiments for the introduction of the solid-state hard disk power consumption optimization device provided by the present invention. The present invention will not be repeated here, and it has the same beneficial effects as the above-mentioned solid-state hard disk power consumption optimization method.

[0163] above Figure 6 The solid state drive power consumption optimization device in the embodiment of the present invention is described in detail from the perspective of modular functional entities, and the computer device in the embodiment of the present invention is described in detail from the perspective of hardware processing.

[0164] Figure 7 7 is a schematic diagram of the structure of a computer device provided by an embodiment of the present invention. The computer device 700 may have relatively large differences due to different configurations or performances, and may include one or more processors (central processing units, CPU) 710 (for example, one or more processors) and a memory 720, and one or more storage media 730 (for example, one or more mass storage devices) storing application programs 733 or data 732. Among them, the memory 720 and the storage medium 730 can be temporary storage or permanent storage. The program stored in the storage medium 730 may include one or more modules (not shown in the figure), and each module may include a series of instruction operations in the computer device 700. Furthermore, the processor 710 can be configured to communicate with the storage medium 730 to execute a series of instruction operations in the storage medium 730 on the computer device 700.

[0165] The computer device 700 may also include one or more power supplies 740, one or more wired or wireless network interfaces 750, one or more input and output interfaces 760, and / or one or more operating systems 731, such as Windows Server, Mac OS X, Unix, Linux, FreeBSD, etc. It will be appreciated by those skilled in the art that Figure 7 The illustrated computer device structure does not constitute a limitation on the computer device, and may include more or fewer components than illustrated, or combine certain components, or arrange the components differently.

[0166] The present invention also provides a computer device, which includes a memory and a processor, wherein the memory stores computer-readable instructions, and when the computer-readable instructions are executed by the processor, the processor executes the steps of the solid-state hard disk power consumption optimization method in the above-mentioned embodiments.

[0167] The present invention also provides a computer-readable storage medium, which may be a non-volatile computer-readable storage medium or a volatile computer-readable storage medium. Instructions are stored in the computer-readable storage medium. When the instructions are executed on a computer, the computer executes the steps of the solid-state hard drive power consumption optimization method.

[0168] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0169] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk and other media that can store program codes.

[0170] As described above, the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit the same. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features thereof may be replaced by equivalents. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A method for optimizing power consumption of a solid state drive, characterized in that: The solid state hard disk power consumption optimization method comprises: Real-time monitoring of the power consumption state of the solid state drive, wherein the power consumption state includes a low power consumption state and a normal power consumption state; When the solid state drive is in a normal power consumption state, determining whether a first vote of each functional module in the solid state drive is received; If the first vote of each functional module in the solid state drive is received, some functional modules are turned off and / or the operating frequency of some functional modules is reduced to make the solid state drive enter a low power consumption state.

2. The method for optimizing power consumption of a solid state drive according to claim 1, characterized in that: After the real-time monitoring of the power consumption state of the solid state hard disk, the method further includes: When the solid state drive is in a low power consumption state, determining whether a second vote of one or more functional modules in the solid state drive is received; If a second vote is received from one or more functional modules in the solid state drive, some functional modules are turned on and / or the operating frequency of some functional modules is restored to make the solid state drive exit the low power consumption state.

3. The method for optimizing power consumption of a solid-state hard disk according to claim 1 or 2, wherein the functional module comprises a back-end module, characterized in that: Before determining whether a first vote from a back-end module in the solid-state hard disk is received, the solid-state hard disk power consumption optimization method further includes: Monitor in real time whether the current backend module receives IO requests to access the storage medium; If an IO request to access the storage medium is received, the timer is reset and monitoring continues; If no IO request for accessing the storage medium is received, determining whether the accumulated duration of the timer exceeds a preset duration threshold; If the accumulated duration of the timer does not exceed the preset duration threshold, continue monitoring; If the accumulated duration of the timer exceeds a preset duration threshold, some functional modules related to the backend module are shut down and / or the operating frequency of some functional modules related to the backend module is reduced; Initiate the first vote for the backend module to enter low power consumption.

4. The method for optimizing power consumption of a solid state drive according to claim 3, characterized in that: Before determining whether a second vote from a back-end module in the solid-state hard disk is received, the solid-state hard disk power consumption optimization method further includes: Monitor in real time whether the current backend module receives IO requests to access the storage medium; If no IO request to access the storage medium is received, monitoring continues; If an IO request to access the storage medium is received, a second vote is initiated for the back-end module to exit low power consumption; Some functional modules related to the backend module are enabled and / or the operating frequencies of some functional modules related to the backend module are restored.

5. The method for optimizing power consumption of a solid state drive according to claim 4, characterized in that: The solid state drive power consumption optimization method further includes: Before initiating the first vote for the backend module to enter low power consumption, turn off the output enable of the phase-locked loop oscillation circuit module; After initiating the second vote for the back-end module to exit low power consumption, the output enable of the phase-locked loop oscillation circuit module is turned on.

6. The method for optimizing power consumption of a solid state drive according to claim 3, characterized in that: The solid state drive power consumption optimization method further includes: Before initiating the first vote for the back-end module to enter low power consumption, the parameter configuration process for restoring each flash chip channel is split and processed in parallel; After initiating the second vote for the backend module to exit low power consumption, based on the parameter configuration process, execution operations of the recovery steps of each channel are issued in parallel, so that each channel can execute the same recovery steps in parallel.

7. The method for optimizing power consumption of a solid state drive according to claim 1, characterized in that: The functional modules include a front-end module, a flash translation layer module and a back-end module; Among them, when the solid state drive enters a low power consumption state, the front-end module and the flash translation layer module adopt a strategy of reducing the operating frequency, and the back-end module adopts a strategy of shutting down the module and reducing the module operating frequency.

8. A solid state hard disk power consumption optimization device, characterized in that: The solid state hard disk power consumption optimization device comprises: A monitoring module, used to monitor the power consumption state of the solid state drive in real time, wherein the power consumption state includes a low power consumption state and a normal power consumption state; A judgment module, when the solid state drive is in a normal power consumption state, judges whether a first vote of each functional module in the solid state drive is received; The optimization module is used to shut down some functional modules and / or reduce the operating frequency of some functional modules if the first vote of each functional module in the solid state drive is received, so as to make the solid state drive enter a low power consumption state.

9. A computer device, characterized in that: The computer device comprises: a memory and at least one processor, wherein instructions are stored in the memory; The at least one processor calls the instructions in the memory so that the computer device executes the solid state drive power consumption optimization method according to any one of claims 1 to 7.

10. A computer-readable storage medium having instructions stored thereon, characterized in that: When the instructions are executed by the processor, the solid-state hard disk power consumption optimization method according to any one of claims 1 to 7 is implemented.

Citation Information

Cited By

  • Method for analyzing and optimizing power consumption data of solid state disk

    CN121934785A

  • A solid state disk power consumption data analysis optimization method

    CN121934785B