A server
By introducing storage switches and control components into the server, dynamically adjusting the power supply status of the storage components, the problem of low storage resource utilization in the prior art is solved, and more efficient storage resource utilization is achieved.
Patent Information
- Application Number
- CN202411925173.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-25
- Publication Date
- 2025-06-24
- Estimated Expiration
- 2044-12-25
AI Technical Summary
The utilization rate of storage resources in existing servers is low, mainly because the storage resources of PCIe label cards are fixed and cannot be flexibly adjusted.
A server is designed, including a server host, a storage switch, multiple storage components, control components and power supply components. The storage switch uses multiple storage components as storage resource pools to provide storage resources to the server host. The control component detects the resource adjustment information of the server host, and adjusts the power supply status of each storage component through the power supply component to ensure that the power supply status matches the usage of the storage resource.
By dynamically adjusting the power supply status of the storage components, the server host's utilization rate of storage resources is improved, and the problem of low storage resource utilization is solved.
Smart Images

Figure CN119356622B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of computers, and more particularly, to a server. Background Art
[0002] With the continuous development of CXL (Compute Express Link, an open interconnect standard protocol) technology, the CXL memory resource pool built based on the CXL bus provides convenience for the server host to flexibly use storage resources. Currently, it is common to provide storage resources for the server host in the form of connecting a PCIe (Peripheral Component Interconnect Express) standard card. A storage component including an MXC (Memory Expander Controller) and DIMM (Dual-Inline-Memory-Modules) is made into a standard card, and the standard card is inserted into the PCIe slot on the server motherboard to achieve connection with the server host. The server host obtains the storage resource through the CXL bus. However, in this form, the PCIe standard card is powered as a whole by the connected server host, and the storage resources provided by the PCIe standard card for the server host are fixed. This inflexible storage resource provisioning scheme results in a low utilization rate of storage resources by the server host. Summary of the Invention
[0003] The embodiments of the present application provide a server to at least solve the problem of low utilization rate of storage resources in the related art.
[0004] According to an embodiment of the present application, a server is provided, including: a server host, a storage switch, a plurality of storage components, a control component, and a power supply component. The control component is connected to the power supply component. The storage switch is connected between the server host and the plurality of storage components. The power supply component is respectively connected to the plurality of storage components. The control component is connected to the server host;
[0005] The storage switch is configured to use the plurality of storage components as a storage resource pool to provide storage resources for the server host;
[0006] The control component is configured to detect resource adjustment information of the server host during the operation of the server host, where the resource adjustment information is used to indicate the adjustment situation of the storage resources allocated by the storage switch for the server host; and adjust the power supply status of each storage component by the power supply component to match the resource adjustment information.
[0007] In an exemplary embodiment, the control component includes: a first controller and a second controller. The first controller is connected to the second controller, the first controller is connected to the server host, and the second controller is connected to the power supply component. The first controller is configured to detect the resource adjustment information according to the resource allocation information of the server host, where the resource allocation information is used to indicate the storage resources allocated by the storage switch for the server host; convert the resource adjustment information into status change information, where the status change information is used to indicate a target storage component among the multiple storage components whose usage status on the server host has changed; and send the status change information to the second controller. The second controller is configured to adjust the power supply status of the power supply component for the target storage component according to the status change information.
[0008] In an exemplary embodiment, the first controller is configured to: collect the current resource allocation information from the server host; compare the current resource allocation information with the previously collected resource allocation information; when the current resource allocation information is consistent with the previously collected resource allocation information, determine that the resource adjustment information is the first adjustment information, where the first adjustment information is used to indicate that the storage resources allocated by the storage switch for the server host have not been adjusted; when the current resource allocation information is inconsistent with the previously collected resource allocation information, determine that the resource adjustment information is the second adjustment information, where the second adjustment information is used to indicate that the storage resources allocated by the storage switch for the server host have been adjusted.
[0009] In an exemplary embodiment, the first controller is configured to: when the resource adjustment information is the first adjustment information, convert the first adjustment information into first change information, where the first change information is used to indicate that there is no target storage component among the multiple storage components, and the status change information includes the first change information; when the resource adjustment information is the second adjustment information, extract the target storage component from the current resource allocation information and the previously collected resource allocation information to obtain second change information, where the second change information is used to indicate that the usage status of the target storage component among the multiple storage components on the server host has changed, and the status change information includes the second change information.
[0010] In an exemplary embodiment, the first controller is configured to: determine a first set of storage components currently used by the server host according to the current resource allocation information, and determine a second set of storage components used by the server host last time according to the resource allocation information collected last time; calculate the union and intersection of the first set of storage components and the second set of storage components; calculate the difference set between the union and the intersection, wherein the storage components in the difference set are the target storage components.
[0011] In an exemplary embodiment, the second controller includes: a first controller and a second controller. The first controller is connected to the second controller, the first controller is connected to the first controller, and the second controller is connected to the power supply component; the first controller is configured to generate a power supply control signal for each storage component according to the status change information; the second controller is configured to transmit the power supply control signal to the power supply component.
[0012] In an exemplary embodiment, the second controller includes: a first device and a second device. The first device is connected to the storage switch, the second device is connected to the multiple storage components, the first device is connected to the first controller, and the second device is also connected to the power supply component; the first controller is further configured to write the power supply control signal into the first device; the first device is configured to transmit the power supply control signal to the second device through the connection between the storage switch and the multiple storage components; the second device is configured to transmit the power supply control signal to the power supply component.
[0013] In an exemplary embodiment, a plurality of first cable interfaces are deployed on the storage switch, and a second cable interface is deployed on each of the multiple storage components. The first cable interfaces are connected to the second cable interfaces in one-to-one correspondence. The first device is connected to the power supply control pins of each of the first cable interfaces, and the second device is connected to the power supply control pins of each of the second cable interfaces; the first device is configured to transmit the power supply control signal corresponding to each storage component to the second device through the first cable interface corresponding to each storage component according to the corresponding relationship between each of the first cable interfaces and each of the storage components; the second device is configured to receive the power supply control signal corresponding to each storage component from each of the second cable interfaces and transmit the power supply control signal to the power supply component.
[0014] In an exemplary embodiment, a plurality of enable terminals are deployed on the power supply component, and the plurality of enable terminals correspond to the plurality of storage components one by one; the second device is connected to the plurality of enable terminals, and the power supply control signal corresponding to each storage component includes an enable signal corresponding to each storage component; the second device is configured to transmit the enable signal corresponding to each storage component to the enable terminal corresponding to each storage component.
[0015] In an exemplary embodiment, a plurality of storage bits are created in the first device, and the plurality of storage bits correspond to the plurality of storage components one by one; the first controller is configured to overwrite and write the power supply control signal corresponding to each storage component into the storage bit corresponding to each storage component; the first device is configured to transmit the data on the storage bit corresponding to each storage component to the second device through the first cable interface corresponding to each storage component; the second device is configured to control the enable terminal corresponding to each storage component according to the data transmitted on the second cable interface corresponding to each storage component.
[0016] In an exemplary embodiment, the power supply component includes a plurality of first power supply modules, each of the plurality of first power supply modules is connected to the control component, and each of the plurality of first power supply modules is also connected to the plurality of storage components one by one; the control component is configured to generate a power supply control signal corresponding to each first power supply module according to the resource adjustment information; the first power supply module is configured to supply power to the corresponding storage component according to the power supply control signal.
[0017] In an exemplary embodiment, the control component is connected to the plurality of first power supply modules one by one through a plurality of first power supply channels; the control component is further configured to send the power supply control signal to the corresponding first power supply module through each of the first power supply channels.
[0018] In an exemplary embodiment, a plurality of signal output terminals are deployed on the control component, an enable terminal is deployed on each of the plurality of first power supply modules, and the plurality of signal output terminals are connected to the corresponding enable terminals to form the plurality of first power supply channels; the control component is configured to send a corresponding enable signal to the corresponding first power supply module through each of the first power supply channels, wherein the power supply control signal includes the enable signal.
[0019] In an exemplary embodiment, each of the storage components includes: a storage controller, and one or more storage units; a power supply port is deployed on each of the first power supply modules, and the power supply port is used to connect the storage controller and the one or more storage units; the first power supply module is used to supply power to the storage controller and the one or more storage units through the power supply port according to the power supply control signal.
[0020] In an exemplary embodiment, the power supply port includes: a first port, and one or more second ports, the first port is connected to the storage controller, and the one or more second ports are respectively connected to the one or more storage units in one-to-one correspondence; the first power supply module is used to convert the power supply voltage into a first input voltage of the storage controller according to the power supply control signal, and supply the first input voltage to the storage controller through the first port; and convert the power supply voltage into a second input voltage of the storage unit according to the power supply control signal, and supply the second input voltage to the corresponding storage unit through the corresponding second port.
[0021] In an exemplary embodiment, the power supply component is further connected to the storage switch; the control component is further used to control the power supply component to supply power to the multiple storage components when the server host is executed with a startup operation; when the multiple storage components are all powered on, control the power supply component to supply power to the storage switch; when the storage switch is powered on, control the server host to start.
[0022] In an exemplary embodiment, the power supply component includes: a plurality of first power supply modules and a second power supply module, and each of the first power supply modules is further connected to the multiple storage components in one-to-one correspondence; the second power supply module is connected to the storage switch; the multiple first power supply modules and the second power supply module are both connected to the control component; the control component is used to control the multiple first power supply modules to supply power to the multiple storage components when the server host is executed with a startup operation, and receive first feedback signals returned by the multiple first power supply modules to obtain the multiple first feedback signals; when the multiple first feedback signals are all used to indicate that the corresponding storage components are powered on, control the second power supply module to supply power to the storage switch, and receive a second feedback signal returned by the second power supply module; when the second feedback signal is used to indicate that the storage switch is powered on, control the server host to start.
[0023] In an exemplary embodiment, the control component is connected to the plurality of first power supply modules in one-to-one correspondence through a plurality of first power supply channels and a plurality of first feedback channels, and the control component is connected to the second power supply module through a second power supply channel and a second feedback channel; the control component is configured to control, through the first power supply channel, the corresponding first power supply module to supply power to the corresponding storage component, and receive the first feedback signal returned by the corresponding first power supply module through the corresponding first feedback channel; the control component is further configured to control, through the second power supply channel, the second power supply module to supply power to the storage switch, and receive the second feedback signal returned by the second power supply module through the second feedback channel.
[0024] In an exemplary embodiment, the control component includes: a third control machine, a fourth control machine, and a fifth control machine. The third control machine, the fourth control machine, and the fifth control machine are interconnected. The fourth control machine and the fifth control machine are both connected to the power supply component, and the third control machine is connected to the server host; the third control machine is configured to, when the server host is executed with a startup operation, control, through the fifth control machine, the power supply component to supply power to the plurality of storage components; when the plurality of storage components are all powered on, control, through the fourth control machine, the power supply component to supply power to the storage switch; when the storage switch is powered on, control the server host to start.
[0025] In an exemplary embodiment, the fourth control machine includes: a third device and a fourth device, and the third device and the fourth device are connected. The fifth control machine includes: a fifth device and a sixth device, and the fifth device and the sixth device are connected. The third control machine, the third device, and the fifth device are interconnected; the power supply component includes: a plurality of first power supply modules and a second power supply module. Each of the first power supply modules is further configured to be connected to the plurality of storage components in one-to-one correspondence; the second power supply module is connected to the storage switch, the fourth device is connected to the second power supply module, and the sixth device is connected to all the first power supply modules; the third control machine is configured to, when the server host is executed with a startup operation, notify the fifth device to supply power to the plurality of storage components; when the plurality of storage components are all powered on, notify the third device to supply power to the storage switch; when the storage switch is powered on, control the server host to start; the fifth device is configured to control, through the sixth device, the plurality of first power supply modules to supply power to the plurality of storage components; the third device is configured to control, through the fourth device, the second power supply module to supply power to the storage switch.
[0026] Through this application, since in the server including a server host and multiple storage components, a storage switch, a control component, and a power supply component are further included. The storage switch is connected between the server host and the multiple storage components. The storage switch can use the multiple storage components as a storage resource pool to provide storage resources for the server host. Additionally, while the control component is connected to the power supply component, it is also connected to the server host. The power supply component is respectively connected to the multiple storage components. Based on the above connection relationships, the control component can detect the adjustment of the storage resources allocated to the server host by the storage switch during the operation of the server host and adjust the power supply states of the power supply component to each storage component to match the storage resources allocated to the server host. This enables the flexible adjustment of the power supply states of each storage component according to the usage changes of the storage resources of the server host in the server. Unused storage components are not powered, and storage components that need to be used are normally powered, improving the matching between the storage resources currently used by the server host in the server and the storage resources that can be used currently in the server, and improving the utilization rate of storage resources by the server host. Therefore, the problem of low utilization rate of storage resources in the related art can be solved, and the effect of improving the utilization rate of storage resources can be achieved. BRIEF DESCRIPTION OF THE DRAWINGS
[0027] Figure 1 is a schematic structural diagram of a server according to an embodiment of the present application Figure 1 ;
[0028] Figure 2 is a schematic diagram of a connection manner between a control component and a power supply component according to an embodiment of the present application Figure 1 ;
[0029] Figure 3 is a schematic diagram of a connection manner between a control component and a power supply component according to an embodiment of the present application Figure 2 ;
[0030] Figure 4 is a schematic structural diagram of a server according to an embodiment of the present application Figure 2 ;
[0031] Figure 5 is a flowchart for powering on / off the entire server and reallocating storage resources;
[0032] Figure 6 is a connection diagram of CPLD1 and a memory device interface according to an embodiment of the present application;
[0033] Figure 7 is a schematic diagram of a CPLD2 power supply control scheme according to an embodiment of the present application. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0034] In the following, embodiments of the present application will be described in detail with reference to the accompanying drawings and in conjunction with the embodiments.
[0035] It should be noted that the terms "first", "second", etc. in the specification, claims and the above-mentioned drawings of the present application are used to distinguish similar objects, and do not necessarily need to be used to describe a specific order or sequence.
[0036] In this embodiment, a server is provided. Figure 1 It is a schematic structure of the server according to the embodiment of the present application. Figure 1 , such as Figure 1 shown, the server includes: a server host, a storage switch, a plurality of storage components, a control component, and a power supply component. The control component is connected to the power supply component (specific connection methods have multiple possibilities. Figure 1 Only different possibilities are shown by dashed lines in Figure 1 , and the dashed lines in
[0037] do not specifically limit the connection method). The storage switch is connected between the server host and the plurality of storage components. The power supply component is respectively connected to the plurality of storage components, and the control component is connected to the server host;
[0038] The storage switch is used to provide storage resources for the server host by using the plurality of storage components as a storage resource pool;
[0039] Through the above, since in the server, in addition to including a server host and multiple storage components, a storage switch, a control component, and a power supply component are also included. The storage switch is connected between the server host and the multiple storage components. The storage switch can use the multiple storage components as a storage resource pool to provide storage resources for the server host. Additionally, while the control component is connected to the power supply component, it is also connected to the server host. The power supply component is respectively connected to the multiple storage components. Based on the above connection relationships, the control component can detect the adjustment of the storage resources allocated to the server host by the storage switch during the operation of the server host and adjust the power supply status of the power supply component to each storage component to match the storage resources allocated to the server host, so that in the server, the power supply status of each storage component can be flexibly adjusted according to the usage changes of the storage resources of the server host. The unused storage components are not powered, and the storage components that need to be used are normally powered, improving the matching between the storage resources currently used by the server host in the server and the storage resources that can be used in the server, and improving the utilization rate of the storage resources by the server host. Therefore, the problem of low utilization rate of storage resources in the related art can be solved, and the effect of improving the utilization rate of storage resources can be achieved.
[0040] Optionally, in the embodiments of the present application, the server host may but is not limited to refer to a computer hardware system specifically used for hosting and running server software. The server host usually has high performance, stability, and reliability to meet various service requirements, such as website hosting, database management, file storage and sharing, etc. The server host is usually equipped with a high-performance processor to handle a large number of concurrent requests and high-load tasks. The server host requires sufficient memory to support the operation of multiple applications and services to ensure the stable operation of the system. The server host usually uses high-speed solid-state drives (SSDs, Solid State Drives) or high-performance hard drives (HDDs, Hybrid Hard Drives) to store data to improve the data read and write speed. The server host requires a high-speed and stable network connection to ensure the efficiency and reliability of data transmission. To ensure data security and high availability of the system, the server host usually has redundant power supplies, redundant network connections, and data backup functions. The server host needs to have a certain degree of scalability so that more hardware resources, such as additional hard drives, memory, or processors, can be added when the business grows.
[0041] Optionally, in the embodiments of the present application, the storage switch may, but is not limited to, be connected between the server host and multiple storage components, and use the multiple storage components to form a storage resource pool to provide storage resources for the server host. For example, the storage switch may be a CXL switch, and the CXL switch integrates the storage resources provided by multiple storage components into a storage resource pool through the CXL storage resource pooling technology for the server host to use. Or, the storage switch may be a SAN (Storage Area Network) switch, and the SAN switch integrates the storage resources provided by multiple storage components into a storage resource pool through the virtualized storage network resource pooling technology for the server host to use. More specifically, the SAN switch uses storage virtualization technology, such as LUN (Logical Unit Number) mapping, to virtualize the storage spaces of storage components such as multiple physical storage arrays into a unified storage resource pool. In this resource pool, the storage space can span different physical devices, but for the server host, they appear as a single storage device.
[0042] Optionally, in the embodiments of the present application, the multiple storage components may, but are not limited to, be multiple storage devices of the same type that support resource pooling technology. For example, they may be multiple DRAMs (Dynamic Random Access Memory), or multiple SRAMs (Static Random Access Memory), or multiple NVDIMMs (Non-Volatile Dual In-line Memory Module), etc. The multiple storage components may also, but are not limited to, be a combination of multiple storage devices of different types that support resource pooling technology. For example, it may be a combination of multiple DRAMs and multiple SRAMs, etc.
[0043] Optionally, in the embodiments of the present application, a storage component may also, but is not limited to, include a storage controller and multiple storage units. The storage controller may, but is not limited to, include MXC, and the storage units may, but are not limited to, include DRAM, SRAM, and NVDIMM, etc.
[0044] Optionally, in the embodiments of the present application, a storage switch connected between the server host and multiple storage components is adopted to use the multiple storage components as a storage resource pool to provide storage resources for the server host, instead of the server host directly connecting to a PCIe standard card integrated with multiple storage components to obtain the storage resources integrated on the PCIe standard card. The storage switch can dynamically allocate storage resources to the server host according to the requirements of the host service and flexible allocation, and the capacity of the storage resources is no longer fixed. On this basis, some storage components are no longer used by the server host. To improve resource utilization and avoid waste of resources, the present application proposes a solution to control the power supply status of multiple storage components using a control component and a power supply component.
[0045] Optionally, the control component can be, but is not limited to, a device with control functions. For example, it can be various processors, such as a CPU (Central Processing Unit), and can also be an MCU (Microcontroller Unit), a BMC (Baseboard Management Controller), a CPLD (Complex Programmable Logic Device), or an FPGA (Field-Programmable Gate Array). The control component can also be, but is not limited to, a combination of multiple devices with control functions. The devices within the corresponding device combination of the control component respectively complete different parts of the functions implemented by the control component. For example, it can be a combination of different processors, specifically, a combination of a CPU and a BMC, a combination of a CPU and multiple BMCs, or a combination of a CPU, multiple BMCs, and multiple CPLDs. The present application does not make specific limitations on this.
[0046] Optionally, in the embodiments of the present application, the power supply component can be, but is not limited to, a device that can be controlled and supply power externally. For example, it can be a combined device of a relay and a power supply, or a combined device of a transistor and a power supply. Optionally, the power supply component can also be, but is not limited to, a device that converts the received electrical energy and outputs it externally. The devices that convert the received electrical energy and output it externally need to be powered in the server, and these devices that convert the received electrical energy and output it externally will adjust the output electrical energy according to the instructions of the control component to achieve the adjustment of the power supply status of each storage component. Specifically, such a device can be a power management integrated circuit (PMIC, Power Management Integrated Circuit).
[0047] Optionally, in the embodiments of the present application, Figure 2Schematic of a connection method between a control component and a power supply component according to an embodiment of the present application Figure 1 , Figure 3 Schematic of a connection method between a control component and a power supply component according to an embodiment of the present application Figure 2 , the connection between the control component and the power supply component can be but is not limited to a direct connection between the control component and the power supply component as shown in Figure 2 , or can be but is not limited to an indirect connection between the control component and the power supply component through the connection between the control component and the storage switch, the connection between the storage switch and multiple storage components, and the connection between the power supply component and multiple storage components as shown in Figure 3 . The connection method between the control component and the power supply component can be flexibly selected according to the requirements of the application scenario. For example, when the interface pins of the storage switch and multiple storage components have power supply control pins or idle pins, an indirect connection method can be selected to reuse the interfaces of the storage switch, multiple storage components, and the connection cables between the storage switch and multiple storage components. For another example, when the control component and the power supply component are integrated on a circuit board, a direct connection method between the control component and the power supply component can be adopted to reduce the connection lines across the circuit board.
[0048] Optionally, in the embodiment of the present application, the resource adjustment information includes but is not limited to the resource adjustment requirements sent by the host to the storage switch. The control component can determine the adjustment operation of the storage switch for allocating storage resources to the server host according to the resource adjustment requirements, and further determine the adjustment situation of the storage resources allocated by the storage switch to the server host. Optionally, the resource adjustment information can also be but is not limited to obtained by comparing the results of the control component periodically collecting the resource allocation information on the server host.
[0049] Optionally, in the embodiment of the present application, the control component is used to detect the resource adjustment information of the server host during the operation of the server host, including but not limited to the control component sending adjustment requirement acquisition information to the host. After receiving the adjustment requirement acquisition information, the host will also send the resource adjustment requirements to be sent to the storage switch to the control component, or the control component sends resource allocation acquisition information to the server host. After receiving the resource allocation acquisition information, the host will return the current resource allocation information of the server host to the control component. The control component stores the resource allocation information sent by the server host last time. According to the comparison result of the two resource allocation information, it can be determined which storage components have changed in their usage status.
[0050] Optionally, in the embodiments of the present application, the control component is further configured to adjust the power supply states of the power supply component to each storage component to match the resource adjustment information, including but not limited to that the control component outputs power supply control signals of each storage component that match the resource adjustment information to the power supply component, or after the control component determines the target storage component whose usage state on the server host has changed, the power supply control signal of the target storage component is determined as a power supply control signal with a control effect opposite to that of the power supply control signal of the target storage component output last time and is output to the power supply component. For example, if the power supply control signal of the target storage component last time indicates that the power supply component supplies power to the target storage component, then the power supply control signal output this time is a control signal indicating that the power supply component stops supplying power to the target storage component.
[0051] As can be seen from the above, after using the control component and the power supply component to control the power supply states of multiple storage components, the storage components that are not allocated to the server host by the storage switch can be powered off, and power can be supplied to the storage components newly allocated to the server host by the storage switch, ensuring the normal use of storage resources by the server host while avoiding waste of resources.
[0052] As an optional implementation manner, the control component includes: a first controller and a second controller. The first controller is connected to the second controller, the first controller is connected to the server host, and the second controller is connected to the power supply component. The first controller is configured to detect resource adjustment information according to the resource allocation information of the server host, where the resource allocation information is used to indicate the storage resources allocated by the storage switch to the server host; convert the resource adjustment information into state change information, where the state change information is used to indicate the target storage component whose usage state on the server host has changed among multiple storage components; and send the state change information to the second controller. The second controller is configured to adjust the power supply state of the power supply component to the target storage component according to the state change information.
[0053] Optionally, in the embodiments of the present application, the control component may include, but is not limited to, a first controller for converting the resource adjustment information of the server host into state change information indicating the target storage component whose usage state has changed, and a second controller for adjusting the power supply state of the power supply component to the target storage component according to the state change information.
[0054] Optionally, in the embodiments of the present application, the correspondence between the storage resources used by the server host and the storage resources provided by each storage component may be recorded, but is not limited to being recorded, in the first controller. Therefore, the first controller can implement the conversion from resource adjustment information to state change information.
[0055] Optionally, in the embodiments of the present application, the first control machine and the second control machine may be, but are not limited to, a device with control functions or a combination of multiple devices with control functions. The devices within the device combination corresponding to the first control machine respectively complete different parts of the functions implemented by the first control machine, and the devices within the device combination corresponding to the second control machine respectively complete different parts of the functions implemented by the second control machine. For example, the first control machine may be a processor, and the second control machine may be a combination of a BMC and two CPLDs.
[0056] Through the above content, through the division of labor and cooperation between the first control machine and the second control machine, a two-layer control mechanism is realized. Among them, the first control machine focuses on the monitoring and analysis of resource requirements, and the second control machine focuses on the actual execution of resource adjustment. This mechanism enables resource management to not only quickly respond to the needs of the host but also efficiently execute resource adjustment operations, enhancing the overall coordination and performance of the server.
[0057] As an optional implementation manner, the first control machine is used to: collect the current resource allocation information from the server host; compare the current resource allocation information with the previously collected resource allocation information; in the case where the current resource allocation information is consistent with the previously collected resource allocation information, determine that the resource adjustment information is the first adjustment information, where the first adjustment information is used to indicate that the storage resources allocated by the storage switch for the server host have not been adjusted; in the case where the current resource allocation information is inconsistent with the previously collected resource allocation information, determine that the resource adjustment information is the second adjustment information, where the second adjustment information is used to indicate that the storage resources allocated by the storage switch for the server host have been adjusted.
[0058] Optionally, in the embodiments of the present application, collecting the current resource allocation information from the server host includes, but is not limited to, the first control machine requesting to obtain the current resource allocation information of the server host from the server host at a fixed frequency, or the first control machine monitoring the communication between the server host and the storage switch, and in the case where a communication between the server host and the storage switch is monitored, requesting to obtain the current resource allocation information of the server host from the server host.
[0059] Through the above content, the first control machine continuously collects resource allocation information from the server host, and these information reflect the current usage of resources in the storage resource pool. This continuous monitoring mechanism enables the system to track the dynamic changes of resources in real time, providing a basis for dynamic resource adjustment.
[0060] As an alternative implementation, the first control machine is configured to: when the resource adjustment information is the first adjustment information, convert the first adjustment information into first change information, where the first change information is used to indicate that there is no target storage component among multiple storage components, and the status change information includes the first change information; when the resource adjustment information is the second adjustment information, extract the target storage component from the current resource allocation information and the previously collected resource allocation information to obtain second change information, where the second change information is used to indicate that the usage status of the target storage component among multiple storage components has changed on the server host, and the status change information includes the second change information.
[0061] Optionally, in the embodiments of the present application, extracting the target storage component from the current resource allocation information and the previously collected resource allocation information may be to determine what changes have occurred in the storage resources allocated to the server host based on the current resource allocation information and the previously collected resource allocation information, and then determine which storage components' usage status has changed, or to determine the current usage status of each storage component according to the current resource allocation information and the usage status of each storage component at the previous collection according to the previously collected resource allocation information, and then determine which storage components' usage status has changed.
[0062] Through the above content, the generation and conversion process of the resource adjustment information is refined, the intelligent level of server storage resource management is improved, and the accuracy, efficiency, and flexibility of resource adjustment are ensured.
[0063] As an alternative implementation, the first control machine is configured to: determine the first storage component set currently used by the server host according to the current resource allocation information, and determine the second storage component set previously used by the server host according to the previously collected resource allocation information; calculate the union and intersection of the first storage component set and the second storage component set; calculate the difference set between the union and the intersection, where the storage components in the difference set are the target storage components.
[0064] Optionally, in the embodiments of the present application, after calculating the difference set between the union and the intersection to obtain the target storage component, it includes but is not limited to determining the specific change situation of the usage status of the target storage component by searching for the target storage component in the first storage component set or the second storage component set. For example, after calculating the difference set between the union and the intersection to obtain the target storage component, search for the target storage component in the first storage component set; if the target storage component is not found, determine that the target storage component is a storage component that the server host has stopped using; if the target storage component is found, determine that the target storage component is a storage component newly used by the server host.
[0065] Through the above content, it is further clarified how the first control machine accurately determines the logic of the target storage component, and accurately identifies the specific content of resource changes through set operations, providing more detailed and accurate data support for resource adjustment.
[0066] As an optional implementation manner, the second control machine includes: a first controller and a second controller. The first controller is connected to the second controller, the first controller is connected to the first control machine, and the second controller is connected to the power supply component; the first controller is configured to generate a power supply control signal for each storage component according to the status change information; the second controller is configured to transmit the power supply control signal to the power supply component.
[0067] Optionally, in the embodiments of the present application, the first controller and the second controller may be, but are not limited to, a device with a control function or a combination of multiple devices with a control function. The devices within the device combination corresponding to the first controller respectively complete different parts of the functions implemented by the first controller, and the devices within the device combination corresponding to the second controller respectively complete different parts of the functions implemented by the second controller. For example, the first controller may be a BMC, and the second controller may be a combination of two CPLDs.
[0068] Optionally, in the embodiments of the present application, the connection between the second controller and the power supply component may be, but is not limited to, that the second controller is directly connected to the power supply component, or the second controller is indirectly connected to the power supply component through a connected storage switch, and can be flexibly configured according to needs.
[0069] Optionally, in the embodiments of the present application, including but not limited to, the power supply control signals output by each storage component last time are recorded in the first controller. Therefore, the current power supply control signals for each storage component can be generated by combining the target storage component indicated by the status change information and the power supply control signals output by each storage component last time.
[0070] Optionally, in the embodiments of the present application, including but not limited to, the status change information specifically includes the target storage component and the type of change in the usage status of the target storage component. For example, if the status change information is to stop using storage component A, the first controller can determine that the power supply control signal A for storage component A is a signal indicating that the power supply component stops supplying power to storage component A according to the status change information. The second controller transmits the power supply control signal A to the power supply component, and the power supply component changes the power supply status of storage component A with reference to the power supply control signal A. The power supply status of other storage components remains unchanged because the power supply component does not receive the corresponding new power supply control signal.
[0071] Through the above content, a distributed control structure of the first controller and the second controller is introduced. This not only increases the control level, but also makes the control process more modular and professional, improving the control efficiency and accuracy.
[0072] As an optional implementation, the second controller includes: a first device and a second device, the first device is connected to a storage switch, the second device is connected to multiple storage components, the first device is connected to the first controller, and the second device is also connected to a power supply component; the first controller is also used to write a power supply control signal to the first device; the first device is used to transmit the power supply control signal to the second device through the connection between the storage switch and the multiple storage components; the second device is used to transmit the power supply control signal to the power supply component.
[0073] Optionally, in the embodiment of the present application, both the first device and the second device may be, but are not limited to, a control device, such as a CPLD, or an FPGA, etc. Optionally, there is no limitation on the device types of the first device and the second device, and the second device may be a control device of the same type as the first device, or a control device of a different type from the first device.
[0074] Optionally, in an embodiment of the present application, the first device is indirectly connected to the second device through a connection between the first device and a storage switch, a connection between the storage switch and multiple storage components, and a connection between the multiple storage components and the second device.
[0075] Through the above content, the storage switch, as the intermediate layer for power supply control signal transmission, can provide redundant signal transmission paths. Even if a path has a problem, the system can continue to transmit the power supply control signal through other paths, thereby maintaining the stable operation of the system.
[0076] As an optional implementation, multiple first cable interfaces are deployed on the storage switch, and a second cable interface is deployed on each of the multiple storage components. The first cable interfaces are connected to the second cable interfaces in a one-to-one correspondence. The first device is connected to the power supply control pin of each first cable interface, and the second device is connected to the power supply control pin of each second cable interface. The first device is used to transmit the power supply control signal corresponding to each storage component to the second device through the first cable interface corresponding to each storage component according to the correspondence between each first cable interface and each storage component; the second device is used to receive the power supply control signal corresponding to each storage component from each second cable interface, and transmit the power supply control signal to the power supply component.
[0077] Optionally, in an embodiment of the present application, the first cable interface and the second cable interface are interfaces with power supply control pins. The power supply control pins of the first cable interface and the second cable interface may be provided by the interface itself, or may be modified from other pins of the interface. The present application does not make any specific limitation on this.
[0078] Optionally, in the embodiments of the present application, the first cable interface and the second cable interface may be, but are not limited to, the same type of interface or different types of interfaces. In the case where the first cable interface and the second cable interface are different types of interfaces, a corresponding adapter cable is required to connect the first cable interface and the second cable interface.
[0079] Optionally, the connection between the first cable interface and the second cable interface includes, in addition to the connection between the power supply control pins of the first cable interface and the power supply control pins of the second cable interface, the connection between the data transmission pins of the first cable interface and the data transmission pins of the second cable interface. The data read by the server host from each storage component and the data that the server host needs to write to each storage component are transmitted through the connection between the data transmission pins of the first cable interface and the data transmission pins of the second cable interface.
[0080] Through the above, by transmitting the power supply control signal through the power supply control pins in the cable interfaces of the storage switch and each storage component, the first device can accurately control the power supply state of each storage component. This fine-grained control ability allows the system administrator or automation control strategy to independently power on or power off the storage resources according to the real-time load and business requirements of the server host, improving the resource utilization efficiency and reducing unnecessary power consumption.
[0081] As an optional implementation manner, a plurality of enable terminals are deployed on the power supply component, and the plurality of enable terminals correspond to the plurality of storage components one by one; the second device is connected to the plurality of enable terminals, and the power supply control signal corresponding to each storage component includes the enable signal corresponding to each storage component; the second device is configured to transmit the enable signal corresponding to each storage component to the enable terminal corresponding to each storage component.
[0082] Optionally, in the embodiments of the present application, the power supply control signal corresponding to each storage component received by the second device may be, but is not limited to, including the enable signal corresponding to each storage component, and the second device needs to transmit the corresponding enable signal to the enable terminal corresponding to each storage component.
[0083] Optionally, in the embodiments of the present application, including but not limited to, at the moment when the falling edge of the power supply control signal received by the second device arrives, the second device sends a pulled-down enable signal to the enable terminal corresponding to the power supply control signal on the power supply component; at the moment when the rising edge of the power supply control signal received by the second device arrives, the second device sends a pulled-up enable signal to the enable terminal corresponding to the power supply control signal on the power supply component.
[0084] As an alternative embodiment, a plurality of storage bits are created in the first device, and the plurality of storage bits correspond one-to-one to a plurality of storage components; a first controller for overwriting and writing the power supply control signals corresponding to the respective storage components into the storage bits corresponding to the respective storage components; the first device for transmitting the data on the storage bits corresponding to the respective storage components to the second device through the first cable interfaces corresponding to the respective storage components; the second device for controlling the enable ends corresponding to the respective storage components according to the data transmitted on the second cable interfaces corresponding to the respective storage components.
[0085] Optionally, in the embodiment of the present application, the method of creating a plurality of storage bits in the first device may but is not limited to creating one or more registers in the first device, and the storage bits of the one or more registers are the storage bits created in the first device.
[0086] Through the above content, by using the mechanism in which the storage bits, the first cable interfaces, the second cable interfaces, and the enable ends correspond to each other, the corresponding power supply control signals accurately produce the correct power supply control effect, avoiding the occurrence of power supply control errors, realizing the precise, fast, and flexible transmission and control of the power supply control signals, and improving the manageability, response speed, and resource utilization rate of the server.
[0087] As an alternative embodiment, the power supply component includes a plurality of first power supply modules, each of the plurality of first power supply modules is connected to the control component, and each of the first power supply modules is also connected to a plurality of storage components one-to-one; the control component for generating the power supply control signals corresponding to the respective first power supply modules according to the resource adjustment information; the first power supply module for supplying power to the corresponding storage component according to the power supply control signal.
[0088] Optionally, in the embodiment of the present application, the connection between the first power supply module and the storage component includes but is not limited to that each of the first power supply modules is respectively connected to each sub-part of each of the storage components, or each of the first power supply modules is respectively connected to the storage control device in each of the storage components. For example, in the case where each of the storage components includes a storage controller and one or more storage units, the first power supply module corresponding to the storage component is respectively connected to the storage controller and one or more storage units to supply power to the storage controller and one or more storage units respectively; or the first power supply module corresponding to the storage component is connected to the storage controller, and the first power supply module directly supplies power to the storage controller and indirectly supplies power to one or more storage units through the connection between the storage controller and one or more storage units.
[0089] Through the above content, corresponding first power supply modules are configured for each storage component, and each storage component is powered by the corresponding first power supply module. The independent power supply module design makes the allocation of storage resources more flexible. When it is necessary to expand or adjust the storage resources, the first power supply module can be added or adjusted individually without making major changes to the entire power supply component, which helps improve the scalability and adaptability of the system.
[0090] As an alternative implementation, the control component is connected to a plurality of first power supply modules in one-to-one correspondence through a plurality of first power supply channels; the control component is further configured to send a power supply control signal to the corresponding first power supply module through each first power supply channel.
[0091] Optionally, in the embodiment of the present application, the transmission of the power supply control signal between the control component and the plurality of first power supply modules can, but is not limited to, be transmitted through the corresponding first power supply channels. Redundant channels can be provided between the control component and the plurality of first power supply modules as a disaster recovery solution for the plurality of first power supply channels. In the case where a certain first power supply channel cannot be used normally, the redundant channel corresponding to it is used to transmit the power supply control signal.
[0092] As an alternative implementation, a plurality of signal output terminals are deployed on the control component, and enable terminals are deployed on each of the first power supply modules. The plurality of signal output terminals are connected to the corresponding enable terminals to form a plurality of first power supply channels; the control component is configured to send corresponding enable signals to the corresponding first power supply modules through each first power supply channel, where the power supply control signal includes an enable signal.
[0093] Optionally, in the embodiment of the present application, a plurality of signal input terminals are further deployed on the control component, and feedback terminals are further deployed on each of the first power supply modules. Each feedback terminal is connected to the corresponding signal input terminal to form a plurality of first feedback channels. Each first power supply module is configured to send a corresponding first feedback signal to the corresponding first power supply module through the corresponding first feedback channel, where the first feedback signal is used to indicate the power-on situation of the corresponding storage component.
[0094] As an alternative implementation, each storage component includes: a storage controller, and one or more storage units; a power supply port is deployed on each of the first power supply modules, and the power supply port is used to connect the storage controller and one or more storage units; the first power supply module is configured to supply power to the storage controller and one or more storage units through the power supply port according to the power supply control signal.
[0095] Optionally, in the embodiment of the present application, the storage controller can, but is not limited to, be a device for managing and controlling a plurality of storage units, such as MXC.
[0096] Optionally, in the embodiments of the present application, the storage unit may be, but is not limited to, a device in a server for storing data and programs, such as DRAM, SRAM, NVDIMM, and other devices.
[0097] Optionally, in the embodiments of the present application, one or more power supply ports are deployed on each of the first power supply modules. In the case where one power supply port is deployed, this one power supply port is simultaneously connected to the storage controller and one or more storage units. In the case where multiple power supply ports are deployed, these multiple power supply ports are respectively connected to the storage controller and one or more storage units.
[0098] As an alternative implementation, the power supply port includes: a first port, and one or more second ports. The first port is connected to the storage controller, and the one or more second ports are respectively connected to one or more storage units in a one-to-one correspondence; a first power supply module, configured to convert the power supply voltage into a first input voltage of the storage controller according to the power supply control signal, and provide the first input voltage to the storage controller through the first port; and convert the power supply voltage into a second input voltage of the storage unit according to the power supply control signal, and provide the second input voltage to the corresponding storage unit through the corresponding second port.
[0099] Optionally, in the embodiments of the present application, the first input voltage is the power supply voltage required to maintain the normal operation of the storage controller, and the second input voltage is the power supply voltage required to maintain the normal operation of the storage unit. Generally speaking, there is a difference between the power supply voltage required by the storage controller and the power supply voltage required by the storage unit. Therefore, the first power supply module needs to provide different power supply ports to separately supply power to the storage controller and the storage unit.
[0100] Through the above content, corresponding input voltages are respectively provided to the storage controller and the storage unit through different power supply channels according to the different requirements of the storage controller and the storage unit, ensuring that the provided voltage is the correct required voltage and ensuring the normal operation of the power supply control of the storage components.
[0101] As an alternative implementation, the power supply component is also connected to the storage switch; the control component is further configured to control the power supply component to supply power to multiple storage components when the server host is executed with a startup operation; control the power supply component to supply power to the storage switch when multiple storage components are powered on; and control the server host to start when the storage switch is powered on.
[0102] Optionally, in the embodiments of the present application, the server host being executed with a startup operation can be understood as sending a startup instruction or a startup electrical signal to the server host. This startup instruction or startup electrical signal is used to trigger the startup of the server host. When the control component detects that the server host has been executed with a startup operation, it first controls the power supply component to supply power to multiple storage components, that is, it first controls the power supply component to start providing electrical energy to multiple storage components. When multiple storage components are all powered on, that is, when multiple storage components have successfully obtained the electrical energy required for normal operation from the power supply component, it controls the power supply component to supply power to the storage switch, that is, it controls the power supply component to start providing electrical energy to the storage switch. When the storage switch has been powered on, that is, when the storage switch has successfully obtained the electrical energy required for normal operation from the power supply component, it controls the server host to start, that is, it sends the aforementioned startup instruction or startup electrical signal to the power management module of the server host. After receiving the startup instruction or startup electrical signal, the power management module will control the power supply unit of the server host to supply electrical energy to the server host, and the server host starts up.
[0103] Through the above content, after the server host is executed with a startup operation, that is, a startup requirement is generated, it first controls the power supply component to supply power to the storage components and the storage switch, and controls the server host to start when both the storage components and the storage switch are powered on, ensuring that the storage components and the storage switch are both ready for power-on when the server host starts up. The server host can immediately access storage resources when starting up without waiting, thereby accelerating the initialization process of the server and improving the overall response speed of the server.
[0104] As an optional implementation manner, the power supply component includes: a plurality of first power supply modules and a second power supply module. Each of the first power supply modules is also connected to a corresponding one of the multiple storage components; the second power supply module is connected to the storage switch; the plurality of first power supply modules and the second power supply module are both connected to the control component; the control component is configured to, when the server host is executed with a startup operation, control the plurality of first power supply modules to supply power to the multiple storage components, and receive first feedback signals returned by the plurality of first power supply modules to obtain the plurality of first feedback signals; when the plurality of first feedback signals are all used to indicate that the corresponding storage components have been powered on, control the second power supply module to supply power to the storage switch, and receive a second feedback signal returned by the second power supply module; when the second feedback signal is used to indicate that the storage switch has been powered on, control the server host to start.
[0105] Optionally, in the embodiments of the present application, it includes, but is not limited to, dividing a second power supply module and a plurality of first power supply modules in the power supply component, which are respectively used to supply power to the storage switch and a plurality of storage components, reducing the possibility of incorrect power-on. And these power supply modules can also return corresponding feedback signals to the control component, so that the control component can timely learn about the power-on states of the storage components and the storage switch, enabling the control component to better control the startup process of the entire server.
[0106] As an optional implementation manner, the control component is connected to a plurality of first power supply modules in one-to-one correspondence through a plurality of first power supply channels and a plurality of first feedback channels, and the control component is connected to the second power supply module through a second power supply channel and a second feedback channel; the control component is configured to control the corresponding first power supply module to supply power to the corresponding storage component through the first power supply channel and receive a first feedback signal returned by the corresponding first power supply module through the corresponding first feedback channel; the control component is further configured to control the second power supply module to supply power to the storage switch through the second power supply channel and receive a second feedback signal returned by the second power supply module through the second feedback channel.
[0107] Optionally, in the embodiments of the present application, the control of the second power supply module and the plurality of first power supply modules by the control component includes, but is not limited to, being completed through the cooperation of a plurality of control devices.
[0108] As an optional implementation manner, the control component includes: a third control machine, a fourth control machine, and a fifth control machine. The third control machine, the fourth control machine, and the fifth control machine are interconnected. The fourth control machine and the fifth control machine are both connected to the power supply component, and the third control machine is connected to the server host; the third control machine is configured to, when the server host is executed with a startup operation, control the power supply component to supply power to a plurality of storage components through the fifth control machine; when a plurality of storage components have been powered on, control the power supply component to supply power to the storage switch through the fourth control machine; when the storage switch has been powered on, control the server host to start.
[0109] Optionally, in the embodiments of the present application, the interconnection between the third control machine, the fourth control machine, and the fifth control machine can, but is not limited to, be achieved through a network connection, and the third control machine, the fourth control machine, and the fifth control machine can, but are not limited to, be connected to a network switch.
[0110] Optionally, in the embodiments of the present application, the third control machine controls the server host to start when the storage switch has been powered on, including, but is not limited to, being implemented through the interaction between the third control machine and the baseboard management controller of the server host. The third control machine includes, but is not limited to, triggering the baseboard management controller to start the server host by sending an instruction to the baseboard management controller of the server host.
[0111] As an alternative implementation, the fourth control machine includes: a third device and a fourth device, the third device and the fourth device are connected; the fifth control machine includes: a fifth device and a sixth device, the fifth device and the sixth device are connected; the third control machine, the third device and the fifth device are interconnected; the power supply component includes: a plurality of first power supply modules and a second power supply module, and each of the first power supply modules is further used to be correspondingly connected to a plurality of storage components one by one; the second power supply module is connected to the storage switch, the fourth device is connected to the second power supply module, and the sixth device is connected to all the first power supply modules; the third control machine is configured to, when the server host is executed with a startup operation, notify the fifth device to supply power to the plurality of storage components; when all the plurality of storage components are powered on, notify the third device to supply power to the storage switch; when the storage switch is powered on, control the server host to start; the fifth device is configured to control the plurality of first power supply modules to supply power to the plurality of storage components through the sixth device; the third device is configured to control the second power supply module to supply power to the storage switch through the fourth device.
[0112] Optionally, in the embodiments of the present application, the third device, the fourth device, the fifth device, and the sixth device are all a kind of control device, for example, it can be BMC, CPLD, FPGA, etc.
[0113] Optionally, in the embodiments of the present application, the third device and the fifth device can be but are not limited to BMC, and the fourth device and the sixth device can be but are not limited to CPLD, that is, the fourth control machine and the fifth control machine can be but are not limited to a combination of a BMC and a CPLD. In such a combination, the logical functions of the third device and the fifth device are more complex. Some simple control operations are assigned to the fourth device and the sixth device with simpler logical functions to execute, releasing part of the occupation of the computing resources of the third device and the fifth device, enabling the third device and the fourth device to implement more other complex functions and improving the overall operation efficiency of the server.
[0114] As an alternative embodiment, after the server is successfully powered on and started with the cooperation of the third control machine, the third device, the fourth device, the fifth device, the sixth device, multiple first power supply modules, and the second power supply module, during the operation of the server host, the third control machine (equivalent to the aforementioned first control machine) can detect resource adjustment information according to the resource allocation information of the server host, convert the resource adjustment information into status change information, and send the status change information to the third device (equivalent to the aforementioned first controller); the third device can generate power supply control signals for each storage component according to the status change information and write the power supply control signals into the fourth device (equivalent to the aforementioned first device); the fourth device transmits the power supply control signals to the sixth device (equivalent to the aforementioned second device) through the connection between the storage switch and multiple storage components; the sixth device can transmit the power supply control signals to the corresponding first power supply module; the first power supply module can supply power to the corresponding storage component according to the power supply control signal, thereby realizing the flexible allocation of storage resources in the server. The more specific operation cooperation method among the third control machine, the third device, the fourth device, the sixth device, and multiple first power supply modules is the same as the specific operation cooperation method among the aforementioned first control machine, the first controller, the first device, the second device, and multiple first power supply modules.
[0115] Optionally, a more specific server is also provided in the application. Figure 4 It is a schematic diagram of the structure of the server according to the embodiment of the present application. Figure 2 As Figure 4 shown, it mainly consists of two parts. One is the server host and the corresponding storage configuration device, and the other is the memory box. In the memory box, there are 2 BaseBoards (motherboards) (denoted as BaseBoard1 and BaseBoard2 respectively) for carrying each management unit, CPLD logic control unit, and power supply module of the memory exchange board and the memory expansion board. There are three types of management units, namely, a detachable mCPU (a type of processor) (i.e., the aforementioned third control machine or the first control machine), a network management unit, and a BMC. There is no mCPU on BaseBoard2 connected to the memory expansion board. The first configuration supported by the memory box is 1 memory exchange board with 1 memory expansion board, and the second configuration is 1 memory exchange board with 2 memory expansion boards. Users can flexibly select according to business needs when using.
[0116] The on-board modules of the memory swapping board mainly include a CXL Switch (i.e., the aforementioned storage switch), and the external interfaces are PCIe interfaces and memory device interfaces (i.e., the aforementioned first cable interfaces). The PCIe resources of the host are connected to the upstream port of the SW (i.e., the aforementioned CXL2.0 Switch) through a CDFP cable, and the downstream - memory device interface of the SW is connected to the memory expansion board through a CDFP cable. The memory swapping board and the BaseBoard1 can be connected through an MCIO (Multimode Connector Insertion / Extraction) cable. The MCIO is mainly used to transmit the monitoring signals of the BMC1 (i.e., the aforementioned third device or the first controller) to the memory swapping board, I2C communication signals, and signals for CPLD power control. The mCPU, BMC1, and network management unit on the BaseBoard1 are interconnected with each other. The CPLD1 (i.e., the aforementioned fourth device or the first device) is connected to the BMC1, and the CPLD1 is connected to the power supply module (i.e., the aforementioned second power supply module). Both the CPLD1 and the power supply module are connected to the memory swapping board.
[0117] The memory expansion board mainly houses 8 MXC as memory controllers (i.e., the aforementioned storage controllers). Its upstream interface (i.e., the aforementioned second cable interface) is connected to the memory swapping board through a CDFP cable, and the downstream is connected to the memory device (i.e., the aforementioned storage unit). The memory device can specifically be a DDR5 DIMM (Dual-Inline-Memory-Modules dual in-line memory module) strip. Each MXC can support up to 8 DIMMs at most, and the entire memory expansion board can support up to 64 DIMMs at most. Table 1 is Figure 1 The memory resource pooling system configuration of the server shown. A total of 2 memory expansion boards and 4 memory expansion boards are involved. In a fully configured manner, a total of 256 DIMMs can be expanded. Similarly, the memory expansion board and the BaseBoard2 can be connected through an MCIO cable. The MCIO is mainly used for the monitoring signals of the BMC2 (i.e., the aforementioned fifth device) to the memory expansion board, I2C communication signals, and signals for CPLD power control. The BMC2 on the BaseBoard2 is connected to the network management unit. The CPLD2 (i.e., the aforementioned sixth device or the second device) is connected to the BMC2, and the CPLD2 is connected to the power supply module. Both the CPLD2 and the power supply module (i.e., the aforementioned first power supply module) are connected to the memory expansion board.
[0118] Table 1
[0119]
[0120] Through the network switch and the network management units on each BaseBoard, the mCPU and each BMC can communicate. Inside the memory box, the BMC1 on BaseBoard1 serves as the master BMC to manage the entire memory box.
[0121] The overall architecture of the server has been introduced above. For the configuration in Table 1, Figure 5 is the flowchart for powering on / off the entire server and reallocating storage resources. The overall power-on sequence is to power on the memory expansion board first, then the memory switching board, and finally the server host. During the operation of the server host, after the host issues an instruction to reallocate memory resources, it is obtained by the mCPU and then passed to the BMC1 and CPLD1 of the memory switching board in sequence. Through the CDFP cable, the CPLD2 of the memory expansion board finally realizes the power-off and power-on control of the MXC and DIMM.
[0122] More specifically, the transmission of the power supply control signal from BMC1 and CPLD1 to CPLD2 via the CDFP cable involves the connection between CPLD1 and the SW's downlink - memory device interface. Figure 6 is the connection diagram of CPLD1 and the memory device interface according to the embodiment of the present application. As Figure 6 shown, the CDFP connector of the memory switching board (i.e., the aforementioned memory device interface) needs to lead out a specific Pin - the pin corresponding to the Power Enable signal (i.e., the aforementioned power supply control pin), and it is necessary to ensure that the pin sequence of the CDFP connector of the memory switching board is unified with the Pin sequence of the memory expansion board. The control end of each Power Enable signal (i.e., the PWREN signal, i.e., the aforementioned power supply control signal) is CPLD1, which is connected to the CDFP connector of the memory expansion board via the CDFP cable, and the power supply control of the MXC and DIMM is realized through CPLD2. In addition, the connection relationship between the CDFP connectors of the memory switching board and the memory expansion board is not fixed. All the downlink ports of the memory switching board can be randomly connected to any CDFP port of the CDFP connector of the memory expansion board to use the memory devices under this port.
[0123] After the power supply control signal is transmitted to CPLD2 via the CDFP cable and CDFP interface, CPLD2 will transmit the enable signal included in the power supply control signal to the corresponding power supply module. Figure 7 is a schematic diagram of a CPLD2 power supply control scheme according to the embodiment of the present application. As Figure 7As shown, each combination of 8 MXC and DIMM on the memory expansion board (i.e., the aforementioned storage components) has an independent power supply module (the power supply module here is the power supply module in BaseBoard2, i.e., the aforementioned first power supply module). The input control of the first Power rail (i.e., the aforementioned first power supply channel) - P12V of each power supply module is enabled by CPLD2, and the Power good signal (i.e., the aforementioned first feedback signal) of the last Power rail (i.e., the aforementioned first feedback channel) - P0V9 is sent to CPLD2 to indicate the power supply status of the combination of MXC and DIMM. In this way, the individual power-on and power-off of each combination of MXC and DIMM can be achieved, meeting the requirements of memory resource reallocation.
[0124] For the logical interaction between BMC1, CPLD1, and CPLD2, the present application also provides an alternative implementation. Specifically, first define 4 Bytes (bytes) in CPLD1 to store the power supply control signal Power Enable. A total of 32 bits (bits) in 4 Bytes (i.e., the aforementioned multiple storage bits) correspond to 32 ports of 2 memory exchange boards. Interact between BMC1 and CPLD1 through the I2C bus to control the Power Enable Pin (i.e., the aforementioned power supply control pin) connected to CPLD1. The BMC can restart the MXC. Which specific combination of MXC and DIMM on the memory expansion board each storage bit corresponds to depends on the specific connection relationship of the CDFP cable. More specifically, the control can be implemented with the following expressions in the code:
[0125] a) Define four registers:
[0126] wire [7:0] w_bmcTOcpld_SW0_CDFP_PWREN_0;
[0127] wire [7:0] w_bmcTOcpld_SW0_CDFP_PWREN_1;
[0128] wire [7:0] w_bmcTOcpld_SW1_CDFP_PWREN_0;
[0129] wire [7:0] w_bmcTOcpld_SW1_CDFP_PWREN_1;
[0130] b) Assign values through the assign statement:
[0131] For example, assign o_PWREN_CDFP0_N_SW0 = w_bmcTOcpld_SW0_CDFP_PWREN_0 [7];
[0132] Assign 32 bits to the corresponding power supply control pins connected to CPLD1 in the above format in sequence.
[0133] c) Through the I2C communication module of the CPLD, data transmission is achieved between the BMC and the CPLD.
[0134] More specifically, the interaction between BMC1 and CPLD1 and CPLD2 involves the interaction when the entire server is powered on and the interaction during the operation of the server host. When the entire server is powered on, the mCPU and BMC2 control the memory expansion board CPLD2 to directly pull up the P12V_0~P12V_7 levels, so that the power supply module supplies power to all combinations of MXC and DIMM. Then, after receiving the corresponding Power good signal for 200 ms, the ready signal of the MXC is pulled up. During the operation of the server host, when the storage resources allocated by the storage switch for the server host are adjusted, CPLD2 monitors the rising edge and falling edge of the power supply control signal PWREN input through the CDFP interface in real time. When triggered by the falling edge of PWREN input through the CDFP interface, the VR (Voltage Regulator) EN of the corresponding P12V is pulled low, so that the power supply module stops supplying power to the corresponding MXC and DIMM. When triggered by the rising edge of PWREN input through the CDFP interface, the VR EN of the corresponding P12V is pulled high, so that the power supply module starts supplying power to the corresponding MXC and DIMM. The cooperation involving BMC1 is as follows:
[0135] Power-off: BMC1 sets the corresponding bit of the register to 0 (which specific port depends on the specific connection relationship), and then through CPLD1, pulls low the PWREN of the CDFP interface corresponding to the MXC of the group to be powered off.
[0136] Power-on: BMC1 sets the corresponding bit of the register to 1 (which specific port depends on the specific connection relationship), and then through CPLD1, pulls high the PWREN of the CDFP interface corresponding to the MXC of the group to be powered on.
[0137] Through the above content, the hardware level adopts the method of separately supplying power to each MXC and DIMM, and the logical control coordinates the power on and off of the memory resource pool through the interaction and communication between the CPLD and BMC, realizing the dynamic allocation of CXL memory resources in the memory resource pool, and being able to dynamically allocate CXL memory resources to the host according to the needs of the host service and flexible deployment, thereby improving the utilization rate of the entire memory and reducing the memory usage cost.
[0138] The above are only the preferred embodiments of the present application and are not used to limit the present application. For those skilled in the art, various changes and modifications can be made to the present application. Any modifications, equivalent replacements, improvements, etc. made within the principle of the present application shall be included within the protection scope of the present application.
Claims
1. A server, It is characterized in that The device comprises: a server host, a storage switch, a plurality of storage components, a control component and a power supply component, wherein the control component is connected to the power supply component, the storage switch is connected between the server host and the plurality of storage components, the power supply component is respectively connected to the plurality of storage components, and the control component is connected to the server host; The storage switch is used to use the multiple storage components as a storage resource pool to provide storage resources for the server host; The control component is used to detect resource adjustment information of the server host during the operation of the server host, wherein the resource adjustment information is used to indicate the adjustment status of the storage resources allocated by the storage switch to the server host; and adjust the power supply status of each storage component by the power supply component to match the resource adjustment information; The control component includes: a first control machine, a first controller, a first device and a second device, wherein the first control machine is connected to the server host and the first controller, the first device is connected to the storage switch and the first controller, the second device is connected to the multiple storage components and the power supply component, the multiple first cable interfaces deployed on the storage switch are connected one-to-one with the second cable interfaces deployed on each of the storage components, the storage switch is used to transmit data to the storage component through the first cable interface and the second cable interface, the first device is connected to each of the first cable interfaces, and the second device is connected to each of the second cable interfaces; the first control machine is used to detect the resource adjustment information; The resource adjustment information is converted into state change information, wherein the state change information is used to indicate a target storage component among the multiple storage components whose usage status on the server host has changed; the state change information is sent to the first controller; the first controller is used to generate a power supply control signal for each storage component according to the state change information, and to write the power supply control signal into the first device; the first device is used to transmit the power supply control signal corresponding to each storage component to the second cable interface through the first cable interface; the second device is used to receive the power supply control signal corresponding to the storage component from the second cable interface, and transmit the power supply control signal to the power supply component.
2. The server according to claim 1, characterized in that: The first control machine is further used to detect the resource adjustment information according to the resource allocation information of the server host, wherein the resource allocation information is used to indicate the storage resources allocated by the storage switch to the server host.
3. The server according to claim 2, characterized in that: The first control machine is used for: Collecting the current resource allocation information from the server host; Comparing the current resource allocation information with the resource allocation information collected last time; When the current resource allocation information is consistent with the resource allocation information collected last time, determining that the resource adjustment information is first adjustment information, wherein the first adjustment information is used to indicate that the storage resources allocated by the storage switch to the server host have not been adjusted; When the current resource allocation information is inconsistent with the resource allocation information collected last time, the resource adjustment information is determined to be second adjustment information, wherein the second adjustment information is used to indicate that the storage resources allocated by the storage switch to the server host have been adjusted.
4. The server according to claim 3, characterized in that: The first control machine is used for: In a case where the resource adjustment information is first adjustment information, converting the first adjustment information into first change information, wherein the first change information is used to indicate that the target storage component is not included in the plurality of storage components, and the state change information includes the first change information; In the case where the resource adjustment information is the second adjustment information, the target storage component is extracted from the current resource allocation information and the resource allocation information collected last time to obtain second change information, wherein the second change information is used to indicate that the usage status of the target storage component among the multiple storage components on the server host has changed, and the status change information includes the second change information.
5. The server according to claim 4, characterized in that: The first control machine is used for: Determine a first storage component set currently used by the server host according to the current resource allocation information, and determine a second storage component set last used by the server host according to the resource allocation information collected last time; Calculating the union and intersection of the first storage component set and the second storage component set; A difference set between the union and the intersection is calculated, wherein the storage component in the difference set is the target storage component.
6. The server according to claim 1, characterized in that: A plurality of enabling terminals are disposed on the power supply component, and the plurality of enabling terminals correspond one to one with the plurality of storage components; The second device is connected to the plurality of enable terminals, and the power supply control signal corresponding to each of the storage components includes an enable signal corresponding to each of the storage components; The second device is used to transmit the enable signal corresponding to each of the storage components to the enable terminal corresponding to each of the storage components.
7. The server according to claim 6, characterized in that: A plurality of storage bits are created in the first device, the plurality of storage bits corresponding one-to-one to the plurality of storage components; The first controller is used to write the power supply control signal corresponding to each storage component into the storage bit corresponding to each storage component; The first device is used to transmit the data on the storage bit corresponding to each storage component to the second device through the first cable interface corresponding to each storage component; The second device is used to control the enabling end corresponding to each storage component according to the data transmitted on the second cable interface corresponding to each storage component.
8. The server according to claim 1, characterized in that: The power supply component includes a plurality of first power supply modules, each of the plurality of first power supply modules is connected to the control component, and each of the first power supply modules is also connected to the plurality of storage components one by one; The control component is used to generate a power supply control signal corresponding to each first power supply module according to the resource adjustment information; The first power supply module is used to supply power to the corresponding storage component according to the power supply control signal.
9. The server according to claim 8, characterized in that: The control component is connected to the plurality of first power supply modules in a one-to-one correspondence through a plurality of first power supply channels; The control component is further used to send the power supply control signal to the corresponding first power supply module through each of the first power supply channels.
10. The server according to claim 9, characterized in that A plurality of signal output terminals are disposed on the control component, an enabling terminal is disposed on each of the first power supply modules, and the plurality of signal output terminals are connected with the corresponding enabling terminals to form the plurality of first power supply channels; The control component is used to send a corresponding enable signal to the corresponding first power supply module through each of the first power supply channels, wherein the power supply control signal includes the enable signal.
11. The server according to claim 8, characterized in that: Each of the storage components includes: a storage controller, and one or more storage units; A power supply port is disposed on each of the first power supply modules, and the power supply port is used to connect the storage controller and the one or more storage units; The first power supply module is used to supply power to the storage controller and the one or more storage units through the power supply port according to the power supply control signal.
12. The server according to claim 11, characterized in that The power supply port includes: a first port, and one or more second ports, the first port is connected to the storage controller, and the one or more second ports are connected to the one or more storage units in a one-to-one correspondence; The first power supply module is used to convert the power supply voltage into the first input voltage of the storage controller according to the power supply control signal, and provide the first input voltage to the storage controller through the first port; and, according to the power supply control signal, convert the power supply voltage into the second input voltage of the storage unit, and provide the second input voltage to the corresponding storage unit through the corresponding second port.
13. The server according to claim 1, characterized in that: The power supply component is also connected to the storage switch; The control component is further used to control the power supply component to supply power to the plurality of storage components when the server host is started; When the plurality of storage components are powered on, the power supply component is controlled to supply power to the storage switch; and when the storage switch is powered on, the server host is controlled to start.
14. The server according to claim 13, characterized in that: The power supply component includes: a plurality of first power supply modules and a second power supply module, each of the first power supply modules is also connected to the plurality of storage components one by one; the second power supply module is connected to the storage switch; the plurality of first power supply modules and the second power supply module are both connected to the control component; The control component is used to control the multiple first power supply modules to supply power to the multiple storage components and receive first feedback signals returned by the multiple first power supply modules to obtain multiple first feedback signals when the server host is started; control the second power supply module to supply power to the storage switch and receive the second feedback signal returned by the second power supply module when the multiple first feedback signals are all used to indicate that the corresponding storage components are powered on; and control the server host to start up when the second feedback signal is used to indicate that the storage switch is powered on.
15. The server according to claim 14, characterized in that: The control component is connected to the multiple first power supply modules in a one-to-one correspondence through multiple first power supply channels and multiple first feedback channels, and the control component is connected to the second power supply module through the second power supply channel and the second feedback channel; The control component is used to control the corresponding first power supply module to supply power to the corresponding storage component through the first power supply channel, and receive the first feedback signal returned by the corresponding first power supply module through the corresponding first feedback channel; The control component is further used to control the second power supply module to supply power to the storage switch through the second power supply channel, and receive a second feedback signal returned by the second power supply module through the second feedback channel.
16. The server according to claim 13, characterized in that The control component includes: a third control machine, a fourth control machine and a fifth control machine, the third control machine, the fourth control machine and the fifth control machine are interconnected, the fourth control machine and the fifth control machine are both connected to the power supply component, and the third control machine is connected to the server host; The third control machine is used to control the power supply component to supply power to the multiple storage components through the fifth control machine when the server host has been started; control the power supply component to supply power to the storage switch through the fourth control machine when the multiple storage components are all powered on; and control the server host to start up when the storage switch is powered on.
17. The server according to claim 16, characterized in that The fourth control machine includes: a third device and a fourth device, the third device is connected to the fourth device, the fifth control machine includes: a fifth device and a sixth device, the fifth device is connected to the sixth device, and the third control machine, the third device and the fifth device are interconnected; The power supply component includes: a plurality of first power supply modules and a second power supply module, each of the first power supply modules is also used to be connected to the plurality of storage components in a one-to-one correspondence; the second power supply module is connected to the storage switch, the fourth device is connected to the second power supply module, and the sixth device is connected to all of the plurality of first power supply modules; The third control machine is used to notify the fifth device to supply power to the multiple storage components when the server host is started; notify the third device to supply power to the storage switch when the multiple storage components are all powered on; and control the server host to start when the storage switch is powered on; The fifth device is used to control the plurality of first power supply modules to supply power to the plurality of storage components through the sixth device; The third device is used to control the second power supply module to supply power to the storage switch through the fourth device.
Citation Information
Patent Citations
Server and starting method thereof
CN103777974A
Data Processing System And Method of Operating Same
CN110442303A
Method for improving efficiency of memory use by memory borrowing and lending between servers
JP2011215663A