Board card, power supply system and monitoring current calibration method for server
By setting a current source and controller on the server board, self-calibration is achieved when the board is powered on, which solves the problem of inconsistent current detection caused by material differences and aging, and improves the accuracy of current monitoring and the stability of the server.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2026-01-08
- Publication Date
- 2026-03-31
AI Technical Summary
Existing server boards cannot be fully tested at the factory, resulting in inconsistent current detection due to material differences and aging, which affects the reliability and energy efficiency of the server.
A current source, a switch, and a controller are set on the board. By providing a test current when the board is powered on, the sampling parameters are adjusted by the controller to make the detection current values of each pin consistent, thus achieving self-calibration.
This improves the accuracy of current monitoring during the use of the circuit board, avoids inconsistencies in the detected current values caused by material errors and aging, and enhances the stability and energy efficiency of the server.
Smart Images

Figure CN121499870B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of circuit board technology, and more specifically to a circuit board for a server, a power supply system, and a method for monitoring current calibration. Background Technology
[0002] The continuous evolution of server power supply architecture has placed higher demands on power distribution and management. Current server power supply architecture uses AC input, which is converted to a 12V or 54V DC bus, and then stepped down to the low voltage required by the processor through a high-efficiency DC-DC converter.
[0003] In server voltage conversion, multiphase converters are commonly used to convert 12V input to output below 2V. The magnitude and accuracy of the current detected by the controller at different power levels in the multiphase converter directly affect the stability and energy efficiency of the processor. However, since it is impossible to test every server board at the factory, material differences and material aging between different boards can lead to reduced server reliability. Summary of the Invention
[0004] In view of the above problems, this application provides a board, power supply system and current monitoring calibration method for a server.
[0005] According to a first aspect of this application, a board for a server is provided, comprising: a current source for outputting a test current; multiple power stages for powering a processor of the server, each power stage having a first pin for providing a monitoring current related to the power supply of the power stage; a switching switch having a control terminal, a first input terminal, a second input terminal, and an output terminal, the first input terminal being connected to the current source to receive the test current, the second input terminal being connected to the first pin of the multiple power stages to receive the monitoring current, the switching switch being used to electrically connect the first input terminal to the output terminal when the control terminal receives a first switching signal, and to electrically connect the second input terminal to the output terminal when the control terminal receives a second switching signal; and a first controller having... The system has multiple second pins. The first controller stores sampling parameters for each second pin. These second pins are connected to the output of a switching switch. The first controller detects the current flowing through each second pin based on the sampling parameters to obtain the detected current values of the multiple second pins. The second controller is connected to the current source, the control terminal of the switching switch, and the first controller. In response to the board being powered on and the server not being started, it provides a first switching signal to the control terminal of the switching switch, receives the detected current values of the multiple second pins from the first controller, adjusts the sampling parameters stored in the first controller based on the received detected current values to make the detected current values of the multiple second pins consistent, and provides a second switching signal to the control terminal of the switching switch.
[0006] The second aspect of this application provides a power supply system for a server, comprising: the aforementioned board and a host computer, wherein the host computer is electrically connected to a second controller in the board.
[0007] A third aspect of this application provides a current monitoring calibration method, executed by the aforementioned board. The method includes: in response to the board being powered on and the server not being started, a second controller provides a first switching signal to the control terminal of a switch; the switch, in response to the first switching signal, electrically connects its first input terminal to its output terminal, such that a test current output by a current source is provided to multiple second pins of the first controller; the first controller detects the current flowing through each second pin based on sampling parameters, obtains the detected current values of the multiple second pins, and provides them to the second controller; the second controller adjusts the sampling parameters stored in the first controller based on the received detected current values of the multiple second pins, such that the detected current values of the multiple second pins of the first controller are consistent; the second controller provides a second switching signal to the control terminal of the switch; the switch, in response to the second switching signal, electrically connects its second input terminal to its output terminal, such that the first pins of multiple power stages are electrically connected to the multiple second pins of the first controller.
[0008] According to the embodiments of this application, by setting a current source, a switching switch and a second controller on the board, a test current can be provided through the current source when the board is powered on and the server is not started. The second controller adjusts the sampling parameters of the first controller based on the detected current value of each second pin fed back by the first controller, thereby realizing the self-calibration of current sharing. This can avoid the problem that the detected current values of different second pins of some boards in the same batch are inconsistent in actual use due to material errors, or that the detected current values are inconsistent due to material aging after long-term use of the board, thereby improving the accuracy of current monitoring during the use of the board. Attached Figure Description
[0009] The above-mentioned contents, other objects, features and advantages of this application will become clearer from the following description of embodiments with reference to the accompanying drawings, in which:
[0010] Figure 1 A schematic diagram of the current detection method used in the prior art is shown;
[0011] Figure 2 A structural block diagram of a board according to an embodiment of this application is shown;
[0012] Figure 3 A flowchart illustrating a current sharing calibration test performed on a board according to an embodiment of this application is shown;
[0013] Figure 4 A structural block diagram showing the connection between the board and the host computer according to an embodiment of this application is shown;
[0014] Figure 5 A flowchart illustrating the accuracy calibration of a board according to an embodiment of this application is shown;
[0015] Figure 6 A flowchart illustrating the accuracy self-calibration of a board according to an embodiment of this application is shown;
[0016] Figure 7 A flowchart illustrating current accuracy calibration of a board according to an embodiment of this application is shown;
[0017] Figure 8 A flowchart illustrating current self-calibration of a board according to an embodiment of this application is shown;
[0018] Figure 9 A flowchart illustrating current calibration when a board according to an embodiment of this application is connected to a host computer is shown.
[0019] Figure 10 A flowchart of a monitoring current calibration method according to an embodiment of this application is shown;
[0020] Figure 11 A schematic diagram of a graphical user interface according to an embodiment of this application is shown. Detailed Implementation
[0021] The embodiments of this application will now be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of this application. In the following detailed description, numerous specific details are set forth to provide a thorough understanding of the embodiments of this application for ease of explanation. However, it will be apparent that one or more embodiments may be implemented without these specific details. Furthermore, descriptions of well-known structures and technologies are omitted in the following description to avoid unnecessarily obscuring the concepts of this application.
[0022] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the scope of this application. The terms “comprising,” “including,” etc., as used herein indicate the presence of the stated features, steps, operations, and / or components, but do not exclude the presence or addition of one or more other features, steps, operations, or components.
[0023] All terms used herein (including technical and scientific terms) have the meanings commonly understood by those skilled in the art, unless otherwise defined. It should be noted that the terms used herein are to be interpreted in a manner consistent with the context of this specification, and not in an idealized or overly rigid way.
[0024] When using expressions such as "at least one of A, B and C", they should generally be interpreted in accordance with the meaning that is commonly understood by those skilled in the art (e.g., "a system having at least one of A, B and C" should include, but is not limited to, a system having A alone, a system having B alone, a system having C alone, a system having A and B, a system having A and C, a system having B and C, and / or a system having A, B and C, etc.).
[0025] Figure 1 A schematic diagram of the current detection method used in the prior art is shown.
[0026] Current sensing technologies generally employ methods based on inductor DC resistance or the on-resistance (RDS(on)) of metal-oxide-semiconductor transistors (MOSFETs) to achieve accurate detection and balanced distribution of multiphase currents. Taking Monolithic Power Systems (MPS) as an example, it utilizes current mirror technology (see [link to MPS technology]). Figure 1 Accurate current sampling is achieved by integrating a driver into the power stage of its multiphase controller. The current signal is output through a certain ratio and then sent to the controller of the multiphase controller for calculation and processing to obtain the real-time current, thereby realizing current detection in a multiphase power supply system.
[0027] To improve current sensing capabilities, current accuracy testing is required. Existing testing methods mainly employ a small-batch sampling strategy, which involves selecting a single or a few boards and applying a static load to the power rail under test using a specialized test fixture in a laboratory environment. Simultaneously, the test fixture is used to collect and monitor the total current, and combined with extended tools to monitor the current of each phase, thereby evaluating the current accuracy and multi-phase current sharing capability of the power module.
[0028] However, the aforementioned existing technologies may introduce deviations due to the use of test fixtures. For example, the aging of the test fixtures and the limitations of data acquisition resolution may prevent the acquisition of raw data. Furthermore, the sampling inspection strategy is insufficient to fully reflect the consistency of mass-produced boards, making it impossible to test and calibrate each mass-produced board individually. Material parameter errors of various components in the board will also introduce deviations. For example, material parameter errors such as the accuracy of current sensing resistors and analog-to-digital converters may limit the detection accuracy. At the same time, during the use of the board, components such as current sensing resistors and analog-to-digital converters will experience performance degradation as the working time increases, which will also introduce deviations. These deviations may cause uneven current distribution between phases in the voltage converter, resulting in local overheating and thus limiting the maximum power output of the system.
[0029] In view of this, embodiments of this application provide a board for a server and a method for calibrating monitoring current. The board includes a current source; multiple power stages, each power stage having a first pin for providing a monitoring current related to the power supply of the power stage; a switching switch for electrically connecting a first input terminal to an output terminal, and electrically connecting a second input terminal to an output terminal when a second switching signal is received at a control terminal; a first controller storing sampling parameters for each second pin, the first controller detecting the current flowing through each second pin based on the sampling parameters to obtain multiple detection current values for the second pins; a second controller providing a first switching signal to the control terminal of the switching switch in response to the board being powered on and the server not being started; and adjusting the sampling parameters stored in the first controller based on the received detection current values to make the detection current values of the multiple second pins consistent.
[0030] Figure 2 A structural block diagram of a board according to an embodiment of this application is shown.
[0031] According to an embodiment of this application, a board for a server includes a current source 100, multiple power stages 200, a switching switch 300, a first controller 400, and a second controller 500.
[0032] The current source 100 is used to output test current; the power stage 200 is used to power the server's processor. The power stage 200 has a first pin 210, which is used to provide monitoring current related to the power supply of the power stage 200; the switch 300 has a control terminal 310, a first input terminal 320, a second input terminal 330, and an output terminal 340. The first input terminal 320 is connected to the current source 100 to receive test current, and the second input terminal 330 is connected to the first pins 210 of multiple power stages 200 to receive monitoring current. The switch 300 is used to electrically connect the first input terminal 320 to the output terminal 340 when the control terminal 310 receives a first switching signal, and to electrically connect the second input terminal 330 to the output terminal 340 when the control terminal 310 receives a second switching signal.
[0033] The first controller 400 has multiple second pins 410. The first controller 400 stores sampling parameters for each second pin 410. The multiple second pins 410 are connected to the output terminal 340 of the switch 300. The first controller 400 is used to detect the current flowing through each second pin 410 based on the sampling parameters to obtain the detected current values of the multiple second pins 410. The second controller 500 is connected to the current source 100, the control terminal 310 of the switch 300 and the first controller 400. It is used to provide a first switching signal to the control terminal 310 of the switch 300 in response to the board being powered on and the server not being started. It receives the detected current values of the multiple second pins 410 of the first controller 400, adjusts the sampling parameters stored in the first controller 400 based on the received detected current values to make the detected current values of the multiple second pins 410 consistent, and provides a second switching signal to the control terminal 310 of the switch 300.
[0034] The current source 100 can output a specified current as needed, thereby replacing the first pin 210 of the power stage 200 to output test current to the second pin 410 of the first controller 400. In one embodiment, the first pin 210 can output a current of magnitude m, and the current source 100 can output a test current of up to m / 8. The current source 100 can have a power management bus (PMBus) function, through which it can be controlled by the second controller 500 to output a specified test current. Simultaneously, the current source 100 can also have overcurrent protection (OCP) and overvoltage protection (OVP) functions. If the output current of the current source 100 is too large, it will cause overvoltage damage to the switching switch 300 and the second pin 410 of the first controller 400. Adding external protection circuitry, such as current-limiting resistors and transient voltage suppressor (TVS) diodes to achieve overcurrent and overvoltage protection not only increases the complexity of circuit layout but may also introduce more errors.
[0035] The buck converter may include a first controller 400 and multiple power stages 200. The first controller 400 may be a voltage regulator controller. A first pin 210 is the current monitor output pin (IMON) of the power stage 200, and a second pin 410 is the current sense pin (CS) of the voltage regulator controller. The second controller 500 may be a microcontroller unit (MCU).
[0036] The switching switch 300 can simulate the function of a single-pole double-throw switch using an analog chip, allowing the second pin 410 of the first controller 400 to switch between the first pin 210 of the power stage 200 and the current source 100. The control terminal 310 of the switching switch 300 can be a general-purpose input / output (GPIO) pin to receive a switching signal sent by the second controller 500. This switching signal controls the switching switch 300 to switch between the first pin 210 and the current source 100 via a high or low level.
[0037] When the board is powered on but the server is not started, the controller can send a first switching signal to the switch 300. After receiving the first switching signal, the controller of the switch 300 can electrically connect the first input terminal 320 and the output terminal 340. That is, the current source 100 can output test current to the first controller 400 through the switch 300. The first controller 400 can monitor the voltage at each second pin 410, calculate the detection current value flowing through the second pin 410 based on the voltage and the corresponding sampling parameters, and feed back the detection current value of each second pin 410 to the second controller 500.
[0038] After receiving multiple detected current values from the second pins 410, the second controller 500 can adjust the sampling parameters in the first controller 400 based on these multiple detected current values, ensuring that the subsequently detected current values are consistent, thereby achieving current sharing adjustment. The sampling parameters described in this embodiment may refer to the sampling resistor. .
[0039] After the current sharing adjustment is completed, the second controller 500 can send a second switching signal to the control terminal 310 of the switching switch 300. After receiving the second switching signal, the switching switch 300 can electrically connect the second input terminal 330 and the output terminal 340. That is, the power stage 200 can output monitoring current to the first controller 400 through the switching switch 300, and the server can start normally at this time.
[0040] According to the embodiments of this application, by setting a current source, a switching switch and a second controller on the board, a test current can be provided through the current source when the board is powered on and the server is not started. The second controller adjusts the sampling parameters of the first controller based on the detected current value of each second pin 410 fed back by the first controller, thereby realizing the self-calibration of current sharing. This can avoid the problem that the detected current values of different second pins 410 of some boards in the same batch are inconsistent in actual use due to material errors, or that the detected current values are inconsistent due to material aging after long-term use of the board, thereby improving the accuracy of current monitoring during the use of the board.
[0041] Figure 3 A flowchart illustrating a current sharing calibration test performed on a board according to an embodiment of this application is shown.
[0042] According to an embodiment of this application, the second controller 500 is further configured to: calculate the difference between the detection current values of a plurality of second pins 410; if the difference is greater than a predetermined threshold, adjust the sampling parameters of at least some of the plurality of second pins 410, and return the detection current values of the plurality of second pins 410 received by the first controller 400; if the difference is less than or equal to the predetermined threshold, determine that the detection current values of the plurality of second pins 410 are consistent, and provide a second switching signal to the control terminal 310 of the switching switch 300.
[0043] The predetermined threshold can be set according to actual needs, for example, ±10%.
[0044] During the current sharing calibration process described above, the second controller 500 can read the maximum collector current (ICCMAX) parameter from the first controller 400. This parameter represents the maximum current required by the processor, such as 83A. At this time, the second controller 500 can output an ICCMAX command to the current source 100 based on this parameter. After receiving the command, the current source 100 can output an ICCMAX current, such as a test current of 83 / 8A.
[0045] The second controller 500 receives the detection current values of different second pins 410 from the first controller 400. It can calculate the difference between the detection current values of multiple second pins 410 and determine whether the difference is greater than a predetermined threshold. If the difference is greater than the preset threshold, the sampling parameters of some second pins 410 can be adjusted. At this time, it receives the detection current values of multiple second pins 410 from the first controller 400 again. The detection current values are calculated based on the adjusted sampling parameters. The difference between the detection current values is calculated and compared with the preset threshold until the difference is less than or equal to the preset threshold. Then it can be determined that the detection current values of multiple second pins 410 are consistent. At this time, in operation S306, the second controller 500 can provide a second switching signal to the switching switch 300 to start the server.
[0046] In one specific embodiment, see Figure 3 In operation S301, when the second controller 500 is a microcontroller (MCU), the microcontroller can control the current source 100 to output a test current, such as the ICCMAX current. In operation S302, the second controller 500 can read the actual current (i.e., the test current) of the current source 100 and the detected current value from the first controller. In operation S303, a current sharing result is calculated based on the actual current and the detected current value. This current sharing result can be displayed in a table, and it includes the calculated deviation (i.e., the difference). In operation S304, it is determined whether the deviation is within the range (i.e., greater than a predetermined threshold is within the range). If it is not within the range, then in operation S305, the sampling parameters (such as the sampling resistor) are adjusted based on the deviation. Adjustments are made and the process returns to operation S301 until the deviation is within the range, thus completing the flow equalization accuracy test.
[0047] According to the embodiments of this application, by calculating the difference between different detection current values, some sampling parameters are adjusted based on the magnitude of the difference and a predetermined threshold, so that the different detection current values are kept consistent. This avoids the problem of inconsistent detection current values caused by material errors or material aging, and improves the accuracy of current monitoring.
[0048] In the process of adjusting some of the adopted parameters, a target parameter is first determined from multiple adopted parameters based on the differences. This target parameter causes the deviation between the detection current value of the second pin 410 and the average current value of the detection current value of other second pins 410 to be not within the deviation threshold (such as ±5%). Thus, the target parameter can be adjusted.
[0049] During the adjustment of the target parameter, if the detected current value corresponding to the target parameter is greater than the average current value, it can be iteratively modified according to a preset numerical gradient. For example, if the target parameter is 1 ohm, it can be increased to 1.1 ohms in increments of 0.1 ohms. Similarly, if the detected current value is less than the average current value, the target parameter can be decreased by 0.1 ohms sequentially using gradient modification until the difference between multiple subsequently detected current values is less than or equal to a predetermined threshold.
[0050] In another embodiment, different preset numerical gradients can be set based on different deviation ranges. For example, in the deviation range of (5%~10%), the preset numerical gradient can be 0.1 ohms, and in the deviation range of (10%~15%), the preset numerical gradient can be 0.3 ohms. This example is only for illustration, and the specific gradient can be set according to actual needs.
[0051] According to the embodiments of this application, the target parameter is determined by detecting the deviation between the current value and the average current value, which can achieve targeted and rapid adjustment of the target parameter, improving the efficiency of current sharing calibration. At the same time, gradient modification by preset numerical gradient improves the accuracy of target parameter modification and avoids the problems of low efficiency and long time of current sharing calibration caused by excessive parameter modification.
[0052] Figure 4 A structural block diagram showing the connection between the board and the host computer according to an embodiment of this application is shown. Figure 5 A flowchart illustrating the precision calibration of a board according to an embodiment of this application is shown.
[0053] According to an embodiment of this application, the second controller 500 is further configured to: receive a first accuracy threshold from the host computer in response to a first calibration command from the host computer; calculate the difference between the detection current values of a plurality of second pins 410; if the difference is greater than the first accuracy threshold, adjust the sampling parameters of at least some of the plurality of second pins 410, and return the detection current values of the plurality of second pins 410 received by the first controller 400; if the difference is less than or equal to the first accuracy threshold, determine that the detection current values of the plurality of second pins 410 are consistent, and provide a second switching signal to the control terminal 310 of the switching switch 300.
[0054] The first precision threshold can be a threshold configured by the staff through the host computer, for example, it can be configured as ±3%.
[0055] See Figure 4When the host computer communicates with the board via USB, the operator sends a first calibration command and a first accuracy threshold to the second controller 500 through the host computer. The second controller 500 calculates the corresponding differences based on the detected current values of multiple second pins 410 received from the first controller 400. If the difference is greater than the first accuracy threshold set by the operator, the sampling parameters of some second pins 410 need to be adjusted to complete the current sharing calibration. The method for determining some second pins 410 is described above and will not be repeated here. The second controller 500 again executes the received detected current values of the second pins 410 and the difference calculation, and determines whether the difference is greater than the first accuracy threshold. If it is still greater, the sampling parameters are adjusted until the difference is less than the first accuracy threshold, that is, the detected current values of multiple second pins 410 are consistent. At this time, the second controller 500 can send a second switching signal to the switching switch 300.
[0056] In one specific embodiment, see Figure 5 When staff use the host computer to debug the board, they first start the corresponding debugging software in the host computer, and then connect to the second controller 500 (such as a microcontroller MCU) in the board via USB in operation S501 and verify whether the communication is successful. In operation S502, the host computer can read the device information (such as the board number) and initial parameters (such as the sampling parameters mentioned above and the calibration parameters mentioned below) of the board through the second controller 500. After that, the main loop can be entered in operation S503.
[0057] After entering the main loop, in operation S504, the host computer can send a current sharing accuracy test command (i.e., the first calibration command) to the second controller 500, and can also send a current command to make the current source 100 output the corresponding test current. Therefore, the current sharing accuracy test can be performed in operation S505. For details on the current sharing accuracy test, please refer to... Figure 3 The only difference between the text content and the actual content is after connecting to the host computer. Figure 3 When the judgment deviation is within the range, proceed. Figure 4 In the main loop. Furthermore... Figure 3 Whether the deviation is within the range can also be determined by staff on the host computer.
[0058] During the above-mentioned flow equalization calibration (i.e. flow equalization accuracy test), the sampling parameters can be modified by gradient modification of the target parameters based on the preset numerical gradient described above, which will not be elaborated here.
[0059] According to the embodiments of this application, the current sharing can be customized by communicating with the board through the host computer. Thus, the staff can set the corresponding accuracy threshold for the board based on the board's working performance or working time. After the current sharing calibration is completed, the board can achieve the performance required by the user, thereby improving the accuracy of performance monitoring when the board is working normally.
[0060] According to an embodiment of this application, the first controller also stores correction parameters for each of the second pins 410. The first controller 400 is also used to correct the detection current values of the multiple second pins 410 using the correction parameters and then provide them to the second controller 500.
[0061] The correction parameters may include offset error and gain error. The first controller 400 detects the voltage at the second pin 410, calculates the detected current value by combining it with the sampling parameters, and then corrects the detected current value using the correction parameters to obtain the corrected detected current value. The corrected detected current value can then be transmitted to the second controller 500 so that the second controller 500 can perform current sharing calibration based on multiple corrected detected current values.
[0062] Figure 6 A flowchart illustrating the accuracy self-calibration of a board according to an embodiment of this application is shown.
[0063] According to an embodiment of this application, the second controller 500 is further configured to: control the current source 100 to output a plurality of test currents that increase sequentially before providing a second switching signal to the control terminal 310 of the switching switch 300; receive a detection current value generated based on the test current from the first controller 400 for each of the plurality of test currents; and adjust the correction parameters in the first controller 400 based on the plurality of test currents and the detection current values for the plurality of test currents, so that the corrected detection current value provided by the first controller 400 to the second controller 500 is consistent with the corresponding test current.
[0064] Multiple test currents can be different multiples of the ICCMAX current, such as 10%, 20%, 30%...100% of the ICCMAX current.
[0065] After the current sharing calibration is completed, the second controller 500 can control the current source 100 to output the above multiple test currents in sequence. The second controller 500 can receive the detection current value corresponding to each test current from the first controller 400, such as the detection current value corresponding to 10% ICCMAX current, 20% ICCMAX current, 30% ICCMAX current, ... 100% ICCMAX current.
[0066] Based on the aforementioned multiple test currents and their corresponding detection current values, the calibration parameters in the first controller 400 are adjusted to complete the current accuracy calibration. After the calibration parameters are adjusted, the detection current value corresponding to each test current can be received again. This detection current value is obtained based on the adjusted calibration parameters. At this time, through the aforementioned current accuracy calibration, the detection current value received by the second controller 500 at each second pin 410 can be made consistent with the corresponding test current.
[0067] In one specific embodiment, see Figure 6 During the current accuracy test, in operation S601, the second controller 500 (such as a microcontroller MCU) can control the current source 100 to output currents ranging from 0-100% to 10% Step, i.e., 10 test currents that increase sequentially in 10% increments. In operation S602, the second controller 500 reads the actual current of the current source (i.e., the test current) and receives the detection current value corresponding to each actual current from the first controller (such as a VR controller). In operation S603, the current accuracy result can be obtained based on the actual current and the detection current value. Based on this result, a current accuracy curve can be generated. In operation S604, the deviation (i.e., the correction parameter) can be calculated based on the current accuracy result and the curve. In operation S605, it is determined whether the deviation (which may be the slope deviation and bias deviation described below) is within the range. If it is determined that the deviation is not within the range, the correction parameter can be adjusted in operation S606, and the process can be repeated in operation S601 until the deviation is within the range, thus completing the current accuracy test.
[0068] According to an embodiment of this application, the second controller 500 controls the current source 100 to output multiple test currents sequentially, and combines the detection current value corresponding to each test current received from the first controller 400 to perform self-calibration of the current accuracy of the first controller 400 before the server starts. This enables accurate current monitoring after the server starts, indirectly improving the accuracy of server performance monitoring.
[0069] Figure 7 A flowchart illustrating current accuracy calibration of a board according to an embodiment of this application is shown. Figure 8 A flowchart illustrating current self-calibration of a board according to an embodiment of this application is shown.
[0070] According to an embodiment of this application, after completing the current sharing self-calibration, in operation S701, the second controller 500 can also control the current source to output multiple test currents that increase sequentially, such as 10% of the ICCMAX current...100% of the ICCMAX current. In operation S702, the second controller 500 reads multiple test currents from the current source 100 and multiple detection current values from the first controller 400. For any second pin 410, in operation S703, the second controller 500 can generate a corresponding current accuracy curve based on the multiple test currents and detection current values corresponding to the second pin 410. The horizontal axis of the curve is the test current, and the vertical axis is the detection current value. In operation S704, the slope of the curve is calculated by linear regression, and the slope deviation is obtained by comparing the test current. In operation S705, it is determined whether the slope deviation is within the error range. If so, the gain error in the calibration parameters is adjusted in operation S706. In operation S704, the second controller 500 can also calculate the overall bias of the current accuracy curve. By comparing the test current output by the current source 100, the bias deviation value can be obtained. In operation S705, it can be determined whether the bias deviation value is within the error range. If so, in operation S706, the offset error in the correction parameters can be adjusted based on the bias deviation value. After the current accuracy calibration is completed, the second controller 500 can provide a second switching signal to the switching switch 300 in operation S707.
[0071] In a complete embodiment, see Figure 8 In the aforementioned current self-calibration process, firstly, when the board is powered on and the server is not started, in operation S801, the second controller 500 reads the ICCMAX setting information from the first controller. This information reflects the maximum current required by the processor. In operation S802, the second controller 500 controls the current source 100 to output the ICCMAX current, i.e., the test current. In operation S803, the second controller 500 receives the detected current values at different second pins 410 from the first controller 400. Figure 6 In operation 604, it is determined whether the CS currents are consistent, i.e., whether current sharing is checked. If they are inconsistent, in operation S805, the second controller 500 samples the parameters (such as the sampling resistor) in the first controller 400. Adjustments are made and the process returns to operation S802 to repeat the current sharing self-calibration operation until the currents of each CS are consistent, at which point the current accuracy self-calibration test is entered.
[0072] When performing a current accuracy self-calibration test, in operation S806, the second controller 500 first calculates the magnitude of multiple test currents that increase sequentially, that is, according to the percentage setting of the ICCMAX current. For example, when i=0, the test current is 10% of the ICCMAX current, and so on. When i=9, the test current is 100% of the ICCMAX current, which are the current points in the figure. For each i-th test current, the following operations can be performed: In operation S807, the second controller 500 controls the current source 100 to output a specified current, such as 10% of the ICCMAX current, based on the required test current. In operation S808, the actual output current is read from the current source 100, i.e., the test current is read. In operation S809, the monitoring current is received from the first controller, i.e., the detection current value corresponding to the test current. In operation S810, the required test current is increased, i.e., it is confirmed that the current source needs to output the (i+1)-th test current. At this time, in operation S811, it is determined whether i is equal to 10. If it is equal to 10, the test current output last time is 100% of the ICCMAX current, and there is no need to output the specified current again. If it is not equal to 10, then return to execute operation S807 until all 10 specified currents are executed once.
[0073] In operation S812, the deviation is calculated based on 10 specified test currents and their corresponding detection current values. For details on the deviation calculation, please refer to [link / reference needed]. Figure 5 The system includes a text description, allowing operation S813 to determine if the deviation is within the acceptable range. If not, operation S814 adjusts the offset and gain error correction parameters in the first controller 400 and returns to execute the aforementioned 10 specified current test operations. If the deviation is determined to be within the acceptable range, operation S815 writes the corresponding parameters (such as the adjusted sampling and correction parameters) into the non-volatile memory (NVM) of the first controller 400, thus completing the current accuracy test.
[0074] According to an embodiment of this application, during the current accuracy calibration process, a current accuracy curve is constructed based on the test current and the detected current value. The correction parameters are modified by the slope and bias calculated from the current accuracy curve, so that the test current and the detected current value are consistent. This allows accuracy calibration to be completed before the server starts up, so that the detected current value can accurately reflect the magnitude of the monitored current when the server is working normally, thereby improving the accuracy of server performance monitoring.
[0075] Figure 9 A flowchart illustrating current calibration when a board according to an embodiment of this application is connected to a host computer is shown.
[0076] According to an embodiment of this application, the second controller 500 is further configured to: receive a second accuracy threshold from the host computer in response to a second calibration command from the host computer; control the current source 100 to output a plurality of test currents that increase sequentially; receive a detection current value generated based on the test current from the first controller 400 for each of the plurality of test currents; and adjust the correction parameters in the first controller 400 based on the plurality of test currents and the detection current values for the plurality of test currents, such that the current accuracy between the corrected detection current value provided by the first controller 400 to the second controller 500 and the corresponding test current meets the second accuracy threshold. This current accuracy threshold can be ±5%.
[0077] See Figure 9 In operation S901, after the host computer connects to the board via USB, the corresponding control software can be opened in operation S902. This software can display some key parameters of the board. In operation S903, the host computer controls the second controller 500 to send a first switching signal, causing the current source 100 to supply power to the second pin 410 (CS pin) of the first controller. In operation S904, the host computer can send host computer commands to the second controller 500, such as a first calibration command and a second calibration command, thereby performing the current sharing calibration operation in operation S905. See [link to details] for further information. Figure 3 The text content, and the second controller 500 controlled in operation S906 to complete the current accuracy calibration, see details. Figure 6 After the text content is completed, the sampling parameters and correction parameters can be modified in the host computer in operation S907 and written into NVM. After that, the host computer can send a switching pin command to the second controller 500. If the command is received, in operation S908, the second controller 500 sends a second switching signal to the switching switch 400 so that the first pin 210 of the multiple power stages 200 is connected to the multiple second pins 410 of the first controller 400.
[0078] According to an embodiment of this application, a second precision threshold is sent from the host computer to the second controller 500, so that the second controller 500 adjusts the correction parameters based on the test current and the detection current value, thereby ensuring that the actual test current and the detection current value meet the set second precision threshold, and realizing adjustable adjustment of current precision according to actual needs.
[0079] Further reference Figure 5After entering the main loop, the host computer can issue a parameter read command to the second controller 500 in operation S507. In operation S508, the second controller MCU can read the corresponding parameters from the first controller (which can be a VR (Voltage Regulator) controller), and provide the corresponding parameter data to the host computer in operation S509. Furthermore, after completing the current sharing accuracy test or current accuracy test, the corresponding parameters can be provided to the host computer while entering the main loop, and these parameters can be written to the RAM or NVM memory of the first controller 400 in operation S503. Simultaneously, during the host computer's control process, the host computer can issue a parameter modification command to the second controller 500 in operation S511, so that the second controller 500 obtains the modified parameters in operation S512, and writes the modified parameters to the first controller 400 in operation S510.
[0080] The software used by the host computer in this embodiment also includes an interrupt program, which allows an interrupt command to be sent to the second controller 500 in operation S513. Upon receiving the command, the second controller 500 can stop the self-calibration program. Afterward, the operator can close the software in the host computer in operation S514.
[0081] According to an embodiment of this application, the number of second input terminals 330 of the switching switch 300 is the same as the number of power stages 200.
[0082] The second input terminal 330 is connected to the second pin 410 of the first controller 400. During the operation of the processor on the board, the functional modules of the processor can be powered by different power stages 200. When each power stage 200 is powered, it also provides a power supply-related monitoring current to the switching switch 300 through the first pin 210. When the first pin 210 is electrically connected to the second input terminal 330, the monitoring current flows through the switching switch 300 and the second pin 410.
[0083] According to an embodiment of this application, the first controller 400 is a voltage regulation controller, the second controller 500 is a microcontroller, the first pin 210 is the current monitoring pin (i.e., IMON pin) of the power stage 200, and the second pin 410 is the current detection pin (i.e., CS pin) of the voltage regulation controller.
[0084] The current monitoring pin is a key functional pin in the power stage 200 for current sensing, mainly used to monitor the current information of the metal-oxide-semiconductor transistors (MOSFETs) inside the power stage 200 in real time.
[0085] According to an embodiment of this application, the server's power supply system includes the aforementioned board and a host computer, with the host computer electrically connected to the second controller in the board. The host computer can perform current sharing accuracy calibration and current accuracy calibration on the board; the specific calibration method is described above.
[0086] Figure 10 A flowchart of a monitoring current calibration method according to an embodiment of this application is shown.
[0087] like Figure 10 As shown, the monitoring current calibration method can be executed by the above-mentioned board, and the method includes operations S1010 to S1060.
[0088] When operating S1010, in response to the board being powered on and the server not starting, the second controller provides a first switching signal to the control terminal of the switch.
[0089] In operation S1020, the switching switch responds to the first switching signal and electrically connects the first input terminal and the output terminal of the switching switch, so that the test current output by the current source is provided to multiple second pins of the first controller.
[0090] In operation S1030, the first controller detects the current flowing through each second pin based on the sampling parameters, obtains the detected current values of multiple second pins, and provides them to the second controller.
[0091] In operation S1040, the second controller adjusts the sampling parameters stored in the first controller based on the detected current values of the multiple second pins received, so that the detected current values of the second pins of the first controller are consistent.
[0092] In operation S1050, the second controller provides a second switching signal to the control terminal of the switching switch.
[0093] In operation S1060, the switching switch responds to the second switching signal and electrically connects the second input terminal to the output terminal, thereby electrically connecting the first pins of multiple power stages to multiple second pins of the first controller.
[0094] When the board is powered on and the server is not started, the controller can send a first switching signal to the switch. After receiving the first switching signal, the switch controller can electrically connect the first input terminal and the output terminal. That is, the current source can output test current to the first controller through the switch. The first controller can monitor the voltage at each second pin, calculate the detection current value flowing through the second pin based on the voltage and the corresponding sampling parameters, and feed back the detection current value of each second pin to the second controller.
[0095] After receiving multiple detected current values from the second pins, the second controller can adjust the sampling parameters in the first controller based on these multiple detected current values, ensuring that the subsequently detected current values are consistent, thereby achieving current sharing adjustment. The sampling parameters described in this embodiment may refer to the sampling resistor. .
[0096] After the current sharing adjustment is completed, the second controller can send a second switching signal to the control terminal of the switching switch. After receiving the second switching signal, the switching switch can electrically connect the second input terminal and the output terminal. That is, the power stage can output monitoring current to the first controller through the switching switch, and the server can start normally at this time.
[0097] It should be noted that the monitoring current calibration method part in the embodiments of this application corresponds to the board part in the embodiments of this application. The specific description of the monitoring current calibration method part is referred to in the board part, and will not be repeated here.
[0098] According to the embodiments of this application, by setting a current source, a switching switch and a second controller on the board, a test current can be provided through the current source when the board is powered on and the server is not started. The second controller adjusts the sampling parameters of the first controller based on the detected current value of each second pin fed back by the first controller, thereby achieving current sharing calibration. This can avoid the problem that the detected current values of different second pins of some boards in the same batch are inconsistent in actual use due to material errors, or that the detected current values are inconsistent due to material aging after long-term use of the board, thereby improving the accuracy of current monitoring during the use of the board.
[0099] According to embodiments of this application, the monitoring current calibration method further includes:
[0100] The board sends error messages to the host computer so that the host computer can display the error messages, which indicate that the board has malfunctioned.
[0101] When the first controller in the board malfunctions, it can generate corresponding error information. At this time, the current calibration of the second controller is interrupted. The second controller can read the error information from the first controller and upload it to the host computer. The host computer can display it in the graphical user interface so that the staff can know the relevant information of the malfunction in a timely manner.
[0102] Figure 11 A schematic diagram of a graphical user interface according to an embodiment of this application is shown.
[0103] According to an embodiment of this application, a host computer can connect to the board via USB, thereby reading current-related parameters from the first controller through the second controller, and then displaying them in the host computer's graphical user interface (GUI), such as... Figure 11 As shown. Current-related parameters can refer to the test current, detection current value, and current accuracy curve mentioned above. When there are multiple first controllers on the board, address information needs to be added to the command to distinguish between different first controllers. This function can be triggered by the "Read" button on the GUI page.
[0104] When the host computer modifies parameters (such as sampling or calibration parameters), it writes the specified parameters to the first controller via the second controller. There are two types of writing: writing to Random Access Memory (RAM) and writing to Non-Volatile Memory (NVM). Parameters written to RAM are reset after a board restart, while parameters written to NVM are retained after a restart. This function can be triggered via the "Write RAM" and "Write NVM" buttons on the GUI page.
[0105] During the current sharing calibration process, the second controller switches to current source power supply. At this time, the current imbalance is measured by the internal sampling parameters of the first controller (such as...). This is caused by inconsistencies and errors in the sampling resistor. In multiphase scenarios, a single current source supplies power to multiple second pins simultaneously. If each channel... Inconsistent, flowing through each The current will be inconsistent, resulting in voltage. This will lead to deviations. After adjusting the actual values of the sampling parameters in the first controller to match the design values, the current sharing results should have virtually no deviation. During formal current sharing calibration, the current source should be selected to output ICCMAX current. At this point, the current is at its maximum, the voltage at the second pin is at its maximum, and the impact of interference will be smaller, which is more conducive to the accuracy of current sharing calibration. This function can be triggered via the "Current Sharing Test" button on the GUI page.
[0106] During current accuracy testing, the host computer can display the current accuracy curve generated by the second controller on the GUI page. This curve also includes an accuracy threshold. The second controller generates the current accuracy curve based on the default or manually set threshold and transmits it to the host computer. Operators can adjust the accuracy threshold based on the current accuracy curve, repeatedly generate the curve, and modify sampling or calibration parameters until the requirements are met. Operators can directly adjust the accuracy threshold within the GUI page, improving debugging and optimization efficiency.
[0107] Figure 11 The first column on the left is the controller address selection display area. When a second controller is connected to multiple first controllers, you need to select the current first controller by its address. There is a "Scan" button at the top; pressing it will rescan the addresses.
[0108] The second column displays chip error information. Here you can check if the first controller is working properly and if there are any error messages. At the top is a "Clear" button; pressing it clears the error messages displayed in the GUI and allows you to reread the error information from the first controller.
[0109] The third column is the parameter information display area, which supports modification and writing at any time. There are three buttons at the top; pressing "Read" will read the current relevant parameters and display them below, such as the test current ICCMAX, sampling parameters, etc. The parameters include offset error and gain error; you can also modify the parameters below and then press "Write RAM" or "Write NVM" to save the modified parameters in the first controller.
[0110] The fourth column is the data presentation panel. The "Current Balance" button in the upper left corner performs a current sharing calibration test, and the "Current Accuracy" button performs a current accuracy test. The test results are displayed below; current sharing test results are presented in a table, and current accuracy test results are presented as a current accuracy curve. The upper right corner allows setting two accuracy thresholds (Spec). These thresholds have initial values and can be manually modified. When the current sharing test result exceeds the accuracy threshold, the result is highlighted in red. In the table, "phase" indicates the power stage number, "current" indicates the detected current value of the second pin fed back by the first controller, and "error" indicates the difference between the detected current values of multiple second pins. The current accuracy curve also displays an error curve. If the error is exceeded, the curve of the measured detected current value will exceed the error curve. The three curves in the figure represent the accuracy curve and the error curve, respectively; the curves in the figure are for illustrative purposes only.
[0111] When the host computer is connected to the board, the corresponding current calibration software can be opened. In this software, the staff can manually modify the sampling parameters and calibration parameters. For details, please refer to the board's description of adjusting current sharing and current accuracy via the host computer. In addition, the software can display error information of different first controllers through the relevant parameters, such as OCP for overcurrent protection, OVP for overvoltage protection, UVP for undervoltage protection, OTP for overtemperature protection, and ON / OFF for the first controller being in the on / off state.
[0112] Those skilled in the art will understand that the features described in the various embodiments of this application can be combined and / or combined in various ways, even if such combinations or combinations are not explicitly described in this application. In particular, the features described in the various embodiments of this application can be combined and / or combined in various ways without departing from the spirit and teachings of this application. All such combinations and / or combinations fall within the scope of this application.
[0113] The embodiments of this application have been described above. However, these embodiments are merely illustrative and not intended to limit the scope of this application. Although various embodiments have been described above, this does not mean that the measures in the various embodiments cannot be used advantageously in combination. Without departing from the scope of this application, those skilled in the art can make various substitutions and modifications, all of which should fall within the scope of this application.
Claims
1. A board card for a server, characterized by, The board card comprises: a current source for outputting a test current; a plurality of power stages for powering a processor of a server, the power stages having first pins for providing monitoring currents related to power supply of the power stages; a switch having a control end, a first input end, a second input end and an output end, the first input end being connected to the current source to receive the test current, the second input end being connected to the first pins of the plurality of power stages to receive the monitoring currents, the switch being configured to electrically connect the first input end with the output end when a first switching signal is received at the control end, and electrically connect the second input end with the output end when a second switching signal is received at the control end; a first controller having a plurality of second pins, the first controller storing sampling parameters for the second pins, the second pins being connected to the output end of the switch, the first controller being configured to detect currents flowing through the second pins based on the sampling parameters to obtain detection current values of the second pins; a second controller connected to the current source, the control end of the switch and the first controller, the second controller being configured to, in response to the board card being powered on and the server not being started, provide the first switching signal to the control end of the switch, receive the detection current values of the second pins of the first controller, adjust the sampling parameters stored in the first controller based on the received detection current values so that the detection current values of the second pins are consistent, and provide the second switching signal to the control end of the switch; wherein the second controller is further configured to: calculate a difference between the detection current values of the second pins; if the difference is greater than a predetermined threshold, adjust the sampling parameters of at least some of the second pins, and return to receive the detection current values of the second pins of the first controller; if the difference is less than or equal to the predetermined threshold, determine that the detection current values of the second pins are consistent, and provide the second switching signal to the control end of the switch; wherein the first controller further stores correction parameters for the second pins, and the first controller is further configured to provide the detection current values of the second pins to the second controller after the detection current values are corrected using the correction parameters.
2. The board card according to claim 1, characterized in that, The second controller is further configured to: in response to a first calibration instruction from a host computer, receive a first precision threshold from the host computer; calculate a difference between the detection current values of the second pins; if the difference is greater than the first precision threshold, adjust the sampling parameters of at least some of the second pins, and return to receive the detection current values of the second pins of the first controller; if the difference is less than or equal to the first precision threshold, determine that the detection current values of the second pins are consistent, and provide the second switching signal to the control end of the switch.
3. The board card of claim 1, wherein, The second controller is further configured to: before providing the second switching signal to the control end of the switch, control the current source to output a plurality of test currents that increase sequentially; for each test current in the plurality of test currents, receive a detection current value generated based on the test current from the first controller; Based on the multiple test currents and the detection current values for the multiple test currents, the correction parameters in the first controller are adjusted so that the corrected detection current values provided by the first controller to the second controller are consistent with the corresponding test currents.
4. The board card of claim 1, wherein, The second controller is further configured to receive a second precision threshold from the host computer in response to a second calibration instruction from the host computer. The current source is controlled to output multiple test currents in sequence. For each test current in the multiple test currents, a detection current value generated based on the test current is received from the first controller. Based on the multiple test currents and the detection current values for the multiple test currents, the correction parameters in the first controller are adjusted so that the current precision between the corrected detection current values provided by the first controller to the second controller and the corresponding test currents meets the second precision threshold.
5. The board card of claim 1, wherein, The number of the second input terminals of the switch is the same as the number of the power stages.
6. The board card according to any one of claims 1 to 5, characterized in that, The first controller is a voltage regulation controller, the second controller is a microcontroller, the first pin is a current monitoring pin of the power stage, and the second pin is a current detection pin of the voltage regulation controller.
7. A power supply system of a server, characterized by, The method comprises: The board card according to any one of claims 1 to 6; and The host computer is electrically connected with the second controller in the board card.
8. A method of monitoring current calibration, performed by the board card of any one of claims 1 to 6, characterized in that, The method comprises: In response to the board card being powered on and the server not being started, the second controller provides a first switching signal to the control terminal of the switch; The switch electrically connects the first input terminal and the output terminal of the switch in response to the first switching signal, so that the test current output by the current source is provided to the multiple second pins of the first controller; The first controller detects the current flowing through each second pin based on the sampling parameters to obtain detection current values of the multiple second pins and provides the detection current values to the second controller; The second controller adjusts the sampling parameters stored in the first controller based on the received detection current values of the multiple second pins, so that the detection current values of the multiple second pins of the first controller are consistent; The second controller provides a second switching signal to the control terminal of the switch; The switch electrically connects the second input terminal and the output terminal in response to the second switching signal, so that the first pins of the multiple power stages are electrically connected with the multiple second pins of the first controller.
Citation Information
Patent Citations
Current calibration method and system, medium and calibration board
CN113433501A
Parameter calibration method, device and equipment
CN119336574A