Verifying big.little using the Palladium XP. Deepak Venkatesan Murtaza Johar ARM India

Similar documents
Verification at ARM. Overview. Alan Hunter

Validation Strategies with pre-silicon platforms

Verification at ARM. Overview 1/18/18

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

Does FPGA-based prototyping really have to be this difficult?

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

The Cortex-A15 Verification Story

NS115 System Emulation Based on Cadence Palladium XP

Practical Approaches to Formal Verification. Mike Bartley, TVS

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

Optimizing Hardware/Software Development for Arm-Based Embedded Designs

Optimizing ARM SoC s with Carbon Performance Analysis Kits. ARM Technical Symposia, Fall 2014 Andy Ladd

Speed up Emulation Debugging using Whitebox Assertions

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

Post processing techniques to accelerate assertion development Ajay Sharma

Performance Optimization for an ARM Cortex-A53 System Using Software Workloads and Cycle Accurate Models. Jason Andrews

Hardware Software Bring-Up Solutions for ARM v7/v8-based Designs. August 2015

Mapping Multi-Million Gate SoCs on FPGAs: Industrial Methodology and Experience

PG DIPLOMA COURSE IN VERIFICATION USING SYSTEMVERILOG & UVM NEOSCHIP TECHNOLOGIES

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

Early Software Development Through Emulation for a Complex SoC

Formal for Everyone Challenges in Achievable Multicore Design and Verification. FMCAD 25 Oct 2012 Daryl Stewart

Test and Verification Solutions. ARM Based SOC Design and Verification

Graph-Based Verification in a UVM Environment

Formal Verification Adoption. Mike Bartley TVS, Founder and CEO

Optimizing Cache Coherent Subsystem Architecture for Heterogeneous Multicore SoCs

The Veloce Emulator and its Use for Verification and System Integration of Complex Multi-node SOC Computing System

100M Gate Designs in FPGAs

Leveraging Formal Verification Throughout the Entire Design Cycle

Modeling Performance Use Cases with Traffic Profiles Over ARM AMBA Interfaces

Analyzing and Debugging Performance Issues with Advanced ARM CoreLink System IP Components

Verification Futures Nick Heaton, Distinguished Engineer, Cadence Design Systems

Big.LITTLE Processing with ARM Cortex -A15 & Cortex-A7

Will Everything Start To Look Like An SoC?

Assertion Based Verification of AMBA-AHB Using System Verilog

Custom Design Formal Equivalence Checking Based on Symbolic Simulation. Overview. Verification Scope. Create Verilog model. Behavioral Verilog

Verification Futures The next three years. February 2015 Nick Heaton, Distinguished Engineer

SYSTEMS ON CHIP (SOC) FOR EMBEDDED APPLICATIONS

ASIC world. Start Specification Design Verification Layout Validation Finish

Strato and Strato OS. Justin Zhang Senior Applications Engineering Manager. Your new weapon for verification challenge. Nov 2017

Test Scenarios and Coverage

ZeBu : A Unified Verification Approach for Hardware Designers and Embedded Software Developers

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

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

Effective System Design with ARM System IP

ENABLING A NEW PARADIGM OF SYSTEM-LEVEL DEBUG PRODUCTIVITY WHILE MAINTAINING FULL IN-CIRCUIT EMULATION PERFORMANCE. CDNLive! Silicon Valley 2012

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

Simulation Based Analysis and Debug of Heterogeneous Platforms

EECS 4340: Computer Hardware Design Unit 4: Validation

VERIFICATION OF RISC-V PROCESSOR USING UVM TESTBENCH

Verification of Clock Domain Crossing Jitter and Metastability Tolerance using Emulation

FlexRIO. FPGAs Bringing Custom Functionality to Instruments. Ravichandran Raghavan Technical Marketing Engineer. ni.com

SD Card Controller IP Specification

Incisive Enterprise Verifier

FPGA Verification How to improve verification without throwing everything away

Profiling and Debugging OpenCL Applications with ARM Development Tools. October 2014

Non-invasive Software Verification using Vista Virtual Platforms by Alex Rozenman, Vladimir Pilko, and Nilay Mitash, Mentor Graphics

Software Quality is Directly Proportional to Simulation Speed

SoC Verification Methodology. Prof. Chien-Nan Liu TEL: ext:

Combining TLM & RTL Techniques:

High Speed Multi-User ASIC/SoC Prototyping system

Using Virtual Platforms To Improve Software Verification and Validation Efficiency

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

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

Virtual Platform Based Linux Bring Up Methodology

SoC Verification Strategies for Embedded Systems Design

Universal Verification Methodology (UVM) Module 5

It's not about the core, it s about the system

Getting the Most out of Advanced ARM IP. ARM Technology Symposia November 2013

IMPROVES. Initial Investment is Low Compared to SoC Performance and Cost Benefits

Low Power Emulation for Power Intensive Designs

Will Everything Start To Look Like An SoC?

System Level Design with IBM PowerPC Models

MATLAB/Simulink 기반의프로그래머블 SoC 설계및검증

ADVANCED DIGITAL IC DESIGN. Digital Verification Basic Concepts

Introduction to gem5. Nizamudheen Ahmed Texas Instruments

Verification of Power Management Protocols through Abstract Functional Modeling

Assertions: Too good to be reserved for verification only.

Verification of Digital Systems, Spring UVM Basics

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

Extending Model-Based Design for HW/SW Design and Verification in MPSoCs Jim Tung MathWorks Fellow

