Intelligent Coverage Driven, modern verification for VHDL based designs in native VHDL with OSVVM

Similar documents
VHDL's OSVVM, The Death of SystemVerilog?

OSVVM: Advanced Verification for VHDL

Making the Most of your MATLAB Models to Improve Verification

Course Profile Assertions in UVM

OSVVM and Error Reporting. Jim Lewis SynthWorks VHDL Training. SynthWorks

Integrated Workflow to Implement Embedded Software and FPGA Designs on the Xilinx Zynq Platform Puneet Kumar Senior Team Lead - SPC

INDUSTRIAL TRAINING: 6 MONTHS PROGRAM TEVATRON TECHNOLOGIES PVT LTD

ADVANCED DIGITAL IC DESIGN. Digital Verification Basic Concepts

Mixed Signal Verification Transistor to SoC

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

VERIFICATION OF RISC-V PROCESSOR USING UVM TESTBENCH

Post processing techniques to accelerate assertion development Ajay Sharma

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

IOT is IOMSLPT for Verification Engineers

Incisive Enterprise Verifier

Mentor Graphics Solutions Enable Fast, Efficient Designs for Altera s FPGAs. Fall 2004

LEVERAGING A NEW PORTABLE STIMULUS APPROACH Graph or rule based stimulus descriptions

JL Gray July 30, 2008

Compatible Qualification Metrics for Formal Property Checking

FPGA Verification How to improve verification without throwing everything away

DVCon India 2016 Abstract submission template. Taking UVM to wider user base the open-source way Name: Nagasundaram Thillaivasagam

Will Everything Start To Look Like An SoC?

Universal Verification Methodology(UVM)

VCS AMS. Mixed-Signal Verification Solution. Overview. testing with transistor-level accuracy. Introduction. Performance. Multicore Technology

FP&A Simulation. A Complete Step-by-Step Guide. Ray Salemi

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

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

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

Qualification of Verification Environments Using Formal Techniques

ECE 587 Hardware/Software Co-Design Lecture 11 Verification I

Hardware Design and Simulation for Verification

Software Driven Verification at SoC Level. Perspec System Verifier Overview

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

Product Overview. Programmable Network Cards Network Appliances FPGA IP Cores

DESIGN AND VERIFICATION ANALYSIS OF APB3 PROTOCOL WITH COVERAGE

Course Profile SystemVerilog Design

PG DIPLOMA COURSE IN VERIFICATION USING SYSTEMVERILOG & UVM NEOSCHIP TECHNOLOGIES

Hardware Design Verification: Simulation and Formal Method-Based Approaches William K Lam Prentice Hall Modern Semiconductor Design Series

UVM-based RISC-V processor verification platform. Tao Liu, Richard Ho, Udi Jonnalagadda

Top Five Reasons Why Every DV Engineer Will Love the Latest SystemVerilog 2012 Features by Ajeetha Kumari, Srinivasan Venkataramanan, CVC Pvt. Ltd.

Sunburst Design - Advanced SystemVerilog for Design & Verification by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc.

Sunburst Design - Comprehensive SystemVerilog Design & Synthesis by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc.

Will Everything Start To Look Like An SoC?

FPGA chip verification using UVM

UVM-SystemC Standardization Status and Latest Developments

SVA in a UVM Class-based Environment by Ben Cohen, author, consultant, and trainer

CS/ECE 5780/6780: Embedded System Design

Cycle Based Simulation. Design Techniques

Comprehensive AMS Verification using Octave, Real Number Modelling and UVM

Assertions Instead of FSMs/logic for Scoreboarding and Verification by Ben Cohen, Accellera Systems Initiative, VhdlCohen Publishing

World Class Verilog & SystemVerilog Training

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

Formal Contribution towards Coverage Closure. Deepak Pant May 2013

Administrivia. ECE/CS 5780/6780: Embedded System Design. Acknowledgements. What is verification?

Graph-Based Verification in a UVM Environment

CREATIVE ASSERTION AND CONSTRAINT METHODS FOR FORMAL DESIGN VERIFICATION

Universal Verification Methodology (UVM) Module 5

ASIC world. Start Specification Design Verification Layout Validation Finish

Assertion Based Verification of AMBA-AHB Using System Verilog

Design and Verification of FPGA Applications

Modular SystemVerilog

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

