Method, device and medium for communication between a baseboard management controller and an IIC device

By introducing complex programmable logic devices between the baseboard management controller and the IIC device, the problem of low communication efficiency is solved, and more efficient data transmission and improved system stability are achieved.

CN115185869BActive Publication Date: 2026-05-19INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
INSPUR SUZHOU INTELLIGENT TECH CO LTD
Filing Date
2022-04-30
Publication Date
2026-05-19

AI Technical Summary

Technical Problem

In the existing technology, the communication efficiency between the baseboard management controller and the IIC device is low, resulting in a long BMC polling time, which affects the stability and communication efficiency of the whole system.

Method used

A complex programmable logic device is added as a serial communication component between the baseboard management controller and the IIC device. This component is used to forward data read requests, acquire target data, assign priorities, and set data transmission rates to improve communication efficiency.

Benefits of technology

By introducing complex programmable logic devices between the BMC and the IIC device, the resource consumption of the BMC is reduced, communication efficiency is improved, and the system's response speed and stability are enhanced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115185869B_ABST
    Figure CN115185869B_ABST
Patent Text Reader

Abstract

The application discloses a communication method and device of a substrate management controller and an IIC device, equipment and a medium, applied to a substrate management controller, and relates to the technical field of computers, and comprises the following steps: sending a data reading request for reading target data to a complex programmable logic device, wherein the complex programmable logic device is a serial communication component added in advance on an IIC bus between the substrate management controller and the IIC device; determining a corresponding number of target IIC devices based on the data reading and writing request through the complex programmable logic device, so as to respectively acquire corresponding target data from the number of target IIC devices through the complex programmable logic device; and acquiring the target data sent by the complex programmable logic device. Through the mode of adding the complex programmable logic device in the communication between the substrate management controller and the IIC device, the communication efficiency between the substrate management controller and the IIC device is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of computer technology, and in particular to a communication method, apparatus, device, and medium between a baseboard management controller and an IIC device. Background Technology

[0002] IIC (Inter-Integrated Circuit) is a serial communication bus that uses a multi-master / slave architecture. IIC uses the fewest signal lines among various buses, requiring only two lines to complete multi-machine communication. It also features automatic addressing, multi-master clock synchronization, and arbitration functions, making it widely used in various practical applications. IIC is extensively used in server systems, involving intra-board and inter-board interconnection. It is primarily used for out-of-band monitoring and information acquisition, such as reading temperature information from various devices within the system and monitoring external expansion cards. The accurate acquisition of this information affects the overall stability of the server; for example, timely temperature acquisition influences the execution of onboard heat dissipation strategies, and the impact of heat dissipation is crucial to the overall stability of the system.

[0003] Currently, with the continuous expansion and development of servers, the number of devices requiring monitoring via the IIC bus is increasing. When the Baseboard Manager Controller (BMC) communicates with any device, it must repeatedly send start, stop, and address information, consuming significant BMC resources. This results in a polling time of several seconds. During this time, for devices experiencing rapid temperature changes, the overall system response is lagging, severely impacting system stability. Furthermore, the BMC needs to continuously poll and read information from each device; if an anomaly occurs during any poll, the BMC will malfunction, severely affecting the efficiency of communication between the BMC and IIC devices.

[0004] In summary, improving the communication efficiency between the baseboard management controller and the IIC device is a problem that needs to be solved. Summary of the Invention

[0005] In view of this, the purpose of this invention is to provide a communication method, apparatus, device, and medium between a substrate management controller and an IIC device, which can improve the communication efficiency between the substrate management controller and the IIC device. The specific solution is as follows:

[0006] In a first aspect, this application discloses a communication method between a substrate management controller and an IIC device, applied to a substrate management controller, comprising:

[0007] A data read request for reading target data is sent to a complex programmable logic device, wherein the complex programmable logic device is a serial communication component pre-added on the IIC bus between the baseboard management controller and the IIC device;

