嵌入式培训
上海:021-51875830 北京:010-51292078
西安:029-86699670 南京:4008699035
成都:4008699035 武汉:027-50767718
广州:4008699035 深圳:4008699035
沈阳:024-31298103 石家庄:4008699035☆
全国统一报名免费电话:4008699035


课程表 联系我 在线聊 报名 付款 我们 QQ聊
嵌入式OS--4G手机操作系统
嵌入式硬件设计
Altium Designer Layout高速硬件设计
开发语言/数据库/软硬件测试
芯片设计/大规模集成电路VLSI
其他类
WEB在线客服
南京WEB在线客服
武汉WEB在线客服
西安WEB在线客服
广州WEB在线客服
点击这里给我发消息  
QQ客服一
点击这里给我发消息  
QQ客服二
点击这里给我发消息
QQ客服三
公益培训通知与资料下载
企业招聘与人才推荐(免费)

合作企业新人才需求公告

◆招人、应聘、人才合作,
请把需求发到officeoffice@126.com或
访问曙海旗下网站---
电子人才网
www.morning-sea.com.cn
合作伙伴与授权机构
现代化的多媒体教室
曙海招聘启示
曙海动态
邮件列表
 
 
  Synopsys SystemVerilog验证培训
   班级规模及环境--热线:4008699035 手机:15921673576/13918613812( 微信同号)
       坚持小班授课,为保证培训效果,增加互动环节,每期人数限3到5人。
   上课时间和地点
上课地点:【上海】:同济大学(沪西)/新城金郡商务楼(11号线白银路站) 【深圳分部】:电影大厦(地铁一号线大剧院站)/深圳大学成教院 【北京分部】:北京中山/福鑫大楼 【南京分部】:金港大厦(和燕路) 【武汉分部】:佳源大厦(高新二路) 【成都分部】:领馆区1号(中和大道) 【沈阳分部】:沈阳理工大学/六宅臻品 【郑州分部】:郑州大学/锦华大厦 【石家庄分部】:河北科技大学/瑞景大厦 【广州分部】:广粮大厦 【西安分部】:协同大厦
近开课时间(周末班/连续班/晚班)
Synopsys SystemVerilog验证培训:2024年11月18日......(欢迎您垂询,视教育质量为生命!)
   实验设备
     ☆资深工程师授课

         ☆注重质量 ☆边讲边练

        ☆合格学员免费推荐工作
        ★实验设备请点击这儿查看★
   新优惠
       ◆在读学生凭学生证,可优惠500元。
   质量保障

        1、培训过程中,如有部分内容理解不透或消化不好,可免费在以后培训班中重听;
        2、课程完成后,授课老师留给学员手机和Email,保障培训效果,免费提供半年的技术支持。
        3、培训合格学员可享受免费推荐就业机会。

  Synopsys SystemVerilog验证培训
培训方式以讲课和实验穿插进行

课程描述:

第一阶段 SystemVerilog Assertions培训

COURSE OUTLINE
* Introduction to assertions
* SVA checker library
* Use Model and debug flow using DVE
* Basic SVA constructs
* Temporal behavior, Data Consistency
* Coverage, Coding Guidelines

第二阶段 SystemVerilog Testbench

Overview

In this intensive, three-day course, you will learn the key features and benefits of the SystemVerilog testbench language and its use in VCS.

This course is a hands-on workshop that reinforces the verification concepts taught in lecture through a series of labs. At the end of this class, students should have the skills required to write an object-oriented SystemVerilog testbench to verify a device under test with coverage-driven constrained-random stimulus using VCS.

Students will first learn how to develop an interface between the SystemVerilog test program and the Device Under Test (DUT). Next the workshop will explain how the intuitive object-oriented technology in SystemVerilog testbench can simplify verification problems. Randomization of data is covered to show how different scenarios for testing may be created. This course concludes with an in-depth discussion of functional coverage including a uniform, measurable definition of functionality and the SystemVerilog constructs that allow you to assess the percentage of functionality covered, both dynamically and through the use of generated reports.

To reinforce the lecture and accelerate mastery of the material, each student will complete a challenging test suite for real-world, system-based design.

Objectives
At the end of this workshop the student should be able to:
  • Build a SystemVerilog verification environment
  • Define testbench components using object-oriented programing.
  • Develop a stimulus generator to create constrained random test stimulus
  • Develop device driver routines to drive DUT input with stimulus from generator
  • Develop device monitor routines to sample DUT output
  • Develop self-check routines to verify correctness of DUT output
  • Abstract DUT stimulus as data objects
  • Execute device drivers, monitors and self-checking routines concurrently
  • Communicate among concurrent routines using events, semaphores and mailboxes
  • Develop functional coverage to measure completeness of test
  • Use SystemVerilog Packages

Course Outline

Uunit 1
  • The Device Under Test
  • SystemVerilog Verification Environment
  • SystemVerilog Testbench Language Basics
  • Driving and Sampling DUT Signals
Uunit 2
  • Managing Concurrency in SystemVerilog
  • Object Oriented Programming: Encapsulation
  • Object Oriented Programming: Randomization
Uunit 3
  • Object Oriented Programming: Inheritance
  • Inter-Thread Communications
  • Functional Coverage
  • SystemVerilog UVM preview



第三阶段 Synopsys SystemVerilog VMM培训

SystemVerilog Verification Using VMM Methodology

OVERVIEW

