A Software Development Toolset for Multi-Core Processors. Yuichi Nakamura System IP Core Research Labs. NEC Corp.

Size: px
Start display at page:

Download "A Software Development Toolset for Multi-Core Processors. Yuichi Nakamura System IP Core Research Labs. NEC Corp."

Transcription

1 A Software Development Toolset for Multi-Core Processors Yuichi Nakamura System IP Core Research Labs. NEC Corp.

2 Motivations Embedded Systems: Performance enhancement by multi-core systems CPU0 CPU1 Multi-core Systems need the parallelization of software How to develop parallelized software on multi-core Mobile Communication Consumer Car Picochip Tilera ClearSpeed Niagara Power, etc. Realistic parallelization Keeping hard real time constraints Detail verification and debug # of Cores Frequency increasing # of cores increasing Challenges: Enhancement of the productivity of software development for multi-core systems with high performance and high reliability.

3 Our Approaches From an industry s view, 3 approaches/tools are proposed 1.Parallelization from models Support parallelization from Simulink models Simulink Model analysis Simulink Task Parallelization in short time Sequen ceal C C-code analysis Flattening, loop unrolling Optimization, grain control Palallel code generation Task Code Generation Comm 2.Task placement with constraints Dependency Analysis Placement Result Core #0 Core #1 Hard deadline Task Placement with hard deadline Hard Deadline Original task set Task Placement Core #0 Core #1 3.Debugging SW by using FPGA CPU CPU CPU Multi-core real model Modeling FPGA Emulator C Programming Environment And Debugger Page 3

4 1-1.Parallel C Code Generation from Simulink Models A tool to generate parallel C code from Simulink models The tool enables users to develop parallel software without using parallel APIs explicitly. Parallelization Method 1. treat each of leaf blocks in models as a task. 2. signal completion of processing of tasks to descendant tasks with synchronized messages. Simulink models Preliminary experimental result (audio equalizer, 100% before parallelization) 2-core PC 60% 4-core PC 38% * Number of tasks in parallelized software 57 task communication To extract structural parallelism expressed in models through removing block hierarchy and loop structures. To optimize task granularity for small communication overhead. Simulink models Model analysis Simulink Optimization Sequential C code Code analysis Building internal models Code generation Parallelized C code Parallel code generation tool

5 1-2. How to Introduce Parallelization from Simulink Models Sound effect process: Modification of frequency and amplitude 1024sample/frame/channel Task Task dependency graph # of tasks = 57 Pipeline parallelization Sound effect processing model # of blocks = 252

6 1-3. Case Studies Parallelization from Simulink Model Lane departure warning Audio: Sound Effect MATLAB :Video and Image processing toolbox : vipldw_all.mdl professional-simulink-audio-equalizer Model # of blocks # of tasks Execution time compared with sequential implementation Windows Xeon Audio % 26% Lane % 39% esol et-kernel NaviEngine Page 6

7 2-1.Multi-Core Task Mapping for Hard Real- Systems Multi-Core Task Mapping Tool: STF (Smart Task Fitter) Generates static mapping of embedded software on multi-core CPUs Satisfying deadlines, execution order and other real-time restrictions Can generate mapping of hundreds of tasks within few seconds UseCase1: Easy migration of multi UseCase2: Integration of task systems from single-core to discrete systems onto multi-core multi-core STF generates task mapping automatically that satisfies execution order and real-time restrictions. Original Task Set Task Mapping Core 0 Deadline Core 1 Core 0 Core 1 Dependency Analysis Result Deadline Deadline Deadline Deadline Core 0 Core 1 Deadline Integration example: Three discrete real-time systems are integrated onto a dual-core CPU by using automatically mapping function of STF. Each task keeps execution order and deadline. Mapping Algorithm: 1) Task allocation with minimum response time 2) Reallocation by min-cut based placement

8 2-2. Flow of Task Allocation with Minimum Response Idol time Idol time is generated by dependency Core #0 Core #1 A B C D E F Response time based allocation Core #0 A D E Idol time reduction Core #1 B C F Minimize total response time of all tasks Core #0 A Short period task D E F Each task can be terminated in a short time Core #1 B C Efficiency

9 2-3. Min-cut based Re-allocation Minimize total dependency Core #0 Core #1 Cut = Dependency Target: Minimize the dependency = Minimum cut of graph Introducing LSI placement method Exchange Task 2 and Task 3 Score Task Table Scheduling Results Tool GUI Mincut

10 3-1. Software debugging environment by FPGA emulator Conventional software development environments 1. Instruction set simulator Advantage: Rich observability and controllability Disadvantage: Slow and less accuracy 2. Real Chip Advantage: Fast and accurate Disadvantage: Less observability and controllability Our proposed system Multi-core System CPU CPU CPU CPU Modeling Clock accurate communication TCP/IP Remote Debugging Page 10 C language based with various break point setting (clock/instruction), rich observability and rich controllability

11 3-2. Clock Accurate FPGA Emulator Debugging System FPGA: Processors models, bus, IROM, RAM, break and step control PC: RAM view, ROM view, program scroll, bus monitor, and control terminal Debugging fabric: Instruction step, clock step, break point setting on register, memory view and C code Clock Processor Processor Break and Step Clock Control IROM RAM IROM RAM PCI or PCIe Control Observe Simultaneous This system can handle clock and instruction level break setting. >> 20MHz