Three Steps to Unified SoC Design and Verification by Shabtay Matalon and Mark Peryer, Mentor Graphics

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

Complex Signal Processing Verification under DO-254 Constraints by François Cerisier, AEDVICES Consulting

Revolutioni W zi h Wn e hgn e n F a Mi i s liu lsir u e ro e Cri I ti s Ic N al o t V A e n ri n O fi p c ti a o ti n oo

Implementing MATLAB Algorithms in FPGAs and ASICs By Alexander Schreiber Senior Application Engineer MathWorks

Portable Stimulus Driven SystemVerilog/UVM verification environment for the verification of a high-capacity Ethernet communication endpoint

Design and Verification of FPGA and ASIC Applications Graham Reith MathWorks

The Application of Formal Technology on Fixed-Point Arithmetic SystemC Designs

Leveraging Formal Verification Throughout the Entire Design Cycle

Advanced Digital Verification Nathan Nipper. Cadence NCSim Demonstration John Martiney. Harris Corporation, 10/16/2007. assuredcommunications

Equivalence Validation of Analog Behavioral Models

AXI4-Stream Verification IP v1.0

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

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

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

Tough Bugs Vs Smart Tools - L2/L3 Cache Verification using System Verilog, UVM and Verdi Transaction Debugging

Code Coverage. Design Verification Techniques

RTL Coding General Concepts

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

Simplified UVM for FPGA Reliability UVM for Sufficient Elemental Analysis in DO-254 Flows by Shashi Bhutada, Mentor Graphics

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

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

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

Ensuring System Integrity through Advanced System Software Verification

Connecting MATLAB & Simulink with your SystemVerilog Workflow for Functional Verification

Advanced Verification Topics. Bishnupriya Bhattacharya John Decker Gary Hall Nick Heaton Yaron Kashai Neyaz Khan Zeev Kirshenbaum Efrat Shneydor

Accelerating FPGA/ASIC Design and Verification

A Deterministic Flow Combining Virtual Platforms, Emulation, and Hardware Prototypes

Reuse MATLAB Functions and Simulink Models in UVM Environments with Automatic SystemVerilog DPI Component Generation

EE 4755 Digital Design Using Hardware Description Languages

By Matthew Noonan, Project Manager, Resource Group s Embedded Systems & Solutions

Tackling Verification Challenges with Interconnect Validation Tool

Staffan Berg. European Applications Engineer Digital Functional Verification. September 2017

Formal Verification Adoption. Mike Bartley TVS, Founder and CEO

Is SystemVerilog Useful for FPGA Design & Verification?

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

SystemC Standardization Update Including UVM for SystemC Introduction to the Universal Verification Methodology in SystemC

DDR SDRAM Bus Monitoring using Mentor Verification IP by Nikhil Jain, Mentor Graphics

Transcription:

Intelligent Coverage Driven, modern verification for VHDL based designs in native VHDL with OSVVM Vijay Mukund Srivastav 1,Anupam Maurya 2, Prabhat Kumar 3, Juhi 4, VerifLabs 1,2, VerifWorks 3, Vecima Networks 4, Accellera Systems Initiative 1

Agenda VHDL usage in the industry Modern DV challenges Functional Coverage Constrained Random generation Assertion Based Verification Looking ahead: UVM-VHDL? Accellera Systems Initiative 2

VHDL usage in the industry VHDL is preferred HDL for: FPGA Some ASICs Defence labs Aerospace etc. Modern FPGAs are multimillion gate equivalent So verifying them in simulation is critical Accellera Systems Initiative 3

Recent FPGA survey Source: Accellera Systems Initiative 4

Modern design-verification DV (Design-Verification) as a field has grown by leaps and bounds Directed Testing Constrained Radom Verification (CRV) Waveform check Assertion Based Verification (ABV) Manual test list Coverage Driven Verification (CDV) Common technologies applicable to all HDL based designs SystemVerilog/UVM popular for Verilog/SV RTL VHDL Equally capable language as SystemVerilog UVM OSVVM is an option for VHDL designs Accellera Systems Initiative 5