[0008] The complex programmable logic device determines a number of target IIC devices based on the data read / write request, so as to obtain the corresponding target data from the number of target IIC devices respectively through the complex programmable logic device;

[0009] The target data sent by the complex programmable logic device is acquired.

[0010] Optionally, the communication method between the substrate management controller and the IIC device further includes:

[0011] The data types of all stored data in all IIC devices are obtained in advance, and all data are prioritized according to the data types to obtain a corresponding priority identifier list;

[0012] Based on the priority identifier list, all IIC devices are assigned priorities to obtain IIC devices with different priority levels.

[0013] Optionally, sending the data read request for reading the target data to the complex programmable logic device includes:

[0014] Determine the target data type of the target data to be read, and determine the target priority identifier of the target data from the priority identifier list based on the target data type;

[0015] A data read request carrying the target priority identifier of the target data is sent to a complex programmable logic device.

[0016] Optionally, the step of determining a number of target IIC devices based on the data read / write request using the complex programmable logic device, so as to obtain corresponding target data from the number of target IIC devices using the complex programmable logic device, includes:

[0017] The complex programmable logic device determines a certain number of target IIC devices based on the target priority identifier in the data read / write request, and determines the target priority level corresponding to the certain number of target IIC devices;

[0018] The complex programmable logic device acquires corresponding target data from a number of target IIC devices according to a data transmission rate pre-set for the target priority level.

[0019] Optionally, acquiring the target data sent by the complex programmable logic device includes:

[0020] The target data carrying confirmation characters sent by the complex programmable logic device is acquired, wherein the confirmation characters include positive confirmation characters and negative confirmation characters.

[0021] Optionally, after acquiring the target data sent by the complex programmable logic device, the method further includes:

[0022] If the confirmation character of the target data is a positive confirmation character, then the data read request for reading the target data is sent to the complex programmable logic device (CPLD) so that the CPLD can read the data from the corresponding target device.

[0023] Optionally, after acquiring the target data sent by the complex programmable logic device, the method further includes:

[0024] If the confirmation character of the target data is a negative confirmation character, then the data read request for reading the target data is stopped from being sent to the programmable logic device.

[0025] Secondly, this application discloses a communication device between a substrate management controller and an IIC device, applied to the substrate management controller, comprising:

[0026] The request sending module is used to send a data read request for reading target data to a complex programmable logic device, wherein the complex programmable logic device is a serial communication component pre-added on the IIC bus between the baseboard management controller and the IIC device;

[0027] The data reading module is used to determine a number of target IIC devices based on the data read / write request through the complex programmable logic device, so as to obtain the corresponding target data from the number of target IIC devices through the complex programmable logic device.

[0028] The data acquisition module is used to acquire the target data sent by the complex programmable logic device.

[0029] Thirdly, this application discloses an electronic device, including:

[0030] Memory, used to store computer programs;

[0031] A processor is used to execute the computer program to implement the steps of the aforementioned method for communication between a substrate management controller and an IIC device.

[0032] Fourthly, this application discloses a computer-readable storage medium for storing a computer program; wherein, when the computer program is executed by a processor, it implements the steps of the aforementioned communication method between the baseboard management controller and the IIC device.

[0033] As can be seen, this application sends a data read request for reading target data to a complex programmable logic device (CPLD). The CPLD is a serial communication component pre-added to the IIC bus between the substrate management controller and the IIC device. Based on the data read / write request, the CPLD determines a number of target IIC devices, and then obtains the corresponding target data from each of these target IIC devices. The target data sent by the CPLD is then acquired. Therefore, this application adds a CPLD between the substrate management controller and the IIC device, establishes communication between the substrate management controller and the CPLD, and establishes communication between the CPLD and the IIC device. In this way, the CPLD obtains the data read request sent by the substrate management controller, reads the corresponding target data from the IIC device based on the data read request, and then returns the read target data to the substrate management controller. This avoids the communication overhead caused by direct communication between the substrate management controller and the IIC device, improving the communication efficiency between the substrate management controller and the IIC device. Attached Figure Description