In this hands-on workshop, you will learn how to develop a VMM SystemVerilog test environment structure which can implement a number of different test cases with minimal modification. Within this VMM environment structure, you will develop stimulus factories, check and coverage callbacks, message loggers, transactor managers, and data flow managers. Once the VMM environment has been created, you will learn how to easily add extensions for more test cases.
After completing the course, you should have developed the skills to write a coverage-driven random stimulus based VMM testbench that is robust, re-useable and scaleable.

OBJECTIVES

At the end of the course you should be able to:

Develop an VMM environment class in SystemVerilog
Implement and manage message loggers for printing to terminal or file
Build a random stimulus generation factory
Build and manage stimulus transaction channels
Build and manage stimulus transactors
Implement checkers using VMM callback methods
Implement functional coverage using VMM callback methods

COURSE OUTLINE

Unit 1
SystemVerilog class inheritance review
VMM Environment
Message Service
Data model

Unit 2
Stimulus Generator/Factory
Check & Coverage
Transactor Implementation
Data Flow Control
Scenario Generator
Recommendations

第四阶段 SystemVerilog Verification using UVM

Overview
In this hands-on workshop, you will learn how to develop a UVM 1.1 SystemVerilog testbench environment which enables efficient testcase development. Within this UVM 1.1 environment, you will develop stimulus sequencer, driver, monitor, scoreboard and functional coverage. Once the UVM 1.1 environment has been created, you will learn how to easily manage and modify the environment for individual testcases.

Objectives
At the end of this workshop the student should be able to:
  • Develop UVM 1.1 tests
  • Implement and manage report messages for printing to terminal or file
  • Create random stimulus and sequences
  • Build and manage stimulus sequencers, drivers and monitors
  • Create configurable agents containing sequencer, driver and monitor for re-use
  • Create and manage configurable environments including agents, scoreboards, TLM ports and functional coverage objects
  • Implement a collection of testcases each targeting a corner case of interest
  • Create an abstraction of DUT registers and manage these registers during test, including functional coverage and self-test

Audience Profile
Design or Verification engineers who develop SystemVerilog testbenches using UVM 1.1 base classes.

Prerequisites
To benefit the most from the material presented in this workshop, students should have completed the SystemVerilog Testbench workshop.

Course Outline
Unit 1
  • SystemVerilog OOP Inheritance Review
    • Polymophism
    • Singleton Class
    • Singleton Object
    • Proxy Class
    • Factory Class
  • UVM Overview
    • Key Concepts in UVM: Agent, Environment and Tests
    • Implement UVM Testbenches for Re-Use across Projects
    • Code, Compile and Run UVM Tests
    • Inner Workings of UVM Simulation including Phasing
    • Implement and Manage User Report Messages
  • Modeling Stimulus (Transactions)
    • Transaction Property Implementation Guidelines
    • Transaction Constraint Guidelines
    • Transaction Method Automation Macros
    • User Transactiom Method Customization
    • Implement Tests to Control Transaction Constraints
  • Creating Stimulus Sequences
    • Sequence Execution Protocol
    • Using UVM Macros to create and manage Stimulus
    • Implementing User Sequences
    • Implicitly Execute Sequences Through Configuration in Environment
    • Explicitly Execute Sequences in Test
    • Control Sequences through Configuration
Unit 2
  • Component Configuration and Factory
    • Establish and Query Component Parent-Child Relationships
    • Set Up Component Virtual SystemVerilog Interfaces with uvm_config_db
    • Constructing Components and Transactions with UVM Factory
    • Implement Tests to Configure Components
    • Implement Tests to Override Components with Modified Behavior
  • TLM Communications
    • TLM Push, Pull and Fifo Modes
    • TLM Analysis Ports
    • TLM Pass-Through Ports
    • TLM 2.0 Blocking and Non-Blocking Transport Sockets
    • DVE Waveform Debugging with Recorded UVM Transactions
  • Scoreboard & Coverage
    • Implement scoreboard with UVM In-Order Class Comparator
    • Implement scoreboard UVM Algorithmic Comparator
    • Implement Out-Of-Order Scoreboard
    • Implement Configuration/Stimulus/Correctness Coverage
  • UVM Callback
    • Create User Callback Hooks in Component Methods
    • Implement Error Injection with User Defined Callbacks
    • Implement Component Functional Coverage with User Defined Callbacks
    • Review Default Callbacks in UVM Base Class
Unit 3
  • Virtual Sequence/Sequencer
    • Disable Selected Sequencer in Agents through the Sequencer抯 揹efault? Configuration Field
    • Implement Virtual Sequence and Sequencer to Manager Sequence Execution within Different Agents
    • Implement uvm_event for Synchronization of Execution among Sequences in the Virtual Sequence
    • Implement Grab and Ungrab in Sequences for exclusive access to Sequencer
  • More on Phasing
    • Managing Objections within Component Phases
    • Implement Component Phase Drain Time
    • Implement Component Phase Domain Synchronization
    • Implement User Defined Domain and Phases
    • Implement UVM Phase Jumping
  • Register Layer Abstraction (RAL)
    • DUT Register Configuration Testbench Architecture
    • Develop DUT Register Abstration (.ralf) File
    • Use ralgen Utility to Create UVM Register Model Class Files
    • Create UVM Register Adapter Class
    • Develop and Execute Sequences Using UVM Register Models
    • Use UVM Built-In Register Tests to Verify DUT Register Operation
    • Enable RAL Functional Coverage
  • Summary
    • Review UVM Methodology
    • Review Run-Time Command Line Debug Switche