What is OSVVM? Open Source VHDL Verification Methodology. Implemented in VHDL-2008 or VHDL-2002 Works with regular VHDL simulators. Packages are FREE. Packages + Methodology for: Functional Coverage (FC) Constrained Random (CR) Intelligent Coverage - Test generation using FC holes Mixes well with other approaches (directed, algorithmic, file, random) Works in any VHDL test bench. Readable by All (in particular RTL engineers). Accellera Systems Initiative 6

OSVVM in a nut-shell AlertLogPkg Messaging utilities (a la UVM Log) CoveragePkg API for Functional Coverage definitions RandomPkg Constrained Random generation VerifWorks is adding a UVM-layer on top of OSVVM uvm_info* is now available! Will be donated if there is enough industry interest Assertions in native VHDL (erstwhile PSL) and/or SVA Accellera Systems Initiative 7

AXI4-Lite Memory controller AXI4-Lite protocol RTL in VHDL VIP implemented using OSVVM VerifWorks s AXI4-Lite Assertion-IP is pluggedin PSL version Native in VHDL 2008 TOP Memory Controller TB mem_if Memory DUT Accellera Systems Initiative 8

What is Functional Coverage? A process in which user specifies the goal explicitly what to look for OSVVM provides a package with APIs to capture the goal User has to identify what to cover and also code them using the new APIs Coverage Model A tool then monitors the simulation run, annotates the coverage model on-the-fly Accellera Systems Initiative 9

FCOV Process Identify the coverage plan (based on DUT Spec, test plan) For each plan-item, identify when to cover what to cover Code the coverage model using OSVVM API Refine cov model Run simulation, collect coverage Analyze the coverage results Add more tests Accellera Systems Initiative 10

OSVVM Coverage Package API Accellera Systems Initiative 11

AXI4-Lite Memory Controller FCOV model Accellera Systems Initiative 12

Cross coverage Accellera Systems Initiative 13

Random vs. Directed testing Directed tests exercise a specific scenario You direct the test You explicitly orchestrate the interactions What if you miss something? Injecting randomness exposes corner cases Multiple adoption strategies Specify variables to be randomized Tool generates random values CVC Copyright 2010 www.cvcblr.com 14

Constraint Random generation Pure random is hardly useful takes too long to do something useful Need constraints to create interesting scenarios Procedural constraints are flexible and powerful Simple flow Most engineers understand procedural programming Easy to debug Native in VHDL language Use OSVVM.RandomPkg.all; CVC Copyright 2010 www.cvcblr.com 15

Using set membership in constraints Restrict the values inside a defined set Applications: CSR Configuration & Status Registers values, modes etc. Test modes instructions etc. v_pkt_len := rng_v.randunsigned ( (64, 128, 256, 1023) ); -- Randomly select a value within a set of values impure function RandUnsigned (A : integer_vector ; Size : natural) return Unsigned; CVC Copyright 2015 www.cvcblr.com

Constrained Random Gen OSVVM style Source: OSVVM User Guide Accellera Systems Initiative 17

Ω - very large sample set. CRV-CDV dilemma π - probability distribution over Ω. Goal: Sample points x Ω at random from distribution π. Accellera Systems Initiative 18

Intelligent Coverage driven Random Generation Use FCOV model as a guide to random generation Works well for input, stimulus coverage space Randomly select holes in Functional Coverage Model Cov.RandCovPoint - API Accellera Systems Initiative 19

Intelligent CDV Use FCOV model as a guide to random generation Randomly select holes in Functional Coverage Model Achieves in n iterations Accellera Systems Initiative 20

Assertion Based Verification in VHDL Temporal assertions capability from IEEE 1850-PSL VHDL 2008 All the modern verification technologies are now available to VHDL users natively No additional cost (of a mixed language simulator for instance). Accellera Systems Initiative 21

UVM-VHDL via OSVVM? UVM layer on top of OSVVM packages? OSVVM provides good packages - like SV s Constrained Random features Coverage model etc. PSL provides ABV features in VHDL (a la SVA) UVM is popular in SV world, can we add UVM-VHDL? Accellera Systems Initiative 22

UVM-VHDL layer around OSVVM VerifWorks has developed basic UVM package Covers messaging Run time verbosity control (a la +uvm_verbosity) OSVVM ALWAYS PASSED FINAL INFO UVM UVM_NONE UVM_LOW UVM_MEDIUM UVM_HIGH DEBUG UVM_FULL Accellera Systems Initiative 23

Questions? Accellera Systems Initiative 24