[0034] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on the provided drawings without creative effort.

[0035] Figure 1 This is a flowchart of a communication method between a baseboard management controller and an IIC device disclosed in this application;

[0036] Figure 2 This is a schematic diagram of the communication between a conventional baseboard management controller and an IIC device disclosed in this application;

[0037] Figure 3 This is a flowchart illustrating a specific communication method between a baseboard management controller and an IIC device disclosed in this application;

[0038] Figure 4 This is a schematic diagram illustrating the communication between a specific baseboard management controller and an IIC device disclosed in this application;

[0039] Figure 5 This is a schematic diagram of the communication device structure between a baseboard management controller and an IIC device disclosed in this application;

[0040] Figure 6 This is a structural diagram of an electronic device disclosed in this application. Detailed Implementation

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

[0042] Currently, when a Baseboard Management Controller (BMC) communicates with any device, it must repeatedly send start, stop, and address information, consuming significant BMC resources and causing a single BMC polling cycle to take several seconds. During this time, for devices experiencing rapid temperature changes, the overall system response is lagging, severely impacting system stability. Furthermore, the BMC needs to continuously poll and read information from various devices; if an anomaly occurs during any poll, the BMC will malfunction, severely affecting the efficiency of communication between the BMC and IIC devices. Therefore, this application discloses a communication method, apparatus, device, and medium between a Baseboard Management Controller and IIC devices, which can improve the communication efficiency between the Baseboard Management Controller and IIC devices.

[0043] See Figure 1 As shown in the figure, this application discloses a communication method between a baseboard management controller and an IIC device, applied to a baseboard management controller, the method comprising:

[0044] Step S11: Send a data read request for reading target data to a complex programmable logic device, wherein the complex programmable logic device is a serial communication component pre-added on the IIC bus between the substrate management controller and the IIC device.

[0045] In this embodiment, a serial communication component, i.e., a complex programmable logic device, is pre-added to the IIC bus between the substrate management controller and the IIC device. Therefore, compared to existing technologies, such as... Figure 2As shown, the baseboard management controller (BMC) directly communicates with IIC devices via a direct connection or an extension of the IIC switch, requiring continuous polling to read data from each IIC device. If an IIC switch is present on the bus, the process becomes even more complex, requiring communication with the IIC switch before switching between different channels to communicate with the target device. This embodiment of the application only requires sending the data read request for reading the target data to the complex programmable logic device (BMC), significantly saving BMC resources and improving BMC stability.

[0046] Step S12: The complex programmable logic device determines a number of target IIC devices based on the data read / write request, so as to obtain the corresponding target data from the number of target IIC devices respectively through the complex programmable logic device.

[0047] In this embodiment, a number of target IIC devices are determined based on data read / write requests using a complex programmable logic device. That is, the target IIC device is determined according to the target data to be read in the current data read / write request. It is understood that different IIC devices can store different types of target data, such as temperature data, VR (Virtual Reality) data, external card data, etc.

[0048] Step S13: Obtain the target data sent by the complex programmable logic device.

[0049] In this application, after the complex programmable logic device reads the target data stored in the target IIC device, it sends the target data to the board management controller.

[0050] It should be noted that the communication method between the baseboard management controller and the IIC device in this application further includes: pre-obtaining the data type of all data stored in all IIC devices, and prioritizing all data according to the data type to obtain a corresponding priority identifier list; prioritizing all IIC devices based on the priority identifier list to obtain IIC devices with different priority levels. It is understandable that since different IIC devices can store different types of data, and the importance of these data during server operation varies, the priority levels of the IIC devices storing this data will also differ. For example, acquiring temperature data affects the execution of the heat dissipation strategy on the board, and the impact of heat dissipation on the stability of the entire machine makes timely acquisition of temperature data particularly important; therefore, the IIC device storing temperature data has a high priority. For VR data, which is generally read only when there is a problem, the IIC device storing VR data has a medium priority. Additionally, for some asset information, such as the FRU (Field Replacement Unit) data of the board, which is only read once upon power-on, the IIC device storing this type of data has a low priority. Therefore, in this embodiment, the data types of all stored data in all IIC devices are obtained in advance, and all data are prioritized according to the data types to obtain a corresponding priority identifier list. Then, based on the priority identifier list, all IIC devices are prioritized to obtain IIC devices with different priority levels.

[0051] As can be seen, this application sends a data read request for reading target data to a complex programmable logic device (CPLD). The CPLD is a serial communication component pre-added to the IIC bus between the substrate management controller and the IIC device. Based on the data read / write request, the CPLD determines a number of target IIC devices, and then obtains the corresponding target data from each of these target IIC devices. The target data sent by the CPLD is then acquired. Therefore, this application adds a CPLD between the substrate management controller and the IIC device, establishes communication between the substrate management controller and the CPLD, and establishes communication between the CPLD and the IIC device. In this way, the CPLD obtains the data read request sent by the substrate management controller, reads the corresponding target data from the IIC device based on the data read request, and then returns the read target data to the substrate management controller. This avoids the communication overhead caused by direct communication between the substrate management controller and the IIC device, improving the communication efficiency between the substrate management controller and the IIC device.

[0052] See Figure 3 and Figure 4 As shown, this application discloses a specific communication method between a baseboard management controller and an IIC device. Compared to the previous embodiment, this embodiment further explains and optimizes the technical solution. Specifically, it includes:

[0053] Step S21: Determine the target data type of the target data to be read, and determine the target priority identifier of the target data from the priority identifier list based on the target data type.

[0054] In this embodiment, it can be understood that the target data type of the target data to be read is determined, and the target priority identifier of the target data is determined from the priority identifier list based on the target data type. See Table 1, which shows the correspondence between data types and priority identifiers:

[0055] Table 1

[0056] 00 Temperature data 01 VR data 02 Asset Information 03 External card data 04 xxxx 05 xxxx

[0057] It should be noted that in Table 1, the smaller the serial number and the earlier the data is listed, the higher its priority. Therefore, assuming the target data types to be read are temperature data and external card data, the corresponding target priority identifiers would be 00 and 03, respectively.

[0058] Step S22: Send a data read request carrying the target priority identifier of the target data to a complex programmable logic device; wherein the complex programmable logic device is a serial communication component pre-added on the IIC bus between the substrate management controller and the IIC device.

[0059] In this embodiment, a data read request carrying a target priority identifier of the target data is sent to the complex programmable logic device. The specific data read request format is shown in Table 2.

[0060] Table 2

[0061]

[0062] The Request ID in Table 2 represents the target priority identifier of the target data. For example, when the target data type to be read is temperature data and external card data, the Request ID is 00 and 03.

[0063] Step S23: The complex programmable logic device determines a number of target IIC devices based on the target priority identifier in the data read / write request, and determines the target priority level corresponding to the number of target IIC devices; the complex programmable logic device obtains the corresponding target data from the number of target IIC devices according to the data transmission rate preset for the target priority level.

[0064] In this embodiment, after determining a certain number of target IIC devices based on the target priority identifier in the data read / write request using a complex programmable logic device, it is also necessary to determine the target priority level corresponding to these target devices, for example, see [link to example]. Figure 3 As shown, IIC devices storing temperature data are high-priority, those storing VR data are medium-priority, and those storing asset information data are low-priority. Furthermore, the data transmission rates differ between IIC devices of different priority levels when communicating with the complex programmable logic device (CPL). Additionally, high-priority IIC devices are further divided into high-speed and low-speed channels. For example, for high-priority devices, the CPL is configured with a default low-speed channel of 100kbps and a default high-speed channel of 400kbps. Other medium- and low-priority devices are configured with a default rate of 100kbps. The baseboard management controller and the CPL operate at the highest rate supported by both parties. This hierarchical management of IIC devices improves system response speed, allowing the system to focus on processing high-priority IIC transactions, thus enhancing system stability. It should be noted that... Figure 3 Multiple IIC devices can be connected in parallel or expanded using an IIC switch.

[0065] Step S24: Obtain the target data carrying confirmation characters sent by the complex programmable logic device, wherein the confirmation characters include positive confirmation characters and negative confirmation characters.

[0066] In this embodiment, the target data sent by the complex programmable logic device also carries an acknowledgment character, which includes a positive acknowledgment character (ACK) and a negative acknowledgment character (NO ACK). As shown in Table 3:

[0067] Table 3

[0068]

[0069] Furthermore, as shown in Table 3, the target data also includes the corresponding devices. The devices represented by Device 1, Device 2, and Device 3 in the table need to be defined during the development phase or added later.

[0070] In one specific embodiment, after acquiring the target data sent by the complex programmable logic device (CPLD), the method further includes: if the acknowledgment character of the target data is a positive acknowledgment character, then a data read request for reading the target data is sent to the CPLD so that data can be read from the corresponding target device through the CPLD. That is, if the received acknowledgment character is a positive acknowledgment character (i.e., ACK), then a data read request for reading the target data is sent to the CPLD so that data can be read from the corresponding target device through the CPLD.

[0071] In another specific embodiment, after obtaining the target data sent by the complex programmable logic device, the method further includes: if the acknowledgment character of the target data is a negative acknowledgment character, then stopping the sending of a data read request for reading the target data to the programmable logic device. That is, if the received acknowledgment character is a positive acknowledgment character (i.e., NO ACK), then stopping the sending of a data read request for reading the target data to the programmable logic device.

[0072] As can be seen, in this embodiment, a data read request carrying a target priority identifier of the target data is sent to a complex programmable logic device (CPLD). The CPLD then determines a number of target IIC devices based on the target priority identifier in the data read / write request, and determines the target priority level corresponding to each of the target IIC devices. It then retrieves the corresponding target data from each of the target IIC devices according to a pre-set data transmission rate for each target priority level. In this way, since the data transmission rate differs when IIC devices of different priority levels communicate with the CPLD, the hierarchical management of each IIC device improves the system's response speed, allowing the system to focus on processing high-priority IIC transactions, thus enhancing response speed and system stability. Furthermore, based on the confirmation character carried in the target data sent by the CPLD, it is possible to confirm whether to continue sending data read requests to the CPLD for reading the target data.

[0073] See Figure 5 As shown in the figure, this application discloses a communication device between a substrate management controller and an IIC device, which is applied to the substrate management controller. The device includes:

[0074] The request sending module 11 is used to send a data reading request for reading target data to a complex programmable logic device, wherein the complex programmable logic device is a serial communication component pre-added on the IIC bus between the baseboard management controller and the IIC device;

[0075] The data reading module 12 is used to determine a number of target IIC devices based on the data read / write request through the complex programmable logic device, so as to obtain corresponding target data from the number of target IIC devices through the complex programmable logic device.

[0076] The data acquisition module 13 is used to acquire the target data sent by the complex programmable logic device.

[0077] As can be seen, this application sends a data read request for reading target data to a complex programmable logic device (CPLD). The CPLD is a serial communication component pre-added to the IIC bus between the substrate management controller and the IIC device. Based on the data read / write request, the CPLD determines a number of target IIC devices, and then obtains the corresponding target data from each of these target IIC devices. The target data sent by the CPLD is then acquired. Therefore, this application adds a CPLD between the substrate management controller and the IIC device, establishes communication between the substrate management controller and the CPLD, and establishes communication between the CPLD and the IIC device. In this way, the CPLD obtains the data read request sent by the substrate management controller, reads the corresponding target data from the IIC device based on the data read request, and then returns the read target data to the substrate management controller. This avoids the communication overhead caused by direct communication between the substrate management controller and the IIC device, improving the communication efficiency between the substrate management controller and the IIC device.

