UVM Advanced Course with Multiple Projects

You are here:

UVM Advanced Course with Multiple Projects

  • AHB Interconnect verification project used as reference design to learn UVM & OVM
  • AHB Interconnect will be verified from scratch while teaching all aspects of UVM
  • What is UVM? Need for a methodology?
  • How UVM evolved?
    • OVM, AVM, RVM, NVM, eRM
  • UVM class library
    • Classification of base classes in various categories
  • OOP basics
    • Encapsulation
    • Inheritance
    • Polymorphism
    • Parameterized classes
    • Parameterized macros
    • Static properties and static methods
    • Abstract classes
      • Pure virtual methods
    • How above aspect correlates with UVM implementation.
  • UVM Class Library, Macros, Utilities
    • Detailed overview of important UVM base classes, Macros and Utility classes.
  • UVM TB Architecture
    • Setting up a UVM based testbench for APB protocol from scratch.
    • Significance of uvm_root in UVM based testbenches.
      • run_test, how it starts whole TB flow.
  • Command line processor
  • Reporting classes
    • Uvm_report_object
    • Uvm_report_handler
    • Uvm_report_server
    • Detailed examples on use of methods in these classes.
  • Objections
  • UVM Factory
  • Configuration DB, Resource DB
    • Detailed usage of both data bases.
    • How config_db is related to resource_db?
    • Using config_db to change the testbench architecture.
  • TLM1.0
    • Push
    • Pull
    • FIFO
    • Analysis
    • Complex example on AHB to AXI transaction conversion.
  • Simulation Phases
    • UVM common phases
    • Scheduled phases
  • Sequences, Sequencers
    • Default sequence
    • p_sequencer
    • m_sequencer
  • Test case development
    • Different styles of mapping testcase to sequence
      • Using default sequence and scheduled phases
      • Using sequence start method
  • Configuring TB Environment
    • Advanced aspects of developing a highly configurable test bench environment.
    • Concept of knobs of test case scenario generation
    • Using top level parameters to control the overall TB architecture
  • AHB Protocol and AHB UVC development
    • Coding from scratch with detailed explanation of each aspect.
    • Setting up a highly configurable UVC to meet different TB requirements.
  • Different testbench component coding
    • Monitor
    • Coverage
    • Scoreboard
    • Checkers
    • Assertions
  • Different styles of sequence development
    • `uvm_do
    • Start_item and finish_item
    • Using existing sequences
  • Sequence library
    • Creating complex test cases using sequence library
  • Virtual Sequencer, Virtual sequences
  • Different types of sequences used in test benches
    • Reset sequence
    • Power up sequence
    • interrupt handling sequence
    • DMA handling sequence
    • FSM verification sequence
  • Layered sequence development
    • How to create multiple layers of sequences
    • Creating complex test cases using layered sequences
  • Virtual sequence library
    • Creating test cases using virtual sequence library
  • Synchronization classes
    • uvm_barrier
    • uvm_event
  • Container classes
  • Policy classes
    • uvm_printer
    • uvm_recorder
    • uvm_packer
    • uvm_comparer
  • Comparators
    • In order comparator
    • Algorithmic comparator
  • TLM2.0
    • Blocking transport
    • Non-blocking transport
  • Register Layer development for USB2.0 core
    • Note: Doesn’t involve USB2.0 core verification
  • Connecting multiple UVCs
    • How to setup a complex testbench environment with multiple UVC’s connected.
  • uvm_heartbeat
    • How to check test bench status using heartbeat
  • uvm_report_catcher
    • How to handle error testcases using report catcher
  • Phase jumping
    • uvm_domain
  •  
  • AHB Protocol
    • AHB System architecture
    • Features
    • Signals
    • Timing Diagrams
  • AHB UVC Architecture
  • AHB UVC Component Coding
  • AHB UVC Sequence & Test Development
  • AHB Interconnect Testbench Architecture
  • AHB UVC & APB UVC in Interconnect Testbench setup
  • Verification Component Coding
  • Testcase & virtual sequence Development & Debug
  • Listing down registers
  • Creating Register Model
  • Integrating Register Model in to Testbench
  • Using Register Model to create tests
  • Using Register Model in scoreboard
  • UVC Development for AXI Protocol
  • PCIe LTSSM FSM Verification
  • Register Model Development for SPI Core

UVM training is a 9 weeks course provides participants with in depth exposure to all the UVM constructs using practical use case examples. Course includes 15+ assignments covering all the constructs in depth.

Course also includes multiple hands on projects based on APB, AHB test bench development. Also includes TB development for AHB interconnect model. 

CourseUVM advanced with multiple projects – Deep dive
DurationLive training : 9 weeks
eLearning       : 65 hours
Next Batch 
Schedule 
Freshers6 days/week, 4 hours/day
Working professionalsSaturday & Sunday(9AM – 1PM IST)
Access to all course recorded videos for entire course duration
ToolQuestasim & VCS
Mode of trainingClassroom training & Live online training
Course can also be done in hybrid mode.
 eLearning with dedicated mentor for doubt clarifications.
FeeLive training : INR 18K + GST
eLearning : INR 15K + GST
Batch Size25
Assignments16
Course Highlights
  • 1-1 Dedicated Mentor Support
  •  24/7 Tool Access
  • Multiple mock interviews
  • Industry Standard Projects
  • Support with resume update