EASI Verification Product


Beach Solutions® EASI Verification™ enables the auto-generation of “correct-by-construction” tests and configuration files that can be quickly re-generated for your system integration and verification environments as the SoC (System-on-Chip) design evolves.

Auto-generation of verification files and other design deliverables from the central register specification in the EASI Tools Suite shortens verification time helping to meet the challenge of verifying and testing today’s complex SoCs.

>> Read the EASI Verification Leaflet

Key benefits Top

Significant verification savings

EASI Verification accelerates your system integration test and verification environment bring-up phase as the error-prone configuration tasks are automated. Auto-generation of correct-by-construction memory map configuration and test files means the benefits of reuse are maximized.

Major productivity increases

Auto-generation of configuration files from the central register-centric database minimizes the impact of changes downstream because the test environments are always aligned with the design. There is no need to understand the format of the configuration files and the repeatable generation process reduces risk.

Considerable quality increases

System address map and interfaces that have been validated within the Beach Solutions EASI Tools suite provide a solid foundation for the generation of verification code and debug configuration code. Major quality improvements are achieved using auto-generation as bitfield or register address errors are eliminated and misinterpretation errors are avoided. Automation removes human factors and focuses resources on testing the IP core behavior, rather than debugging setup and integration files.

Product description Top

For system integration and verification tasks, EASI Verification is used to auto-generate a C-based test suite for all of the registers and memories in a design. EASI Verification leverages the captured addressable register and memory data enabling the verification engineer to auto-generate verification configuration files in ‘e’. Auto-generation of Lauterbach ICE configuration files is also provided to accelerate system integration and debug.

Note: EASI SoC is a pre-requisite for EASI Verification.

 
 

Auto-generate Cadence® Specman-Elite® 'e' code

A verification generator is included within EASI Verification that automatically produces register and memory package definitions (formerly vr_ad) in 'e' from the central register-centric database. Generated files are compatible with the IEEE 1647 standard for ‘e’.

Accelerate verification setup

Each register file and memory can be instantiated under a unit in the Cadence Specman-Elite® verification environment and models the behavior of memory and registers. Output file models can be instantiated within either:

  • Module eVC
  • XBus environment
  • Passive slave agent

Auto-generate C-based integration tests

Bring C test production under control by auto-generating 8-bit, 16-bit, 32-bit and 64-bit to fully exercise the IP address mapped register and memory interface. The same tests can be run in pre and post silicon, in simulation and on real hardware.

Comprehensive test coverage

Each test can be compiled and run separately to form part of a larger HDL testbench:

  • Read-only register tests and write-only register tests check that registers can be accessed correctly
  • Register power on reset tests check default values for each register
  • Register write and then read tests to check the integrity for each register
  • Register POR, write and read tests to check the exclusivity behavior for each register
  • Memory write and then read tests to check the integrity for each area of memory
  • Additional stepped tests to test memory integrity at specified intervals
  • Supporting default type definitions

Write tests are easily configured with user-defined test patterns.

Each test contains calls to message macros to output different messages during the test and is specifically designed to minimize any unnecessary transactions while allowing for full debug of the results. EASI Verification includes an example Perl script to translate a message file into a human readable log file, allowing system integrators to focus on checking functional design rather than debugging the system interfaces.

Auto-generate HDL testbench

IP designers use the auto-generated RTL files as a self-checking
verification environment for rapid IP block interface
testing before system integration occurs. The auto-generated comprehensive verification environment can be used to test:

  • Synthesizable RTL output from the Beach Solutions Standard Verilog MRB generator
  • Synthesizable RTL output from the Beach Solutions Standard VHDL MRB generator
  • A programmer's view model output from the Beach Solutions Standard SystemC PV Model generator

Providing a jumpstart to IP verification, the auto-generated
Verilog test harness contains extendable APIs to drive any
MRB (DUT), model interface-transactions (system bus
read/write), and monitor the MRB output. Sample setup scripts
are provided for Cadence® Incisive® and Mentor Graphics
ModelSim®. Use with the Beach Solutions Verilog/VHDL MRB
generator or SystemC PV Model generator.

Auto-generate Lauterbach TRACE32 configuration files

Auto-generate a single .PER file for the entire system or a separate .PER file for each peripheral to configure the Lauterbach ICE TRACE32 debugger containing:

  • Register names mapped to memory locations
  • Full bitfield detail
  • Hardware design enumerated values
Output is target-independent and works for all TRACE32 compatible targets, models, development boards and final systems. 

 
 
 
Key features Top

 
 
  EASI
Verification
e’ code auto-generation
 
Register package file (formerly vr_ad) for use in Cadence Specman-Elite environment
Memory package file (formerly vr_ad) for use in Cadence Specman-Elite environment
Support for set / clear (sticky) bits
Generator-specific design rule checks to avoid compilation errors in Specman-Elite
C-based test auto-generation  
64-bit, 32-bit, 16-bit and 8-bit tests
Register write tests
Register read tests
Register power on reset tests
Register integrity tests
Register exclusivity tests
Memory boundary tests
Memory step tests
Memory address bit step tests
IP block address map definitions
System address map definitions
Supporting default types and access macros
Message macros to report test status
Parameterized attributes are resolved
Exclusion of a particular test type
Exclusion of particular database objects
Configurable test patterns for tests
HDL testbench auto-generation  
Generic testbench harness that connects to any MRB (DUT)
Test synthesizable RTL output from Beach Verilog MRB generator
Test synthesizable RTL output from Beach VHDL MRB generator
Programmer's view model output from Beach Solutions SystemC PV Model generator
Connection to MRB with multiple bus interfaces
Configurable bus interface component
Generic test case with function calls to the top-level API (and syslog)
Generic multi-layered API as a series of Verilog tasks and functions
Design-dependent testbench parameters
Design-dependent object descriptions
Generic clock generator
Generic handler for registers placed in the IP (bsIpReg data option) and external memories
Generic standard macros and parameters
Instance-based generation where parameterized IP values are resolved
Non instance based generation where generic IP values are used
Example simulation make script for the Cadence® Incisive® functional verification platform
Example simulation make script for Mentor Graphics ModelSim®
Testbench code based on IEEE verilog2001 constructs

Exclude memory mapped registers from register block (resides in IP)

Support for registered read only registers

Support for external reset sources

Support for internal & external enables

Support for set / clear (sticky) bits & self clear bits

Support for double output stage register/bitfields

Support for making write enable signals available externally

Generation of asynchronous or synchronous reset code

Support for registered read enable decodes

Support for registered read mux output stages

Exclude reserved objects

Support for single register with different read address and write address

Disconnect register write output from IP

TRACE32 auto-generation  
.PER peripheral files for each located component
Single .PER peripheral file for entire system
TRACE32 tree structure format
TRACE32 flat file structure format
Menu file for system
Truncation of register/bitfield names
Operating system support  
Microsoft® Windows® 2000 / Microsoft® Windows XP®
Red Hat Enterprise Linux AS release 3
Sun Solaris Operating Environment 8
 


EASI Developer Suite Top

EASI Developer Suite (EDS) includes the Generator Configuration Kit used to modify each of the generators for rapid customization of the structure and content of an auto-generated view. This enables the generators to be customized to support proprietary verification and test flows and improves control over the usability and and integration of EASI Tools and Generators within your flows. For example, the design rule checks provided with EASI Verification can be tailored and extended to enforce internal constraints and policies.