12 3-3. Case Study: Environment for Multi-core System with Shared Memory CPU#0 C value view CPU#1 Registers view Current Status C Program Scroll Assembler Scroll Update sign Shared memory view Page 12 Step and clock control Control View

13 Demo Videos Parallelization from Simulink Models Lane departure warning Compare with before parallelization and after parallelization Software debugging environment by FPGA emulator Dual core(2 OpenRISC Processor) model Each processor has local memory Shared memory C language interface Break points and step running DMA from memory for CPU1 to memory for CPU2

14 Conclusion Complicated software development for embedded multi-core systems Proposed 3 method 1. Parallel C Code Generation from Simulink Models 2. Multi-Core Task Mapping for Hard Real- Systems 3. Software development environment by FPGA emulator Case Studies indicates the effectiveness of the proposed tools They help efficient development for software design for multi-core systems Next target Analysis the performance and quality of software on multi-core processor

A Fast Hardware/Software Co-Verification Method for System-On-a-Chip by Using a C/C++ Simulator and FPGA Emulator with Shared Register Communication

A Fast Hardware/Software Co-Verification Method for System-On-a-Chip by Using a C/C++ Simulator and FPGA Emulator with Shared Register Communication A Fast Hardware/Software Co-Verification Method for System-On-a-Chip by Using a Simulator and Emulator with Shared Register Communication 19.2 Yuichi Nakamura, Kouhei Hosokawa, Ichiro Kuroda Media and

More information

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

MATLAB/Simulink 기반의프로그래머블 SoC 설계및검증 MATLAB/Simulink 기반의프로그래머블 SoC 설계및검증 이웅재부장 Application Engineering Group 2014 The MathWorks, Inc. 1 Agenda Introduction ZYNQ Design Process Model-Based Design Workflow Prototyping and Verification Processor

More information

3L Diamond. Multiprocessor DSP RTOS

3L Diamond. Multiprocessor DSP RTOS 3L Diamond Multiprocessor DSP RTOS What is 3L Diamond? Diamond is an operating system designed for multiprocessor DSP applications. With Diamond you develop efficient applications that use networks of

More information

ClearSpeed Visual Profiler

ClearSpeed Visual Profiler ClearSpeed Visual Profiler Copyright 2007 ClearSpeed Technology plc. All rights reserved. 12 November 2007 www.clearspeed.com 1 Profiling Application Code Why use a profiler? Program analysis tools are

More information

vs. GPU Performance Without the Answer University of Virginia Computer Engineering g Labs

vs. GPU Performance Without the Answer University of Virginia Computer Engineering g Labs Where is the Data? Why you Cannot Debate CPU vs. GPU Performance Without the Answer Chris Gregg and Kim Hazelwood University of Virginia Computer Engineering g Labs 1 GPUs and Data Transfer GPU computing

More information

Celeron EPIC Computer with GUI and Dual Ethernet SBC4685

Celeron EPIC Computer with GUI and Dual Ethernet SBC4685 Celeron EPIC Computer with GUI and Dual SBC4685 Features Ready to run Celeron/Pentium III computer Color flat-panel support Four serial ports CAN Bus interface PC/104 & PC/104-Plus expansion The SBC4685

More information

High-Performance 32-bit

High-Performance 32-bit High-Performance 32-bit Microcontroller with Built-in 11-Channel Serial Interface and Two High-Speed A/D Converter Units A 32-bit microcontroller optimal for digital home appliances that integrates various

More information

The Embedded computing platform. Four-cycle handshake. Bus protocol. Typical bus signals. Four-cycle example. CPU bus.

The Embedded computing platform. Four-cycle handshake. Bus protocol. Typical bus signals. Four-cycle example. CPU bus. The Embedded computing platform CPU bus. Memory. I/O devices. CPU bus Connects CPU to: memory; devices. Protocol controls communication between entities. Bus protocol Determines who gets to use the bus

More information

Developing and Integrating FPGA Co-processors with the Tic6x Family of DSP Processors

Developing and Integrating FPGA Co-processors with the Tic6x Family of DSP Processors Developing and Integrating FPGA Co-processors with the Tic6x Family of DSP Processors Paul Ekas, DSP Engineering, Altera Corp. pekas@altera.com, Tel: (408) 544-8388, Fax: (408) 544-6424 Altera Corp., 101

More information

Real-Time Testing in a Modern, Agile Development Workflow

Real-Time Testing in a Modern, Agile Development Workflow Real-Time Testing in a Modern, Agile Development Workflow Simon Eriksson Application Engineer 2015 The MathWorks, Inc. 1 Demo Going from Desktop Testing to Real-Time Testing 2 Key Take-Aways From This

More information

SimXMD Simulation-based HW/SW Co-debugging for field-programmable Systems-on-Chip

SimXMD Simulation-based HW/SW Co-debugging for field-programmable Systems-on-Chip SimXMD Simulation-based HW/SW Co-debugging for field-programmable Systems-on-Chip Ruediger Willenberg and Paul Chow High-Performance Reconfigurable Computing Group University of Toronto September 4, 2013

More information

SPACE: SystemC Partitioning of Architectures for Co-design of real-time Embedded systems

SPACE: SystemC Partitioning of Architectures for Co-design of real-time Embedded systems September 29, 2004 SPACE: Partitioning of Architectures for Co-design of real-time Embedded systems Jérome Chevalier 1, Maxime De Nanclas 1, Guy Bois 1 and Mostapha Aboulhamid 2 1. École Polytechnique

More information

