Mute heat dissipation intelligent regulation and control method for microcomputer

By using spectrum analysis and dynamic fan speed adjustment, the problem of identifying and avoiding high-frequency whistling noise in microcomputers has been solved, achieving stable and efficient silent heat dissipation and improving user experience.

CN121565197APending Publication Date: 2026-02-24SHENZHEN CITY MAIDIJIE ELECTRONICS TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511412793.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-09-29
Publication Date
2026-02-24

AI Technical Summary

Technical Problem

Existing microcomputer heat dissipation control strategies rely solely on temperature feedback, failing to identify and avoid high-frequency whistling noises, resulting in a poor user experience.

Method used

By capturing acoustic signals and performing spectral analysis, the narrowband energy peak at fan speed is identified and quantified, annoyance speed avoidance range is established, and the fan speed is dynamically adjusted to avoid high-frequency whistling by combining the benchmark heat dissipation performance slope and penalty value, and the heat dissipation system is self-compensated for attenuation.

Benefits of technology

It improves the acoustic experience without reducing the overall volume, ensures stable and efficient heat dissipation throughout the device's lifespan, avoids overheating and frequency throttling and noise traps, and provides a deep quiet effect.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121565197A_ABST
    Figure CN121565197A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of intelligent regulation and control of heat dissipation, in particular to an intelligent regulation and control method for mute heat dissipation of a microcomputer, which comprises the following steps of: operating a heat dissipation fan of the microcomputer on a preset rotating speed step, capturing an acoustic signal, performing short-time Fourier transform on the signal to generate a time-frequency spectrogram at each rotating speed. According to the invention, by capturing the acoustic signal and carrying out spectral analysis to identify and quantify the narrow-band energy peak value at each rotating speed, a rotating speed avoiding interval directly associated with the subjective disturbance degree of human ears can be established, so that the heat dissipation regulation target is raised from simply reducing the sound pressure level to actively avoiding the annoying tone of a specific frequency, and the aim of heat dissipation regulation and control is fulfilled. Even if the overall volume cannot be further reduced, the acoustic experience of a user can be improved, a heat dissipation system attenuation factor caused by dust accumulation or hardware abrasion is quantified, the attenuation factor is directly used for dynamically adjusting the response strength of a control algorithm, and the reduction of physical performance can be self-compensated.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of intelligent heat dissipation control technology, and in particular to a silent intelligent heat dissipation control method for a microcomputer. Background Technology

[0002] The silent heat dissipation intelligent control method for microcomputers is a heat dissipation system control strategy applied to compact computing devices such as laptops and mini PCs.

[0003] Current microcomputer cooling control strategies rely on a single temperature feedback mechanism, using only fan speed reduction as a means of noise reduction, ignoring the psychoacoustic characteristics of noise. They struggle to identify high-frequency whistling or narrowband noise—low in decibel levels but extremely sensitive to the human ear—generated by mechanical resonance or aerodynamic effects at certain target speeds. For example, a fan might have a lower decibel level at 2500 RPM than at 3000 RPM, but the specific frequency whistling it produces is more bothersome to the user. Current technology struggles to avoid this, resulting in a poor user experience. Therefore, improvements are needed. Summary of the Invention

[0004] The purpose of this invention is to overcome the shortcomings of existing technologies and propose a silent heat dissipation intelligent control method for microcomputers.

[0005] To achieve the above objectives, the present invention adopts the following technical solution: a method for intelligent control of silent heat dissipation in a microcomputer, comprising the following steps: The microcomputer cooling fan is run at a preset speed step. Acoustic signals are captured, and short-time Fourier transform is performed on the signals to generate a time-frequency spectrum. At each speed, the difference between the narrow band energy of each frequency and the background energy of the adjacent frequency bands on both sides is calculated. Frequency points where the difference exceeds the preset auditory masking threshold are determined as annoying tones, and the speed range is associated to establish a fan annoying speed avoidance interval. According to the fan disturbance speed avoidance range, a fixed speed is selected to drive the fan in the non-avoidance range, and a preset command sequence is started to generate constant heat power. The CPU core temperature is continuously sampled at fixed time intervals through the motherboard sensor, and the data point set of the temperature entering the linear rise stage is extracted. The data point set is fitted by the least squares method to obtain a straight line, and the slope of the temperature change is calculated to obtain the benchmark heat dissipation performance slope. Based on the benchmark heat dissipation performance slope, the benchmark test process is repeated under preset operating conditions to obtain the current heat dissipation performance slope. The current heat dissipation performance slope is calculated with the benchmark heat dissipation performance slope to obtain the heat dissipation attenuation factor. The current fan speed is monitored and compared with the fan disturbance speed avoidance interval to assign a steady-state penalty value. The first-order difference and second-order difference operations are performed on the speed time series to obtain the rate of change and acceleration penalty values. The three penalty values ​​are weighted and calculated to obtain the multi-objective heat dissipation regulation cost set.

