|
VeriEZ Solutions, Inc. The Verification Tools Company |
|
|
|
|
|
|
EZCheck - Static
Analyzer
Overview
Using high-level languages for verification is a popular and
particularly efficient methodology to reduce verification time. The
use of a high-level language for hardware verification is similar to
the widespread use of a hardware description language (HDL) for
hardware design. Consequently, high-level design verification
engineers face the same problems and challenges as their
counterparts in hardware design. Linting is a widely accepted
technology used by hardware designers. Designers routinely depend on
linters to detect simulation/synthesis mismatch, combinational
feedback and latch inference problems in HDL designs. EZCheck
applies lint methodology to OpenVera and SystemVerilog Hardware
Verification Language (HVL) designs. Use model
The input to EZCheck is one or more HVL modules along with one or
more rulesets. The output is a list of violations that pinpoints
areas in the input that are not consistent with the required
rulesets.
Pre-packaged rulesetsEZCheck comes standard over half a dozen pre-packaged rulesets: Verification Errors, Coverage, Best Practices, SystemVerilog Portability, SystemVerilog guidance, SVA best practices, and Reference Verification Methodology (RVM). EZDesignLint: RTL Lint ruleset: The RTL errors ruleset is a collection of predefined rules that checks for typical lint errors. Examples of errors detected by this ruleset include:
EZLint: Verification Errors ruleset: The Verification Errors ruleset is a collection of predefined rules that warns the user of critical errors in the design. Examples of errors detected by this ruleset include:
EZCoverage: Functional Coverage ruleset: The functional coverage ruleset is a collection of predefined rules that checks coverage models for best practices. Example checks in this ruleset are as follows:
EZPort: SystemVerilog Portability ruleset (OpenVera only): The SystemVerilog Portability ruleset is a collection of rules that checks for OpenVera constructs that may NOT port easily to the SystemVerilog language. This ruleset is invaluable to companies who wish to adopt SystemVerilog in the future, but will be using OpenVera for implementation of current verification projects - this is true verification reuse! Examples of checks in this ruleset include:
Best Practices ruleset: The Best Practices ruleset is a collection of predefined rules that allows the user to follow certain policies that will result in maintainable, readable and reusable code. In addition to rules from the Basic ruleset, it also includes several rules to enhance maintainability. Examples of rules in this ruleset are as follows:
EZVMM: RVM (Reference Verification Methodology) Compliance ruleset: The Reference Verification Methodology ruleset is a collection of rules from the Verification Methodology Manual (VMM), a popular book authored by recognized industry leaders, Synopsys and ARM. EZCheck can automatically check for a subset of rules from the VMM. Examples of rules in this ruleset are as follows:
EZAssert: Assertions ruleset (SystemVerilog only): This ruleset is a collection of predefined rules that allows the user to check for assertions quality in SystemVerilog code. Sample checks are as follows:
EZGuide: SystemVerilog Guidance ruleset (SystemVerilog only): This ruleset is a collection of rules that allows Verilog-95 and Verilog-2001 users to quickly adopt SystemVerilog constructs. Predefined rules in this ruleset analyze users code and suggest SystemVerilog constructs or attributes that can be inserted. By writing SystemVerilog design and verification code, engineers can get better results from other tools in the design and verification flow. Sample checks are as follows:
EZOVM: Open Verification Methodology Rulechecks (SystemVerilog only): This ruleset can enable productivity for OVM-based teams by checking for errors in OVM usage and providing an easy mechanism to understand and apply the hierarchy present in OVM-based projects. OVM rules can check for inconsistencies in:
EZ1800: SystemVerilog 1800 Compliance and Simulator Portability: The EZ1800 ruleset checks for compliance with the IEEE 1800 standard and for issues that can cause SystemVerilog code to not compile and simulate on all simulator platforms. The SystemVerilog Portability module addresses a critical issue in today’s SystemVerilog environments. In part due to its status as an active and emerging standard, the SystemVerilog language is not supported consistently across synthesis and simulation platforms. This makes development of portable SystemVerilog modules impossible. The SystemVerilog Portability module’s 30+ checks keep the user informed about current requirements for writing portable and 1800-compliant SystemVerilog modules. Some sample checks are listed below:
User customizationEZCheck is highly customizable, allowing several levels of customization.
|
BENEFITS Detect design and verification errors Build efficient and consistent functional coverage models Use built-in checks to implement Object-oriented programming policy Spur adoption of SystemVerilog within design and verification teams by using SystemVerilog Guidance ruleset Implement a corporate-wide coding policy to generate correct, consistent and reusable HVL modules Integrate geographically dispersed verification teams Perform quantitative analysis of external verification IP FEATURES Full language support for SystemVerilog® and OpenVera® Text and HTML output Elegant violation control mechanism to create manageable reports Provides in-memory knowledge base that can be accessed with an intuitive API Highly extensible - robust API provides foundation or infinite user extensions Fits into existing verification flow High-performance - runs very fast Platforms - Solaris and Linux
|
|
Home
| Site Map |
Contact Info |