Communication method, server motherboard, server, device, equipment and storage medium
By introducing a communication controller into the server mainboard and using the second communication protocol to automatically detect the port connection relationship, the communication failure caused by the incorrect connection between the server mainboard and the external device is solved, and the fault location efficiency is improved.
Patent Information
- Application Number
- CN202510942238.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-09
- Publication Date
- 2025-09-12
- Estimated Expiration
- 2045-07-09
AI Technical Summary
In the prior art, port connection errors are prone to occur when connecting a server motherboard to an external device, resulting in communication failures and low manual troubleshooting efficiency.
A communication controller is introduced into the server motherboard, which automatically detects the actual connection relationship between the communication port and the external device through the second communication protocol, responds to communication requests using a combination of the chip select port and other ports, and automatically identifies the wrong port.
It improves the efficiency of locating communication faults, reduces the time for manual troubleshooting, and increases the speed of locating connection faults.
Smart Images

Figure CN120455258B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of electronic computer technology, and in particular to a communication method, a server motherboard, a server, a device, an equipment, and a storage medium. Background Art
[0002] Some communication protocols, such as PCIe (Peripheral Component Interconnect Express), provide high-speed serial data transmission channels. These protocols enable high-speed data transmission between server motherboard-connected devices (such as network adapters) and the server motherboard. However, when connecting these external devices to the server motherboard, port connection errors may occur, leading to communication failures between the external device and the server motherboard.
[0003] Currently, in some technologies, when a communication failure occurs between an external device and a server motherboard, the wrong connection port is usually manually checked, which is time-consuming and has a low efficiency in locating the communication failure. Summary of the Invention
[0004] The present application provides a communication method, a server mainboard, a server, a communication device, an electronic device, and a computer non-volatile readable storage medium to at least solve the problem of low efficiency in locating communication faults in related technologies.
[0005] The present application provides a communication method, applied to a communication controller, the method comprising:
[0006] In response to the electrical signal of one or more communication ports of the server mainboard being set to the first electrical signal and lasting for a first preset time, determining that the external device of the server mainboard is successfully connected to the server mainboard;
[0007] One of the communication ports of the server mainboard is used as a chip select port, and a communication request is sent to each of the external devices connected to the server mainboard through the communication ports other than the chip select port, and each of the external devices is configured to return a response through the communication ports other than the chip select port when receiving the communication request and determining that it is connected to the chip select port;
[0008] The target communication port to which the response is received is determined, and the chip select port and the target communication port are determined to be communication ports connected to the same external device.
[0009] The present application also provides a communication method applied to an external device of a server motherboard, the method comprising:
[0010] When the connection with the server mainboard is successful, one or more communication ports of the server mainboard are set to a first electrical signal, and the duration of the first electrical signal is a first preset duration;
[0011] In response to receiving a communication request sent by the communication controller of the server motherboard, determine whether it is connected to the chip select port. If so, return a response to the communication controller through other communication ports connected except the chip select port. The chip select port is one of the communication ports on the server motherboard.
[0012] The present application also provides a server motherboard, the server motherboard comprising a communication component, a communication controller, and a plurality of communication ports, each of the communication ports comprising a first pin and a second pin, the first pins of at least two of the communication ports being used to connect to one of the external devices of the server motherboard, and the second pins of at least two of the communication ports being used to connect to one of the external devices of the server motherboard, the communication component being used to connect to the first pins of the respective communication ports and to communicate with the external devices according to a first communication protocol, and the communication controller being used to connect to the second pins of the respective communication ports and to communicate with the external devices according to a second communication protocol;
[0013] Based on the second communication protocol, the external device is configured to, when successfully connected to the server mainboard, set one or more communication ports of the server mainboard to a first electrical signal, and the duration of the first electrical signal is a first preset duration;
[0014] The communication controller is configured to determine that the external device of the server mainboard is successfully connected to the server mainboard in response to the electrical signal of one or more communication ports of the server mainboard being set to the first electrical signal and lasting for a first preset time period, and to use one of the communication ports of the server mainboard as a chip select port, and to send a communication request to each of the external devices connected to the server mainboard through the other communication ports other than the chip select port;
[0015] Each of the external devices is configured to return a response via another communication port other than the chip select port when receiving a communication request and determining that it is connected to the chip select port;
[0016] The communication controller is used to determine the target communication port that receives the response, and determine the chip select port and the target communication port as communication ports connected to the same external device, obtain the actual connection relationship between the communication port and the external device, and based on the actual connection relationship and the pre-set planned connection relationship, determine whether the communication component and each of the external devices communicate through the planned communication port.
[0017] The present application also provides a server, comprising the server mainboard as described above.
[0018] The present application also provides a communication device, comprising:
[0019] a port monitoring module, configured to determine that an external device on the server mainboard is successfully connected to the server mainboard in response to an electrical signal on one or more communication ports of the server mainboard being set to a first electrical signal and lasting for a first preset time period;
[0020] a communication module, configured to use one of the communication ports of the server motherboard as a chip select port, and to send a communication request to each of the external devices connected to the server motherboard through the communication ports other than the chip select port, wherein each of the external devices is configured to return a response through the communication ports other than the chip select port upon receiving the communication request and determining that it is connected to the chip select port;
[0021] The connection relationship detection module is used to determine the target communication port that receives the response, and determine the chip selection port and the target communication port as communication ports connected to the same external device.
[0022] The present application also provides a communication device, comprising:
[0023] A setting module is configured to set one or more communication ports of the server mainboard to a first electrical signal when the connection with the server mainboard is successful, and the duration of the first electrical signal is a first preset duration;
[0024] A response module is used to determine whether it is connected to a chip select port in response to receiving a communication request sent by the communication controller of the server motherboard. If so, return a response to the communication controller through other connected communication ports except the chip select port, where the chip select port is one of the communication ports on the server motherboard.
[0025] The present application also provides a computer non-volatile readable storage medium, which is used to store a computer program. When the computer program is executed by a processor, the method described above is implemented.
[0026] The present application also provides an electronic device, which includes a processor and a memory, wherein the memory is used to store a computer program, and when the computer program is executed by the processor, the method described above is implemented.
[0027] In the technical solutions of some embodiments of the present application, a communication controller is introduced into the server motherboard, and the communication controller is connected to the second pin of the communication port, and the communication component is connected to the first pin of the communication port. In this way, the communication component can perform normal business communications with the external device through the first pin based on the first communication protocol. At the same time, the communication controller can detect the actual connection relationship between the communication port and the external device through the second pin based on the second communication protocol. When a communication failure occurs between the communication component and the external device, the communication port with the connection error can be found based on the comparison result of the actual connection relationship and the planned connection relationship. In this way, there is no need to manually check the communication port with the connection error, which can greatly improve the efficiency of communication fault location and solve the problem of relatively low communication fault location efficiency in some technologies. BRIEF DESCRIPTION OF THE DRAWINGS
[0028] In order to more clearly illustrate the embodiments of the present application, the following is a brief introduction to the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0029] Figure 1 A schematic diagram of the connection between a server motherboard and external devices in some technologies;
[0030] Figure 2 A schematic diagram of a server motherboard module provided for some embodiments of the present application;
[0031] Figure 3 A flowchart of a communication method provided in some embodiments of the present application;
[0032] Figure 4 A schematic flow chart of a second communication method provided in some embodiments of the present application;
[0033] Figure 5 A schematic diagram of modules of a first communication device provided in some embodiments of the present application;
[0034] Figure 6 A schematic diagram of a module of a second communication device provided in some embodiments of the present application;
[0035] Figure 7 A schematic diagram of a server module according to an embodiment of the present application;
[0036] Figure 8 A schematic diagram of a module of an electronic device provided in one embodiment of the present application. DETAILED DESCRIPTION
[0037] The following will be combined with the accompanying drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.
[0038] It should be noted that, in the description of this application, the terms "comprises," "includes," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or device comprising a series of elements includes not only those elements but also other elements not explicitly listed, or also includes elements inherent to such process, method, article, or device. The terms "first," "second," etc., in this application are used to distinguish similar objects and are not used to describe a specific order or precedence.
[0039] In order to enable those skilled in the art to better understand the present application, the present application is further described in detail below with reference to the accompanying drawings and specific implementation methods.
[0040] See also Figure 1 , which is a schematic diagram of the connection between a server motherboard 100 and an external device 101 in some technologies. Figure 1 In the example, the server motherboard 100 includes a communication component 11 and multiple communication ports 12. The communication component 11 may include, but is not limited to, a central processing unit (CPU) and a platform controller hub (PCH). The communication ports 12 may include, but are not limited to, PCIe slots and MCIO (Multi-Channel Input / Output) ports.
[0041] The communication component 11 can be connected to each communication port 12 through the internal bus on the server motherboard 100. Each communication port 12 can be used to connect to an external device 101 of the server motherboard 100. The external device 101 may include but is not limited to a network card, a graphics card, an expansion card, a storage controller, etc. Among them, the expansion card may include but is not limited to a PCIe switch, a riser card, etc. When the external device 101 is an expansion card, the expansion card can connect to multiple external devices 101 that need to communicate with the communication component 11. For example Figure 1In the example, one end of the expansion card can be connected to the communication port 12 of the server motherboard 100, and the other end can be connected to an external device 101 such as a network card 2, a graphics card, and a storage controller. That is, the external devices 101 such as the network card 2, the graphics card, and the storage controller can communicate with the communication component 11 on the server motherboard 100 through the expansion card. The expansion card can manage the external devices 101 to which it is connected. For example, take the PCIe switch as an example. When the communication component 11 needs to communicate with the network card 2 connected to the PCIe switch, the PCIe switch can control the communication component 11 to be connected to the network card 2. When the communication component 11 needs to communicate with the storage controller connected to the PCIe switch, the PCIe switch can control the communication component 11 to be connected to the storage controller. When the number of communication ports of the server motherboard 100 is limited, the number of external devices 101 connected to the server motherboard 100 can be expanded through the expansion card.
[0042] According to the communication bit width supported by each external device 101, each external device 101 can be connected to one or more communication ports 12 of the server motherboard 100. For ease of understanding, let's take PCIe communication as an example. Assuming that one communication port 12 of the server motherboard 100 can support 8 PCIe channels, then an external device 101 that supports 16 PCIe channels (i.e., X16 bandwidth) needs to be connected to two of the communication ports 12 of the server motherboard 100, and an external device 101 that supports 32 PCIe channels (i.e., X32 bandwidth) needs to be connected to four of the communication ports 12 of the server motherboard 100, and so on. For example Figure 1 In the example, network card 1 is connected to communication ports P15 and P16 of server motherboard 100, indicating that network card 1 supports 16 PCIe lanes. Similarly, expansion card 1 is connected to communication ports P11 to P14 of server motherboard 100, indicating that expansion card 1 supports 32 PCIe lanes.
[0043] Typically, the connection relationship between the communication port 12 of the server motherboard 100 and the external device 101 is pre-planned. The communication component 11 communicates with each external device 101 based on the pre-planned connection relationship. If the physical connection between the server motherboard 100 and the external device 101 is not performed according to the pre-planned connection, a communication failure between the server motherboard 100 and the external device 101 may occur. For example, assume that in the pre-planned connection relationship, the communication ports P11-P14 of the server motherboard 100 are used to connect to the expansion card, and the communication ports P15 and P16 are used to connect to the network card 1. However, during the actual physical connection, the communication ports P11 and P13 are connected to the network card 1, and the communication ports P12, P14, P15, and P16 are connected to the expansion card. In this way, when the communication component 11 communicates with the expansion card through the communication ports P11-P14 according to the pre-planned connection relationship, a communication failure may occur.
[0044] In addition, even if the server motherboard 100 and the external device 101 are correctly physically connected according to the pre-planned connection relationship, if the cable used to connect the server motherboard 100 and the external device 101 has poor contact with the communication port 12, it may still cause communication failure between the server motherboard 100 and the external device 101.
[0045] In some current technologies, when a communication fault occurs between the server mainboard 100 and the external device 101, the incorrect connection relationship is usually manually checked and corrected. This method is time-consuming and has a low efficiency in locating the communication fault.
[0046] In view of this, the present application provides a server motherboard that can automatically check the communication port with connection errors, thereby improving the efficiency of locating communication faults and solving the problem of low efficiency of locating communication faults in some technologies. Figure 2 , which is a module diagram of the server motherboard 200 provided in some embodiments of the present application. Figure 2 In the example, the server motherboard 200 includes a communication component 21, a communication controller 23, and multiple communication ports 22. The communication component 21 is similar to the communication component 11 described above and will not be described in detail here. The communication controller 23 may include, but is not limited to, a complex programmable logic device (CPLD).
[0047] Each communication port 22 may include a first pin 221 and a second pin 222. The first pins 221 of at least two communication ports 22 are used to connect to one of the external devices 201 of the server motherboard 200, and the second pins 222 of at least two communication ports 22 are used to connect to one of the external devices 201 of the server motherboard 200. Normally, the first pin 221 and the second pin 222 of the same communication port 22 are used to connect to the same external device 201. For example, Figure 2 In the embodiment, the first pins 221 and the second pins 222 of the communication ports P21 to P24 can be used to connect to the expansion card, and the first pins 221 and the second pins 222 of the communication ports P25 and P26 can be used to connect to the network card 1.
[0048] The communication component 21 is configured to connect to the first pins 221 of each communication port 22 and communicate with the external device 201 according to the first communication protocol. The communication controller 23 is configured to connect to the second pins 222 of each communication port 22 and detect the actual connection relationship between the communication port 22 and the external device 201 according to the second communication protocol. Furthermore, based on the actual connection relationship and a pre-set planned connection relationship, the communication component 21 determines whether communication with each external device 201 is performed through the planned communication port.
[0049] Specifically, the first communication protocol refers to the protocol used by the communication component 21 and the external device 201 for normal business communications, including but not limited to the PCIe protocol. For example, when the central processing unit (CPU) serves as the communication component 21 and needs to read or write data on a storage disk, the CPU can issue read or write instructions to the storage controller (i.e., the external device 201) based on the first communication protocol. After the storage controller executes the read or write instructions issued by the CPU, it can return the execution results to the CPU based on the first communication protocol.
[0050] The second communication protocol may be the communication protocol proposed in the present application, which is mainly used to detect the actual connection relationship between the communication port 22 and the external device 201. Specifically, in this embodiment, based on the second communication protocol, the communication controller 23 may use one of the communication ports 22 of the server motherboard 200 as a chip select port, and send a communication request to each external device 201 connected to the server motherboard 200 through other communication ports other than the chip select port. Each external device 201 is configured to return a response through other communication ports other than the chip select port when receiving a communication request and determining that it is connected to the chip select port. The communication controller 23 is configured to determine the chip select port and the target communication port to which the response is received as the communication port 22 connected to the same external device 201, and obtain the actual connection relationship between the communication port 22 and the external device 201.
[0051] For ease of understanding, Figure 2 Let's take this as an example. Assume that communication controller 23 uses communication port P21 as the chip select port and sends a communication request to the connected external device 201 through communication ports P22-P2n. After the expansion card and network card 1 receive the communication request, since network card 1 is not connected to the chip select port and the expansion card is connected to the chip select port, network card 1 does not return a response. The expansion card can return a response to communication controller 23 through communication ports P22-P24. Since communication controller 23 receives the response through communication ports P22-P24, it can determine that communication port P21 and communication ports P22-P24 are connected to the same external device 201.
[0052] After determining that communication ports P21-P24 are connected to the same external device 201, communication controller 23 can continue to use communication port P25 as the chip select port and send communication requests to the connected external device 201 through communication ports P21-P24 and P26-P2n. After the expansion card and network card 1 receive the communication request, since the expansion card is not connected to the chip select port and network card 1 is connected to the chip select port, the expansion card does not return a response. Network card 1 can return a response to communication controller 23 through communication port P26. Since communication controller 23 received the response through communication port P26, it can be determined that communication ports P25 and P26 are connected to the same external device 201.
[0053] In this way, the actual connection relationship between the communication port 22 and the external device 201 can be obtained.
[0054] In other embodiments, each time parallel communication is initiated, communication ports 22 that have already been determined to be connected to the same external device 201 may be eliminated. For example, in the above example, after determining that communication ports P21-P24 are connected to the same external device 201, communication ports P21-P24 may be eliminated when parallel communication is initiated using communication port P25 as the chip select port. This means that communication requests do not need to be initiated through communication ports P21-P24. This reduces the consumption of communication resources.
[0055] In other embodiments, based on the second communication protocol, the external device 201 is configured to return a response to the communication controller 23 through all the connected communication ports 22 including the chip select port when receiving a communication request and connected to the chip select port. The communication controller 23 is configured to determine the communication port 22 that receives the response as the communication port 22 connected to the same external device 201. For example, Figure 2 In this embodiment, when communication controller 23 selects communication port P21 as the chip select port, the expansion card can return a response to communication controller 23 via all connected communication ports (i.e., communication ports P21-P24). Since communication controller 23 receives the response via communication ports P21-P24, it can determine that communication ports P21-P24 are connected to the same external device 201. In these embodiments, external device 201 returns a response to communication controller 23 via all connected communication ports 22, which can simplify the processing logic of communication controller 23 and external device 201. For example, when external device 201 receives a communication request and determines that it is connected to a chip select port, it can directly return a response based on all connected communication ports 22, without excluding the chip select port. For another example, when communication controller 23 receives a response, it can directly determine that the communication port 22 receiving the response is the communication port 22 connected to the same external device 201, without integrating the chip select port with the target communication port for receiving the response.
[0056] After the communication controller 23 determines the actual connection relationship between the communication port 22 and the external device 201, it can compare the actual connection relationship with the pre-set planned connection relationship. If the actual connection relationship is inconsistent with the planned connection relationship, the communication port with the connection error can be found and sent to the maintenance personnel. In this way, there is no need for the maintenance personnel to manually check the communication port with the connection error, which can greatly improve the efficiency of locating communication faults. For example, suppose that in the planned connection relationship, communication ports P21~P24 are used to connect to the same external device 201, and communication ports P25 and P26 are used to connect to another external device 201. However, in the actual connection relationship detected based on the second communication protocol, communication ports P21, P22, P25, and P26 are connected to the same external device 201, and communication ports P23 and P24 are connected to the same external device 201, which means that there is an error in the connection of communication ports P21~P26. In this way, maintenance personnel can directly check communication ports P21 to P26 without having to check all communication ports one by one, which can greatly improve the efficiency of communication fault locating.
[0057] Specifically, in some embodiments, the server motherboard 200 may further include a management controller 24. The management controller 24 may include, but is not limited to, a baseboard management controller (BMC) or a central processing unit (CPU). The management controller 24 may store planned connection relationships. The communication controller 23 may send actual connection relationships to the management controller 24. Based on the comparison results between the actual connection relationships and the planned connection relationships, the management controller 24 determines whether communication between the communication component 21 and each external device 201 is conducted through the planned communication ports 22. In these embodiments, having the management controller 24 perform the comparison between the actual connection relationships and the planned connection relationships reduces the computational workload of the communication controller 23. Furthermore, the management controller 24 typically includes a management interface for displaying to maintenance personnel. If the management controller 24 determines that a communication port 22 is incorrectly connected based on the comparison results, the management controller 24 may display the incorrectly connected communication port 22 on its management interface to facilitate prompting maintenance personnel.
[0058] In other embodiments, the communication controller 23 may obtain the planned connection relationship from the management controller 24 and, based on a comparison result between the actual connection relationship and the planned connection relationship, determine whether the communication component 21 and each external device 201 communicate through the planned communication port 22. In these embodiments, all connection relationship detection logic is implemented by the communication controller 23, eliminating the need to add new connection relationship detection logic to the management controller 24, thereby reducing program code changes in the management controller 24.
[0059] In summary, in the technical solutions of some embodiments of the present application, a communication controller 23 is introduced into the server motherboard 200, and the communication controller 23 is connected to the second pin 222 of the communication port 22, and the communication component 21 is connected to the first pin 221 of the communication port 22. In this way, the communication component 21 can conduct normal business communications with the external device 201 via the first pin 221 based on the first communication protocol. At the same time, the communication controller 23 can detect the actual connection relationship between the communication port 22 and the external device 201 via the second pin 222 based on the second communication protocol. When a communication failure occurs between the communication component 21 and the external device 201, the communication port 22 with the incorrect connection can be found based on the comparison result of the actual connection relationship with the planned connection relationship. In this way, there is no need to manually troubleshoot the incorrectly connected communication port 22, thereby greatly improving the efficiency of locating communication faults and solving the problem of relatively low communication fault location efficiency in some technologies.
[0060] Furthermore, in some embodiments, the number of second pins 222 can be 1. That is, each communication port 22 can include one second pin 222. When detecting the actual connection relationship between the communication port 22 and the external device 201, the communication controller 23 can communicate with the external device 201 based on the serial communication protocol. The number of first pins 221 can be set according to the provisions of the first communication protocol, and this application does not impose any restrictions on this. For example, each communication port 22 can include 16 or other numbers of pins. In these embodiments, setting the number of second pins 222 to 1 can reduce the pin consumption of each communication port 22.
[0061] The second communication protocol of this application is described in detail below.
[0062] In some embodiments, based on the second communication protocol, for any external device 201, if the external device 201 is successfully connected to the server motherboard 200, the external device 201 may set one or more communication ports 22 of the server motherboard 200 to a first electrical signal (e.g., a low level), and the duration of the first electrical signal is a first preset duration (e.g., 1 second). In response to the electrical signal of one or more communication ports 22 of the server motherboard 200 being set to the first electrical signal and lasting for the first preset duration, the communication controller 23 may determine that the external device 201 of the server motherboard 200 is successfully connected to the server motherboard 200. Specifically, if the external device 201 is successfully connected to the server motherboard 200, the external device 201 may set the connected one or more communication ports 22 to the first electrical signal (e.g., a low level), and the duration of the first electrical signal is the first preset duration (e.g., 1 second).
[0063] In the above embodiment, the external device 201 proactively sets the electrical signal of the connected communication port 22, which is equivalent to the external device 201 proactively sending a successful connection notification to the communication controller 23. This eliminates the need for the communication controller 23 to monitor whether a new external device 201 has been connected to the server motherboard 200 through timed scanning or other means. This reduces the difficulty of the communication controller 23 monitoring the external device 201 and improves the accuracy and timeliness of monitoring.
[0064] In some embodiments, based on the second communication protocol, if the server motherboard 200 successfully connects to at least one external device 201, the communication controller 23 may establish a session connection with the external device 201. Specifically, during the session connection establishment process, the communication controller 23 may exchange signals or data packets with the external device 201 to confirm the communication capabilities or communication parameters of both parties. If the session connection is successfully established, the external device 201 may set the electrical signal on the second pin 222 of at least some of the connected communication ports 22 to a third electrical signal (e.g., a high level), and the duration of the third electrical signal must reach a second preset duration (e.g., 0.5 seconds). The communication controller 23 may determine that the session connection is established successfully in response to the external device 201 setting the electrical signal on the connected communication port 22 to the third electrical signal for a duration reaching the second preset duration. In these embodiments, on the one hand, during the session connection establishment process, the communication capabilities or communication parameters between the communication controller 23 and the external device 201 may be determined, and the communication controller 23 and the external device 201 may then communicate according to the determined communication capabilities or communication parameters. This ensures communication reliability. Furthermore, after a session connection is successfully established, communication controller 23 can determine the session connection status based on the third electrical signal set by external device 201 and the duration of the third electrical signal, eliminating the need for additional monitoring methods to determine the session connection status. This avoids issues such as inaccurate monitoring of the session connection status by communication controller 23, significantly reducing the misjudgment rate of communication controller 2.
[0065] In some embodiments, based on the second communication protocol, after the session connection is successfully established, the communication controller 23 can send a data frame to the external device 201. The data frame is used to indicate the current working mode that the external device 201 needs to enter. Specifically, the working mode may include a connection relationship detection mode. The communication controller 23 can send a first data frame to each external device 201 through the communication port 22. The first data frame can be used to instruct the external device 201 to enter the connection relationship detection mode. When entering the connection relationship detection mode, the communication controller 23 can use one of the communication ports as a chip select port and initiate a communication request to each external device 201 through other communication ports other than the chip select port. Each external device 201 is used to determine whether it is connected to the chip select port. If so, it returns a response to the communication controller 23 through the other communication ports connected except the chip select port. In this way, the detection of the actual connection relationship is completed.
[0066] In some embodiments, based on the second communication protocol, the communication controller 23 can set the electrical signal of the chip select port to a second electrical signal (e.g., a low level), and set the electrical signals of other communication ports other than the chip select port to electrical signals different from the second electrical signal. In this way, each external device 201 can search among the connected communication ports 22 to see if there is a communication port 22 with the second electrical signal. If so, it determines that it is connected to the chip select port and uses the communication port 22 with the second electrical signal as the chip select port. In this way, by setting the electrical signal of the communication port 22, the communication controller 23 can synchronize the chip select port with the external device 201, greatly reducing the difficulty of synchronizing the chip select port.
[0067] In some embodiments, when the communication component 21 communicates with the external device 201, the communication component 21 may need to send communication address information to the external device 201. This communication address information can be used to characterize the correspondence between the port of the communication component 21 and the external device 201. Currently, in some technologies, this communication address information consumes seven pins of each communication port 22, meaning that each communication port 22 needs to use seven pins to send the communication address information. As technology evolves, the pins of each communication port 22 need to be utilized in a more efficient manner, and seven pins may not be available for sending the communication address information.
[0068] In view of this, the second pin 222 in each communication port 22 is used not only to detect the actual connection relationship between the communication port 22 and the external device 201, but also to send communication address information. Specifically, when the communication component 21 needs to send communication address information, the communication component 21 can send the communication address information to the communication controller 23. Based on the second communication protocol, the communication controller 23 can send a second data frame to each external device 202 through the communication port 22. The second data frame is used to instruct the external device 201 to enter the address information transmission mode. When entering the address information transmission mode, the communication controller 23 can send the communication address information obtained from the communication component 21 to the external device 201. When each communication port 22 has only one second pin 222, the communication controller 23 can send the communication address information to the external device 201 based on the serial communication protocol.
[0069] It is understandable that, compared to some technologies that use seven pins of each communication port 22 to send communication address information, this application, based on the second communication protocol, uses one pin of each communication port 22 to simultaneously detect the actual connection relationship between the communication port 22 and the external device 201 and send communication address information. This greatly reduces the pin consumption of the communication port 22.
[0070] In some embodiments, based on the second communication protocol, the communication controller 23 can use a specified number of bits to serially transmit communication address information, wherein the specified number of bits includes an identification bit and an address bit, the identification bit is used to mark the start of transmitting the communication address information, and the address bit is used to encode the communication address information. For example, the communication controller 23 can use 8 bits to transmit the communication address information. Of these 8 bits, the first bit can be used as the identification bit, and the 7 bits after the first bit can be used as address bits. The identification bit can have a specific electrical signal (such as a high level), so that the external device 201 can identify the identification bit. After identifying the identification bit, the external device 201 can use the data information in the 7 bits after the identification bit as the communication address information. In this way, reliable transmission of the communication address information is achieved.
[0071] Furthermore, when multiple communication address information is included, the 7 address bits can be divided into multiple groups, with the address bits of each group being used to transmit one communication address information. For example, the 2nd to 4th bits are used to transmit the first communication address information, and the 5th to 8th bits are used to transmit the second communication address information.
[0072] See also Figure 3 , is a flow chart of a communication method provided in some embodiments of the present application. The communication method can be applied to Figure 2The communication controller in the embodiment may specifically include the following steps:
[0073] Step S301 : In response to the electrical signal of one or more communication ports of the server mainboard being set to a first electrical signal and lasting for a first preset time, it is determined that the external device of the server mainboard is successfully connected to the server mainboard.
[0074] In step S302, one of the communication ports of the server mainboard is used as a chip select port, and a communication request is sent to each external device connected to the server mainboard through other communication ports other than the chip select port. When each external device receives a communication request and determines that it is connected to the chip select port, it returns a response through the other communication ports other than the chip select port.
[0075] Step S303: determining the target communication port that receives the response, and determining the chip select port and the target communication port as communication ports connected to the same external device.
[0076] In some embodiments, after one of the communication ports of the server mainboard is used as a chip select port, the communication method further includes:
[0077] The electrical signal of the chip select port is set to a second electrical signal, and the electrical signals of other communication ports except the chip select port are set to electrical signals different from the second electrical signal.
[0078] In some embodiments, before sending a communication request to each external device connected to the server mainboard, the communication method further includes:
[0079] A first data frame is sent to each external device through a communication port, where the first data frame is used to instruct the external device to enter a connection relationship detection mode.
[0080] In some embodiments, the communication method further comprises:
[0081] In response to receiving the communication address information sent by the communication component, sending a second data frame to each external device through the communication port, the second data frame being used to instruct the external device to enter an address information transmission mode;
[0082] When the address information transmission mode is entered, the communication address information obtained from the communication component is sent to the external device.
[0083] In some embodiments, sending the communication address information obtained from the communication component to the external device includes:
[0084] The communication address information is transmitted serially using a specified number of bits, wherein the specified number of bits includes an identification bit and an address bit, the identification bit is used to mark the start of transmitting the communication address information, and the address bit is used to encode the communication address information.
[0085] In some embodiments, after determining that the external device of the server mainboard is successfully connected to the server mainboard, the communication method further includes:
[0086] A session connection is established with the external device, and in response to the external device setting the electrical signal of the connected communication port to a third electrical signal and the duration reaches a second preset duration, it is determined that the session connection establishment is completed.
[0087] For the specific principles of the communication method, please refer to the relevant description of the server motherboard, which will not be repeated here.
[0088] See also Figure 4 , which is a flow chart of a communication method provided in some other embodiments of the present application. The communication method can be applied to Figure 2 The external device in the embodiment may specifically include the following steps:
[0089] Step S401: When the connection with the server mainboard is successful, one or more communication ports of the server mainboard are set to a first electrical signal, and the duration of the first electrical signal is a first preset duration.
[0090] Step S402, in response to receiving a communication request sent by the communication controller of the server motherboard, determine whether it is connected to the chip select port. If so, return a response to the communication controller through other communication ports connected except the chip select port. The chip select port is one of the communication ports on the server motherboard.
[0091] In some embodiments, determining whether to connect to a chip select port includes:
[0092] Among the connected communication ports, it is searched whether there is a communication port with the second electrical signal. If so, it is determined to be connected to the chip select port, and the communication port with the second electrical signal is used as the chip select port.
[0093] In some embodiments, after setting one or more communication ports of the server mainboard to the first electrical signal, the second communication method further includes:
[0094] If a first data frame sent by the communication controller is received, determining to enter a connection relationship detection mode;
[0095] If the second data frame sent by the communication controller is received, it is determined to enter the address information transmission mode.
[0096] For the specific principles of the communication method, please refer to the relevant description of the server motherboard, which will not be repeated here.
[0097] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus the necessary general hardware platform, and of course it can also be implemented by hardware, but in many cases the former is a better implementation method.
[0098] See also Figure 5 , which is a module diagram of a communication device provided in some embodiments of the present application. Figure 5 In the embodiment, the communication device includes:
[0099] The port monitoring module 501 is used to determine that the external device of the server mainboard is successfully connected to the server mainboard in response to the electrical signal of one or more communication ports of the server mainboard being set to the first electrical signal and lasting for a first preset time.
[0100] The communication module 502 is used to use one of the communication ports of the server motherboard as a chip select port, and to send communication requests to various external devices connected to the server motherboard through other communication ports other than the chip select port. Upon receiving the communication request and determining that it is connected to the chip select port, each external device is used to return a response through the other communication ports other than the chip select port.
[0101] The connection relationship detection module 503 is used to determine the target communication port that receives the response, and determine the chip selection port and the target communication port as communication ports connected to the same external device.
[0102] In some embodiments, after one of the communication ports of the server motherboard is used as a chip select port, the communication module 502 is further configured to:
[0103] The electrical signal of the chip select port is set to a second electrical signal, and the electrical signals of other communication ports except the chip select port are set to electrical signals different from the second electrical signal.
[0104] In some embodiments, before sending a communication request to each external device connected to the server motherboard, the communication module 502 is further configured to:
[0105] A first data frame is sent to each external device through a communication port, where the first data frame is used to instruct the external device to enter a connection relationship detection mode.
[0106] In some embodiments, the communication module 502 is further configured to:
[0107] In response to receiving the communication address information sent by the communication component, sending a second data frame to each external device through the communication port, the second data frame being used to instruct the external device to enter an address information transmission mode;
[0108] When the address information transmission mode is entered, the communication address information obtained from the communication component is sent to the external device.
[0109] In some embodiments, the communication module 502 is specifically configured to:
[0110] The communication address information is transmitted serially using a specified number of bits, wherein the specified number of bits includes an identification bit and an address bit, the identification bit is used to mark the start of transmitting the communication address information, and the address bit is used to encode the communication address information.
[0111] In some embodiments, after determining that the external device of the server mainboard is successfully connected to the server mainboard, the port monitoring module 501 is further configured to:
[0112] A session connection is established with the external device, and in response to the external device setting the electrical signal of the connected communication port to a third electrical signal, and the duration reaches a second preset duration, it is determined that the session connection establishment is completed.
[0113] See also Figure 6 , which is a module schematic diagram of a communication device provided in some other embodiments of the present application. Figure 6 In the embodiment, the communication device includes:
[0114] The setting module 601 is used to set one or more communication ports of the server mainboard to a first electrical signal when the connection with the server mainboard is successful, and the duration of the first electrical signal is a first preset duration.
[0115] The response module 602 is used to respond to a communication request sent by the communication controller on the server motherboard, determine whether it is connected to the chip select port, and if so, return a response to the communication controller through other communication ports connected except the chip select port. The chip select port is one of the communication ports on the server motherboard.
[0116] In some embodiments, the response module 602 is further configured to:
[0117] Among the connected communication ports, it is searched whether there is a communication port with the second electrical signal. If so, it is determined to be connected to the chip select port, and the communication port with the second electrical signal is used as the chip select port.
[0118] In some embodiments, after setting one or more communication ports of the server mainboard to the first electrical signal, the setting module 601 is further configured to:
[0119] If a first data frame sent by the communication controller is received, it is determined to enter a connection relationship detection mode; and if a second data frame sent by the communication controller is received, it is determined to enter an address information transmission mode.
[0120] For descriptions of features in the embodiments corresponding to the first communication device and the second communication device, reference can be made to the relevant descriptions of the embodiments corresponding to the communication method and the second communication method, which will not be detailed here.
[0121] See also Figure 7 , which is a module diagram of a server 700 provided in one embodiment of the present application. Figure 7 In the example, the server 700 includes Figure 2 The server motherboard 200 is shown.
[0122] Since the server 700 includes the server mainboard 200 , it has the beneficial effects of the server mainboard 200 .
[0123] See also Figure 8 An embodiment of the present application further provides an electronic device, comprising a memory 10 and a processor 20, wherein the memory 10 stores a computer program, and the processor 20 is configured to run the computer program to execute the steps in any one of the above method embodiments.
[0124] An embodiment of the present application further provides a computer non-volatile readable storage medium, in which a computer program is stored. The computer program is configured to execute the steps of any of the above method embodiments when running.
[0125] In an exemplary embodiment, the above-mentioned computer non-volatile readable storage medium may include, but is not limited to: a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk or an optical disk, and other media that can store computer programs.
[0126] An embodiment of the present application further provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the steps in any of the above method embodiments are implemented.
[0127] An embodiment of the present application also provides another computer program product, including a non-volatile computer-readable storage medium, wherein the non-volatile computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps in any of the above method embodiments are implemented.
[0128] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the above description has generally described the components and steps of each example according to their functions. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may 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.
[0129] The above describes in detail a communication method, server motherboard, server, device, equipment, and storage medium provided by this application. This document uses specific examples to illustrate the principles and implementation methods of this application. The description of the above embodiments is only intended to help understand the method and core concept of this application. It should be noted that for those skilled in the art, without departing from the principles of this application, several improvements and modifications can be made to this application, and these improvements and modifications also fall within the scope of protection of the claims of this application.
Claims
1. A communication method, characterized in that: Applied to a communication controller, the method includes: In response to the electrical signal of one or more communication ports of the server mainboard being set to the first electrical signal and lasting for a first preset time, determining that the external device of the server mainboard is successfully connected to the server mainboard; One of the communication ports of the server mainboard is used as a chip select port, and a communication request is sent to each of the external devices connected to the server mainboard through the communication ports other than the chip select port, and each of the external devices is configured to return a response through the communication ports other than the chip select port when receiving the communication request and determining that it is connected to the chip select port; determining a target communication port to which a response is received, and determining the chip select port and the target communication port as communication ports connected to the same external device; and, in response to receiving the communication address information sent by the communication component, sending a second data frame to each of the external devices through the communication port, wherein the second data frame is used to instruct the external device to enter an address information transmission mode; In the case of entering the address information transmission mode, the communication address information obtained from the communication component is sent to the external device; The sending of the communication address information obtained from the communication component to the external device includes: The communication address information is transmitted serially using a specified number of bits, wherein the specified number of bits includes an identification bit and an address bit, the identification bit is used to mark the start of transmitting the communication address information, and the address bit is used to encode the communication address information.
2. The method according to claim 1, characterized in that After one of the communication ports of the server mainboard is used as the chip select port, the method further includes: The electrical signal of the chip select port is set to a second electrical signal, and the electrical signals of other communication ports except the chip select port are set to electrical signals different from the second electrical signal.
3. The method according to claim 1, characterized in that Before sending a communication request to each of the external devices connected to the server mainboard, the method further includes: A first data frame is sent to each of the external devices through the communication port, where the first data frame is used to instruct the external device to enter a connection relationship detection mode.
4. The method according to claim 1, wherein After determining that the external device of the server mainboard is successfully connected to the server mainboard, the method further includes: A session connection is established with the external device, and in response to the external device setting the electrical signal of the connected communication port to a third electrical signal and the duration reaches a second preset duration, it is determined that the session connection establishment is completed.
5. A communication method, characterized in that: The method for an external device applied to a server motherboard includes: When the connection with the server mainboard is successful, one or more communication ports of the server mainboard are set to a first electrical signal, and the duration of the first electrical signal is a first preset duration; In response to receiving a communication request sent by a communication controller of the server motherboard, determining whether a chip select port is connected, and if so, returning a response to the communication controller via another communication port other than the chip select port that is connected, the chip select port being one of the communication ports on the server motherboard; And, if a second data frame sent by the communication controller is received, it is determined to enter the address information transmission mode. When entering the address information transmission mode, the communication address information obtained from the communication component and issued by the communication controller is received. The communication address information is transmitted serially using a specified number of bits, wherein the specified number of bits includes an identification bit and an address bit. The identification bit is used to identify the start of transmitting the communication address information, and the address bit is used to encode the communication address information.
6. The method according to claim 5, characterized in that The determining whether to connect to the chip select port includes: Among the connected communication ports, it is searched whether there is a communication port with a second electrical signal. If so, it is determined to be connected to the chip select port, and the communication port with the second electrical signal is used as the chip select port.
7. The method according to claim 5, characterized in that After setting one or more communication ports of the server mainboard to the first electrical signal, the method further includes: If the first data frame sent by the communication controller is received, it is determined to enter the connection relationship detection mode.
8. A server motherboard, characterized in that: The server motherboard includes a communication component, a communication controller, and a plurality of communication ports, each of the communication ports including a first pin and a second pin, the first pins of at least two of the communication ports being used to connect to one of the external devices of the server motherboard, and the second pins of at least two of the communication ports being used to connect to one of the external devices of the server motherboard, the communication component being used to connect to the first pins of the respective communication ports and communicate with the external devices according to a first communication protocol, and the communication controller being used to connect to the second pins of the respective communication ports and communicate with the external devices according to a second communication protocol; Based on the second communication protocol, the external device is configured to, when successfully connected to the server mainboard, set one or more communication ports of the server mainboard to a first electrical signal, and the duration of the first electrical signal is a first preset duration; The communication controller is configured to determine that the external device of the server mainboard is successfully connected to the server mainboard in response to the electrical signal of one or more communication ports of the server mainboard being set to the first electrical signal and lasting for a first preset time period, and to use one of the communication ports of the server mainboard as a chip select port, and to send a communication request to each of the external devices connected to the server mainboard through the other communication ports other than the chip select port; Each of the external devices is configured to return a response via another communication port other than the chip select port when receiving a communication request and determining that it is connected to the chip select port; The communication controller is configured to determine the chip select port and the target communication port to which the response is received as communication ports connected to the same external device, obtain an actual connection relationship between the communication port and the external device, and determine, based on the actual connection relationship and a preset planned connection relationship, whether the communication component and each of the external devices communicate through the planned communication port; Furthermore, the communication component is used to send the communication address information to be sent to the external device to the communication controller; Based on the second communication protocol, the communication controller sends a second data frame to each of the external devices through the communication port, where the second data frame is used to instruct the external device to enter an address information transmission mode; When entering the address information transmission mode, the communication controller is used to send the communication address information obtained from the communication component to the external device, and based on the second communication protocol, the communication controller uses a specified number of bits to serially transmit the communication address information, wherein the specified number of bits includes an identification bit and an address bit, the identification bit is used to identify the start of transmitting the communication address information, and the address bit is used to encode the communication address information.
9. The server motherboard according to claim 8, wherein: Based on the second communication protocol, the communication controller sends a first data frame to each of the external devices through the communication port, where the first data frame is used to instruct the external device to enter a connection relationship detection mode.
10. The server motherboard according to claim 9, wherein: Based on the second communication protocol, when entering the connection relationship detection mode, the communication controller uses one of the communication ports as the chip select port, and initiates a communication request to each of the external devices through other communication ports other than the chip select port, and each of the external devices is used to determine whether it is connected to the chip select port. If so, it returns a response to the communication controller through other communication ports other than the chip select port.
11. The server motherboard according to claim 10, wherein: Based on the second communication protocol, the communication controller is used to set the electrical signal of the chip select port to a second electrical signal, and to set the electrical signals of other communication ports other than the chip select port to electrical signals different from the second electrical signal; Each of the external devices is used to search among the connected communication ports whether there is a communication port with the second electrical signal. If so, it is determined to be connected to the chip select port and the communication port with the second electrical signal is used as the chip select port.
12. The server motherboard according to claim 8 or 10, characterized in that: The server mainboard further includes a management controller, wherein the management controller stores the planned connection relationship; The communication controller is used to send the actual connection relationship to the management controller, and the management controller is used to determine whether the communication component and each of the external devices communicate through the planned communication ports based on the comparison result of the actual connection relationship and the planned connection relationship; Alternatively, the communication controller is used to obtain the planned connection relationship from the management controller, and based on the comparison result of the actual connection relationship and the planned connection relationship, determine whether the communication component and each of the external devices communicate through the planned communication port.
13. The server motherboard according to claim 8 or 9, characterized in that: Based on the second communication protocol, when the server mainboard is successfully connected to at least one of the external devices, the communication controller establishes a session connection with the external device, and in response to the external device setting the electrical signal of the connected communication port to a third electrical signal, and the duration reaches a second preset duration, it is determined that the session connection creation is complete, and the communication controller sends a data frame to the external device.
14. A server, characterized in that: The server comprises the server mainboard according to any one of claims 8 to 13.
15. A computer-readable non-volatile storage medium, characterized in that: The computer non-volatile readable storage medium is used to store a computer program, and when the computer program is executed by a processor, it implements the method according to any one of claims 1 to 4, or implements the method according to any one of claims 5 to 7.
16. An electronic device, characterized in that: The electronic device includes a processor and a memory, the memory is used to store a computer program, and when the computer program is executed by the processor, it implements the method according to any one of claims 1 to 4, or implements the method according to any one of claims 5 to 7.
Citation Information
Patent Citations
Circuit for setting register in a plurality of channels, processor with circuit, circuit board with processor, and game machine with circuit board
JP2017000226A
Rack server and network configuration method therefor, and server cabinet
WO2024188067A1