Hot plug system of extension equipment, hot unloading method of extension equipment and hot loading method of extension equipment
By building the control and device management modules in the host server and extension equipment, and connecting them through cables, safe and reliable hot-swap for PCIE BOX equipment is solved, and the problem of power-off replacement of equipment in the existing technology is solved, improving the flexibility and maintenance efficiency of the system.
Patent Information
- Application Number
- CN202510194358.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-21
- Publication Date
- 2025-03-25
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
There is a lack of a safe and reliable hot-swap solution for PCIE BOX equipment in the prior art, which leads to the need for power-off of the entire system when the equipment fails, affecting system availability and maintenance efficiency.
A hot-swap system is designed, including a host server and expansion equipment. The host server has built-in control chip and motherboard management module, and the expansion equipment has built-in device management module, and the host server and multiple expansion equipment are connected through cables to realize hot-swap control of the expansion equipment.
Through this system, users can safely perform thermal unloading and thermal loading of extended devices in the running state of the host server, improving the flexibility, maintainability and operation efficiency of the system.
Smart Images

Figure CN119690893A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and in particular to a hot plug system for an expansion device, a hot unloading method for an expansion device, and a hot loading method for an expansion device. Background Art
[0002] In the existing computer hardware technology, the PCIE hot-swap function is mainly used in a single server such as hard disk, graphics card, network card and other hardware to achieve dynamic replacement of hardware while the server is running. However, for a complex system consisting of a host and PCIE BOX devices, there is currently no mature PCIE BOX hot-swap solution in the industry.
[0003] Currently, if a single PCIE BOX device fails, all PCIE BOX devices including the failed PCIE BOX and the host must be shut down and powered off before the failed PCIE BOX device can be replaced, which greatly limits the availability and maintenance efficiency of the system. In addition, if the PCIE BOX device is directly hot-swapped, the entire host server and PCIE BOX device will crash or even be damaged, affecting the operational stability. It can be seen that in the prior art, there is a technical problem of how to safely and reliably hot-swap the PCIE BOX device. Summary of the invention
[0004] The present application provides a hot-plugging system for an expansion device, a hot-unloading method for an expansion device, and a hot-loading method for an expansion device, so as to at least solve the technical problem of how to hot-plug a PCIE BOX device safely and reliably in the related art.
[0005] The present application provides a hot-swap system, comprising: a host server, wherein the host server at least has a built-in control chip and a motherboard management module, and the host server is externally provided with a host connector, and the host connection interface of the host connector is respectively connected to the control chip and the motherboard management module; an expansion device, wherein the expansion device at least has the built-in device management module, and the expansion device is externally provided with a hot-swap button and a device connector, and the device management module is respectively connected to the hot-swap button and the device connection interface of the device connector; the host server is connected to at least two expansion devices via cables, and is used to send a control signal of a hot-swap process to the at least two expansion devices via the cables, so as to respectively control the hot-swap operation of the at least two expansion devices, and each cable is individually connected to a host connection interface and a device connection interface.
[0006] The present application also provides a hot unloading method for an expansion device, which is applied to a hot-swappable system of the expansion device, wherein the main power supply of the expansion device has been powered on, and comprises: obtaining a first key signal generated by the expansion device according to a key operation of a hot-swappable key, and sending the first key signal to a host server of the hot-swappable system; controlling the host server to generate a key simulation operation according to the first key signal; and sending the device data generated by the expansion device to the host server, so that the host server starts the hot removal process of the expansion device when it is determined that the expansion device is in a device-in-place state according to a collection result of the key simulation operation and the device data from the expansion device.
[0007] The present application also provides a hot loading method for an expansion device, which is applied to a hot plug-in system of the expansion device, wherein the cable between the host server and the expansion device of the hot plug-in system is connected, and the main power supply of the expansion device is not powered on, and comprises: obtaining a second key signal generated based on the key operation of the hot plug-in key of the expansion device, and obtaining a cable mis-insertion prevention detection result of the expansion device; when it is determined that the cable mis-insertion prevention detection result is used to indicate that the cable is in place and the cable is not mis-inserted, sending the second key signal to the host server; so that the host server generates a key simulation operation according to the second key signal, determines the in-place state of the expansion device according to the collection result of the key simulation operation and the device data from the expansion device, and when it is determined that the expansion device is in a device-not-in-place state, starts the hot loading process of the expansion device.
[0008] The present application also provides an electronic device, comprising: a memory for storing a computer program; a processor for implementing the steps of any of the above-mentioned hot unloading methods for expansion devices, or implementing the steps of any of the above-mentioned hot loading methods for expansion devices when executing the computer program.
[0009] The present application also provides a computer-readable storage medium, in which a computer program is stored, wherein when the computer program is executed by a processor, the steps of the hot unloading method of any of the above-mentioned expansion devices are implemented, or the steps of the hot loading method of any of the above-mentioned expansion devices are implemented.
[0010] The present application also provides a computer program product, including a computer program, which, when executed by a processor, implements the steps of any of the above-mentioned hot unloading methods for expansion devices, or implements the steps of any of the above-mentioned hot loading methods for expansion devices.
[0011] Through this application, a hot-swap system is proposed in which a host server is connected to at least two expansion devices (corresponding to the PCIEBOX device of this application). The host server has a built-in control chip, a mainboard management module, and an external host connector. The expansion device has a built-in device management module, and an external hot-swap button and device connector. This system architecture enables the host server to be connected to multiple expansion devices through cables, providing a safe and reliable PCIE BOX hot-swap technology. Through the coordinated work of the control chip, the mainboard management module, and the device management module, the corresponding hot-swap preparation process (i.e., the hot unloading method of the expansion device and the hot loading method of the expansion device) can be provided for the user's hot-swap operation of the expansion device. Therefore, the technical problem of how to hot-swap the PCIE BOX device safely and reliably can be solved, and the expansion device can be safely removed or added without shutting down the host server, which greatly improves the flexibility, maintainability and operation efficiency of the system. BRIEF DESCRIPTION OF THE DRAWINGS
[0012] 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 paying any creative work.
[0013] Figure 1 A schematic diagram of a system topology of a hot-swap system for an expansion device provided in an embodiment of the present application;
[0014] Figure 2 A schematic diagram of the hardware connection relationship of a hot-swap system for an expansion device provided in an embodiment of the present application;
[0015] Figure 3 A flowchart of a hot unloading method for an expansion device provided in an embodiment of the present application;
[0016] Figure 4 A flow chart of a hot loading method for an expansion device provided in an embodiment of the present application;
[0017] Figure 5 A schematic diagram of a principle for realizing a simulated key function and an indicator light function provided in an embodiment of the present application;
[0018] Figure 6 A schematic diagram of a hot unplugging process provided in an embodiment of the present application;
[0019] Figure 7 A schematic diagram of a hot insertion process provided in an embodiment of the present application;
[0020] Figure 8A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0021] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0022] It should be noted that, in the description of this application, the terms "include", "comprise" or any other variant thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also includes 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 sequence.
[0023] Explanation of some technical terms in this application:
[0024] OS:Operating System, operating system.
[0025] PCIE: peripheral component interconnect express, PCI Express, literally translated as peripheral component interconnect express bus, is a high-speed serial computer expansion bus standard.
[0026] BMC: Base Board Management Controller, baseboard management controller.
[0027] CPU: Central Processing Unit.
[0028] I2C: Inter-Integrated Circuit, a bidirectional two-wire synchronous serial bus.
[0029] CPLD: Complex Programmable Logic Device, complex programmable logic device.
[0030] GPU: Graphics Processing unit, graphics processor.
[0031] CXL: Compute Express Link, a new high-speed interconnect technology.
[0032] NVME: Non-Volatile Memory express, industry standard for PCIE SSD.
[0033] CDFP: 400 Formfactor Pluggable, a 400G optical module connector.
[0034] VPP: Virtual Pin Port, an NVME management bus dedicated to Intel CPUs, with a physical form similar to I2C.
[0035] The PCIE BOX device of the present application (hereinafter referred to as PCIE BOX) is an expansion device based on the PCIE interface, which can be used to expand the I / O capabilities of the computer system. The external PCIE interface of the PCIE BOX device is connected to the Host server (i.e., the host server) through a PCIE cable, thereby improving the scalability and flexibility of the host system. There is no CPU inside the PCIE BOX device, only the PCIE Switch chip connects the upstream PCIE interface to the downstream PCIE device. In the present application, the PCIE device represents the above-mentioned execution device.
[0036] PCIE BOX devices include, for example, GPU BOX devices, and the corresponding PCIE device is a GPU. By using the same Host server to connect to multiple GPU BOXs, and using the same GPU BOX to connect to multiple CPU devices, the number of devices connected to the Host server can be expanded.
[0037] Alternatively, the PCIE BOX device includes, for example, a CXL BOX device, and the corresponding PCIE device is a CXL memory module. Then, multiple CXL memory modules of a CXL BOX device may be connected via a Host.
[0038] Alternatively, the PCIE BOX device is, for example, an NVME BOX device, and the corresponding PCIE device is an NVME hard disk.
[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 in conjunction with the accompanying drawings and specific implementation methods.
[0040] It can be understood that the execution of the hot unloading method and the hot loading method of the expansion device in the present application may depend on a specific application environment architecture or a specific hardware architecture, such as the hot plug system of the expansion device provided in the embodiment of the present application. Therefore, the present application briefly describes the hardware architecture of the hot plug system of the expansion device.
[0041] Taking the expansion device as a PCIE BOX device as an example, the PCIE cable is connected by an external high-speed connector on both the host server side and the PCIE BOX side, and the high-speed connector is, for example, CDFP. Among them, the high-speed connector of the host server can be expressed as a host connector, and the high-speed connector of the PCIE BOX can be expressed as a device connector.
[0042] The basic topology of the hot-swap system for expansion devices includes a host server and multiple PCIE BOXs. Figure 1 As shown, one Host server is connected to two PCIE BOXs, and two PCIE cables are used to connect the Host server to each PCIE BOX. Figure 1 PCIE BOX-1 corresponds to the first expansion device. Figure 1 PCIE BOX-2 can represent the second expansion device of the at least two expansion devices mentioned above, and the specific architecture and technical solution implemented by the second expansion device can refer to the first expansion device. By matching multiple PCIE BOXs on a host server with a 2-way CPU to plug in more PCIE devices, the number of PCIE devices can be effectively expanded. This application does not limit the number of PCIE BOX devices and the number of PCIE cables.
[0043] In one embodiment, for the host server of the hot-swap system, the host server at least has a built-in control chip and a motherboard management module, and the host server is externally provided with a host connector, and the host connection interface of the host connector is respectively connected to the control chip and the motherboard management module; for the expansion device of the hot-swap system, the expansion device at least has the built-in device management module, and the expansion device is externally provided with a hot-swap button and a device connector, and the device management module is respectively connected to the hot-swap button and the device connection interface of the device connector; the host server is connected to at least two expansion devices via a cable, and is used to send a control signal of the hot-swap process to the at least two expansion devices via the cable, so as to respectively control the hot-swap operation of the at least two expansion devices, and each cable is individually connected to a host connection interface and a device connection interface. Refer to Figure 2 The control signal sent by the host server to the expansion device is, for example, a power enable signal, a reset signal, etc.
[0044] In this application, hot plug operation means to safely insert or remove the expansion device connected to the host server when the host server is operating normally. The hot plug process corresponding to the hot plug operation of the expansion device can be understood as hot unloading and hot loading of the expansion device.
[0045] Exemplarily, the control chip corresponds to Figure 2 The CPU of the Host server and the motherboard management module correspond to Figure 2 The BMC of the Host server corresponds to the device management module Figure 2 In the BMC of PCIE BOX-1, the hot-swap button corresponds to the button of PCIE BOX-1.
[0046] On the host server side, the host server's BMC will connect an I2C channel to each PCIE BOX and connect it to the first CDFP interface of each PCIE BOX. Correspondingly, on the PCIE BOX side, the I2C channel of the first CDFP interface is connected to the BMC chip of the PCIE BOX. For example Figure 2 The I2C0 channel of the CDFP connected to PCIE BOX-1 and the I2C2 channel of the CDFP connected to PCIE BOX-2.
[0047] In an exemplary embodiment, the host server further has a built-in complex programmable logic device, which is disposed between the control chip and the mainboard management module, and is respectively connected to the control chip, the mainboard management module and the host connection interface. In this embodiment, the addition of the complex programmable logic device makes the processing of hot-swap control signals more flexible and efficient, and can quickly respond to hot-swap requests of expansion devices.
[0048] Exemplarily, the complex programmable logic device corresponds to Figure 2 CPLD of the host server.
[0049] In an exemplary embodiment, for the first expansion device among the at least two expansion devices, the first host connection interface of the host server is connected to the first device connection interface of the first expansion device, and the complex programmable logic device is used to receive the device presence signal, the cable presence signal and the power-on completion signal from the first device connection interface through the first host connection interface, and send the power enable signal, the cable address signal and the reset signal to the first device connection interface through the first host connection interface, wherein the device presence signal is used to indicate whether the host server and the first expansion device are successfully connected, and the power enable signal is used to control the main power supply corresponding to the first expansion device to power on or off. After the main power supply is powered on, the power-on completion signal will be generated, and the main power supply is set in the cabinet where the expansion device is located. Through the bidirectional signal transmission mechanism of this embodiment, the signal interaction between the host server and the expansion device can be realized, and the accuracy and safety of the hot plug operation can be improved. At the same time, through the detection of the cable presence signal and the device presence signal, the mis-insertion and mis-operation are effectively prevented, and the stability and security of the data are guaranteed.
[0050] Exemplarily, the first expansion device corresponds to Figure 2 PCIE BOX-1, the second expansion device corresponds to Figure 2 PCIE BOX-2. On the Host server side, at least one CPLD is connected to the BMC through I2C, and this CPLD is also connected to the CPU through VPP. This CPLD receives the BOX in-position signal (corresponding to the device in-position signal of the first device connection interface), the CDFP cable in-position signal and the power-on completion signal from the PCIE BOX device, and directly processes these signals, or the CPLD uses expander to process the BOX in-position signal and the CDFP cable in-position signal, and then outputs power enable signal, reset signal and CDFP cable ID and other signals to the PCIE BOX device. Among them, it should be noted that the above signals are sent from the Host server to the PCIE BOX through the cable connected to the CDFP to realize interaction. On the PCIE BOX side, the cable in-position signal and the cable ID signal are processed by the BMC of the PCIE BOX. This processing process can be completed by the BMC of the PCIE BOX, or by expansion devices such as expanders or CPLDs built into the BMC.
[0051] In an exemplary embodiment, for the first expansion device among the at least two expansion devices, the second host connection interface of the host server is connected to the second device connection interface of the first expansion device, and the complex programmable logic device is used to receive a cable presence signal from the second device connection interface through the second host connection interface, and send a cable address signal to the second device connection interface through the second host connection interface. The design of this embodiment can monitor and control multiple expansion devices simultaneously through multiple cables, thereby improving the scalability and concurrent processing capabilities of the hot-swap system. For example, Figure 2 As shown, the CPLD of the host server can receive the presence signal of the cable at position 0~3, and output the cable number signal of the cable ID0~3.
[0052] In an exemplary embodiment, the first expansion device further has a built-in port expansion chip and an execution device, and the port expansion chip is connected to the second device connection interface and the execution device respectively, and is used to send the first data signal of the execution device to the second host connection interface via the second device connection interface. This embodiment introduces a port expansion chip, so that the expansion device can support more hardware interfaces and device types, thereby enhancing the compatibility and flexibility of the system.
[0053] Exemplarily, the port expansion chip corresponds to Figure 2 The PCIE Switch chip in the above execution device corresponds to Figure 2 PCIE devices in the BOX, such as GPU, CXL memory module, etc. On the Host server side, each CDFP cable connector connects a PCIE signal (X8 or X16 bit width) from the CPU. On the PCIE BOX side, the PCIE signal of each CDFP connector is connected to the PCIE Switch chip, and more PCIE interfaces are expanded through the Switch chip and connected to the PCIE devices in the BOX. PCIE devices include but are not limited to GPU, CXL memory module, etc.
[0054] The PCIE signal is a peripheral component interconnect express bus signal, corresponding to the first data signal of the execution device.
[0055] Optionally, in one embodiment, the control chip may be directly connected to the second host connection interface.
[0056] Furthermore, in an exemplary embodiment, in order to improve the quality of the signal transmitted between the control chip and the second host connection interface, a mixed signal analog-to-digital chip is further provided between the control chip and the second host connection interface, wherein the first data signal is forwarded to the control chip via the mixed signal analog-to-digital chip. This embodiment ensures the integrity and accuracy of the data signal by using the mixed signal analog-to-digital chip to forward the transmission signal, and can improve the quality of the signal received by the control chip.
[0057] Exemplarily, the mixed signal analog-to-digital chip corresponds to Figure 2 Retimer chip. Figure 2 As shown, considering the limitation of signal integrity in the high-speed link, a Retimer chip is added in the high-speed link from the CPU to the CDFP on the Host server side, thereby increasing the driving capability of the CDFP and improving the signal transmission quality.
[0058] It should be noted that the Retimer chip represents a mixed signal analog / digital chip used to recover and retime high-speed signals. The Retimer chip can retime the input signal through the internal clock recovery circuit, eliminate clock offset and jitter, and correct the phase and time deviation of the signal to improve signal quality and extend the transmission distance of the interface. It can be used to solve the problem of high-speed and long-distance data transmission in data centers and servers through the PCIE protocol.
[0059] In an exemplary embodiment, the complex programmable logic device and the mainboard management module are connected via a serial bus. Figure 2 As shown, the CPLD and the BMC are connected by I2C (corresponding to serial bus).
[0060] In this embodiment, a hot-swap buffer device is further provided between the complex programmable logic device and the mainboard management module. The hot-swap buffer device is used to temporarily isolate the electrical connection between the complex programmable logic device and the serial bus during the hot-swap operation to prevent damage to the device due to voltage mutation or current shock during the hot-swap process. By providing the hot-swap buffer device, this embodiment effectively improves the reliability of the hot-swap operation, reduces the impact of the hot-swap operation on other parts such as the complex programmable logic device, and improves the operational stability of the hot-swap system.
[0061] like Figure 2 As shown, a hot-swap buffer device can be connected in series on the I2C channel through the CPLD interface, and the control circuit can prevent the I2C line (input) on the BMC side from being connected to the I2C line (output) on the CPLD side until a stop command or bus idle condition occurs on the backplane, and bus contention will not occur on the board.
[0062] When the BMC establishes an I2C connection with the CPLD, the hot-swap buffer device can provide a bidirectional buffer to isolate the BMC from the CPLD. During the hot-swap operation, the hot-swap buffer device temporarily disconnects the CPLD interface from the I2C bus until the I2C bus is idle or a command to re-establish the connection is detected, and then the connection is re-established, which can reduce the interference of the hot-swap operation on the BMC or CPLD. The hot-swap buffer device can be, for example, TCA9511A, which can support the insertion of I / O cards into the BMC without damaging data and clock lines.
[0063] In an exemplary embodiment, the complex programmable logic device and the control chip are connected via a management bus. Figure 2 As shown, the CPU and CPLD are connected by VPP (corresponding to the management bus).
[0064] The complex programmable logic device is also used to generate key simulation operations according to the key signals forwarded by the motherboard management module; the control chip is used to collect the key simulation operations through the management bus, determine the in-place status of the expansion device according to the collection results and the device data from the expansion device, and start the hot removal process or hot loading process according to the in-place status, wherein the key signal is generated by the device management module based on the key operation of the hot plug key. The hot plug control mechanism based on key signals proposed in this embodiment can determine the PCIE BOX on the Host server side by combining the key signal and the cable in-place signal of the PCIE BOX, the power-on completion signal and the BOX in-place signal, and start the corresponding program, making the hot plug operation more intuitive and controllable, and improving the reliability of the hot plug operation.
[0065] In summary, it can be seen that a complex programmable logic device, a port expansion chip, a mixed signal analog-to-digital chip, and a hot-swap buffer device are also provided in the hot-swap system of the expansion device, which further optimizes the signal processing and status indication during the hot-swap process, enhances the stability and functionality of the hot-swap, and improves the user experience. Overall, the solution of this application significantly improves the scalability and maintainability of the server system, and has important application value for building a highly available and highly flexible data center.
[0066] In an exemplary embodiment, the expansion device is also built with a cabinet position field replaceable unit, and the cabinet position field replaceable unit is connected to the device management module, and is used to send the detected current relative position of the expansion device in the cabinet to the device management module; the device management module is used to determine the preset connection channel corresponding to the current relative position of the expansion device in the cabinet according to the corresponding relationship between the relative position of the expansion device in the cabinet and the connection channel of the motherboard management module, and when it is determined that the preset connection channel is the same as the connected channel of the current relative position, it is determined that the cable connection between the expansion device and the host server is normal. In this embodiment, by building a cabinet position field replaceable unit in the PCIE BOX, the relative position of the PCIE BOX in the cabinet can be detected by the cabinet position field replaceable unit, and then whether the PCIE BOX is accurately connected to the Host can be determined according to the relationship between the relative position and the connection channel, thereby improving the correctness and reliability of the hardware connection, and realizing accurate management of the hardware position and connection status.
[0067] For example, the above cabinet location field replaceable unit is as follows Figure 2 shown.
[0068] FRU is the abbreviation of Field Replaceable Unit, which is translated into Chinese as "field replaceable unit". In the server field, FRU refers to hardware units that can be replaced on site, such as storage devices, batteries, fans, power supplies, etc. When one of the hardware units fails, the server can be repaired by replacing the corresponding FRU without replacing the entire server, thereby improving the maintainability and reliability of the server.
[0069] Optionally, the relative position can be expressed as the U-position (Rack Unit) position of the PCIE BOX, for example. In the field related to server cabinets, the U-position position of the PCIE BOX refers to the vertical installation position of the PCIE BOX in the cabinet, and the height of the cabinet and the equipment is measured in units of U. It should be noted that the height of a U-position is 1.75 inches, and the U-positions in the cabinet are numbered sequentially from the bottom and increase by 1U. For example, a standard 42U cabinet can accommodate 42 1U-height devices. When the PCIE BOX device is installed according to the number of U-positions occupied by its height in the cabinet (such as 1U, 2U or higher), it is necessary to select a suitable starting U-position according to the device size and heat dissipation requirements of the PCIE BOX. This installation method is not limited to installation from the bottom of the cabinet.
[0070] In this embodiment, the BMC of the PCIE BOX detects the position of the PCIE BOX in the cabinet using the cabinet position FRU to obtain the U position of the PCIE BOX in the cabinet, and then searches for the connection channel of the U position according to the pre-configured relationship mapping table between the U position and the I2C of the BMC of the Host server. If they are consistent, it is determined that the cable connection relationship between the PCIE BOX and the Host server is correct.
[0071] For example, using FRU to detect that the current U bit of BOX-1 is D30U, and looking up the table shows that D30U corresponds to I2C0 in the BMC of the HOST server, then PCIE BOX-1 is connected to I2C0 of the BMC on the host server side, indicating that the connection relationship between PCIE BOX-1 and the host server is correct. Similarly, using FRU to detect that the current U bit of PCIE BOX-2 is D31U, and looking up the table shows that D31U corresponds to I2C1 in the BMC of the HOST server, then PCIE BOX-2 is connected to I2C1 of the BMC on the host server side, indicating that the connection relationship between PCIE BOX-2 and the host server side is correct.
[0072] In an exemplary embodiment, the expansion device is further provided with an external indicator light, which is connected to the device management module and is used to receive a first light control signal from the device management module and control the light display mode of the indicator light according to the first light control signal. The present application provides a user with an intuitive feedback method for device status by designing an indicator light for a hot-swap button, and can monitor in real time whether a button of a PCIE BOX device is pressed.
[0073] like Figure 2 As shown, there are buttons and indicator lights outside the PCIE BOX-1. The buttons and indicator lights can be designed as an integrated structure or as independent buttons and independent indicator lights. The button signal corresponding to the button operation is sent to the BMC of the PCIE BOX for processing and then outputs the light control signal to control the display mode of the indicator light. This display mode can be to display different light colors or different light display frequencies.
[0074] For example, the hot-swap button and the indicator light may be integrated into an integrated structure, and the first light control signal corresponds to Figure 2 LED signal in.
[0075] Further, in one embodiment, the present application describes the power supply method of the PCIE BOX. The PCIE BOX is powered by a separate power supply on the cabinet, and its internal power supply is divided into an auxiliary power supply and a main power supply. The auxiliary power supply is automatically powered on when the BOX is inserted into the cabinet (and the cabinet power connector is connected). The main power supply is controlled by the Host through the main power enable signal (the power enable signal enable 0 / 1 sent to the BOX through the CDFP). After the main power supply is powered on, the BOX will feedback the power-on completion signal to the Host.
[0076] Based on the above embodiments, the present application transmits the key signal of the hot-swap button of the PCIE BOX externally to the CPU of the host server through information interaction from the host server to the PCIE BOX, so that the host server can perform the hot-swap operation of the PCIE BOX, and supports different display modes of the indicator light of the PCIE BOX, Host PCIE resource reservation, cable anti-misinsertion detection protection before hot plugging, and hardware signal isolation protection and other functions, and designs a notification-type PCIE BOX safe hot-swap process. In a scenario where a Host server is connected to multiple PCIE BOXs, if a single PCIE BOX fails, the single failed PCIE BOX can be powered off and replaced separately without having to power off the Host server and all PCIE BOXs, so that the normal business of other PCIE BOXs will not be affected. At the same time, the practice of setting the buttons and indicator lights on the PCIE BOX facilitates intuitive observation and hot unloading and hot loading of the PCIE BOX.
[0077] The embodiment of the present application provides a hot unloading method for an expansion device, which is applied to a hot plugging system of an expansion device, wherein the main power supply of the expansion device is powered on, such as Figure 3 As shown, the steps include:
[0078] Step S302, obtaining a first key signal generated by the expansion device according to the key operation of the hot-swap key, and sending the first key signal to the host server of the hot-swap system;
[0079] Step S304, controlling the host server to generate a key simulation operation according to the first key signal; optionally, the host server includes a HOST CPLD, and this step can be specifically implemented by the HOST CPLD.
[0080] Step S306, sending the device data generated by the expansion device to the host server, so that the host server can start the hot removal process of the expansion device when it determines that the expansion device is in the device in-place state according to the collection result of the key simulation operation and the device data from the expansion device. Optionally, the host server includes a HOST CPU, and this step can be specifically implemented by the HOST CPU. The hot removal process in this application can also be expressed as a hot unplug process.
[0081] Through the above method, by obtaining the first key signal generated by the above-mentioned expansion device according to the key operation of the hot plug key, the above-mentioned first key signal is sent to the host server of the above-mentioned hot plug system; the above-mentioned host server is controlled to generate a key simulation operation according to the above-mentioned first key signal; the device data generated by the above-mentioned expansion device is sent to the above-mentioned host server, so that the above-mentioned host server starts the hot removal process of the above-mentioned expansion device when it is determined that the above-mentioned expansion device is in the device in-place state according to the collection result of the above-mentioned key simulation operation and the device data from the above-mentioned expansion device. This embodiment is based on a hot plug system including a host server and an expansion device. When the host server determines that the expansion device is in the in-place state according to the key signal and device data of the expansion device, before the user unplugs the expansion device, the hot removal process of the expansion device is pre-started, thereby improving the safety and efficiency of the hot uninstallation operation.
[0082] The main power supply power-on may be determined by the host server according to a power-on completion signal from the expansion device.
[0083] In an exemplary embodiment, the hot removal process of the expansion device can be completed in the following manner: stop receiving the device data through the host server, and remove the bus resources occupied by the built-in execution device of the expansion device; turn off the main power supply according to the power-off signal generated by the host server, obtain the second light control signal generated by the expansion device based on the power-off signal, and control the prompt light of the expansion device from the current display mode to the light display mode corresponding to the power-off signal according to the second light control signal. The execution steps of this embodiment realize the orderly conduct of the hot removal operation, which can avoid the problems of data loss and hardware damage caused by directly unplugging the expansion device, and can safely remove expansion devices such as PCIE BOX during the normal operation of the host server. Among them, the power-off signal is a main power enable signal for turning off the main power supply.
[0084] In an exemplary embodiment, the following implementation steps are further proposed:
[0085] Step S11, obtaining the timing from the first start time of starting the hot removal process of the expansion device by the host server, and stopping the timing until the shutdown time when the main power of the expansion device is shut down;
[0086] Step S12, obtaining a power-off time period between the first startup time and the shutdown time;
[0087] Step S13: if it is determined that the power-off time period is greater than the first preset time period, a timeout warning message is generated.
[0088] This embodiment proposes a timeout warning mechanism in the hot removal process through the above steps, so that abnormal delays in the hot removal operation can be discovered in time, the fault detection and processing capabilities of the hot removal system are improved, and it is convenient to remind users to handle abnormal situations in time. If the Host server fails to successfully power off the PCIE BOX device after exceeding the maximum delay, it is considered that the hot removal process has failed, and the timeout warning information is reported, which has reminded the operation and maintenance personnel to intervene and solve it.
[0089] It should be noted that this timeout warning mechanism also applies to the hot loading process. If the indicator light of the PCIEBOX does not display according to the corresponding light display mode within the specified time, it is considered that the hot loading process has failed. Similarly, the timeout warning message can be used to prompt the operation and maintenance personnel to intervene and solve the problem, or the hot loading process can be re-executed. If it still fails, the operation and maintenance personnel can be requested to handle it.
[0090] The embodiment of the present application provides a hot loading method for an expansion device, which is applied to a hot plug system for an expansion device, wherein the cable between the host server and the expansion device of the hot plug system is connected, and the main power supply of the expansion device is not powered on. Figure 4 As shown, the steps include:
[0091] Step S402, obtaining a second key signal generated based on the key operation of the hot-swap key of the expansion device, and obtaining a cable mis-insertion prevention detection result of the expansion device;
[0092] Step S404, when it is determined that the cable mis-insertion prevention detection result indicates that the cable is in place and the cable is not mis-inserted, the second key signal is sent to the host server, so that the host server generates a key simulation operation according to the second key signal, determines the in-place state of the expansion device according to the collection result of the key simulation operation and the device data from the expansion device, and starts the hot loading process of the expansion device when it is determined that the expansion device is in the device not in place state. The hot loading process can also be expressed as a hot insertion process in practical applications.
[0093] Through the above embodiment, by obtaining the second key signal generated by the key operation based on the hot plug key of the above expansion device, and obtaining the cable mis-insertion prevention detection result of the above expansion device; when it is determined that the cable mis-insertion prevention detection result is used to indicate that the cable is in place and the cable is not mis-inserted, the second key signal is sent to the above host server, so that the above host server generates a key simulation operation according to the second key signal, determines the in-place state of the above expansion device according to the collection result of the above key simulation operation and the device data from the above expansion device, and starts the hot loading process of the above expansion device when it is determined that the above expansion device is in the device out-of-place state. In this embodiment, after the user inserts the expansion device, the host server starts the hot loading process of the expansion device when it determines that the expansion device is in the out-of-place state according to the key signal and device data of the expansion device, thereby improving the reliability and safety of the hot loading operation, reducing the device failure caused by hardware connection errors, and being able to dynamically add expansion devices such as PCIE BOX during the normal operation of the Host server.
[0094] In an exemplary embodiment, the hot loading process of the above-mentioned expansion device can be completed in the following manner: Step S21, the power-on signal and the reset signal generated by the above-mentioned host server are sent to the above-mentioned expansion device, so that the above-mentioned expansion device turns on the above-mentioned main power according to the above-mentioned power-on signal, resets the above-mentioned expansion device according to the reset signal, and sends a power-on completion signal to the above-mentioned host server; Step S22, the host server reallocates device bus resources for the built-in execution device of the above-mentioned expansion device, initializes the above-mentioned execution device according to the driver file, and sends the third light control signal generated by the above-mentioned host server to the above-mentioned expansion device to control the indicator light of the above-mentioned expansion device to change from the current display mode to the light display mode corresponding to the above-mentioned third light control signal. The steps shown in this embodiment can improve the operating efficiency of the hot loading operation, and can also improve the efficiency of bus resource allocation, so as to quickly respond to the addition request of hardware devices such as PCIEBOX, and add new expansion devices to the host server in a timely and dynamic manner.
[0095] In an exemplary embodiment, an implementation process for allocating device bus resources is also proposed. Specifically, all expansion devices connected to the above host server are powered on, and the resource allocation results of the bus resources when all the above expansion devices are successfully powered on are retained, and the device bus resources are reallocated according to the above resource allocation results. Alternatively, in an exemplary embodiment, the pre-allocation results of the reserved bus resources corresponding to all the above execution devices can also be obtained, and the device bus resources are reallocated according to the above pre-allocation results to obtain the bus interface corresponding to each execution device, wherein the above bus interface is connected to the port expansion chip built into the above expansion device. In the present application, the allocation efficiency of the device bus can be improved by reserving bus resources. In the above embodiments, different resource allocation strategies are proposed based on the starting point of reserving bus resources, so that the host server can manage and utilize hardware resources more efficiently, optimize the allocation method of hardware resources, and improve the execution efficiency of the hot loading process.
[0096] Exemplarily, the implementation method of reserving PCIE bus resources in advance for new PCIE BOX devices may include: Method 1, first power on all PCIE BOXs that have been connected to the host server normally, and for the uninstalled PCIE BOX, the previously allocated PCIE bus resources are not cleared, so that the original PCIE bus resources can continue to be used when the new PCIE BOX is loaded next time. Method 2, write the PCIE bus resources that need to be reserved in the BIOS code in advance, and these reserved PCIE bus resources must correspond one-to-one with the PCIE devices in the PCIE BOX, so that the reserved PCIE bus resources can be directly used when the user inserts a new PCIE BOX. In the above methods, if the uninstalled PCIE BOX has cleared the previously allocated PCIE bus resources, or the inserted PCIE device exceeds the range of reserved bus resources, the problem of PCIE BOX failing to initialize normally will occur, resulting in the failure of the hot loading process.
[0097] Further, in order to better illustrate the cable mis-insertion prevention detection result, a technical solution for obtaining the cable mis-insertion prevention detection result of the above extension device is proposed, including the following steps:
[0098] Step S31, obtaining the number of device presence signals received by the host server;
[0099] Step S32, when it is determined that the number of the signals is consistent with the number of devices of the expansion device connected to the host server, determine the number of first interfaces of the third host connection interface connected to the device connection interface in the host server, and determine the number of second interfaces of the third device connection interface connected to the host connection interface in the expansion device;
[0100] Step S33, when it is determined that the number of the second interfaces is consistent with the number of the first interfaces, determining that the cables are in place;
[0101] Step S34, obtaining the detection results of the interface numbering sequence and the preset numbering sequence corresponding to all third host connection interfaces of the above-mentioned expansion device, and when it is determined that the above-mentioned detection results are used to indicate that the above-mentioned interface numbering sequence conforms to the above-mentioned preset numbering sequence, and when it is determined that the above-mentioned cable is not mis-inserted, a cable anti-mis-insertion detection result is generated to indicate that the cable is in place and the cable is not mis-inserted.
[0102] Through the above steps, this embodiment proposes a detection mechanism for the number of interfaces and interface numbers, which effectively prevents hardware connection errors, improves the reliability of high-precision hardware connections, and improves the operational stability of the hot-swap system.
[0103] Exemplarily, each CDFP interface of the Host server corresponds to a CDFP ID, and this CDFP ID represents the cable numbering information (i.e., cable ID 0~3) and is sent to the BMC of the PCIE BOX and the PCIE Switch respectively. Further, the BMC of the PCIE BOX is used to detect that the ID of each CDFP cable is in a sequential order from small to large, ensuring that there is no mis-insertion between multiple CDFP cables in the same BOX. Among them, the sequential order from small to large corresponds to the above-mentioned preset numbering order.
[0104] It should be noted that the above embodiment proposes a cable mis-insertion protection mechanism in the hot loading process, which determines that each CDFP cable is correctly in place by providing the BMC of the host server and the BMC of the PCIE BOX with the cable presence signals on both sides of the cable, thereby realizing the cable mis-insertion prevention identification function. This process is described as follows.
[0105] First, a BOX presence signal on CDFP0 of each PCIE BOX is transmitted to the BMC of the host server, so that the BMC of the host server can detect the number of connected PCIE BOXes and the position of CDFP0 correctly.
[0106] like Figure 2As shown, the CDFP of the HOST server receives the BOX in-position signal 0 from PCIE BOX-1 or the BOX in-position signal 1 from PCIE BOX-2, that is, one PCIE BOX sends one BOX in-position signal through one CDFP. Then, the number of CDFP interfaces that the BMC of the Host server has connected to the PCIE BOX and the number of CDFP interfaces that the PCIE BOX has connected to the Host server can be compared. If they are consistent, it is determined that the number of CDFP connections of the two is correct. For example, the 8 CDFP interfaces of the Host server have received the BOX in-position signal. If the BOX in-position signal is 2, it means that the Host server is connected to 2 PCIE BOXs. If these 2 PCIE BOXs each have 4 CDFP interfaces, the number of connections of the two is the same, and the number detection is passed. If the BOX in-position signal is 4, it means that the Host server is connected to 4 PCIE BOXs. If these 4 PCIE BOXs each have 2 CDFP interfaces, the number of connections of the two is the same, and the number detection is passed. It can be seen that this embodiment can support the automatic detection of PCIE BOXes with different numbers of CDFP interfaces in the hot-swap system, and realize the connection between the Host server and different PCIE BOXes.
[0107] Secondly, the BMC of the PCIE BOX can detect its position in the cabinet. For example, the U position of the PCIE BOX in the cabinet can be detected by using the cabinet FRU. In this way, the BMC of the host server can access the specified BOX through the specified I2C channel to obtain the U position of the BOX in the cabinet, and then determine whether the connection relationship of the BOX on the host server side is correct according to the connection relationship mapping table between the cabinet BOX U position and the I2C of the BMC of the host server.
[0108] In an exemplary embodiment, further, the timing can be obtained from the second start-up moment of the host server starting the hot loading process of the expansion device, and the timing can be stopped until the conversion moment when the indicator light is converted from the current display mode to the light display mode corresponding to the third light control signal, and the conversion time period between the second start-up moment and the conversion moment can be obtained; when it is determined that the conversion time period is greater than the second preset time period, a timeout warning message is generated. In this embodiment, through the timing and timeout warning mechanism, abnormal situations in hot loading operations can be discovered in time, and the fault detection and processing capabilities of the hot plug system are improved. This embodiment is applicable to server systems that require high reliability and fault recovery capabilities. In addition, this embodiment can also help system administrators quickly locate problems and reduce maintenance time, thereby improving the overall availability and user satisfaction of the server system.
[0109] Compared with the traditional idea of designing a hot-swap button on the Host server side, this application designs a hot-swap button on the PCIE BOX side, such as Figure 5 As shown in the figure, in the hot-swap system, the key signal and light control signal need to be transmitted to the BMC of the Host server (i.e., Host BMC) through the I2C channel via the BMC of the PCIE BOX (i.e., BOX BMC). In order to meet the needs of VPP adoption, the key / indicator light simulation function is designed in the CPLD, and the key action obtained by the Host BMC is simulated by the CPLD as a signal that can be adopted by VPP. The light control signal also completes the transmission process between the CPU, Host BMC, and PCIE BOX through the CPLD.
[0110] Therefore, this application provides a notification hot-swap method for PCIE BOX based on the hot-swap system of the Host server connecting to the PCIE BOX device. Specifically, a hot-swap button is designed on the PCIE BOX. By operating the hot-swap button and observing the indicator light status, the user can hot-swap a single BOX on site in the computer room. In this way, for a single Host server bound to multiple PCIE BOXes, when a single PCIE BOX fails, only the single faulty BOX can be powered off and replaced, without having to shut down and power off the Host server and all PCIE BOXes, without affecting the services of other PCIE BOXes, and the buttons and indicator lights are set on the PCIE BOX side for easy use by customers, which improves the reliability of protection mechanisms such as anti-misplugging.
[0111] In one embodiment, in combination Figure 6 The process of hot unplugging the PCIE BOX by the user is described. This process corresponds to the hot unloading method of the PCIE BOX described above. The steps are as follows:
[0112] Step 1: Hot-plug a normally powered PCIE BOX. The following prerequisites must be met: the BOX cable is normal, the BOX is powered on and initialized normally, and the indicator light is green, for example.
[0113] Step 2: First, the user presses the Powerbutton on the BOX panel (the hot-swap button mentioned above);
[0114] Step 3: The BMC of the PCIE BOX collects the key signal of the Powerbutton being pressed;
[0115] Step 4: After the BMC of the PCIE BOX determines that the indicator light is currently in the green light state of normal power-on, the control indicator light changes to flashing yellow;
[0116] Step 5: The BMC of the host server obtains the key signal indicating that the Powerbutton is pressed from the BMC of the PCIE BOX through the I2C in the CDFP cable;
[0117] Step 6: The BMC of the host server simulates the pressing action of the Powerbutton in the CPLD of the host server through I2C;
[0118] In this step, you need to connect the signal line of the Powerbutton to an input pin of the CPLD, and the output pin of the CPLD to the VPP pin of the CPU.
[0119] The process of simulating the pressing of the Powerbutton key can be to write logic code in the CPLD to detect the level change of the Powerbutton input pin. For example, when the Powerbutton is detected to be pressed (assuming that the pressing is low level), the register or state machine inside the CPLD records the state of the key pressing. Then, according to the detected key state, the CPLD outputs the corresponding signal to the VPP pin of the CPU through the output pin. For example, while the key is pressed, the CPLD continuously outputs a low level signal to the VPP pin, thereby simulating the pressing of the Powerbutton key.
[0120] Step 7, the CPU of the host server collects the pressing action of the Powerbutton in the CPLD through VPP;
[0121] In this process, the CPU needs to configure the VPP pin as input mode and set up the corresponding interrupt or polling mechanism to detect the signal change of the VPP pin. When the CPLD outputs a low-level signal to the VPP pin, the CPU's VPP pin detects the signal change and triggers an interrupt. In the CPU's interrupt service program, read the signal state of the VPP pin to confirm the Powerbutton press action. Then execute the corresponding processing logic, such as starting the system shutdown or entering standby mode.
[0122] Step 8: The CPU and OS of the host server determine that the device is currently in place and start the hot removal process. The steps for implementing the hot removal process are as follows:
[0123] Step 9: The CPU of the host server stops accessing the device under the corresponding PCIE interface and removes the bus resources of the corresponding PCIE device;
[0124] Step 10, the CPU of the host server generates a main power enable signal for shutting down the main power of the BOX in the CPLD through VPP;
[0125] Step 11, the main power enable signal is transmitted to the BOX via the CDFP cable, and the BOX turns off the main power supply;
[0126] Step 12, then the BMC control indicator of the PCIE BOX turns yellow and stays on;
[0127] Step 13: At this time, the hot unplugging process ends, and the user can unplug the CDFP cable on the PCIE BOX side, unplug and replace the target BOX.
[0128] After the user inserts a new PCIE BOX, the PCIE BOX is automatically connected to the cabinet power supply, and the auxiliary power supply of the PCIE BOX is automatically powered on so that the BMC of the PCIE BOX completes the initialization, and then the CDFP cable is inserted, and the PCIE BOX can meet the conditions for starting the hot insertion process. Figure 7 The process of hot-plugging the PCIE BOX by the user is described. This process corresponds to the hot-loading method of the PCIE BOX described above. The steps are as follows:
[0129] Step 1: Ensure that the hot-swapping process meets the following prerequisites: Plug the cable into the CDPF of the PCIE BOX. At this time, the auxiliary power supply of the PCIE BOX is powered on and the main power supply is not powered on. The indicator light of the PCIE BOX is orange.
[0130] Step 2. Press the Powerbutton on the BOX panel;
[0131] Step 3: The BMC of the PCIE BOX detects that the Powerbutton is pressed;
[0132] Step 4: The BMC of the PCIE BOX checks the cable connection relationship through the cable presence and cable ID signal (cable number signal).
[0133] Step 5: The BMC control indicator of the PCIE BOX turns green and flashes;
[0134] Step 6: The BMC of the host server senses that the Powerbutton is pressed from the BMC of the PCIE BOX through the I2C in the CDFP cable;
[0135] Step 7: The BMC of the PCIE BOX checks the cable position and the FRU of the BOX cabinet to see if the cable is in place and the mis-insertion prevention is normal.
[0136] Step 8: The BMC of the host server simulates the pressing action of the Powerbutton in the CPLD of the host server through I2C;
[0137] Step 9: The CPU of the host server collects the Powerbutton pressing action in the CPLD through VPP;
[0138] Step 10: The CPU of the host server determines that the device is not in place, and starts the hot insertion process. The specific steps of the hot insertion process are as follows:
[0139] Step 11, the CPU of the Host server turns on the main power enable signal of the PCIE BOX in the CPLD through VPP and releases the reset;
[0140] Step 12: The power enable signal and reset signal for turning on the main power output by the CPLD are sent to the PCIE BOX through the CDFP cable. The PCIE BOX powers on the main power and resets the device, and then returns a power-on completion signal to the Host server. The Host server detects that the power-on of the PCIE BOX side is completed.
[0141] Step 13: The OS of the Host server detects that the BOX PCIE device link has been connected, and the system re-enumerates the bus of the inserted device, allocates corresponding resources, and performs relevant configuration and initialization on the corresponding driver;
[0142] Step 14, after the PCIE BOX device completes normal initialization, the CPU of the Host server sends an indication signal that the indicator light is always on in the CPLD through VPP;
[0143] Step 15, the BMC of the host server samples the indication signal of the indicator light being always on in the CPLD through I2C;
[0144] Step 16: The BMC of the host server transmits a command to turn on the indicator light to the BMC of the PCIE BOX through the I2C in the CDFP cable;
[0145] Step 17: The BMC control indicator of the PCIE BOX turns green and stays on. The hot-swapping process is completed and the device can be used normally.
[0146] In summary, the present application proposes a hot unloading method and a hot loading method for the expansion device based on the hot plug system of the expansion device, which not only realizes the dynamic addition and removal of the expansion device during the operation of the host server, but also ensures the safety, accuracy and efficiency of the hot plug operation through complex programmable logic, hot plug buffer devices, indicator lights and cable mis-insertion detection mechanisms. The application of these technologies has greatly improved the flexibility, scalability and maintenance efficiency of the server system, and has important application value for building a highly available and highly flexible data center and cloud computing environment. And this application is applicable to server systems that require frequent hardware upgrades or replacements, high concurrent processing, real-time monitoring of hardware status, large-scale hardware expansion, processing of complex data signals, accurate management of hardware location and connection status, rapid response to hardware failures or upgrade requests, optimization of hardware resource allocation, high-precision hardware connections, and high reliability and fault recovery capabilities, which can provide strong technical support for the efficient operation and maintenance of the server system.
[0147] 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 a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method.
[0148] The description of the features in the embodiments corresponding to the hot-swap system can refer to the relevant description of the embodiments corresponding to the hot-unloading method of the above-mentioned expansion device or the hot-loading method of the above-mentioned expansion device, which will not be repeated here.
[0149] The embodiment of the present application also provides an electronic device, such as Figure 8 As shown, the electronic device includes a memory 802 and a processor 804, and a computer program is stored in the memory 802.
[0150] Optionally, in this embodiment, the processor 804 may be configured to execute steps in any of the embodiments of the hot unloading method for an expansion device, or implement steps in any of the embodiments of the hot loading method for an expansion device, through a computer program.
[0151] Alternatively, a person skilled in the art may understand that: Figure 8 The structure shown is for illustration only. Figure 8 The structure of the electronic device is not limited. For example, the electronic device may also include Figure 8 More or fewer components (such as network interfaces, etc.) as shown in, or with Figure 8 Different configurations are shown.
[0152] Among them, the memory 802 can be used to store software programs and modules, such as the hot-swappable system of the expansion device in the embodiment of the present application, the program instructions / modules corresponding to the hot unloading method of the expansion device and the hot loading method of the expansion device. The processor 804 executes various functional applications and data processing by running the software programs and modules stored in the memory 802, that is, the hot unloading method of the expansion device and the hot loading method of the expansion device are realized. The memory 802 may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 802 may further include a memory remotely arranged relative to the processor 804, and these remote memories may be connected to the terminal via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and a combination thereof. Optionally, the memory 802 may be specifically, but not limited to, used to store information such as configuration files of the hot unloading system of the above-mentioned expansion device.
[0153] As an example, Figure 8 As shown, the memory 802 may include, but is not limited to, a host server (i.e., a Host server) and an expansion device (i.e., a PCIE BOX) in the hot unloading system of the expansion device. In addition, other module units in the hot unloading system of the expansion device may also be included but are not limited to, which will not be described in detail in this example.
[0154] Optionally, the transmission device 806 is used to receive or send data via a network. Specific examples of the network may include a wired network and a wireless network. In one example, the transmission device 806 includes a network adapter (Network Interface Controller, NIC), which can be connected to other network devices and routers via a network cable so as to communicate with the Internet or a local area network. In one example, the transmission device 806 is a radio frequency (RF) module, which is used to communicate with the Internet wirelessly.
[0155] In addition, the electronic device mentioned above further includes: a display 808; and a connection bus 810, which is used to connect various module components in the electronic device mentioned above.
[0156] In an exemplary embodiment, the electronic device may further include a transmission device and an input / output device, wherein the transmission device is connected to the processor, and the input / output device is connected to the processor.
[0157] An embodiment of the present application also provides a computer-readable storage medium, in which a computer program is stored, wherein the computer program is configured to execute the steps in the embodiments of any of the above-mentioned methods for hot unloading of expansion devices, or implement the steps in the embodiments of any of the above-mentioned methods for hot loading of expansion devices when running.
[0158] In an exemplary embodiment, the computer-readable storage medium may include, but is not limited to, various media that can store computer programs, such as 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.
[0159] An embodiment of the present application also provides a computer program product, which includes a computer program. When the computer program is executed by a processor, it implements the steps in the embodiments of the hot unloading method of any of the above-mentioned expansion devices, or implements the steps in the embodiments of the hot loading method of any of the above-mentioned expansion devices.
[0160] An embodiment of the present application also provides another computer program product, including a non-volatile computer-readable storage medium, the non-volatile computer-readable storage medium storing a computer program, and when the computer program is executed by a processor, implementing the steps in the embodiments of the hot unloading method of any of the above-mentioned expansion devices, or implementing the steps in the embodiments of the hot loading method of any of the above-mentioned expansion devices.
[0161] 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 composition and steps of each example have been generally described in the above description according to function. 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 to be beyond the scope of this application.
[0162] The above is a detailed introduction to a hot-swap system for an expansion device, a hot-unloading method for an expansion device, and a hot-loading method for an expansion device provided by the present application. Specific examples are used herein to illustrate the principles and implementation methods of the present application, and the description of the above embodiments is only used to help understand the method of the present application and its core idea. It should be pointed out that for ordinary technicians in this technical field, without departing from the principles of the present application, several improvements and modifications can be made to the present application, and these improvements and modifications also fall within the scope of protection of the claims of the present application.
Claims
1. A hot-swap system for an expansion device, characterized in that: include: A host server, wherein the host server has at least a built-in control chip and a mainboard management module, and the host server has an external host connector, and a host connection interface of the host connector is connected to the control chip and the mainboard management module respectively; An expansion device, wherein the expansion device has at least a built-in device management module, and the expansion device has an external hot-swap button and a device connector, and the device management module is connected to the device connection interface of the hot-swap button and the device connector respectively; The host server is connected to at least two expansion devices via cables, and is used to transmit signals through the cables and the at least two expansion devices so that the at least two expansion devices can perform hot-swap operations respectively. Each cable is separately connected to a host connection interface and a device connection interface.
2. The hot-swap system according to claim 1, characterized in that: The host server also has a built-in complex programmable logic device, which is arranged between the control chip and the mainboard management module, and the complex programmable logic device is respectively connected to the control chip, the mainboard management module and the host connection interface.
3. The hot-swap system according to claim 2, characterized in that: For the first expansion device among the at least two expansion devices, the first host connection interface of the host server is connected to the first device connection interface of the first expansion device, and the complex programmable logic device is used to receive the device presence signal, the cable presence signal and the power-on completion signal from the first device connection interface through the first host connection interface, and send a power enable signal, the cable address signal and the reset signal to the first device connection interface through the first host connection interface, wherein the device presence signal is used to indicate whether the host server and the first expansion device are successfully connected, and the power enable signal is used to control the main power supply corresponding to the first expansion device to be powered on or off, and the main power supply will generate the power-on completion signal after being powered on, and the main power supply is arranged in the cabinet where the expansion device is located.
4. The hot-swap system according to claim 2, characterized in that: For the first expansion device among the at least two expansion devices, the second host connection interface of the host server is connected to the second device connection interface of the first expansion device, and the complex programmable logic unit is used to receive a cable presence signal from the second device connection interface through the second host connection interface, and send a cable address signal to the second device connection interface through the second host connection interface.
5. The hot-swap system according to claim 4, characterized in that: The first expansion device also has a built-in port expansion chip and an execution device. The port expansion chip is connected to the second device connection interface and the execution device respectively, and is used to send the first data signal of the execution device to the second host connection interface via the second device connection interface.
6. The hot-swap system according to claim 5, characterized in that: A mixed signal analog-to-digital chip is further provided between the control chip and the second host connection interface, wherein the first data signal is forwarded to the control chip via the mixed signal analog-to-digital chip.
7. The hot-swap system according to claim 2, characterized in that: The complex programmable logic device and the mainboard management module are connected via a serial bus, and a hot-swap buffer device is also provided between the complex programmable logic device and the mainboard management module. The hot-swap buffer device is used to temporarily isolate the electrical connection between the complex programmable logic device and the serial bus during the hot-swap operation.
8. The hot-swap system according to claim 2, characterized in that: The complex programmable logic device and the control chip are connected via a management bus; The complex programmable logic device is also used to generate a key simulation operation according to the key signal forwarded by the mainboard management module; The control chip is used to collect the key simulation operation through the management bus, determine the in-place status of the expansion device according to the collection results and the device data from the expansion device, and start the hot removal process or the hot loading process according to the in-place status, wherein the key signal is generated by the device management module based on the key operation of the hot plug key.
9. The hot-swap system according to claim 1, characterized in that: The expansion device also has a built-in cabinet position field replaceable unit, and the cabinet position field replaceable unit is connected to the device management module and is used to send the detected current relative position of the expansion device in the cabinet to the device management module; The device management module is used to determine a preset connection channel corresponding to the current relative position of the expansion device in the cabinet based on the correspondence between the relative position of the expansion device in the cabinet and the connection channel of the mainboard management module, and when it is determined that the preset connection channel is the same as the connected channel at the current relative position, it is determined that the cable connection between the expansion device and the host server is normal.
10. The hot-swap system according to claim 1, characterized in that: The expansion device is also externally provided with an indicator light, which is connected to the device management module and is used to receive a first light control signal from the device management module and control a light display mode of the indicator light according to the first light control signal.
11. A method for hot unloading of an expansion device, characterized in that: A hot-swap system applied to an expansion device, wherein the main power supply of the expansion device is powered on, comprises: Acquire a first key signal generated by the expansion device according to a key operation of a hot-swap key, and send the first key signal to a host server of the hot-swap system; Controlling the host server to generate a key simulation operation according to the first key signal; The device data generated by the expansion device is sent to the host server, so that the host server starts the hot removal process of the expansion device when it is determined that the expansion device is in the device-in-place state according to the collection result of the key simulation operation and the device data from the expansion device.
12. The heat unloading method according to claim 11, characterized in that: The hot removal process of the expansion device is completed in the following way: Stop receiving the device data through the host server, and remove the bus resources occupied by the built-in execution device of the expansion device; Turn off the main power according to the power-off signal generated by the host server, obtain the second light control signal generated by the expansion device based on the power-off signal, and control the prompt light of the expansion device to switch from the current display mode to the light display mode corresponding to the power-off signal according to the second light control signal.
13. The heat unloading method according to claim 11, characterized in that: The method further comprises: Obtaining the timing from the first start time of the hot removal process of the expansion device by the host server, and stopping the timing from the shutdown time when the main power of the expansion device is shut down; Obtaining a power-off time period between the first startup time and the shutdown time; When it is determined that the power-off time period is greater than the first preset time period, a timeout warning message is generated.
14. A method for hot loading of an expansion device, characterized in that: A hot-swap system applied to an expansion device, wherein a cable between a host server and the expansion device of the hot-swap system is connected, and a main power supply of the expansion device is not powered on, comprising: Acquire a second key signal generated based on a key operation of a hot-swap key of the expansion device, and acquire a cable mis-insertion prevention detection result of the expansion device; When it is determined that the cable anti-misinsertion detection result is used to indicate that the cable is in place and the cable is not misinserted, the second key signal is sent to the host server, so that the host server generates a key simulation operation according to the second key signal, and the in-place state of the expansion device is determined according to the collection result of the key simulation operation and the device data from the expansion device. When it is determined that the expansion device is in a device not in place state, the hot loading process of the expansion device is started.
15. The hot loading method according to claim 14, characterized in that: The hot loading process of the expansion device is completed in the following way: Sending a power-on signal and a reset signal generated by the host server to the expansion device, so that the expansion device turns on the main power according to the power-on signal, resets the expansion device according to the reset signal, and sends a power-on completion signal to the host server; The host server reallocates device bus resources for the built-in execution device of the extension device, initializes the execution device according to the driver file, and sends the third light control signal generated by the host server to the extension device to control the indicator light of the extension device to switch from the current display mode to the light display mode corresponding to the third light control signal.
16. The hot loading method according to claim 14, characterized in that: The method further comprises: Powering on all expansion devices connected to the host server, retaining resource allocation results of bus resources when all expansion devices are successfully powered on, and reallocating device bus resources according to the resource allocation results; And / or, obtaining the pre-allocation results of the reserved bus resources corresponding to all the execution devices, reallocating the device bus resources according to the pre-allocation results, and obtaining the bus interface corresponding to each execution device, wherein the bus interface is connected to the port expansion chip built into the expansion device.
17. The hot loading method according to claim 14, characterized in that: Obtaining the cable mis-insertion prevention detection result of the extension device, including: Obtaining the number of device presence signals received by the host server; In the case where it is determined that the signal quantity is consistent with the device quantity of the expansion device connected to the host server, determining the first interface quantity of the third host connection interface connected to the device connection interface in the host server, and determining the second interface quantity of the third device connection interface connected to the host connection interface in the expansion device; When it is determined that the number of the second interfaces is consistent with the number of the first interfaces, determining that the cable is in place; Obtain a detection result of the interface numbering sequence and the preset numbering sequence corresponding to all third host connection interfaces of the expansion device. When it is determined that the detection result is used to indicate that the interface numbering sequence conforms to the preset numbering sequence, it is determined that the cable is not mis-inserted, and a cable mis-insertion prevention detection result is generated to indicate that the cable is in place and is not mis-inserted.
18. The hot loading method according to claim 15, characterized in that: The method further comprises: Obtain the timing from the second start-up time of the host server starting the hot loading process of the expansion device, and stop timing until the conversion time when the indicator light is converted from the current display mode to the light display mode corresponding to the third light control signal, and obtain the conversion time period between the second start-up time and the conversion time; When it is determined that the conversion time period is greater than the second preset time period, a timeout warning message is generated.
19. An electronic device, characterized in that: include: Memory for storing computer programs; A processor, used to implement the steps of the hot unloading method described in any one of claims 11 to 13, or the steps of the hot loading method described in any one of claims 14 to 18 when executing the computer program.
20. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, wherein when the computer program is executed by a processor, the steps of the hot unloading method according to any one of claims 11 to 13 or the steps of the hot loading method according to any one of claims 14 to 18 are implemented.
Citation Information
Patent Citations
System chip with hot plug function and PCI-E root port controller thereof
CN106815163A
A device for automatic testing of a hot plugging function and a testing method
CN107168835A
Hot plug device of network card and server
CN116955257A
Method and system for hot-plug functions
US20160179734A1