UVM verification platform information interaction method, system and equipment based on threads
By using python monitoring threads in the UVM verification platform to capture and process simulation information in real time, the problem of low efficiency of traditional information interaction is solved, and more efficient simulation information interaction and function expansion is achieved.
Patent Information
- Application Number
- CN202411285643.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-13
- Publication Date
- 2024-12-13
AI Technical Summary
The traditional information interaction method of the UVM verification platform is inefficient and requires frequent handshakes through intermediate files, which leads to serious coupling of business logic and handshake logic, limiting the function of python scripts.
The UVM verification platform information interaction method is adopted based on threads. The UVM simulation log is monitored in real time through python monitoring threads, capture simulation information and output it to the python log file. The UVM verification platform obtains result information from the log file, reduces the number of active handshakes and improves interaction efficiency.
It has achieved improvement in the interaction efficiency of simulation information, reduced the number of active handshakes between the UVM verification platform and python scripts, making the interaction more flexible, and each pays more attention to the implementation of functions.
Smart Images

Figure CN119127531A_ABST
Abstract
Description
Technical Field
[0001] The invention belongs to the technical field of chip verification, and relates to a thread-based UVM verification platform information interaction method, system and device. Background Art
[0002] With the rapid development and popularization of new energy vehicles, more and more intelligent electronic modules are used in new energy vehicles, such as vehicle controllers, autonomous driving domain controllers, and cockpit domain controllers. The application of these controllers is inseparable from a variety of chips, and the complexity of contemporary chip design is increasing. UVM verification methodology has become the mainstream verification method for chip verification, and in order to broaden the functional scope of the UVM verification platform, the powerful python language has received widespread attention.
[0003] In the field of digital chip verification, Python language has richer data structures and function libraries, and naturally supports big data mathematical operations, which gives it broad prospects in important scenarios such as reference model construction and data packet processing of the UVM verification platform. However, the UVM verification platform does not provide an interface for interacting with the Python language. Its traditional information interaction method is that the UVM verification platform writes the key information generated during the simulation process into an intermediate file, and the Python script reads the intermediate file to obtain these key information. After post-processing, the Python script writes the processed information into another intermediate file, and the UVM verification platform reads the other intermediate file to realize the closed loop of simulation information transmission. However, the traditional information interaction method has the technical problem of low efficiency of simulation information interaction. Summary of the invention
[0004] In view of the problems existing in the above-mentioned traditional methods, the present invention proposes a thread-based UVM verification platform information interaction method, a thread-based UVM verification platform information interaction system, a computer device and a computer-readable storage medium, which can effectively improve the efficiency of simulation information interaction.
[0005] In order to achieve the above objectives, the embodiments of the present invention adopt the following technical solutions:
[0006] On the one hand, a thread-based UVM verification platform information interaction method is provided, comprising the steps of:
[0007] Get the UVM simulation log path of the UVM verification platform;
[0008] During the simulation verification process of the chip under test by the UVM verification platform, a python monitoring thread is created to monitor the UVM simulation log of the UVM verification platform in real time according to the UVM simulation log path; the python monitoring thread is created using the python standard library;
[0009] Send the simulation information captured during real-time monitoring of UVM simulation logs to the python script for post-processing, and output the result information obtained from the post-processing to the python log file;
[0010] Get result information from python log file through UVM testbench.
[0011] On the other hand, a thread-based UVM verification platform information interaction system is also provided, including:
[0012] A path acquisition module is used to obtain the UVM simulation log path of the UVM verification platform;
[0013] The monitoring creation module is used to create a python monitoring thread to monitor the UVM simulation log of the UVM verification platform in real time according to the UVM simulation log path during the simulation verification process of the chip under test on the UVM verification platform; the python monitoring thread is created using the python standard library;
[0014] The information transmission module is used to send the simulation information captured during real-time monitoring of the UVM simulation log to the python script for post-processing, and output the result information obtained by the post-processing to the python log file;
[0015] The result acquisition module is used to obtain result information from the python log file through the UVM verification platform.
[0016] On the other hand, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the above-mentioned thread-based UVM verification platform information interaction method when executing the computer program.
[0017] On the other hand, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps of the above-mentioned thread-based UVM verification platform information interaction method are implemented.
[0018] One of the above technical solutions has the following advantages and beneficial effects:
[0019] The above-mentioned thread-based UVM verification platform information interaction method, system and device, by using the python standard library to create a python monitoring thread, for real-time monitoring of the log file generated by the UVM verification platform, when there is simulation information output to the log file, the python monitoring thread can capture the simulation information in real time for subsequent processing and send the result information obtained by the subsequent processing back to the UVM verification platform through the python log file, eliminating the process of handshaking between the UVM verification platform and the python script through a special intermediate file, when the UVM verification platform obtains the result information from the python script, it only needs to continuously read the python log file, if the agreed characters appear, it means that the subsequent data is the result data, and then it can jump out of the cycle of continuously reading the file. In this way, the data transmission process changes from active to passive, and the UVM verification platform does not need to actively write the information to be transmitted into the intermediate file, which greatly reduces the number of active handshakes; the UVM verification platform does not need to consider whether the python script has processed the data, nor does it need the python script to initiate notification, effectively improving the efficiency of simulation information interaction.
[0020] Compared with the traditional UVM verification platform, which writes simulation information into an intermediate file and then reads the intermediate file by a python script to complete the handshake, in this new technical solution, the UVM verification platform no longer needs to write simulation information into an intermediate file separately. The python monitoring thread will monitor the entire simulation process in real time and actively obtain simulation information, and then combine it with subsequent python script processing to achieve effective expansion of the functions of the UVM verification platform, so that the UVM verification platform pays more attention to the functional verification of the chip to be tested, greatly reduces the number of handshakes initiated actively, and makes the interaction between the UVM verification platform and the python script more flexible, and each pays more attention to the realization of its own functions. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the conventional technology, the drawings required for use in the embodiments or the conventional technology descriptions are briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0022] Figure 1 A schematic flow chart of a thread-based UVM verification platform information interaction method in one embodiment;
[0023] Figure 2 It is a schematic diagram of the information interaction principle of a thread-based UVM verification platform information interaction method in one embodiment;
[0024] Figure 3 A schematic flow chart of a thread-based UVM verification platform information interaction method in another embodiment;
[0025] Figure 4 The module architecture diagram of a thread-based UVM verification platform information interaction system in one embodiment is shown. DETAILED DESCRIPTION
[0026] In order to make the purpose, technical scheme and advantages of the present invention clearer, the present invention is further described in detail below in conjunction with the accompanying drawings and Examples. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention. Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those generally understood by those skilled in the art of the present invention. The terms used in the specification of the present invention are only for the purpose of describing specific embodiments and are not intended to limit the present invention.
[0027] It should be noted that the reference to "embodiment" in this article means that the specific features, structures or characteristics described in conjunction with the embodiment may be included in at least one embodiment of the present invention. The presentation of this phrase at various locations in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It will be appreciated by those skilled in the art that the embodiments described herein may be combined with other embodiments. The term "and / or" used in the specification of the present invention and the appended claims refers to any combination of one or more of the associated listed items and all possible combinations, and includes these combinations.
[0028] The following will describe the implementation of the present invention in detail with reference to the accompanying drawings in the embodiment diagram of the present invention.
[0029] It should be briefly explained that the verification system and test cases built in the embodiments of the present invention use UVM (Universal Verification Methodology) verification methodology, the key feature of UVM verification methodology is reusable components and standardized hierarchy on the one hand, and its SystemVerilog class library on the other hand, the UVM verification platform built based on UVM verification methodology is one of mainstream chip verification platforms, and the python script used in the simulation verification process is a script tool written in python language, and the verification of the chip under test can be completed by coordinating the UVM verification platform with an intermediate file.
[0030] In the traditional information exchange method, the UVM verification platform needs to continuously and actively write various key information generated by the simulation process into intermediate files to initiate a handshake with the python script to establish a communication connection between the UVM verification platform and the python script to transfer key information. After the intermediate file is written, the python script needs to be started at the right time to ensure the accuracy of the information exchange logic.
[0031] The various key information generated during the simulation process is written into the intermediate file and interacts with the Python script through the intermediate file. This mechanism is usually used for tasks such as automated verification, analysis of simulation results, and report generation. Specifically, the key information generated during the simulation process may include configuration and parameters, simulation results, coverage data, assertion and error reports, and performance indicators.
[0032] Configuration and parameters, such as configuration parameters such as clock frequency, reset time, and test vectors of input signals, as well as configuration of the verification environment, such as bus model and protocol stack settings. Simulation results, such as time series data of input / output signals used to analyze the timing relationship of signals, are used to verify whether the register configuration and state changes meet the expected register values at specific times during the simulation process, such as the rising or falling edge of a signal, the occurrence point of register write or read operations, and other event trigger points. Coverage data, such as tracking the test coverage of each functional module in the design under test to ensure that all functions are verified, and code coverage, including line coverage, condition coverage, and path coverage, are used to ensure that the test cases fully cover the design code. Assertions and error reports, such as the verification results of UVM assertions, can include records of assertion passes and fails, as well as errors and warning information detected during the simulation process for subsequent analysis. Performance indicators, such as delay time measurements of critical paths for performance analysis, throughput measurements such as the rate of data transmission and the execution speed of processor instructions.
[0033] After obtaining key information, Python scripts can usually be used to perform tasks such as automated analysis and report generation, automated regression testing, dynamic adjustment and optimization, and data visualization. For example, Python scripts can process data signals in simulation results and generate statistical data, waveforms, and timing diagrams. Python scripts can also automatically generate verification reports based on simulation results, including coverage analysis, assertion result summary, and performance analysis. For automated regression testing, for example, Python scripts can automatically compare current simulation results with previous benchmark results to check whether there is performance degradation or errors; or, for example, trigger regression testing, that is, based on the analysis results, the automated regression testing process can be started to perform additional verification tasks. For dynamic adjustment and optimization, for example, based on simulation results, Python scripts can generate new configuration files, adjust simulation parameters or test cases to optimize simulation efficiency or coverage; if the simulation involves adaptive or machine learning models, Python scripts can dynamically adjust model parameters for online optimization. For data visualization, for example, Python scripts can visualize simulation data and generate waveform graphs, trend graphs, and heat maps, etc., for a more intuitive understanding of simulation results. Python scripts can also perform interactive analysis, such as with the help of Jupyter Notebook (interactive notebook) or other tools, to provide an interactive data analysis platform.
[0034] Python script can also transfer the actual input data extracted from the simulation process to the reference model to verify whether the behavior of the reference model is consistent with expectation, thereby ensuring the accuracy of the reference model under various input conditions; or perform real-time comparative analysis, such as by transmitting the intermediate results or status information in the simulation to the reference model, Python script can compare the output of the design under test (DUT, Device Under Test) and the reference model in real time, and check whether there is deviation or error. However, the above-mentioned traditional interaction mode through intermediate files can make the UVM verification platform produce too much handshake logic, causing its business logic and handshake logic to be seriously coupled, and the platform action is complicated, which also limits the full play of the powerful function of python script. The present invention has studied the UVM verification platform and python script interaction mode based on python thread, to solve the problems existing in the above traditional interaction mode.
[0035] In one embodiment, Figure 1 As shown, the python script can interact with the UVM verification platform more conveniently and efficiently, and a thread-based UVM verification platform information interaction method is provided, which can include the following processing steps S10 to S16:
[0036] S10, obtaining the UVM simulation log path of the UVM verification platform;
[0037] S12, during the simulation verification process of the UVM verification platform on the chip under test, create a python monitoring thread to monitor the UVM simulation log of the UVM verification platform in real time according to the UVM simulation log path; the python monitoring thread is created using the python standard library;
[0038] S14, sending the simulation information captured when real-time monitoring UVM simulation log to the python script for post-processing, and outputting the result information obtained by the post-processing to the python log file;
[0039] S16, obtain result information from the python log file through the UVM verification platform.
[0040] It can be understood that, in the process of simulation verification of chip under test, UVM verification platform will print various key information (in the present embodiment, may be called simulation information) produced by simulation process to log file (called UVM simulation log) by default, because the log file also can constantly increase new key information in simulation process, directly reading the log file will cause the information read to be incomplete. So the present embodiment uses python standard library (subprocess) to create a python monitoring thread after research, monitors the log file produced by UVM verification platform in real time, and when there is simulation information output, python monitoring thread can capture the information.
[0041] After obtaining the simulation information generated by the UVM verification platform, the Python monitoring thread can perform subsequent predetermined data processing or process it as the input of the reference model. The result information obtained after processing is output to the python log file. After that, the UVM verification platform only needs to obtain the required result information from the python log file. In this way, the UVM verification platform saves the action of writing the simulation information into an intermediate file and sending it to the python script. The information interaction changes from active to passive. The information that the UVM verification platform needs to transmit is monitored and obtained in real time by the python monitoring thread. In addition, it should be noted that if Figure 2 In the new information interaction schematic diagram shown, this technical means only needs to call methods in the Python standard library, such as the getcwd method of the Python standard library os, the Popen method and stdout method of the Python standard library subprocess, the search method of the Python standard library re, and the Python standard library logging. There is no need to install other libraries, so it is more convenient to use.
[0042] Specifically, first use the getcwd method of python standard library os to obtain the UVM simulation log path, so that the subsequent python monitoring thread can know the location of the UVM simulation log of the UVM verification platform, then use the Popen method of python standard library subprocess to create a python monitoring thread, then use the stdout method to read the standard output stream of the subprocess (such as the subprocess responsible for UVM simulation log printing), to capture the simulation information that the UVM verification platform continuously generates during the simulation verification process in real time, and then use the search method of python standard library re to find the key characters needed by (python script) (i.e. the key information required for post-processing), so far a monitoring output of the python monitoring thread is completed.
[0043] After the python script directly obtains the required key characters from the python monitoring thread, it can use these simulation information to perform the required post-processing, such as executing subsequent established data processing or inputting key information to the reference model and other post-processing work. The python script can use the python standard library logging to output the result information generated after processing to the python log file; after the UVM verification platform is configured, it will automatically read the python log file in a loop until it reads the result information with the indication (i.e., the pre-agreed characters, which can be customized by the user, as long as it can instruct the UVM verification platform to jump out of the reading loop), and then jump out of the reading loop, so that the UVM verification platform can directly obtain the result information it needs from the python log file.
[0044] The above-mentioned thread-based UVM verification platform information interaction method, creates a python monitoring thread by using the python standard library, is used to monitor the log file generated by the UVM verification platform in real time, when there is simulation information output to the log file, the python monitoring thread can capture the simulation information in real time for subsequent processing and the result information obtained by the subsequent processing is passed back to the UVM verification platform through the python log file for use, eliminating the process of handshaking between the UVM verification platform and the python script through a special intermediate file, when the UVM verification platform obtains the result information from the python script, it only needs to continuously read the python log file, if the agreed characters appear, then the data after the representation is the result data, then the cycle of continuously reading the file can be jumped out. In this way, the UVM verification platform does not need to consider whether the python script has processed the data, and does not need the python script to initiate notification, the result data is actively obtained by the UVM verification platform completely, and the configuration data is actively captured by the python monitoring thread completely, effectively improving the simulation information interaction efficiency.
[0045] Compared with the traditional UVM verification platform, which writes simulation information into an intermediate file and then reads the intermediate file by a python script to complete the handshake, in this new technical solution, the UVM verification platform does not need to select an appropriate time and write the simulation information into the intermediate file multiple times. It only needs to initiate access to the result information in the python log file all the time, and the python script does not need to be started at an appropriate time. During the entire simulation cycle, the python monitoring thread will monitor the entire simulation process in real time and actively obtain simulation information. Combined with subsequent python script processing, the UVM verification platform function is effectively expanded, so that the UVM verification platform pays more attention to the functional verification of the chip to be tested, greatly reduces the number of handshakes initiated actively, and makes the interaction between the UVM verification platform and the python script more flexible, so that each pays more attention to the realization of their own functions.
[0046] In one embodiment, Figure 3 As shown, after the above step S16, the above thread-based UVM verification platform information interaction method may further include the following processing step S18:
[0047] S18, when the UVM verification platform completes the simulation verification of the chip under test or the python monitoring thread monitors a customized key string (such as a customized variable or flag), the python monitoring thread is terminated and the occupied resources are released.
[0048] It can be understood that in this embodiment, the python monitoring thread can use the existing re.search() method to monitor in real time whether the last line newly added to the UVM simulation log contains a specified variable name. When the value of the variable name meets the condition for closing the thread, the existing subprocess.termiante() method can be used to close the python monitoring thread.
[0049] In the present embodiment, or the UVM verification platform and the python monitoring thread may jointly agree on a flag string, when the python monitoring thread checks the monitored new content and finds the flag string, the python monitoring thread may be closed using the existing subprocess.termiante() method. Or a child thread may be separately initiated, specifically for monitoring the variables or flag strings used to control the end of the python monitoring thread in the UVM simulation log, and the triggering python monitoring thread of the child thread ends when the variable or flag string is monitored.
[0050] In the present embodiment, or the timeout mechanism can also be used to realize the termination and resource release of the python monitoring thread: the UVM verification platform can set a timeout, and when the simulation timeout ends, the python monitoring thread will also automatically end therewith. Wherein, whether the python monitoring thread ends normally (simulation ends), or is forced to end (monitoring a specified flag), as long as after the captured data is processed, the thread is closed after being output to the python log file, because the required result information has been put into the python log file and resources will not be leaked.
[0051] It should be understood that although Figure 1 and Figure 3 The steps in the method are shown in sequence as indicated by the arrows, but the steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified in this document, there is no strict order restriction for the execution of the steps, and the steps can be executed in other orders. Figure 1 and Figure 3 At least part of the steps may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily executed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequentially, but can be executed in turn or alternately with other steps or at least part of the sub-steps or stages of other steps.
[0052] In one embodiment, Figure 4 As shown, a thread-based UVM verification platform information interaction system 100 is provided, which may include a path acquisition module 11, a monitoring creation module 13, an information transmission module 15 and a result acquisition module 17. Among them, the path acquisition module 11 is used to obtain the UVM simulation log path of the UVM verification platform. The monitoring creation module 13 is used to create a python monitoring thread to monitor the UVM simulation log of the UVM verification platform in real time according to the UVM simulation log path during the simulation verification process of the UVM verification platform on the chip under test; the python monitoring thread is created using the python standard library. The information transmission module 15 is used to send the simulation information captured during the real-time monitoring of the UVM simulation log to the python script for post-processing, and output the result information obtained by the post-processing to the python log file. The result acquisition module 17 is used to obtain the result information from the python log file through the UVM verification platform.
[0053] The above-mentioned UVM verification platform information interaction system 100 based on thread, creates a python monitoring thread by using python standard library, for real-time monitoring the log file that UVM verification platform produces, when there is simulation information to output to this log file, python monitoring thread can capture this simulation information in real time for subsequent processing and the result information obtained by subsequent processing is passed back to UVM verification platform through python log file for use, eliminating the process of handshaking by special intermediate file between UVM verification platform and python script, when UVM verification platform obtains the result information from python script, only need to continuously read python log file, if read agreed character appears then the data after expression is result data, then just can jump out of the cycle of continuously reading file. So UVM verification platform does not need to consider whether python script has processed data, does not need python script to initiate notification, result data is actively obtained by UVM verification platform completely, configuration data is actively captured by python monitoring thread completely, effectively improves simulation information interaction efficiency.
[0054] Compared with the traditional UVM verification platform, which writes simulation information into an intermediate file and then reads the intermediate file by a python script to complete the handshake, in this new technical solution, the UVM verification platform does not need to select an appropriate time and write the simulation information into the intermediate file multiple times. It only needs to initiate access to the result information in the python log file all the time, and the python script does not need to be started at an appropriate time. During the entire simulation cycle, the python monitoring thread will monitor the entire simulation process in real time and actively obtain simulation information. Combined with subsequent python script processing, the UVM verification platform function is effectively expanded, so that the UVM verification platform pays more attention to the functional verification of the chip to be tested, greatly reduces the number of handshakes initiated actively, and makes the interaction between the UVM verification platform and the python script more flexible, so that each pays more attention to the realization of their own functions.
[0055] In one embodiment, the above-mentioned thread-based UVM verification platform information interaction system 100 may also include a thread termination module, which is used to terminate the python monitoring thread and release occupied resources when the UVM verification platform completes the simulation verification of the chip under test or the python monitoring thread monitors a custom key string.
[0056] Regarding the specific limitation of the thread-based UVM verification platform information interaction system 100, please refer to the corresponding limitation of the thread-based UVM verification platform information interaction method above, which will not be repeated here. Each module in the above-mentioned thread-based UVM verification platform information interaction system 100 can be implemented in whole or in part by software, hardware and a combination thereof. The above-mentioned modules can be embedded in or independent of a device with a data processing function in the form of hardware, or can be stored in the memory of the aforementioned device in the form of software, so that the processor can call and execute the operations corresponding to the above modules. The aforementioned device can be, but is not limited to, various types of verification computer devices already available in the art.
[0057] In one embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor implements the following processing steps when executing the computer program: obtaining a UVM simulation log path of a UVM verification platform; during the simulation verification process of a chip under test by the UVM verification platform, creating a python monitoring thread to monitor the UVM simulation log of the UVM verification platform in real time according to the UVM simulation log path; the python monitoring thread is created using a python standard library; the simulation information captured during the real-time monitoring of the UVM simulation log is sent to a python script for post-processing, and the result information obtained by the post-processing is output to a python log file; and the result information is obtained from the python log file through the UVM verification platform.
[0058] In one embodiment, when the processor executes the computer program, the steps or sub-steps added in each embodiment of the above-mentioned thread-based UVM verification platform information interaction method can also be implemented.
[0059] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the following processing steps are implemented: obtaining a UVM simulation log path of a UVM verification platform; during the simulation verification process of a chip under test by the UVM verification platform, creating a python monitoring thread to monitor the UVM simulation log of the UVM verification platform in real time according to the UVM simulation log path; the python monitoring thread is created using a python standard library; the simulation information captured during the real-time monitoring of the UVM simulation log is sent to a python script for post-processing, and the result information obtained by the post-processing is output to a python log file; and the result information is obtained from the python log file through the UVM verification platform.
[0060] In one embodiment, when the computer program is executed by a processor, the steps or sub-steps added in each embodiment of the above-mentioned thread-based UVM verification platform information interaction method can also be implemented.
[0061] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiments can be completed by instructing the relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided by the present invention can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM is available in many forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus dynamic random access memory (RambusDRAM, referred to as RDRAM) and interface dynamic random access memory (DRDRAM).
[0062] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, 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.
[0063] The above embodiments only express several implementation methods of the present invention, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of protection of the invention. It should be pointed out that, for those of ordinary skill in the art, several modifications and improvements can be made without departing from the concept of the present invention, which all belong to the scope of protection of the present invention. Therefore, the scope of protection of the present invention shall be subject to the attached claims.
Claims
1. A thread-based UVM verification platform information interaction method, It is characterized in that Includes steps: Get the UVM simulation log path of the UVM verification platform; During the simulation verification process of the chip under test by the UVM verification platform, a python monitoring thread is created to monitor the UVM simulation log of the UVM verification platform in real time according to the UVM simulation log path; the python monitoring thread is created using the python standard library; The simulation information captured when the UVM simulation log is monitored in real time is sent to a python script for post-processing, and the result information obtained by the post-processing is output to a python log file; The result information is obtained from the python log file through the UVM verification platform.
2. The UVM verification platform information interaction method based on thread according to claim 1, It is characterized in that After the step of obtaining the result information from the python log file through the UVM verification platform, the step further includes: When the UVM verification platform completes the simulation verification of the chip under test or the Python monitoring thread monitors a customized key string, the Python monitoring thread is terminated and the occupied resources are released.
3. A thread-based UVM verification platform information interaction system, It is characterized in that include: A path acquisition module is used to obtain the UVM simulation log path of the UVM verification platform; A monitoring creation module is used to create a python monitoring thread to monitor the UVM simulation log of the UVM verification platform in real time according to the UVM simulation log path during the simulation verification process of the chip under test on the UVM verification platform; the python monitoring thread is created using the python standard library; An information transmission module is used to send the simulation information captured when the UVM simulation log is monitored in real time to a python script for post-processing, and output the result information obtained by the post-processing to a python log file; A result reading module is used to obtain the result information from the python log file through the UVM verification platform.
4. The thread-based UVM verification platform information interaction system according to claim 3, It is characterized in that Also includes: The thread ending module is used for ending the python monitoring thread and releasing occupied resources when the UVM verification platform completes the simulation verification of the chip under test or the python monitoring thread monitors a custom key string.
5. A computer device comprising a memory and a processor, wherein the memory stores a computer program, It is characterized in that When the processor executes the computer program, the steps of the thread-based UVM verification platform information interaction method according to claim 1 or 2 are implemented.
6. A computer-readable storage medium having a computer program stored thereon, It is characterized in that When the computer program is executed by a processor, the steps of the thread-based UVM verification platform information interaction method according to claim 1 or 2 are implemented.
Citation Information
Cited By
Vehicle gauge chip PKI verification system and verification method based on UVM and python
CN119728078A
