OpTiMSoC Build Your Own System-on-Chip!



Similar documents
Going Linux on Massive Multicore

Open Flow Controller and Switch Datasheet

Digitale Signalverarbeitung mit FPGA (DSF) Soft Core Prozessor NIOS II Stand Mai Jens Onno Krah

7a. System-on-chip design and prototyping platforms

Xeon+FPGA Platform for the Data Center

High Performance or Cycle Accuracy?

Pre-tested System-on-Chip Design. Accelerates PLD Development

OPTIMIZE DMA CONFIGURATION IN ENCRYPTION USE CASE. Guillène Ribière, CEO, System Architect

FlexPath Network Processor

White Paper. S2C Inc Technology Drive, Suite 620 San Jose, CA 95110, USA Tel: Fax:

USB 3.0 Connectivity using the Cypress EZ-USB FX3 Controller

System on Chip Platform Based on OpenCores for Telecommunication Applications

Getting Started with Embedded System Development using MicroBlaze processor & Spartan-3A FPGAs. MicroBlaze

Hybrid Platform Application in Software Debug

Von der Hardware zur Software in FPGAs mit Embedded Prozessoren. Alexander Hahn Senior Field Application Engineer Lattice Semiconductor

- Nishad Nerurkar. - Aniket Mhatre

LogiCORE IP AXI Performance Monitor v2.00.a

MoonGen. A Scriptable High-Speed Packet Generator Design and Implementation. Paul Emmerich. January 30th, 2016 FOSDEM 2016

OpenSoC Fabric: On-Chip Network Generator

All Programmable Logic. Hans-Joachim Gelke Institute of Embedded Systems. Zürcher Fachhochschule

Operating System Support for Multiprocessor Systems-on-Chip

WiSER: Dynamic Spectrum Access Platform and Infrastructure

The Advanced JTAG Bridge. Nathan Yawn 05/12/09

BY STEVE BROWN, CADENCE DESIGN SYSTEMS AND MICHEL GENARD, VIRTUTECH

Architekturen und Einsatz von FPGAs mit integrierten Prozessor Kernen. Hans-Joachim Gelke Institute of Embedded Systems Professur für Mikroelektronik

SOCWIRE: A SPACEWIRE INSPIRED FAULT TOLERANT NETWORK-ON-CHIP FOR RECONFIGURABLE SYSTEM-ON-CHIP DESIGNS

ZigBee Technology Overview

Embedded Systems: map to FPGA, GPU, CPU?

Cut Network Security Cost in Half Using the Intel EP80579 Integrated Processor for entry-to mid-level VPN

AppliedMicro Trusted Management Module

Configurable Sensor Nodes for AAL Applications

The Xen of Virtualization

Andreas Läng. Hilscher Gesellschaft für Systemautomation mbh Intelligent solutions for industrial communication.

Development With ARM DS-5. Mervyn Liu FAE Aug. 2015

How To Build A Cloud Computer

Seeking Opportunities for Hardware Acceleration in Big Data Analytics

CycurHSM An Automotive-qualified Software Stack for Hardware Security Modules

M-Shield mobile security technology

Simplifying Embedded Hardware and Software Development with Targeted Reference Designs

What is a System on a Chip?

DEPLOYING AND MONITORING HADOOP MAP-REDUCE ANALYTICS ON SINGLE-CHIP CLOUD COMPUTER

REAL-TIME STREAMING ANALYTICS DATA IN, ACTION OUT

Making Multicore Work and Measuring its Benefits. Markus Levy, president EEMBC and Multicore Association

Qsys and IP Core Integration

Cray Gemini Interconnect. Technical University of Munich Parallel Programming Class of SS14 Denys Sobchyshak

Introduction to Exploration and Optimization of Multiprocessor Embedded Architectures based on Networks On-Chip

A Generic Network Interface Architecture for a Networked Processor Array (NePA)

MCA Standards For Closely Distributed Multicore

Architectures and Platforms

Beyond Virtualization: A Novel Software Architecture for Multi-Core SoCs. Jim Ready September 18, 2012

ARM Cortex-A9 MPCore Multicore Processor Hierarchical Implementation with IC Compiler

Reconfigurable System-on-Chip Design

Linux. Reverse Debugging. Target Communication Framework. Nexus. Intel Trace Hub GDB. PIL Simulation CONTENTS

Networking Virtualization Using FPGAs

Load Balancing & DFS Primitives for Efficient Multicore Applications

Nested Virtualization

Intel DPDK Boosts Server Appliance Performance White Paper

