banner1

Course Overview:

This course is designed and is delivered by practicing experts in Verification, as per the industry requirements. Importance is given to cover the concepts, methodology and good emphasis on hands-on training, with at least 60% of the time allocated to the guided lab sessions and a project to be done by the participants.

Training Delivery Model:

  • Weekends (Sundays): Instructor-Led classroom training
  • Labs follow each Lecture session on that module
  • Weekdays: Lab support through Email and WhatsApp
  • Flexible learning with 24/7 Lab Access from home through VPN

Training Materials:

  • Hand-outs of training materials will be provided.
  • Reference Materials will be shared.

Who Can Attend This Course:

  • B.Tech or M.Tech Freshers/Students/Interns looking to start a career in VLSI.
  • Working Professionals from VLSI industry, currently working in some area (RTL Design, FPGA Design, Synthesis, STA, Board Level Testing, etc.), but want to switch to VLSI Verification.
  • Faculty working in Engineering colleges desiring to understand the industry flows and methodologies in Verification.
  • Currently working Electrical and electronics engineers desiring to make a career in VLSI verification.

Educational Qualifications

  • B.E / B.Tech in Electronics / Electrical / Instrumentation
  • M.Tech / M.S  in VLSI / Embedded Systems / Electronics / Similar

Pre-requisites:

Knowledge on below topics is Required.

  • Working knowledge of Linux.
  • Knowledge of Digital Electronics Fundamentals.
  • Knowledge of Verilog and the ability to design Circuits using Verilog.

Course Outline:

Part – 1 – Basic Verification:

Module 1: Introduction to Basic Verification Flow

ASIC flow, Verification flow, RTL Quality checking, and Verification planning.

Module 2: Testbench Architecture Basics

General Test bench Architecture and Verification plan creation

Module 3: Verification Matrices for Chip Sign-off

Verification coverage, System Verilog assertions, and Verification metrics.

Module 4: Complete Verification Environment

Project

PART 2 – Basic System Verilog

Module 5: Introduction to System Verilog

Overview of HDL and HVL, Need for SystemVerilog, SV capabilities and highlights, SV as one solution HDVL.

Module 6a: System Verilog Basics

Lexical Conventions, Data types, Aggregate Data types, Casting, SV operators and their precedence. Processes, Understanding the Procedural Statements and Control flow, process execution threads and Fine Grain process controls. Interfaces and Modports, Virtual interfaces, Clocking blocks

Module 6b: Design and verification building blocks

Module, program, interface, subroutines, packages, configurations, compilation and elaboration, Declaration Namespaces, Simulation time, time units and time precision

Module 7: SV Classes and Randomization and constraints

Classes, objects, handles and built-in methods for efficient TB development. Efficient memory management in SV. Different randomization techniques and constructs. Inline randomization, seeding, random methods, and random stability.

Module 8: Riding SV on Chariot of OOPs

Tasks and functions and their enhancements in System Verilog. Introduction to OOP concepts of data abstraction, data encapsulation, data hiding, inheritance, and polymorphism.

Module 9: Coverage-based Verification

Introduction to code and functional coverage. Functional coverage in SV. Cover groups, cover points, cover bins, and cross-coverage constructs. Different ways of sampling the coverage and measuring the verification closure.

PART-3 – Advanced System Verilog

Module 10: Specialised communication packing and bug isolation in SV

Interprocess Synchronization and communication – Semaphore, Mailboxes and Named Events, Scheduling semantics Event-based simulation scheduling semantics— System Verilog’s stratified event scheduling algorithm— Determinism and non-determinism of event ordering— Possible sources of race conditions— PLI callback control points

Module 11: Faster verification using System Verilog Assertions

Introduction to Assertions. Advantages of assertions. Immediate and Concurrent Assertions. Writing assertion Sequences, Different ways of writing Assertions and its constructs and calling methods.

Module 12: Application Programming Interfaces

Introduction to DPIs, DPI layers, importing and exporting mechanism from System Verilog to other languages. Usage and advantages of using DPIs and its Limitations.

Part-4 – UVM

Module 13: Verification Methodology, UVM Basics

Need for a Verification methodology, UVM as a template, Introduction and evolution of UVM. Basic concepts of UVM.

Module 14: UVM Components, Agents, Sequencer, Sequence. Macros, TLM

Understanding UVM Test Bench – Objects, Components – Drivers, Sequencers, Sequences, Sequence item, Monitors, transactions, Introduction to Macros, Configuration Database, Resource Database. Introduction to Transaction Level modeling, Concept of TLM in UVM. TLM communications and connections – Interfaces, Ports, Exports, Imps, Analysis Ports, Building a Test-bench for a real-time design with these UVM components.

Module 15: UVM Phasing, UVM Factory, and Advanced sequence control

Need for Phasing, Importance of phases and usage of Phases in a typical Test Bench environment, Common Phases, Run time phases, User-Defined Phases. Introduction to Factory, Importance of dynamic binding and factory usage. Registering, creating and configuring with Examples. Handling and triggering multiple sequences and sequence body methods efficiently. Virtual Sequences

Module 16: Register Modeling using UVM Register Layer

UVM Register Layer, Blocks, Address maps, Register Files, Registers, Fields, DUT Integration – Register Adapter, Register Sequences, Predictor Classes.

Module 17: Reporting, UVCs

Reporting in UVM, different verbosity and log controls. Introduction to UVC. Guidelines and rules. UVC environment, UVC layering, Real-time example of UVC.

Module 18: Complete UVC building

For a given Design, building a UVC – using best practices, developing fully configurable, reusable UVC and UVM Test Bench environment.

 

Tools to be used:

  • Synopsys VCS.
  • At least 3 hrs of labs/day throughout the course.
  • Additional Lab Hours through VPN, to enable you to spend more time on labs from home. This is on top of Trainer led lab sessions during Sundays.

Trainer:

The trainer is a working professional with hands-on VLSI Verification and training experience of 19+ years.

The trainer is passionate about teaching and has mentored many engineers, both freshers as well as experienced professionals to help them improve their skills, knowledge, and performance. Having led multiple complex projects, she is well abreast of the evolving requirements of the industry.

She is passionate about sharing her knowledge and experiences and at the same time is an excellent communicator who enjoys the challenges of teaching and mentoring the new generation.

Certifications:

  • Course learning will be assessed as per Bloom’s Taxonomy
  • Course completion certificate from ChipEdge

Course Reviews

N.A

ratings
  • 5 stars0
  • 4 stars0
  • 3 stars0
  • 2 stars0
  • 1 stars0

No Reviews found for this course.

Setup Menus in Admin Panel

X