Parallelizing FPGA Technology Mapping using GPUs. Doris Chen Deshanand Singh Aug 31 st, 2010

Parallelizing FPGA Technology Mapping using GPUs. Doris Chen Deshanand Singh Aug 31 st, 2010 Parallelizing FPGA Technology Mapping using GPUs Doris Chen Deshanand Singh Aug 31 st, 2010 Motivation: Compile Time In last 12 years: 110x increase in FPGA Logic, 23x increase in CPU speed, 4.8x gap Question:

More information

Introducing Simulink R2012b for Signal Processing & Communications Graham Reith Senior Team Leader, UK Application Engineering

Introducing Simulink R2012b for Signal Processing & Communications Graham Reith Senior Team Leader, UK Application Engineering Introducing Simulink R2012b for Signal Processing & Communications Graham Reith Senior Team Leader, UK Application Engineering 2012 The MathWorks, Inc. 1 Simulink R2012b the most significant upgrade to

More information

Parallel Architectures

Parallel Architectures Parallel Architectures Part 1: The rise of parallel machines Intel Core i7 4 CPU cores 2 hardware thread per core (8 cores ) Lab Cluster Intel Xeon 4/10/16/18 CPU cores 2 hardware thread per core (8/20/32/36

More information

Laboratory Exercise 3 Comparative Analysis of Hardware and Emulation Forms of Signed 32-Bit Multiplication

Laboratory Exercise 3 Comparative Analysis of Hardware and Emulation Forms of Signed 32-Bit Multiplication Laboratory Exercise 3 Comparative Analysis of Hardware and Emulation Forms of Signed 32-Bit Multiplication Introduction All processors offer some form of instructions to add, subtract, and manipulate data.

More information

SimXMD: Simulation-based HW/SW Co-Debugging for FPGA Embedded Systems

SimXMD: Simulation-based HW/SW Co-Debugging for FPGA Embedded Systems FPGAworld 2014 SimXMD: Simulation-based HW/SW Co-Debugging for FPGA Embedded Systems Ruediger Willenberg and Paul Chow High-Performance Reconfigurable Computing Group University of Toronto September 9,

More information

SimXMD Co-Debugging Software and Hardware in FPGA Embedded Systems

SimXMD Co-Debugging Software and Hardware in FPGA Embedded Systems University of Toronto FPGA Seminar SimXMD Co-Debugging Software and Hardware in FPGA Embedded Systems Ruediger Willenberg and Paul Chow High-Performance Reconfigurable Computing Group University of Toronto

More information

ATS-GPU Real Time Signal Processing Software

ATS-GPU Real Time Signal Processing Software Transfer A/D data to at high speed Up to 4 GB/s transfer rate for PCIe Gen 3 digitizer boards Supports CUDA compute capability 2.0+ Designed to work with AlazarTech PCI Express waveform digitizers Optional

More information

GPUs and GPGPUs. Greg Blanton John T. Lubia

GPUs and GPGPUs. Greg Blanton John T. Lubia GPUs and GPGPUs Greg Blanton John T. Lubia PROCESSOR ARCHITECTURAL ROADMAP Design CPU Optimized for sequential performance ILP increasingly difficult to extract from instruction stream Control hardware

More information

Robert Jamieson. Robs Techie PP Everything in this presentation is at your own risk!

Robert Jamieson. Robs Techie PP Everything in this presentation is at your own risk! Robert Jamieson Robs Techie PP Everything in this presentation is at your own risk! PC s Today Basic Setup Hardware pointers PCI Express How will it effect you Basic Machine Setup Set the swap space Min

More information

High Performance Packet Processing with FlexNIC

High Performance Packet Processing with FlexNIC High Performance Packet Processing with FlexNIC Antoine Kaufmann, Naveen Kr. Sharma Thomas Anderson, Arvind Krishnamurthy University of Washington Simon Peter The University of Texas at Austin Ethernet

More information

Designing with ALTERA SoC Hardware

Designing with ALTERA SoC Hardware Designing with ALTERA SoC Hardware Course Description This course provides all theoretical and practical know-how to design ALTERA SoC devices under Quartus II software. The course combines 60% theory

More information

E-Store: Fine-Grained Elastic Partitioning for Distributed Transaction Processing Systems

E-Store: Fine-Grained Elastic Partitioning for Distributed Transaction Processing Systems E-Store: Fine-Grained Elastic Partitioning for Distributed Transaction Processing Systems Rebecca Taft, Essam Mansour, Marco Serafini, Jennie Duggan, Aaron J. Elmore, Ashraf Aboulnaga, Andrew Pavlo, Michael

More information

SH-X3 Flexible SuperH Multi-core for High-performance and Low-power Embedded Systems

SH-X3 Flexible SuperH Multi-core for High-performance and Low-power Embedded Systems SH-X3 Flexible SuperH Multi-core for High-performance and Low-power Embedded Systems Shinichi Shibahara 1, Masashi Takada 2, Tatsuya Kamei 1, Kiyoshi Hayase 1, Yutaka Yoshida 1, Osamu Nishii 1, Toshihiro

More information

Platform for System LSI Development

Platform for System LSI Development Platform for System LSI Development Hitachi Review Vol. 50 (2001), No. 2 45 SOCplanner : Reducing Time and Cost in Developing Systems Tsuyoshi Shimizu Yoshio Okamura Yoshimune Hagiwara Akihisa Uchida OVERVIEW:

More information

System-on Solution from Altera and Xilinx

System-on Solution from Altera and Xilinx System-on on-a-programmable-chip Solution from Altera and Xilinx Xun Yang VLSI CAD Lab, Computer Science Department, UCLA FPGAs with Embedded Microprocessors Combination of embedded processors and programmable

More information

: : (91-44) (Office) (91-44) (Residence)

:  : (91-44) (Office) (91-44) (Residence) Course: VLSI Circuits (Video Course) Faculty Coordinator(s) : Prof. S. Srinivasan Department of Electrical Engineering Indian Institute of Technology Madras Chennai 600036 Email Telephone : srinis@iitm.ac.in,

More information

Department of Computer Science, Institute for System Architecture, Operating Systems Group. Real-Time Systems '08 / '09. Hardware.

Department of Computer Science, Institute for System Architecture, Operating Systems Group. Real-Time Systems '08 / '09. Hardware. Department of Computer Science, Institute for System Architecture, Operating Systems Group Real-Time Systems '08 / '09 Hardware Marcus Völp Outlook Hardware is Source of Unpredictability Caches Pipeline

More information

Pong. CSEE 4840 Spring 2012 Project Deisgn. 1 Introduction. Bo Li(bl2438) Jihong Zou (jz2428) Cong Liu (cl2991) Zuyang Cao (zc2220)

Pong. CSEE 4840 Spring 2012 Project Deisgn. 1 Introduction. Bo Li(bl2438) Jihong Zou (jz2428) Cong Liu (cl2991) Zuyang Cao (zc2220) Pong CSEE 4840 Spring 2012 Project Deisgn Bo Li(bl2438) Jihong Zou (jz2428) Cong Liu (cl2991) Zuyang Cao (zc2220) 1 Introduction Our project goal is to design a Pong video game. The rule is easy: Both

More information

High Performance Computing on GPUs using NVIDIA CUDA

High Performance Computing on GPUs using NVIDIA CUDA High Performance Computing on GPUs using NVIDIA CUDA Slides include some material from GPGPU tutorial at SIGGRAPH2007: http://www.gpgpu.org/s2007 1 Outline Motivation Stream programming Simplified HW and

More information

ENGG3380: Computer Organization and Design Lab5: Microprogrammed Control

ENGG3380: Computer Organization and Design Lab5: Microprogrammed Control ENGG330: Computer Organization and Design Lab5: Microprogrammed Control School of Engineering, University of Guelph Winter 201 1 Objectives: The objectives of this lab are to: Start Date: Week #5 201 Due

More information

Introduction to Microprocessor

Introduction to Microprocessor Introduction to Microprocessor Slide 1 Microprocessor A microprocessor is a multipurpose, programmable, clock-driven, register-based electronic device That reads binary instructions from a storage device

More information

RAVENNA WDM Virtual Sound Card (RVSC) Specification

RAVENNA WDM Virtual Sound Card (RVSC) Specification Draft 1.0 RAVENNA WDM Virtual Sound Card (RVSC) Specification This document describes the specification of the RAVENNA Virtual Sound Card (RVSC) with WDM API. ALC NetworX GmbH Am Loferfeld 58 81249 Munich

More information

How Real-Time Testing Improves the Design of a PMSM Controller

How Real-Time Testing Improves the Design of a PMSM Controller How Real-Time Testing Improves the Design of a PMSM Controller Prasanna Deshpande Control Design & Automation Application Engineer MathWorks 2015 The MathWorks, Inc. 1 Problem Statement: Design speed control

More information

The Nios II Family of Configurable Soft-core Processors

The Nios II Family of Configurable Soft-core Processors The Nios II Family of Configurable Soft-core Processors James Ball August 16, 2005 2005 Altera Corporation Agenda Nios II Introduction Configuring your CPU FPGA vs. ASIC CPU Design Instruction Set Architecture

More information

SDA: Software-Defined Accelerator for general-purpose big data analysis system

SDA: Software-Defined Accelerator for general-purpose big data analysis system SDA: Software-Defined Accelerator for general-purpose big data analysis system Jian Ouyang(ouyangjian@baidu.com), Wei Qi, Yong Wang, Yichen Tu, Jing Wang, Bowen Jia Baidu is beyond a search engine Search

More information

ECE 111 ECE 111. Advanced Digital Design. Advanced Digital Design Winter, Sujit Dey. Sujit Dey. ECE Department UC San Diego

ECE 111 ECE 111. Advanced Digital Design. Advanced Digital Design Winter, Sujit Dey. Sujit Dey. ECE Department UC San Diego Advanced Digital Winter, 2009 ECE Department UC San Diego dey@ece.ucsd.edu http://esdat.ucsd.edu Winter 2009 Advanced Digital Objective: of a hardware-software embedded system using advanced design methodologies

More information

IO virtualization. Michael Kagan Mellanox Technologies

IO virtualization. Michael Kagan Mellanox Technologies IO virtualization Michael Kagan Mellanox Technologies IO Virtualization Mission non-stop s to consumers Flexibility assign IO resources to consumer as needed Agility assignment of IO resources to consumer

More information

Agenda. Programming FPGAs Why Are They Useful? NI FPGA Hardware Common Applications for FPGAs How to Learn More

Agenda. Programming FPGAs Why Are They Useful? NI FPGA Hardware Common Applications for FPGAs How to Learn More Agenda Programming FPGAs Why Are They Useful? NI FPGA Hardware Common Applications for FPGAs How to Learn More FPGA Technology Programmable Interconnects Logic Blocks I/O Blocks FPGA Logic Implementation

More information

EMUL-PPC-PC. Getting Started Guide. Version 1.0

EMUL-PPC-PC. Getting Started Guide. Version 1.0 EMUL-PPC-PC Getting Started Guide Version 1.0 EMUL PowerPC Getting Started Guide Edition1 ICE Technology. All rights reserved worldwide. Contents Warranty Information European CE Requirements User Responsibility

More information

Parallelism and Concurrency. COS 326 David Walker Princeton University

Parallelism and Concurrency. COS 326 David Walker Princeton University Parallelism and Concurrency COS 326 David Walker Princeton University Parallelism What is it? Today's technology trends. How can we take advantage of it? Why is it so much harder to program? Some preliminary

More information

A Process Model suitable for defining and programming MpSoCs

A Process Model suitable for defining and programming MpSoCs A Process Model suitable for defining and programming MpSoCs MpSoC-Workshop at Rheinfels, 29-30.6.2010 F. Mayer-Lindenberg, TU Hamburg-Harburg 1. Motivation 2. The Process Model 3. Mapping to MpSoC 4.

More information

Ultra-Fast NoC Emulation on a Single FPGA

Ultra-Fast NoC Emulation on a Single FPGA The 25 th International Conference on Field-Programmable Logic and Applications (FPL 2015) September 3, 2015 Ultra-Fast NoC Emulation on a Single FPGA Thiem Van Chu, Shimpei Sato, and Kenji Kise Tokyo

More information

Embedded Systems. 7. System Components

Embedded Systems. 7. System Components Embedded Systems 7. System Components Lothar Thiele 7-1 Contents of Course 1. Embedded Systems Introduction 2. Software Introduction 7. System Components 10. Models 3. Real-Time Models 4. Periodic/Aperiodic

More information

SDACCEL DEVELOPMENT ENVIRONMENT. The Xilinx SDAccel Development Environment. Bringing The Best Performance/Watt to the Data Center

SDACCEL DEVELOPMENT ENVIRONMENT. The Xilinx SDAccel Development Environment. Bringing The Best Performance/Watt to the Data Center SDAccel Environment The Xilinx SDAccel Development Environment Bringing The Best Performance/Watt to the Data Center Introduction Data center operators constantly seek more server performance. Currently

More information

Digital Electronics 27. Digital System Design using PLDs

Digital Electronics 27. Digital System Design using PLDs 1 Module -27 Digital System Design 1. Introduction 2. Digital System Design 2.1 Standard (Fixed function) ICs based approach 2.2 Programmable ICs based approach 3. Comparison of Digital System Design approaches

More information

Design and Verify Embedded Signal Processing Systems Using MATLAB and Simulink

Design and Verify Embedded Signal Processing Systems Using MATLAB and Simulink Design and Verify Embedded Signal Processing Systems Using MATLAB and Simulink Giorgia Zucchelli, Application Engineer, MathWorks 10 January 2013, Technical University Eindhoven 2013 The MathWorks, Inc.

More information

Hardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University

Hardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University Hardware Design Environments Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University Outline Welcome to COE 405 Digital System Design Design Domains and Levels of Abstractions Synthesis

More information

Towards a codelet-based runtime for exascale computing. Chris Lauderdale ET International, Inc.

Towards a codelet-based runtime for exascale computing. Chris Lauderdale ET International, Inc. Towards a codelet-based runtime for exascale computing Chris Lauderdale ET International, Inc. What will be covered Slide 2 of 24 Problems & motivation Codelet runtime overview Codelets & complexes Dealing

More information

Chapter 5 - Input / Output

Chapter 5 - Input / Output Chapter 5 - Input / Output Luis Tarrataca luis.tarrataca@gmail.com CEFET-RJ L. Tarrataca Chapter 5 - Input / Output 1 / 90 1 Motivation 2 Principle of I/O Hardware I/O Devices Device Controllers Memory-Mapped

More information

Reconfigurable Computing. Introduction

Reconfigurable Computing. Introduction Reconfigurable Computing Tony Givargis and Nikil Dutt Introduction! Reconfigurable computing, a new paradigm for system design Post fabrication software personalization for hardware computation Traditionally

More information

Parallelization of Spider Planner

Parallelization of Spider Planner Parallelization of Spider Planner Morten Smedsrud, SINTEF 1 SPIDER - A Generic VRP Solver Designed to be widely applicable Based on generic, rich model Predictive route planning Plan repair, reactive planning

More information

An NVMe-based Offload Engine for Storage Acceleration Sean Gibb, Eideticom Stephen Bates, Raithlin

An NVMe-based Offload Engine for Storage Acceleration Sean Gibb, Eideticom Stephen Bates, Raithlin An NVMe-based Offload Engine for Storage Acceleration Sean Gibb, Eideticom Stephen Bates, Raithlin 1 Overview Acceleration for Storage NVMe for Acceleration How are we using (abusing ;-)) NVMe to support