[0006] Preferably, the method further includes: based on the multi-objective heat dissipation control cost set, solving for the target speed point that minimizes the sum of the cost set within a preset time domain, constructing a search space with time as the horizontal axis and speed as the vertical axis, recursively pushing forward step by step from the current speed state, evaluating the multi-objective heat dissipation control cost set values ​​corresponding to all achievable speed states at each time step, selecting and connecting the state point with the lowest cumulative cost, and generating the optimal fan speed drive sequence.

[0007] Preferably, the step of obtaining the fan disturbance speed avoidance range is as follows: The microcomputer cooling fan is run at a preset speed step to capture acoustic signals. The captured acoustic signals are windowed in frames using the Hanning window function. Discrete Fourier transform is performed on each frame of data. The transformed complex result is converted into amplitude, and the amplitude of each frame is arranged along the time axis to establish time spectrum data. Based on the time-frequency spectrum data, in each stable rotational speed segment, each frequency point in the time-frequency spectrum is traversed and defined as the center frequency. Preset bandwidths on both sides of the center frequency are selected as background frequency bands. The narrowband energy of the center frequency and the average energy of the background frequency bands on both sides are calculated respectively, and the difference between the two is used to obtain the frequency energy highlight value. Based on the frequency energy prominence value, a point-by-point comparison is made with a preset auditory masking threshold. All frequency points exceeding the threshold are filtered out, and the frequency points and corresponding rotation speeds are recorded. Continuous rotation speed ranges with the same frequency characteristics are merged and set as prohibited areas to establish a fan disturbance rotation speed avoidance interval.

[0008] Preferably, the step of obtaining the reference heat dissipation performance slope is as follows: According to the fan disturbance speed avoidance range, a fixed speed is selected within the non-avoidance range to drive the fan, start a preset instruction sequence to generate constant heat power, and trigger a timer. The timer periodically reads the digital value of the CPU core temperature from the motherboard sensor, pairs and stores each temperature reading with the corresponding timestamp, and obtains the original temperature sampling sequence. Based on the original temperature sampling sequence, the temperature difference between adjacent sampling points is calculated. Starting from the beginning of the sequence, when N consecutive temperature differences are greater than a preset positive value and the rate of change is stable within the target range, the point is marked as the start of the linear segment. The point is marked as the end point when the temperature difference decreases, thus obtaining a linear temperature rise data point set. Based on the linear temperature rise data point set, the time and temperature values ​​in the data point set are used as independent and dependent variables, respectively, to construct a linear equation. By adjusting the parameters to minimize the sum of the squares of the vertical distances from all data points to the straight line, the slope term parameter in the equation is extracted as the slope of the temperature value change, and the baseline heat dissipation performance slope is obtained.

[0009] Preferably, the step of obtaining the multi-target heat dissipation control cost set is as follows: Based on the benchmark heat dissipation performance slope, the benchmark test process is repeated under preset operating conditions to obtain the current heat dissipation performance slope. The current heat dissipation performance slope is used as the divisor, and the benchmark heat dissipation performance slope is used as the divisor to perform calculations to obtain the heat dissipation system attenuation factor. Based on the attenuation factor of the heat dissipation system, the current fan speed is monitored to determine whether it falls within the fan disturbance speed avoidance range. If it does, a penalty value is assigned from a preset table. At the same time, the change rate is obtained by subtracting the preceding and following terms from the speed time series. The acceleration is obtained from the change rate series, and a sub-item control penalty value is generated.

[0010] Preferably, the step of obtaining the multi-objective heat dissipation control cost set further includes: calculating the multi-objective heat dissipation control cost set based on the sub-item control penalty values.

[0011] Preferably, the step of obtaining the optimal fan speed drive sequence is as follows: Based on the multi-objective heat dissipation control cost set, the target speed point that minimizes the sum of the cost set is solved in the preset time domain. The preset time domain is discretized into multiple time steps, and the fan speed range is discretized into multiple speed levels. The intersection of each time step and speed level constitutes a state node, and the connection between state nodes constitutes an reachable path, thus constructing a speed state search space. Based on the speed state search space, starting from the current speed state node, calculate the transition cost to all reachable state nodes in the next time step. The cost comes from the multi-target heat dissipation control cost set. Add the transition cost to the current node's cumulative cost, update and record the minimum cumulative cost and source path for each next time step node, and obtain the minimum cumulative cost path.

[0012] Preferably, the step of obtaining the optimal fan speed drive sequence further includes: Based on the path with the lowest cumulative cost, select the state node with the lowest cumulative cost from the preset end time step in the time domain. Based on the source path information recorded by the node, backtrack to the starting time step and arrange the speed values ​​corresponding to all state nodes on the backtracking path in chronological order to generate the optimal fan speed drive sequence.

