US-20260128580-A1 - DYNAMIC CURRENT PROTECTION FOR SERVER LOADS
Abstract
Methods, apparatus, and products for dynamic current protection for server loads include multiple computer components, a programmable eFuse (electronic fuse) coupled to the multiple computer components, and a BMC (baseboard management controller) coupled to the programmable eFuse. The BMC is configured to: during a startup procedure, program one or more limits of the eFuse based on configuration data associated with each of the plurality of computer components, enable, prior to completing the startup procedure, the programmable eFuse with the one or more limits, and perform, while the eFuse is enabled, a test on the plurality of computer components using the eFuse.
Inventors
- Robert R. Wolford
- William J. Walker
Assignees
- Lenovo Global Technology (United States) Inc.
Dates
- Publication Date
- 20260507
- Application Date
- 20241104
Claims (20)
- 1 . A method of dynamic current protection, the method comprising: during an initial startup procedure of a system that includes a plurality of computer components, programming one or more limits of a programmable eFuse (electronic fuse) based on configuration data associated with each of the plurality of computer components; and enabling, prior to completing the initial startup procedure of the system, the programmable eFuse with the one or more limits; and performing, while the eFuse is enabled, a test on the plurality of computer components using the eFuse.
- 2 . The method of claim 1 , further comprising preventing the system from completing the initial startup procedure or from executing a full startup procedure based on a determination that the programmable eFuse has tripped during the performing of the test on the plurality of computer components using the eFuse.
- 3 . The method of claim 1 , further comprising, based on a determination that the programmable eFuse did not trip during the performing of the test on the plurality of computer components using the eFuse: disabling the programmable eFuse; and executing a full startup procedure of the system, wherein the programmable eFuse is not enabled during the full startup procedure.
- 4 . The method of claim 1 , wherein each of the plurality of computer components is a DIMM (dual in-line memory module), and wherein the configuration data includes a number of DIMMs of the plurality of computer components and a size of each of the DIMMs of the plurality of computer components.
- 5 . The method of claim 4 , wherein programming the one or more limits of the plurality of computer components includes referencing a lookup table to determine the one or more limits.
- 6 . The method of claim 5 , wherein the lookup table includes multiple entries, and wherein each entry in the lookup table identifies: a possible DIMM configuration, including a DIMM size and a number of DIMMs; and a corresponding one or more limits.
- 7 . The method of claim 1 , wherein the one or more limits of the programmable eFuse include a short-term limit and a long-term limit.
- 8 . An apparatus comprising: a plurality of computer components; a programmable eFuse (electronic fuse) coupled to the plurality of computer components; and a BMC (baseboard management controller) coupled to the programmable eFuse, wherein the BMC is configured to: during an initial startup procedure, program one or more limits of the eFuse based on configuration data associated with each of the plurality of computer components; enable, prior to completing the initial startup procedure, the programmable eFuse with the one or more limits; and perform, while the eFuse is enabled, a test on the plurality of computer components using the eFuse.
- 9 . The apparatus of claim 8 , wherein each of the plurality of computer components is a DIMM (dual in-line memory module).
- 10 . The apparatus of claim 9 , wherein the configuration data includes a number of DIMMs of the plurality of computer components and a size of each of the DIMMs of the plurality of computer components.
- 11 . The apparatus of claim 9 , wherein programming the one or more limits of the plurality of computer components includes referencing a lookup table to determine the one or more limits.
- 12 . The apparatus of claim 11 , wherein the lookup table includes multiple entries, and wherein each entry in the lookup table identifies: a possible DIMM configuration, including a DIMM size and a number of DIMMs; and a corresponding one or more limits.
- 13 . The apparatus of claim 8 , wherein the plurality of computer components consists of a plurality of PCIe (dual in-line memory modules) devices.
- 14 . The apparatus of claim 8 , wherein the BMC is further configured to prevent the system from completing the initial startup procedure or from executing a full startup procedure based on a determination that the programmable eFuse has tripped during the performing of the test on the plurality of computer components using the eFuse.
- 15 . A computer program product comprising a computer readable storage medium and computer program instructions stored therein that, when executed, are configured to: during an initial startup procedure of a system that includes a plurality of computer components, program one or more limits of a programmable eFuse (electronic fuse) based on configuration data associated with each of the plurality of computer components; and enable, prior to completing the initial startup procedure of the system, the programmable eFuse with the one or more limits; and perform, while the eFuse is enabled, a test on the plurality of computer components using the eFuse.
- 16 . The computer program product of claim 15 , wherein the computer program instructions, when executed, are further configured to prevent the system from completing the initial startup procedure or from executing a full startup procedure based on a determination that the programmable eFuse has tripped during the performing of the test on the plurality of computer components using the eFuse.
- 17 . The computer program product of claim 15 , wherein the computer program instructions, when executed, are further configured to, based on a determination that the programmable eFuse did not trip during the performing of the test on the plurality of computer components using the eFuse: disable the programmable eFuse; and execute a full startup procedure of the system, wherein the programmable eFuse is not enabled during the full startup procedure.
- 18 . The computer program product of claim 15 , wherein each of the plurality of computer components is a DIMM (dual in-line memory module), and wherein the configuration data includes a number of DIMMs of the plurality of computer components and a size of each of the DIMMs of the plurality of computer components.
- 19 . The computer program product of claim 15 , wherein programming the one or more limits of the plurality of computer components includes referencing a lookup table to determine the one or more limits.
- 20 . The computer program product of claim 15 , wherein the one or more limits of the programmable eFuse include a short-term limit and a long-term limit.
Description
BACKGROUND The present disclosure relates to methods, apparatus, and products for dynamic current protection for server loads. SUMMARY Methods, apparatus, and products for dynamic current protection for server loads according to various embodiments are disclosed in this specification. In accordance with one aspect of the present disclosure, a method of dynamic current protection for server loads includes, during a startup procedure of a system that includes a plurality of computer components, programming one or more limits of a programmable eFuse (electronic fuse) based on configuration data associated with each of the plurality of computer components; and enabling, prior to completing the startup procedure of the system, the programmable eFuse with the one or more limits; and performing, while the eFuse is enabled, a test on the plurality of computer components using the eFuse. In accordance with another aspect of the present disclosure, dynamic current protection for server loads may include an apparatus including multiple computer components, a programmable eFuse (electronic fuse) coupled to the multiple computer components, and a BMC (baseboard management controller) coupled to the programmable eFuse. The BMC is configured to: during a startup procedure, program one or more limits of the eFuse based on configuration data associated with each of the plurality of computer components, enable, prior to completing the startup procedure, the programmable eFuse with the one or more limits, and perform, while the eFuse is enabled, a test on the plurality of computer components using the eFuse. The foregoing and other objects, features and advantages of the disclosure will be apparent from the following more particular descriptions of exemplary embodiments of the disclosure as illustrated in the accompanying drawings wherein like reference numbers generally represent like parts of exemplary embodiments of the disclosure. BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 shows an example block diagram of a system for dynamic current protection for server loads in accordance with embodiments of the present disclosure. FIG. 2 shows an example block diagram of another system for dynamic current protection for server loads in accordance with embodiments of the present disclosure. FIG. 3 shows an example lookup table for dynamic current protection for server loads in accordance with embodiments of the present disclosure. FIG. 4 is a flowchart of an example method of dynamic current protection for server loads according to some embodiments of the present disclosure. FIG. 5 is a flowchart of another example method of dynamic current protection for server loads according to some embodiments of the present disclosure. DETAILED DESCRIPTION DIMMs (dual in-line memory modules) are a popular type of memory module in computer systems that include RAM (random access memory) and pins that connect the RAM to a computer's motherboard. Computers often contain multiple DIMMs at once, and the DIMMs are typically powered by 12V of DC (direct current) power. The DIMMs may be protected electrically in a number of different of ways. One method of protecting the DIMMs electrically is by relying on power supply over current protection (OCP), which is a safety feature of some power supplies that stops the output of power if the output current exceeds a specified value or limit and becomes larger than expected. However, because DIMMs do not require a lot of power or current, a DIMM can become damaged well before an OCP limit of a power supply is exceeded. A DIMM may become damaged when it experiences more current than it is designed to handle. For example, a DIMM that receives too much current may experience a soft short, a smoke event, a thermal event, or even a flame event. A soft-short is defined as a short of 10 s of mOhms (mΩ) to 1 ohm between the bulk voltage rail (e.g. 12V) and GND (ground). The resistance of the short is high enough to prevent the current from tripping the power supply OCP, but low enough to allow high current to flow to a device and cause physical damage and a smoke/burn/flame event in the device or the traces, vias, and connectors that route power to the device. By relying on only the power supply's OCP, the DIMMs are not fully protected from such damage. Another method of protecting the DIMMs is using a fuse or an eFuse that is coupled to the DIMMs. However, in conventional methods, the eFuse is statically set for the worst-case scenario and left unchanged, independent of changes in the system or DIMM configuration. For example, such a worst-case scenario may consider the greatest potential number of installed DIMMs that are working under the heaviest potential workload. In such an example, if fewer DIMMs are used and/or a lighter workload is executing, the DIMMs could develop a soft short and become damaged before the coupled fuse ever trips. The embodiments of the present disclosure describe a more precise method of prov