[0078] Figure 6 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Specifically, it may include: at least one processor 21, at least one memory 22, a power supply 23, a communication interface 24, an input / output interface 25, and a communication bus 26. The memory 22 stores a computer program, which is loaded and executed by the processor 21 to implement the relevant steps in the board management controller and IIC device method executed by the electronic device disclosed in any of the foregoing embodiments.

[0079] In this embodiment, the power supply 23 is used to provide operating voltage for each hardware device on the electronic device 20; the communication interface 24 can create a data transmission channel between the electronic device 20 and external devices, and the communication protocol it follows can be any communication protocol applicable to the technical solution of this application, and is not specifically limited here; the input / output interface 25 is used to acquire external input data or output data to the outside world, and its specific interface type can be selected according to specific application needs, and is not specifically limited here.

[0080] The processor 21 may include one or more processing cores, such as a quad-core processor or an octa-core processor. The processor 21 may be implemented using at least one hardware form selected from DSP (Digital Signal Processing), FPGA (Field-Programmable Gate Array), and PLA (Programmable Logic Array). The processor 21 may also include a main processor and a coprocessor. The main processor, also known as a CPU (Central Processing Unit), is used to process data in the wake-up state; the coprocessor is a low-power processor used to process data in the standby state. In some embodiments, the processor 21 may integrate a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content to be displayed on the screen. In some embodiments, the processor 21 may also include an AI (Artificial Intelligence) processor, which is used to handle computational operations related to machine learning.

[0081] In addition, the memory 22, as a carrier for resource storage, can be a read-only memory, random access memory, disk or optical disk, etc. The resources stored on it include operating system 221, computer program 222 and data 223, etc., and the storage method can be temporary storage or permanent storage.

[0082] The operating system 221 manages and controls the various hardware devices on the electronic device 20 and the computer program 222 to enable the processor 21 to perform calculations and processing on the massive amounts of data 223 in the memory 22. The operating system can be Windows, Unix, Linux, etc. The computer program 222, in addition to including a computer program capable of performing the baseboard management controller and IIC device methods executed by the electronic device 20 as disclosed in any of the foregoing embodiments, may further include computer programs capable of performing other specific tasks. The data 223 may include data received by the electronic device from external devices, as well as data collected by its own input / output interface 25.

[0083] Furthermore, embodiments of this application also disclose a computer-readable storage medium storing a computer program. When the computer program is loaded and executed by a processor, it implements the method steps performed by the substrate management controller and the IIC device as disclosed in any of the foregoing embodiments.

[0084] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For the apparatus disclosed in the embodiments, since it corresponds to the method disclosed in the embodiments, the description is relatively simple; relevant parts can be referred to in the method section.

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

[0086] The steps of the methods or algorithms described in conjunction with the embodiments disclosed herein can be implemented directly by hardware, a software module executed by a processor, or a combination of both. The software module can be located in random access memory (RAM), main memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM, or any other form of storage medium known in the art.

[0087] Finally, it should be noted that in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0088] The foregoing has provided a detailed description of the substrate management controller and IIC device method, apparatus, device, and storage medium provided by the present invention. Specific examples have been used to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only for the purpose of helping to understand the method and core ideas of the present invention. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of the present invention. Therefore, the content of this specification should not be construed as a limitation of the present invention.

Claims