[0013] Compared with the prior art, the advantages and positive effects of the present invention are as follows: This invention captures acoustic signals and performs spectral analysis to identify and quantify narrowband energy peaks at various speeds. This allows the establishment of a speed avoidance range directly related to the subjective annoyance level of the human ear, elevating the goal of heat dissipation control from simply reducing sound pressure level to actively avoiding annoying tones at specific frequencies. Even when the overall volume cannot be further reduced, it can still improve the user's acoustic experience. Simultaneously, by establishing a baseline heat dissipation performance slope for the initial state of the device and periodically comparing it with the current performance slope, the attenuation factor of the heat dissipation system caused by dust accumulation or hardware wear is quantified. This attenuation factor is directly used to dynamically adjust the response intensity of the control algorithm, which can self-compensate for the decline in physical performance and ensure that the device maintains stable and predictable heat dissipation performance throughout its entire life cycle, avoiding overheating and frequency reduction due to aging. Furthermore, the steady-state penalty for avoiding annoyance ranges, the dynamic penalty for suppressing drastic speed changes, and the aging compensation mechanism are integrated into a unified multi-objective cost set, and the optimal speed drive sequence in the future time domain is solved. This not only drives the fan to smoothly bypass noise traps but also completes speed switching in a way that is least sensitive to the human ear, achieving a balance between deep silence and sustained high efficiency. Attached Figure Description

[0014] Figure 1 This is a schematic diagram of the steps of the present invention. Detailed Implementation

[0015] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention.

[0016] Please see Figure 1 This invention provides a technical solution: a method for intelligent control of silent heat dissipation in a microcomputer, comprising the following steps: The microcomputer cooling fan is run at a preset speed step. Acoustic signals are captured, and short-time Fourier transform is performed on the signals to generate a time-frequency spectrum. At each speed, the difference between the narrow band energy of each frequency and the background energy of the adjacent frequency bands on both sides is calculated. Frequency points where the difference exceeds the preset auditory masking threshold are determined as annoying tones, and the speed range is associated to establish a fan annoying speed avoidance interval. Based on the fan disturbance speed avoidance range, a fixed speed is selected to drive the fan within the non-avoidance range. A preset command sequence is started to generate constant heat power. The CPU core temperature is continuously sampled at fixed time intervals through the motherboard sensor. The set of data points in the linear temperature rise phase is captured. The set of data points is fitted with the least squares method to obtain a straight line. The slope of the temperature change is calculated to obtain the benchmark heat dissipation performance slope. Based on the benchmark heat dissipation performance slope, the benchmark test process is repeated under preset operating conditions to obtain the current heat dissipation performance slope. The current heat dissipation performance slope is calculated with the benchmark heat dissipation performance slope to obtain the heat dissipation attenuation factor. The current fan speed is monitored and compared with the fan disturbance speed avoidance interval to assign a steady-state penalty value. The first-order difference and second-order difference operations are performed on the speed time series to obtain the rate of change and acceleration penalty values. The three penalty values ​​are weighted and calculated to obtain the multi-objective heat dissipation control cost set. Based on the multi-objective heat dissipation control cost set, the target speed point that minimizes the sum of the cost set is solved within a preset time domain. A search space is constructed with time as the horizontal axis and speed as the vertical axis. Starting from the current speed state, the process is recursively applied step by step forward. At each time step, the values ​​of the multi-objective heat dissipation control cost set corresponding to all achievable speed states are evaluated. The state point with the lowest cumulative cost is selected and connected to generate the optimal fan speed drive sequence.

[0017] The steps to obtain the fan disturbance speed avoidance range are as follows: The microcomputer cooling fan is run at a preset speed step to capture acoustic signals. The captured acoustic signals are windowed in frames using the Hanning window function. Discrete Fourier transform is performed on each frame of data. The transformed complex result is converted into amplitude, and the amplitude of each frame is arranged along the time axis to establish time spectrum data. Based on the time-frequency spectrum data, in each stable rotational speed segment, the frequency points in the time-frequency spectrum are traversed and defined as the center frequency. The preset bandwidths on both sides of the center frequency are selected as the background frequency bands. The narrow band energy of the center frequency and the average energy of the background frequency bands on both sides are calculated respectively, and the difference between the two is used to obtain the frequency energy highlight value. Based on the frequency energy prominence value, a point-by-point comparison is made with the preset auditory masking threshold. All frequency points exceeding the threshold are filtered out, and the frequency points and corresponding rotation speeds are recorded. Continuous rotation speed ranges with the same frequency characteristics are merged and set as prohibited areas to establish a fan disturbance rotation speed avoidance zone.

