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

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

Verification of Digital Systems, Spring UVM Basics

FPGA chip verification using UVM

DEVELOPMENT AND VERIFICATION OF AHB2APB BRIDGE PROTOCOL USING UVM TECHNIQUE

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

Will Everything Start To Look Like An SoC?

Tackling Verification Challenges with Interconnect Validation Tool

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

UVM BASED TEST BENCH TO VERIFY AMBA AXI4 SLAVE PROTOCOL

Will Everything Start To Look Like An SoC?

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

An Introduction to Universal Verification Methodology

UVM usage for selective dynamic re-configuration of complex designs

Universal Verification Methodology(UVM)

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

Test and Verification Solutions. ARM Based SOC Design and Verification

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

Easy Steps Towards Virtual Prototyping using the SystemVerilog DPI

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

Modeling Usable & Reusable Transactors in SystemVerilog Janick Bergeron, Scientist

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

UVM-RAL: Registers on demand Elimination of the unnecessary

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

Mastering Unexpected Situations Safely. Chassis & Safety Vehicle Dynamics

Place Your Logo Here. K. Charles Janac

My Testbench Used to Break! Now it Bends: Adapting to Changing Design Configurations

INDUSTRIAL TRAINING: 6 MONTHS PROGRAM TEVATRON TECHNOLOGIES PVT LTD

Veloce2 the Enterprise Verification Platform. Simon Chen Emulation Business Development Director Mentor Graphics

AXI4-Stream Verification IP v1.0

Designing with ALTERA SoC Hardware

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

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

Graph-Based Verification in a UVM Environment

Set a longer list of transaction attributes as per protocol legality Perform the cache data/state update at end of transaction, as needed

Graph-Based IP Verification in an ARM SoC Environment by Andreas Meyer, Verification Technologist, Mentor Graphics Corporation

PG DIPLOMA COURSE IN VERIFICATION USING SYSTEMVERILOG & UVM NEOSCHIP TECHNOLOGIES

Stacking UVCs Methodology. Revision 1.2

Title: Using Test-IP Based Verification Techniques in a UVM Environment

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

DESIGN AND VERIFICATION ANALYSIS OF APB3 PROTOCOL WITH COVERAGE

Course Profile Assertions in UVM

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

Verification of the PULPino SOC platform using UVM CISMA

An approach to accelerate UVM based verification environment

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

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

Modeling Performance Use Cases with Traffic Profiles Over ARM AMBA Interfaces

UVM in System C based verification

Functional Verification of xhci (extensible host controller Interface) for USB 3.1 Using HDL

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

VERIFICATION OF AHB PROTOCOL USING SYSTEM VERILOG ASSERTIONS

Yafit Snir Arindam Guha Cadence Design Systems, Inc. Accelerating System level Verification of SOC Designs with MIPI Interfaces

Verification of Advanced High Speed Bus in UVM Methodology

Maintaining Consistency Between SystemC and RTL System Designs

Design and Verification of FPGA and ASIC Applications Graham Reith MathWorks

Easier UVM Functional Verification for Mainstream Designers

Verification of Power Management Protocols through Abstract Functional Modeling

Making the Most of your MATLAB Models to Improve Verification

Pre-Silicon Host-based Unit Testing of Driver Software using SystemC Models

Verification Prowess with the UVM Harness

Effective System Design with ARM System IP

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

FPGA Verification How to improve verification without throwing everything away

IOT is IOMSLPT for Verification Engineers

Easy migration between frameworks using UVM Multi- Language (UVM-ML) Dr. Mike Bartley, Test and Verification Solutions

Bring IP verification closer to SoC

Universal Verification Methodology (UVM) Module 5

ARM s IP and OSCI TLM 2.0

Bus AMBA. Advanced Microcontroller Bus Architecture (AMBA)

Copyright 2014 Xilinx

Verification of AHB Protocol using UVM

SD Card Controller IP Specification

Design and Verification of FPGA Applications