Hardware accelerated Virtualization in the ARM Cortex Processors

UNIT 4 Software Development Flow

Notes and terms of conditions. Vendor shall note the following terms and conditions/ information before they submit their quote.

Hardware Implementation of Improved Adaptive NoC Router with Flit Flow History based Load Balancing Selection Strategy

Computer System Design. System-on-Chip

Outline. Outline. Why virtualization? Why not virtualize? Today s data center. Cloud computing. Virtual resource pool

FPGA Accelerator Virtualization in an OpenPOWER cloud. Fei Chen, Yonghua Lin IBM China Research Lab

Optimizing Configuration and Application Mapping for MPSoC Architectures

Multiprocessor System-on-Chip

Product Development Flow Including Model- Based Design and System-Level Functional Verification

Lesson 7: SYSTEM-ON. SoC) AND USE OF VLSI CIRCUIT DESIGN TECHNOLOGY. Chapter-1L07: "Embedded Systems - ", Raj Kamal, Publs.: McGraw-Hill Education

Extending the Power of FPGAs. Salil Raje, Xilinx

Custom design services

Building Blocks for PRU Development

Next Generation Operating Systems

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture

The QEMU/KVM Hypervisor

ARM Processors and the Internet of Things. Joseph Yiu Senior Embedded Technology Specialist, ARM

Kalray MPPA Massively Parallel Processing Array

STLinux Software development environment

A Hardware and Software Monitor for High-Level System-on-Chip Verification

EEM870 Embedded System and Experiment Lecture 1: SoC Design Overview

Outline. Introduction. Multiprocessor Systems on Chip. A MPSoC Example: Nexperia DVP. A New Paradigm: Network on Chip

AN FPGA FRAMEWORK SUPPORTING SOFTWARE PROGRAMMABLE RECONFIGURATION AND RAPID DEVELOPMENT OF SDR APPLICATIONS

Low Cost System on Chip Design for Audio Processing

GPU File System Encryption Kartik Kulkarni and Eugene Linkov

CoreSight SoC enabling efficient design of custom debug and trace subsystems for complex SoCs

Testing of Digital System-on- Chip (SoC)

Awareness of MPI Virtual Process Topologies on the Single-Chip Cloud Computer

Best Practises for LabVIEW FPGA Design Flow. uk.ni.com ireland.ni.com

XtratuM integration on bespoke TTNoCbased. Assessment of the HW/SW.

Kirchhoff Institute for Physics Heidelberg

Design for Success: Designing for the Internet of Things with TiWiConnect

A Fast Inter-Kernel Communication and Synchronization Layer for MetalSVM

High-performance vnic framework for hypervisor-based NFV with userspace vswitch Yoshihiro Nakajima, Hitoshi Masutani, Hirokazu Takahashi NTT Labs.

Low-Overhead Hard Real-time Aware Interconnect Network Router

NORTHEASTERN UNIVERSITY Graduate School of Engineering. Thesis Title: CRASH: Cognitive Radio Accelerated with Software and Hardware

Architecture of the Kernel-based Virtual Machine (KVM)

Fastboot Techniques for x86 Architectures. Marcus Bortel Field Application Engineer QNX Software Systems

Intel Xeon +FPGA Platform for the Data Center

Using a Generic Plug and Play Performance Monitor for SoC Verification

SCAMPI Programmable hardware for network monitoring. Masaryk University

Efficient Implementation of the bare-metal Hypervisor MetalSVM for the SCC

Transcription:

OpTiMSoC Build Your Own System-on-Chip! FOSDEM 2014 February 2nd 2014 Institute for Integrated Systems Prof. Dr. Andreas Herkersdorf Arcisstraße 21 80333 München Germany http://www.lis.ei.tum.de

2

Photo by IntelFreePress, CC-BY-SA-2.0 http://www.fickr.com/photos/intelfreepress/8429166752/sizes/o/in/photostream/ It's his fault! (not really) 3

Figure by Wgsimon CC-BY-SA-3.0 or GFDL, via Wikimedia Commons http://commons.wikimedia.org/wiki/file%3atransistor_count_and_moore's_law_-_2011.svg 4

Goals scalable robust reusable 5

Photo by mharrsch on Flickr, CC-BY-SA-2.0 http://www.fickr.com/photos/mharrsch/29319685/sizes/o/in/set-653640/ The solution is not new 6

Tiles: our basic building blocks a tile 7

Tiles can be very different... memory tile compute tile accelerator tile 8

Network-on-Chip (NoC): Mesh 9

Network-on-Chip (NoC): Ring 10