[0018] Specifically, the microcomputer cooling fan operates in preset speed increments. The operation involves controlling the fan drive circuit using pulse width modulation (PWM) signals, starting from the fan's lowest effective speed (e.g., corresponding to a 20% PWM duty cycle), gradually increasing the duty cycle in 5% increments to the maximum 100%. At each duty cycle setting, the fan is kept running for 15 seconds to ensure the speed stabilizes. Simultaneously, a high-precision acoustic sensor, such as an electret condenser microphone placed 30 cm directly in front of the microcomputer's heatsink, continuously... The sound signal generated by the fan during operation is captured. Next, the captured one-dimensional time-series acoustic signal is preprocessed using a Hanning window function. The window function length is set to 2048 sampling points, and a 50% overlap (1024 sampling points) is set between adjacent frames. This method segments the continuous acoustic signal into multiple data frames. For each windowed data frame, a Discrete Fourier Transform (DFT) is performed. Typically, the more computationally efficient Fast Fourier Transform (FFT) algorithm is used to transform the time-domain signal to the frequency domain, obtaining a set of complex results containing amplitude and phase information. Then, each of the transformed complex results... The amplitude is calculated by taking the modulus of the complex number, i.e. This yields a real value representing the energy of that frequency component. Finally, the amplitude spectra calculated from all data frames are arranged in chronological order to construct a two-dimensional data matrix, where one dimension represents frequency and the other represents time. The values ​​in the matrix represent the sound amplitude at the corresponding time and frequency points, thus establishing time-spectrum data.

[0019] Based on the time-spectrum data, the stable operating time periods at each speed are first identified. For example, after each duty cycle is set, the data for the first 5 seconds is discarded to eliminate the transient noise caused by speed changes, and only the time-spectrum data generated during the last 10 seconds of stable operation is used for analysis. Within each stable speed segment, each frequency point in the time-spectrum is traversed, and the currently traversed frequency point is defined as the center frequency. This center frequency is then used as a benchmark to define the background noise evaluation range. Specifically, specific bandwidths on both sides of the center frequency are selected as background frequency bands. For example, if the frequency resolution of the Fast Fourier Transform is 23.4Hz, then an interval of 3 to 10 frequency resolution units offset above and below the center frequency is defined. and As a background frequency band, among which It is the center frequency. The frequency resolution is then calculated. Next, the narrowband energy of the center frequency and the average energy of the background frequency bands on both sides are calculated. The narrowband energy of the center frequency is calculated by summing the squares of the amplitudes of the center frequency and the two adjacent frequency resolution units on the left and right (a total of 3 frequency points). The average energy of the background frequency bands is obtained by calculating the average of the squares of the amplitudes of all frequency points in the two background frequency bands. Then, the average energy of the two background frequency bands is subtracted from the calculated narrowband energy of the center frequency, and the difference is taken to obtain the frequency energy highlight value.

[0020] Based on the frequency energy prominence value, it is compared point-by-point with a dynamically calculated preset auditory masking threshold. The threshold is set as follows: First, in each stable rotational speed segment, the average energy of all frequency points in the time spectrum for that segment is calculated. and standard deviation Then set a baseline threshold. For example, if the average energy at a certain rotational speed is 20 units and the standard deviation is 5 units, then the benchmark threshold is... Next, to simulate the difference in human ear sensitivity to different frequencies of sound, a frequency correction function based on the A-weighted curve is introduced. This function assigns a weight close to 1 to the frequency range of 1kHz to 5kHz, where the human ear is most sensitive, while assigning lower weight values ​​to low and ultra-high frequencies. For example, the weight is 0.5 for 100Hz, 1.0 for 1000Hz, and 0.8 for 8000Hz. The final preset auditory masking threshold is determined by this function. The frequency energy prominence value calculated for each frequency point is compared with the corresponding... By comparing and filtering out all frequency points whose salient values ​​exceed the threshold, the specific frequency values ​​of these frequency points and the corresponding fan speeds at which they occur are recorded. Subsequently, these recorded points are categorized and merged, and points with similar frequency characteristics that appear within a continuous speed range are considered to be the same annoying tone source. For example, if an annoying tone of 400Hz is detected at 2000RPM and an annoying tone of 420Hz is detected at 2100RPM, since the ratio of frequency to speed (400 / 2000 = 0.2 and 420 / 2100 = 0.2) remains unchanged, this indicates that they originate from the same physical phenomenon (such as the frequency of fan blade passage). Therefore, the range of 2000RPM to 2100RPM is merged and set as a prohibited zone. Finally, all such prohibited zones are integrated to establish a fan annoyance speed avoidance range.

[0021] The steps for obtaining the baseline heat dissipation performance slope are as follows: Based on the fan disturbance speed avoidance range, a fixed speed is selected within the non-avoidance range to drive the fan, start a preset instruction sequence to generate constant heat power, and trigger a timer. The timer periodically reads the digital value of the CPU core temperature from the motherboard sensor, pairs and stores each temperature reading with the corresponding timestamp to obtain the original temperature sampling sequence. Based on the original temperature sampling sequence, the temperature difference between adjacent sampling points is calculated. Starting from the beginning of the sequence, when N consecutive temperature differences are greater than the preset positive value and the rate of change is stable within the target range, the point is marked as the start of the linear segment. The point is marked as the end when the temperature difference decreases, thus obtaining a set of linear temperature rise data points. Based on the linear temperature rise data point set, the time and temperature values ​​in the data point set are used as independent and dependent variables, respectively, to construct a linear equation. By adjusting the parameters to minimize the sum of the squares of the vertical distances from all data points to the straight line, the slope term parameter in the equation is extracted as the slope of the temperature value change, and the baseline heat dissipation performance slope is obtained.

