FPGA chip verification using UVM

Similar documents
Stacking UVCs Methodology. Revision 1.2

INDUSTRIAL TRAINING: 6 MONTHS PROGRAM TEVATRON TECHNOLOGIES PVT LTD

Responding to TAT Improvement Challenge through Testbench Configurability and Re-use

6 Month Certificate Program in VLSI Design & Verification" with Industry Level Projects. Tevatron Technologies Prívate Limited

Design and Verification of Slave Block in Ethernet Management Interface using UVM

A comprehensive approach to scalable framework for both vertical and horizontal reuse in UVM verification

Introduction to the Qsys System Integration Tool

An Introduction to Universal Verification Methodology

DEVELOPMENT AND VERIFICATION OF AHB2APB BRIDGE PROTOCOL USING UVM TECHNIQUE

An approach to accelerate UVM based verification environment

Portable Stimulus vs Formal vs UVM A Comparative Analysis of Verification Methodologies Throughout the Life of an IP Block

Universal Verification Methodology(UVM)

Designing with ALTERA SoC Hardware

Development of UVM based Reusabe Verification Environment for SHA-3 Cryptographic Core

Making it Easy to Deploy the UVM by Dr. Christoph Sühnel, frobas GmbH

Slaying the UVM Reuse Dragon Issues and Strategies for Achieving UVM Reuse

Test and Verification Solutions. ARM Based SOC Design and Verification

IMPLEMENTATION OF LOW POWER INTERFACE FOR VERIFICATION IP (VIP) OF AXI4 PROTOCOL

UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE

9. Building Memory Subsystems Using SOPC Builder

Module- or Class-Based URM? A Pragmatic Guide to Creating Verification Environments in SystemVerilog. Paradigm Works, Inc. Dr.

UVM-SystemC Standardization Status and Latest Developments

Formal Contribution towards Coverage Closure. Deepak Pant May 2013

Laboratory Exercise 5

Comprehensive AMS Verification using Octave, Real Number Modelling and UVM

Bring IP verification closer to SoC

Practical Experience in Automatic Functional Coverage Convergence and Reusable Collection Infrastructure in UVM

Shortest path to the lab. Real-world verification. Probes provide observability

8. Best Practices for Incremental Compilation Partitions and Floorplan Assignments

Transaction-Based Acceleration Strong Ammunition In Any Verification Arsenal

UVM for VHDL. Fast-track Verilog for VHDL Users. Cont.

Vertical Reuse of functional verification from subsystem to SoC level (with seamless SoC emulation)

Mastering Unexpected Situations Safely. Chassis & Safety Vehicle Dynamics

Verification of Digital Systems, Spring UVM Basics

SPECMAN-E TESTBENCH. Al. GROSU 1 M. CARP 2

Course Profile Assertions in UVM

2. Learn how to use Bus Functional Models (BFM) and write test cases for verifying your design.

Tackling Verification Challenges with Interconnect Validation Tool

User Experience with UVM

Applying Design Patterns to accelerate development of reusable, configurable and portable UVCs. Accellera Systems Initiative 1

Contents 1 Introduction 2 Functional Verification: Challenges and Solutions 3 SystemVerilog Paradigm 4 UVM (Universal Verification Methodology)

System-Level Verification Platform using SystemVerilog Layered Testbench & SystemC OOP

Customizable Flash Programmer User Guide

UVM hardware assisted acceleration with FPGA co-emulation

An Evaluation of the Advantages of Moving from a VHDL to a UVM Testbench by Shaela Rahman, Baker Hughes

OVM/UVM Update. Universal Verification Methodology. Open Verification Methodology. Tom Fitzpatrick Verification Technologist Mentor Graphics Corp.

Altera JTAG-to-Avalon-MM Tutorial

SD Card Controller IP Specification

Warren Anderson Ravi Ram AMD Vijay Akkaraju Synopsys

Best Practices for Incremental Compilation Partitions and Floorplan Assignments

OVM to UVM Migration, or There and Back Again: A Consultant s Tale. by Mark Litterick, Verification Consultant, Verilab GmbH

Verification Prowess with the UVM Harness

Generation of UVM compliant Test Benches for Automotive Systems using IP-XACT with UVM-SystemC and SystemC AMS

AXI4-Stream Verification IP v1.0