Assertion Based Verification of AMBA-AHB Using System Verilog

Using Formalized Programming Sequences for Higher Quality Virtual Prototypes

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

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

UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE

Software Driven Verification at SoC Level. Perspec System Verifier Overview

UVM hardware assisted acceleration with FPGA co-emulation

Bringing Formal Property Verification Methodology to SoC Interconnects

Hardware/Software Co-Verification Using the SystemVerilog DPI

Intellectual Property Macrocell for. SpaceWire Interface. Compliant with AMBA-APB Bus

SYSTEMS ON CHIP (SOC) FOR EMBEDDED APPLICATIONS

VERIFICATION OF AMBA AXI BUS PROTOCOL IMPLEMENTING INCR AND WRAP BURST USING SYSTEM VERILOG

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

Keywords- AMBA, AHB, APB, AHB Master, SOC, Split transaction.

Designing with ALTERA SoC

Comprehensive AMS Verification using Octave, Real Number Modelling and UVM

System-On-Chip Design with the Leon CPU The SOCKS Hardware/Software Environment

VERIFICATION OF RISC-V PROCESSOR USING UVM TESTBENCH

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

SystemVerilog Verification of Wishbone- Compliant Serial Peripheral Interface

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

Multi-core microcontroller design with Cortex-M processors and CoreSight SoC

Samsung and Cadence. Byeong Min, Master of Infrastructure Design Center, System LSI Business, Samsung. The Customer. The Challenge. Business Challenge

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

OCB-Based SoC Integration

VME64M VME64 MASTER CONTROLLER. Version 1.1

AMBA AHB Bus Protocol Checker

Transcription:

Responding to TAT Improvement Challenge through Testbench Configurability and Re-use Akhila M, Kartik Jain, Renuka Devi, Mukesh Bhartiya Accellera Systems Initiative 1

Motivation Agenda Generic AMBA based SoC Template Key Areas to Target for Re-usability and Reconfigurability Recommended Techniques for faster TTM Results Conclusion Accellera Systems Initiative 2

Motivation Complex SoCs demanding faster TTM -- New and challenging IPs integration -- Multiple SoC churn outs with few extra features added -- Demands good verification coverage and corner case testing 40% 10% 15% 35% Testbench Development Testplan Creation and Running tests Debug Others Accellera Systems Initiative 3 *source:http://blogs.mentor.com/verificationhorizons/blog/author/hfoster/page/2/

Proposed Pre-Silicon Validation Methodology Reusability of IP/block level tests at SoC level Reconfigurable verification environment for project variations Reduce test-bench modification efforts when absorbing changes REUSE-RECONFIGURE-REDUCE!!! Accellera Systems Initiative 4

Generic AMBA based SoC Template UVM sequencer Controls all the sequencers SoC Specific IP(s) AMBA VIP/Wrapper Core DMA BASE UVM ENV I2C VIP I2S VIP Primary fabric AHB/AXI UART VIP GPIO VIP I2C I2S Memories Low speed fabric - APB GPIO UART Coverage Module DATA Checkers DATA Checker Hooked to all IFs DATA Checker Hooked to all IFs Hooked to all IFs Accellera Systems Initiative 5

Key Areas to Target for Re-usability and Re-configurability Accellera Systems Initiative 6

Fabric VIP Configuration Backbone of Verification Environment Architectural updates: Change in # and type of layers Change in # of peripherals Hierarchy changes Access control changes Accellera Systems Initiative 7 Address map changes Address/data width changes

Core Testbench Components (Base sequences, Data checkers) Dependencies on VIPs VIP sequences, data checkers and base components and their extensions tightly coupled to transaction type Accellera Systems Initiative 8

Core Testbench Components (Base sequences, Data checkers) VIP AXI SEQ??? Accellera Systems Initiative 9

