CN110705191B - Method for constructing polymorphic simulation verification environment - Google Patents

Method for constructing polymorphic simulation verification environment Download PDF

Info

Publication number
CN110705191B
CN110705191B CN201910859132.2A CN201910859132A CN110705191B CN 110705191 B CN110705191 B CN 110705191B CN 201910859132 A CN201910859132 A CN 201910859132A CN 110705191 B CN110705191 B CN 110705191B
Authority
CN
China
Prior art keywords
environment
module
model
real
design
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910859132.2A
Other languages
Chinese (zh)
Other versions
CN110705191A (en
Inventor
胡向东
计永兴
陈诚
李辉
陈雪城
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHANGHAI HIGH-PERFORMANCE INTEGRATED CIRCUIT DESIGN CENTER
Original Assignee
SHANGHAI HIGH-PERFORMANCE INTEGRATED CIRCUIT DESIGN CENTER
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SHANGHAI HIGH-PERFORMANCE INTEGRATED CIRCUIT DESIGN CENTER filed Critical SHANGHAI HIGH-PERFORMANCE INTEGRATED CIRCUIT DESIGN CENTER
Priority to CN201910859132.2A priority Critical patent/CN110705191B/en
Publication of CN110705191A publication Critical patent/CN110705191A/en
Application granted granted Critical
Publication of CN110705191B publication Critical patent/CN110705191B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The invention relates to a method for constructing a polymorphic simulation verification environment, which comprises the following steps: defining excitation generation rules under the whole chip, realizing an excitation resource management and allocation mechanism, and managing and allocating resource spaces uniformly; defining an external unified interface parameter list of a script tool library to realize the analysis support of various input parameters and commands; when the environment needs the virtual model, the script library automatically generates the virtual model modeling of the design module; when the environment needs a real model, finding a corresponding real model in a verification model library; the virtual model or the real model is used for realizing the cutting or the replacement of the design module, and the change of the environment topological structure is completed; test validation is run with a test sequence provided by the command line based on the newly generated environmental topology design code and the environmental code. The invention can reduce the workload of development environment and excitation of the verifier.

Description

Method for constructing polymorphic simulation verification environment
Technical Field
The invention relates to the technical field of microprocessing verification, in particular to a method for constructing a polymorphic simulation verification environment.
Background
With the increasing scale and complexity of integrated circuits, the functions of processor chips become more and more complex, and the corresponding verification work becomes more and more difficult. The verification personnel need to establish the simulation environment at the module level for verification and establish the simulation environment at the chip level for verification. In contrast to module-level analog simulation, a chip-level or system-level analog simulation environment involves a large number of design modules, as well as a large number of IPs. At present, a common simulation environment construction mode is to respectively construct a module-level simulation environment and a chip-level simulation environment and separately test the module-level simulation environment and the chip-level simulation environment, and an environment topological structure is relatively fixed. Firstly, higher requirements are put forward on the capability of verification personnel when a complex simulation environment is to be constructed; secondly, development and maintenance are costly.
In the prior art, in the environment verification with relatively small design scale, the influence of environment performance and resource utilization rate is relatively small or can be ignored. However, for very large scale designs involving billions or even billions of transistors, the environment and excitation applicability are very significant in the verification process, mainly in the aspects of verification efficiency and resource utilization. However, the commonly used built simulation environment has two drawbacks: firstly, module-level environment verification and chip-level simulation environments are mutually independent, and verification personnel respectively carry out verification; secondly, the incentives for the development of each environment are not compatible with each other, such as: resulting in a module-level environmental stimulus that cannot operate in a chip-level environment. This requires the development of corresponding stimuli for each environment separately, resulting in relatively inefficient verification.
Disclosure of Invention
The invention aims to solve the technical problem of providing a method for constructing a polymorphic simulation verification environment, which can reduce the workload of a verifier on developing the environment and excitation.
The technical scheme adopted by the invention for solving the technical problem is as follows: the method for constructing the polymorphic simulation verification environment comprises the following steps:
(1) Defining excitation generation rules under the whole chip, realizing an excitation resource management and allocation mechanism, and managing and allocating resource spaces uniformly;
(2) Defining an external unified interface parameter list of a script tool library to realize the analysis support of various input parameters and commands;
(3) When the environment needs the virtual model, the script library automatically generates the virtual model modeling of the design module; when the environment needs a real model, finding a corresponding real model in a verification model library;
(4) The virtual model or the real model is used for realizing the cutting or the replacement of the design module, and the change of the environment topological structure is completed;
(5) Test validation is run with a test sequence provided by the command line based on the newly generated environmental topology design code and the environmental code.
In the step (1), uniform resource management logic is used for carrying out consistent resource allocation and management on the module level environment, and address spaces corresponding to respective cores are respectively managed in the real module level environment and the virtual module level environment.
In the step (1), the real module level environment and the virtual module level environment are configured to be in place at the same time for the chip level environment, the space addresses of the core accesses of the real module level environment and the virtual module level environment are different, automatic compatible adaptation can be achieved, and the space addresses of the core accesses of the real module level environment and the virtual module level environment are the same, so that the pseudo sharing of the Cache block is achieved due to the access granularity.
The step (2) specifically comprises the following steps:
(21) Detecting whether a design module needs to be in place in an input command, and if so, judging whether a real model needs to be used; if not, judging whether a virtual model needs to be used;
(22) And analyzing the design codes, splitting the design instantiation array module needing to be related into a plurality of single instantiation modules, and checking the grammar rules of line width, splitting width and sign bit.
Advantageous effects
Due to the adoption of the technical scheme, compared with the prior art, the invention has the following advantages and positive effects: according to the invention, under the condition of the existing resources, a system resource mechanism for unified management is established, virtual and real models can be adopted to replace real designs to construct different simulation environments according to the requirements of users, and the self-adaption under different test and excitation environments is realized, so that the verification efficiency is improved, the requirements on the resources are reduced, the development environment and the excitation workload of verification personnel can be reduced, the verification personnel can focus on the verification more, and the verification progress is accelerated.
Drawings
FIG. 1 is a flow chart of the present invention;
fig. 2 is a configuration diagram of a real module-level environment and a virtual module-level environment in a chip-level environment.
Detailed Description
The invention will be further illustrated with reference to the following specific examples. It should be understood that these examples are for illustrative purposes only and are not intended to limit the scope of the present invention. Further, it should be understood that various changes or modifications of the present invention may be made by those skilled in the art after reading the teaching of the present invention, and such equivalents may fall within the scope of the present invention as defined in the appended claims.
The embodiment of the invention relates to a method for constructing a polymorphic simulation and verification environment, which relates to a reusable script library, a DUT (device under test), a VIP (very important person) model library, a Testbench and a test stimulus library. The DUT is a design code, the VIP model library is a library (short for: a verification model library or a real model library) composed of a verification unit with a self-developed design model function and a module-level verification environment, the Testbench is used for completing the initialization function of the whole environment, the reusable script library is a library formed by a series of scripts which are realized based on Python and have expandable, reusable and support dynamic parameters, and the stimulus library is a basic test set developed under different environments. As shown in fig. 1, the method comprises the steps of:
the first step is as follows: and defining an excitation generation rule under the whole chip, realizing an excitation resource management and allocation mechanism, and uniformly managing and allocating resource space.
For a module level environment, uniform resource management logic needs to be used for consistent resource allocation and management, so that adaptive test excitation can be generated conveniently. Such as: for multi-core processors, unified management of address space is required. Address spaces corresponding to respective cores can be managed in a real PE (Processor Element) module level environment and a VPE (Virtual Processor Element) module level environment respectively, and test sequences corresponding to core bits are developed.
For the chip level environment, VPE and PE can be configured to be in place at the same time, and the space addresses of respective core access are different due to the reason of uniform resource allocation management based on the sequence developed by the two module level environments, so that the automatic compatibility can be stimulated. Even if the address space is the same, the Cache block pseudo sharing is realized due to the access granularity, and the self-adaption is also satisfied, as shown in FIG. 2.
The second step is as follows: and defining an external unified interface parameter list of the script tool library to realize the analysis support of various input parameters and commands.
Step 2.1: detecting whether a design module in an input command needs to be in place or not, and if so, using a real model; if not, whether a dummy pattern is needed. The dummy model in this embodiment is an empty design module, which has no specific function and is used only for reducing the design scale. The real model in the present embodiment is an autonomously implemented module level environment or VIP (Verification intelligent Property) model.
Step 2.2: and analyzing the design codes, splitting the design instantiation array module needing to be related into a plurality of single instantiation modules, and checking the grammar rules such as line width, splitting width, sign bit and the like.
The third step: if the environment requires a virtual model, the virtual model modeling of the design module, i.e., the virtual model is generated, is automatically generated by the script. If the environment requires a real model, the corresponding real model needs to be found in the VIP library.
The fifth step: and (3) using a virtual model or a real model to realize the cutting or replacement of the design module and finish the change of the environment topological structure.
A sixth step: design code and environment code based on the newly generated topology results, run test validation with the test sequence provided by the command line.
The invention can realize the replacement of the design module by the virtual-real model on line according to the user command parameters, thereby being capable of quickly generating various required environments, dynamically adjusting the environment topological structure under the condition that the environment supports various parameter configuration, quickly generating the environment and further directly running the test. The invention realizes a unified management and distribution mechanism of the excitation resources, and the excitation developed in different environments can be subjected to self-adaptive test in other environments, thereby reducing the redevelopment cost; because the environment topological structure can be dynamically adjusted, the environment scale can be reduced as required, the use of test resources can be obviously reduced, and the verification progress is accelerated.

Claims (4)

1. A method for constructing a polymorphic simulation verification environment is characterized by comprising the following steps:
(1) Defining excitation generation rules under a full chip, realizing an excitation resource management and allocation mechanism, and managing and allocating resource spaces in a unified manner;
(2) Defining an external unified interface parameter list of a script tool library to realize the analysis support of various input parameters and commands;
(3) When the environment needs the virtual model, the script library automatically generates a virtual model modeling for the design module; when the environment needs the real model, finding the corresponding real model in the verification model library; the virtual model is an empty design module and is only used for reducing the design scale; the real model is an autonomously implemented module level environment or VIP model;
(4) The virtual model or the real model is used for realizing the cutting or the replacement of the design module, and the change of the environment topological structure is completed;
(5) Based on the newly generated environment topology design code and environment code, test validation is run with a test sequence provided by the command line.
2. The method according to claim 1, wherein in step (1), the uniform resource management logic is used for consistent resource allocation and management of the module-level environment, and the address spaces corresponding to the cores of the real module-level environment and the virtual module-level environment are managed respectively.
3. The method for constructing a polymorphic simulation verification environment according to claim 1, wherein in step (1), the real module-level environment and the virtual module-level environment are configured to be in place at the same time for the chip-level environment, and when the spatial addresses of the core accesses of the real module-level environment and the virtual module-level environment are different, an automatic compatibility can be realized, and when the spatial addresses of the core accesses of the real module-level environment and the virtual module-level environment are the same, the Cache block pseudo-sharing is realized due to the access granularity.
4. The method for building a polymorphic simulation verification environment according to claim 1, wherein the step (2) specifically comprises the steps of:
(21) Detecting whether a design module needs to be in place in an input command, and if so, judging whether a real model needs to be used;
if not, judging whether a virtual model needs to be used;
(22) And analyzing the design codes, splitting the design instantiation array module needing to be related into a plurality of single instantiation modules, and checking the grammar rules of line width, splitting width and sign bit.
CN201910859132.2A 2019-09-11 2019-09-11 Method for constructing polymorphic simulation verification environment Active CN110705191B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910859132.2A CN110705191B (en) 2019-09-11 2019-09-11 Method for constructing polymorphic simulation verification environment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910859132.2A CN110705191B (en) 2019-09-11 2019-09-11 Method for constructing polymorphic simulation verification environment

Publications (2)

Publication Number Publication Date
CN110705191A CN110705191A (en) 2020-01-17
CN110705191B true CN110705191B (en) 2023-03-31

Family

ID=69196163

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910859132.2A Active CN110705191B (en) 2019-09-11 2019-09-11 Method for constructing polymorphic simulation verification environment

Country Status (1)

Country Link
CN (1) CN110705191B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112447256B (en) * 2020-12-24 2021-12-14 芯天下技术股份有限公司 True modeling error injection verification method and device of memory, storage medium and terminal

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5991529A (en) * 1997-05-16 1999-11-23 Sony Corporation Testing of hardware by using a hardware system environment that mimics a virtual system environment
CN106326056A (en) * 2016-08-26 2017-01-11 中国电子科技集团公司第三十八研究所 Reusable WISHBONE bus protocol verification platform and verification method thereof
CN106940428A (en) * 2016-01-04 2017-07-11 中兴通讯股份有限公司 Chip verification method, apparatus and system
CN107038280A (en) * 2017-03-10 2017-08-11 烽火通信科技股份有限公司 A kind of checking system and method for software and hardware cooperating simulation
US9836372B1 (en) * 2014-02-14 2017-12-05 Maxim Integrated Products, Inc. Device verification system with firmware universal verification component

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5991529A (en) * 1997-05-16 1999-11-23 Sony Corporation Testing of hardware by using a hardware system environment that mimics a virtual system environment
US9836372B1 (en) * 2014-02-14 2017-12-05 Maxim Integrated Products, Inc. Device verification system with firmware universal verification component
CN106940428A (en) * 2016-01-04 2017-07-11 中兴通讯股份有限公司 Chip verification method, apparatus and system
CN106326056A (en) * 2016-08-26 2017-01-11 中国电子科技集团公司第三十八研究所 Reusable WISHBONE bus protocol verification platform and verification method thereof
CN107038280A (en) * 2017-03-10 2017-08-11 烽火通信科技股份有限公司 A kind of checking system and method for software and hardware cooperating simulation

Also Published As

Publication number Publication date
CN110705191A (en) 2020-01-17

Similar Documents

Publication Publication Date Title
EP3754496B1 (en) Data processing method and related products
CN106940428B (en) Chip verification method, device and system
US8972958B1 (en) Multistage development workflow for generating a custom instruction set reconfigurable processor
US7945888B2 (en) Model-based hardware exerciser, device, system and method thereof
CN114327861B (en) Method, device, system and storage medium for executing EDA task
Cai et al. Retargetable profiling for rapid, early system-level design space exploration
US20170024508A1 (en) System and method for managing and composing verification engines
CN103294599B (en) A kind of embedded software cross-beta method based on cloud
CN103955373A (en) Design method of SDN (Software Defined Networking) application integration development environment
CN113032963A (en) Simulink model simulation acceleration method and device
Hudson et al. libEnsemble users manual
CN110532044A (en) A kind of big data batch processing method, device, electronic equipment and storage medium
Aksakalli et al. Systematic approach for generation of feasible deployment alternatives for microservices
CN110705191B (en) Method for constructing polymorphic simulation verification environment
US20120166168A1 (en) Methods and systems for fault-tolerant power analysis
Panadero et al. P3s: A methodology to analyze and predict application scalability
US20030037319A1 (en) Method and apparatus for partitioning and placement for a cycle-based simulation system
CN116738901A (en) Chip verification method and device
US11593547B1 (en) Prediction and optimization of multi-kernel circuit design performance using a programmable overlay
CN117667655A (en) Verification system, verification method, electronic device, and storage medium
CN109739666A (en) Striding course call method, device, equipment and the storage medium of singleton method
Bremer et al. Semi-static and dynamic load balancing for asynchronous hurricane storm surge simulations
US10409624B1 (en) Data array compaction in an emulation system
Vachharajani et al. The liberty simulation environment, version 1.0
CN114115887A (en) Adaptive scheduling with dynamic partition load balancing for fast partition compilation

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant