CN114443414A - Intelligent health management fan control method based on IPMI bus - Google Patents

Intelligent health management fan control method based on IPMI bus Download PDF

Info

Publication number
CN114443414A
CN114443414A CN202111571998.7A CN202111571998A CN114443414A CN 114443414 A CN114443414 A CN 114443414A CN 202111571998 A CN202111571998 A CN 202111571998A CN 114443414 A CN114443414 A CN 114443414A
Authority
CN
China
Prior art keywords
fan
data
ipmb
gear
health management
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111571998.7A
Other languages
Chinese (zh)
Inventor
刘建斌
徐捷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Aerospace Science and Industry Appliance Co Ltd
Original Assignee
Shanghai Aerospace Science and Industry Appliance Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Aerospace Science and Industry Appliance Co Ltd filed Critical Shanghai Aerospace Science and Industry Appliance Co Ltd
Priority to CN202111571998.7A priority Critical patent/CN114443414A/en
Publication of CN114443414A publication Critical patent/CN114443414A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3027Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a bus

Abstract

The invention discloses a health management intelligent fan control method based on an IPMI bus, which comprises the following steps: s100, initializing and setting, namely initializing and configuring a processor operating environment, an IPMB interface and a fan control interface; s200, fan data are obtained, and equipment ID, fan information and a current fan gear are obtained through IPMB data receiving and sending; s300, a fan gear is set, and the fan gear is determined through IPMB data transceiving. The invention can acquire the ID, the rotating speed information and the gear information of the fan, and control the start, the stop and the gear of the fan, so that the control function of the fan is more comprehensive.

Description

