An integrated circuit chip stress detection method
By deploying sensing elements inside the integrated circuit chip, stress is monitored in real time and stress distribution charts are generated to identify and confirm abnormal areas, thus solving the problem of insufficient real-time stress monitoring in existing technologies and ensuring the stability and reliability of the chip.
Patent Information
- Application Number
- CN202510276676.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-10
- Publication Date
- 2026-01-13
- Estimated Expiration
- 2045-03-10
AI Technical Summary
Existing technologies lack effective real-time stress monitoring methods, especially during the normal operation of integrated circuit chips. This results in potential stress problems not being detected and located in a timely manner, affecting the reliability and lifespan of the chips.
By deploying sensing elements inside integrated circuits, stress data is acquired through these sensing elements, converted into digital information, a stress distribution chart is constructed, abnormal patterns are identified, targeted test programs are initiated, and alarm information is generated to indicate abnormal stress areas.
It enables real-time stress monitoring of integrated circuit chips, automatically identifies and accurately locates areas of abnormal stress, improves the timeliness and accuracy of stress monitoring, and ensures the stable operation and reliability of the chip throughout its entire life cycle.
Smart Images

Figure CN119845459B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of stress detection technology, and specifically relates to a method for stress detection of integrated circuit chips. Background Technology
[0002] Stress management is a crucial aspect of the design and manufacturing process of integrated circuit (IC) chips. Current technologies typically employ offline testing methods to assess the stress condition of the chip. These methods mainly include:
[0003] Static stress testing: This method estimates the internal stress distribution by physically measuring the chip at specific time points or observing surface morphology changes using tools such as microscopes. While it can provide some stress information, it cannot achieve real-time monitoring.
[0004] Finite element analysis (FEA) simulation: This uses computer simulation software to predict the stress distribution of a chip under different operating conditions. However, this type of simulation relies on accurate material parameters and boundary conditions, and it is difficult to capture the dynamic stress changes in actual operation.
[0005] Sensor Integration: Some advanced solutions embed dedicated stress sensors during the chip design phase to collect stress data. While this approach can achieve online monitoring to some extent, the limited data processing capabilities and real-time response speed of traditional sensors result in untimely and inaccurate stress anomaly warnings.
[0006] A major problem with existing technologies is the lack of effective real-time stress monitoring methods, especially during normal chip operation. Because most existing methods focus on stress assessment under static or preset conditions, they cannot promptly detect and locate transient stress anomalies arising under dynamic operating conditions. This lag means potential stress problems are not addressed in a timely manner, thus affecting chip reliability and lifespan. Summary of the Invention
[0007] The purpose of this invention is to provide a stress detection method for integrated circuit chips, which can significantly improve the timeliness and accuracy of stress monitoring, ensure that any stress changes that threaten chip performance are captured at the first moment, thereby ensuring the stable operation and reliability of the chip throughout its entire life cycle, and solving the problems mentioned in the background art.
[0008] To achieve the above objectives, the present invention provides a method for stress detection of integrated circuit chips, comprising:
[0009] The sensing element is deployed in a predetermined position inside the integrated circuit to collect stress data, and an initial signal is generated based on the data acquired by the sensing element.
[0010] The generated initial signal is converted into digital information, and the analog-to-digital converter completes the transformation from analog signal to discrete numerical representation. Based on the discrete numerical values, a dataset representing the relationship between time and stress change is constructed.
[0011] Using the generated dataset, a mapping chart that visually displays the dynamics of stress distribution is generated. The mapping chart is then analyzed to determine the location of abnormal patterns in the chart.
[0012] Based on the identified abnormal patterns, the problem area is delineated, and targeted testing procedures are initiated for the delineated problem area to confirm the actual existence of abnormal stress.
[0013] After the test, an alarm message is output to the monitoring system, indicating the specific location of the abnormal stress area.
[0014] Preferably, the step of deploying the sensing element at a predetermined location within the integrated circuit to collect stress data includes:
[0015] When the sensing element is activated, an initial electrical signal U is generated. The initial electrical signal U is proportional to the stress level L, and the expression is U=k*L.
[0016] Apply a linear transformation to the original signal U to generate a standardized signal G, with the formula G=a*U+b;
[0017] Based on the standardized signal G, the average stress level M is calculated using M=sum(Gi) / n;
[0018] When M is greater than the preset threshold Th, the subsequent response action is triggered, provided that M>Th.
[0019] Preferably, generating the initial signal based on the data acquired by the sensing element includes:
[0020] Read the original electrical signal X output by the sensing element; the intensity of the original electrical signal X is related to the local stress condition.
[0021] Apply a linear transformation to the original electrical signal X to generate an adjusted signal Y, which is then calculated using Y=c*X+d;
[0022] Construct a signal intensity distribution map D, which displays the Y value corresponding to different locations;
[0023] Calculate the relative stress index Z for each deployment point using Z=sum(Yi^2) / m.
[0024] Preferably, the conversion of the generated initial signal into digital information includes:
[0025] The adjusted signal Y is received and a sampling action is performed to generate samples Us at discrete time points. The sampling interval is denoted as s. The quantization process is applied to form a value Vs, with the formula Vs=round(Us / q)*q, where q is the quantization step size.
[0026] Encode the numerical value Vs, construct the binary sequence Ws, and ensure that Ws = binary(Vs).
[0027] Preferably, constructing a dataset representing the relationship between time and stress variation based on discrete numerical values includes:
[0028] Collect the binary sequence Ws, convert Ws back to the quantized stress value Vs, and use the inverse encoding process Vs=decode(Ws);
[0029] By combining the sampling time ts, a time-stress pair TS is formed, expressed as TS=(ts,Vs);
[0030] Summarize all time-stress pairs TS, create a record set Rs, and arrange them in chronological order, ensuring that Rs = {TS1, TS2, ..., TSn}.
[0031] Preferably, the step of generating a mapping chart that intuitively displays the dynamics of stress distribution using the formed dataset includes:
[0032] Read the data record set Rs, calculate the stress change amplitude ΔL at each deployment point at different time points, and use ΔL=Lt-L(t-1);
[0033] Create a color coding rule Cc that maps stress changes to the visual color range, with the expression Cc=colormap(ΔL);
[0034] Plot a mapping chart M, integrating the color information of all deployment points, ensuring M=plot(T,P,Cc), where T is the time axis and P is the coordinate of the deployment point location.
[0035] Preferably, the step of parsing the mapping chart to determine the location of the abnormal pattern in the chart includes:
[0036] Analyze the color distribution in the mapping chart M and calculate the color deviation Dp of each deployment point P. The formula is Dp(P)=|Cc(P)-C_avg|, where Cc(P) is the color code value of deployment point P and C_avg is the average value of the color code values of all deployment points.
[0037] Establish a threshold Th to distinguish between normal and abnormal color changes, with the expression Th=median(Dp)+k*IQR(Dp); filter out deployment points P that exceed the range of Th to form a suspected anomaly set Ep, with the condition Ep={P|Dp(P)>Th};
[0038] Perform a spatial correlation assessment on the members within Ep. If the following conditions are met
[0039] F(P1, P2) = dist(P1, P2) < d_max and P1, P2 ∈ Ep, then it is marked as an abnormal pattern area Ra.
[0040] Preferably, based on the identified abnormal pattern positions, delimit the scope of the problematic area, including:
[0041] Obtain the marked abnormal pattern area Ra;
[0042] For each abnormal position Ra, determine its neighborhood Na, which is defined as the set composed of all other deployment points whose distance from Ra does not exceed r. The expression is Na = {Q|dist(Ra, Q) ≤ r};
[0043] Calculate the average color coding Avg_Cc of all deployment points within each neighborhood Na, using Avg_Cc(Na) = sum(Cc(Q)) / count(Q);
[0044] Compare the neighborhood average color coding Avg_Cc with the overall average color coding C_avg. When the difference ΔCc = |Avg_Cc - C_avg| exceeds the set threshold Th, mark the neighborhood Na as a potential problem area Pa. The conditional expression is Pa = {Na|ΔCc > Th}.
[0045] Preferably, for the delimited problem area, start a targeted test procedure to confirm the actual existence of abnormal stress conditions, including:
[0046] Select the marked potential problem area Pa;
[0047] For each target area Pa, deploy a sensing element Hs and record the newly generated signal strength S_new, ensuring S_new = measure(Hs);
[0048] Compare the new signal strength S_new with the original signal strength S_original, and evaluate the stress change through Ratio = S_new / S_original;
[0049] If Ratio > Limit, then confirm that there is an actual abnormal stress condition in this area and include this area in the final abnormal list La. The conditional expression is La = {Pa|Ratio > Limit}.
[0050] Preferably, after the test, output an alarm message to the monitoring system, indicating the specifically located abnormal stress area, including:
[0051] Collect and confirm the final list of exceptions, La;
[0052] For each abnormal region Pa, an alarm data packet Ba is constructed, which includes the location coordinates P, the stress change ratio Ratio, and the timestamp Ts, with the expression Ba=(P,Ratio,Ts).
[0053] Convert Ba to Fa, a format that the monitoring system can parse, using Fa=encode(Ba);
[0054] Send the converted alarm message Fa, and record the sending status Sa. Verify successful transmission by using ACK. The conditional expressions are Sa=send(Fa) and check(ACK). If ACK==True, it indicates that the alarm has been successfully transmitted.
[0055] Technical effects and advantages of the present invention: The stress detection method for integrated circuit chips proposed in this invention has the following advantages compared with the prior art:
[0056] This method enables real-time stress monitoring of integrated circuit chips in operation and has the ability to automatically identify and accurately locate areas of abnormal stress. By introducing highly sensitive sensing elements, efficient signal processing mechanisms, and intelligent analysis algorithms, this method can significantly improve the timeliness and accuracy of stress monitoring, ensuring that any stress changes that threaten chip performance are captured at the first moment, thereby guaranteeing the stable operation and reliability of the chip throughout its entire life cycle. Attached Figure Description
[0057] Figure 1 This is a flowchart of the integrated circuit chip stress detection method of the present invention. Detailed Implementation
[0058] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. The specific embodiments described herein are merely used to explain the present invention and are not intended to limit the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0059] This invention provides a method for stress detection of integrated circuit chips, such as... Figure 1 As shown, it includes the following steps:
[0060] The first step involves deploying the sensing element (piezoresistive sensor) at a predetermined location within the integrated circuit (critical nodes or areas prone to stress concentration) to collect stress data. This specifically includes:
[0061] When the sensing element is activated, an initial electrical signal U is generated. The initial electrical signal U is proportional to the stress level L, expressed as U=k*L, where k is a scaling factor representing the proportional relationship between the initial electrical signal U and the stress level L. A linear transformation is applied to the original signal U to generate a standardized signal G, with the formula G=a*U+b, where a is a scaling factor used to adjust the amplitude of the original signal U, and b is an offset used to numerically shift the standardized signal G. Based on the standardized signal G, the average stress level M is calculated using M=sum(Gi) / n, where n represents the number of samples of the standardized signal G used to calculate the average stress level M, and Gi represents the i-th standardized signal value. When M is greater than a preset threshold Th, subsequent response actions are triggered, with the condition M>Th.
[0062] Example 1
[0063] Assumptions:
[0064] Coefficient k = 0.5 (a scaling factor between stress level L and initial electrical signal U).
[0065] The coefficient a = 2.0 (a scaling factor used for the linear transformation of the original signal U to the normalized signal G);
[0066] Offset b = 1.0 (the offset used for linear transformation of the original signal U to the normalized signal G).
[0067] Preset threshold Th=3.5 (response is triggered when the average stress level M exceeds this value);
[0068] Suppose that the sensing element detects a set of stress data in the activated state, corresponding to the following stress level L value: L=[2,4,6,8];
[0069] Based on the expression U=k*L, the corresponding initial electrical signal U is calculated as: U=[0.52,0.54,0.56,0.5*8]=[1,2,3,4];
[0070] Then, a linear transformation is applied to the original signal U to generate a normalized signal G, using the formula G=aU+b: G=[21+1,22+1,23+1,2*4+1]=[3,5,7,9];
[0071] Next, based on the standardized signal G, the average stress level M is calculated: M=sum(G) / n=(3+5+7+9) / 4=24 / 4=6;
[0072] Finally, the average stress level M and the preset threshold Th were compared: M > Th = 6 > 3.5;
[0073] Because the average stress level M is greater than the preset threshold Th, subsequent response actions are triggered.
[0074] In this embodiment, the stress changes inside the integrated circuit can be monitored in real time through the above process, and situations where the stress level exceeds the safe range can be automatically identified. This method ensures that measures can be taken promptly to investigate and address potential problems, helping to prevent stress-induced failures and improving chip reliability and lifespan.
[0075] The second step involves generating an initial signal based on the data acquired by the sensing element; specifically, this includes:
[0076] The original electrical signal X output by the sensing element is read, and the intensity of the original electrical signal X is related to the local stress condition. A linear transformation is applied to the original electrical signal X to generate an adjusted signal Y, which is calculated using Y=c*X+d, where c is a scaling factor used to adjust the amplitude of the original electrical signal X, and d is an offset used to numerically shift the adjusted signal Y. A signal intensity distribution map D is constructed, which displays the Y values corresponding to different locations. The relative stress index Z for each deployment point is calculated using Z=sum(Yi^2) / m, where Yi represents the adjusted signal value output by the i-th sensing element at a certain moment, and m represents the number of adjusted signal values involved in the calculation of the relative stress index Z.
[0077] Example 2
[0078] Assumptions:
[0079] The coefficient c = 0.8 (a scaling factor used for the linear transformation of the original signal X to the adjusted signal Y).
[0080] Offset d = -2.0 (the offset used for linear transformation of the original signal X to the adjusted signal Y);
[0081] The number of sensing elements is m=4 (used to calculate the relative stress index Z).
[0082] Suppose there are four sensing elements, and their original output electrical signal X is: X=[10,15,20,25]
[0083] Based on the expression Y=cX+d, the corresponding adjusted signal Y is calculated as: Y=[0.810-2,0.815-2,0.820-2,0.8*25-2]=[6,10,14,18];
[0084] Next, a signal strength distribution map D is constructed, which shows the Y values corresponding to different locations. In this simple example, the Y value for each location can be simply listed, but in practical applications, this is a more complex visualization tool or data structure used to visually display the signal strength at each location.
[0085] Next, the relative stress index Z for each deployment point is calculated using the formula Z=sum(Yi^2) / m. For all sensing elements, the sum of squares of their respective Y values is first calculated:
[0086] sum(Yi^2)=6^2+10^2+14^2+18^2=36+100+196+324=656;
[0087] Therefore, the relative stress index Z is: Z = sum(Yi^2) / m = 656 / 4 = 164;
[0088] Through the above process, the adjusted signal Y can be obtained, which reflects the original electrical signal X after linear transformation. This transformation can better adapt to subsequent data processing requirements or compensate for the characteristics of sensing elements. Constructing a signal intensity distribution map D helps to intuitively understand the stress conditions at the locations of each sensing element. The relative stress index Z provides a quantitative way to compare stress levels between different locations, which is particularly useful for identifying areas of stress anomalies.
[0089] For example, in this instance, an abnormally high Z-value indicates an excessive stress problem, requiring further investigation. This approach helps engineers quickly locate problems and take appropriate measures to maintain the health of integrated circuit chips.
[0090] The third step is to convert the generated initial signal into digital information. This is achieved through an analog-to-digital converter, transforming the analog signal into a discrete numerical representation. Specifically, this includes:
[0091] The adjusted signal Y is received and a sampling action is performed to generate samples Us at discrete time points. The sampling interval is denoted as s. The quantization process is applied to form a value Vs, with the formula Vs=round(Us / q)*q, where q is the quantization step size. The value Vs is encoded to construct a binary sequence Ws, ensuring that Ws=binary(Vs).
[0092] Example 3
[0093] Assumptions:
[0094] The sampling interval s = 0.1 seconds (used to define the sample frequency at discrete time points).
[0095] Quantization step size q=1 (used for resolution during quantization).
[0096] Suppose that the adjusted signal Y changes over time as follows (simplified to discrete values): Y=[6,10,14,18];
[0097] According to the expression Vs = round(Us / q) * q, each Y value needs to be sampled and quantized. Since we are directly processing Y values here, we can assume Us = Y. For each Y value, the quantization process is applied to form the numerical value Vs. Since the quantization step size q is set to 1, this effectively rounds each Y value to the nearest integer. In this example, all Y values are already integers, so quantization will not change them.
[0098] Vs=[round(6 / 1)*1,round(10 / 1)*1,round(14 / 1)*1,round(18 / 1)*1]=[6,10,14,18];
[0099] Next, the numerical value Vs is encoded to construct the binary sequence Ws. This means converting each Vs value into its corresponding binary representation. For example, in an 8-bit system:
[0100] Ws=[binary(6),binary(10),binary(14),binary(18)]=["00000110","00001010","00001110","00010010"];
[0101] Through the above process, continuous analog signals can be converted into discrete digital information, which is crucial for subsequent digital signal processing. Sampling ensures that snapshots of the signal can be obtained at fixed intervals, while quantization simplifies signal representation, making it more efficient for computers to process. Constructing a binary sequence Ws enables the signal to be stored, transmitted, and processed digitally, greatly improving the speed and efficiency of data processing and reducing the impact of noise.
[0102] Furthermore, this digital approach allows for the use of various advanced algorithms for data analysis, such as pattern recognition and predictive modeling, thereby enhancing the performance and reliability of stress monitoring systems. Ultimately, this method helps to more accurately monitor the operating status of integrated circuit chips, promptly identify potential problems, and ensure chip stability and lifespan.
[0103] The fourth step involves constructing a dataset representing the relationship between time and stress variation based on discrete numerical values; specifically, this includes:
[0104] Collect binary sequences Ws, convert Ws back to quantized stress values Vs using the inverse encoding process Vs=decode(Ws); combine the sampling time ts to form time-stress pairs TS, with the expression TS=(ts,Vs); summarize all time-stress pairs TS, establish a record set Rs, and arrange them in chronological order to ensure that Rs={TS1,TS2,...,TSn}.
[0105] Example 4
[0106] Assumptions:
[0107] The sampling times ts are [0.1, 0.2, 0.3, 0.4] seconds (used as timestamps in the time-stress pair TS).
[0108] Suppose we have the following binary sequence Ws (8-bit representation): Ws=["00000110","00001010","00001110","00010010"];
[0109] Based on the expression Vs=decode(Ws), each Ws value needs to be converted back to the quantized stress value Vs. Here, we simply convert the binary number to a decimal integer:
[0110] Vs=[decode("00000110"),decode("00001010"),decode("00001110"),decode("00010010")]=[6,10,14,18];
[0111] Next, combining the sampling time ts, we form the time-stress pair TS, expressed as TS=(ts,Vs). For example, this would be:
[0112] TS=[(0.1,6),(0.2,10),(0.3,14),(0.4,18)];
[0113] Finally, all time-stress pairs (TS) are aggregated to create a recordset Rs, arranged chronologically. In this example, since the data points are already arranged chronologically, Rs can be created directly:
[0114] Rs={TS1,TS2,TS3,TS4}={(0.1,6),(0.2,10),(0.3,14),(0.4,18)};
[0115] Through the above process, a dataset Rs representing the relationship between time and stress variation was constructed. This dataset stores information for each sampling point in the form of time-stress pairs, allowing for the tracking of stress changes over time. This type of time series data is well-suited for analyzing stress trends, identifying anomalous patterns, and predicting future stress behavior.
[0116] Furthermore, it lays the foundation for subsequent steps, such as generating visually appealing maps illustrating the dynamics of stress distribution, or performing more complex signal processing and data analysis. Ultimately, this approach helps enable real-time monitoring of the stress conditions of integrated circuit chips, ensuring their stable operation and providing timely warnings of performance-impacting issues, thereby guaranteeing the reliability and safety of the chip throughout its entire lifecycle.
[0117] The fifth step involves using the generated dataset to create a mapping chart that visually displays the dynamics of stress distribution. This includes:
[0118] Read the data record set Rs, calculate the stress change amplitude ΔL of each deployment point at different time points, and use ΔL=Lt-L(t-1), where Lt represents the stress value at the current time point t, and L(t-1) represents the stress value at the previous time point t-1.
[0119] Create a color coding rule Cc that maps stress changes to the visual color range, with the expression Cc=colormap(ΔL);
[0120] Plot a mapping chart M, integrating the color information of all deployment points, ensuring M=plot(T,P,Cc), where T is the time axis and P is the coordinate of the deployment point location.
[0121] Example 5
[0122] Assumptions:
[0123] The deployment point coordinates P are [P1, P2, P3, P4] (used to map the location information in the chart);
[0124] The time axis T is [0.1, 0.2, 0.3, 0.4] seconds (used for mapping the time axis of the chart).
[0125] Suppose we have the following set of records Rs arranged in chronological order: Rs={(0.1,6),(0.2,10),(0.3,14),(0.4,18)};
[0126] First, the stress variation amplitude ΔL at each deployment point needs to be calculated at different time points using the expression ΔL = Lt - L(t-1). Since this example only uses data from one sensing element, this data will be used to simulate the variation amplitude at one deployment point. For the case of multiple deployment points, this process needs to be repeated for each point:
[0127] Suppose that a new stress value is obtained at the next time point: Rs_new={(0.5,22)};
[0128] Therefore, the variation ΔL between 0.4 seconds and 0.5 seconds will be: ΔL = Lt - L(t-1) = 22 - 18 = 4;
[0129] If more historical data is available, ΔL can be calculated for each time interval and a list can be created to store them. For example, if all time intervals are the same, the following ΔL list would be obtained (this is just an example): ΔL_list=[4,4,4,4];
[0130] Next, a color coding rule Cc is created to map stress changes to a visual color gamut. This typically involves choosing a suitable color mapping function `colormap()`, which can assign different colors based on different ΔL values. For example, the color can be set to change from blue to red as ΔL increases. The specific implementation depends on the plotting library or tool used, but it can be simplified as follows:
[0131] Cc = colormap(ΔL);
[0132] In this example, you can simply specify some colors that correspond to ΔL values, for example:
[0133] When ΔL<=0: Blue;
[0134] When 0 < ΔL <= 2: Green;
[0135] When 2 < ΔL <= 4: Yellow;
[0136] When ΔL>4: Red;
[0137] Finally, a mapping chart M is drawn, integrating the color information of all deployment points. Here, T is the time axis, P is the deployment point location coordinates, and Cc is the color coding based on stress changes. Because this example only has a single deployment point, the location coordinate P can be omitted or fixed. The actual mapping chart will combine the time axis T and the stress change magnitude ΔL to display the color information. If a chart containing multiple deployment points is to be drawn, all Ts and their corresponding Ps will be traversed, and the correct color will be applied according to Cc.
[0138] Through the above process, a visually intuitive mapping chart M is generated, illustrating the dynamics of stress distribution. This chart uses color coding to represent stress changes over time, with time and space as axes. This visualization method helps engineers quickly understand stress trends and identify the locations and timing of abnormal stress increases. It can also be used to compare stress changes between different deployment points and discover potential problem areas.
[0139] Furthermore, this method facilitates deeper data analysis, such as pattern recognition and trend prediction, thereby optimizing the design and operating conditions of integrated circuit chips. Ultimately, using mapping charts, engineers can more effectively monitor and maintain the health status of chips, ensuring their stability and reliability.
[0140] Step 6: Analyze the mapping chart to determine the positions where abnormal patterns appear in the chart; specifically including:
[0141] Analyze the color distribution in the mapping chart M, calculate the color deviation degree Dp of each deployment point P. The formula is Dp(P) = |Cc(P) - C_avg|, where Cc(P) is the color coding value of deployment point P, C_avg is the average value of the color coding values of all deployment points, and Dp(P) represents the color deviation degree of deployment point P; establish a threshold Th to distinguish normal and abnormal color changes. The expression is Th = median(Dp) + k * IQR(Dp), where median(Dp) represents the median of the color deviation degrees Dp(P) of all deployment points, IQR(Dp) represents the interquartile range of the color deviation degrees Dp(P) of all deployment points, and k is a coefficient used to adjust the sensitivity of the threshold Th; filter out the deployment points P that exceed the range of Th to form a suspected abnormal set Ep. The condition is Ep = {P|Dp(P)>Th}; perform a spatial correlation assessment on the members within Ep. If F(P1, P2) = dist(P1, P2) < d_max and P1, P2 ∈ Ep are satisfied, it is marked as an abnormal pattern area Ra. <d_max is the maximum distance threshold used to define the maximum allowable distance between two deployment points.
[0142] Example 6
[0143] Hypothetical conditions:
[0144] The position coordinates P of the deployment points are [P1, P2, P3, P4] (for the position information in the mapping chart);
[0145] The color coding values Cc(P) of all deployment points are [0.2, 0.5, 0.7, 0.9] (representing different stress levels, expressed as standardized values);
[0146] The maximum distance d_max for spatial correlation assessment = 0.5 (the unit depends on the actual application);
[0147] The coefficient k = 1.5 (the coefficient used to determine the threshold Th);
[0148] First, calculate the average value C_avg of the color coding values of all deployment points: C_avg = sum(Cc(P)) / n = (0.2 + 0.5 + 0.7 + 0.9) / 4 = 2.3 / 4 = 0.575;
[0149] Then, analyze the color distribution in the mapping chart M and calculate the color deviation degree Dp of each deployment point P: Dp(P1) = |Cc(P1) - C_avg| = |0.2 - 0.575| = 0.375 Dp(P2) = |Cc(P2) - C_avg| = |0.5 - 0.575| = 0.075 Dp(P3) = |Cc(P3) - C_avg| = |0.7 - 0.575| = 0.125 Dp(P4) = |Cc(P4) - C_avg| = |0.9 - 0.575| = 0.325;
[0150] Next, establish a threshold Th to distinguish normal and abnormal color changes. Here, it is necessary to calculate the median of Dp and the interquartile range IQR(Dp):
[0151] The sorted Dp list is [0.075, 0.125, 0.325, 0.375]. The median median(Dp) = (0.125 + 0.325) / 2 = 0.225. The interquartile range IQR(Dp) = the third quartile - the first quartile = 0.325 - 0.075 = 0.25;
[0152] Therefore, the threshold Th is:
[0153] Th = median(Dp) + k * IQR(Dp) = 0.225 + 1.5 * 0.25 = 0.225 + 0.375 = 0.6;
[0154] Filter out the deployment points P that exceed the Th range to form a suspected abnormal set Ep: Ep = {P | Dp(P) > Th} = {P1, P4} (because Dp(P1) = 0.375 and Dp(P4) = 0.325 are both greater than Th = 0.6);
[0155] Finally, perform a spatial correlation assessment on the members within Ep. Assume the defined spatial coordinates are: the coordinates of P1 are (x1, y1), and the coordinates of P4 are (x4, y4);
[0156] If F(P1, P4) = dist(P1, P4) < d_max is satisfied, it is marked as an abnormal pattern area Ra. For this example, assume dist(P1, P4) = 0.3 < d_max, then:
[0157] Ra = {P1, P4};
[0158] The above process allows for the identification and location of anomalous patterns in the mapping chart. Specifically, by analyzing color distribution, calculating color deviation, and setting appropriate thresholds, deployment points exhibiting stress changes significantly different from the average level can be effectively identified. Further spatial correlation assessment helps confirm whether these anomalous points form a coherent anomalous pattern region Ra, which is where stress problems tend to concentrate.
[0159] This method helps engineers quickly pinpoint chip areas requiring special attention, enabling timely investigation or maintenance to prevent potential problems from escalating into more serious failures. Ultimately, this approach improves the accuracy and response speed of stress monitoring systems, ensuring the safe operation of integrated circuit chips.
[0160] Step 7: Based on the identified abnormal patterns, define the area where the problem exists, specifically including:
[0161] Obtain the marked abnormal pattern region Ra; for each abnormal location Ra, determine its neighborhood Na, defined as the set of all other deployment points whose distance from Ra does not exceed r, expressed as Na={Q|dist(Ra,Q)≤r}, where r is the distance threshold representing the maximum radius of the neighborhood; calculate the average color code Avg_Cc of all deployment points within each neighborhood Na, using Avg_Cc(Na)=sum(Cc(Q)) / count(Q), where Cc(Q) represents the color code value of deployment point Q, and count(Q) is a counting operation representing the number of deployment points within neighborhood Na; compare the neighborhood average color code Avg_Cc with the overall average color code C_avg, and when the difference ΔCc=|Avg_Cc-C_avg| exceeds the set threshold Th, mark neighborhood Na as a potential problem region Pa, with the condition expression Pa={Na|ΔCc>Th}.
[0162] Example 7
[0163] Assumptions:
[0164] The abnormal pattern region Ra contains [P1, P4] (based on the result of the previous step);
[0165] Neighborhood radius r = 0.6 (units depend on the actual application);
[0166] Set the threshold Th=0.3 (to determine whether the neighborhood is marked as a potential problem area);
[0167] First, obtain the marked abnormal pattern region Ra: Ra={P1,P4};
[0168] For each anomalous location Ra, determine its neighborhood Na. Assume the coordinates of all deployment points are represented in the following (x, y) format:
[0169] P1:(0.1,0.2);
[0170] P2:(0.5,0.4);
[0171] P3:(0.8,0.9);
[0172] P4:(0.7,0.6);
[0173] Calculate the neighborhood Na for P1 and P4 respectively. Here, it is assumed that the dist() function returns the Euclidean distance between two points, and all deployed points are considered. If the distance is less than or equal to r, then the point belongs to neighborhood Na.
[0174] For P1:
[0175] dist(P1,P2)=sqrt((0.5-0.1)^2+(0.4-0.2)^2)=sqrt(0.16+0.04)≈0.447 <r;
[0176] dist(P1,P3)>r;
[0177] dist(P1,P4)>r;
[0178] Therefore, Na(P1) = {P2};
[0179] For P4:
[0180] dist(P4,P2) <r;
[0181] dist(P4,P3) <r;
[0182] dist(P4,P1)>r;
[0183] Therefore, Na(P4) = {P2, P3};
[0184] Next, calculate the average color code Avg_Cc for all deployment points within each neighborhood Na. Assume the color code Cc is:
[0185] Cc(P1) = 0.2;
[0186] Cc(P2) = 0.5;
[0187] Cc(P3) = 0.7;
[0188] Cc(P4) = 0.9;
[0189] So:
[0190] Avg_Cc(Na(P1))=sum(Cc(Q)) / count(Q)=0.5 / 1=0.5Avg_Cc(Na(P4))=(0.5+0.7) / 2=0.6;
[0191] Next, the neighborhood average color code Avg_Cc is compared with the overall average color code C_avg. Assume the overall average color code C_avg is 0.575, calculated in the previous step.
[0192] The difference ΔCc is: ΔCc(P1)=|Avg_Cc(Na(P1))-C_avg|=|0.5-0.575|=0.075; ΔCc(P4)=|Avg_Cc(Na(P4))-C_avg|=|0.6-0.575|=0.025;
[0193] When the difference ΔCc exceeds the set threshold Th, the neighborhood Na is marked as a potential problem region Pa. Since the ΔCc values are all less than Th = 0.3, no neighborhood will be marked as a potential problem region Pa in this case. However, if the threshold is adjusted or other conditions arise that cause ΔCc to exceed Th, the corresponding neighborhood will be marked.
[0194] The above process allows for the delineation of problematic areas based on the identified anomaly patterns. This method helps to more accurately pinpoint the extent of stress anomalies, rather than focusing solely on single-point anomalies. By analyzing the average color-coded values within the neighborhood and comparing them to the overall average, regions that adversely affect chip performance can be identified.
[0195] This approach allows engineers to take preventative maintenance measures in advance, optimize integrated circuit design and operating conditions, and ensure system stability and reliability. Ultimately, this approach improves the accuracy of fault diagnosis, helps prevent potential problems from escalating, and thus ensures the healthy operation of the chip throughout its entire lifecycle.
[0196] Step 8: For the identified problem area, initiate targeted testing procedures to confirm the actual existence of abnormal stress; specifically including:
[0197] Select the potentially problematic region Pa;
[0198] For each target area Pa, deploy a sensing element Hs, record the newly generated signal strength S_new, and ensure that S_new = measure(Hs);
[0199] By comparing the new signal strength S_new with the original signal strength S_original, the stress change is evaluated using Ratio=S_new / S_original;
[0200] If Ratio > Limit, then the presence of an actual abnormal stress condition in the region is confirmed, and this region is included in the final anomaly list La. The conditional expression is La = {Pa|Ratio > Limit}, where Limit is a preset threshold used to determine whether Ratio represents a significant stress change.
[0201] Example 8
[0202] Assumptions:
[0203] The potential problem region Pa contains [Na(P1),Na(P4)] (based on the results of the previous step);
[0204] Signal strength ratio assessment threshold Limit=1.2 (used to confirm actual abnormal stress conditions);
[0205] First, select the potential problem region Pa: Pa = {Na(P1), Na(P4)};
[0206] For each target region Pa, a sensing element Hs is deployed, and the newly generated signal intensity S_new is recorded. Assume the following new measurement results are obtained:
[0207] For the new signal intensity of Na(P1), S_new(Na(P1))=measure(Hs);
[0208] For the new signal intensity of Na(P4), S_new(Na(P4))=measure(Hs);
[0209] Assume the original signal strength S_original is:
[0210] S_original(Na(P1))=5;
[0211] S_original(Na(P4))=7;
[0212] The new measured signal strengths are as follows (units depend on the specific application):
[0213] S_new(Na(P1))=6;
[0214] S_new(Na(P4))=8;
[0215] Next, the stress change is assessed by comparing the new signal strength S_new with the original signal strength S_original using Ratio = S_new / S_original.
[0216] Ratio(Na(P1))=S_new(Na(P1)) / S_original(Na(P1))=6 / 5=1.2;
[0217] Ratio(Na(P4))=S_new(Na(P4)) / S_original(Na(P4))=8 / 7≈1.143;
[0218] Finally, if Ratio > Limit, then the presence of an actual abnormal stress condition in the region is confirmed, and this region is included in the final anomaly list La. According to the settings, only regions with Ratio greater than Limit are added to La. Therefore:
[0219] For Na(P1), since Ratio(Na(P1)) = 1.2 equals Limit, it depends on how the equality is interpreted; if it is strictly greater than, then it will not be added.
[0220] For Na(P4), since Ratio(Na(P4))≈1.143 is less than Limit, it will not be added.
[0221] If we slightly adjust the data so that Ratio(Na(P1)) is indeed greater than Limit, for example, Ratio(Na(P1)) = 1.25, then the final anomaly list La will be:
[0222] La={Pa|Ratio>Limit}={Na(P1)};
[0223] Through the above process, targeted testing procedures can be initiated for the identified problem areas to confirm the existence of actual abnormal stress conditions. This method ensures secondary verification of suspected problem areas, thereby reducing false alarms. By accurately comparing the strengths of new and old signals and calculating their ratio, it is possible to effectively assess whether stress changes exceed the normal range. Ultimately, this method helps to more accurately identify which areas do indeed have actual abnormal stress conditions requiring attention and add them to the final anomaly list La for further action, such as fault analysis, design improvements, or preventative maintenance.
[0224] Step nine: After testing, output alarm information to the monitoring system, indicating the specific location of the abnormal stress area; specifically including:
[0225] Collect and confirm the final list of exceptions, La;
[0226] For each abnormal region Pa, an alarm data packet Ba is constructed, which includes the location coordinates P, the stress change ratio Ratio, and the timestamp Ts, with the expression Ba=(P,Ratio,Ts).
[0227] Convert Ba to Fa, a format that the monitoring system can parse, using Fa=encode(Ba);
[0228] Send the converted alarm message Fa, and record the sending status Sa. Verify successful transmission by using ACK. The conditional expressions are Sa=send(Fa) and check(ACK). If ACK==True, it indicates that the alarm has been successfully transmitted.
[0229] Example 9
[0230] Assumptions:
[0231] The final anomaly list La contains [Na(P1)] (based on the result of the previous step);
[0232] Timestamp Ts="2025-01-06 18:30:00" (used for time information in alarm data packets);
[0233] First, collect the final list of confirmed anomalies, La: La = {Na(P1)};
[0234] For each abnormal region Pa, an alarm data packet Ba is constructed, containing the location coordinates P, the stress change rate Ratio, and the timestamp Ts. Assume the following information is available:
[0235] The location coordinates of the abnormal region Na(P1) are P1=(0.1,0.2);
[0236] The stress variation ratio Ratio(Na(P1)) = 1.25;
[0237] Timestamp Ts="2025-01-06 18:30:00";
[0238] Therefore, the constructed alarm data packet Ba is: Ba(Na(P1))=(P1,Ratio(Na(P1)),Ts)=((0.1,0.2),1.25,"2025-01-0618:30:00");
[0239] Next, the alarm data packet (Ba) is converted into a format (Fa) that the monitoring system can parse. Here, it is assumed that the `encode()` function can convert the alarm data packet into a suitable data format for transmission, such as JSON or XML. Taking JSON as an example, the encoded Fa looks like this:
[0240] json
[0241] Fa={"location":{"x":0.1,"y":0.2},"ratio":1.25,"timestamp":"2025-01-0618:30:00"};
[0242] Then, the converted alarm message Fa is sent, and the sending status Sa is recorded. Assume the send() function is responsible for sending the alarm message and returns an ACK signal to verify successful transmission. If ACK == True, it indicates that the alarm has been successfully delivered. In this example, the sending process can be assumed to be successful:
[0243] plaintext
[0244] Sa = send(Fa)check(ACK) # Assume this check returns True;
[0245] If ACK==True, it means that the alarm information has been successfully transmitted to the monitoring system.
[0246] Through the above process, alarm information can be effectively output to the monitoring system, indicating the specific location of the abnormal stress area. This method ensures that detected anomalies can be promptly communicated to relevant systems or personnel for rapid action. By constructing a detailed alarm data packet Ba, including location coordinates, stress change rate, and timestamp, sufficient information is provided to understand the nature of the problem and the time and location of its occurrence. Converting the alarm data packet into a format Fa that the monitoring system can parse ensures seamless information transfer between different systems.
[0247] Finally, the successful transmission of alarm information is verified through the ACK mechanism, improving communication reliability and ensuring that critical alarms are not lost. This method not only improves the speed of fault response but also enhances the overall security of the system, helps maintain the stable operation of integrated circuit chips, and provides valuable data support for subsequent analysis and preventative measures.
[0248] Finally, it should be noted that the above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art can still modify the technical solutions described in the foregoing embodiments or make equivalent substitutions for some of the technical features. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the protection scope of the present invention.
Claims
1. An integrated circuit chip stress detection method, characterized by, The method comprises the following steps: Deploying sensing elements in preset positions inside an integrated circuit to collect stress data, and generating initial signals according to the data obtained by the sensing elements; Converting the generated initial signals into digital information, completing the conversion from analog signals to discrete numerical values by means of an analog-to-digital converter, and constructing a data set representing the relationship between time and stress change according to the discrete numerical values; Generating a mapping chart intuitively showing the dynamics of stress distribution by using the constructed data set, analyzing the mapping chart, and determining the positions of abnormal patterns in the chart, including an abnormal pattern area Ra, specifically including: analyzing the color distribution in the mapping chart M, calculating the color deviation degree Dp of each deployment point P, the formula being Dp(P)=|Cc(P)-C_avg|, Cc(P) being the color coding value of the deployment point P, C_avg being the average value of the color coding values of all deployment points, and Dp(P) representing the color deviation degree of the deployment point P; establishing a threshold Th to distinguish the color changes of normal and abnormal patterns, the expression being Th=median(Dp)+k*IQR(Dp), median(Dp) representing the median of the color deviation degrees Dp(P) of all deployment points, IQR(Dp) representing the interquartile range of the color deviation degrees Dp(P) of all deployment points, and k being a coefficient for adjusting the sensitivity of the threshold Th; screening out the deployment points P that exceed the range of Th to form a suspected abnormal set Ep, the condition being Ep={P|Dp(P)>Th}; Performing spatial correlation evaluation on the members in Ep, and if F(P1,P2)=dist(P1,P2)<d_max and P1,P2∈Ep are satisfied, marking as an abnormal pattern area Ra, d_max being a maximum distance threshold for defining the maximum allowable distance between two deployment points; Based on the identified abnormal pattern positions, delimiting the range of the problematic areas, and specifically including: obtaining the marked abnormal pattern area Ra; For each abnormal position Ra, determining its neighborhood Na, which is defined as a set of all other deployment points with a distance not exceeding r from Ra, the expression being Na={Q|dist(Ra,Q)≤r}, r being a distance threshold representing the maximum radius of the neighborhood; Calculating the average color coding Avg_Cc of all deployment points in each neighborhood Na, using Avg_Cc(Na)=sum(Cc(Q)) / count(Q), Cc(Q) representing the color coding value of the deployment point Q, and count(Q) being a counting operation representing the number of deployment points in the neighborhood Na; Comparing the neighborhood average color coding Avg_Cc with the overall average color coding C_avg, and when the difference ΔCc=|Avg_Cc-C_avg| exceeds a set threshold Th, marking the neighborhood Na as a potential problem area Pa, the condition expression being Pa={Na|ΔCc>Th}; Starting a targeted test program to confirm the actual existence of abnormal stress conditions, specifically including: selecting the marked potential problem area Pa; For each target area Pa, deploy a sensing element Hs, record a new signal strength S_new, ensure S_new = measure(Hs); Compare the new signal strength S_new with the original signal strength S_original, evaluate the stress change through Ratio = S_new / S_original; If Ratio > Limit, confirm that the area has actual abnormal stress conditions, and include this area in the final abnormal list La, the condition expression is La = {Pa | Ratio > Limit}, Limit is a preset threshold value used to determine whether Ratio represents a significant stress change; After testing, output alarm information to the monitoring system, indicating the specific positioning of the abnormal stress area, which specifically includes: Collect the confirmed final abnormal list La; For each abnormal area Pa, construct an alarm data packet Ba, which contains the location coordinates P, the stress change ratio Ratio, and the timestamp Ts, expressed as Ba = (P, Ratio, Ts); Convert Ba into a monitoring system interpretable format Fa, using Fa = encode(Ba); Send the converted alarm information Fa, and record the sending state Sa, verify the transmission success through ACK, the condition expression is Sa = send(Fa) and check(ACK), if ACK == True, it means that the alarm has been successfully delivered; The sensing element is deployed in a predetermined position inside the integrated circuit to collect stress data, which includes: When the sensing element is activated, an initial electrical signal U is generated, which is directly proportional to the stress level L, expressed as U = k * L, k is a proportional factor representing the direct proportion between the initial electrical signal U and the stress level L; Apply linear conversion to the original signal U to generate a standardized signal G, the formula is G = a * U + b, a is a proportional factor used to adjust the amplitude of the original signal U, and b is an offset used to shift the standardized signal G in value; Based on the standardized signal G, calculate the average stress level M, using M = sum(Gi) / n, n represents the number of samples of the standardized signal G used to calculate the average stress level M, and Gi represents the i-th standardized signal value; When M is greater than the preset threshold Th, trigger the subsequent response action, the condition is M > Th; The initial signal is generated based on the data obtained by the sensing element, which includes: Read the original electrical signal X output by the sensing element, the strength of the original electrical signal X is associated with the local stress condition; Apply linear transformation to the original electrical signal X to generate an adjusted signal Y, calculated by Y = c * X + d, c is a proportional factor used to adjust the amplitude of the original electrical signal X, and d is an offset used to shift the adjusted signal Y in value; Construct a signal intensity distribution map D, which shows the Y values corresponding to different positions; The relative stress index Z of each deployment point is calculated using Z=sum(Yi^2) / m, where Yi represents the adjusted signal value output by the ith sensing element at a certain time, and m represents the number of adjusted signal values involved in calculating the relative stress index Z.
2. The integrated circuit chip stress detection method of claim 1, wherein: The generated initial signal is converted into digital information, including: The adjusted signal Y is received, and a sampling action is performed to generate samples Us at discrete time points with a sampling interval s. A quantization process is applied to form numerical values Vs using the formula Vs=round(Us / q)*q, where q is the quantization step size. The numerical values Vs are encoded to construct a binary sequence Ws, ensuring that Ws=binary(Vs).
3. The integrated circuit chip stress detection method of claim 2, wherein: Based on the discrete numerical values, a data set representing the relationship between time and stress change is constructed, including: The binary sequence Ws is collected and converted back to quantized stress values Vs using the inverse encoding process Vs=decode(Ws). The sampling time ts is combined with the time-stress pair TS, expressed as TS=(ts,Vs). All time-stress pairs TS are aggregated to establish a record set Rs, which is arranged in chronological order to ensure that Rs={TS1,TS2,...,TSn}.
4. The integrated circuit chip stress detection method of claim 3, wherein: The generated data set is used to create a mapping chart that visually displays the dynamic stress distribution, including: The data record set Rs is read, and the stress change amplitude ΔL of each deployment point at different time points is calculated using ΔL=Lt-L(t-1), where Lt represents the stress value at the current time point t, and L(t-1) represents the stress value at the previous time point t-1. A color coding rule Cc is created to map the stress change to a visual color range, expressed as Cc=colormap(ΔL). A mapping chart M is drawn, integrating the color information of all deployment points, ensuring that M=plot(T,P,Cc), where T is the time axis and P is the deployment point position coordinate.
Citation Information
Patent Citations
Test method for irradiation detection of memory chip
CN117766014A