Esperan Logo
Esperan is internationally recognised as a high quality provider of training in VHDL, SystemVerilog, SystemC, PSL, SVA, OVM, TLM and for courses covering design, verification, and PCB methodologies.
Esperan Schedule Menu
Esperan Course Menu
Esperan Contact Menus
Esperan UK contact information Phone +44 1344 865436
Fax +44 1344 865347
Email:
info@esperan.com

Contacts for other regions
SystemVerilog for Design and Verification

Duration | Requirements | Agenda | Download Course PDF

Scheduled Classes...
France Paris 20-Sep-2010 5 days Register Interest
France Paris 22-Nov-2010 5 days Register Interest
Germany Munich 27-Sep-2010 5 days Register Interest
Germany Munich 22-Nov-2010 5 days Register Interest
Sweden Kista 25-Oct-2010 5 days Register Interest
UK Bracknell 01-Nov-2010 5 days Register Interest

Contact Esperan for more information or to request an on-site class.


Testimonials

"A real eye-opener for this old-school Verilog designer"

"... gave a realistic appraisal of what's useful & what isn't"

 


Introduction

What is SystemVerilog?
SystemVerilog is a major extension to Verilog2001, adding significant new features to Verilog for verification, design and synthesis. Enhancements range from simple new language constructs to the addition of Object-Oriented design features. There are also considerable improvements in the usability of Verilog for RTL design.


Overview

Esperan’s SystemVerilog course gives you an in-depth introduction to the main enhancements that SystemVerilog offers, discussing the benefits and issues with the new features and demonstrating how design and verification is more efficient and effective when using SystemVerilog constructs. The course breaks down into two modules. The Design module examines improvements for RTL design and synthesis; and the Verification module explores verification enhancements such as object-oriented design, assertions and randomization.


Objectives

  • To explore the new features of SystemVerilog for design and verification and demonstrate the improvements in design efficiency from their use.
  • To examine the full range of SystemVerilog improvements for RTL design, including new data types and statements; changes to Verilog language rules; fixes for case synthesis issues and powerful new connectivity features.
  • To explain key features for verification, such as classes, randomization and assertions, and illustrate how to exploit these features for more efficient verification and testbench design.


Duration

5 days, consisting of a 2 day Design module and a 3 day Verification module. . We can also offer standard or customized versions of this course onsite or at the location of your choice.


Requirements

Delegates must be familiar with Verilog and ideally, but not essentially, Verilog2001. No prior knowledge of SystemVerilog is required.


Description

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.


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

 

Verification Module (3 days)

 

Lab exercises