Intelligent health management fan control method based on IPMI bus
Technical Field
The invention belongs to the technical field of fan management, and particularly relates to a health management intelligent fan control method based on an IPMI bus.
Background
The occasions for using the case are more and more abundant, and the fan control technology used on the case is increasingly strong. The common case fan in the current market controls the fan by controlling input voltage and current. The fan is simply controlled by controlling the input voltage and the current, the fan operation information and the fan operation state cannot be acquired, and the control requirement of the prior art on the fan cannot be met.
Disclosure of Invention
Aiming at the problems in the prior art, the invention provides a health management intelligent fan control method based on an IPMI bus.
A health management intelligent fan control method based on an IPMI bus comprises the following steps:
s100, initializing and setting, namely initializing and configuring a processor operating environment, an IPMB interface and a fan control interface;
s200, fan data are obtained, and equipment ID, fan information and the current fan gear are obtained through IPMB data receiving and sending;
s300, a fan gear is set, and the fan gear is determined through IPMB data transceiving.
In the initialization setting of S100, after the initialization of the fan control interface is completed, the default rotating speed of the fan is set to be the maximum rotating speed.
S300 sets a gear position of the fan, and when the gear position value in the request data is a minimum value and a maximum value, stop and start control of the fan are indicated, respectively.
S200, fan information including the highest rotating speed, the lowest rotating speed and the default rotating speed of the fan is obtained from fan data.
The invention has the beneficial effects that: the invention can acquire the ID, the rotating speed information and the gear information of the fan, and control the start, the stop and the gear of the fan, so that the control function of the fan is more comprehensive.
Drawings
FIG. 1 is a schematic diagram of a system for carrying out the method of the present invention;
FIG. 2 is a schematic diagram of a data processing process of a fan control system in a process of controlling a fan;
FIG. 3 is a flow chart illustrating IPMB receiving data;
FIG. 4 is a flow chart illustrating IPMB data transmission;
FIG. 5 is a schematic view of a data processing flow for obtaining a device ID;
FIG. 6 is a schematic view of a data processing flow for obtaining fan information;
FIG. 7 is a schematic view of a data processing flow for obtaining a fan gear;
fig. 8 is a schematic view of a data processing flow for setting a fan gear.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are some, but not all, embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Examples
The intelligent fan control method for health management is realized based on an IPMI bus, and the specific realization of the intelligent fan control method depends on the combination of a management system 1, a fan control system 2 and a controlled fan 3, and is shown in figure 1. The management system 1 and the fan control system 2 realize communication control through an IPMI protocol, the management system 1 and the fan control system 2 are both provided with interfaces capable of realizing communication of the IPMI protocol, and the management system 1 receives and sends IPMI data and forms an IPMI command through the fan control system 2 to control the fan 3.
Referring to fig. 2, a data processing process of the fan control system 2 in the process of controlling the fan 3 is implemented. In the figure, data processing procedures implemented in the fan control system 2 are indicated within dashed boxes.
According to fig. 2, the health management intelligent fan control method of the invention comprises the following steps:
s100, initializing, wherein an initialization module of LKS6.672.724 fan control combination software is in a modular design and comprises a processor operating environment initialization module, two IPMB interface initialization modules and a fan control interface initialization module, and the initialization is that operating environment initialization, IPMB interface initialization and fan control interface initialization are correspondingly performed.
The initialization module of the running environment of the processor mainly completes the configuration and the starting of a system clock, and comprises the selection of a clock source, the setting of PLL frequency multiplication factor, AHB/APBx frequency division factor and the like. The processor running environment initialization module is only executed in the first step of the running of the main program after the chip is reset. The processor operating environment initialization module is a part of a main program code segment, the called functions comprise rcu _ config, i2c _ nvic _ config and i2c _ interrupt _ enable, the functions are provided by an SDK development kit, and the interface configuration is as follows:
Figure BDA0003424072970000031
Figure BDA0003424072970000041
the initialization of the IPMB interface is the initialization of the I2C interface, the initialization of the I2C mainly configures the working modes of the Pin _8 Pin of the GPIOA module, the Pin _9 Pin of the GPIOC module, the Pin _8 Pin of the GPIOB module and the Pin _9 Pin of the GPIOB module, including the input/output mode, the speed and the like, and maps the two I/O pins into the I2C Pin function to enable the GPIOA, the GPIOB, the GPIOC module and the I2C clock; configuring the working modes of I2C, including SCL clock line duty ratio, self-address of the equipment, whether ACK is sent, I2C addressing mode, communication speed and the like; at the same time, configuration I2C interrupts and enables the I2C module. I2C initializes the module correspondence function definition as void init _ I2c (uint32_ tself _ addr). The input parameter self _ addr of this function is the hardware address of I2C. The function returns no value. The file is i2c.c. The function called by the I2C module to initialize the function includes:
I2C clock configuration: i2c _ clock _ config
I2C address configuration: i2c _ mode _ addr _ config
The I2C controller enables: i2c _ enable
I2C auto ACK enable: i2c _ ack _ config
The fan control interface initialization is to the PWM controller. The PWM controller interfaces are as follows timer _ config, open _ PWM, set _ PWM _ duty. timer _ config is the timer initialization that the PWM depends on, open _ PWM is the opening PWM control, so that the PWM module starts to work, and set _ PWM _ duty is the duty ratio setting, namely the gear control of the fan. And after the fan control interface completes initialization, setting the default rotating speed of the fan as the maximum rotating speed.
S200, fan data acquisition, including equipment ID acquisition, fan information acquisition and fan gear acquisition.
Referring to FIG. 2, fan data acquisition relies on IPMB data transceiver module to IPMB data transmission. The IPMB data transceiver module mainly comprises data receiving, data transmitting and data checking, data interaction between LKS6.672.724 fan control combination software and other modules is realized through IPMB interruption, and the IPMB data transceiver module has a data fault tolerance processing function in the data receiving process. Therefore, the IPMB data transceiver module consists of an IPMB data receiving module, an IPMB data transmitting module and a data checking module.
The upper layer application receives IPMB data through the IPMB receiving module, the received data is a complete IPMB data packet, the received data packet is correct data through verification and comparison, the receiving module is realized in a mode of hooking and interrupting, and the data receiving process is shown in FIG. 3.
The upper layer application submits the data to be sent to the IPMB sending module, the IPMB sending module can automatically fill the IPMB data packet, calculate the check value, add the check result after the IPMB data packet, and finally send the IPMB data, and the data sending program is shown in FIG. 4.
After the upper layer application submits the check data and the length, the check module accumulates the start address of the data by taking bytes as a unit, the accumulation times are the length of the submitted data, and the accumulation result caller is returned after the accumulation is finished. The accumulated result is stored in 8 bits without sign.
The IPMB data transceiver module is implemented by the functions void I2Cx _ eventtirq _ handler (void) and void I2c _ data _ send (uint32_ t I2c _ period, uint32_ t slave, uint8_ t send _ data _ buffer, uint8_ t Byte _ count). The function mainly completes the receiving and sending of the IPMB data and verifies the received or sent data. Receiving an interrupt function without input parameters or output parameters, ensuring interrupt response time, copying received data to a buffer area, and waiting for a main program to process; the transmission function I2c _ periph represents an I2C peripheral, the slave represents a peer address, and the send _ data _ buffer represents transmitted data. The files of the system are i2c.c and ipmb.c.
Based on the above data processing procedure, the Device id (get Device id) is obtained, and refer to fig. 5:
module identification: ErrStatus IPMB _ getdeviceiidrep (uint8_ t buffer);
description of the function: acquiring the software version, IPMI version, equipment ID, product information and the like of the board card;
inputting: uint8_ t _ buffer represents Get Device ID request data;
and returning: operating state, SUCCESS indicates that the process was successful and no error occurred; ERROR indicates that an exception and unknown ERROR occurred during the process.
Fan information acquisition (Get Fan Speed Properties) is explained, see fig. 6:
module identification: ErrStatus IPMB _ GetFanSpeedPortertiesResp (uint8_ t. buffer);
description of the function: acquiring the highest rotating speed, the lowest rotating speed and the default rotating speed of the fan;
inputting: the agent 8_ t × buffer represents GetFan SpeedProperties request data;
and returning: operating state, SUCCESS indicates that the process was successful and no error occurred; ERROR indicates that an exception and unknown ERROR occurred during the process.
The obtaining of the fan gear (GetFanLevel) is explained with reference to fig. 7:
module identification: ErrStatus IPMB _ GetFanLevelResp (uint8_ t × buffer);
description of the function: acquiring current state data of the fan, such as a current state code and a rotating speed;
inputting: the uint8_ t _ buffer represents GetFanLevel request data;
and returning: operating state, SUCCESS indicates that the process was successful and no error occurred; ERROR indicates that an exception and unknown ERROR occurred during the process.
S300, setting a fan position (SetFanLevel), which will be described with reference to fig. 8.
Module identification: ErrStatus IPMB _ SetFanLevelResp (uint8_ t × buffer);
description of the function: setting the rotating speed of the fan;
inputting: the uint8_ t × buffer represents SetFanLevel request data, and represents stop and start control of the fan when the gear value in the request data is the minimum value and the maximum value, respectively;
and returning: operating state, SUCCESS indicates that the process was successful and no error occurred; ERROR indicates that an exception and unknown ERROR occurred during the process.
It is noted that, in this document, relational terms such as first and second, and the like, if any, are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element.
The above examples are only intended to illustrate the technical solution of the present invention, but not to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions of the embodiments of the present invention.

