Over-current protection method, device and system
By calculating the average voltage and slope between the resource board and the load under test during semiconductor testing, more timely overcurrent protection is achieved, solving the problem of untimely protection in traditional methods and avoiding the risk of burning pins or chips.
Patent Information
- Application Number
- CN202510896529.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-30
- Publication Date
- 2025-11-18
Smart Images

Figure CN120978631A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of semiconductor testing technology, and in particular to an overcurrent protection method, apparatus and system. Background Technology
[0002] In the field of semiconductor testing technology, with the rapid development of AI (Artificial Intelligence) chips, the computing power of AI chips is increasing, placing higher demands on the current requirements of semiconductor testing equipment's resource boards. If a resource board malfunctions, it can lead to excessively high current, causing adverse consequences. For example, for high-current resource boards (which may be power supply boards capable of handling high-power current), an abnormally high current can result in serious consequences such as burning pins or even burning the chip.
[0003] In traditional methods, protection against abnormal current in resource boards typically involves using external circuitry to detect the voltage drop across the line from the near-end force line (drive line) to the DUT (Distributed Under Test) terminal. For example... Figure 1 As shown, the system acquires the voltage between the external sense point ES (External Sense) of the resource board and the high-side sense point HS (High Sense) of the load, and measures or estimates the impedance on the HF (High Force) line between ES and HS. Based on the impedance and the protection current, a threshold voltage is determined. Then, the voltage between ES and HS is compared with the threshold voltage; if the threshold voltage is exceeded, the resource board is powered down or its output is shut down, thus achieving overcurrent protection.
[0004] However, in traditional methods, when the voltage between ES and HS exceeds the threshold voltage, the current may have already risen very rapidly. Subsequent power-down or shutdown of the resource board output for protection takes time. Therefore, it is easy for serious consequences such as burnt pins or chips to occur before protection is implemented, resulting in untimely overcurrent protection. Summary of the Invention
[0005] Therefore, it is necessary to provide an overcurrent protection method, apparatus, system, electronic device, computer-readable storage medium, and computer program product that can improve the timeliness of protection in response to the above-mentioned technical problems.
[0006] In a first aspect, this application provides an overcurrent protection method, the method comprising:
[0007] Acquire voltage values collected at a preset sampling period; the collected voltage values are the voltage values between the external detection point of the resource board and the high-side detection point of the load under test;
[0008] Determine the first average voltage corresponding to the first sliding window; the first average voltage is calculated by averaging the voltage values of N consecutive sampling points within the first sliding window, where N ≥ 1 and is 2. m m is an integer greater than or equal to 0;
[0009] The target voltage slope value is determined based on the first average voltage and the second average voltage; wherein, the second average voltage is calculated by averaging the voltage values of N consecutive sampling points within the second sliding window; the target voltage slope value characterizes the voltage change of sampling points within and between the first and second sliding windows;
[0010] If the target voltage slope value meets the overcurrent protection triggering condition, the overcurrent protection is triggered.
[0011] In one embodiment, the size of N is determined based on the ratio of a preset alarm duration threshold to the sampling period.
[0012] In one embodiment, the second sliding window moves N times according to a preset step size to obtain the first sliding window.
[0013] In one embodiment, there are N-1 intermediate sliding windows between the second sliding window and the first sliding window; the average voltage of each intermediate sliding window is calculated by averaging the voltage values of N consecutive sampling points within the intermediate sliding window.
[0014] The step of determining the target voltage slope value based on the first average voltage and the second average voltage includes:
[0015] The first sub-slope is determined based on the first average voltage and the average voltage corresponding to the first sliding window's prior adjacent sliding windows.
[0016] The second sub-slope is determined based on the mean voltage corresponding to the next adjacent sliding window of the second sliding window and the second mean voltage.
[0017] The corresponding third sub-slope is determined based on the mean voltage of each pair of adjacent intermediate sliding windows in the N-1 intermediate sliding windows.
[0018] The target voltage slope value is obtained by summing the first sub-slope, the second sub-slope, and the third sub-slope.
[0019] In one embodiment, the step of triggering overcurrent protection when the target voltage slope value meets the overcurrent protection triggering condition includes:
[0020] An alarm is triggered if the target voltage slope value exceeds the target slope threshold range;
[0021] Overcurrent protection is triggered if the duration of the alarm is greater than or equal to a preset alarm duration threshold.
[0022] In one embodiment, the target slope threshold range is obtained by multiplying a preset unit slope threshold range by N.
[0023] In one embodiment, triggering an alarm when the target voltage slope value exceeds a target slope threshold range includes:
[0024] If the target voltage slope value exceeds the target slope threshold range, the alarm signal output by the control is in a high-level state, and the duration of the alarm signal in a high-level state is recorded in real time.
[0025] The overcurrent protection is triggered when the duration of the alarm is greater than or equal to a preset alarm duration threshold, including:
[0026] If the duration of the alarm signal being in a high-level state is greater than or equal to the alarm duration threshold, overcurrent protection is triggered.
[0027] In one embodiment, after the alarm signal of the control output is in a high-level state, the method further includes:
[0028] If the new target voltage slope value does not exceed the target slope threshold range, the output alarm signal is controlled to switch from the high level state to the low level state, and the recorded duration of the high level state is cleared to zero.
[0029] The new target voltage slope value is calculated by performing the first average voltage corresponding to the first sliding window and subsequent steps for the new first sliding window; the new first sliding window is located after the first sliding window.
[0030] Secondly, this application also provides an overcurrent protection device, which includes:
[0031] The voltage acquisition module is used to acquire voltage values collected at a preset sampling period; the acquired voltage values are the voltage values between the external detection point of the resource board and the high-side detection point of the load under test.
[0032] A voltage slope calculation module is used to determine the first average voltage corresponding to the first sliding window; the first average voltage is calculated by averaging the voltage values of N consecutive sampling points within the first sliding window; a target voltage slope value is determined based on the first average voltage and the second average voltage; wherein, the second average voltage is calculated by averaging the voltage values of N consecutive sampling points within the second sliding window; the target voltage slope value characterizes the voltage change of sampling points within and between the first and second sliding windows, where N≥1 and is 2. m m is an integer greater than or equal to 0;
[0033] The overcurrent protection module is used to trigger overcurrent protection when the target voltage slope value meets the overcurrent protection triggering condition.
[0034] Thirdly, this application also provides an overcurrent protection system, which includes a host computer, a driver, and a resource board, wherein the resource board includes an analog-to-digital converter and an FPGA; wherein:
[0035] The FPGA is used to receive and store configuration parameters sent by the host computer through the driver; the configuration parameters include the number of moving average points N;
[0036] The FPGA is also used to acquire the voltage value collected by the analog-to-digital converter at a preset sampling period; the acquired voltage value is the voltage value between the external detection point of the resource board and the high-side detection point of the load under test;
[0037] The FPGA is further configured to determine a first average voltage corresponding to a first sliding window corresponding to the number of sliding average points N; the first average voltage is calculated by averaging the voltage values of N consecutive sampling points within the first sliding window; a target voltage slope value is determined based on the first average voltage and a second average voltage; wherein the second average voltage is calculated by averaging the voltage values of N consecutive sampling points within a second sliding window; the target voltage slope value characterizes the voltage change of sampling points within and between the first and second sliding windows; and overcurrent protection is triggered when the target voltage slope value meets the overcurrent protection triggering condition.
[0038] Fourthly, this application also provides an electronic device. The electronic device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to implement the steps of the method mentioned in the first aspect above.
[0039] Fifthly, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, implements the steps of the method mentioned in the first aspect above.
[0040] Sixthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, implements the steps of the method mentioned in the first aspect above.
[0041] The aforementioned overcurrent protection method, device, system, electronic device, computer-readable storage medium, and computer program product acquire voltage values collected at a preset sampling period; the collected voltage values are the voltage values between the external detection point of the resource board and the high-side detection point of the load under test; a first average voltage corresponding to a first sliding window is determined; the first average voltage is calculated by averaging the voltage values of N consecutive sampling points within the first sliding window, where N≥1 and is 2. m m is an integer greater than or equal to 0; the target voltage slope value is determined based on the first average voltage and the second average voltage; wherein, the second average voltage is calculated by averaging the voltage values of N consecutive sampling points within the second sliding window; the target voltage slope value characterizes the voltage change of sampling points within and between the first and second sliding windows; when the target voltage slope value meets the overcurrent protection triggering condition, overcurrent protection is triggered. It should be understood that the target voltage slope value characterizes the magnitude and trend of voltage change between ES and HS. When the target voltage slope value meets the overcurrent protection triggering condition, it means that the current may rise rapidly afterward, but has not yet increased extremely rapidly. In this case, timely triggering of overcurrent protection can protect the current before it rises to an excessive level, which is a pre-overcurrent protection mechanism, improving the timeliness of protection and avoiding or reducing serious consequences (such as burnt pins or burnt chips) caused by untimely protection. Attached Figure Description
[0042] Figure 1 This is a circuit diagram illustrating the application of an overcurrent protection method in one embodiment;
[0043] Figure 2 This is an architecture diagram of an overcurrent protection system in one embodiment;
[0044] Figure 3 This is a flowchart illustrating an overcurrent protection method in one embodiment;
[0045] Figure 4 This is a flowchart illustrating an overcurrent protection method in another embodiment;
[0046] Figure 5 This is a flowchart illustrating an overcurrent protection method in yet another embodiment;
[0047] Figure 6 This is a simplified schematic diagram illustrating the principle of an overcurrent protection method in one embodiment;
[0048] Figures 7A to 7C This is a comparison chart of simulation results in one embodiment;
[0049] Figure 8 This is a structural block diagram of an overcurrent protection device in one embodiment;
[0050] Figure 9 This is a diagram of the internal structure of an electronic device in one embodiment. Detailed Implementation
[0051] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0052] Figure 2 This is an architecture diagram of an overcurrent protection system in one embodiment. For example... Figure 2 As shown, the system includes a host computer, drivers, and resource boards. The resource boards include an analog-to-digital converter (ADC) and a field-programmable gate array (FPGA). Exemplarily, the resource boards may include power supply boards, mixed-signal boards, communication boards, radio frequency boards, or digital boards, etc.
[0053] The host computer responds to the user's configuration operation and obtains the configuration parameters related to implementing overcurrent protection. These configuration parameters include the number of moving average points N, where N ≥ 1 and is equal to 2. m Where m is an integer greater than or equal to 0, and m can take values of 0, 1, 2, 3, ..., 15. For example, the configuration parameters may also include other parameters, as described below. The host computer can send the configuration parameters to the driver (i.e., the underlying software), which then sends the configuration parameters to the FPGA. The FPGA can receive and store the configuration parameters. The ADC can collect the voltage value between the external detection point (ES) of the resource board and the high-side detection point (HS) of the load under test according to a preset sampling period. The FPGA can obtain the collected voltage value from the ADC and execute the overcurrent protection method in this embodiment based on the stored configuration parameters (such as the number of moving average points N) to achieve overcurrent protection processing. The specific processing steps executed by the FPGA will be described in more detail below.
[0054] In one embodiment, such as Figure 3 As shown, an overcurrent protection method is provided. Taking the application of this method in an FPGA as an example, the method includes the following steps:
[0055] S302, acquire the voltage value collected at a preset sampling period; the collected voltage value is the voltage value between the external detection point of the resource board and the high-side detection point of the load under test.
[0056] Please see Figure 1 HF (High Force), HS (High Sense), LS (Low Sense), and LF (Low Force) are the four lines in a Kelvin connection. HF and LF are high-current lines, collectively called Force lines (drive lines), and their resistance cannot be ignored. HS and LS are used for voltage detection, collectively called Sense lines (sensor lines), and typically handle very small currents, so their resistance can be disregarded. ES (External Sense) is an external sensing point or external sensing line connected to a resource board.
[0057] In this embodiment, the ADC can acquire the voltage value between ES and HS according to a preset sampling period. The sampling period is fixed. For example, the sampling period can be 0.2 μs, meaning the ADC acquires the voltage value between ES and HS every 0.2 μs. The FPGA can obtain the acquired voltage value between ES and HS from the ADC.
[0058] S304, determine the first average voltage corresponding to the first sliding window; the first average voltage is calculated by averaging the voltage values of N consecutive sampling points within the first sliding window, where N≥1 and is 2. m , where m is an integer greater than or equal to 0.
[0059] In this embodiment, the configuration parameters stored in the FPGA include the number of moving average points. The FPGA can perform moving average calculations based on the number of moving average points. The number of moving average points determines the size of the sliding window in the moving average calculation process; that is, the number of consecutive sampling points within each sliding window is equal to the number of moving average points.
[0060] Specifically, the moving average has N points. The FPGA can move the sliding window in preset steps, forming a new sliding window after each move. For each sliding window, the FPGA can average the voltage values of N consecutive sampling points within that window to obtain the mean voltage corresponding to that sliding window. This process is the moving average calculation process.
[0061] In some examples, the formula for calculating the moving average is as follows:
[0062]
[0063] Where N is the number of moving average points; data represents the voltage value of the sampling point (i.e., the original voltage value of ES_HS collected), data n Data represents the voltage value at the nth sampling point. n-1 Data represents the voltage value at the (n-1)th sampling point. n-N+1 Moving_Fil_Data represents the voltage value at the (n-N+1)th sampling point; Moving_Fil_Data represents the mean voltage calculated by the moving average. n This represents the average voltage corresponding to the sliding window n. It should be understood that the sliding window n does not represent the nth sliding window, but rather the sliding window that first slides to the nth sampling point. The sliding window n includes N consecutive sampling points from the (n-N+1)th sampling point to the nth sampling point.
[0064] Taking N=128 as an example, after obtaining 128 sampling points, the moving average calculation can begin. That is, the first moving window includes the first to the 128th sampling points. The average voltage values corresponding to each of the 128 sampling points within the first moving window can be calculated (i.e., the moving average calculation) to obtain the mean voltage corresponding to the first moving window. It should be noted that the number of moving average points is not limited to 128; other values are also possible.
[0065] To illustrate more concisely, let's take an example with N=3 points in the moving average to explain the moving average calculation process. After obtaining 3 sampling points (the voltage values corresponding to the 3 sampling points are X1, X2, and X3 respectively), the moving average calculation can begin. The average voltage corresponding to the first moving window is Y1 = (X1 + X2 + X3) / 3. Assuming the preset step size is 1, then the second moving window, formed after the moving window is moved, includes the 2nd to 4th sampling points (voltage value X4), and the average voltage corresponding to the second moving window is Y2 = (X2 + X3 + X4) / 3. The third moving window includes the 3rd to 5th sampling points (voltage value X5), and the average voltage corresponding to the third moving window is Y3 = (X3 + X4 + X5) / 3. And so on, continuing to move the moving window according to the preset step size to perform the moving average calculation, we can obtain the average voltage corresponding to multiple moving windows.
[0066] It should be understood that multiple sliding windows will be generated during the entire moving average calculation process. The first sliding window is one of the sliding windows in the moving average calculation process. For example, it can be any sliding window in the moving average calculation process, or it can be a sliding window formed after a certain number of slidings. There is no limitation on this.
[0067] S306, determine the target voltage slope value based on the first average voltage and the second average voltage; wherein, the second average voltage is calculated by averaging the voltage values of N consecutive sampling points within the second sliding window.
[0068] The second sliding window is a different sliding window from the first sliding window. For example, the second sliding window may be located before the first sliding window.
[0069] For example, the second sliding window can be a prior adjacent sliding window of the first sliding window, that is, adjacent to the first sliding window and located before the first sliding window. For example, if the first sliding window is the 129th sliding window, then the second sliding window can be the 128th sliding window.
[0070] For example, the second sliding window is located before the first sliding window and separated from the first sliding window by at least one sliding window (which can be referred to as an intermediate sliding window). "At least one" means one or more. More specifically, the second sliding window moves N times according to a preset step size to obtain the first sliding window, where N is the number of moving average points. Thus, the second sliding window and the first sliding window are separated by N-1 intermediate sliding windows. For instance, assuming the number of moving average points N = 128, and the first sliding window is the 129th sliding window, then the second sliding window could be the 1st sliding window.
[0071] For ease of description, the average voltage corresponding to the first sliding window is denoted as the first average voltage, and the average voltage corresponding to the second sliding window is denoted as the second average voltage. The FPGA can determine the target voltage slope value based on the first and second average voltages. This target voltage slope value characterizes the voltage change at the sampling points within and between the first and second sliding windows.
[0072] In some examples, the target voltage slope value can be calculated by block summation. For instance, the FPGA can subtract the mean voltages of each pair of adjacent sliding windows from the second sliding window to the first sliding window to obtain multiple sub-slopes, and then add these multiple sub-slopes together to obtain the target voltage slope value.
[0073] It should be understood that in this example, the first sliding window can be a sliding window used to trigger block summation calculations. That is, after calculating the sub-slopes based on the mean voltages corresponding to the first sliding window and the preceding adjacent sliding windows, the number of currently calculated sub-slopes (sub-slopes not used in previous block summation calculations) can reach the number of block summation triggers. The number of block summation triggers (i.e., the number of sub-slopes triggering block summation) can be equal to or not equal to the number of moving average points; this is not limited.
[0074] It's important to note that the block summation calculation is performed continuously, similar to a pipeline process. Sub-slopes used in previous block summation calculations are not included in subsequent calculations. Block summation is triggered only when the number of recalculated sub-slopes reaches the trigger threshold, at which point the multiple recalculated sub-slopes are summed. In some examples, the sub-slope is calculated based on the average voltage corresponding to each pair of adjacent sliding windows, which can be achieved using the following formula:
[0075] Diff_Data n =Moving_Fil_Data n+1 -Moving_Fil_Data n ;
[0076] Among them, Moving_Fil_Data n This represents the mean voltage corresponding to the sliding window n; Moving_Fil_Data n+1 This represents the average voltage corresponding to the sliding window n+1. The sliding window n+1 is the first sliding window to reach the (n+1)th sampling point. The sliding window n+1 is adjacent to the sliding window n and includes N consecutive sampling points from the (n-N+2)th sampling point to the (n+1)th sampling point; Diff_Data n This represents the sub-slope calculated based on the mean voltages corresponding to sliding window n+1 and sliding window n, respectively.
[0077] It should be understood that in the block summation calculation process, the second sliding window and its subsequent adjacent sliding window form a pair of adjacent sliding windows. Therefore, the second average voltage corresponding to the second sliding window will participate in the sub-slope calculation. Similarly, the first sliding window and its prior adjacent sliding window form a pair of adjacent sliding windows, so the first average voltage corresponding to the first sliding window will also participate in the sub-slope calculation. Therefore, the scheme in this example belongs to one of the lower-level implementation schemes for determining the target voltage slope value based on the voltage difference between the first average voltage and the second average voltage.
[0078] In some embodiments, the number of moving average points is N, and there are N-1 intermediate moving average windows between the second moving average window and the first moving average window; the mean voltage corresponding to each intermediate moving average window is denoted as the intermediate window mean voltage, and the mean voltage of each intermediate window is calculated by averaging the voltage values of N consecutive sampling points within the corresponding intermediate moving average window.
[0079] In this embodiment, step S306, determining the target voltage slope value based on the first average voltage and the second average voltage, includes: determining a first sub-slope based on the first average voltage and the average voltage corresponding to the preceding adjacent sliding windows of the first sliding window; determining a second sub-slope based on the average voltage corresponding to the following adjacent sliding windows of the second sliding window and the second average voltage; determining a corresponding third sub-slope based on the average voltage of each pair of adjacent intermediate sliding windows in the N-1 intermediate sliding windows; and summing the first sub-slope, the second sub-slope, and the third sub-slope to obtain the target voltage slope value.
[0080] In some embodiments, the formula for calculating the sum of blocks is as follows:
[0081] Block_Sum_Data n =Diff_Data n+N-1 +Diff_Data n+N-2 +…+Diff_Data n+1 +Diff_Data n ;
[0082] Among them, Diff_Data n+N-1 Diff_Data represents the sub-slope calculated based on the mean voltages corresponding to sliding windows n+N (i.e., the first sliding window) and n+N-1 (i.e., the preceding adjacent sliding windows of the first sliding window); n+N-2 This represents the sub-slope calculated based on the mean voltages corresponding to sliding windows n+N-1 and n+N-2, respectively; Diff_Data n+1 This represents the sub-slope calculated based on the mean voltages corresponding to sliding windows n+2 and n+1, respectively; Diff_Data n This represents the sub-slope calculated based on the mean voltages corresponding to sliding window n+1 (i.e., the next adjacent sliding window of the second sliding window) and sliding window n (i.e., the second sliding window).
[0083] Taking a moving average with N=3 points, where the first moving window is the fourth moving window and the second moving window is the first moving window as an example, there are two intermediate moving windows between the first and fourth moving windows. The average voltages corresponding to the first to fourth moving windows are denoted as Y1 (the second average voltage mentioned above), Y2 (the average voltage of the intermediate windows), Y3 (the average voltage of the intermediate windows), and Y4 (the first average voltage mentioned above). Then, Y2-Y1 = d1 (the second sub-slope), Y3-Y2 = d2 (the third sub-slope), Y4-Y3 = d3 (the first sub-slope), and d1+d2+d3 = D. D is the target voltage slope value, used to characterize the voltage change of the sampling points within the interval from moving window 1 to moving window 4.
[0084] It should be understood that since voltage values are collected according to a fixed sampling period in this embodiment, the time dimension is not a variable. Therefore, the duration can be ignored, and the difference between the average voltages corresponding to two adjacent sliding windows (which can be referred to as the average voltage difference) can be directly used as the sub-slope to reduce computational complexity. In other examples, the sub-slope can be obtained by dividing the average voltage difference between two adjacent sliding windows by the sampling period, and this is not limited.
[0085] The above scheme uses a block summation method, which only requires simple addition and subtraction calculations and does not require complex operations to calculate the target voltage slope value, greatly reducing the computational complexity and reducing the consumption of computing resources to a certain extent. In addition, it can also improve the computational efficiency, and thus enable subsequent overcurrent protection to be performed more promptly.
[0086] It should be noted that this application does not limit the calculation of the target voltage slope value to the summation of blocks. The target voltage slope value can also be determined by using the first average voltage and the second average voltage in other ways. For example, with the support of the host computer, the target voltage slope value can be calculated directly based on the difference between the first average voltage and the second average voltage. This is not a limitation.
[0087] S308, if the target voltage slope value meets the overcurrent protection triggering condition, the overcurrent protection is triggered.
[0088] The overcurrent protection trigger condition is the condition under which overcurrent protection is triggered. That is, if the overcurrent protection trigger condition is determined to be met, then overcurrent protection is triggered.
[0089] In some embodiments, the overcurrent protection trigger condition can be determined based solely on the voltage slope. For example, the configuration parameters stored in the FPGA include a target slope threshold range. If the target voltage slope value exceeds the target slope threshold range, the overcurrent protection trigger condition is determined to be met. If the target voltage slope value does not exceed the target slope threshold range, the overcurrent protection trigger condition is determined not to be met.
[0090] It should be understood that under normal circumstances, slight current oscillations may occur, causing a sudden increase in current within a short period of time. This can lead to an excessive voltage value between ES and HS, exceeding the threshold voltage. Traditional methods may misjudge these normal situations as abnormal situations, resulting in incorrect alarm protection triggers and erroneous power-down of resource boards. In this embodiment, the target voltage slope value is compared with a target slope threshold range, rather than with a fixed threshold. Thus, even if a normal slight current oscillation causes the voltage slope to rise, it will generally remain within the target slope threshold range, thereby reducing false alarms and improving the accuracy of overcurrent protection.
[0091] In other embodiments, overcurrent protection triggering conditions can be set by combining two dimensions: voltage slope and alarm delay. For example, the configuration parameters stored in the FPGA also include a target slope threshold range and an alarm duration threshold. The alarm duration threshold is a duration threshold set to provide alarm delay. Specifically, an alarm is triggered when the target voltage slope value exceeds the target slope threshold range. It should be understood that triggering an alarm does not necessarily trigger overcurrent protection; instead, it further determines whether the alarm duration is greater than or equal to a preset alarm duration threshold. If the alarm duration exceeds the preset alarm duration threshold, the overcurrent protection triggering condition is satisfied, and overcurrent protection is then triggered. The alarm duration begins timing after the first sliding window and continues until the duration of the high level exceeds the preset alarm duration threshold, triggering overcurrent protection.
[0092] It should be understood that under normal circumstances, some glitches are inevitable. These glitches may cause a sudden increase in current within a very short time, leading to an excessive voltage value between ES and HS, exceeding the threshold voltage. Traditional methods would misjudge these normal situations as abnormal, causing incorrect alarm protection triggers and erroneously powering down the resource board. In this embodiment, based on the alarm duration threshold, overcurrent protection measures are not immediately taken after a very brief alarm trigger. Overcurrent protection is only triggered after the alarm duration exceeds the threshold, thus filtering out glitches and preventing erroneous power-down due to normal glitches.
[0093] In some examples, if it is determined that the overcurrent protection triggering condition is not met, the above steps S304 to S306 are continued for the new first sliding window to obtain a new target voltage slope value, and the overcurrent protection triggering condition is determined based on the new target voltage slope value.
[0094] Specifically, the voltage value between ES and HS is continuously acquired, and the sliding window is continuously moved. Therefore, steps S302 to S306 are a cyclical process. For example, the FPGA continuously acquires the acquired voltage value from the ADC, and the FPGA continuously moves the sliding window backward, thus continuously forming new first sliding windows. For each new first sliding window, steps S304 to S306 are executed to generate a new target voltage slope value. For each generated target voltage slope value, it is determined whether the overcurrent protection trigger condition is met.
[0095] In some embodiments, triggering an alarm when the target voltage slope value exceeds a target slope threshold range includes: controlling the output alarm signal to be in a high-level state when the target voltage slope value exceeds the target slope threshold range, recording the duration of the high-level state of the alarm signal in real time, and caching the duration of the high-level state in the memory inside the FPGA. In this embodiment, if the duration of the high-level state of the alarm signal is greater than or equal to the alarm duration threshold, overcurrent protection is triggered.
[0096] For example, if the target voltage slope value does not exceed the target slope threshold range, the alarm signal of the control output is in a low level state, and a new target voltage slope value is continuously acquired, and it is determined whether the overcurrent protection trigger condition is met based on the new target voltage slope value.
[0097] In some embodiments, after the alarm signal of the control output is in a high-level state, if the new target voltage slope value does not exceed the target slope threshold range, the FPGA can control the output alarm signal to switch from the high-level state to a low-level state and clear the recorded duration of the high-level state.
[0098] The aforementioned overcurrent protection method determines the target voltage slope value by calculating the average voltage using a moving average. This target voltage slope value characterizes the magnitude and trend of voltage changes between ES and HS. When the target voltage slope value meets the overcurrent protection triggering condition, it indicates that the current may rise rapidly but has not yet reached an extreme level. In this case, triggering the overcurrent protection process allows protection to be provided before the current rises to an excessive level, which is a pre-overcurrent protection mechanism. This improves the timeliness of protection and avoids or reduces the occurrence of serious consequences (such as burnt pins or chips) due to untimely protection.
[0099] Furthermore, in traditional methods, the voltage value used for overcurrent protection judgment is simply the voltage difference between the sampled ES and HS (i.e., the original voltage value), and its accuracy is determined by the accuracy of the original sampled voltage value. In noisy scenarios, the original sampled voltage value will be highly noisy, resulting in low accuracy of the voltage value used for overcurrent protection judgment. The method in this application does not directly use the original sampled voltage value, but instead uses the average voltage calculated by a moving average for subsequent overcurrent protection judgment. The average voltage is the result of data smoothing, and in noisy scenarios, compared to using the original sampled voltage value, it has lower noise and higher accuracy, thereby improving the accuracy and effectiveness of overcurrent protection. Moreover, in this embodiment, the average voltage is calculated based on a configurable number of moving average points. By flexibly configuring the number of moving average points, the accuracy of the average voltage can be improved, making it more suitable for noisy scenarios.
[0100] In some embodiments, the configuration parameters sent to the FPGA are parameters directly configured by the user or calculated based on parameters directly configured by the user. In some examples, the configuration parameters stored in the FPGA may include the number of moving average points, alarm duration threshold, and target slope threshold range.
[0101] Among them, the alarm duration threshold and the number of moving average points are parameters that are directly configured by the user.
[0102] For example, the number of moving average points is determined based on the ratio of a preset alarm duration threshold to the sampling period. This allows the time consumed by one moving average calculation to be more closely matched with the sampling period and alarm delay, making the setting of the number of moving average points more reasonable.
[0103] In some examples, the moving average number of points is calculated based on the ratio of a preset alarm duration threshold to the sampling period using the following formula:
[0104] Avg_num=Alarm_T_Delay / 10 / Ts+1;
[0105] Where Avg_num represents the number of moving average points, Alarm_T_Delay represents the alarm duration threshold, and Ts represents the sampling period. For example, the alarm duration threshold can range from 0s to 1s.
[0106] The number of moving average points calculated by the above formula can widen the gap between the calculation time of a single moving average and the alarm duration threshold, avoiding the problem of inaccurate overcurrent protection caused by the calculation time of a single moving average exceeding or being too close to the alarm duration threshold, thus improving the rationality of the number of moving average points.
[0107] In some examples, due to hardware resource limitations, the number of moving average points must be less than 32768.
[0108] In some examples, after calculating the moving average points based on the ratio of a preset alarm duration threshold to the sampling period, if the calculated moving average points are not a power of 2, then the nearest power of 2 is used as the final moving average points. For example, assuming the calculated moving average points Avg_num are 127, which is not a power of 2, the nearest power of 2 to 127 is 128, then 128 can be used as the final moving average points.
[0109] For example, the target slope threshold range is calculated based on parameters directly configured by the user.
[0110] It should be understood that when calculating the target voltage slope using a block summation method, the user only needs to configure a unit slope threshold range. This unit slope threshold range can be understood as the slope threshold range of the smallest granularity or the smallest unit. For example, the unit slope threshold range could be ±0.25V / s to ±2e6V / s.
[0111] The underlying software can combine the actual number of triggers for block summation (i.e., the number of sub-slopes in block summation) with the unit slope threshold range to calculate the target slope threshold range before issuing it. In this way, even if the number of triggers for block summation changes, users do not need to reconfigure the slope threshold range. Users only need to configure it once to apply any number of triggers for block summation, which is very convenient and flexible. Moreover, it can achieve normalization, ensuring that subsequent slope calculations have a unified unit, which is more conducive to efficient calculation and can also improve calculation accuracy.
[0112] Please see Figure 4 In one embodiment, another overcurrent protection method is provided, which specifically includes the following steps:
[0113] S402, the host computer responds to the user's configuration operation and obtains the initial configuration parameters configured by the user. The initial configuration parameters include the alarm duration threshold, the number of moving average points, and the unit slope threshold range.
[0114] S404, the host computer sends the initial configuration parameters to the software.
[0115] S406, the software multiplies the configured number of moving average points and the unit slope threshold range to obtain the target slope threshold range.
[0116] This is equivalent to the number of triggers for block summation being equal to the configured number of moving average points.
[0117] The S408 software sends the final configuration parameters to the FPGA. The final configuration parameters include the alarm duration threshold, the number of moving average points, and the target slope threshold range.
[0118] In step S410, the FPGA determines whether overcurrent protection is needed based on the received configuration parameters. If yes, it executes step S412 to trigger overcurrent protection. If not, it returns to step S410.
[0119] It should be understood that the specific processing of step S410 can be found in the descriptions of steps S302 to S308 above, which are related to overcurrent protection judgment, and will not be repeated here.
[0120] In the above solution, the target slope threshold range is obtained by multiplying the configured number of moving average points and the unit slope threshold range. This is equivalent to flexibly applying the configuration parameters of the moving average calculation to the slope alarm, eliminating the need for users to configure a separate parameter for calculating the target slope threshold range. This is very convenient and saves on operating costs.
[0121] In addition, the above solution allows for flexible parameter configuration, without being limited to fixed parameter types and values, making it adaptable to more scenarios and enabling more accurate and effective overcurrent protection.
[0122] like Figure 5 As shown, in one embodiment, another overcurrent protection method is provided, which specifically includes the following steps:
[0123] S502, the host computer sends the user's initial configuration parameters to the software. The initial configuration parameters include the unit slope threshold range, alarm duration threshold, and number of moving average points N.
[0124] S504, the underlying software multiplies the unit slope threshold range by the number of moving average points N to obtain the target slope threshold range, and then sends the target slope threshold range to the FPGA.
[0125] S506, the underlying software sends the alarm duration threshold and the number of moving average points to the FPGA.
[0126] The S508 FPGA obtains the voltage values between the external detection points of the resource board and the high-side detection points of the load under test from the ADC in real time.
[0127] The S510 FPGA uses a sliding window to calculate the moving average of the collected voltage values based on the number of moving average points N, and obtains the mean voltage corresponding to each sliding window.
[0128] In S512, the FPGA obtains the sub-slope by subtracting the average voltage of the previous sliding window from the average voltage of the next sliding window.
[0129] The S514 FPGA performs block summation on the N continuously calculated sub-slopes to obtain the target voltage slope value corresponding to each block summation.
[0130] It should be understood that steps S508 to S514 are a cyclical process, so new target voltage slope values will be continuously generated, and step S516 will be executed for each generated target voltage slope value.
[0131] S516, the FPGA determines whether the target voltage slope value exceeds the target slope threshold range.
[0132] If yes, proceed to step S518; otherwise, proceed to step S524.
[0133] The alarm signal output by the S518 FPGA control is at a high level.
[0134] The S520 FPGA determines whether the duration of the alarm signal being in a high-level state exceeds the alarm duration threshold.
[0135] If yes, proceed to step S522; otherwise, return to step S516 and continue to determine whether the new target voltage slope value exceeds the target slope threshold range.
[0136] S522, FPGA-triggered overcurrent protection.
[0137] The alarm signal output by the S524 FPGA control is in a low-level state.
[0138] After step S524, return to step S516 to continue determining whether the new target voltage slope value exceeds the target slope threshold range.
[0139] It should be understood that if the target voltage slope value exceeds the target slope threshold range in this judgment, and the alarm signal was in a high-level state before this judgment, then step S524 controlling the output alarm signal to be in a low-level state means switching the output alarm signal from a high-level state to a low-level state. If the alarm signal was in a low-level state before this judgment, then step S524 controlling the output alarm signal to be in a low-level state means keeping the output alarm signal in a low-level state.
[0140] like Figure 6 As shown, the principle of the overcurrent protection method is explained in a simple illustration, combining the internal modules of the FPGA. Please refer to [link / reference]. Figure 6 The FPGA includes a moving average module, a calibration module, a slope calculation module, a block summation module, a slope alarm comparison module, and an alarm delay module.
[0141] Specifically, the FPGA acquires and reads the voltage value between ES and HS acquired in real time by the ADC (which can be denoted as adc_data). If the acquired voltage value is valid (i.e. has a corresponding valid flag, such as adc_vld), it enters the moving average module in the FPGA.
[0142] In addition, the moving average module can also obtain the number of moving average points (also known as the average parameter, which can be denoted as avg_para). The moving average module can use a sliding window to calculate the moving average of the collected voltage values based on the number of moving average points, and obtain the mean voltage corresponding to each sliding window (which can be denoted as avg_filt_data).
[0143] If the mean voltage is valid (i.e., has a corresponding valid flag, such as avg_filt_vld), it proceeds to the calibration module, where the mean voltage is calibrated. If the calibrated mean voltage (i.e., has a corresponding valid flag, such as cal_vld) is valid, it proceeds to the slope calculation module.
[0144] The slope calculation module uses the method in this embodiment to calculate the difference between adjacent calibrated mean voltages to obtain a sub-slope. If the sub-slope is valid (i.e., has a corresponding valid flag, such as slop_vld), it proceeds to the block addition module, also known as the block summation module.
[0145] The block summation module can also obtain block parameters (which can be denoted as sum_para). For example, the block parameters can be the number of moving average points N. The block summation module can then add up the N consecutively calculated sub-slopes to obtain the target voltage slope value.
[0146] If the target voltage slope value is valid (i.e., has a corresponding valid flag, such as slop_sum_vld), the system enters the slope alarm comparison module. The slope alarm comparison module has two sub-modules, namely two comparators, denoted as Comparator 1 and Comparator 2. Each comparator can input the target voltage slope value and its corresponding valid flag (such as slop_sum_vld). For simplicity, the valid flag corresponding to the target voltage slope value is not shown in the diagram.
[0147] It should be understood that the target slope threshold range belongs to an alarm slope threshold interval, with the two endpoints being the high alarm slope threshold and the low alarm slope threshold, respectively. Assuming the target slope threshold range is ±0.25*Nv / s to ±2e6*Nv / s (where N is the number of moving average points), then the high alarm slope threshold is ±2e6*Nv / s, and the low alarm slope threshold is ±0.25*Nv / s.
[0148] Comparator 1 in the slope alarm comparison module compares the input target voltage slope value with the high alarm slope threshold to determine if it is greater than the high alarm slope threshold. If it is, the positive polarity flag (slope_p_flag) is activated to trigger a high-level alarm signal (i.e., trigger an alarm); otherwise, a low-level alarm signal is triggered (i.e., no alarm is triggered). Comparator 2 in the slope alarm comparison module compares the input target voltage slope value with the low alarm slope threshold to determine if it is less than the low alarm slope threshold. If it is, the negative polarity flag (slope_n_flag) is activated to output a high-level alarm signal; otherwise, a low-level alarm signal is output. By using two comparators in parallel, it is possible to determine more quickly whether the target voltage slope value exceeds the target slope threshold range.
[0149] The alarm delay module comprises two sub-modules, namely two alarm control modules (denoted as tc_alm_ctrl). Alarm control module 1 corresponds to comparator 1, and alarm control module 2 corresponds to comparator 2. It should be understood that the target voltage slope value cannot simultaneously be greater than both the high alarm slope threshold and the low alarm slope threshold. Therefore, only the comparison result of one comparator can trigger an alarm signal with a high-level output.
[0150] If the comparison result of comparator 1 triggers the output of a high-level alarm signal, then the alarm control module 1 counts the duration of the alarm signal being in a high-level state. If the duration of the alarm signal being in a high-level state is greater than the alarm duration threshold, the first signal that triggers overcurrent protection (which can be denoted as slop_p_alm) is output.
[0151] If the comparison result of comparator 2 triggers the output of a high-level alarm signal, then the alarm control module 2 counts the duration of the alarm signal being in a high-level state. If the duration of the alarm signal being in a high-level state is greater than the alarm duration threshold, a second signal (which can be denoted as slop_n_alm) that triggers overcurrent protection is output.
[0152] slop_p_alm and slop_n_alm are mutually exclusive; only one of them will be output as the target signal for triggering overcurrent protection (denoted as slop_alm).
[0153] As can be seen from the above, the method in this application embodiment, which calculates the voltage slope based on the average voltage obtained by moving average calculation, can effectively reduce the influence of noise, thereby making the subsequent overcurrent protection more accurate and effective. To demonstrate this effect, the inventors of this application conducted simulation experiments using simulation tools, and the simulation results are as follows: Figures 7A to 7C As shown.
[0154] Please see Figure 7A 711 reflects the change of the original voltage between the acquired ES and HS over time. 721 reflects the change of the mean voltage over time after performing a moving average calculation (i.e., moving filter) on the voltage using the method described in this embodiment. Figure 7A Although the original voltage and the average voltage appear to change smoothly, their noise levels actually differ significantly. Please refer to [link to relevant documentation] for details. Figure 7C 713 is a magnified version of 711, and 713 has noticeable jagged edges or burrs. 723 is a magnified version of 721, and 723 is relatively smooth. This fully demonstrates that noise is effectively suppressed after moving average.
[0155] Please continue reading. Figure 7B 712 reflects the change of the voltage slope (denoted as the original voltage slope) calculated from the original voltage over time, while 722 reflects the change of the voltage slope (denoted as the mean voltage slope) calculated from the moving average over time. Figure 7B It can be seen that the scaling factor of the mean voltage slope is 10. -5 The scaling factor for the original voltage slope is 10. -3 Clearly, when fluctuations are relatively similar, the scaling factor of the mean voltage slope is smaller, indicating that the noise of the mean voltage slope is lower. This fully demonstrates that calculating the voltage slope based on the mean voltage can effectively reduce the influence of noise, thus making subsequent overcurrent protection judgments based on this voltage slope more accurate and effective.
[0156] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.
[0157] Based on the same inventive concept, this application also provides an overcurrent protection device for implementing the overcurrent protection method described above. The solution provided by this device is similar to the solution described in the above method; therefore, the specific limitations in one or more overcurrent protection device embodiments provided below can be found in the limitations of the overcurrent protection method described above, and will not be repeated here.
[0158] In one embodiment, such as Figure 8 As shown, an overcurrent protection device is provided, comprising:
[0159] The voltage acquisition module 802 is used to acquire voltage values collected at a preset sampling period; the acquired voltage values are the voltage values between the external detection point of the resource board and the high-side detection point of the load under test.
[0160] The voltage slope calculation module 804 is used to determine the first average voltage corresponding to the first sliding window; the first average voltage is calculated by averaging the voltage values of N consecutive sampling points within the first sliding window; a target voltage slope value is determined based on the first average voltage and the second average voltage; wherein, the second average voltage is calculated by averaging the voltage values of N consecutive sampling points within the second sliding window; the target voltage slope value characterizes the voltage change of sampling points within and between the first and second sliding windows, where N≥1 and is 2. m , where m is an integer greater than or equal to 0.
[0161] The overcurrent protection module 806 is used to trigger overcurrent protection when the target voltage slope value meets the overcurrent protection triggering condition.
[0162] In some embodiments, the size of N is determined based on the ratio of a preset alarm duration threshold to the sampling period.
[0163] In some embodiments, the second sliding window moves N times according to a preset step size to obtain the first sliding window.
[0164] In some embodiments, there are N-1 intermediate sliding windows between the second sliding window and the first sliding window; the average voltage of the intermediate sliding window corresponding to each intermediate sliding window is calculated by averaging the voltage values of N consecutive sampling points within the intermediate sliding window.
[0165] In this embodiment, the voltage slope calculation module 804 is further configured to determine a first sub-slope based on the first average voltage and the average voltage corresponding to the preceding adjacent sliding windows of the first sliding window; determine a second sub-slope based on the average voltage corresponding to the following adjacent sliding windows of the second sliding window and the second average voltage; determine a corresponding third sub-slope based on the average voltage of each pair of adjacent intermediate sliding windows in the N-1 intermediate sliding windows; and sum the first sub-slope, the second sub-slope, and the third sub-slope to obtain the target voltage slope value.
[0166] In some embodiments, the overcurrent protection module 806 is further configured to trigger an alarm when the target voltage slope value exceeds the target slope threshold range; and to trigger overcurrent protection when the duration of the alarm is greater than or equal to a preset alarm duration threshold.
[0167] In some embodiments, the target slope threshold range is obtained by multiplying a preset unit slope threshold range by N.
[0168] In some embodiments, the overcurrent protection module 806 is further configured to control the output alarm signal to be in a high-level state when the target voltage slope value exceeds the target slope threshold range, and record the duration of the alarm signal being in a high-level state in real time; and to trigger overcurrent protection when the duration of the alarm signal being in a high-level state is greater than or equal to the alarm duration threshold.
[0169] In some embodiments, after the alarm signal of the control output is in a high-level state, the overcurrent protection module 806 is further configured to control the output alarm signal to switch from the high-level state to a low-level state and clear the recorded duration of the high-level state when the new target voltage slope value does not exceed the target slope threshold range; wherein, the new target voltage slope value is calculated by performing the determination of the first average voltage corresponding to the first sliding window and subsequent steps for the new first sliding window; the new first sliding window is located after the first sliding window.
[0170] Each module in the aforementioned overcurrent protection device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in the processor of the electronic device in hardware form or independent of it, or stored in the memory of the electronic device in software form, so that the processor can call and execute the corresponding operations of each module.
[0171] In one embodiment, an electronic device is provided, which may be an FPGA, and its internal structure diagram may be as follows: Figure 9As shown, this electronic device includes a processor, memory, input / output (I / O) interfaces, and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the I / O interfaces. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides the environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communicating with external terminals via a network connection. When the computer program is executed by the processor, it implements an overcurrent protection method.
[0172] Those skilled in the art will understand that Figure 9 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0173] In one embodiment, an electronic device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the embodiments of the present application.
[0174] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the steps of the embodiments of this application.
[0175] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps of the embodiments of this application.
[0176] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data shall comply with the relevant laws, regulations and standards of the relevant countries and regions.
[0177] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.
[0178] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0179] The above embodiments merely illustrate several implementation methods of this application, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of this application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. An overcurrent protection method, characterized by, The method comprises: acquiring a voltage value collected at a preset sampling period; the collected voltage value is a voltage value between an external detection point of a resource board card and a high-end detection point of a measured load; determining a first mean voltage corresponding to the first sliding window; the first mean voltage is obtained by averaging voltage values of N continuous sampling points in the first sliding window, where N≥1, and N is an integer greater than or equal to 2 m , and m is an integer greater than or equal to 0. determining a target voltage slope value according to the first mean voltage and the second mean voltage; wherein the second mean voltage is obtained by averaging voltage values of N continuous sampling points in a second sliding window; the target voltage slope value represents voltage variation of sampling points in and between the first sliding window and the second sliding window; in a case where the target voltage slope value meets an overcurrent protection triggering condition, triggering overcurrent protection.
2. The method of claim 1, wherein, The size of the N is determined according to a ratio of a preset alarm duration threshold and the sampling period.
3. The method of claim 1, wherein, The second sliding window moves N times according to a preset step to obtain the first sliding window.
4. The method of claim 3, wherein, There are N-1 intermediate sliding windows between the second sliding window and the first sliding window; a mean voltage of each intermediate sliding window is obtained by averaging voltage values of N continuous sampling points in the intermediate sliding window; The step of determining the target voltage slope value according to the first mean voltage and the second mean voltage comprises: determining a first sub-slope according to the first mean voltage and a mean voltage corresponding to a previous adjacent sliding window of the first sliding window; determining a second sub-slope according to a mean voltage corresponding to a subsequent adjacent sliding window of the second sliding window and the second mean voltage; determining a corresponding third sub-slope according to mean voltages corresponding to each pair of adjacent intermediate sliding windows of the N-1 intermediate sliding windows; summing the first sub-slope, the second sub-slope and the third sub-slope to obtain the target voltage slope value.
5. The method according to any one of claims 1 to 4, characterized in that, The step of triggering overcurrent protection in a case where the target voltage slope value meets an overcurrent protection triggering condition comprises: in a case where the target voltage slope value exceeds a target slope threshold range, triggering an alarm; in a case where a duration of the alarm is greater than or equal to a preset alarm duration threshold, triggering overcurrent protection.
6. The method of claim 5, wherein, The target slope threshold range is obtained by multiplying a preset unit slope threshold range by N.
7. The method of claim 5, wherein, The step of triggering an alarm in a case where the target voltage slope value exceeds a target slope threshold range comprises: in a case where the target voltage slope value exceeds a target slope threshold range, controlling an output alarm signal to be in a high level state, and recording a duration of the alarm signal in the high level state in real time; The step of triggering overcurrent protection in a case where a duration of the alarm is greater than or equal to a preset alarm duration threshold comprises: in a case where the duration of the alarm signal in the high level state is greater than or equal to the alarm duration threshold, triggering overcurrent protection.
8. The method of claim 7, wherein, After the alarm signal output in the high level state, the method further comprises: in a case where a new target voltage slope value does not exceed the target slope threshold range, controlling the output alarm signal to be switched from the high level state to a low level state, and clearing the recorded duration in the high level state; The new target voltage slope value is calculated according to the first average voltage corresponding to the new first sliding window and the subsequent steps.
9. An overcurrent protection device, characterized by The device comprises: The voltage acquisition module is configured to acquire voltage values collected at a preset sampling period; the collected voltage values are voltage values between an external detection point of a resource board card and a high-end detection point of a measured load; The voltage slope calculation module is configured to determine a first mean voltage corresponding to the first sliding window, wherein the first mean voltage is obtained by averaging voltage values of N continuous sampling points in the first sliding window; determine a target voltage slope value according to the first mean voltage and a second mean voltage, wherein the second mean voltage is obtained by averaging voltage values of N continuous sampling points in the second sliding window; and the target voltage slope value represents voltage variation of the sampling points in and between the first sliding window and the second sliding window, wherein N is greater than or equal to 1, and is 2 m , and m is an integer greater than or equal to 0. The overcurrent protection module is configured to trigger overcurrent protection when the target voltage slope value meets an overcurrent protection triggering condition.
10. An overcurrent protection system, characterized by The system comprises a host computer, a driver, and a resource board card, and the resource board card comprises an analog-to-digital converter and an FPGA; wherein: The FPGA is configured to receive and store configuration parameters issued by the host computer through the driver; the configuration parameters comprise a sliding average point number N; The FPGA is further configured to acquire voltage values collected by the analog-to-digital converter at a preset sampling period; the collected voltage values are voltage values between an external detection point of a resource board card and a high-end detection point of a measured load; The FPGA is further configured to determine a first average voltage corresponding to a first sliding window corresponding to the sliding average point number N; the first average voltage is calculated by averaging voltage values of N consecutive sampling points in the first sliding window; a target voltage slope value is determined according to the first average voltage and a second average voltage; the second average voltage is calculated by averaging voltage values of N consecutive sampling points in a second sliding window; the target voltage slope value represents voltage variation of sampling points in and between the first sliding window and the second sliding window; overcurrent protection is triggered when the target voltage slope value meets an overcurrent protection triggering condition.