[0022] Specifically, based on the fan disturbance speed avoidance range, a fixed fan speed is selected within the non-avoidance range. The selection principle is to be far from the boundary of the avoidance range while still providing basic cooling capacity. For example, if the avoidance range is [1800-2100 RPM], 2500 RPM can be selected as the test speed, and this fixed speed is used to drive the fan. Simultaneously, to generate a constant and reproducible thermal power load, a preset instruction sequence is initiated. This sequence can be a specially designed computationally intensive program that allows all CPU cores to reach near 100% utilization, such as executing multi-threaded matrix multiplication or using the open-source stress testing tool stress-ng with the `--cpu-method fft` parameter specified. Simultaneously with the instruction sequence, a timer is triggered. This timer is configured to periodically perform a temperature sampling task at a fixed time interval, such as every 100 milliseconds. Each time the timer is interrupted, the temperature is monitored by accessing the hardware monitoring chip (Super...) on the motherboard. The system can either use an I / O chip or directly read a specific model-specific register (MSR) inside the CPU to obtain the real-time digital value of the CPU core temperature. Each temperature value read is paired with the timestamp provided by the current high-precision timer (e.g., the number of milliseconds counted since the start of the test) to form a (time, temperature) data pair. These data pairs are then stored sequentially in a memory buffer to obtain the original temperature sampling sequence.

[0023] Based on the original temperature sampling sequence, the stored (time, temperature) data pairs are processed. First, the temperature change trend is analyzed by calculating the temperature difference between adjacent sampling points. Specifically, starting from the second point in the sequence, the temperature value of the current point is subtracted from the temperature value of the previous point to obtain a temperature difference sequence. Next, a sliding window detection is performed starting from the beginning of the difference sequence to identify the stage of linear temperature rise. The size of the sliding window is set to 20 consecutive sampling points (i.e., N=20), and a minimum temperature difference threshold for judging the effective temperature rise is set, for example, 0.05℃. At the same time, a variance threshold for judging the stability of the rate of change is set, for example, 0.01. The detection logic is as follows: within the sliding window, when all 20 consecutive temperature differences are greater than 0.05℃ and the variance of these 20 differences is less than 0.01, the system is considered to have entered the linear temperature rise stage. At this time, the original data point corresponding to the starting point of the sliding window is marked as the starting point of the linear segment. Then, the window continues to slide backward, and the detection is performed point by point until the data in the window no longer meets the above two conditions. For example, if the temperature difference is less than 0.05℃ or the variance of the difference is greater than 0.01, the data point before the point that does not meet the conditions is marked as the end point of the linear segment. In this way, all (time, temperature) data pairs from the start point to the end point of the linear segment are extracted to obtain the linear temperature rise data point set.

[0024] Based on the linear temperature rise data point set, which includes multiple Data pairs in the form of time values ​​from these data points. Temperature value as the independent variable As the dependent variable, construct a univariate linear regression equation. The goal of this equation is to adjust the slope parameter. and intercept parameter The goal is to minimize the sum of squared perpendicular distances from all data points to the line, i.e., to minimize the sum of squared residuals. To solve this minimization problem, the least squares method is used for parameter estimation, specifically the slope parameter. The calculation formula is: ; in, It is the slope of the calculated temperature change, which physically represents the rate of increase in CPU temperature per unit time, measured in °C / second. This represents the total number of data points in the linear temperature rise data point set. It is the first The timestamp of each data point It is the first The CPU core temperature values ​​corresponding to each data point. Indicates from arrive The summation of all data points is performed by substituting all time and temperature values ​​from the data point set into the above formula, and the slope parameter is extracted from the final equation. The value is used to obtain the slope of the baseline heat dissipation performance.

[0025] The steps for obtaining the cost set of multi-objective heat dissipation regulation are as follows: Based on the benchmark heat dissipation performance slope, the benchmark test process is repeated under preset operating conditions to obtain the current heat dissipation performance slope. The current heat dissipation performance slope is used as the divisor, and the benchmark heat dissipation performance slope is used as the divisor to perform calculations to obtain the heat dissipation system attenuation factor. Based on the attenuation factor of the heat dissipation system, monitor the current fan speed and determine whether it falls within the fan disturbance speed avoidance range. If it does, search the preset table and assign a penalty value. At the same time, subtract the preceding and following terms from the speed time series to obtain the rate of change. Obtain the acceleration based on the rate of change sequence and generate sub-item control penalty values. Based on the penalty values ​​for each control item, a multi-objective heat dissipation control cost set is calculated.

