ARM s IP and OSCI TLM 2.0

Similar documents
AMBA Programmer s View Extensions to OSCI TLM v2.0. Nizar ROMDHANE Technical Marketing Manager RealView Tools, DSTG April, 2007

AHB monitor. Monitor. AHB bridge. Expansion AHB ports M1, M2, and S. AHB bridge. AHB bridge. Configuration. Smart card reader SSP (PL022)

Designing with ALTERA SoC Hardware

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

Bus AMBA. Advanced Microcontroller Bus Architecture (AMBA)

Copyright 2014 Xilinx

CoreTile Express for Cortex-A5

Transaction Level Modeling with SystemC. Thorsten Grötker Engineering Manager Synopsys, Inc.

The TLM-2.0 Standard. John Aynsley, Doulos

Effective System Design with ARM System IP

The Challenges of System Design. Raising Performance and Reducing Power Consumption

PrimeCell TrustZone Protection Controller (BP147) Cycle Model

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

Interconnects, Memory, GPIO

Copyright 2016 Xilinx

Lecture 5: Computing Platforms. Asbjørn Djupdal ARM Norway, IDI NTNU 2013 TDT

Designing with ALTERA SoC

Modular ARM System Design

Fujitsu System Applications Support. Fujitsu Microelectronics America, Inc. 02/02

What s In Your e-wallet? Using ARM IP to Enable Security in Mobile Phones. Richard Phelan Media Processing Division TrustZone Security Technology

Introduction to the SystemC TLM Standard Stuart Swan Cadence Design Systems, Inc June 2005

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

Parallel Simulation Accelerates Embedded Software Development, Debug and Test

Maintaining Consistency Between SystemC and RTL System Designs

SoC Platforms and CPU Cores

Product Series SoC Solutions Product Series 2016

Designing, developing, debugging ARM Cortex-A and Cortex-M heterogeneous multi-processor systems

ARM Processors for Embedded Applications

Easy Steps Towards Virtual Prototyping using the SystemVerilog DPI

A Flexible SystemC Simulator for Multiprocessor Systemson-Chip

Building High Performance, Power Efficient Cortex and Mali systems with ARM CoreLink. Robert Kaye

EFM32 Series 0: DMA (ARM PrimeCell µdma PL230)

ARM System-Level Modeling. Platform constructed from welltested

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

Designing Embedded Processors in FPGAs

Experiences and Challenges of Transaction-Level Modelling with SystemC 2.0

Zynq-7000 All Programmable SoC Product Overview

Versatile/PB926EJ-S FAQ v1.0

Agilent N2533A RMP 4.0 Remote Management Processor Data Sheet

QEMU and SystemC. Màrius Màrius Montón

Fast Models. Reference Manual. Version 7.1. Copyright ARM. All rights reserved. ARM DUI 0423M (ID051712)

Transaction Level Modeling with SystemC. Thorsten Grötker Engineering Manager Synopsys, Inc.

ECE 471 Embedded Systems Lecture 2

Extending Fixed Subsystems at the TLM Level: Experiences from the FPGA World

Zynq Architecture, PS (ARM) and PL

A Methodology for NoC

Emulation Baseboard. RealView. User Guide (Lead Free) HBI-0140 Rev D. Copyright ARM Limited. All rights reserved.

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

Fujitsu SOC Fujitsu Microelectronics America, Inc.

FPQ6 - MPC8313E implementation

The CoreConnect Bus Architecture

ARM Cortex-A9 ARM v7-a. A programmer s perspective Part1

Test and Verification Solutions. ARM Based SOC Design and Verification

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

Product Technical Brief S3C2413 Rev 2.2, Apr. 2006

Overview of Development Tools for the ARM Cortex -A8 Processor George Milne March 2006

Design Techniques for Implementing an 800MHz ARM v5 Core for Foundry-Based SoC Integration. Faraday Technology Corp.

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

SoC Designer. Fast Models System Creator Cycle Models Reference. Version 9.2. Copyright 2017 ARM Limited. All rights reserved.

Welcome to this presentation of the STM32 direct memory access controller (DMA). It covers the main features of this module, which is widely used to

Generating TLM Bus Models from Formal Protocol Specification. Tom Michiels CoWare

Fast Models. Reference Manual. Version 6.0. Copyright ARM Limited. All rights reserved. ARM DUI 0423I (ID110210)

Application Note 176. Interrupts on MPCore Development Boards. Released on: 28 March, Copyright 2006, All rights reserved.