UVM-RAL: Registers on demand Elimination of the unnecessary

UVM BASED TEST BENCH TO VERIFY AMBA AXI4 SLAVE PROTOCOL

Integrate Ethernet QVIP in a Few Hours: an A-to-Z Guide by Prashant Dixit, Questa VIP Product Team, Mentor Graphics

UVM in System C based verification

9. PIO Core. Core Overview. Functional Description

NoC Generic Scoreboard VIP by François Cerisier and Mathieu Maisonneuve, Test and Verification Solutions

Designing with ALTERA SoC

Practical Hardware Debugging: Quick Notes On How to Simulate Altera s Nios II Multiprocessor Systems Using Mentor Graphics ModelSim

ESE Back End 2.0. D. Gajski, S. Abdi. (with contributions from H. Cho, D. Shin, A. Gerstlauer)

Fast Track to Productivity Using Questa Verification IP by David Aerne and Ankur Jain, Verification Technologists, Mentor Graphics

The Optimization of a Design Using VHDL Concepts

Chapter 5: ASICs Vs. PLDs

Partial Reconfiguration User Guide

NEW FPGA DESIGN AND VERIFICATION TECHNIQUES MICHAL HUSEJKO IT-PES-ES

THE DEVELOPMENT OF ADVANCED VERIFICATION ENVIRONMENTS USING SYSTEM VERILOG

Hardware Implementation and Verification by Model-Based Design Workflow - Communication Models to FPGA-based Radio

Hardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University

Laboratory Exercise 3

Design, Verification and Emulation of an Island-Based Network Flow Processor

Practical experience in automatic functional coverage convergence and reusable collection infrastructure in UVM verification

4. Configuring Cyclone II Devices

Next Generation Verification Process for Automotive and Mobile Designs with MIPI CSI-2 SM Interface

Logic Verification 13-1

Is SystemVerilog Useful for FPGA Design & Verification?

VHDL Essentials Simulation & Synthesis

AL8259 Core Application Note

AN 825: Partially Reconfiguring a Design on Intel Stratix 10 GX FPGA Development Board

Overview of Digital Design with Verilog HDL 1

VERIFICATION OF RISC-V PROCESSOR USING UVM TESTBENCH

Lab 1: Introduction to Verilog HDL and the Xilinx ISE

DO-254 Testing of High Speed FPGA Interfaces by Nir Weintroub, CEO, and Sani Jabsheh, Verisense

Next Generation Design and Verification Today UVM REG: Path Towards Coverage Automation in AMS Simulations

High Speed Multi-User ASIC/SoC Prototyping system

UART IP CORE VERIFICATION BY USING UVM

An Efficient Verification Framework for Audio/Video Interface Protocols

9. Verification and Board Bring-Up

System Debugging Tools Overview

AN 797: Partially Reconfiguring a Design on Intel Arria 10 GX FPGA Development Board

Graduate Institute of Electronics Engineering, NTU Advanced VLSI SOPC design flow

For a long time, programming languages such as FORTRAN, PASCAL, and C Were being used to describe computer programs that were

EE 231 Fall Lab 1: Introduction to Verilog HDL and Altera IDE

SystemVerilog Verification of Wishbone- Compliant Serial Peripheral Interface

MOJTABA MAHDAVI Mojtaba Mahdavi DSP Design Course, EIT Department, Lund University, Sweden

Verification of AHB Protocol using UVM

Optimizing Emulator Utilization by Russ Klein, Program Director, Mentor Graphics

University of Massachusetts Amherst Computer Systems Lab 2 (ECE 354) Spring Lab 1: Using Nios 2 processor for code execution on FPGA

Transcription:

FPGA chip verification using UVM Ravi Ram Principal Verification Engineer Altera Corp Charles Zhang Verification Architect Paradigm Works

Outline Overview - Verilog based verification environment - Why UVM? - New UVM based verification environment - FPGA chip verification flow Some of the challenges and solutions - Generic programmable logic - Legacy code integration. - Programmable core & IO connection - VIP integration(external and internal)

Verilog based Verification Env Traditional Verilog based verification environment Multiple test benches for multiple modes of operation - PP, PS, SPI, USERMODE, etc. Recompilation for each test No object oriented programming (reuse = copy and change) Maintainability and scalability are poor (large number of tests, etc.) Easier for designer to understand and modify