1. A communication method between a baseboard management controller and an IIC device, characterized in that, Applications to baseboard management controllers include: A data read request for reading target data is sent to a complex programmable logic device, wherein the complex programmable logic device is a serial communication component pre-added on the IIC bus between the baseboard management controller and the IIC device; The complex programmable logic device determines a number of target IIC devices based on the data read request, so as to obtain the corresponding target data from the number of target IIC devices respectively through the complex programmable logic device; Acquire the target data sent by the complex programmable logic device; The communication method between the substrate management controller and the IIC device further includes: The data types of all stored data in all IIC devices are obtained in advance, and all data are prioritized according to the data types to obtain a corresponding priority identifier list; Based on the priority identifier list, all IIC devices are assigned priorities to obtain IIC devices with different priority levels; Sending the data read request for reading the target data to the complex programmable logic device includes: The target data type of the target data to be read is determined, and the target priority identifier of the target data is determined from the priority identifier list based on the target data type; the priority identifier list is a list obtained in advance after prioritizing the data stored in all IIC devices according to the data type. Send a data read request carrying the target priority identifier of the target data to the complex programmable logic device; The step of determining a number of target IIC devices based on the data read request using the complex programmable logic device, so as to obtain corresponding target data from the number of target IIC devices using the complex programmable logic device, includes: The complex programmable logic device determines a number of target IIC devices based on the target priority identifier in the data read request, and determines the target priority level corresponding to the number of target IIC devices. The complex programmable logic device acquires corresponding target data from a number of target IIC devices according to a data transmission rate pre-set for the target priority level.

2. The communication method between the baseboard management controller and the IIC device according to claim 1, characterized in that, The step of acquiring the target data sent by the complex programmable logic device includes: The target data carrying confirmation characters sent by the complex programmable logic device is acquired, wherein the confirmation characters include positive confirmation characters and negative confirmation characters.

3. The communication method between the baseboard management controller and the IIC device according to claim 2, characterized in that, After acquiring the target data sent by the complex programmable logic device, the method further includes: If the confirmation character of the target data is a positive confirmation character, then the data read request for reading the target data is sent to the complex programmable logic device (CPLD) so that the CPLD can read the data from the corresponding target device.

4. The communication method between the baseboard management controller and the IIC device according to claim 2, characterized in that, After acquiring the target data sent by the complex programmable logic device, the method further includes: If the confirmation character of the target data is a negative confirmation character, then the data read request for reading the target data is stopped from being sent to the programmable logic device.

5. A communication device between a baseboard management controller and an IIC device, characterized in that, Applications to baseboard management controllers include: The request sending module is used to send a data read request for reading target data to a complex programmable logic device, wherein the complex programmable logic device is a serial communication component pre-added on the IIC bus between the baseboard management controller and the IIC device; The data reading module is used to determine a number of target IIC devices based on the data reading request through the complex programmable logic device, so as to obtain corresponding target data from the number of target IIC devices through the complex programmable logic device. A data acquisition module is used to acquire the target data sent by the complex programmable logic device; The communication device between the substrate management controller and the IIC device is further configured to pre-obtain the data types of the data stored in all IIC devices, and prioritize all data according to the data types to obtain a corresponding priority identifier list; and prioritize all IIC devices based on the priority identifier list to obtain IIC devices with different priority levels. The request sending module is specifically used to determine the target data type of the target data to be read, and to determine the target priority identifier of the target data from the priority identifier list based on the target data type; the priority identifier list is a list obtained in advance after prioritizing the data stored in all IIC devices according to the data type; and to send the data read request carrying the target priority identifier of the target data to the complex programmable logic device. The data reading module is specifically used to determine a number of target IIC devices based on the target priority identifier in the data reading request using the complex programmable logic device, and to determine the target priority level corresponding to the number of target IIC devices; and to obtain the corresponding target data from the number of target IIC devices using the complex programmable logic device according to the data transmission rate preset for the target priority level.

6. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor for executing the computer program to implement the steps of the communication method between the baseboard management controller and the IIC device as described in any one of claims 1 to 4.

7. A computer-readable storage medium, characterized in that, Used to store a computer program; wherein, when the computer program is executed by a processor, it implements the steps of the communication method between the baseboard management controller and the IIC device as described in any one of claims 1 to 4.