Simulation control method, device, electronic equipment and medium of UVM verification platform
By receiving and parsing simulation instructions in the UVM verification platform, and using the SOCKET protocol to realize interaction and control between the Windows side and the Linux side, the problem of the inability to automatically handle Windows side compilation and file transfer in the existing technology is solved, and the simulation efficiency and automation level are improved.
Patent Information
- Application Number
- CN202411835288.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-13
- Publication Date
- 2025-04-01
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
The existing UVM verification platform cannot automatically handle Windows-side compilation and file transfer in simulation control, resulting in low simulation efficiency and inability to achieve fully automated random field scene convergence.
By receiving simulation instructions sent by the server, analyzing the instruction type, and performing corresponding simulation operations according to the type, the SOCKET protocol is used to realize interaction and control between the Windows and Linux, avoiding manual compilation and improving simulation efficiency.
It realizes automated simulation control of the UVM verification platform, improves chip simulation efficiency, reduces manual intervention, and improves the flexibility and automation of the simulation process.
Smart Images

Figure CN119743477A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of simulation technology, and in particular to a simulation control method, device, electronic device and medium of a UVM verification platform. Background Art
[0002] The simulation control of the UVM verification platform is mainly carried out on the Linux server side. The verification platform tracks the verification progress based on metrics such as coverage and performs simulation control, such as Figure 1 As shown, for the system-level UVM verification platform, when verifying in C or ASM format, if the compilation of the verification case needs to be performed on the Windows side, manual compilation and file transmission are required. In addition, the existing technology is fully automated and random. In the absence of human intervention, it takes a lot of time to converge to all scenes. When the Windows-side compiler software is needed, it can only be compiled manually, and the third-party communication software is used to transmit and control the simulation log. It is impossible to automatically transmit and process files to each other. How to use the WINDOW side to assist LINUX simulation and improve the flexibility of simulation and simulation control is a problem that needs to be solved urgently. Summary of the invention
[0003] The purpose of some embodiments of the present application is to provide a simulation control method, device, electronic device and medium of a UVM verification platform. Through the technical solution of the embodiments of the present application, a simulation instruction sent by a server is received; the simulation instruction is parsed to determine the instruction type of the simulation instruction; according to the instruction type of the simulation instruction, a simulation operation corresponding to the instruction type is determined. The embodiments of the present application can realize the interaction and control with the local Windows end during the simulation process in the verification use case of the UVM platform through the SOCKET protocol. The server end is responsible for the process control of the entire platform. At each stage of the simulation, the server end sends a control instruction to the client end according to actual needs. After receiving the instruction, the client end parses it. According to the parsed instruction, the client end can execute the corresponding control or analysis script, and can execute IDE software, etc., thereby avoiding manual compilation and improving the simulation efficiency of the chip.
[0004] In a first aspect, some embodiments of the present application provide a simulation control method of a UVM verification platform, which is applied to a terminal device of a Windows system, including:
[0005] Receive simulation instructions sent by the server;
[0006] Parsing the simulation instruction to determine the instruction type of the simulation instruction;
[0007] According to the instruction type of the simulation instruction, a simulation operation corresponding to the instruction type is determined.
[0008] Some embodiments of the present application receive simulation instructions sent by a server; parse the simulation instructions to determine the instruction type of the simulation instructions; and determine the simulation operation corresponding to the instruction type according to the instruction type of the simulation instructions. The embodiments of the present application can realize interaction and control with the local Windows end during the simulation process in the verification use case of the UVM platform through the SOCKET protocol. The server end is responsible for the process control of the entire platform. At each stage of the simulation, the server end sends control instructions to the client end according to actual needs. After receiving the instructions, the client end parses them. The client end can execute corresponding control or analysis scripts according to the parsed instructions, and can execute IDE software, etc., thereby avoiding manual compilation and improving the simulation efficiency of the chip.
[0009] Optionally, the method further comprises:
[0010] After the simulation operation is completed, the result information is returned to the server via the TCP / IP protocol.
[0011] Some embodiments of the present application send instructions through the server side to receive the result file or control information generated by the client into the UVM simulation platform to control the verification platform.
[0012] Optionally, the simulation instruction includes at least simulation process control information and text processing information, and the simulation instruction is transmitted in the form of a character string instruction.
[0013] The communication process in some embodiments of the present application adopts the TCP / IP protocol, and the local computer monitors the command messages from the remote computer in real time. The command messages are divided into two categories: simulation process control and text processing. The instructions are transmitted in the form of strings to facilitate understanding and improve communication efficiency.
[0014] Optionally, the receiving a simulation instruction sent by the server includes:
[0015] Receive the simulation command sent by the server through the sendcmd function;
[0016] The receiving server sends the file through the sendfile function.
[0017] Some embodiments of the present application set various encapsulation functions to achieve interaction between the server and the client, avoid manual compilation, and improve simulation efficiency.
[0018] Optionally, parsing the simulation instruction to determine the instruction type of the simulation instruction includes:
[0019] Convert the string instruction into a shell instruction or an operation execution instruction recognizable by the Linux system; the operation execution instruction is used to process the text or the software of the Windows system;
[0020] According to the parsing result, the instruction type of the simulation instruction is determined.
[0021] In some embodiments of the present application, after receiving the instruction, the client and the server will immediately parse and process the instruction string, and convert the string instruction into the execution, text processing, waveform processing, shell or other scripts recognizable by the Linux system, or software execution, text processing, etc. of the Windows system. According to the parsing result, the instruction is responded to, and the simulation control of the UVM verification platform and the processing of the simulation file are performed.
[0022] In a second aspect, some embodiments of the present application provide a simulation control device of a UVM verification platform, which is applied to a terminal device of a Windows system, including:
[0023] A receiving module, used for receiving a simulation instruction sent by a server;
[0024] A parsing module, used for parsing the simulation instruction to determine the instruction type of the simulation instruction;
[0025] The determination module is used to determine the simulation operation corresponding to the instruction type according to the instruction type of the simulation instruction.
[0026] Some embodiments of the present application receive simulation instructions sent by a server; parse the simulation instructions to determine the instruction type of the simulation instructions; and determine the simulation operation corresponding to the instruction type according to the instruction type of the simulation instructions. The embodiments of the present application can realize interaction and control with the local Windows end during the simulation process in the verification use case of the UVM platform through the SOCKET protocol. The server end is responsible for the process control of the entire platform. At each stage of the simulation, the server end sends control instructions to the client end according to actual needs. After receiving the instructions, the client end parses them. The client end can execute corresponding control or analysis scripts according to the parsed instructions, and can execute IDE software, etc., thereby avoiding manual compilation and improving the simulation efficiency of the chip.
[0027] Optionally, the determining module is used to:
[0028] After the simulation operation is completed, the result information is returned to the server via the TCP / IP protocol.
[0029] Some embodiments of the present application send instructions through the server side to receive the result file or control information generated by the client into the UVM simulation platform to control the verification platform.
[0030] Optionally, the simulation instruction includes at least simulation process control information and text processing information, and the simulation instruction is transmitted in the form of a character string instruction.
[0031] The communication process in some embodiments of the present application adopts the TCP / IP protocol, and the local computer monitors the command messages from the remote computer in real time. The command messages are divided into two categories: simulation process control and text processing. The instructions are transmitted in the form of strings to facilitate understanding and improve communication efficiency.
[0032] Optionally, the receiving module is used to:
[0033] Receive the simulation command sent by the server through the sendcmd function;
[0034] The receiving server sends the file through the sendfile function.
[0035] Some embodiments of the present application set various encapsulation functions to achieve interaction between the server and the client, avoid manual compilation, and improve simulation efficiency.
[0036] Optionally, the parsing module is used to:
[0037] Convert the string instruction into a shell instruction or an operation execution instruction recognizable by the Linux system; the operation execution instruction is used to process the text or the software of the Windows system;
[0038] According to the parsing result, the instruction type of the simulation instruction is determined.
[0039] In some embodiments of the present application, after receiving the instruction, the client and the server will immediately parse and process the instruction string, and convert the string instruction into the execution, text processing, waveform processing, shell or other scripts recognizable by the Linux system, or software execution, text processing, etc. of the Windows system. According to the parsing result, the instruction is responded to, and the simulation control of the UVM verification platform and the processing of the simulation file are performed.
[0040] In a third aspect, some embodiments of the present application provide an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the simulation control method of the UVM verification platform as described in any embodiment of the first aspect can be implemented.
[0041] In a fourth aspect, some embodiments of the present application provide a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, can implement the simulation control method of the UVM verification platform as described in any embodiment of the first aspect.
[0042] In a fifth aspect, some embodiments of the present application provide a computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the simulation control method of the UVM verification platform as described in any embodiment of the first aspect can be implemented. BRIEF DESCRIPTION OF THE DRAWINGS
[0043] In order to more clearly illustrate the technical solutions of some embodiments of the present application, the drawings required for use in some embodiments of the present application will be briefly introduced below. It should be understood that the following drawings only show some embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.
[0044] Figure 1 A flow chart of a simulation control method of the prior art;
[0045] Figure 2 A schematic flow chart of a simulation control method of a UVM verification platform provided in an embodiment of the present application;
[0046] Figure 3 A schematic diagram of the structure of a simulation system provided in an embodiment of the present application;
[0047] Figure 4 A schematic diagram of the interactive instruction processing flow provided in an embodiment of the present application;
[0048] Figure 5 A disassembly diagram provided for an embodiment of the present application;
[0049] Figure 6 A schematic diagram of the local main interface provided in the embodiment of the present application;
[0050] Figure 7 A schematic diagram of the structure of a simulation control device of a UVM verification platform provided in an embodiment of the present application;
[0051] Figure 8 A schematic diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0052] The technical solutions in some embodiments of the present application will be described below in conjunction with the drawings in some embodiments of the present application.
[0053] It should be noted that similar reference numerals and letters represent similar items in the following drawings, so once an item is defined in one drawing, it does not need to be further defined and explained in subsequent drawings. At the same time, in the description of this application, the terms "first", "second", etc. are only used to distinguish the description and cannot be understood as indicating or implying relative importance.
[0054] The simulation control of the UVM verification platform is mainly carried out on the Linux server side. The verification platform tracks the verification progress based on metrics such as coverage and performs simulation control. For the system-level UVM verification platform, when verifying in C or ASM format, if the compilation of the verification case needs to be performed on the Windows side, manual compilation and file transfer are required. The existing technology is fully automated and random. In the absence of human intervention, it takes a lot of time to converge to all scenes. When the Windows-side compilation software is needed, it can only be compiled manually, and third-party communication software is used to transmit and control the simulation log. It is impossible to automatically transfer and process files to each other. How to use the WINDOW side to assist LINUX simulation and improve the flexibility of simulation and simulation control is an urgent problem to be solved.
[0055] In view of this, some embodiments of the present application provide a simulation control method for a UVM verification platform, the method receiving a simulation instruction sent by a server; parsing the simulation instruction to determine the instruction type of the simulation instruction; determining the simulation operation corresponding to the instruction type according to the instruction type of the simulation instruction, the embodiment of the present application can realize the interaction and control with the local Windows end during the simulation process in the verification use case of the UVM platform through the SOCKET protocol, the server end is responsible for the process control of the entire platform, at each stage of the simulation, the server end sends a control instruction to the client end according to actual needs, the client end parses the instruction after receiving the instruction, and the client end can execute the corresponding control or analysis script according to the parsed instruction, and can execute IDE software, etc., thus avoiding manual compilation and improving the simulation efficiency of the chip.
[0056] like Figure 2 As shown, an embodiment of the present application provides a simulation control method of a UVM verification platform, which is applied to a terminal device of a Windows system, and the method includes:
[0057] S201, receiving a simulation instruction sent by a server;
[0058] S202, parsing the simulation instruction to determine the instruction type of the simulation instruction;
[0059] S203. Determine, according to the instruction type of the simulation instruction, a simulation operation corresponding to the instruction type.
[0060] Specifically, Figure 3 The simulation system shown includes a server and a Windows client, and encapsulation functions and protocol packages are respectively provided on the server and the Windows client, and the server is a Linux service system, which is provided with a platform control module, a UVM verification platform and a DUT (program under test).
[0061] The server is responsible for the process control of the entire platform. At each stage of the simulation, the server sends control instructions to the client according to actual needs. After receiving the instructions, the client parses them. The instruction processing flow of the Windows client is as follows: Figure 4 As shown:
[0062] According to the parsed instructions, the Windows client can execute the corresponding control or analysis script, and can execute IDE software, etc. After that, the server sends instructions, receives the result file or control information generated by the client, and inputs the result file or control information into the UVM simulation platform to control the verification platform.
[0063] Some embodiments of the present application receive simulation instructions sent by a server; parse the simulation instructions to determine the instruction type of the simulation instructions; and determine the simulation operation corresponding to the instruction type according to the instruction type of the simulation instructions. The embodiments of the present application can realize interaction and control with the local Windows end during the simulation process in the verification use case of the UVM platform through the SOCKET protocol. The server end is responsible for the process control of the entire platform. At each stage of the simulation, the server end sends control instructions to the client end according to actual needs. After receiving the instructions, the client end parses them. The client end can execute corresponding control or analysis scripts according to the parsed instructions, and can execute IDE software, etc., thereby avoiding manual compilation and improving the simulation efficiency of the chip.
[0064] Another embodiment of the present application further supplements the simulation control method of the UVM verification platform provided in the above embodiment.
[0065] Optionally, the method further comprises:
[0066] After the simulation operation is completed, the result information is returned to the server through the TCP / IP protocol.
[0067] Some embodiments of the present application send instructions through the server side to receive the result file or control information generated by the client into the UVM simulation platform to control the verification platform.
[0068] Optionally, the simulation instruction includes at least simulation process control information and text processing information, and the simulation instruction is transmitted in the form of a character string instruction.
[0069] The communication process in some embodiments of the present application adopts the TCP / IP protocol, and the local computer monitors the command messages from the remote computer in real time. The command messages are divided into two categories: simulation process control and text processing. The instructions are transmitted in the form of strings to facilitate understanding and improve communication efficiency.
[0070] Optionally, receiving a simulation instruction sent by the server includes:
[0071] Receive the simulation command sent by the server through the sendcmd function;
[0072] The receiving server sends the file through the sendfile function.
[0073] Specifically, it is used to realize the interaction between the server and the client. The main encapsulation functions implemented are:
[0074] sendcmd: This function is used to send instructions that require the client to perform certain operations;
[0075] sendfile: send files from a remote Linux server to a Windows client;
[0076] receivefile: Receives files from a remote Linux server to a Windows client.
[0077] Some embodiments of the present application set various encapsulation functions to achieve interaction between the server and the client, avoid manual compilation, and improve simulation efficiency.
[0078] Optionally, parsing the simulation instruction to determine the instruction type of the simulation instruction includes:
[0079] Convert string instructions into shell instructions or operation execution instructions that can be recognized by the Linux system; operation execution instructions are used to process text or Windows system software;
[0080] According to the parsing result, the instruction type of the simulation instruction is determined.
[0081] In the embodiment of the present application, the communication and control between the local client and the remote server are newly added, wherein the communication process adopts the TCP / IP protocol, and the local real-time monitoring of the command message from the remote computer is divided into two categories: simulation process control and text processing. The instruction is transmitted in the form of a string, so as to facilitate understanding and improve communication efficiency. After the client and the server in the embodiment of the present application receive the instruction, the processing instruction string will be parsed immediately, and the string instruction will be converted into the execution, text processing, waveform processing, or software execution, text processing, etc. of the shell or other scripts that can be recognized by the linux system, or the Windows system. According to the analysis result, the response instruction is used to carry out the simulation control of the UVM verification platform, the processing of the simulation file, etc.
[0082] In some embodiments of the present application, after receiving the instruction, the client and the server will immediately parse and process the instruction string, and convert the string instruction into the execution, text processing, waveform processing, shell or other scripts recognizable by the Linux system, or software execution, text processing, etc. of the Windows system. According to the parsing result, the instruction is responded to, and the simulation control of the UVM verification platform and the processing of the simulation file are performed.
[0083] The Linux service system in the server in the embodiment of the present application includes two parts, one part is the UVM verification environment, which is mainly used to randomize the simulation sequence, send the transaction to the design under test DUT and the reference model, monitor and compare the simulation results, and perform coverage statistics. The other part is the DPI_C (Direct Programming Interface) part, which is a package function developed using C language, mainly used for file transfer between the remote Linux server end and the local Windows end, and the sending of operation commands of the Windows end verification service program (such as IDE, various general compilation software).
[0084] Specific implementation process:
[0085] The UVM verification platform is built using the standard UVM framework division method, which is mainly divided into several parts, including agent module Agent, sequence module Sequence, environment module Env, test case module Testcase, top-level module Top, etc., which are responsible for corresponding operations. Each module in the UVM verification platform is configurable, and the corresponding configuration is performed through the config object of each module. The number of agents in the verification platform, whether to collect coverage, etc. can be configured through parameter configuration; each module is packaged in the form of package to facilitate compilation and file management; each component and module is connected through the built-in TLM for data transmission and operation. The specific structure is as follows Figure 5 The remote linux part in.
[0086] In order to respond to the communication from the Linux side, the Windows client needs to build a program for communication. The main process of this program is as follows Figure 6 As shown, the command interface part is used to parse the instructions sent from the remote server, and call the corresponding local program according to the parsed command, such as the service interface of the IDE, to perform corresponding compilation and other operations. The compiled file can also be sent to the remote server according to the parsed command.
[0087] The local and remote communication process uses the TCP / IP protocol and standard protocol packages.
[0088] In the technical background of socket, some functions are developed. The platform calls C functions through DPI in System Verilog language. The most commonly used functions are:
[0089] void sendfile(int sockfd,string send_file,string des_file);
[0090] void receivefile(int sockfd,string src_file,string recv_file);
[0091] void sendcmd(int sockfd,string send_cmd);
[0092] int setsocket(string ip_adr);
[0093] void close_sock(int sockfd);
[0094] These functions interact with the client by specifying the IP address of the local Windows client to implement various operations. The usage is as follows:
[0095] receivefile(IP, local file path, server file path): the win_ip parameter is transmitted through variable assignment in the Makefile script; the following two parameters are the directory where the Windows file is located and the location where the file received by Linux is stored. It is used to send the simulation logs and simulation results of the remote server-side UVM platform to the specified location of the Windows client for analysis and processing.
[0096] sendfile(IP, server file path, local file path): sendfile is similar to receivefile and is used to send files processed or generated by the Windows client to the remote server for analysis and processing by the UVM verification platform.
[0097] sendcmd(IP, command): Sends a command to the local Windows terminal. After Windows parses it, it calls the script and the service interface of the local software to process the file or command.
[0098] The workflow is as follows:
[0099] In the ENV component of the UVM verification platform, use the import "DPI-C" pure function method to import the above functions into the UVM platform. In this way, you can call these functions in the simulation platform to send commands to the local Windows end.
[0100] The above function is called in the test case testcase as needed, and the above encapsulation function implemented by this patent is used in the simulation process. When verifying a certain function point, the test results and test reports can be sent to the local Windows end, or reference values can be obtained locally, or platform control information can be obtained locally.
[0101] Use the script to start the UVM platform, and verify that the platform performs random and directed simulations based on the verification cases constructed by the verification personnel.
[0102] The verification use cases in the UVM platform use sendfile, receivefile, and sendcmd to send commands to Windows through Socket. After the Windows side performs the corresponding operations, such as transferring files, executing Windows service programs, controlling the operation of other IDEs, etc., the results can be fed back to the UVM verification platform on the remote server.
[0103] End the simulation, reverse the verification plan, and send the verification report to the local Windows client.
[0104] On the local Windows side, such as Figure 4 As shown, the main program is always waiting for instructions from the remote end. If an instruction is received, it is parsed. If the parsing is correct, a specific script or local program service interface is called according to the specific parsing result; if the parsing is incorrect, the instruction is discarded and the program continues to wait for new instructions.
[0105] In the embodiment of the present application, the use of DPI implemented by the SOCKET protocol and this patent can realize the interaction and control with the local Windows terminal during the simulation process in the verification case of the UVM platform. In the run_phase of the verification case, the encapsulation function such as sendfile developed by this patent is called to realize this function.
[0106] DPI can be called at any time in the run_phase of the UVM verification platform. The simulation can be controlled in real time throughout the simulation process. Different instructions can be sent to the Windows side according to the simulation results and coverage. The local Windows side calls different IDEs, software or scripts according to the instructions to provide feedback on the simulation.
[0107] For the transmission and update of files, the sendfile and reveivefile in this patent can be called in the UVM platform for control, thereby improving the automation level of the platform and improving the verification efficiency.
[0108] For scenarios where the reference model needs to run on the local Windows side, this patent can be used to call sendcmd in the verification use case to send the corresponding instructions to the Windows side. After parsing, the Windows side calls the relevant reference model software interface to achieve automatic interaction between the UVM verification platform and the local Windows side software.
[0109] For scenarios where system-level verification use cases need to be generated or compiled on the local Windows side, automatic interaction between the system-level UVM or subsystem-level UVM verification platform and the local Windows-side IDE or other compilation software can be achieved.
[0110] The embodiment of the present application can replace SOCKET with other protocols, such as Telnet. The UVM simulation platform can be replaced with the most basic System Verilog verification platform, or other random verification platforms. In the UVM verification platform, the DPI implemented by this patent calls the standard protocol package in the verification case to realize SOCKET communication.
[0111] The UVM verification platform can automatically interact with Windows commands and files. The interaction methods are as follows: Figure 5 and Figure 6 As shown, the degree of automation and efficiency of verification can be significantly improved.
[0112] It should be noted that each implementable method in this embodiment may be implemented separately, or may be implemented in combination in any combination without conflict, and this application is not limited thereto.
[0113] Another embodiment of the present application provides a simulation control device of a UVM verification platform, which is used to execute the simulation control method of the UVM verification platform provided by the above embodiment.
[0114] like Figure 7 As shown, it is a structural diagram of the simulation control device of the UVM verification platform provided by the embodiment of the present application. The simulation control device of the UVM verification platform is applied to a terminal device of a Windows system, including a receiving module 701, a parsing module 702 and a determining module 703, wherein:
[0115] The receiving module 701 is used to receive the simulation instruction sent by the server;
[0116] The parsing module 702 is used to parse the simulation instruction and determine the instruction type of the simulation instruction;
[0117] The determination module 703 is used to determine the simulation operation corresponding to the instruction type according to the instruction type of the simulation instruction.
[0118] Regarding the device in this embodiment, the specific manner in which each module performs operations has been described in detail in the embodiment of the method, and will not be elaborated here.
[0119] Some embodiments of the present application receive simulation instructions sent by a server; parse the simulation instructions to determine the instruction type of the simulation instructions; and determine the simulation operation corresponding to the instruction type according to the instruction type of the simulation instructions. The embodiments of the present application can realize interaction and control with the local Windows end during the simulation process in the verification use case of the UVM platform through the SOCKET protocol. The server end is responsible for the process control of the entire platform. At each stage of the simulation, the server end sends control instructions to the client end according to actual needs. After receiving the instructions, the client end parses them. The client end can execute corresponding control or analysis scripts according to the parsed instructions, and can execute IDE software, etc., thereby avoiding manual compilation and improving the simulation efficiency of the chip.
[0120] Another embodiment of the present application further supplements the simulation control device of the UVM verification platform provided in the above embodiment.
[0121] Optionally, a module is determined to:
[0122] After the simulation operation is completed, the result information is returned to the server through the TCP / IP protocol.
[0123] Some embodiments of the present application send instructions through the server side to receive the result file or control information generated by the client into the UVM simulation platform to control the verification platform.
[0124] Optionally, the simulation instruction includes at least simulation process control information and text processing information, and the simulation instruction is transmitted in the form of a character string instruction.
[0125] The communication process in some embodiments of the present application adopts the TCP / IP protocol, and the local computer monitors the command messages from the remote computer in real time. The command messages are divided into two categories: simulation process control and text processing. The instructions are transmitted in the form of strings to facilitate understanding and improve communication efficiency.
[0126] Optionally, the receiving module is used to:
[0127] Receive the simulation command sent by the server through the sendcmd function;
[0128] The receiving server sends the file through the sendfile function.
[0129] Some embodiments of the present application set various encapsulation functions to achieve interaction between the server and the client, avoid manual compilation, and improve simulation efficiency.
[0130] Optionally, a parsing module for:
[0131] Convert string instructions into shell instructions or operation execution instructions that can be recognized by the Linux system; operation execution instructions are used to process text or Windows system software;
[0132] According to the parsing result, the instruction type of the simulation instruction is determined.
[0133] In some embodiments of the present application, after receiving the instruction, the client and the server will immediately parse and process the instruction string, and convert the string instruction into the execution, text processing, waveform processing, shell or other scripts recognizable by the Linux system, or software execution, text processing, etc. of the Windows system. According to the parsing result, the instruction is responded to, and the simulation control of the UVM verification platform and the processing of the simulation file are performed.
[0134] Regarding the device in this embodiment, the specific manner in which each module performs operations has been described in detail in the embodiment of the method, and will not be elaborated here.
[0135] It should be noted that each implementable method in this embodiment may be implemented separately, or may be implemented in combination in any combination without conflict, and this application is not limited thereto.
[0136] The embodiment of the present application also provides a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, the operation of the method corresponding to any embodiment of the simulation control method of the UVM verification platform provided in the above embodiment can be implemented.
[0137] An embodiment of the present application also provides a computer program product, wherein the computer program product includes a computer program, wherein when the computer program is executed by a processor, the operation of the method corresponding to any embodiment of the simulation control method of the UVM verification platform provided in the above embodiment can be implemented.
[0138] like Figure 8 As shown, some embodiments of the present application provide an electronic device 800, which includes: a memory 810, a processor 820, and a computer program stored in the memory 810 and executable on the processor 820, wherein the processor 820 reads the program from the memory 810 through a bus 830 and executes the program to implement the method of any embodiment included in the simulation control method of the above-mentioned UVM verification platform.
[0139] Processor 820 can process digital signals and can include various computing structures, such as complex instruction set computer structure, reduced instruction set computer structure, or a structure that implements a combination of multiple instruction sets. In some examples, processor 820 can be a microprocessor.
[0140] The memory 810 may be used to store instructions executed by the processor 820 or data related to the execution of instructions. These instructions and / or data may include codes for implementing some or all functions of one or more modules described in the embodiments of the present application. The processor 820 of the disclosed embodiment may be used to execute instructions in the memory 810 to implement the method shown above. The memory 810 includes a dynamic random access memory, a static random access memory, a flash memory, an optical memory, or other memory known to those skilled in the art.
[0141] The above are only embodiments of the present application and are not intended to limit the scope of protection of the present application. For those skilled in the art, the present application may have various changes and variations. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present application should be included in the scope of protection of the present application. It should be noted that similar reference numerals and letters represent similar items in the following drawings, so once an item is defined in one drawing, it does not need to be further defined and explained in the subsequent drawings.
[0142] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any technician familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
[0143] It should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or device including the elements.
Claims
1. A simulation control method for a UVM verification platform, characterized in that, Applied to a terminal device of Windows system, the method comprises: Receive simulation instructions sent by the server; Parsing the simulation instruction to determine the instruction type of the simulation instruction; According to the instruction type of the simulation instruction, a simulation operation corresponding to the instruction type is determined.
2. The simulation control method of UVM verification platform according to claim 1, wherein The method further comprises: After the simulation operation is completed, the result information is returned to the server via the TCP / IP protocol.
3. The simulation control method of UVM verification platform according to claim 1, wherein The simulation instruction at least includes simulation process control information and text processing information, and the simulation instruction is transmitted in the form of a character string instruction.
4. The simulation control method of UVM verification platform according to claim 3, wherein The receiving of the simulation instruction sent by the server comprises: Receive the simulation command sent by the server through the sendcmd function; The receiving server sends the file through the sendfile function.
5. The simulation control method of UVM verification platform according to claim 3, wherein The step of parsing the simulation instruction to determine the instruction type of the simulation instruction includes: Convert the string instruction into a shell instruction or an operation execution instruction recognizable by the Linux system; the operation execution instruction is used to process the text or the software of the Windows system; According to the parsing result, the instruction type of the simulation instruction is determined.
6. A simulation control device for a UVM verification platform, characterized in that: A terminal device applied to a Windows system, the device comprising: A receiving module, used for receiving a simulation instruction sent by a server; A parsing module, used for parsing the simulation instruction to determine the instruction type of the simulation instruction; The determination module is used to determine the simulation operation corresponding to the instruction type according to the instruction type of the simulation instruction.
7. The simulation control device of the UVM verification platform according to claim 6, characterized in that, The determining module is used to: After the simulation operation is completed, the result information is returned to the server via the TCP / IP protocol.
8. The simulation control device of the UVM verification platform according to claim 6, characterized in that, The simulation instruction at least includes simulation process control information and text processing information, and the simulation instruction is transmitted in the form of a character string instruction.
9. An electronic device, characterized in that: The invention comprises a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the simulation control method of the UVM verification platform described in any one of claims 1 to 5 can be implemented when the processor executes the program.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, wherein when the program is executed by a processor, the simulation control method of the UVM verification platform described in any one of claims 1 to 5 can be implemented.
Citation Information
Patent Citations
Ethernet switch FPGA verification method based on UVM verification method
CN104065536A
Method for calling UVM verification environment through special graphical interface
CN104268310A
Chip verification method and system, computer equipment and readable storage medium
CN114024871A
Verification platform generation method and device, medium and equipment
CN116306399A
Methods and systems for system design automation (SDA) of mixed signal electronic circuitry including embedded software designs
WO2018136974A1