More information

NIOS CPU Based Embedded Computer System on Programmable Chip

NIOS CPU Based Embedded Computer System on Programmable Chip NIOS CPU Based Embedded Computer System on Programmable Chip 1 Lab Objectives EE8205: Embedded Computer Systems NIOS-II SoPC: PART-I This lab has been constructed to introduce the development of dedicated

More information

Building and Using the ATLAS Transactional Memory System

Building and Using the ATLAS Transactional Memory System Building and Using the ATLAS Transactional Memory System Njuguna Njoroge, Sewook Wee, Jared Casper, Justin Burdick, Yuriy Teslyar, Christos Kozyrakis, Kunle Olukotun Computer Systems Laboratory Stanford

More information

8. Best Practices for Incremental Compilation Partitions and Floorplan Assignments

8. Best Practices for Incremental Compilation Partitions and Floorplan Assignments 8. Best Practices for Incremental Compilation Partitions and Floorplan Assignments QII51017-9.0.0 Introduction The Quartus II incremental compilation feature allows you to partition a design, compile partitions

More information

Organic Computing. Dr. rer. nat. Christophe Bobda Prof. Dr. Rolf Wanka Department of Computer Science 12 Hardware-Software-Co-Design

Organic Computing. Dr. rer. nat. Christophe Bobda Prof. Dr. Rolf Wanka Department of Computer Science 12 Hardware-Software-Co-Design Dr. rer. nat. Christophe Bobda Prof. Dr. Rolf Wanka Department of Computer Science 12 Hardware-Software-Co-Design 1 Reconfigurable Computing Platforms 2 The Von Neumann Computer Principle In 1945, the