[0026] Specifically, based on the benchmark thermal performance slope, under preset conditions, such as when the average CPU load has consistently exceeded 75% in the past minute, a performance evaluation is automatically triggered. This repeats the complete test process performed when the benchmark was established, i.e., selecting the same fixed fan speed (e.g., 2500 RPM) within the non-avoidance range, running the same preset instruction sequence to generate constant thermal power, sampling the CPU core temperature at the same time intervals (e.g., every 100 milliseconds), and using the same linear segment identification method and least squares fitting to obtain a value reflecting the current state of the thermal system. The slope of the temperature change is the current heat dissipation performance slope. Then, the latest obtained current heat dissipation performance slope is used as the divisor, and the reference heat dissipation performance slope stored at the factory or during the last calibration is used as the divisor. A division operation is performed. For example, if the current heat dissipation performance slope is 0.6℃ / second and the reference heat dissipation performance slope is 0.5℃ / second, the calculation result is 1.2. This result is the heat dissipation system attenuation factor. This factor is greater than 1, which indicates a decrease in heat dissipation performance; less than 1, which indicates an improvement in performance (e.g., replacing with a more efficient heat dissipation medium); and equal to 1, which indicates no change in performance. This gives the heat dissipation system attenuation factor.

[0027] Based on the cooling system attenuation factor, the actual fan speed is continuously monitored 10 times per second via the motherboard sensor. This speed value is compared with the previously established fan disturbance speed avoidance range. For example, if the avoidance range is [1800-2100 RPM], and the current speed is 1950 RPM, it is determined that the speed falls within the avoidance range. In this case, a corresponding steady-state penalty value needs to be assigned from a preset penalty value mapping table. This mapping table is set in stages according to the severity of the disturbance. For example, a lower penalty value of 50 is assigned to the edge of the avoidance range (1800-1850 RPM and 2050-2100 RPM), and a lower penalty value of 50 is assigned to the core disturbance area (1800-1850 RPM and 2050-2100 RPM). A high penalty value of 100 is assigned to the 51-2049 RPM. If the speed does not fall into any avoidance range, the penalty value is 0. At the same time, a speed time series recording the past few seconds (e.g., 5 seconds) is maintained. By subtracting the speed of the previous moment (e.g., 0.1 seconds ago) from the speed at the current moment, the speed change rate series is obtained. Then, the same subtraction operation is performed on this speed change rate series to obtain the speed acceleration series. Based on these two series, two other penalty values ​​are generated: the speed change rate penalty value is the absolute value of the speed change rate, and the acceleration penalty value is the absolute value of the speed acceleration. Finally, a sub-item control penalty value consisting of steady-state penalty value, speed change penalty value, and acceleration penalty value is generated.

[0028] Based on the individual penalty values ​​and the current real-time CPU temperature, a comprehensive cost function is calculated. This function is a weighted sum of multiple objectives, and its specific form is as follows: ; in, It is a single cost value in the final calculated set of multi-objective heat dissipation regulation costs. This is the temperature deviation penalty value, calculated as the difference between the current temperature and the target temperature (e.g., 85℃). If the current temperature is lower than the target temperature, this value is 0. It is the steady-state penalty value obtained in the previous step. It is the rate of change penalty value obtained in the previous step. It is the acceleration penalty value obtained in the previous step. It is the attenuation factor of the heat dissipation system obtained in the previous step, which amplifies the penalty caused by temperature deviation. , , , These are the weighting coefficients for each item. These coefficients are set through empirical tuning to balance the relationship between heat dissipation performance, acoustic comfort, and system response smoothness. A typical setting example is as follows: , , , Here, the steady-state penalty value is given the highest weight to prioritize avoiding disturbed rotational speeds, the temperature penalty is given the second highest weight, and the rate of change and acceleration are given lower weights. By substituting all the individual penalty values ​​and weights into this formula for calculation, a multi-objective heat dissipation control cost set is obtained.

[0029] The steps to obtain the optimal fan speed drive sequence are as follows: Based on the multi-objective heat dissipation control cost set, the target speed point that minimizes the sum of the cost set is solved within the preset time domain. The preset time domain is discretized into multiple time steps, and the fan speed range is discretized into multiple speed levels. The intersection of each time step and speed level constitutes a state node, and the connection between state nodes constitutes an reachable path, thus constructing a speed state search space. Based on the speed state search space, starting from the current speed state node, calculate the transition cost to all reachable state nodes in the next time step. The cost comes from the multi-objective heat dissipation control cost set. Add the transition cost to the current node's cumulative cost, update and record the minimum cumulative cost and source path for each next time step node, and obtain the minimum cumulative cost path. Based on the path with the lowest cumulative cost, select the state node with the lowest cumulative cost from the preset end time step in the time domain. Based on the source path information recorded by the node, backtrack to the starting time step and arrange the speed values ​​corresponding to all state nodes on the backtracking path in chronological order to generate the optimal fan speed drive sequence.