SoC Design Lecture 11: SoC Bus Architectures. Shaahin Hessabi Department of Computer Engineering Sharif University of Technology

SYSTEMS ON CHIP (SOC) FOR EMBEDDED APPLICATIONS

Parallella Linux - quickstart guide. Antmicro Ltd

Modeling Performance Use Cases with Traffic Profiles Over ARM AMBA Interfaces

Product Technical Brief S3C2412 Rev 2.2, Apr. 2006

Implementing Secure Software Systems on ARMv8-M Microcontrollers

STM32 MICROCONTROLLER

SEMICON Solutions. Bus Structure. Created by: Duong Dang Date: 20 th Oct,2010

RA3 - Cortex-A15 implementation

ECE 471 Embedded Systems Lecture 2

ARM Connected Community Technical Symposium Reaching High Performance System Design Using AMBA Fabric IP

AN OPEN-SOURCE VHDL IP LIBRARY WITH PLUG&PLAY CONFIGURATION

Introduction to Embedded System Design using Zynq

The Next Steps in the Evolution of Embedded Processors

QEMU for Xilinx ZynqMP. V Aug-20

OCB-Based SoC Integration

ARM Cortex M3 & General Purpose Input/Output (GPIO)

Negotiating the Maze Getting the most out of memory systems today and tomorrow. Robert Kaye

Place Your Logo Here. K. Charles Janac

Microsemi IP Cores Accelerate the Development Cycle and Lower Development Costs

Buses. Maurizio Palesi. Maurizio Palesi 1

The Metaport. A Technique for Managing g Code Complexity. Jack Donovan HighIP Design Company

Interrupting SmartFusion MSS Using FABINT

Tim Kogel. June 13, 2010

EMBEDDED SYSTEMS WITH ROBOTICS AND SENSORS USING ERLANG

CoFluent Design FPGA. SoC FPGA. Embedded. Systems. HW/SW

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

SPEAr: an HW/SW reconfigurable multi processor architecture

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

Embedded Busses. Large semiconductor. Core vendors. Interconnect IP vendors. STBUS (STMicroelectronics) Many others!

Growth outside Cell Phone Applications

Tackling Verification Challenges with Interconnect Validation Tool

Chapter 6 Storage and Other I/O Topics

Applying the Benefits of Network on a Chip Architecture to FPGA System Design

A Virtual Development Environment for Smart Card Applications

SONICS, INC. Sonics SOC Integration Architecture. Drew Wingard. (Systems-ON-ICS)

IoT and Security: ARM v8-m Architecture. Robert Boys Product Marketing DSG, ARM. Spring 2017: V 3.1

Transcription:

ARM s IP and OSCI TLM 2.0 Deploying Implementations of IP at the Programmer s View abstraction level via RealView System Generator ESL Marketing and Engineering System Design Division ARM Q108 1

Contents OSCI TLM 2.0 Experiences with implementing draft 1, use cases, draft 2, Suggestions for improvement AMBA PV Defining AXI, AHB and APB at the PV level System Generator and Model Export Deploying ARM IP PV models into the environment Ports, Scheduling, Debug Interface Availability of ARM IP PV Models 2

The Big Picture Membership of OSCI board. Active participation in the TLM Working Group. ARM s view of OSCI TLM 2.0 Becoming industry standard at the interface Deployment of IP to multiple development platforms Unexposed sub-system interfaces not necessarily TLM 2.0 Freedom to define higher performance interfaces PV/UT only Lack of semantic checks, e.g. communication protocols No assistance for defining target debug ARM s Use Cases for TLM 2.0 Software Development (2.1*) App, OS,...Driver... Software Performance Analysis (2.2)...dependent on definition of reasonable! (2.4), (2.7) are considered by ARM to be at the CA level That said... * Numbers refer to requirements in TLM 2.0 draft 2 requirements doc 3

TLM 2.0 draft 1 -> draft 2 Single Transaction object REQ and RESP combined in Generic Payload Simulation speed improvement At PV Level, separate REQ and RESP not used anyway simplest (quickest) mechanism for (2.1) b_transport only (Could add timing notion - see later) Extension mechanism improved Dynamic casting no longer necessary for performance as per draft 1 Support of DMI e.g. Memory in System C without huge simulation speed hit Quantum Keeper Possibly formalises ARM s approach Documentation significantly improved 4

