Simulation waveform file-oriented automatic comparison method and system
The automated comparison method solves the problems of manual reliance and misjudgment in the comparison of simulated waveform files, realizes efficient and accurate signal comparison, adapts to the needs of large-scale semiconductor testing, and generates structured reports to optimize the testing process.
Patent Information
- Application Number
- CN202511548725.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-28
- Publication Date
- 2026-02-10
AI Technical Summary
In existing technologies, the comparison of simulated waveform files relies on manual visual judgment, which lacks consistency and objectivity, and is prone to misjudgment and inefficiency. In particular, it is difficult to achieve a balance between accuracy and efficiency in large-scale semiconductor testing scenarios.
An automated comparison method is adopted, which realizes automatic signal comparison and result summarization through benchmark waveform establishment, delay tolerance algorithm, parameterized rule configuration and multi-process concurrent processing. This includes signal preprocessing, lossless resampling, vector error calculation and result integration, reducing manual intervention.
It significantly improves the efficiency and accuracy of comparison between semiconductor simulation and regression testing, reduces labor costs, avoids misjudgments, adapts to large-scale, high-frequency testing needs, and generates structured reports to optimize the testing process.
Smart Images

Figure CN121503359A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the technical field of simulation waveform comparison, and in particular to an automated comparison method and system for simulation waveform files. Background Technology
[0002] In the field of semiconductor simulation and regression testing, accurately comparing the correctness of simulation waveform files is a core and crucial step in ensuring the effectiveness of semiconductor product functional verification and the reliability of test results. Each complete test cycle typically includes multiple independent test cases, and each test case generates a varying number of signals to be verified (industry-standardly referred to as "result signals"). The number of these signals varies greatly—from just a few to tens of thousands, requiring flexible adjustment based on the test scenario and verification requirements. To accurately evaluate whether the output of each result signal meets design expectations, technically, each result signal needs to be matched with a corresponding standard reference signal (industry-standardly referred to as a "golden signal"). This golden signal is a correct result verified through historical testing and is the core basis for determining whether a result signal is qualified. Its judgment criterion is clear: only when the result signal and the corresponding golden signal meet the standard of "being the same" can the result signal be considered correct; otherwise, it is considered an incorrect signal.
[0003] In the current mainstream testing process, the correctness judgment of the N signal pairs generated for each test case (each signal pair consists of one result signal and one corresponding golden signal) still relies entirely on traditional manual visual methods: testers need to use dedicated waveform visualization tools to load these N signal pairs one by one, convert the signal data into waveform curves for visualization, and then manually observe, compare, and judge the waveform curves of each signal pair in sequence to finally confirm whether the result signal and golden signal in each signal pair meet the requirement of being "the same". However, this manual judgment mode has a fundamental flaw—the industry has not yet formed a clear and quantitative definition for the core judgment criterion of "sameness". The judgment process relies entirely on the personal work experience and subjective feelings of the testers, resulting in a lack of consistency and objectivity in the judgment results of different testers and different test batches, making it difficult to guarantee the accuracy of the judgment.
[0004] At the same time, existing simulation waveform comparison methods still face multiple technical bottlenecks, which further restrict the improvement of testing efficiency and verification quality. The specific problems are as follows: First, the reliance on manual labor is too high. Since the correctness of signal pairs depends entirely on manual visual comparison of waveform shapes, the operation is not only cumbersome, time-consuming and labor-intensive, but also, in scenarios with tens of thousands of test cases, the number of signal pairs that the testing team needs to process increases exponentially, the workload rises sharply, and it is very easy to lead to extended testing cycles and high labor costs.
[0005] Secondly, time delay leads to significant misjudgment issues. In actual testing scenarios, the waveforms of the result signal and the golden signal are often identical, but there is a slight delay on the horizontal axis (i.e., the time axis). In this case, traditional mathematical calculation comparison methods will directly judge this slight offset in the time dimension as an error, lacking a reasonable tolerance mechanism for time delay, resulting in a large number of misjudgments of non-realistic functional differences.
[0006] Third, there is an inherent conflict between result accuracy and testing efficiency. When strict comparison standards are adopted in pursuit of judgment accuracy, a large number of "false errors" will be generated (that is, the actual difference is within the acceptable range of engineering, but it is misjudged as an error by the system). These "false errors" need to be manually reviewed and screened by testers one by one, which will lead to a significant reduction in testing efficiency and create a contradictory situation of "increased accuracy but decreased efficiency".
[0007] Fourth, there is a lack of automated tools and rule-based mechanisms. The existing comparison process cannot achieve parameterized configuration and rule-based filtering—it cannot customize comparison parameters (such as error thresholds and tolerance ranges) according to different test scenarios (such as different signal types and different verification accuracy requirements), nor can it automatically complete the comparison and result filtering of signal pairs based on preset rules. The entire process requires manual intervention, further exacerbating the problem of low testing efficiency and making it difficult to adapt to the needs of large-scale, high-frequency semiconductor regression testing. When there are many or large signals, and the workload is heavy, only sequential judgment is possible; random errors (attention, misjudgment, etc.) may occur. Summary of the Invention
[0008] To address the aforementioned issues, the present invention aims to provide an automated comparison method and system for simulated waveform files. By establishing a benchmark waveform, designing an automated comparison algorithm with delay tolerance, supporting parameterized rule configuration and automatic result filtering, and integrating it into the regression testing process, the invention effectively solves the problems of heavy reliance on manual waveform comparison, misjudgment due to minor delays, conflict between accuracy and efficiency, and lack of automated tools in semiconductor simulation and regression testing. This significantly reduces manual intervention and improves testing efficiency and judgment accuracy.
[0009] The above-mentioned objective of this invention is achieved through the following technical solutions: An automated comparison method for simulation waveform files includes the following steps: S1: The test system or testers receive the test task, parse and obtain the test result data, and at the same time parse the logs to obtain potential error signals; S2: Perform concurrent preprocessing on proprietary format signal data, export it as PWL plain text data format, and match and load the corresponding signal data; S3: Perform concurrent loop processing on each group of result signals and golden signals. First, perform scalar pre-judgment. If the pre-judgment determines that they are the same, mark the result of the group of signals as the same and enter the result summary. If the pre-judgment does not make a clear determination, then perform vector core judgment. S4: In the vector core judgment, the result signal and the golden signal are first resampled without loss, then the time delay between the two signals is calculated and removed, and then at least one vector error calculation method is used in combination with a threshold to judge whether the two signals are the same, and the result is marked. S5: Summarize the comparison results of all signal pairs and generate a structured report.
[0010] Furthermore, in step S1, the test task originates from a semiconductor simulation or regression testing task scheduling system; The specific process of parsing and obtaining test result data involves extracting the structured data of all result signals generated by each test case in each round of testing, including the signal amplitude sequence, the original sampling point sequence, and time stamp information. Parsing logs to obtain potential error signals involves analyzing information recorded in the test process logs, including signal anomaly markers and numerical fluctuation exceeding limits. A combination of keyword matching and pattern recognition is used to filter out a set of candidate signals that need to be compared in detail.
[0011] Furthermore, in step S2, the concurrent preprocessing is implemented through a multi-process parallel framework, which distributes the signal data to be processed to multiple processes in batches to perform format conversion simultaneously; The proprietary formats include binary waveform formats generated by semiconductor simulation tools and custom binary stream formats with timing structures. Matching and loading the corresponding signal data is based on a pre-established signal mapping table. The signal mapping table contains the unique identifier of each result signal and the association between the corresponding golden signal storage path and identifier. The unique identifier enables accurate pairing of the result signal and the golden signal and data loading.
[0012] Furthermore, in step S3, the scalar pre-judgment includes the following sub-steps: S31: Compare the sample point values of the result signal and the golden signal point by point. If the absolute value of the difference between the values of all corresponding sample points is less than or equal to the preset absolute equality threshold, then the two signals are determined to be absolutely equal. S32: If step S31 is not determined, determine whether the signal is a small signal. The determination criterion for a small signal is that the amplitude variation range of the signal is less than or equal to the user-defined small signal amplitude threshold. If it is determined to be a small signal, calculate the average value of the difference between the corresponding sampling points of the two signals as the mean error. If the mean error is less than the preset small signal error threshold, it is determined to be the same. S33: If step S31 determines no and step S32 determines it is a non-small signal, or the mean error in step S32 is not less than the small signal error threshold, then proceed to the vector core judgment stage.
[0013] Furthermore, in step S4, the specific method of lossless resampling is as follows: For the original sampling point sequence of the result signal, all original sampling points of the golden signal are extracted. Sampling points in the golden signal that do not exist in the result signal are used as supplementary sampling points. Linear interpolation or spline interpolation algorithms are used to estimate the corresponding amplitude of the supplementary sampling points in the result signal, so that the result signal contains its own original sampling points and supplementary sampling points. Meanwhile, for the original sampling point sequence of the golden signal, all original sampling points of the result signal are extracted, and the sampling points in the result signal that do not exist in the golden signal are taken as supplementary sampling points. The same interpolation algorithm is used to estimate the corresponding amplitude of the supplementary sampling points in the golden signal, so that the golden signal contains its own original sampling points and supplementary sampling points. Through the above operations, the result signal and the golden signal retain all the information of their original signals, which were densely sampled where the signal changes greatly and sparsely sampled where the changes are slow. They also have the same set of sampling points, which provides a basis for subsequent vector operations.
[0014] Further, in step S4, calculating and removing the time delay between the two signals includes the following sub-steps: S41: The cross-correlation function value sequence of the result signal and the golden signal is calculated using a cross-correlation algorithm, which is implemented by performing a sliding window convolution operation on the two signals; S42: In the sequence of cross-correlation function values, find the position index corresponding to the maximum cross-correlation value, and combine it with the sampling interval and time scale information of the signal to convert the position index into a time quantity to obtain the time delay of the result signal relative to the golden signal; S43: Based on the time delay, perform time axis translation adjustment on the result signal or the golden signal to align the two signals in the time dimension, thereby removing the time delay between the two signals.
[0015] Further, in step S4, the vector error calculation method includes at least one of the following: A: Error average calculation: For the result signal and the golden signal after resampling and removing the time delay, calculate the absolute value of the numerical difference point by point, sum the absolute values of all numerical differences and divide by the total number of sampling points to obtain the error average. B: Calculation of error standard deviation and error mean: First calculate the error mean, then calculate the sum of squares of the differences between the absolute values of each numerical difference and the error mean, divide by the total number of sampling points and take the square root to obtain the error standard deviation, add the error standard deviation and the error mean to obtain the comprehensive error value; C: Calculation of maximum error: For the result signal and the golden signal after resampling and removing the time delay, calculate the absolute value of the numerical difference point by point, and select the maximum value as the maximum error; The three methods described above are progressively stricter. In the threshold judgment, the threshold is a parameter customized by the user based on the test scenario. The determination of this threshold simulates the error acceptance level of the tester's visual judgment. The comparison algorithm is dynamically calculated by combining the range of signal amplitude variation with the scaling factor set by the user, so that the comparison algorithm matches the human visual thinking process. If the calculated error value is less than the threshold, the two signals are judged to be the same; otherwise, they are judged to be different.
[0016] An automated comparison system for simulation waveform files, used to execute the automated comparison method for simulation waveform files as described above, includes: The task and data parsing module allows the test system or testers to receive test tasks, parse and obtain test result data, and simultaneously parse logs to obtain potential error signals. The data preprocessing and loading module performs concurrent preprocessing on proprietary format signal data, exports it as PWL plain text data format, and matches and loads the corresponding signal data. The concurrent signal processing module performs concurrent loop processing on each group of result signals and golden signals. First, it performs scalar pre-judgment. If the pre-judgment determines that they are the same, it marks the result of the group of signal pairs as the same and enters the result summary. If the pre-judgment does not make a clear determination, it performs vector core judgment. In the core comparison execution module, during the vector core judgment, the result signal and the golden signal are first resampled without loss, then the time delay between the two signals is calculated and removed, and then at least one vector error calculation method is used in combination with a threshold to determine whether the two signals are the same, and the result is marked. The Results Summary and Reporting module summarizes the comparison results of all signal pairs and generates a structured report.
[0017] A computer device includes a memory and one or more processors, the memory storing computer code that, when executed by the one or more processors, causes the one or more processors to perform the method described above.
[0018] A computer-readable storage medium storing computer code that, when executed, performs the method described above.
[0019] Compared with the prior art, the present invention has at least one of the following beneficial effects: (1) Full-process automation reduces reliance on manual labor: The full-process design of receiving test tasks, data parsing and preprocessing, automatic signal comparison and result summarization replaces the traditional manual visual comparison method, greatly reducing labor and time costs, especially in semiconductor simulation / regression testing scenarios with tens of thousands of test cases, significantly improving testing efficiency.
[0020] (2) Lossless resampling to ensure comparison accuracy: The lossless resampling method of "supplementing missing sampling points + interpolation estimation" is adopted. It not only retains the original information of the result and golden signals, which are "densely sampled where the signal changes greatly and sparsely sampled where the change is slow", but also makes the two have the same set of sampling points, providing an accurate basis for subsequent vector operations and avoiding the comparison deviation caused by the loss of original information in traditional equal-interval resampling.
[0021] (3) Delay processing and tolerance mechanism to avoid delay misjudgment: The delay between signals is calculated and removed by cross-correlation algorithm, combined with vector error calculation logic that supports delay tolerance, to solve the problem of "the waveform shape is consistent but the time axis is slightly delayed and it is misjudged as wrong", so that the comparison results are more in line with the actual engineering scenario and the accuracy of judgment is improved.
[0022] (4) Parameterized configuration + multi-dimensional error calculation, balancing accuracy and efficiency: It supports user-defined error thresholds and provides three vector error calculation methods with increasing strictness: "average error (lenient), standard deviation of error + average error (medium), and maximum error (strict)". It can be flexibly adjusted according to different test scenarios such as "rapid screening" and "precise verification", effectively balancing comparison accuracy and test efficiency, and reducing the workload of manual screening caused by "false errors".
[0023] (5) Concurrent processing, adaptable to large-scale scenarios: Introducing a multi-process concurrent mechanism in the data preprocessing and signal pair loop processing stages, making full use of the independence of multiple signals and the reentrancy of the algorithm, greatly improving the comparison efficiency in large-scale scenarios such as tens of thousands of signals, and adapting to the large-scale and high-frequency requirements of semiconductor testing.
[0024] (6) Algorithm modeling is in line with human thinking and reduces error rate: By dynamically calculating the threshold by “signal amplitude change range + user ratio factor” and combining the time delay acceptance judgment method, the thinking process of test personnel’s visual judgment is simulated, which significantly reduces the probability of “false error” judgment and makes the comparison results more in line with the human judgment logic in engineering practice.
[0025] (7) Results integration and optimized test process: Automatically generate structured reports containing information such as error signal list and degree of difference, and directly embed them into the regression test process to realize the automated flow and traceability of test results, further reduce manual intervention, and improve the integrity and automation level of the test process. Attached Figure Description
[0026] Figure 1 This is the overall flowchart of the automated comparison method for simulation waveform files of the present invention; Figure 2 This is a diagram showing the overall structure of the automated comparison system for simulation waveform files according to the present invention. Detailed Implementation
[0027] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0028] Those skilled in the art will understand that, unless specifically stated otherwise, the singular forms “a,” “an,” “the,” and “the” used herein may also include the plural forms. It should be further understood that the term “comprising” as used in this specification means the presence of the stated features, integers, steps, operations, elements, and / or components, but does not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.
[0029] This invention proposes an automated method and system for comparing simulated waveforms, specifically including the following: (1) Establishing the benchmark waveform: Define the historical correct results as the standard waveform (golden wave) as the comparison benchmark for daily regression tests; (2) Automatic comparison algorithm: The newly generated waveform is automatically compared with the reference waveform. This algorithm includes several key design aspects: (3) Lossless resampling of result and golden signals: The original result signal and golden signal usually have completely different sampling point sequences (the sampling interval and the number of sampling points are different, so the elements of the two vectors cannot be matched one-to-one and vector operations cannot be performed directly); the traditional method is to reconstruct the time axis sequence (usually an equally spaced sequence) and then use interpolation and fitting to obtain a new signal value sequence. However, this method has two major drawbacks - first, all the original sampling points are discarded, and after resampling, all sampling points are obtained by fitting, losing the original information; second, the signal in the application scenario of this patent will be densely sampled and varied in places with large changes. In regions where signal degradation is slow, sparse sampling (non-equal interval sampling) is used to store more signal information, while equal interval resampling would lose this information. Therefore, this invention adopts a "supplementing missing points" approach, that is, for the original sampling point sequence of the result signal, sampling points in the golden signal are supplemented, and interpolation estimation is performed only on these supplemented sampling points; similarly, for the sampling point sequence of the golden signal, the original sampling points of the result signal are supplemented, and the sample point values are estimated only on these new sampling points; in this way, the result signal and the golden signal retain the full information of the original signal and have the same sampling points, which can be used for subsequent vector operations or point-to-point comparisons. (4) Multi-dimensional vector error calculation: Three vector error calculation methods are introduced: average error, average error plus error variance, and maximum error. The strictness of the three methods increases from lenient to strict. Combined with threshold settings, it can provide users with a large space for parameter customization. The combination of the two can adjust the parameters in a more granular way. (5) Modeling that fits human thinking: The comparison algorithm is abstracted and modeled based on the thinking process of the tester when making visual judgments. By changing the range of signal values and the scaling factor set by the user, the threshold of each pair of signals is dynamically calculated to simulate the error acceptance during visual judgment. By calculating the time delay of the result relative to the golden value and comparing it with the expected value, the acceptance of time delay during visual judgment is simulated. At the same time, the delay tolerance is combined to avoid misjudgment caused by horizontal axis offset. (6) Parameterized rule configuration: Supports user-defined error thresholds and comparison rules to adapt to different test scenarios; (7) Automatic screening mechanism: During the comparison process, results that exceed the tolerance range are marked as true errors, and the remaining results are automatically classified as qualified; (8) Results output and integration: The comparison results are automatically generated and directly embedded into the regression testing process, greatly reducing manual intervention; (9) Multi-process concurrency: The introduction of a multi-process concurrency mechanism can make full use of the independence between multiple signals and the reentrancy of the algorithm in parallel, thereby improving execution efficiency.
[0030] First Embodiment like Figure 1 As shown, this embodiment provides an automated comparison method for simulation waveform files, including the following steps: S1: The test system or testers receive the test task, parse and obtain the test result data, and at the same time parse the logs to obtain potential error signals.
[0031] In step S1, the test task originates from the task scheduling system of semiconductor simulation or regression testing; parsing and obtaining test result data specifically involves extracting the structured data of all result signals generated by each test case in each round of testing, covering the amplitude sequence, original sampling point sequence, and time stamp information of the signal; parsing the log to obtain potential error signals involves analyzing the information recorded in the test process log, including signal anomaly markers and numerical fluctuation exceeding limits, and using a combination of keyword matching and pattern recognition to filter out the set of candidate signals that need to be compared.
[0032] Step S1, as the core step in initiating and preparing data for the entire automated simulation waveform file comparison process, aims to provide standardized, complete, and accurate initial data for subsequent comparison operations, ensuring the reliability and efficiency of the process from the outset. The test tasks are not randomly initiated but originate from a semiconductor-specific simulation or regression test task scheduling system. This system is responsible for the unified planning, allocation, and distribution of test tasks, and can output tasks to be executed in an orderly manner according to test requirements (such as chip functional verification, performance testing, etc.), avoiding the chaos caused by manual task allocation and ensuring the standardization and procedural nature of the test task sources.
[0033] In the process of parsing and acquiring test result data, it's not simply a matter of extracting signal data. Instead, for each round of testing, multiple test cases generate a "structured extraction" of all the resulting signal data. This extraction method emphasizes the integrity and relevance of the data, requiring the simultaneous acquisition of three core pieces of signal information: First, the amplitude sequence, which represents the magnitude of the signal at different times and is the core basis for reflecting the shape of the signal waveform; second, the original sampling point sequence, which preserves the original location information during signal acquisition (including sampling interval, number of sampling points, etc.), a crucial prerequisite for subsequent "lossless resampling." If the original sampling point sequence is missing, it is impossible to accurately supplement the missing points later; and third, time stamp information, which establishes the correspondence between signal values and time, providing a time dimension reference for subsequent calculations of signal delays and judgment of horizontal axis offset, ensuring that signal comparison not only focuses on numerical values but also correlates with time characteristics.
[0034] The process of parsing logs to obtain potential error signals essentially reduces subsequent invalid comparisons and improves overall efficiency through "pre-screening." Since each round of testing may generate tens of thousands of result signals, directly subjecting them all to detailed comparison would consume significant computing power and time. Therefore, it is necessary to analyze key information recorded in the test logs (including clear signal anomaly markers, such as "Signal A is abnormal," and numerical fluctuation exceeding limits, such as "Signal B amplitude fluctuation exceeds 5%)) and employ a dual screening method combining "keyword matching + pattern recognition." Keyword matching quickly locates potentially problematic signal-related records by targeting pre-defined keywords such as "abnormal" and "exceeding limits" in the logs. Pattern recognition further identifies abnormal descriptions with fixed formats in the logs (such as "[Signal ID:X] numerical fluctuation exceeds limits, threshold: Y"), avoiding omissions due to differences in wording. Through this combined approach, a set of candidate signals requiring focused comparison is ultimately selected, ensuring that no truly potentially erroneous signals are overlooked while excluding normal signals that do not require detailed comparison, laying the foundation for focusing on core data in subsequent stages.
[0035] S2: Perform concurrent preprocessing on proprietary format signal data, export it as PWL plain text data format, and match and load the corresponding signal data.
[0036] In step S2, the concurrent preprocessing is implemented through a multi-process parallel framework, which distributes the signal data to be processed to multiple processes in batches for simultaneous format conversion. The proprietary formats include binary waveform formats generated by semiconductor simulation tools and custom binary stream formats with timing structures. Matching and loading the corresponding signal data is based on a pre-established signal mapping table, which contains the unique identifier of each result signal and the associated relationship between the corresponding golden signal storage path and the identifier. The unique identifier enables precise pairing of the result signal and the golden signal and data loading.
[0037] Step S2 is a crucial link between data extraction in S1 and subsequent signal comparison. It is responsible for two main functions: "data format standardization" and "precise signal matching". It must solve the format compatibility problem of signal data from different sources and ensure that the result signal to be compared corresponds one-to-one with the golden signal, thus clearing the data-level obstacles for subsequent automated comparison.
[0038] The "concurrent preprocessing" stage is designed to address the pain points of "large signal data volume and time-consuming format conversion" in semiconductor testing scenarios. If a single process is used, the format conversion of tens of thousands of signals may cause process bottlenecks and slow down the overall testing progress. Therefore, this step accelerates the processing through a multi-process parallel framework: specifically, the proprietary format signal data extracted in S1 is divided into multiple batches according to the principle of "data volume balance" (for example, each batch contains 1,000 signals), and each batch is then assigned to different independent processes to perform format conversion operations simultaneously. This can make full use of the multi-core computing power of the hardware and avoid the efficiency bottleneck caused by the excessive load on a single process, significantly reducing the total time spent on format conversion. The "proprietary formats" mentioned here are not general data formats, but rather signal storage formats unique to the semiconductor field. On one hand, they include binary waveform formats generated by various simulation tools (such as EDA tools)—these formats are adapted to the computational logic of the tools, with customized data structures containing core information such as waveform amplitude and timing, but they suffer from poor readability and low versatility. On the other hand, they also include binary stream formats with timing structures customized by enterprises or testing teams—these formats specifically embed the signal's timestamp information to ensure a close correlation between waveform data and the time dimension, but similarly, due to their special structure, they cannot be directly recognized by subsequent comparison algorithms. It is precisely because of the limitations of these proprietary formats that they need to be uniformly converted to the PWL plain text data format—the PWL format not only has good readability but also clearly preserves the "time-amplitude" correspondence of the signal, and is compatible with subsequent vector operations, interpolation estimation, and other algorithms, making it a "universal data language" for achieving automated comparison.
[0039] In the "matching and loading corresponding signal data" step, the core issue is solving the problem of "errors in matching massive amounts of signals." Since each round of testing may generate tens of thousands of result signals, and each result signal must correspond to a unique golden signal (a historically correct signal), relying on manual matching is highly prone to "mismatches" and "missed matches," rendering the comparison results completely invalid. Therefore, this step achieves automated and accurate matching by "pre-establishing a signal mapping table": this mapping table is a relational database built before testing based on the signal's attribute information, containing at least three core fields—a unique identifier for the result signal (such as a signal ID, which is globally unique and can distinguish signals from different test cases and channels), the storage path of the corresponding golden signal (such as a specific folder directory on the server, specifying the location of the golden signal file), and the unique identifier of the golden signal (which is associated with the identifier of the result signal to further verify the correctness of the matching). During actual matching, the system only needs to read the unique identifier of each result signal to quickly retrieve the corresponding golden signal information in the mapping table, and then automatically load the data of the golden signal according to the storage path. The whole process does not require manual intervention, which avoids the error of manual pairing and ensures that each pair of signals to be compared is "correct", providing an accurate data source for subsequent S3 signal processing and comparison.
[0040] S3: Perform concurrent loop processing on each group of result signals and golden signals. First, perform scalar pre-judgment. If the pre-judgment determines that they are the same, then mark the result of the group of signals as the same and enter the result summary. If the pre-judgment does not make a clear determination, then perform vector core judgment.
[0041] In step S3, the scalar pre-judgment includes the following sub-steps: S31: Compare the sample point values of the result signal and the golden signal point by point. If the absolute value of the difference between the values of all corresponding sample points is less than or equal to the preset absolute equality threshold, then the two signals are determined to be absolutely equal. S32: If step S31 is not determined, determine whether the signal is a small signal. The determination criterion for a small signal is that the amplitude variation range of the signal is less than or equal to the user-defined small signal amplitude threshold. If it is determined to be a small signal, calculate the average value of the difference between the corresponding sampling points of the two signals as the mean error. If the mean error is less than the preset small signal error threshold, it is determined to be the same. S33: If step S31 determines no and step S32 determines it is a non-small signal, or the mean error in step S32 is not less than the small signal error threshold, then proceed to the vector core judgment stage.
[0042] Step S3 is the core link in the entire automated comparison process that achieves the hierarchical processing of "efficiency first, accuracy as a safety net". On one hand, it receives the result-golden signal pairs that have completed format conversion and precise matching in S2. On the other hand, through the combination design of "concurrent loop processing + scalar pre-judgment", it quickly filters out signal pairs that do not require fine calculation, which greatly reduces the amount of computation in subsequent vector core judgment, while ensuring the accuracy of the comparison results.
[0043] From the design perspective of "concurrent loop processing," it continues the efficiency optimization approach of S2 concurrent preprocessing. Since the number of matched signal pairs in each round of testing may reach tens of thousands, if single-threaded sequential processing is used, the overall process will take too long due to the large number of signals. Therefore, this step uses a multi-process concurrent framework to evenly distribute all signal pairs to be processed in batches to different processes, allowing the comparison and preprocessing of multiple signal pairs to be executed synchronously. This fully utilizes the multi-core computing power of the hardware, and at the same time, relies on the independent and data-dependent characteristics of the signal pairs to avoid concurrency conflicts, ultimately achieving the effect of "synchronous processing of multiple signal pairs," significantly reducing the overall processing time and adapting to the needs of large-scale signal comparison scenarios.
[0044] The "scalar pre-judgment," as the core logic of S3, is essentially a "rapid filtering mechanism." Through simple scalar calculations (without complex vector operations), it first performs a preliminary judgment on signal pairs. Signal pairs that clearly meet the "same" standard are directly marked and included in the aggregation, while only questionable signal pairs are transferred to the subsequent vector core judgment, thus balancing "processing efficiency" and "judgment accuracy." Specifically, scalar pre-judgment is implemented through three progressively layered sub-steps: In the S31 "absolute equality determination," it is not required that the sampled values of the result and the golden signal be completely identical (in actual testing, slight numerical fluctuations may originate from normal noise rather than true errors). Instead, a "preset absolute equality threshold" (e.g., set to 0.01% based on the signal amplitude range) is used to compare the absolute value of the difference between the sampled values of the two signals point by point. If the difference between the values of all sampled points is less than or equal to this threshold, it means that the two signals are almost identical in terms of numerical value and can be directly determined as "absolutely equal" without further calculation. This design avoids unreasonable misjudgments caused by "rigidly adhering to absolute numerical consistency" and can quickly filter out signal pairs with minimal differences, improving processing efficiency.
[0045] Entering S32, "Special Judgment for Small Signals," is a differentiated logic designed to address the characteristic of "small signals being susceptible to noise interference" in testing scenarios. Small signals (such as signals with amplitude variations less than a user-defined threshold of 1mV) have extremely low amplitudes, and their numerical fluctuations may be due to random noise in the testing environment rather than a functional error in the signal itself. If the same judgment standard is used as for regular signals, "false errors" are likely to occur. Therefore, this step first determines whether the current signal is a small signal based on the user-defined "small signal amplitude threshold." If it is determined to be a small signal, the average value of the difference between the corresponding sampling points of the two signals (i.e., the mean error) is calculated. If this mean error is less than the preset "small signal error threshold," it means that the fluctuation is within an acceptable range, and it is judged as "the same." This special handling not only conforms to the actual testing characteristics of small signals but also further reduces unnecessary fine calculations.
[0046] Finally, S33 clarifies the triggering conditions for entering the "vector core judgment" stage—only when S31 fails to meet the "absolute equality" requirement (there is a difference in the numerical values of the sampling points exceeding the threshold), and S32 either determines the signal to be "non-small signal" or, although it is a small signal, the mean error exceeds the threshold, is it necessary to initiate the subsequent more complex vector core judgment. This design achieves "separation of light and heavy tasks": simple scenarios are processed quickly using scalar pre-judgment, while complex scenarios (such as non-small signals with significant numerical differences, or small signals with fluctuations exceeding the range) are analyzed precisely using vector judgment. This avoids resource waste and ensures the accuracy of judgment for questionable signal pairs, laying the foundation for focusing on key signals in the subsequent core comparison stage.
[0047] S4: In the vector core judgment, the result signal and the golden signal are first resampled without loss, then the time delay between the two signals is calculated and removed, and then at least one vector error calculation method is used in combination with a threshold to determine whether the two signals are the same, and the result is marked.
[0048] In step S4, the specific method of lossless resampling is as follows: For the original sampling point sequence of the result signal, all original sampling points of the golden signal are extracted. Sampling points in the golden signal that do not exist in the result signal are used as supplementary sampling points. Linear interpolation or spline interpolation algorithms are used to estimate the corresponding amplitude of the supplementary sampling points in the result signal, so that the result signal contains its own original sampling points and supplementary sampling points. Meanwhile, for the original sampling point sequence of the golden signal, all original sampling points of the result signal are extracted, and the sampling points in the result signal that do not exist in the golden signal are taken as supplementary sampling points. The same interpolation algorithm is used to estimate the corresponding amplitude of the supplementary sampling points in the golden signal, so that the golden signal contains its own original sampling points and supplementary sampling points. Through the above operations, the result signal and the golden signal retain all the information of their original signals, which were densely sampled where the signal changes greatly and sparsely sampled where the changes are slow. They also have the same set of sampling points, which provides a basis for subsequent vector operations.
[0049] Further, in step S4, calculating and removing the time delay between the two signals includes the following sub-steps: S41: The cross-correlation function value sequence of the result signal and the golden signal is calculated using a cross-correlation algorithm, which is implemented by performing a sliding window convolution operation on the two signals; S42: In the sequence of cross-correlation function values, find the position index corresponding to the maximum cross-correlation value, and combine it with the sampling interval and time scale information of the signal to convert the position index into a time quantity to obtain the time delay of the result signal relative to the golden signal; S43: Based on the time delay, perform time axis translation adjustment on the result signal or the golden signal to align the two signals in the time dimension, thereby removing the time delay between the two signals.
[0050] Furthermore, in step S4, the vector error calculation method includes at least one of the following: A: Error average calculation: For the result signal and the golden signal after resampling and removing the time delay, calculate the absolute value of the numerical difference point by point, sum the absolute values of all numerical differences and divide by the total number of sampling points to obtain the error average. B: Calculation of error standard deviation and error mean: First calculate the error mean, then calculate the sum of squares of the differences between the absolute values of each numerical difference and the error mean, divide by the total number of sampling points and take the square root to obtain the error standard deviation, add the error standard deviation and the error mean to obtain the comprehensive error value; C: Calculation of maximum error: For the result signal and the golden signal after resampling and removing the time delay, calculate the absolute value of the numerical difference point by point, and select the maximum value as the maximum error; The three methods described above are progressively stricter. In the threshold judgment, the threshold is a parameter customized by the user based on the test scenario. The determination of this threshold simulates the error acceptance level of the tester's visual judgment. The comparison algorithm is dynamically calculated by combining the range of signal amplitude variation with the scaling factor set by the user, so that the comparison algorithm matches the human visual thinking process. If the calculated error value is less than the threshold, the two signals are judged to be the same; otherwise, they are judged to be different.
[0051] Step S4, as the core link in the entire automated comparison process responsible for "accurately determining suspicious signal pairs", mainly targets signal pairs whose results are unclear in the scalar pre-judgment of S3 (such as non-small signals with numerical differences, small signals with fluctuations exceeding the threshold). Through a three-layer progressive logic of "lossless resampling - time delay processing - vector error judgment", it achieves a comparison effect that combines "preservation of original information" and "accurate difference identification", fundamentally solving the problems of "mismatched sampling points that cannot be calculated", "time delay leading to misjudgment", and "one-size-fits-all error judgment" in traditional comparison.
[0052] In the "lossless resampling" stage, the core design is to overcome the technical bottleneck that "vector operations cannot be performed if the original sampling points do not match," while avoiding the drawback of losing key information in traditional equal-interval resampling. In semiconductor testing scenarios, the original sampling strategy for the result signal and the golden signal is "dense sampling where signal changes are large, sparse sampling where changes are slow" (rather than equal intervals). This strategy maximizes the preservation of signal features, but also results in completely different sampling point sequences (intervals and number of points), making direct point-to-point comparison impossible. Therefore, this invention adopts a lossless solution of "bidirectional supplementation of missing points": On the one hand, for the original sampling point sequence of the result signal, all original sampling points of the golden signal are extracted, and the sampling points not included in the result signal are designated as "supplementary sampling points." Only for these supplementary points, linear interpolation or spline interpolation (the two algorithms can be selected according to the signal smoothness to ensure that the estimated value closely matches the real signal trend) is used to estimate the amplitude, so that the result signal simultaneously contains its own original points and supplementary points; on the other hand, the same operation is performed on the golden signal, supplementing the original sampling points of the result signal and performing interpolation estimation. The key advantage of this approach is that it interpolates only the "missing sampling points" rather than reconstructing the entire time axis. Therefore, it can completely preserve the original characteristics of the two signals in the "dense sampling area (where the signal changes drastically)" and the "sparse sampling area (where the signal is stable)," while ensuring that both have a completely consistent set of sampling points, providing a data foundation for subsequent precise vector-level calculations.
[0053] The core design for solving the problem of misjudgment caused by "consistent waveform shapes but time axis offset" is to "calculate and remove the time delay between two signals". This is achieved through three steps to align the time dimension: Step 1 (S41) uses a cross-correlation algorithm to calculate the cross-correlation function value sequence, specifically through a "sliding window convolution operation"—using the result signal as a sliding window and convolving it with the golden signal. The peak position of the convolution result corresponds to the time point where the two signals are most similar, thus capturing the correlation in the time dimension; Step 2 (S42) locates the position index corresponding to the maximum cross-correlation value, combining the signal sampling interval (e.g., sampling once every 0.1ms) and time stamp information (…). (e.g., the signal start timestamp), convert the index value into a specific "time amount", that is, the delay time of the result signal relative to the golden signal (e.g., a delay of 0.2ms); the third step (S43) is to perform time axis translation adjustment on one of the signals (either the result signal or the golden signal, according to the system default rules or user configuration) based on the calculated delay (e.g., delay the result signal as a whole by 0.2ms), so that the two signals are completely aligned in the time dimension, completely eliminating the interference of the "small delay on the horizontal axis" on the subsequent error judgment, and ensuring that the comparison focuses on the "waveform shape difference" rather than the "time position difference".
[0054] Finally, the "vector error calculation method combined with threshold judgment" is the key to achieving "flexible adaptation to different test scenarios and simulation of manual judgment logic," providing three judgment dimensions with increasing rigor: The first is "error average value calculation" (relaxed standard), which calculates the absolute value of the numerical difference point by point and averages it to reflect the overall deviation level of the two signals, suitable for scenarios that are not sensitive to local fluctuations (such as power signal stability testing); the second is "error standard deviation and average value combined calculation" (medium standard), which introduces the standard deviation (reflecting the dispersion of the deviation) on the basis of the average value, considering both the overall deviation and the magnitude of local fluctuations, suitable for scenarios with certain stability requirements (such as analog signal transmission testing); the third is "error maximum value calculation" (strict standard), which directly takes the maximum value of the absolute value of the numerical difference, focusing on the extreme deviation of the signal, suitable for scenarios with extremely high peak accuracy requirements (such as high-frequency digital signal edge testing). Meanwhile, the threshold is not a fixed value, but a dynamic parameter customized by the user based on the test scenario—calculated by "signal amplitude variation range × user-defined scaling factor" (e.g., if the amplitude range is 10V and the scaling factor is 0.5%, then the threshold is 0.05V). This design accurately simulates the human visual judgment habit of "flexibly adjusting the error tolerance based on the signal size" (e.g., larger signals allow for slightly larger deviations, while smaller signals are more sensitive to deviations), making the algorithm's judgment results more in line with actual engineering needs. Ultimately, if the calculated error value is less than this dynamic threshold, the two signals are determined to be "same"; otherwise, they are determined to be "different," achieving accurate and flexible difference identification.
[0055] S5: Summarize the comparison results of all signal pairs and generate a structured report.
[0056] Step S5, as the final and value-output stage of the entire automated comparison process for simulation waveform files, undertakes the core function of "integrating scattered comparison results and outputting actionable analytical basis". It is not only a systematic conclusion to the results of all signal pairs in the previous S3 scalar pre-judgment and S4 vector core judgment, but also a core step that provides key support for subsequent test analysis, problem investigation and regression test process integration, ensuring that the entire comparison process forms a complete closed loop "from data input to result application".
[0057] From the perspective of "summarizing the comparison results of all signal pairs," the core lies in achieving "comprehensive, accurate, and correlated result integration"—not simply collecting "same / different" judgment labels, but deeply binding the comparison results of each signal pair with the source information. On the one hand, it is necessary to cover all signal pairs processed by S3 and S4, regardless of whether the judgment result is "same" (from S3 scalar pre-judgment or S4 vector judgment) or "different" (from only S4 vector judgment), all of them must be included in the summary scope to avoid incomplete test analysis due to omissions. On the other hand, key correlation information needs to be attached to each result, such as the test case identifier to which the signal pair belongs (to facilitate locating which round of testing and which specific case the result corresponds to), the unique identifier of the signal (such as result signal ID and golden signal ID, to facilitate quick tracing back to the original signal data), and the source of the judgment process (clearly specifying whether it is S3 scalar pre-judgment or S4 vector core judgment; if it is S4, the vector error calculation method used should also be noted, such as the average / maximum error). This correlation information allows subsequent viewers to quickly clarify the background of the results and provide clues for problem localization.
[0058] The "generating structured reports" step is a key design element to ensure the results are "readable, traceable, and integrable." Unlike the scattered records generated after traditional manual comparisons, the structured reports output in this step must present information in a standardized and fixed format. Their content typically includes three core modules: First, an overall statistical overview, such as the total number of test cases involved in this test, the total number of signal pairs, the number and percentage of signal pairs judged as "identical," and the number and percentage of signal pairs judged as "different," allowing testers to quickly grasp the overall situation of this comparison; second, detailed results by case, broken down by test case dimension, with each case listing all signal pairs under that case. The specific results include signal identification, judgment results, and judgment criteria (such as "absolutely equal" or "small signal error qualified" in S3, or "error value XX is less than threshold XX" in S4). If the judgment is "different", the difference details (such as the delay value, the error calculation result and the threshold comparison) need to be added to facilitate targeted analysis of the problem in a specific case. The third is the error signal summary table, which lists all signal pairs judged as "different" separately, and marks the case to which it belongs, signal identification, difference type (such as numerical deviation exceeding the limit, delay exceeding the tolerance) and specific difference data, so as to provide testers with direct targets for subsequent troubleshooting of error causes (such as simulation model problems, signal transmission interference).
[0059] Furthermore, this structured report must be directly embeddable into the regression testing process—the report format must be compatible with the interface requirements of the regression testing system (e.g., supporting machine-readable formats such as CSV and XML), enabling the testing system to automatically read key data from the report (such as the error signal list). This allows the system to trigger subsequent error analysis or retesting processes without requiring manual re-entry, which aligns perfectly with the proposal's design goal of "result output and integration, significantly reducing manual intervention." Ultimately, through S5 operations, not only was the centralized presentation of the comparison results achieved, but the results were also transformed into effective data that can directly support subsequent testing work, realizing a seamless connection between "automated comparison and result application," further highlighting the engineering practical value of the entire automated comparison method.
[0060] Second Embodiment like Figure 2 As shown, this embodiment provides an automated comparison system for simulation waveform files, used to execute the automated comparison method for simulation waveform files as described in the first embodiment, characterized in that it includes: The task and data parsing module allows the test system or testers to receive test tasks, parse and obtain test result data, and simultaneously parse logs to obtain potential error signals. The data preprocessing and loading module performs concurrent preprocessing on proprietary format signal data, exports it as PWL plain text data format, and matches and loads the corresponding signal data. The concurrent signal processing module performs concurrent loop processing on each group of result signals and golden signals. First, it performs scalar pre-judgment. If the pre-judgment determines that they are the same, it marks the result of the group of signal pairs as the same and enters the result summary. If the pre-judgment does not make a clear determination, it performs vector core judgment. In the core comparison execution module, during the vector core judgment, the result signal and the golden signal are first resampled without loss, then the time delay between the two signals is calculated and removed, and then at least one vector error calculation method is used in combination with a threshold to determine whether the two signals are the same, and the result is marked. The Results Summary and Reporting module summarizes the comparison results of all signal pairs and generates a structured report.
[0061] A computer-readable storage medium stores computer code that, when executed, performs the methods described above. Those skilled in the art will understand that all or part of the steps in the various methods of the above embodiments can be implemented by a program instructing related hardware. This program can be stored in a computer-readable storage medium, which may include: read-only memory (ROM), random access memory (RAM), a magnetic disk, or an optical disk, etc.
[0062] The above description is merely a preferred embodiment of the present invention. The scope of protection of the present invention is not limited to the above embodiments. All technical solutions falling within the scope of the present invention's concept are within the scope of protection of the present invention. It should be noted that for those skilled in the art, any improvements and modifications made without departing from the principles of the present invention should also be considered within the scope of protection of the present invention.
[0063] 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.
[0064] It should be noted that the above embodiments can be freely combined as needed. The above description is only a preferred embodiment of the present invention. It should be pointed out that for those skilled in the art, several improvements and modifications can be made without departing from the principle of the present invention, and these improvements and modifications should also be considered within the scope of protection of the present invention.
Claims
1. An automated comparison method for simulation waveform files, characterized in that, Includes the following steps: S1: The test system or testers receive the test task, parse and obtain the test result data, and at the same time parse the logs to obtain potential error signals; S2: Perform concurrent preprocessing on proprietary format signal data, export it as PWL plain text data format, and match and load the corresponding signal data; S3: Perform concurrent loop processing on each group of result signals and golden signals. First, perform scalar pre-judgment. If the pre-judgment determines that they are the same, mark the result of the group of signals as the same and enter the result summary. If the pre-judgment does not make a clear determination, then perform vector core judgment. S4: In the vector core judgment, the result signal and the golden signal are first resampled without loss, then the time delay between the two signals is calculated and removed, and then at least one vector error calculation method is used in combination with a threshold to judge whether the two signals are the same, and the result is marked. S5: Summarize the comparison results of all signal pairs and generate a structured report.
2. The automated comparison method for simulation waveform files according to claim 1, characterized in that, In step S1, the test task originates from the task scheduling system of semiconductor simulation or regression testing; The specific process of parsing and obtaining test result data involves extracting the structured data of all result signals generated by each test case in each round of testing, including the signal amplitude sequence, the original sampling point sequence, and time stamp information. Parsing logs to obtain potential error signals involves analyzing information recorded in the test process logs, including signal anomaly markers and numerical fluctuation exceeding limits. A combination of keyword matching and pattern recognition is used to filter out a set of candidate signals that need to be compared in detail.
3. The automated comparison method for simulation waveform files according to claim 1, characterized in that, In step S2, the concurrent preprocessing is implemented through a multi-process parallel framework, which distributes the signal data to be processed to multiple processes in batches to perform format conversion simultaneously. The proprietary formats include binary waveform formats generated by semiconductor simulation tools and custom binary stream formats with timing structures. Matching and loading the corresponding signal data is based on a pre-established signal mapping table. The signal mapping table contains the unique identifier of each result signal and the association between the corresponding golden signal storage path and identifier. The unique identifier enables accurate pairing of the result signal and the golden signal and data loading.
4. The automated comparison method for simulation waveform files according to claim 1, characterized in that, In step S3, the scalar pre-judgment includes the following sub-steps: S31: Compare the sample point values of the result signal and the golden signal point by point. If the absolute value of the difference between the values of all corresponding sample points is less than or equal to the preset absolute equality threshold, then the two signals are determined to be absolutely equal. S32: If step S31 is not determined, determine whether the signal is a small signal. The determination criterion for a small signal is that the amplitude variation range of the signal is less than or equal to the user-defined small signal amplitude threshold. If it is determined to be a small signal, calculate the average value of the difference between the corresponding sampling points of the two signals as the mean error. If the mean error is less than the preset small signal error threshold, it is determined to be the same. S33: If step S31 determines no and step S32 determines it is a non-small signal, or the mean error in step S32 is not less than the small signal error threshold, then proceed to the vector core judgment stage.
5. The automated comparison method for simulation waveform files according to claim 1, characterized in that, In step S4, the specific method of lossless resampling is as follows: For the original sampling point sequence of the result signal, all original sampling points of the golden signal are extracted. Sampling points in the golden signal that do not exist in the result signal are used as supplementary sampling points. Linear interpolation or spline interpolation algorithms are used to estimate the corresponding amplitude of the supplementary sampling points in the result signal, so that the result signal contains its own original sampling points and supplementary sampling points. Meanwhile, for the original sampling point sequence of the golden signal, all original sampling points of the result signal are extracted, and the sampling points in the result signal that do not exist in the golden signal are taken as supplementary sampling points. The same interpolation algorithm is used to estimate the corresponding amplitude of the supplementary sampling points in the golden signal, so that the golden signal contains its own original sampling points and supplementary sampling points. Through the above operations, the result signal and the golden signal retain all the information of their original signals, which were densely sampled where the signal changes greatly and sparsely sampled where the changes are slow. They also have the same set of sampling points, which provides a basis for subsequent vector operations.
6. The automated comparison method for simulation waveform files according to claim 1, characterized in that, In step S4, calculating and removing the time delay between the two signals includes the following sub-steps: S41: The cross-correlation function value sequence of the result signal and the golden signal is calculated using a cross-correlation algorithm, which is implemented by performing a sliding window convolution operation on the two signals; S42: In the sequence of cross-correlation function values, find the position index corresponding to the maximum cross-correlation value, and combine it with the sampling interval and time scale information of the signal to convert the position index into a time quantity to obtain the time delay of the result signal relative to the golden signal; S43: Based on the time delay, perform time axis translation adjustment on the result signal or the golden signal to align the two signals in the time dimension, thereby removing the time delay between the two signals.
7. The automated comparison method for simulation waveform files according to claim 1, characterized in that, In step S4, the vector error calculation method includes at least one of the following: A: Error average calculation: For the result signal and the golden signal after resampling and removing the time delay, calculate the absolute value of the numerical difference point by point, sum the absolute values of all numerical differences and divide by the total number of sampling points to obtain the error average. B: Calculation of error standard deviation and error mean: First calculate the error mean, then calculate the sum of squares of the differences between the absolute values of each numerical difference and the error mean, divide by the total number of sampling points and take the square root to obtain the error standard deviation, add the error standard deviation and the error mean to obtain the comprehensive error value; C: Calculation of maximum error: For the result signal and the golden signal after resampling and removing the time delay, calculate the absolute value of the numerical difference point by point, and select the maximum value as the maximum error; The strictness of the three methods increases sequentially. In the threshold judgment, the threshold is a parameter customized by the user according to the test scenario. The determination of this threshold simulates the error acceptance level of the tester's visual judgment. The comparison algorithm is dynamically calculated by the range of signal amplitude change and the scaling factor set by the user, so that the comparison algorithm matches the human visual thinking process. If the calculated error value is less than the threshold, the two signals are judged to be the same; otherwise, they are judged to be different.
8. An automated comparison system for simulation waveform files, used to execute the automated comparison method for simulation waveform files as described in any one of claims 1-7, characterized in that, include: The task and data parsing module allows the test system or testers to receive test tasks, parse and obtain test result data, and simultaneously parse logs to obtain potential error signals. The data preprocessing and loading module performs concurrent preprocessing on proprietary format signal data, exports it as PWL plain text data format, and matches and loads the corresponding signal data. The concurrent signal processing module performs concurrent loop processing on each group of result signals and golden signals. First, it performs scalar pre-judgment. If the pre-judgment determines that they are the same, it marks the result of the group of signal pairs as the same and enters the result summary. If the pre-judgment does not make a clear determination, it performs vector core judgment. In the core comparison execution module, during the vector core judgment, the result signal and the golden signal are first resampled without loss, then the time delay between the two signals is calculated and removed, and then at least one vector error calculation method is used in combination with a threshold to determine whether the two signals are the same, and the result is marked. The Results Summary and Reporting module summarizes the comparison results of all signal pairs and generates a structured report.
9. A computer device comprising a memory and one or more processors, the memory storing computer code that, when executed by the one or more processors, causes the one or more processors to perform the method as described in any one of claims 1 to 7.
10. A computer-readable storage medium storing computer code, wherein when the computer code is executed, the method of any one of claims 1 to 7 is performed.