[0030] Specifically, based on the multi-objective heat dissipation control cost set, to find the speed change path that minimizes the total cost within a preset time domain (e.g., the next 10 seconds), a discretized space for the search is first constructed. This preset 10-second time domain is discretized into 10 consecutive time steps at 1-second intervals. Simultaneously, the entire usable fan speed range (e.g., 1000 RPM to 5000 RPM) is discretized into intervals of 200 RPM. There are several speed levels, so the intersection of each time step and each speed level constitutes a state node, for example... This refers to a specific state node. All these state nodes together form a two-dimensional search grid. The connections between nodes (i.e., reachable paths) are subject to physical constraints, meaning the fan speed cannot change indefinitely within one second. A maximum rate of change of speed is set, for example, 400 RPM / s. This means that from any node located at time step... State Nodes Departure can only be achieved by shifting to a time step. Above, the rotation speed is The state nodes within the range are used to construct the rotational speed state search space through the above discretization and connection rule definitions.

[0031] Based on the speed state search space, a dynamic programming algorithm is used to find the optimal path. First, a two-dimensional array is initialized to record the minimum cumulative cost to reach each state node, and another two-dimensional array is used to record the path source to reach that node, starting from the current time ( Starting from the rotational speed state node, the cumulative cost of that node is initialized to 0. Then, it is recursively pushed forward layer by layer according to time step. For each time step... (From 0 to 9), traverse all speed level nodes at this time step, and then, starting from each node, calculate the transition to the next time step. The transition cost for all reachable nodes is calculated using the aforementioned multi-objective thermal management cost set formula. The temperature term needs to be predicted using a simplified thermodynamic model; for example, predicting the temperature in the next second equals the current temperature plus the temperature rise determined by the CPU's current power and fan speed. The calculated transition cost is then compared with the current node's... The minimum cumulative costs recorded are added together to obtain a route. Reach the target node The total path cost, if the total cost is less than the target node. If the lowest cumulative cost is currently recorded, then the lowest cumulative cost of that node is updated to this smaller value, and its source path is recorded as the node. After traversing all time steps, the path with the lowest cumulative cost, which contains information about all optimal sub-paths, is obtained.

[0032] Based on the path with the lowest cumulative cost, after the dynamic programming calculation is completed, the first step is at the end time step in the preset time domain (e.g., In step s), iterate through all state nodes corresponding to all speed levels and select the node with the lowest cumulative cost as the endpoint of the optimal path. For example, if in At time s, the node with the lowest cumulative cost at a rotational speed of 2600 RPM is selected. Then, using the source path information recorded during the recursive process, a reverse backtracking is performed starting from this optimal endpoint node. Querying the records shows that... The optimal predecessor node is Then query Find the optimal predecessor node, and backtrack step by step until you return to the starting time step. This constructs a complete path from the starting point to the optimal endpoint. This path consists of a series of state nodes. Finally, the rotational speed values ​​corresponding to all state nodes on this backtracking path are sorted according to time. arrive Arrange the values ​​of 's' in order to form a time series, such as [2000, 2000, 2200, 2400, ..., 2600], and generate the optimal fan speed drive sequence.

[0033] The above are merely preferred embodiments of the present invention and are not intended to limit the present invention in any other way. Any person skilled in the art may make changes or modifications to the above-disclosed technical content to create equivalent embodiments that can be applied to other fields. However, any simple modifications, equivalent changes, and modifications made to the above embodiments based on the technical essence of the present invention without departing from the scope of the present invention shall still fall within the protection scope of the present invention.

Claims

1. A method for intelligent control of silent heat dissipation in a microcomputer, characterized in that, Includes the following steps: The microcomputer cooling fan is run at a preset speed step. Acoustic signals are captured, and short-time Fourier transform is performed on the signals to generate a time-frequency spectrum. At each speed, the difference between the narrow band energy of each frequency and the background energy of the adjacent frequency bands on both sides is calculated. Frequency points where the difference exceeds the preset auditory masking threshold are determined as annoying tones, and the speed range is associated to establish a fan annoying speed avoidance interval. According to the fan disturbance speed avoidance range, a fixed speed is selected to drive the fan in the non-avoidance range, and a preset command sequence is started to generate constant heat power. The CPU core temperature is continuously sampled at fixed time intervals through the motherboard sensor, and the data point set of the temperature entering the linear rise stage is extracted. The data point set is fitted by the least squares method to obtain a straight line, and the slope of the temperature change is calculated to obtain the benchmark heat dissipation performance slope. Based on the benchmark heat dissipation performance slope, the benchmark test process is repeated under preset operating conditions to obtain the current heat dissipation performance slope. The current heat dissipation performance slope is calculated with the benchmark heat dissipation performance slope to obtain the heat dissipation attenuation factor. The current fan speed is monitored and compared with the fan disturbance speed avoidance interval to assign a steady-state penalty value. The first-order difference and second-order difference operations are performed on the speed time series to obtain the rate of change and acceleration penalty values. The three penalty values ​​are weighted and calculated to obtain the multi-objective heat dissipation regulation cost set.

2. The silent heat dissipation intelligent control method for a microcomputer according to claim 1, characterized in that, The method further includes: based on the multi-objective heat dissipation control cost set, solving for the target speed point that minimizes the sum of the cost set within a preset time domain, constructing a search space with time as the horizontal axis and speed as the vertical axis, recursively pushing forward step by step from the current speed state, evaluating the multi-objective heat dissipation control cost set values ​​corresponding to all achievable speed states at each time step, selecting and connecting the state point with the lowest cumulative cost, and generating the optimal fan speed drive sequence.

3. The silent heat dissipation intelligent control method for a microcomputer according to claim 1, characterized in that, The steps for obtaining the fan disturbance speed avoidance range are as follows: The microcomputer cooling fan is run at a preset speed step to capture acoustic signals. The captured acoustic signals are windowed in frames using the Hanning window function. Discrete Fourier transform is performed on each frame of data. The transformed complex result is converted into amplitude, and the amplitude of each frame is arranged along the time axis to establish time spectrum data. Based on the time-frequency spectrum data, in each stable rotational speed segment, each frequency point in the time-frequency spectrum is traversed and defined as the center frequency. Preset bandwidths on both sides of the center frequency are selected as background frequency bands. The narrowband energy of the center frequency and the average energy of the background frequency bands on both sides are calculated respectively, and the difference between the two is used to obtain the frequency energy highlight value. Based on the frequency energy prominence value, a point-by-point comparison is made with a preset auditory masking threshold. All frequency points exceeding the threshold are filtered out, and the frequency points and corresponding rotation speeds are recorded. Continuous rotation speed ranges with the same frequency characteristics are merged and set as prohibited areas to establish a fan disturbance rotation speed avoidance interval.

4. The silent heat dissipation intelligent control method for a microcomputer according to claim 1, characterized in that, The steps for obtaining the benchmark heat dissipation performance slope are as follows: According to the fan disturbance speed avoidance range, a fixed speed is selected within the non-avoidance range to drive the fan, start a preset instruction sequence to generate constant heat power, and trigger a timer. The timer periodically reads the digital value of the CPU core temperature from the motherboard sensor, pairs and stores each temperature reading with the corresponding timestamp, and obtains the original temperature sampling sequence. Based on the original temperature sampling sequence, the temperature difference between adjacent sampling points is calculated. Starting from the beginning of the sequence, when N consecutive temperature differences are greater than a preset positive value and the rate of change is stable within the target range, the point is marked as the start of the linear segment. The point is marked as the end point when the temperature difference decreases, thus obtaining a linear temperature rise data point set. Based on the linear temperature rise data point set, the time and temperature values ​​in the data point set are used as independent and dependent variables, respectively, to construct a linear equation. By adjusting the parameters to minimize the sum of the squares of the vertical distances from all data points to the straight line, the slope term parameter in the equation is extracted as the slope of the temperature value change, and the baseline heat dissipation performance slope is obtained.

5. The silent heat dissipation intelligent control method for a microcomputer according to claim 2, characterized in that, The steps for obtaining the multi-objective heat dissipation regulation cost set are as follows: Based on the benchmark heat dissipation performance slope, the benchmark test process is repeated under preset operating conditions to obtain the current heat dissipation performance slope. The current heat dissipation performance slope is used as the divisor, and the benchmark heat dissipation performance slope is used as the divisor to perform calculations to obtain the heat dissipation system attenuation factor. Based on the attenuation factor of the heat dissipation system, the current fan speed is monitored to determine whether it falls within the fan disturbance speed avoidance range. If it does, a penalty value is assigned from a preset table. At the same time, the change rate is obtained by subtracting the preceding and following terms from the speed time series. The acceleration is obtained from the change rate series, and a sub-item control penalty value is generated.

6. The silent heat dissipation intelligent control method for a microcomputer according to claim 5, characterized in that, The step of obtaining the multi-objective heat dissipation control cost set further includes: calculating the multi-objective heat dissipation control cost set based on the sub-item control penalty values.

7. The silent heat dissipation intelligent control method for a microcomputer according to claim 2, characterized in that, The steps for obtaining the optimal fan speed drive sequence are as follows: Based on the multi-objective heat dissipation control cost set, the target speed point that minimizes the sum of the cost set is solved in the preset time domain. The preset time domain is discretized into multiple time steps, and the fan speed range is discretized into multiple speed levels. The intersection of each time step and speed level constitutes a state node, and the connection between state nodes constitutes an reachable path, thus constructing a speed state search space. Based on the speed state search space, starting from the current speed state node, calculate the transition cost to all reachable state nodes in the next time step. The cost comes from the multi-target heat dissipation control cost set. Add the transition cost to the current node's cumulative cost, update and record the minimum cumulative cost and source path for each next time step node, and obtain the minimum cumulative cost path.

8. The silent heat dissipation intelligent control method for a microcomputer according to claim 7, characterized in that, The step of obtaining the optimal fan speed drive sequence further includes: Based on the path with the lowest cumulative cost, select the state node with the lowest cumulative cost from the preset end time step in the time domain. Based on the source path information recorded by the node, backtrack to the starting time step and arrange the speed values ​​corresponding to all state nodes on the backtracking path in chronological order to generate the optimal fan speed drive sequence.