TLM 2.0 Final Improvements (1) DMI Current DMI proposal is not suitable for AXI in its entirety For example, S / NS memories at the same address Secure Secure Memory Interconnect Non-secure Nonsecure Memory Same problem with debug accesses...... Carry the same type as normal transactions (GP)? 5

TLM 2.0 Final Improvements (2) Specific Protocol Would like to use inheritance Not recommended by draft2 Rules out - Extended Compile time checks For example between different versions of protocols Rules out - Refining behaviours of the GP Rules out Adding extension specific helper function Synchronization Early Termination of quantum with Synchronize now command to all the platform Status flag in b_transport call requesting that an initiator terminates its quantum early? (Possibly related to adding time to b interface) Would improve simulation efficiency, 6

TLM 2.0 Final Improvements (3) Abstraction Levels Blocking / Non-Blocking. UT/LT/AT, PV/PV+T Confusion Can have timing at UT level (UT means no timing at the interface) Seeking to simplify... Suggestion: Extend blocking interface to carry a time stamp Remove/Rename UT? What does this mean for LT? (LLT?) Enhances Symmetry Path Identification No standard means to discriminate/distinguish between several incoming paths Example: dual-port memory with arbitration based on incoming path Example: Effects of arbitration schemes in cross bar switch 7

AMBA PV Implementation of AXI, AHB, APB on top of TLM 2.0 Currently based on draft 1, migration to draft 2 in progress Free download www.arm.com (not yet) Example of how to bridge protocols Can be used to as an example of how to construct other bridges Blocking Interface wait() can be called by the transaction target Signal API part of the AMBA PV package even though it s not AXI Dynamic Casting Avoided in AMBA PV by using inheritance Transport of, e.g. (REQ, EXT) tlm_custom_base -> (AMBA_PV_REQ) Converting AMBA PV to amba_pv_control TLM 2.0 is (almost) cost free tlm_request amba_pv_request 8

System Generator System Generator Preferred modeling/ip proliferation environment Model debug support, ease of use, graphical visualization Highest simulation speed for PV ~ 250 MIPS Model Export TLM 2.0 draft 1 examples delivered today, draft 2 in preparation First tool to support TLM 2.0 Simulation speed largely maintained 9

Model Export - Interfaces Interface generation for mixed system consisting of ARM PV models and OSCI TLM 2.0 draft 1 compliant components ARM sub-system OSCI - TLM 2.0 draft 1 Components Top Level System MEM Slave SystemC Master DMA CPU Master External Ports MEM SystemC Slave Generated Port Wrapper 10

Model Export Scheduling System Generator Virtual Platform SystemC Components Master Scheduler (generated from SG) control control System Generator Scheduler System Generator Components Data SystemC Components SystemC Scheduler Master Scheduler Synchronization of simulated time for System Generator and SystemC domain Local Schedulers Schedule components within their domain 11

Simulation Control Simulation Control API Clock Clock ratio between SG and SysC worlds Divergent local clocks Ordering not absolute time is critical Set Quantum Controls Synchronization between two subsystems. Currently fixed Managed to ensure Interrupts are taken (Hard) Real Time constraints Driver Development Performance vs. accuracy (again) Stop Simulation DEBUG MODE starts debug server Model Configuration/Parameterization API Get/Set parameters in SG components Load Software Files for Processors 12

Model Export - Debugging System Generator Virtual Platforms Fully supported by Model Debugger and RVD Attach to running simulations run, cycle, set breakpoints source-level debugging etc. System Generator Virtual Platform SystemC Components Model Debugger / RVD CADI Debug Client CADI Debug Server Top Level System MEM CPU Slave Master SystemC Master DMA MEM SystemC Slave built in debug support handwritten debug support 13

ARM IP PV Model Availability ARM CPU models ARM926EJ ARM968E ARM1136J ARM1176JZ Cortex-A8 Cortex-R4 Roadmap Cortex-A9 ARM11MPCore Pre-built models CP Baseboard Emulation Baseboard DualCore Platform Bus interfacing (PV-bus is the model interconnect; represents the functionality of PL300, PL301) ARM fabric peripheral models UART PL011 Timers SP804 Clocks PL030, PL031, ICS307 GPIO PL061 Generic Interrupt Controller PL390 Vectored Interrupt Controller PL192 TrustZone Interrupt Controller SP890 Memory models RAM Flash NAND-Flash Controllers DMAC PL080, DMC PL340, SMC PL350 TZMA BP141, TZPC BP147 Complex peripheral models CLCD controller PL110, PL111 Ethernet controller ( LAN91C111 ) 14