Claims (4)

1. A health management intelligent fan control method based on an IPMI bus is characterized by comprising the following steps:
s100, initializing and setting, namely initializing and configuring a processor operating environment, an IPMB interface and a fan control interface;
s200, fan data are obtained, and equipment ID, fan information and the current fan gear are obtained through IPMB data receiving and sending;
s300, a fan gear is set, and the fan gear is determined through IPMB data transceiving.
2. The IPMI bus based health management intelligent fan control method of claim 1, wherein in S100 initialization, after the fan control interface is initialized, the default fan speed is set to the maximum fan speed.
3. The method of claim 1, wherein the S300 sets the fan gear positions to represent the fan stop and start control when the gear position in the request data is a minimum value and a maximum value, respectively.
4. The IPMI bus based health management intelligent fan control method of claim 1, wherein S200 obtains fan data including maximum fan speed, minimum fan speed, default fan speed.
CN202111571998.7A 2021-12-21 2021-12-21 Intelligent health management fan control method based on IPMI bus Pending CN114443414A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111571998.7A CN114443414A (en) 2021-12-21 2021-12-21 Intelligent health management fan control method based on IPMI bus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111571998.7A CN114443414A (en) 2021-12-21 2021-12-21 Intelligent health management fan control method based on IPMI bus

Publications (1)

Publication Number Publication Date
CN114443414A true CN114443414A (en) 2022-05-06

Family

ID=81363892

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111571998.7A Pending CN114443414A (en) 2021-12-21 2021-12-21 Intelligent health management fan control method based on IPMI bus

Country Status (1)

Country Link
CN (1) CN114443414A (en)

Similar Documents

Publication Publication Date Title
WO2019184444A1 (en) Master-slave configuration communication protocol, method for improving compatibility, and electronic device
WO2020036897A1 (en) Low latency virtual general purpose input/output over i3c
US20180260357A1 (en) I2c clock stretch over i3c bus
CN109032623A (en) A kind of initial method and BIOS mirror image of BIOS mirror image
WO2023082622A1 (en) Method for designing communication module having master and slave devices compatible, and apparatus
CN112835839A (en) PCIe interface device enumeration method, PCIe interface device enumeration apparatus, PCIe interface device and PCIe interface storage medium
CN115101071A (en) Low-power-consumption Bluetooth voice control terminal, method, device and equipment
CN112462661B (en) Industrial data acquisition controller and control method thereof
WO2024037376A1 (en) Service management method and apparatus, device and readable storage medium
WO2017049556A1 (en) Data transmission method and mobile terminal
JPH08129199A (en) Camera body, camera accessory and camera system
CN116431546B (en) Parameter configuration method, electronic device, storage medium, and program product
CN114443414A (en) Intelligent health management fan control method based on IPMI bus
CN112579506A (en) BIOS and BMC communication method, BIOS, BMC and server
US20180143928A1 (en) Switch system and operation method thereof
CN110750478A (en) Multi-serial port communication method and system
CN115994111A (en) Data processing circuit, method, chip and electronic equipment
CN108965382A (en) A kind of document transmission method based on BMC, device, equipment and medium
US6553415B1 (en) System for rescheduling cascaded callback functions to complete an asynchronous physical layer initialization process
CN111030722B (en) Communication circuit and communication method for battery management system
CN111782574A (en) Serial peripheral interface control method and serial peripheral interface controller
CN106354683B (en) Micro-control device and input/output system applied to micro-control device
CN106445571B (en) Mainboard and starting method
CN106101784B (en) A kind of repositioning method and device of smart television control Bluetooth chip
CN117850570A (en) Singlechip system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination