Esperan - the EDA Training Company
       
Course Menu
   
   
 
 
 
 
 
 
 

Verilog for VHDL Engineers - Technical Overview

Overview & Booking Download Details (PDF)

Course Summary
Verilog and VHDL are close enough to be familiar, but can be frustratingly different in the detail. This course will explain the key language differences. For example, in Verilog:

  • Both signal and variable assignment can be made to the same object in the same process
  • Different objects are needed for the targets of concurrent and sequential assignments.
  • There can be more than one case statement branch for each value in the case statement expression.
  • There are only 4 logic values, but close to 200 language keywords, system tasks and compiler directives.
This course covers:-

Language Basics
Language concepts and constructs, including use of register versus wire types; blocking and nonblocking assignment and case statement issues.
Synthesis Coding Styles
Verilog templates for inferring combinational and registered logic, and a thorough explanation of the rules for writing high quality, reusable RTL.
Advanced Constructs and Verification Issues
Use of subprograms, compiler directives and system tasks and functions. Language techniques for testbench design are also covered.

Workshop Agenda

  • Verilog language introduction
    • Modules; creating hierarchy; procedures; compilation; comments; identifier rules
  • Data-types and Logic System
    • Logic value system; data types; vectors; literals; net and register types; parameters; arrays
  • Verilog Operators
    • Introduction to Verilog operators.
  • Procedural and Continuous Statements
    • Inital and always; procedural assignment; event control; if and case(x|z); loops; continuous assignments; multiple continuous and procedural assignments
  • Procedural Statements and the Simulation Cycle
    • Blocking and non-blocking assignment; simulation cycle summary; event, wait and delay based timing control; timescale directive; simulation race conditions.
  • Blocking and Non-Blocking Statements
    • Issues and guidelines for use of blocking/non-blocking in registered and combinational logic
  • Verilog Sample Design
    • Creating and verifying an RTL design.
  • RTL Rules and Guidelines
    • Rules for describing combinational and registered logic in Verilog; Blocking assignment in clocked procedures
  • Synthesis Coding Styles
    • State machine description; if and case synthesis; parallel and full case; synthesis directives; initial blocks; unsupported constructs; register and latch inference issues; tri-state inference
  • Tasks and Functions
    • Function declaration and call; task declaration and call; task issues;
  • System Control
    • Compiler directives; system tasks and functions
  • Using a Verilog Test Bench
    • Simple stimulus; fork and join; events; vector capture and playback; clock generation
Workshop Labs
The labs have been designed to follow on from each other over the course of the workshop, building on code developed in each lab to create an overall design project.

The lab sessions include

  • Familiarization with simulation and synthesis tools
  • Describing and verifying combinatorial logic
  • Creating registered logic
  • Using vector arithmetic packages
  • Structural design and hierarchy
  • Verification using visualization of results
  • State machine design
  • Verification using script driven, self-checking testbenches
  • Integration and verification of a third-party IP model
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