CN115934598B - Method, device, electronic equipment and storage medium for node to user interface board communication - Google Patents

Method, device, electronic equipment and storage medium for node to user interface board communication Download PDF

Info

Publication number
CN115934598B
CN115934598B CN202310061508.1A CN202310061508A CN115934598B CN 115934598 B CN115934598 B CN 115934598B CN 202310061508 A CN202310061508 A CN 202310061508A CN 115934598 B CN115934598 B CN 115934598B
Authority
CN
China
Prior art keywords
user interface
interface board
node
storage controller
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310061508.1A
Other languages
Chinese (zh)
Other versions
CN115934598A (en
Inventor
陈江
李平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202310061508.1A priority Critical patent/CN115934598B/en
Publication of CN115934598A publication Critical patent/CN115934598A/en
Application granted granted Critical
Publication of CN115934598B publication Critical patent/CN115934598B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Programmable Controllers (AREA)

Abstract

The application discloses a method, a device, electronic equipment and a storage medium for communication between a node and a user interface board, and relates to the technical field of computers. The method comprises the following steps: the complex programmable logic device of the user interface board obtains the user interface board state data; the complex programmable logic device of the user interface board initiates polling to all storage controller nodes through a second two-wire serial bus every first preset time, node state data of each storage controller node is obtained, and the state data of the user interface board is synchronized to each storage controller node; after the complex programmable logic device inside the storage controller node completes communication with the complex programmable logic device of the user interface board through the second two-wire serial bus each time, the storage controller node changes the setting of the register corresponding to the node state data to an invalid value. The method can optimize the communication method between the node and the user interface board, simplify the design complexity and reduce the cost.

Description

Method, device, electronic equipment and storage medium for node to user interface board communication
Technical Field
The present disclosure relates to the field of computer technologies, and in particular, to a method, an apparatus, an electronic device, and a storage medium for communication between a node and a user interface board.
Background
Taking the whole storage controller with four nodes as an example, at present, BMCs (Baseboard Management Controller, baseboard management controllers) inside the four nodes are interconnected with CPLDs (Complex Programmable Logic Device, complex programmable logic devices) and sendors on a UI (User Interface) board through I2C (Inter-Integrated Circuit, two-wire serial bus). The current software mechanism can ensure that at most, the BMC of one node can control the indicator lamp and the display module on the UI board through the CPLD of the UI board, and the problem of data conflict caused by the fact that the BMC of the plurality of nodes simultaneously performs I2C communication with the CPLD on the UI board is avoided. However, because the BMC of each node needs to acquire the temperature information on the UI board, the BMC of a plurality of nodes performs I2C communication with the SENSOR on the UI board at the same time, and because the arbitration mechanism of the I2C communication is not provided in the BMC, when the plurality of nodes (more than or equal to two nodes) access the SENSOR of the UI board at the same time, because a plurality of main devices are provided on the I2C bus, the data conflict is caused by the multi-main communication, and thus the BMC fails to acquire the temperature information.
In addition, the communication between the internal node of the storage controller and the UI board involves 5 signal wires, and the number of the signal wires is large, and as the hardware link of each signal wire involves a plurality of single boards, a plurality of connectors and cables, the complexity of the design of hardware, structure and cables is increased, and the cost is increased.
Meanwhile, the UI plate is positioned in the hanging lugs of the whole machine, and the space in the hanging lugs is narrow, so that the size of the UI plate and the layout of components on the UI plate are greatly limited. Because the communication between the internal node of the memory controller and the UI board involves 5 signal wires, and the transmission of the power supply and GND signals is considered, the connector on the UI board is difficult to select. The current common solution is to directly weld the cable on the UI board, and no wire-to-board connector on the UI board is used any more, but this may cause inconvenience in replacement or maintenance of the UI board due to the fact that the UI board is welded with the cable as a whole.
Therefore, how to optimize the communication method between the node and the user interface board, and simplify the link complexity is a problem to be solved.
Disclosure of Invention
In order to solve at least one of the problems mentioned in the background art, the application provides a method, a device, an electronic device and a storage medium for communication between a node and a user interface board, which can optimize the communication method between the node and the user interface board, simplify hardware and structure, design complexity of cables and reduce cost.
The specific technical scheme provided by the embodiment of the application is as follows:
in a first aspect, a method for communication between a node and a user interface board is provided, and the method is applied to a server, where the server includes a user interface board and a plurality of storage controller nodes, where a baseboard management controller in each storage controller node and a complex programmable logic device in a node are interconnected by a first two-wire serial bus, and a complex programmable logic device in each storage controller node and a complex programmable logic device of the user interface board are interconnected by a second two-wire serial bus, and the complex programmable logic device of the user interface board is used as a master device of the second two-wire serial bus, where the method includes:
the complex programmable logic device of the user interface board obtains user interface board state data;
the complex programmable logic device of the user interface board initiates polling to all the storage controller nodes through the second two-wire serial bus at intervals of a first preset time to acquire node state data of each storage controller node, and simultaneously synchronizes the state data of the user interface board to each storage controller node;
After the complex programmable logic device in the storage controller node completes communication with the complex programmable logic device of the user interface board through the second two-wire serial bus each time, the storage controller node changes the setting of a register corresponding to the node state data into an invalid value.
Further, the baseboard management controller in the storage controller node is used as a master device of the first two-wire serial bus, and the complex programmable logic device in the storage controller node is used as a slave device of the first two-wire serial bus.
Further, the node status data includes at least one of node indicator control data and node display module control data.
Further, the register comprises at least one of a node indicator control register and a node display module control register;
the node indication lamp control register is used for the baseboard management controller to write in the indication lamp state which needs to be set by the user interface board, and the node display module control register is used for the baseboard management controller to write in the display state of the display module which needs to be set by the user interface board.
Further, the acquiring node status data of each storage controller node includes:
and acquiring node indicator lamp control data and node display module control data of each storage controller node.
Further, the method further comprises:
and responding to the complex programmable logic device of the user interface board to detect that the node indicator control data and/or the node display module control data of any storage controller node are valid, and setting the indicator state of the corresponding storage controller node and/or the display state of the display module according to the value of the corresponding node indicator control register and/or the node display module control register.
Further, the method further comprises:
in response to the complex programmable logic device of the user interface board detecting that all of the node indicator control data and/or node display module control data of the storage controller nodes are invalid, the user interface board maintains the last indicator state and/or display state of the display module.
Further, the node state data further includes central processor power-on state data, and the method further includes:
the complex programmable logic device of the user interface board sets the display state of the power indicator lamp of the user interface board according to the power-on state data of the central processing units of all the storage controller nodes.
Further, the complex programmable logic device of the user interface board sets a display state of the power indicator of the user interface board according to the power-on state data of the central processing units of all the storage controller nodes, including:
and in response to detecting that the power-on state of the central processing unit of any storage controller node is in the power-on state, the complex programmable logic device of the user interface board sets the power indicator lamp of the user interface board to be normally on.
Further, the complex programmable logic device of the user interface board sets a display state of the power indicator of the user interface board according to the power-on state data of the central processing units of all the storage controller nodes, and the complex programmable logic device further includes:
and in response to detecting that the power-on states of the central processing units of all the storage controller nodes are the power-off states, the complex programmable logic device of the user interface board sets the power indicator lamp of the user interface board to be in a flashing state according to the preset frequency.
Further, the user interface board status data includes at least one of user interface board indicator status data, user interface board display module status data, user interface board key status data, user interface board temperature data, and user interface board presence information.
Further, the register further comprises at least one of a user interface board indicator light status register, a user interface board display module status register and a user interface board temperature data register;
the user interface board indicator light state register is used for being read by the baseboard management controller to acquire the user interface board indicator light state data, the user interface board display module state register is used for being read by the baseboard management controller to acquire the user interface board display module state data, and the user interface board temperature data register is used for being read by the baseboard management controller to acquire the user interface board temperature data.
Further, the first two-wire serial bus includes a first serial clock wire and a first serial data wire, and the baseboard management controller in each storage controller node and the complex programmable logic device in the node are interconnected by the first serial clock wire and the first serial data wire.
Further, the second two-wire serial bus includes a second serial clock wire and a second serial data wire, and after the second serial clock wires of all the storage controller nodes are combined on the back board, pull-up processing is performed, and the clock signals after pull-up are connected to the user interface board;
And the second serial data line of the storage controller node is combined on the backboard and then is subjected to pull-up processing, and the pulled-up data signals are connected to the user interface board.
Further, the complex programmable logic device in each storage controller node is also interconnected with the temperature sensor of the user interface board through the second two-wire serial bus;
the complex programmable logic device of the user interface board is also interconnected with the key switch of the user interface board through a key signal line, and the key signal line is used for the complex programmable logic device of the user interface board to acquire key state data of the user interface board.
Further, the method further comprises:
in response to detecting that the user interface board fails to communicate with any of the storage controller nodes, the user interface board sets node state data correspondingly acquired by the storage controller nodes that fail to communicate as an invalid value.
Further, the node indicator control data includes at least one of positioning indicator control data and alarm indicator control data; the node indicator control registers include at least one of a positioning indicator control register and an alarm indicator control register.
In a second aspect, there is provided a node and user interface board communication apparatus, the apparatus comprising:
the user interface board data acquisition module is used for acquiring the user interface board state data by the complex programmable logic device of the user interface board;
the node communication module is used for initiating polling to all storage controller nodes through a second two-wire serial bus every first preset time interval by the complex programmable logic device of the user interface board, acquiring node state data of each storage controller node and synchronizing the state data of the user interface board to each storage controller node;
after the complex programmable logic device in the storage controller node completes communication with the complex programmable logic device of the user interface board through the second two-wire serial bus each time, the storage controller node changes the setting of a register corresponding to the node state data into an invalid value.
In a third aspect, an electronic device is provided comprising a memory, a processor and a computer program stored on the memory and executable on the processor, the processor implementing a method of communication of the node with a user interface board when the computer program is executed.
In a fourth aspect, a computer readable storage medium is provided, storing computer executable instructions for performing a method of the node communicating with a user interface board.
The embodiment of the application has the following beneficial effects:
according to the node and user interface board communication method, device, electronic equipment and storage medium, all nodes of the storage controller and the UI board can be communicated only through the I2C bus, and the problem of data conflict caused by multi-master communication of BMCs of a plurality of nodes and the UI board is avoided; meanwhile, the number of the needed signal wires can be reduced from 5 to 2, so that hardware resources are saved, and meanwhile, the design complexity of hardware, structure and cables is reduced; in addition, the connector of the UI board can be conveniently selected, and the available layout space of the UI board is increased.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings that are needed in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 illustrates a general flow chart of a method for a node to communicate with a user interface board provided by an embodiment of the present application;
FIG. 2 illustrates a backplane connection link schematic diagram of a method of node-to-user interface board communication according to one embodiment of the present application;
FIG. 3 illustrates a user interface board connection link schematic diagram of a node and user interface board communication method according to one embodiment of the present application;
FIG. 4 is a schematic diagram of a node and user interface board communication device according to an embodiment of the present application;
FIG. 5 illustrates an exemplary system that may be used to implement various embodiments described herein.
Detailed Description
For the purposes of making the objects, technical solutions and advantages of the present application more apparent, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present application, and it is apparent that the described embodiments are only some embodiments of the present application, but not all embodiments. All other embodiments, which can be made by one of ordinary skill in the art without undue burden from the present disclosure, are within the scope of the present disclosure.
It should be understood that throughout the description of this application, unless the context clearly requires otherwise, the words "comprise," "comprising," and the like in the description and the claims are to be construed in an inclusive sense rather than an exclusive or exhaustive sense; that is, it is the meaning of "including but not limited to".
It should also be appreciated that the terms "first," "second," and the like are used for descriptive purposes only and are not to be construed as indicating or implying relative importance. Furthermore, in the description of the present application, unless otherwise indicated, the meaning of "a plurality" is two or more.
Example 1
The application provides a node and user interface board communication method, which is applied to a server, wherein the server comprises a user interface board and a plurality of storage controller nodes, a baseboard management controller in each storage controller node and complex programmable logic devices in the nodes are interconnected through a first two-wire serial bus, the complex programmable logic devices in each storage controller node and the complex programmable logic devices of the user interface board are interconnected through a second two-wire serial bus, and the complex programmable logic devices of the user interface board are used as main equipment of the second two-wire serial bus, and referring to FIG. 1, the method comprises the following steps:
s1, acquiring user interface plate state data by a complex programmable logic device of a user interface plate;
s2, the complex programmable logic device of the user interface board initiates polling to all storage controller nodes through a second two-wire serial bus every first preset time, node state data of each storage controller node is obtained, and meanwhile the state data of the user interface board is synchronized to each storage controller node;
After the complex programmable logic device in the storage controller node completes communication with the complex programmable logic device of the user interface board through the second two-wire serial bus each time, the storage controller node changes the setting of a register corresponding to the node state data into an invalid value.
Specifically, the server includes a user interface board (UI board) and a plurality of storage controller nodes, and a storage server complete machine including four storage controller nodes is described below as an example. The baseboard management controller BMC in each storage controller node and the complex programmable logic device CPLD in the node are interconnected through a first I2C bus, the CPLD in each storage controller node and the CPLD of the UI board are interconnected through a second I2C bus, the CPLD of the UI board is used as a master device of a second I2C bus link, and the CPLD in the storage controller node is used as a slave device of the second I2C bus link. On the basis, the CPLD of the UI board actively initiates communication with CPLDs inside all nodes once every a first preset time (for example, 100 ms) (for example, polling according to the sequence of four nodes of the ABCD), and after completing one communication, the user interface board-like data are synchronized to each storage controller node; meanwhile, the UI board acquires node state data of each node, and after the CPLD of the UI board processes information of all nodes, display states of the indicator lights and the display modules on the UI board are set. It should be noted that, after the complex programmable logic device CPLD inside the storage controller node completes communication with the CPLD of the UI board through the second I2C bus each time, the storage controller node changes the setting of the register corresponding to the node status data to an invalid value, so that the problem of data collision caused by multi-master communication between a plurality of nodes and the UI board does not exist.
In some embodiments, the baseboard management controller within the storage controller node acts as a master of the first two-wire serial bus, and the complex programmable logic device within the storage controller node acts as a slave of the first two-wire serial bus.
Specifically, the BMC of the node serves as a master device for the first I2C bus communication, and the CPLD of the node serves as a slave device for the first I2C bus communication. The BMCs inside the nodes are interconnected with the CPLD and then are communicated with the UI board through the second I2C bus, so that the BMCs inside the four nodes are not interconnected with the CPLD and the sensor on the UI board through the I2C bus, the problem of data conflict caused by multi-master communication of the BMCs of the nodes and the UI board is solved, meanwhile, as the storage controller communicates with the UI board only through the second I2C bus, the number of required signal wires is reduced to two signal wires from the original 5 signal wires (refer to FIG. 2), hardware resources are saved, and meanwhile, the complexity of hardware, structure and cable design is reduced.
In some embodiments, the node status data includes at least one of node indicator control data and node display module control data.
In some embodiments, the registers include at least one of a node indicator control register and a node display module control register;
the node indication lamp control register is used for writing the indication lamp state which needs to be set by the user interface board into the baseboard management controller, and the node display module control register is used for writing the display state of the display module which needs to be set by the user interface board into the baseboard management controller.
In some embodiments, based thereon, S2 comprises:
s21, acquiring node indicator lamp control data of each storage controller node and node display module control data.
Specifically, the UI board obtains node status data of each node, where the node status data may include node indicator control data and node display module control data, and the corresponding storage controller node needs to set a node indicator control register and a node display module control register inside. The node indication lamp control register is used for writing the indication lamp state which needs to be set by the user interface board into the baseboard management controller, and the node display module control register is used for writing the display state of the display module which needs to be set by the user interface board into the baseboard management controller. After the CPLD of the UI board processes the node indicator lamp control data and the node display module control data of all the nodes, the display states of the indicator lamps and the display modules on the UI board are set.
In some embodiments, based thereon, the method further comprises:
101. and responding to the complex programmable logic device of the user interface board to detect that the node indicator light control data and/or the node display module control data of any storage controller node are valid, and setting the indicator light state and/or the display state of the display module of the corresponding storage controller node according to the value of the corresponding node indicator light control register and/or the node display module control register.
Or,
102. in response to the complex programmable logic device of the user interface board detecting that the node indicator control data and/or the node display module control data of all of the storage controller nodes are invalid, the user interface board maintains the last indicator state and/or the display state of the display module.
Specifically, as the current software mechanism can ensure that the node indicator control data and the node display module control data of at most one node in the plurality of nodes are valid, after the UI plate detects that the node indicator control data and the node display module control data of a certain node are valid, the state of the positioning indicator, the state of the alarm indicator and the display state of the display module can be set according to the value of the register; meanwhile, if the UI board detects that the node indicator control data and the node display module control data of all the nodes are invalid, the UI board maintains the previous setting of the indicator state and the display state of the display module.
In some embodiments, the node state data further comprises central processor power-on state data, based on which the method further comprises:
201. the complex programmable logic device of the user interface board sets the display state of the power indicator lights of the user interface board according to the power-on state data of the central processor of all the storage controller nodes.
In some embodiments, 201 comprises:
in response to detecting that the central processor power-up state of any one of the storage controller nodes is in the power-up state, the complex programmable logic device of the user interface board sets the power indicator light of the user interface board to be normally on.
In some embodiments, 201 further comprises:
in response to detecting that the power-on state of the central processor of all the storage controller nodes is a non-power-on state, the complex programmable logic device of the user interface board sets the power indicator light of the user interface board to be in a flashing state according to a preset frequency.
Specifically, the UI board obtains node status data of each node, where the node status data may further include CPU power-on status data. Referring to fig. 3, the indication lamps on the ui board include a power indication lamp, a positioning indication lamp, and an alarm indication lamp of the whole server. Wherein, the power indicator lamp generally uses green lamp. Particularly, when the CPU system in any controller node is electrified, the power indicator lamp is normally on; similarly, the green light may be in a 0.5Hz blinking state when the CPU systems in all controller nodes are not powered up.
In some embodiments, the node indicator control data includes at least one of positioning indicator control data and alarm indicator control data; the node indicator control registers include at least one of a positioning indicator control register and an alarm indicator control register.
Specifically, the positioning lamp generally uses a blue lamp, the blue lamp is always on to indicate that the positioning signal is effective, and the blue lamp is off to indicate that the positioning signal is ineffective; the warning lamp is generally a red lamp, the red lamp is normally on to indicate that the warning signal is effective, and the red lamp is off to indicate that the warning signal is ineffective. The positioning indicator lamp and the alarm indicator lamp belong to one type of indicator lamp, the positioning indicator lamp and the alarm indicator lamp are controlled by corresponding registers in the storage controller node respectively, the positioning indicator lamp control register is used for setting the state of the positioning indicator lamp, and the alarm indicator lamp control register is used for setting the state of the alarm indicator lamp.
In some embodiments, the user interface board status data includes at least one of user interface board indicator status data, user interface board display module status data, user interface board key status data, user interface board temperature data, and user interface board presence information.
In some embodiments, based thereon, the registers further comprise at least one of a user interface board indicator light status register, a user interface board display module status register, and a user interface board temperature data register;
the user interface board indicator light state register is used for being read by the baseboard management controller to acquire user interface board indicator light state data, the user interface board display module state register is used for being read by the baseboard management controller to acquire user interface board display module state data, and the user interface board temperature data register is used for being read by the baseboard management controller to acquire user interface board temperature data.
Specifically, the CPLD of the UI board and the CPLD inside the node communicate through the second I2C bus, and the UI board synchronizes the state data of the UI board indicator light, the state data of the UI board display module, the state data of the UI board key, the temperature data of the UI board and the in-place information of the UI board to each storage controller node. Similarly, the BMC in the node needs to write the status data of the indicator light and the status data of the display module set by the UI board into the CPLD register in the node, and needs to set the corresponding status register of the indicator light, the status register of the display module of the UI board, the temperature data register of the UI board, and so on in the node. The user interface board indicator light state register is used for being read by the baseboard management controller to acquire user interface board indicator light state data, the user interface board display module state register is used for being read by the baseboard management controller to acquire user interface board display module state data, and the user interface board temperature data register is used for being read by the baseboard management controller to acquire user interface board temperature data.
In some embodiments, the first two-wire serial bus includes a first serial clock line and a first serial data line, and the baseboard management controller in each memory controller node and the complex programmable logic device in the node are interconnected by the first serial clock line and the first serial data line.
In some embodiments, referring to fig. 2, the second two-wire serial bus includes a second serial clock wire and a second serial data wire, and after the second serial clock wires of all the storage controller nodes are combined on the back plane, pull-up processing is performed, and the clock signals after pull-up are connected to the user interface board;
and the second serial data line of the storage controller node is combined on the backboard and then is subjected to pull-up processing, and the pulled-up data signals are connected to the user interface board.
Specifically, the BMC inside the node and the CPLD inside the node are interconnected through a first I2C bus, where the I2C serial bus has two signal lines, one is a bidirectional data line SDA, and the other is a clock line SCL. Among these two lines, SCL is a clock line for synchronizing clock signals; the SDA is a data line for transmitting data. All serial data SDA connected to the I2C bus devices are connected to the SDA of the bus, and the clock line SCL of each device is connected to the SCL of the bus, belonging to a master multi-slave bus. The master can only communicate with one slave at a time, and if data is to be transmitted with multiple slaves, a polling mode is required. The CPLD and the connector inside the node are interconnected through a second I2C bus, and the second I2C bus is connected to the UI board through the backboard and is interconnected with the CPLD and the sensor on the UI board. The second two-wire serial bus IIC_SCL of the four nodes is combined on the backboard and then is subjected to pull-up processing, and a signal after pull-up is connected to the UI board; and similarly, IIC_SDA of the four nodes is combined on the backboard and then is subjected to pull-up processing, and the signals after pull-up are connected to the UI board. Therefore, only two signal wires are finally arranged, the design complexity of hardware, structure and cables is reduced, and meanwhile, the cost is reduced.
In some embodiments, referring to fig. 3, the complex programmable logic device within each storage controller node is also interconnected with the temperature sensor of the user interface board by a second two-wire serial bus;
the complex programmable logic device of the user interface board is also interconnected with the key switches of the user interface board through key signal lines for the complex programmable logic device of the user interface board to obtain the key state data of the user interface board.
Specifically, the UI board connector is interconnected with the CPLD, the SENSOR through a second I2C bus. The CPLD inside the UI board is connected with the switch through a UI_BUTTON_N signal line, and the signal line is used for realizing that the CPLD inside the node obtains the switch state; the CPLD on the UI board is connected with the indicator lamp and the display module through signal wires, and the CPLD of the UI board can control the state of the indicator lamp and the display state of the display module through the relevant signal wires. Through such hardware links, communication is only performed between each node of the final storage controller and the UI board through the second I2C bus, and the number of required signal lines is reduced from original 5 to 2 signal lines. Not only hardware resources are saved, but also complexity of hardware, structure and cable design is reduced, and cost is reduced.
In some embodiments, the method further comprises:
in response to detecting a failure of the user interface board to communicate with any of the storage controller nodes, the user interface board sets node state data correspondingly acquired by the storage controller node that failed in communication to an invalid value.
Specifically, if the communication between the UI board and a certain node fails, the UI board sets all the information of the node indicator control data, the node display module control data, the CPU power-on state data, and the like of the node to an invalid value.
In the embodiment, all nodes of the storage controller and the UI board can be communicated only through the I2C bus, so that the problem of data collision caused by multi-master communication of BMCs of a plurality of nodes and the UI board is avoided; meanwhile, the number of the needed signal wires can be reduced from 5 to 2, so that hardware resources are saved, and meanwhile, the design complexity of hardware, structure and cables is reduced; in addition, the connector of the UI board can be conveniently selected, and the available layout space of the UI board is increased.
It should be noted that the terms "S1", "S2", and the like are used for the purpose of describing steps only, and are not intended to be limited to the order or sequence of steps or to limit the present application, but are merely used for convenience in describing the method of the present application and are not to be construed as indicating the sequence of steps. In addition, the technical solutions of the embodiments may be combined with each other, but it is necessary to base that the technical solutions can be realized by those skilled in the art, and when the technical solutions are contradictory or cannot be realized, the combination of the technical solutions should be regarded as not exist and not within the protection scope of the present application.
Example two
Corresponding to the above embodiment, the application further provides a device for communication between a node and a user interface board, and referring to fig. 4, the device includes a user interface board data acquisition module and a node communication module.
The system comprises a user interface board data acquisition module, a user interface board data acquisition module and a control module, wherein the user interface board data acquisition module is used for acquiring user interface board state data by a complex programmable logic device of a user interface board; and the node communication module is used for initiating polling to all storage controller nodes through a second two-wire serial bus every first preset time interval by the complex programmable logic device of the user interface board, acquiring node state data of each storage controller node and simultaneously synchronizing the state data of the user interface board to each storage controller node. After the complex programmable logic device in the storage controller node completes communication with the complex programmable logic device of the user interface board through the second two-wire serial bus each time, the storage controller node changes the setting of a register corresponding to the node state data into an invalid value.
Further, the baseboard management controller in the storage controller node is used as a master device of the first two-wire serial bus, and the complex programmable logic device in the storage controller node is used as a slave device of the first two-wire serial bus.
Further, the node status data includes at least one of node indicator control data and node display module control data.
Further, the register comprises at least one of a node indicator control register and a node display module control register;
the node indication lamp control register is used for the baseboard management controller to write in the indication lamp state which needs to be set by the user interface board, and the node display module control register is used for the baseboard management controller to write in the display state of the display module which needs to be set by the user interface board.
Further, the node communication module is further configured to obtain node indicator control data and node display module control data of each storage controller node.
Further, the node communication module is further configured to set the status of the indicator light and/or the display status of the display module of the corresponding storage controller node according to the value of the corresponding node indicator light control register and/or the node display module control register in response to the complex programmable logic device of the user interface board detecting that the node indicator light control data and/or the node display module control data of any storage controller node are valid.
Further, the node communication module is further configured to respond to the complex programmable logic device of the user interface board detecting that all the node indicator control data and/or the node display module control data of the storage controller node are invalid, and the user interface board maintains the latest indicator state and/or the display state of the display module.
Further, the node status data further includes power-on status data of the central processing unit, and the node communication module is further configured to set a display status of a power indicator of the user interface board according to the power-on status data of the central processing unit of all the storage controller nodes by using the complex programmable logic device of the user interface board.
Further, the node communication module is further configured to, in response to detecting that the power-on state of the central processor of any one of the storage controller nodes is in the power-on state, set the power indicator of the user interface board to be normally on by the complex programmable logic device of the user interface board.
Further, the node communication module is further configured to, in response to detecting that all power-on states of the central processing units of the storage controller nodes are not powered on, set the power indicator of the user interface board to be in a flashing state according to a preset frequency by using the complex programmable logic device of the user interface board.
Further, the user interface board status data includes at least one of user interface board indicator status data, user interface board display module status data, user interface board key status data, user interface board temperature data, and user interface board presence information.
Further, the register further comprises at least one of a user interface board indicator light status register, a user interface board display module status register and a user interface board temperature data register;
the user interface board indicator light state register is used for being read by the baseboard management controller to acquire the user interface board indicator light state data, the user interface board display module state register is used for being read by the baseboard management controller to acquire the user interface board display module state data, and the user interface board temperature data register is used for being read by the baseboard management controller to acquire the user interface board temperature data.
Further, the first two-wire serial bus includes a first serial clock wire and a first serial data wire, and the baseboard management controller in each storage controller node and the complex programmable logic device in the node are interconnected by the first serial clock wire and the first serial data wire.
Further, the second two-wire serial bus includes a second serial clock wire and a second serial data wire, and after the second serial clock wires of all the storage controller nodes are combined on the back board, pull-up processing is performed, and the clock signals after pull-up are connected to the user interface board;
and the second serial data line of the storage controller node is combined on the backboard and then is subjected to pull-up processing, and the pulled-up data signals are connected to the user interface board.
Further, the complex programmable logic device in each storage controller node is also interconnected with the temperature sensor of the user interface board through the second two-wire serial bus;
the complex programmable logic device of the user interface board is also interconnected with the key switch of the user interface board through a key signal line, and the key signal line is used for the complex programmable logic device of the user interface board to acquire key state data of the user interface board.
Further, the node communication module is further configured to, in response to detecting that the user interface board fails to communicate with any storage controller node, set node status data acquired by the storage controller node that fails to communicate as an invalid value by the user interface board.
Further, the node indicator control data includes at least one of positioning indicator control data and alarm indicator control data; the node indicator control registers include at least one of a positioning indicator control register and an alarm indicator control register.
For specific limitations on the node and user interface board communication means, reference may be made to the above related limitations in the embodiments of the node and user interface board communication method, and thus a detailed description is omitted here. The above-described nodes and various modules in the user interface board communication device may be implemented in whole or in part by software, hardware, and combinations thereof. The above modules may be embedded in hardware or may be independent of a processor in the computer device, or may be stored in software in a memory in the computer device, so that the processor may call and execute operations corresponding to the above modules.
Example III
Corresponding to the above embodiment, the application further provides an electronic device, which comprises a memory, a processor and a computer program stored on the memory and capable of running on the processor, wherein the processor can realize the communication method between the node and the user interface board when executing the program.
As shown in fig. 5, in some embodiments, the system can be used as any of the above-described electronic devices of the method of node-to-user interface board communication in each of the described embodiments. In some embodiments, a system may include one or more computer-readable media (e.g., system memory or NVM/storage) having instructions and one or more processors (e.g., processor (s)) coupled with the one or more computer-readable media and configured to execute the instructions to implement the modules to perform the actions described herein.
For one embodiment, the system control module may include any suitable interface controller to provide any suitable interface to at least one of the processor(s) and/or any suitable device or component in communication with the system control module.
The system control module may include a memory controller module to provide an interface to the system memory. The memory controller modules may be hardware modules, software modules, and/or firmware modules.
The system memory may be used, for example, to load and store data and/or instructions for the system. For one embodiment, the system memory may include any suitable volatile memory, such as, for example, a suitable DRAM. In some embodiments, the system memory may comprise double data rate type four synchronous dynamic random access memory (DDR 4 SDRAM).
For one embodiment, the system control module may include one or more input/output (I/O) controllers to provide an interface to the NVM/storage device and the communication interface(s).
For example, NVM/storage may be used to store data and/or instructions. The NVM/storage may include any suitable nonvolatile memory (e.g., flash memory) and/or may include any suitable nonvolatile storage device(s) (e.g., one or more Hard Disk Drives (HDDs), one or more Compact Disc (CD) drives, and/or one or more Digital Versatile Disc (DVD) drives).
The NVM/storage may include a storage resource that is physically part of the device on which the system is installed or it may be accessed by the device without being part of the device. For example, the NVM/storage may be accessed over a network via the communication interface(s).
The communication interface(s) may provide an interface for the system to communicate over one or more networks and/or with any other suitable device. The system may wirelessly communicate with one or more components of a wireless network in accordance with any of one or more wireless network standards and/or protocols.
For one embodiment, at least one of the processor(s) may be packaged together with logic of one or more controllers (e.g., memory controller modules) of the system control module. For one embodiment, at least one of the processor(s) may be packaged together with logic of one or more controllers of the system control module to form a System In Package (SiP). For one embodiment, at least one of the processor(s) may be integrated on the same die as logic of one or more controllers of the system control module. For one embodiment, at least one of the processor(s) may be integrated on the same die with logic of one or more controllers of the system control module to form a system on chip (SoC).
In various embodiments, the system may be, but is not limited to being: a server, workstation, desktop computing device, or mobile computing device (e.g., laptop computing device, handheld computing device, tablet, netbook, etc.). In various embodiments, the system may have more or fewer components and/or different architectures. For example, in some embodiments, a system includes one or more cameras, a keyboard, a Liquid Crystal Display (LCD) screen (including a touch screen display), a non-volatile memory port, multiple antennas, a graphics chip, an Application Specific Integrated Circuit (ASIC), and a speaker.
It should be noted that the present application may be implemented in software and/or a combination of software and hardware, for example, using Application Specific Integrated Circuits (ASIC), a general purpose computer or any other similar hardware device. In one embodiment, the software programs of the present application may be executed by a processor to implement the steps or functions as described above. Likewise, the software programs of the present application (including associated data structures) may be stored on a computer readable recording medium, such as RAM memory, magnetic or optical drive or diskette and the like. In addition, some steps or functions of the present application may be implemented in hardware, for example, as circuitry that cooperates with the processor to perform various steps or functions.
Furthermore, portions of the present application may be implemented as a computer program product, such as computer program instructions, which when executed by a computer, may invoke or provide methods and/or techniques in accordance with the present application by way of operation of the computer. Those skilled in the art will appreciate that the form of computer program instructions present in a computer readable medium includes, but is not limited to, source files, executable files, installation package files, etc., and accordingly, the manner in which the computer program instructions are executed by a computer includes, but is not limited to: the computer directly executes the instruction, or the computer compiles the instruction and then executes the corresponding compiled program, or the computer reads and executes the instruction, or the computer reads and installs the instruction and then executes the corresponding installed program. Herein, a computer-readable medium may be any available computer-readable storage medium or communication medium that can be accessed by a computer.
Communication media includes media whereby a communication signal containing, for example, computer readable instructions, data structures, program modules, or other data, is transferred from one system to another. Communication media may include conductive transmission media such as electrical cables and wires (e.g., optical fibers, coaxial, etc.) and wireless (non-conductive transmission) media capable of transmitting energy waves, such as acoustic, electromagnetic, RF, microwave, and infrared. Computer readable instructions, data structures, program modules, or other data may be embodied as a modulated data signal, for example, in a wireless medium, such as a carrier wave or similar mechanism, such as that embodied as part of spread spectrum technology. The term "modulated data signal" means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. The modulation may be analog, digital or hybrid modulation techniques.
An embodiment according to the present application comprises an apparatus comprising a memory for storing computer program instructions and a processor for executing the program instructions, wherein the computer program instructions, when executed by the processor, trigger the apparatus to operate a method and/or a solution according to the embodiments of the present application as described above.
Example IV
Corresponding to the above embodiment, the present application further provides a computer readable storage medium storing computer executable instructions for performing a method for communicating between a node and a user interface board.
In this embodiment, computer-readable storage media may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules or other data. For example, computer-readable storage media include, but are not limited to, volatile memory, such as random access memory (RAM, DRAM, SRAM); and nonvolatile memory such as flash memory, various read only memory (ROM, PROM, EPROM, EEPROM), magnetic and ferromagnetic/ferroelectric memory (MRAM, feRAM); and magnetic and optical storage devices (hard disk, tape, CD, DVD); or other now known media or later developed computer-readable information/data that can be stored for use by a computer system.
While preferred embodiments of the present application have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. It is therefore intended that the following claims be interpreted to embrace the preferred embodiments and all such variations and modifications as fall within the scope of the embodiments herein.
It will be apparent to those skilled in the art that various modifications and variations can be made in the present application without departing from the spirit or scope of the application. Thus, if such modifications and variations of the present application fall within the scope of the claims and the equivalents thereof, the present application is intended to cover such modifications and variations.

Claims (17)

1. A method of communication between nodes and a user interface board, applied to a server, characterized in that the server includes a user interface board and a plurality of storage controller nodes, a baseboard management controller in each storage controller node and complex programmable logic devices in the nodes are interconnected by a first two-wire serial bus, the complex programmable logic devices in each storage controller node and the complex programmable logic devices of the user interface board are interconnected by a second two-wire serial bus, the complex programmable logic devices of the user interface board act as a master device of the second two-wire serial bus, the first two-wire serial bus includes a first serial clock line and a first serial data line, and the second two-wire serial bus includes a second serial clock line and a second serial data line, the method includes:
The complex programmable logic device of the user interface board obtains user interface board state data;
the complex programmable logic device of the user interface board initiates polling to all the storage controller nodes through the second two-wire serial bus at intervals of a first preset time to acquire node state data of each storage controller node, and simultaneously synchronizes the state data of the user interface board to each storage controller node;
after the complex programmable logic device in the storage controller node completes communication with the complex programmable logic device of the user interface board through the second two-wire serial bus each time, the storage controller node changes the setting of a register corresponding to the node state data into an invalid value; the node state data comprises at least one of node indicator lamp control data and node display module control data; the method further comprises the steps of:
in response to the complex programmable logic device of the user interface board detecting that node indicator control data and/or node display module control data of all of the storage controller nodes are invalid, the user interface board maintains the last indicator state and/or display state of the display module.
2. The method of claim 1, wherein a baseboard management controller within the storage controller node acts as a master device for the first two-wire serial bus, and wherein a complex programmable logic device within the storage controller node acts as a slave device for the first two-wire serial bus.
3. The method of communicating between a node and a user interface board of claim 1, wherein the registers include at least one of a node indicator control register and a node display module control register;
the node indication lamp control register is used for the baseboard management controller to write in the indication lamp state which needs to be set by the user interface board, and the node display module control register is used for the baseboard management controller to write in the display state of the display module which needs to be set by the user interface board.
4. A method of communicating between a node and a user interface board according to claim 3, the method further comprising:
and responding to the complex programmable logic device of the user interface board to detect that the node indicator control data and/or the node display module control data of any storage controller node are valid, and setting the indicator state of the corresponding storage controller node and/or the display state of the display module according to the value of the corresponding node indicator control register and/or the node display module control register.
5. The method of communicating between a node and a user interface board of claim 1, wherein the node status data further comprises central processor power-up status data, the method further comprising:
the complex programmable logic device of the user interface board sets the display state of the power indicator lamp of the user interface board according to the power-on state data of the central processing units of all the storage controller nodes.
6. The method of claim 5, wherein the complex programmable logic device of the user interface board sets the display status of the power indicator lights of the user interface board according to the cpu power-on status data of all the storage controller nodes, comprising:
and in response to detecting that the power-on state of the central processing unit of any storage controller node is in the power-on state, the complex programmable logic device of the user interface board sets the power indicator lamp of the user interface board to be normally on.
7. The method of claim 5, wherein the complex programmable logic device of the user interface board sets the display status of the power indicator lights of the user interface board according to the cpu power-up status data of all the storage controller nodes, further comprising:
And in response to detecting that the power-on states of the central processing units of all the storage controller nodes are the power-off states, the complex programmable logic device of the user interface board sets the power indicator lamp of the user interface board to be in a flashing state according to the preset frequency.
8. The method of communicating with a user interface board by a node of claim 1, wherein the user interface board status data comprises at least one of user interface board indicator status data, user interface board display module status data, user interface board key status data, user interface board temperature data, and user interface board presence information.
9. The method of communicating with a user interface board by a node of claim 8, wherein the registers further comprise at least one of a user interface board indicator light status register, a user interface board display module status register, and a user interface board temperature data register;
the user interface board indicator light state register is used for being read by the baseboard management controller to acquire the user interface board indicator light state data, the user interface board display module state register is used for being read by the baseboard management controller to acquire the user interface board display module state data, and the user interface board temperature data register is used for being read by the baseboard management controller to acquire the user interface board temperature data.
10. The method of claim 1, wherein the baseboard management controller in each of the storage controller nodes and the complex programmable logic devices in the nodes are interconnected by the first serial clock line and the first serial data line.
11. The method of claim 1, wherein the second serial clock lines of all the storage controller nodes are combined on the back plane and then subjected to a pull-up process, and the pulled-up clock signals are connected to the user interface board;
and the second serial data line of the storage controller node is combined on the backboard and then is subjected to pull-up processing, and the pulled-up data signals are connected to the user interface board.
12. The method of communicating between nodes and a user interface board of claim 1, wherein complex programmable logic devices within each of the storage controller nodes are further interconnected with temperature sensors of the user interface board by the second two-wire serial bus;
the complex programmable logic device of the user interface board is also interconnected with the key switch of the user interface board through a key signal line, and the key signal line is used for the complex programmable logic device of the user interface board to acquire key state data of the user interface board.
13. The method of communicating with a user interface board by a node of claim 1, further comprising:
in response to detecting that the user interface board fails to communicate with any of the storage controller nodes, the user interface board sets node state data correspondingly acquired by the storage controller nodes that fail to communicate as an invalid value.
14. A method of communicating a node to a user interface board as claimed in claim 3, wherein the node indicator control data comprises at least one of position indicator control data and alarm indicator control data; the node indicator control registers include at least one of a positioning indicator control register and an alarm indicator control register.
15. A node and user interface board communication apparatus, the apparatus comprising:
the user interface board data acquisition module is used for acquiring the user interface board state data by the complex programmable logic device of the user interface board;
the node communication module is used for initiating polling to all storage controller nodes through a second two-wire serial bus every first preset time interval by the complex programmable logic device of the user interface board, acquiring node state data of each storage controller node and synchronizing the state data of the user interface board to each storage controller node;
After the complex programmable logic device in the storage controller node completes communication with the complex programmable logic device of the user interface board through the second two-wire serial bus each time, the storage controller node changes the setting of a register corresponding to the node state data into an invalid value; the node state data comprises at least one of node indicator lamp control data and node display module control data;
the node communication module is further configured to, in response to the complex programmable logic device of the user interface board detecting that the node indicator control data and/or the node display module control data of all the storage controller nodes are invalid, maintain a last indicator state and/or a display state of the display module.
16. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the processor implements a method of communicating a node according to any one of claims 1 to 14 with a user interface board when the computer program is executed by the processor.
17. A computer readable storage medium storing computer executable instructions for performing the method of node and user interface board communication of any one of claims 1 to 14.
CN202310061508.1A 2023-01-19 2023-01-19 Method, device, electronic equipment and storage medium for node to user interface board communication Active CN115934598B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310061508.1A CN115934598B (en) 2023-01-19 2023-01-19 Method, device, electronic equipment and storage medium for node to user interface board communication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310061508.1A CN115934598B (en) 2023-01-19 2023-01-19 Method, device, electronic equipment and storage medium for node to user interface board communication

Publications (2)

Publication Number Publication Date
CN115934598A CN115934598A (en) 2023-04-07
CN115934598B true CN115934598B (en) 2023-05-30

Family

ID=85827173

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310061508.1A Active CN115934598B (en) 2023-01-19 2023-01-19 Method, device, electronic equipment and storage medium for node to user interface board communication

Country Status (1)

Country Link
CN (1) CN115934598B (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102479148A (en) * 2010-11-30 2012-05-30 英业达股份有限公司 System and method for monitoring input/output port state of peripheral element
CN110659171A (en) * 2019-09-25 2020-01-07 苏州浪潮智能科技有限公司 Test method, electronic device and computer readable storage medium
CN111176939B (en) * 2019-12-20 2023-01-06 苏州浪潮智能科技有限公司 Multi-node server management system and method based on CPLD

Also Published As

Publication number Publication date
CN115934598A (en) 2023-04-07

Similar Documents

Publication Publication Date Title
US7725742B2 (en) Remote monitor module for power initialization of computer system
US8898358B2 (en) Multi-protocol communication on an I2C bus
US8386764B2 (en) BIOS architecture
US10936524B2 (en) Bus system with slave devices
US7685325B2 (en) Synchronous bus controller system
US8397053B2 (en) Multi-motherboard server system
US20120137159A1 (en) Monitoring system and method of power sequence signal
US10175296B2 (en) Testing a board assembly using test cards
US10783109B2 (en) Device management messaging protocol proxy
US11216049B2 (en) Bus system
US10019402B2 (en) Flexible NVME drive management solution via multiple processor and registers without multiple input/output expander chips
CN111124803A (en) Method and device for controlling state of indicator light and computer readable storage medium
CN113868051B (en) PCIe fault detection device, method, equipment and storage medium
CN104571294A (en) Server system
US8909844B2 (en) Inter-integrated circuit (I2C) multiplexer switching as a function of clock frequency
CN112667483B (en) Memory information reading device and method for server mainboard and server
CN115934598B (en) Method, device, electronic equipment and storage medium for node to user interface board communication
CN115129552B (en) Method, device, equipment and storage medium for monitoring transmission state of I2C bus
US20230367508A1 (en) Complex programmable logic device and communication method
CN115328707A (en) Computer device, management method and storage medium
CN116627729A (en) External connection cable, external connection cable in-place detection device, startup self-checking method and system
CN114924998B (en) Memory information reading device and method, computing device motherboard, device and medium
CN115303203A (en) Debugging board of vehicle-mounted controller, vehicle-mounted controller mainboard and vehicle
CN111338911B (en) Server hard disk indicator lamp control system and control method thereof
US10409940B1 (en) System and method to proxy networking statistics for FPGA cards

Legal Events

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