Why UVM? Supported and released by Accellera Supported by all major EDA vendors Object orient programming Reusability Well defined base class library Industry standard makes integration of third party or home grown VIP easier Good online documentation + UVM forums etc Little bit harder for designer to understand

UVM based Verification Env Overview Avalon UVC BFM1 BFM2 BFM3 Core logic VC vi vi UVM REG UVC vi SCOREBOARD1 IO Avalon slave VIP1 CONFIG DATABASE UVM VIP Configurator VIP2 P M A P C S IP IP VIP1 VIP2 VIP3 CORE P C S P M A UVM VIP Configurator Globa &PR Config UVC vi VIP3 PP_PS Config UVC vi Control Block VIP4 IO AS Config UVC vi Flash memory model Memory Controller SCOREBOARD2 Config Data Image Vermeer model/ other models vi Jtag UVC vi Clock UVC Memory VIP s

UVM-based verification Env overview Architected from scratch One environment supports multiple operating mode - PP, PS, SPI, USERMODE, etc. Significantly reduced number of tests by inheritance, configuration setting, etc - The current UVM based tests is about 1/3 of the tests of Verilog based ENV Simulation performance improved by compile once and run multiple tests Improved compile, run and regression flow - With UVM, cmd line processor is built-in and free

FPGA Verification Flow Configuration (Programming the FPGA). - Support multiple programming s - Data compression and encryption - Front door and back door loading configuration - Verification goal: make sure the programmed image matches the expected image User Mode (Running programmed user logic) - Tests include testing all core logic blocks and all the IO systems - Considerable effort is on creating configurable verification environment - Verification goal: verify all the core blocks and I/O systems to be functioning and connected properly

Generic programmable logic Programmable nature of FPGA calls for programmable verification environment Core logic UVC is a highly programmable verification component. Allows user to decide on which pins to drive using UVM configuration The monitor extended by user to implement any checking mechanism using UVM factory override. Test based on sequences and transactions without worry about pin connection and toggling. Compile once and run all tests. Used by the software group to verify real customer design.

Legacy code integration Still need Verilog based verification environment coexist with UVM verification environment Interface file used as bridge between UVM verification environment and verilog based verification environment Interfaces bound to its physical signals Virtual in UVC set by getting the instance from resource database Assertions implemented in binds to module or physical signals

Programmable core & IO connection FPGA core is programmable All hard IP is configurable Lots of different s and VIPs Register access from reg UVC to configure FPGA - Thousands of configurations in FPGA. UVM Reg model is already > 20G for handling 30 to 40% of the FPGA configurations. So this is not scalable and not practical to use Hundreds of configurable registers which UVM reg based testing cannot handle - Use home grown resource allocator plus configuration settings Register access from reg UVC to configure FPGA Seamless integration of resource allocator(internal tool) with internal developed tools for unidirectional and bidirectional connections

VIP integration Lots of VIPs to address hard IP in FPGA(1G/10G, PCIe plus other serial protocols, Altera Avalon VIP, different memory VIP for different memory protocols) Flexibility to configure and select VIPs in UVM test Use constraints to select the connections and VIPs Use on the fly point-to-point connections to connect VIP to the fabric - Turn off unused VIPs Same environment for integrating different vendor VIPs Environment setup for proliferation products for same FPGA family VIP easily portable to future FPGA families

Avalon VIP Integration Avalon Common module Avalon Common module Avalon UVC Avalon Master Avalon Slave Avalon BFM To External DUT Avalon BFM To External DUT Integrate Avalon BFM in UVM environment Use of the existing bfm with a wrapper on top to make it a UVC VIP developed internally in Altera and is made available for use by all groups The configuration object generated for each instance of the VIP with a unique hdl Path which has a reference of the. The user provides the parameters for the VIP and the hdl Path in his test-bench hierarchy Page 12

Summary Altera s first verification project adopting UVM Addressed critical challenges Programmable user logic and io Explosive configuration spaces, etc. Adopted pragmatic view of the methodology Re-architected the whole environment using UVM Reused and integrated both internal and external VIPs UVM provides ideal way to create configurable, reusable verification components and environment

Q & A Thank You! Contributor: Manish Mahajan