Slide 6 from SCC Announcement Presentation by Justin Rattner (CTO Intel), Dec. 2009 http://download.intel.com/pressroom/pdf/rockcreek/scc_announcement_justinrattner.pdf Intel Single-chip Cloud Computer (SCC) 11

Adapteva Epiphany ( Parallella) Graphic from the Epiphany Introduction by Adapteva http://www.adapteva.com/introduction/ 12

Tilera TILE-Gx64 Graphic taken from Tilera TILE-Gx8072Processor Product Brief http://www.tilera.com/sites/default/files/images/products/tile-gx8072_pb041-03_web.pdf 13

Let's talk about Op Ti M SoC Open Tiled Many- System-on-Chip Core 14

Building Blocks for your Tiled Manycore System-on-Chip Not a production ready solution! 15

The OpTiMSoC Bag of Components Jeffrey Beall via Flickr, CC-BY-SA-2.0 (edited) www.fickr.com/photos/denverjeffrey/4392418334 16

Compute Tile: Distributed Memory OpenRISC Core OR1200 (old) mor1kx (new) Extended for multicore core identifier SPR Compare-and-Swap (CAS) unit (memory mapped) scratch memory for each core Shared memory (with L2$) version currently under development 17

Network Adapter Computation Communication DMA Engine Bus Transfer bulk data between tiles Message Passing (MP) Explicit communication between tiles Asynchronous IRQ write read To NoC From NoC 18

Memory Tile On-Chip SRAM or External DDR Memory 19

I/O Tiles UART SPI LCD dotmatrix display 20

Accelerator Tiles For CPU offoad Needs to handle NoC protocol and possibly Message Passing protocol currently working on AES (crypto) tile 21

Network-on-Chip: LISNoC Basic NoC implementation mesh or ring wormhole packet switched dimension routing configurable buffers virtual channel support Other features available on request (bufferless, multicast,...) 22

Target 23 Photo by cliff1066tm, via Flickr; CC-BY-2.0 http://www.fickr.com/photos/nostri-imago/3137422976/ Platforms

Target Platforms RTL Simulation FPGA Emulation 24

Target: RTL Simulation ModelSim signal-level insight into HW short turnaround times rather slow Verilator great for system-level and software development much faster than ModelSim free software! Icarus Verilog free software never tested 25

Target: FPGA ZTEX USB-FPGA 1.15b/d Xilinx Spartan 6 FPGA and Cypress FX2 USB 2.0 Xilinx University Program Virtex 5 (XUPV5; almost ML505) pro: fast, real hardware con: hard-ware = hard bugs 26

Programming?? 28

Programming: the basics newlib C library port OpenRISC GCC 29

Programming: Operating System libbaremetal: drivers, utility functions Mutex, CAS, interrupt handling, DMA, timer libruntime: simple runtime system scheduler, thread handling Multicore Association Communication (MCAPI) and Task Management API (MTAPI) message passing (MCAPI) and heterogeneous task management (MTAPI) APIs Linux support is being worked on, ETA end of 2014 30

Programming: Hello World $> cat hello_simple.c #include <stdio.h> void main() { printf("hello World!\n"); } $> cat Makefile PROGRAM=hello_simple BUILDSCRIPTS=$(shell pkg config variable=buildscriptdir optimsoc baremetal) include $(BUILDSCRIPTS)/Makefile.inc All build infrastructure is included! 31

Debugging: Concept tracing only hardware support filtering, compression no interference with system debug modules in hardware instruction traces software traces printf() send events from software NoC status initialization of memories 32

Debugging: Implementation 33

OpTiMSoC Host GUI 34

OpTiMSoC Host GUI 35

OpTiMSoC Host GUI 36

What can I use OpTiMSoC for? Use your FPGA: Build your own SoC often 1 or 2 CPU cores are enough Develop/evaluate hardware architectures/extensions Look inside a SoC <insert your ideas here> 37

Get Started! Code & Documentation @ www.optimsoc.org 38

Questions? The Army of Awesome : Andreas Lankes,, Stefan Wallentowitz Alexandra Weber, Andreas Oeldemann, Andreas Wilhelm, Christian Morgenstern, Daniel Haug, Daniel Thaler, Dexin Chen, Eugen Egel, Falco Cescolini, Hans-Christian Wild, Johannes Ehm, Julia Müller, Markus Göhrle, Martin Lowinski, Manuel Krause, Michael Faath, Michael Tempelmeier, Preethi Parayil, Robert Specht, Sebastian Herzog, Simon Schulze, Stefan Rösch, Umbreen Mian 39