Employing Multi-FPGA Debug Techniques

Verification of Cache Coherency Formal Test Generation

Wai Chee Wong Sr.Member of Technical Staff Freescale Semiconductor. Raghu Binnamangalam Sr.Technical Marketing Engineer Cadence Design Systems

Qualification of Verification Environments Using Formal Techniques

Software Driven Verification at SoC Level. Perspec System Verifier Overview

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

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

Verifying a low power design

Functional Verification of the SiCortex Multiprocessor System-on-a-Chip. Oleg Petlin, Wilson Snyder

Design Process. Design : specify and enter the design intent. Verify: Implement: verify the correctness of design and implementation

XDS560 Trace. Technology Showcase. Daniel Rinkes Texas Instruments

IOT is IOMSLPT for Verification Engineers

Making the Most of your MATLAB Models to Improve Verification

EEM870 Embedded System and Experiment Lecture 4: SoC Design Flow and Tools

Designing with ALTERA SoC Hardware

Accelerating RTL Simulation Techniques by Lior Grinzaig, Verification Engineer, Marvell Semiconductor Ltd.

Extending the Power of FPGAs

Hardware Design and Simulation for Verification

ARM big.little Technology Unleashed An Improved User Experience Delivered

Transcription:

Verifying big.little using the Palladium XP Deepak Venkatesan Murtaza Johar ARM India 1

Agenda PART 1 big.little overview What is big.little? ARM Functional verification methodology System Validation System test bench Systembench PART 2 Palladium XP Use model Palladium XP features used Results/statistics Future opportunities 2

PART 1 big.little overview 3

What is big.little? 4

big.little Platform Example Dual/Quad Cortex-A7 5

System Top Unit ARM Functional Verification phases DI Entry D&T Entry alpha beta LAC REL SPECIFICATION/ PLANNING IMPLEMENTATION TESTING/ DEBUG COVERAGE CLOSURE STRESS TESTING Simulation (100Hz) Emulation (1MHz) Planning Unit-level Test benches development/ bring up Unit level Testing/debug Sim:10 10 cycles Unit level coverage closure FPGA(10MHz) Si(1GHz) Sim:10 11 cycles Unit level soak testing Planning Top-level Test bench development/ bring up Top level directed Testing/debug Sim:10 10 cycles Top level coverage closure Sim:10 11 cycles Top level random soak testing (RIS) Requirements Planning system-level testbench integration/ bring up Emulator System-level s/wtesting/debug Emu:10 12 cycles FPGA:10 15 cycles FPGA stress testing Si Stress testing Si:10 16 cycles 6 (timelines not to scale)

ARM System-level Validation Perform in-system validation of ARM IPs Find IP Product bugs from realworld testing (This is not the same as traditional SOC validation approach) To do this: Build configurable System test bench Support Emulation and FPGA systems. Payload generation tools for stress testing Plus many supporting automation flows and infrastructure Test Payloads Test Benches Execution Platforms 7 CONFIDENTIAL

System testbench The Systembench 8

PART 2 Palladium XP Use model 9

Palladium XP use model Predominantly used as stress testing platform Stress mostly from multiple IP configurations and payloads Also used to debug failures from other platforms (e.g. FPGA) Full vision mode complete design visibility Other PXP features used for software analysis and qualification LSF Scheduler built over the PXP for scheduling multiple different jobs Utilize domains effectively Allow multiple users/designs/capacities to run simultaneously Main objective Effectively use an expensive resource 10

PXP LSF Scheduler widget 11

SDL Triggers Run-time debug feature CPU instruction/register/memory trace between two defined clock cycles Dumping CPU/other IP waveforms between two defined clock cycles Mechanism for detecting CPU hardware deadlock using probes from the test bench Exit runs when hangs Triggering the end of test by monitoring a hardware register Getting dump of memory or CPU caches at known time intervals 12

Assertions Run with all assertions in CPUs, interconnect and other ARM IPs Mostly OVLs and some SVAs AXI bus protocol checkers and violation detectors Test bench assertions to debug error scenarios in CPU and other ARM IP 13

Others Save and Restore Save states at periodic intervals for long runs Restore multiple times with additional debug hooks System Verilog Functional Coverage Payload qualification for determining stress levels E.g. number of snoop transactions ISS Compare in IXCOM Compare Instruction executions between model and RTL 14

Results Bugs found >20 ~8 CAT A bugs PXP cycles ~1 trillion per week during maturity phase 30% on big.little Number of CCI transactions > 14 Billion 60% on big.little Compile times - ~30 mins PXP Statistics: CPU Cluster-1 CPU Cluster-2 System Gate count Palladium XP frequency Palladium XP domains Cortex A7 MP2 Cortex A7 MP2 13 million 1.33 MHz 4 domains Cortex A15 MP4 Cortex A7 MP4 28.5 million 1.13 MHz 8 domains Cortex A15 MP4 Cortex A15 MP4 41.4 million 1.02 MHz 11 domains 15

Challenges System Verilog support Fitting multiple big.little runs Very few configurations tested with GPUs Support for Verilog2001 features e.g. generate statements Initial hardware reliability issues 16

Future opportunities More SV functional coverage integration Port unit level to system level Add system-level instrumentation Use UXE 12.1 for some crucial improvements IXCOM migration Improve speed issues Asynchronous clocking Power aware verification 64-bit CPU System validation 17

Questions? Thank You 18