Esperan - the EDA Training Company
       
Course Menu
   
   
 
 
 
 
 
 
 

SystemVerilog for Design and Verification : Technical Details

Overview & booking Download Details (PDF)

Course Structure
The workshop is based around a 5-day agenda, consisting of a 2 day Design module and a 3 day Verification module. These modules can be taken individually or we can also offer standard or customized versions of this workshop onsite or at the location of your choice.

Course Summary

SystemVerilog Design Module
Describing the considerable enhancements for RTL design. Topics include new data types, constructs and operators; ease-of-use improvements for procedures and subprograms; solutions for existing synthesis issues; new user-defined data types and structures; and major reforms for hierarchical connectivity such as automatic port connections, packages and interfaces.

SystemVerilog Verification Module
Exploring the major new features in SystemVerilog for writing testbenches and verifying designs. Topics include clocking and program code blocks for testbench functionality and timing; Object-Oriented design features; functional coverage; generation of random stimuli; verification data structures; assertions and integrating C code into SystemVerilog testbenches.
This module also examines how these new features enable powerful verification techniques such as Transaction Level Modelling (TLM); Assertion-Based Verification (ABV); functional coverage and randomization of test data.

Workshop Agenda

Design Module (2 days)
  • SystemVerilog Overview
  • Standard datatypes and literals
    • New datatypes
    • Relaxation of datatype rules
    • Time and timing specification
  • Procedures and Statements
    • Loop enhancements
    • Case and if changes
    • Specialized synthesis procedures
  • Operators
  • User-Defined Types
    • Type definition and casting
    • Enumerated types
    • Structures
    • Packed and unpacked data
  • Hierarchy and Connectivity
    • Implicit port connections
    • Packages and package issues
    • Compilation unit scope
  • Tasks and Functions
    • Arguments
    • Void functions
    • Return statements
    • Reference parameters
    • Operator overloading
  • Interfaces
    • Ports and Parameters
    • Modports
    • Interface methods
  • Conclusions and Next Steps

Lab exercises

Design of a simple CPU using SystemVerilog RTL constructs.

Verification Module (3 days)

  • Verification Overview
  • Transaction Level Modelling (TLM)
    • Transactor interfaces
  • Verification Blocks
    • Event scheduler
    • Program and clocking blocks
  • Object-Oriented design
    • Class instances
    • Properties and methods
    • Class constructors
    • Static properties and methods
    • Inheritance
    • Data hiding and encapsulation
    • Virtual classes and methods
    • Polymorphism
  • Covergroups
    • Covergroups and coverpoints
    • Automatic coverage bins
    • Vector and scalar explicit bins
    • Cross coverage
  • Randomization
    • Randomization overview
    • Unsigned random numbers
    • Variable scope randomization
    • Constraints
    • randcase and randsequence
  • Class-Based Randomization
    • Property randomization
    • Constraint blocks
    • Inherited constraints
    • Distribution and weights
  • Arrays and Queues
    • Packed/unpacked array review
    • Manipulating large arrays
    • Dynamic arrays
    • Associative arrays
    • Queues
  • Assertion Based Verification (ABV)
    • What is ABV?
    • Benefits and issues
  • Introduction to SystemVerilog Assertions (SVA)
    • Concurrent assertion structure
    • Creating a simple property
    • Implication
    • Sequences and analysis
    • Cycle and sequence repetition
  • Direct Programming Interface (DPI)
    • DPI versus PLI
    • Data compatibility
    • Import and Export
    • Pure and context definitions
  • Synchronisation and Process Control
    • Event enhancements
    • Mailboxes and Semaphores
  • Conclusions and Next Steps
Lab exercises

Verification of a simple CPU using SystemVerilog verification constructs. Using SystemVerilog features to explore Transaction Level Modelling (TLM); randomization; functional coverage and Assertion Based Verification (ABV) techniques.

  • Indices
  • Verilog2001 review

Overview & booking

News
 
 
Technical Assets
 
 
 
 
   
Course Schedule
 
 
curve For over 10 years..
  Esperan has been providing VHDL training and Verilog training in UK, US, Canada, Western Europe, South Africa and throughout the world.
 
Esperan contact information US contact information
Phone +44 1344 865436 Fax +44 1344 865347
Email info@esperan.com
Tollfree Tel. 1800 220 8148 Fax. 1888 641 6431
Email US-sales@esperan.com