A grouped fan speed control method
Patent Information
- Application Number
- TW114106299
- Authority / Receiving Office
- TW · TW
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-02-20
- Publication Date
- 2026-09-01
- Estimated Expiration
- 2045-02-19
AI Technical Summary
Existing fan speed control methods in air cooling systems fail to respond instantaneously to temperature changes due to lengthy computation times, leading to excessively high transient temperatures and reduced performance and reliability in electronic devices.
A grouped fan speed control method that identifies main and secondary heat-generating modules based on power consumption variation, executing cyclic commands to prioritize control data calculation for the main modules, thereby increasing fan speed control frequency.
The method effectively suppresses excessively high transient temperatures, improving server performance and reliability by increasing the frequency of fan speed control for main heat-generating modules.
Smart Images

Figure TWG2TA001073796_001 
Figure TWG2TA001073796_002 
Figure TWG2TA001073796_003
Abstract
Description
[Technical Field]
[0001] This invention relates to a fan speed control method, and more particularly to a grouped fan speed control method. [Previous Technology]
[0002] Air cooling systems in electronic devices (such as servers) are a widely used heat dissipation technology. Their main function is to regulate the internal temperature of the electronic device, ensuring stable and efficient operation. In an air cooling system, fan modules generate airflow within the electronic device, utilizing thermal convection to dissipate heat and reduce the temperature of electronic modules (such as the central processing unit, memory, hard drive, etc.). Compared to liquid cooling systems, air cooling systems have the following advantages: lower operating costs, simpler maintenance, easier installation, and no impact on server operation due to coolant leaks.
[0003] In the prior art, various control methods (such as PID control) are typically used to adjust the fan speed to ensure that the temperature of the electronic module is maintained within a reasonable range. When the temperature sensor detects a rise in the temperature of the electronic module, the control module increases the fan speed to improve heat dissipation efficiency and suppress overheating.
[0004] However, the power consumption of electronic modules varies. For example, the power consumption of a central processing unit (CPU) or graphics processing unit (GPU) varies more, and its temperature fluctuates more and more frequently; while the power consumption of a solid-state drive (SSD) or network interface controller (NIC) varies less, and its temperature fluctuates less and less frequently.
[0005] As mentioned above, in the prior art air-cooling control logic, differentiated processing based on the power consumption variations of different electronic modules was typically not performed; instead, a full sampling method was used. When the control module executes control commands, control data is calculated using the temperature values of all electronic modules, thereby controlling the fan speed. Because data from all electronic modules needs to be processed, the calculation time is lengthy, resulting in the fan speed control failing to respond instantly to temperature changes in the electronic modules. This is especially true for central processing units or graphics processing units with large power consumption variations, leading to excessively high transient temperatures and consequently, reduced performance and reliability of electronic devices. [Summary of the Invention]
[0006] Given that the previous technology used a full sampling method to control the fan, the calculation time was too long, making it difficult for the fan speed control to respond in real time to the temperature changes of the electronic module, resulting in excessively high transient temperature, which in turn led to problems such as reduced server performance and decreased reliability.
[0007] The main objective of this invention is to provide a grouped fan speed control method, which defines the main heat-generating module and the secondary heat-generating module of the electronic module according to the magnitude of the change in operating power consumption, and then makes the control module cyclically execute a set of cyclic commands that includes at least one main heat dissipation control command and at least one secondary heat dissipation control command.
[0008] When executing the main heat dissipation control command, only the temperature value of the main heat-generating module is read, and multiple main module control data are calculated based on this value to control the fan speed. In other words, the frequency of fan speed control for the main heat-generating module can be increased, effectively suppressing excessively high transient temperatures and improving issues such as reduced server performance and decreased reliability.
[0009] Accordingly, the necessary technical means adopted by the present invention to solve the problems of the prior art is to provide a grouped fan speed control method, which uses a control module to control the fan speed of a fan module, thereby dissipating heat from a plurality of electronic modules.
[0010] Preferably, the control module is a Baseboard Management Controller (BMC). Preferably, the electronic module includes a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), a Network Interface Controller (NIC), and a Solid-State Disk (SSD).
[0011] The grouped fan speed control method includes the following steps: First, based on the magnitude of the change in operating power consumption, the electronic module is defined into a plurality of main heat-generating modules and a plurality of secondary heat-generating modules.
[0012] Next, a temperature detection module is used to detect the temperature values of the main heating module and the secondary heating module during operation.
[0013] Next, the control module is made to execute a cyclic command set in a cyclic manner, and the cyclic command set includes at least one primary heat dissipation control command and at least one secondary heat dissipation control command executed in accordance with an execution sequence.
[0014] Furthermore, when the control module executes the main heat dissipation control command, it reads the temperature value of the main heat-generating module, calculates a plurality of main module control data accordingly, and uses the main module control data to control the fan speed of the fan module. Preferably, the control module reads the temperature value of the main heat-generating module and calculates a plurality of main module control data using proportional-integral-derivative (PID) control. Preferably, the control module uses the largest of the main module control data as an actual control data to control the fan speed of the fan module.
[0015] Finally, when the control module executes the secondary heat dissipation control command, it reads the temperature values of the main heat-generating module and the secondary heat-generating module, and calculates the main module control data and multiple secondary module control data respectively, and uses the main module control data and secondary module control data to control the fan speed of the fan module.
[0016] Preferably, the control module reads the temperature values of the main heat-generating module and the secondary heat-generating module, and calculates the control data of the main module and a plurality of secondary module control data using proportional-integral-derivative control. Preferably, the control module uses the largest of the main module control data and the secondary control data as an actual control data to control the fan speed of the fan module.
[0017] Based on the above-mentioned necessary technical means, the following auxiliary technical means can be derived. Preferably, both the main module control data and the secondary module control data are pulse-width modulation (PWM) values.
[0018] In summary, the grouped fan speed control method provided by the present invention defines the main heat-generating module and the secondary heat-generating module according to the magnitude of the change in operating power consumption of the electronic module, and then makes the control module cyclically execute a set of cyclic commands including at least one main heat dissipation control command and at least one secondary heat dissipation control command.
[0019] When executing the main heat dissipation control command, only the temperature value of the main heat-generating module is read, and multiple main module control data are calculated based on this value to control the fan speed. In other words, the frequency of fan speed control for the main heat-generating module can be increased, effectively suppressing excessively high transient temperatures and improving issues such as reduced server performance and decreased reliability.
[0020] The specific embodiments used in this creation will be further explained through the following embodiments and drawings.
Implementation Method
[0021] Since the grouped fan speed control method provided by the present invention can be widely used in various electronic devices, it will not be described in detail here. Only a preferred embodiment is listed for specific explanation. This embodiment is only used to conveniently and clearly assist in explaining the purpose and effect of the embodiments of the present invention.
[0022] Please refer to Figure 1, which is a block diagram of an implementation system of the grouped fan speed control method provided by the present invention. As shown in Figure 1, the electronic device 100 includes a plurality of electronic modules, a temperature detection module 300, an intake air temperature detection module 301, a control module 400, and a fan module 500.
[0023] In this embodiment, the electronic device 100 is, for example, a server, but is not limited thereto. In other embodiments, it may be, for example, a desktop computer, a laptop computer, an in-vehicle device, an Internet of Things device, etc.
[0024] In this embodiment, the electronic module is a module that performs functions within the electronic device 100. Taking a server as an example, the electronic module can be, for example, a central processing unit (CPU), a graphics processing unit (GPU), a network interface controller (NIC), a solid-state disk (SSD), etc. In this embodiment, a total of ten electronic modules are included, but the number is not limited to this.
[0025] Because the temperature performance of different electronic modules varies, in this embodiment, based on the magnitude of the change in operating power consumption, the ten electronic modules are defined as two main heat-generating modules 200 to 201 and eight secondary heat-generating modules 202 to 209, but this is not a limitation. In other embodiments, the allocation ratio can be flexibly adjusted.
[0026] The so-called operating power consumption variation refers to the difference between the maximum power consumption and the minimum power consumption of the electronic module under various states (such as standby, reduced load, full load, overload operation, or other operating states). The larger the difference, the greater the operating power consumption variation, indicating that its heat generation will have a greater impact on the ambient temperature, and it is defined as a primary heat-generating module; conversely, the smaller the difference, the smaller the operating power consumption variation, indicating that its heat generation will have a smaller impact on the ambient temperature, and it is defined as a secondary heat-generating module. The specific dividing criteria are determined by the user based on experience.
[0027] Common primary heat-generating modules can be, for example, central processing units (CPUs) or graphics processing units (GPUs), whose power consumption can vary by hundreds of watts during operation. In other words, their temperature fluctuations are large and frequent. Common secondary heat-generating modules, on the other hand, can be, for example, network interface cards (NICs) or solid-state drives (SSDs), whose power consumption differences during operation are not significant. In other words, their temperature fluctuations are small and infrequent.
[0028] The temperature detection module 300 is electrically connected to the main heating modules 200 to 201, the secondary heating modules 202 to 209, and the control module 400. It is used to detect the temperature values of the plurality of main heating modules and the plurality of secondary heating modules, and then transmit these values to the control module 400. The temperature detection module 300 can be implemented in different ways depending on actual needs: it can be an integrated design, with a plurality of temperature detectors installed in a single module to simultaneously detect the temperature values of each electronic module; or it can be a distributed design, with temperature detectors built into each electronic module, transmitting the detected temperature values only after they have been detected.
[0029] The intake air temperature detection module 301 is located at the intake position of the electronic device 100 and is electrically connected to the control module 400. It detects an intake air temperature value and transmits it to the control module 400. The control module 400 is electrically connected to the temperature detection module 300, the intake air temperature detection module 301, and the fan module 500. It calculates control data based on the temperature value and controls the fan speed of the fan module 500. The specific control logic will be explained in subsequent paragraphs. In this embodiment, the control module 400 is a Baseboard Management Controller (BMC).
[0030] The fan module 500 is electrically connected to the control module 400 and includes at least one fan for controlled airflow within the electronic device 100 to dissipate heat from the electronic module. Furthermore, as the electronic device 100 becomes larger, it can include more fans to ensure efficient heat dissipation.
[0031] Please refer to the second figure, which is a flowchart showing the steps of the grouped fan speed control method provided by the present invention. As shown in the second figure, the grouped fan speed control method uses the control module 400 to control the fan speed of the fan module 500, thereby dissipating heat from a plurality of electronic modules (main heat-generating modules 200 to 201 and secondary heat-generating modules 202 to 209). The grouped fan speed control method includes steps S101 to S105.
[0032] First (step S101), based on the magnitude of the change in operating power consumption, the plurality of electronic modules are defined as the main heat-generating modules 200 and 201 and the secondary heat-generating modules 202 to 209 respectively.
[0033] Next (step S102), the temperature detection module 300 detects multiple main heating module temperature values and multiple secondary heating module temperature values during operation of the main heating modules 200 and 201 and the secondary heating modules 202 to 209. In this embodiment, a total of two main heating module temperature values and eight secondary heating module temperature values are included.
[0034] Next (step S103), the control module 400 cyclically executes a set of cyclic commands, and the set of cyclic commands includes at least one primary heat dissipation control command and at least one secondary heat dissipation control command executed according to an execution sequence. In this embodiment, the set of cyclic commands includes two primary heat dissipation control commands and one secondary heat dissipation control command, but is not limited thereto. In other embodiments, the number of primary heat dissipation control commands can be flexibly adjusted according to the actual heat dissipation situation. For example, the number of primary heat dissipation control commands can be determined based on the number of primary heat-generating modules to respond to temperature changes in real time.
[0035] As mentioned above, the control module 400 can only execute one command (primary heat dissipation control command or secondary heat dissipation control command) at a time, and the execution sequence refers to the order in which the above commands are arranged. Specifically, in this embodiment, the control module 400 executes the secondary heat dissipation control command once after executing the primary heat dissipation control command twice, and repeats this cycle.
[0036] Then (step S104), when the control module 400 executes the main heat dissipation control command, it reads the temperature value of the main heat-generating module, calculates a plurality of main module control data, and uses the main module control data to control the fan speed of the fan module 500. In this embodiment, a total of two main module control data are calculated.
[0037] Finally (step S105), when the control module 400 executes the secondary heat dissipation control command, it reads the temperature values of the primary heat-generating module and the secondary heat-generating module, and calculates the primary module control data and a plurality of secondary module control data accordingly. The primary module control data and the secondary module control data are then used to control the fan speed of the fan module 500. In this embodiment, a total of two primary module control data and eight secondary module control data are calculated.
[0038] In steps S104 and S105, the system adopts a control strategy of "first calculating control data based on the temperature value, and then using the control data to control the fan speed". This control strategy has multiple implementation methods in practical applications, which will be described in detail in subsequent paragraphs.
[0039] The biggest difference between the present invention and the prior art lies in the time required to execute commands. In the prior art, the electronic modules were not grouped. When executing each control command, it was necessary to read the temperature values of all electronic modules, calculate the control data of all electronic modules, and then control the fan speed.
[0040] In this invention, taking this embodiment as an example, the electronic modules are divided into main heat-generating modules 200 and 201 and secondary heat-generating modules 202 to 209, and the commands are divided into main heat dissipation control commands and secondary heat dissipation control commands. The secondary heat dissipation control commands are the same as in the prior art. When executed, they read the temperature values of all electronic modules, calculate the control data of all electronic modules, and then control the fan speed.
[0041] When executing the main heat dissipation control command, only the temperature values of the main heat-generating modules 200 and 201 are read, and the main module control data is calculated before controlling the fan speed. In other words, the calculation steps related to the secondary heat-generating modules 202 to 209 can be omitted, thereby increasing the control frequency for the main heat-generating modules 200 and 201.
[0042] Taking the two main heating modules 200 and 201 and the eight secondary heating modules 202 to 209 (a total of ten electronic modules) in this embodiment as an example, the execution of one cycle command set is assumed to be the temperature value reading time of a single electronic module plus the control data calculation time ∆t.
[0043] In this embodiment, a cyclic command set includes two primary heat dissipation control commands and one secondary heat dissipation control command. Each primary control command takes a total of 2∆t, and each secondary heat dissipation control command takes (2+8)∆t, for a total time of 2∆t+2∆t+(2+8)∆t=14∆t. In contrast, in the prior art, a cyclic command set is equivalent to three secondary heat dissipation control commands, taking a total time of (2+8)∆t+(2+8)∆t+(2+8)∆t=30∆t.
[0044] As stated above, compared to the prior art, the control frequency improvement calculation method of the present invention is as follows: 1 - (14∆t) / (30∆t) = 16 / 30, which is approximately a 53% improvement in control frequency. In practical application, when using the prior art, the transient temperature of the central processing unit (CPU) during operation reaches as high as 94 degrees Celsius. However, with the control method of the present invention, due to the increase in control frequency, the transient temperature only reaches 87 degrees Celsius and then stops rising, effectively avoiding the CPU triggering an overheating throttling mechanism (e.g., limiting the operating frequency when the transient temperature exceeds 90 degrees Celsius), thereby maintaining stable performance.
[0045] Next, it will be explained how the present invention uses control data to control the fan speed. First, the control module 400 of this embodiment controls the fan based on pulse-width modulation (PWM). That is, both the main module control data and the secondary module control data are pulse-width modulation values, but this is not a limitation. In other embodiments, the control data can be parameters that can be used to control the fan, such as current values, voltage values, and speed values. The specific structure and working principle of controlling the fan speed using pulse-width modulation values are prior art and will not be described again in this invention.
[0046] As mentioned above, since this embodiment includes multiple electronic modules, multiple pulse width modulation values will be calculated after reading the temperature value. In order to cope with the most severe heat dissipation conditions, this embodiment uses the largest of the multiple pulse width modulation values as the actual control data.
[0047] In step S104, the control module 400 controls the fan speed of the fan module 500 using the largest of the two main module control data. In step S105, the control module 400 controls the fan speed of the fan module 500 using the largest of the two main module control data and eight secondary module control data. Depending on the application scenario, in other embodiments, the average value of a plurality of pulse width modulation values can be used as the control data to control the fan speed.
[0048] As described above, it will be explained how to calculate control data (pulse width modulation value) using temperature value. In this embodiment, after the control module 400 reads the temperature value, it can calculate the control data using proportional-integral-derivative (PID) control, but it is not limited to this. In other embodiments, the control module 400 can utilize other types of control techniques such as fuzzy control and adaptive control. The basic proportional-integral-derivative control formula is as follows:
[0049]
[0050] Where, PWM n(t) is the pulse width modulation value calculated by the nth electronic module at second t. Kp,n, Ki,n, and Kd,n are the proportional, integral, and derivative parameters in the proportional-integral-derivative control process, respectively, and are adjusted according to actual control requirements. EV n(t) is the temperature difference between the nth electronic module and the desired operating temperature at second t, calculated using the following formula:
[0051]
[0052] PV n(t) is the temperature value of the nth electronic module at the tth second, i.e., the temperature value of the main heating module or the secondary heating module. SV n(t) is the above-mentioned expected operating temperature value of the nth electronic module at the tth second. The expected operating temperature value needs to be set according to the actual temperature control requirements.
[0053] However, basic proportional-integral-derivative (PID) control suffers from slow response, meaning the difference between the initial control value and the steady-state control value is too large, resulting in an excessively long response time. Therefore, to improve the slow response, in this embodiment, the PID control formula is adjusted as follows:
[0054]
[0055] Wherein, PWM pid,0 is the initial control value used to improve response time, and its specific value can be set based on practical experience. In this embodiment, the calculation formula for PWM pid,0 is as follows:
[0056]
[0057] Where b is a floating correction value greater than zero (in practice, it is taken as 5 to 10); the PWM inlet is an intake air temperature control data, and its calculation formula is as follows:
[0058]
[0059] Wherein, Inlet_Temp is the intake air temperature value detected by the intake air temperature detection module 301; a and b are parameters in the linear speed control relationship, and the specific values are set according to practical experience. In the actual electronic device 100, there are also multiple onboard components (not shown in the figure, such as adapter card sensors, riser board sensors) whose temperature values cannot be read and still need heat dissipation. Therefore, when controlling the fan speed, the control module 400 will add the intake air temperature control data as a basis (for example, using the maximum value between the main module control data and the intake air temperature control data as the actual control data).
[0060] As mentioned above, the reason for subtracting b from the intake air temperature control data and using it as the initial control value is to avoid the electronic module causing the control module 400 to calculate a large control data due to a small temperature rise, which would lead to unstable fan speed control.
[0061] In summary, the grouped fan speed control method provided by the present invention defines the main heat-generating module and the secondary heat-generating module according to the magnitude of the change in operating power consumption of the electronic module, and then makes the control module cyclically execute a set of cyclic commands including at least one main heat dissipation control command and at least one secondary heat dissipation control command.
[0062] When executing the main heat dissipation control command, only the temperature value of the main heat-generating module is read, and multiple main module control data for controlling the fan speed are calculated accordingly. In other words, the frequency of fan speed control for the main heat-generating module can be increased, effectively suppressing excessively high transient temperatures and improving issues such as reduced server performance and decreased reliability.
[0063] The detailed description of the preferred embodiments above is intended to more clearly describe the features and spirit of the present invention, and is not intended to limit the scope of the present invention with the preferred embodiments disclosed above. On the contrary, the aim is to cover various modifications and equivalent arrangements within the scope of the patent claims of the present invention. [Simplified Explanation of the Diagram]
[0064] The first figure shows a block diagram of the implementation system of the grouped fan speed control method provided by the present invention; and the second figure shows a flowchart of the steps of the grouped fan speed control method provided by the present invention.
Claims
1. A grouped fan speed control method, which utilizes a control module to control the fan speed of a fan module to dissipate heat from a plurality of electronic modules, the grouped fan speed control method comprising the following steps: (a) defining a plurality of primary heat-generating modules and a plurality of secondary heat-generating modules based on the magnitude of power consumption variation among the electronic modules; (b) using a temperature detection module to detect the temperature values of the primary heat-generating modules and the secondary heat-generating modules during operation; (c) causing the control module to cyclically execute a set of cyclic commands, the set of cyclic commands including at least one primary heat dissipation control command and at least one secondary heat dissipation control command executed according to an execution sequence; (d) when the control module executes the at least one primary heat dissipation control command, reading the temperature values of the primary heat-generating modules, calculating control data for a plurality of primary modules based on this data, and using this control data to control the fan speed of the fan module; and (e) When the control module executes the at least one heat dissipation control command, it reads the temperature values of the main heat-generating modules and the temperature values of the secondary heat-generating modules, calculates the control data of the main modules and the control data of a plurality of secondary modules respectively, and uses the control data of the main modules and the control data of the secondary modules to control the fan speed of the fan module.
2. The grouped fan speed control method as described in claim 1, wherein, In step (d), the control module reads the temperature values of the main heating modules and uses proportional-integral-derivative (PID) control to calculate multiple control data for the main modules.
3. The grouped fan speed control method as described in claim 1, wherein, In step (e), the control module reads the temperature values of the main heating modules and the temperature values of the secondary heating modules, and uses proportional-integral-derivative control to calculate the control data of the main modules and the control data of a plurality of secondary modules respectively.
4. The grouped fan speed control method as described in claim 1, wherein, The control data for these main modules and the control data for these secondary modules are all pulse-width modulation (PWM) values.
5. The grouped fan speed control method as described in claim 1, wherein, In step (d), the control module uses the largest value among the main module control data to control the fan speed of the fan module.
6. The grouped fan speed control method as described in claim 1, wherein, In step (e), the control module controls the fan speed of the fan module using the largest of the main module control data and the secondary module control data.
7. The grouped fan speed control method as described in claim 1, wherein, These electronic modules include a central processing unit (CPU), a graphics processing unit (GPU), a network interface controller (NIC), and a solid-state disk (SSD).
8. The grouped fan speed control method as described in claim 1, wherein, The control module is a Baseboard Management Controller (BMC).