More information

Topic & Scope. Content: The course gives

Topic & Scope. Content: The course gives Topic & Scope Content: The course gives an overview of network processor cards (architectures and use) an introduction of how to program Intel IXP network processors some ideas of how to use network processors

More information

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

A Deterministic Flow Combining Virtual Platforms, Emulation, and Hardware Prototypes A Deterministic Flow Combining Virtual Platforms, Emulation, and Hardware Prototypes Presented at Design Automation Conference (DAC) San Francisco, CA, June 4, 2012. Presented by Chuck Cruse FPGA Hardware

More information

RTE-V850/SA1-IE. Hardware User's Manual. RealTimeEvaluator

RTE-V850/SA1-IE. Hardware User's Manual. RealTimeEvaluator RealTimeEvaluator CONTENTS 1. INTRODUCTION...2 2. MAIN FEATURES...3 3. HARDWARE SPECIFICATION...4 4. SYSTEM CONFIGURATION...5 5. INSTALLATION...6 6. SETTING THE DIP SWITCH...7 7. DISPLAY LED...7 8. CONNECTING

More information

Software Driven Verification at SoC Level. Perspec System Verifier Overview

Software Driven Verification at SoC Level. Perspec System Verifier Overview Software Driven Verification at SoC Level Perspec System Verifier Overview June 2015 IP to SoC hardware/software integration and verification flows Cadence methodology and focus Applications (Basic to

More information

27 March 2018 Mikael Arguedas and Morgan Quigley

27 March 2018 Mikael Arguedas and Morgan Quigley 27 March 2018 Mikael Arguedas and Morgan Quigley Separate devices: (prototypes 0-3) Unified camera: (prototypes 4-5) Unified system: (prototypes 6+) USB3 USB Host USB3 USB2 USB3 USB Host PCIe root

More information

System Debugging Tools Overview

System Debugging Tools Overview 9 QII53027 Subscribe About Altera System Debugging Tools The Altera system debugging tools help you verify your FPGA designs. As your product requirements continue to increase in complexity, the time you

More information

Simplify System Complexity

Simplify System Complexity 1 2 Simplify System Complexity With the new high-performance CompactRIO controller Arun Veeramani Senior Program Manager National Instruments NI CompactRIO The Worlds Only Software Designed Controller

More information

Computer and Hardware Architecture I. Benny Thörnberg Associate Professor in Electronics

Computer and Hardware Architecture I. Benny Thörnberg Associate Professor in Electronics Computer and Hardware Architecture I Benny Thörnberg Associate Professor in Electronics Hardware architecture Computer architecture The functionality of a modern computer is so complex that no human can

More information

Virtuozzo Containers

Virtuozzo Containers Parallels Virtuozzo Containers White Paper An Introduction to Operating System Virtualization and Parallels Containers www.parallels.com Table of Contents Introduction... 3 Hardware Virtualization... 3

More information

Embedded Systems: Architecture

Embedded Systems: Architecture Embedded Systems: Architecture Jinkyu Jeong (Jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu ICE3028: Embedded Systems Design, Fall 2018, Jinkyu Jeong (jinkyu@skku.edu)

More information

Solving the Data Transfer Bottleneck in Digitizers

Solving the Data Transfer Bottleneck in Digitizers Solving the Data Transfer Bottleneck in Digitizers With most modern PC based digitizers and data acquisition systems a common problem is caused by the fact that the ADC technology usually runs in advance

More information

Porting Nouveau to Tegra K1

Porting Nouveau to Tegra K1 Porting Nouveau to Tegra K1 How NVIDIA became a Nouveau contributor Alexandre Courbot, NVIDIA FOSDEM 2015 The Story So Far... In 2014 NVIDIA released the Tegra K1 SoC 32 bit quad-core or 64-bit dual core

More information

DSP/BIOS Kernel Scalable, Real-Time Kernel TM. for TMS320 DSPs. Product Bulletin

DSP/BIOS Kernel Scalable, Real-Time Kernel TM. for TMS320 DSPs. Product Bulletin Product Bulletin TM DSP/BIOS Kernel Scalable, Real-Time Kernel TM for TMS320 DSPs Key Features: Fast, deterministic real-time kernel Scalable to very small footprint Tight integration with Code Composer

More information

[Sub Track 1-3] FPGA/ASIC 을타겟으로한알고리즘의효율적인생성방법및신기능소개

[Sub Track 1-3] FPGA/ASIC 을타겟으로한알고리즘의효율적인생성방법및신기능소개 [Sub Track 1-3] FPGA/ASIC 을타겟으로한알고리즘의효율적인생성방법및신기능소개 정승혁과장 Senior Application Engineer MathWorks Korea 2015 The MathWorks, Inc. 1 Outline When FPGA, ASIC, or System-on-Chip (SoC) hardware is needed Hardware

More information

Chapter 5: ASICs Vs. PLDs

Chapter 5: ASICs Vs. PLDs Chapter 5: ASICs Vs. PLDs 5.1 Introduction A general definition of the term Application Specific Integrated Circuit (ASIC) is virtually every type of chip that is designed to perform a dedicated task.

More information

The Xilinx XC6200 chip, the software tools and the board development tools

The Xilinx XC6200 chip, the software tools and the board development tools The Xilinx XC6200 chip, the software tools and the board development tools What is an FPGA? Field Programmable Gate Array Fully programmable alternative to a customized chip Used to implement functions

More information

System Design and Methodology/ Embedded Systems Design (Modeling and Design of Embedded Systems)

System Design and Methodology/ Embedded Systems Design (Modeling and Design of Embedded Systems) Design&Methodologies Fö 1&2-1 Design&Methodologies Fö 1&2-2 Course Information Design and Methodology/ Embedded s Design (Modeling and Design of Embedded s) TDTS07/TDDI08 Web page: http://www.ida.liu.se/~tdts07

More information

Rapid Development Platform for C-Programmable DSP using MATLAB and Simulink

Rapid Development Platform for C-Programmable DSP using MATLAB and Simulink Rapid Development Platform for C-Programmable DSP using MATLAB and Simulink Texas Instruments India, Audio and Imaging Group Supriyo Palit Doug Roberson Mukund Navada Diljith Thodi 1 Outline Problem Statement

More information

Embarquez votre Intelligence Artificielle (IA) sur CPU, GPU et FPGA

Embarquez votre Intelligence Artificielle (IA) sur CPU, GPU et FPGA Embarquez votre Intelligence Artificielle (IA) sur CPU, GPU et FPGA Pierre Nowodzienski Engineer pierre.nowodzienski@mathworks.fr 2018 The MathWorks, Inc. 1 From Data to Business value Make decisions Get

More information

Flexible Architecture Research Machine (FARM)

Flexible Architecture Research Machine (FARM) Flexible Architecture Research Machine (FARM) RAMP Retreat June 25, 2009 Jared Casper, Tayo Oguntebi, Sungpack Hong, Nathan Bronson Christos Kozyrakis, Kunle Olukotun Motivation Why CPUs + FPGAs make sense

More information

Building and Programming complete MPSoCs in reconfigurable systems. Kees Vissers MPsoC 2007

Building and Programming complete MPSoCs in reconfigurable systems. Kees Vissers MPsoC 2007 Building and Programming complete MPSoCs in reconfigurable systems Kees Vissers MPSoC 2007 Outline Control Processors and Operating Systems in FPGAs XUP, HDTV processing UC Berkeley Bee2 and programming

More information

Design and Verify Embedded Signal Processing Systems Using MATLAB and Simulink

Design and Verify Embedded Signal Processing Systems Using MATLAB and Simulink Design and Verify Embedded Signal Processing Systems Using MATLAB and Simulink Giorgia Zucchelli, Application Engineer, MathWorks 17 January 2011, Technical University Eindhoven 1 Agenda Introduction to

More information

From Concept to Silicon

From Concept to Silicon From Concept to Silicon How an idea becomes a part of a new chip at ATI Richard Huddy ATI Research From Concept to Silicon Creating a new Visual Processing Unit (VPU) is a complex task involving many people

More information

OpenACC Course. Office Hour #2 Q&A

OpenACC Course. Office Hour #2 Q&A OpenACC Course Office Hour #2 Q&A Q1: How many threads does each GPU core have? A: GPU cores execute arithmetic instructions. Each core can execute one single precision floating point instruction per cycle

More information

Tile Processor (TILEPro64)

Tile Processor (TILEPro64) Tile Processor Case Study of Contemporary Multicore Fall 2010 Agarwal 6.173 1 Tile Processor (TILEPro64) Performance # of cores On-chip cache (MB) Cache coherency Operations (16/32-bit BOPS) On chip bandwidth

More information

DNNBuilder: an Automated Tool for Building High-Performance DNN Hardware Accelerators for FPGAs

DNNBuilder: an Automated Tool for Building High-Performance DNN Hardware Accelerators for FPGAs IBM Research AI Systems Day DNNBuilder: an Automated Tool for Building High-Performance DNN Hardware Accelerators for FPGAs Xiaofan Zhang 1, Junsong Wang 2, Chao Zhu 2, Yonghua Lin 2, Jinjun Xiong 3, Wen-mei

More information

_ V Renesas R8C In-Circuit Emulation. Contents. Technical Notes

_ V Renesas R8C In-Circuit Emulation. Contents. Technical Notes _ V9.12. 225 Technical Notes Renesas R8C In-Circuit Emulation This document is intended to be used together with the CPU reference manual provided by the silicon vendor. This document assumes knowledge

More information

Pactron FPGA Accelerated Computing Solutions

Pactron FPGA Accelerated Computing Solutions Pactron FPGA Accelerated Computing Solutions Intel Xeon + Altera FPGA 2015 Pactron HJPC Corporation 1 Motivation for Accelerators Enhanced Performance: Accelerators compliment CPU cores to meet market

More information

Virtual EM Inc. Ann Arbor, Michigan, USA

Virtual EM Inc. Ann Arbor, Michigan, USA Functional Description of the Architecture of a Special Purpose Processor for Orders of Magnitude Reduction in Run Time in Computational Electromagnetics Tayfun Özdemir Virtual EM Inc. Ann Arbor, Michigan,

More information

Software Defined Modem A commercial platform for wireless handsets

Software Defined Modem A commercial platform for wireless handsets Software Defined Modem A commercial platform for wireless handsets Charles F Sturman VP Marketing June 22 nd ~ 24 th Brussels charles.stuman@cognovo.com www.cognovo.com Agenda SDM Separating hardware from

More information

New System Solutions for Laser Printer Applications by Oreste Emanuele Zagano STMicroelectronics

New System Solutions for Laser Printer Applications by Oreste Emanuele Zagano STMicroelectronics New System Solutions for Laser Printer Applications by Oreste Emanuele Zagano STMicroelectronics Introduction Recently, the laser printer market has started to move away from custom OEM-designed 1 formatter

More information

RTE-V853-IE. Hardware User's Manual. RealTimeEvaluator

RTE-V853-IE. Hardware User's Manual. RealTimeEvaluator RealTimeEvaluator CONTENTS 1. INTRODUCTION... 2 2. MAIN FEATURES... 3 3. HARDWARE SPECIFICATION... 4 4. SYSTEM CONFIGURATION... 5 5. INSTALLATION... 6 6. SETTING THE DIP SWITCH... 7 7. DISPLAY LED... 7

More information

Software Development Using Full System Simulation with Freescale QorIQ Communications Processors

Software Development Using Full System Simulation with Freescale QorIQ Communications Processors Patrick Keliher, Simics Field Application Engineer Software Development Using Full System Simulation with Freescale QorIQ Communications Processors 1 2013 Wind River. All Rights Reserved. Agenda Introduction

More information

Exploration of Cache Coherent CPU- FPGA Heterogeneous System

Exploration of Cache Coherent CPU- FPGA Heterogeneous System Exploration of Cache Coherent CPU- FPGA Heterogeneous System Wei Zhang Department of Electronic and Computer Engineering Hong Kong University of Science and Technology 1 Outline ointroduction to FPGA-based

More information

Rapidly Developing Embedded Systems Using Configurable Processors

Rapidly Developing Embedded Systems Using Configurable Processors Class 413 Rapidly Developing Embedded Systems Using Configurable Processors Steven Knapp (sknapp@triscend.com) (Booth 160) Triscend Corporation www.triscend.com Copyright 1998-99, Triscend Corporation.

More information

System Unit Components Chapter2

System Unit Components Chapter2 System Unit Components Chapter2 ITBIS105 IS-IT-UOB 2013 The System Unit What is the system unit? Case that contains electronic components of the computer used to process data Sometimes called the chassis

More information

Serial. Parallel. CIT 668: System Architecture 2/14/2011. Topics. Serial and Parallel Computation. Parallel Computing

Serial. Parallel. CIT 668: System Architecture 2/14/2011. Topics. Serial and Parallel Computation. Parallel Computing CIT 668: System Architecture Parallel Computing Topics 1. What is Parallel Computing? 2. Why use Parallel Computing? 3. Types of Parallelism 4. Amdahl s Law 5. Flynn s Taxonomy of Parallel Computers 6.

More information

Co-synthesis and Accelerator based Embedded System Design

Co-synthesis and Accelerator based Embedded System Design Co-synthesis and Accelerator based Embedded System Design COE838: Embedded Computer System http://www.ee.ryerson.ca/~courses/coe838/ Dr. Gul N. Khan http://www.ee.ryerson.ca/~gnkhan Electrical and Computer

More information

Lecture 41: Introduction to Reconfigurable Computing

Lecture 41: Introduction to Reconfigurable Computing inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture 41: Introduction to Reconfigurable Computing Michael Le, Sp07 Head TA April 30, 2007 Slides Courtesy of Hayden So, Sp06 CS61c Head TA Following

More information

Difference Engine: Harnessing Memory Redundancy in Virtual Machines (D. Gupta et all) Presented by: Konrad Go uchowski

Difference Engine: Harnessing Memory Redundancy in Virtual Machines (D. Gupta et all) Presented by: Konrad Go uchowski Difference Engine: Harnessing Memory Redundancy in Virtual Machines (D. Gupta et all) Presented by: Konrad Go uchowski What is Virtual machine monitor (VMM)? Guest OS Guest OS Guest OS Virtual machine

More information

Interconnection Network for Tightly Coupled Accelerators Architecture

Interconnection Network for Tightly Coupled Accelerators Architecture Interconnection Network for Tightly Coupled Accelerators Architecture Toshihiro Hanawa, Yuetsu Kodama, Taisuke Boku, Mitsuhisa Sato Center for Computational Sciences University of Tsukuba, Japan 1 What

More information

Re-architecting Virtualization in Heterogeneous Multicore Systems

Re-architecting Virtualization in Heterogeneous Multicore Systems Re-architecting Virtualization in Heterogeneous Multicore Systems Himanshu Raj, Sanjay Kumar, Vishakha Gupta, Gregory Diamos, Nawaf Alamoosa, Ada Gavrilovska, Karsten Schwan, Sudhakar Yalamanchili College

More information