Block Level Tests Re-run block level tests in UVM BINGO!!! IPs developed in different language(s) Adoption of System-C by designers IP tests have different execution phases Block level tests and system level tests have to be synchronized SC_MAIN() { config send data new config DUT UVM run_test() Phases Sequences Accellera Systems Initiative 10

Recommended Techniques for Faster TTM Accellera Systems Initiative 11

Reconfigurable Wrappers for Main fabric VIP Encapsulates VIP Config Class details from users VIP Config Class details from users Function: set_new_layer Layer type, ID Name, # Master, Slaves, Clock/ Reset mode Function: register_layer_master/slave Agent specific parameters agent_data_holder_st store agent configs layer_data_holder_st store layer configs Loop for all agents / layer VIP Configuration: Num of agents Data/ Addr width configs AHB_Lite/ APB3/ APB4 configs Master-Slave clock/ reset mode configs Active/ Passive configs Agent addr mapping AMBA Monitor hook-ups Other configs Accellera Systems Initiative 12

Easy Configuration of External Interfaces AMBA VIP CONFIGURATION int layer_master [0:`NO_OF_AMBA_LAYERS-1] = {4,2,1}; int layer_slave [0:`NO_OF_AMBA_LAYERS-1] = {5,1,1}; int layer_clock_mode [0:`NO_OF_AMBA_LAYERS-1] = {1,1,1}; int layer_reset_mode [0:`NO_OF_AMBA_LAYERS-1] = {1,1,1}; int set_xaction_mon [0:`NO_OF_AMBA_LAYERS-1] = {1,1,1}; OTHER VIP CONFIGURATION: int uart_active[0:`no_of_uart_instances-1] = {1,1}; int handshake_type[0:`no_of_uart_instances-1] = {0,0}; int data_width[0:`no_of_uart_instances-1] = {8,8}; int stop_bit[0:`no_of_uart_instances-1] = {1,1}; int parity_type[0:`no_of_uart_instances-1] = {1,1}; Accellera Systems Initiative 13

Generic Sequences Independent of VIP Transactions All Sequences extended from UVM sequence Sequencer casting just before driving UVM item, NOT at virtual sequence level UVM SEQ MY SEQ L1 MY SEQ L2 MY SEQ L11 MY SEQ L12 MY SEQ L21 Map Item to VIP Item VIP AHB SEQ VIP AXI SEQ `my_uvm_do_on (AHB/ AXI seqr, seq/ item) Tie item/ sequence to UVM seqr Save actual seqr pointer Accellera Systems Initiative 14

Generic Data Checkers Independent of VIP Transactions Configurable end-to-end data checker working on customized transaction type Performs data sanity on peripheral interface Handles on-the-fly reset/ abort conditions, selectively turning off checker on any given interface, applying byte-mask TX VIP Xaction Map to Checker Xaction PASS/ FAIL RX VIP Xaction Map to Checker Xaction Thru Analysis ports Apply any byte masks, UVM event controls Accellera Systems Initiative 15

HDL Independent Verification Flow Pre-requisites to switch between System-C or UVM driver. SystemC model Loosely timed (LT)/ Approximately timed(at)/ Pin accurate models(pa) SystemC Function Reuse Divide System-C tests into Multiple Function calls Handshake DPI Calls / Assertion of SC SV Interface Signals. Accellera Systems Initiative 16

Results Accellera Systems Initiative 17

Improvement in Time to First Test Weeks 14 12 10 8 6 4 2 0 Project1 Project 2 Project1 Project 2 Configurable wrappers were used for VIPs and System-C driver was integrated

Improvement in Overall Run Time 18 Avg Wall Clock Time in Mins 15 12 9 6 3 0 Project1 Project2 Similar peripheral tests Project1: One copy of each VIP license checkout per run Project2: Only 1 license checkout per run, if compiled with proper defines

Conclusion Re-use Prior engagement with IP team to integrate pin accurate model renders test re-use option Re-configure Configurable VIP wrappers for fabric and external interfaces Reduce Decoupling components dependencies on VIP transactions reduces rework. Accellera Systems Initiative 20

Thanks Accellera Systems Initiative 21