Programming Heterogeneous Embedded Systems for IoT

Size: px
Start display at page:

Download "Programming Heterogeneous Embedded Systems for IoT"

Transcription

1 Programming Heterogeneous Embedded Systems for IoT Jeronimo Castrillon Chair for Compiler Construction TU Dresden Get-together toward a sustainable collaboration in IoT April 18 th, Tunis, Tunisia

2 Internet of things Distributed Energy efficient Real time Resource constrained Highly heterogeneous Source: Open clipart Multiple domains 2 J. Castrillon. Get-together for IoT, Apr. 2016

3 Internet of things Distributed Energy efficient Real time IoT/Systems-of-Systems: Extremely hard to program and reason about Resource constrained Highly heterogeneous Source: Open clipart Multiple domains 3 J. Castrillon. Get-together for IoT, Apr. 2016

4 Independent nodes: Trends PE Count in SoCs MEM subsystem DMAs, semaphores PMU L2 VLIW DSP,L2 NoC Peripherals Communication support HW ueues Network Processor Packet DMA Number of PEs OMAP1 OMAP Family Snapdragon Family OMAP2 OMAP4470 OMAP4430 OMAP3640 OMAP3530 S3 MSM8060 S1 QSD8650 S2 MSM8255 OMAP5430 S4 APQ8064 S4 MSM Year [Castrill14] Single node: HW complexity SW complexity Increasing heterogeneity Complex interconnect Increasing number of cores Not anymore a simple control loop Need expressive programming models 4 J. Castrillon. Get-together for IoT, Apr. 2016

5 Independent nodes: Trends PE Count in SoCs MEM subsystem DMAs, semaphores PMU L2 VLIW DSP,L2 NoC Peripherals Communication support HW ueues Network Processor Packet DMA Number of PEs OMAP1 OMAP Family Snapdragon Family OMAP2 OMAP4470 OMAP4430 OMAP3640 OMAP3530 S3 MSM8060 S1 QSD8650 S2 MSM8255 OMAP5430 S4 APQ8064 S4 MSM Year [Castrill14] Single node: HW complexity SW complexity Increasing heterogeneity Complex interconnect Increasing number of cores Not anymore a simple control loop Need expressive programming models 5 J. Castrillon. Get-together for IoT, Apr. 2016

6 Outline Introduction Models of computation Tool flows Outlook for IoT Summary 6 J. Castrillon. Get-together for IoT, Apr. 2016

7 Outline Introduction Models of computation Tool flows Outlook for IoT Summary 7 J. Castrillon. Get-together for IoT, Apr. 2016

8 What is a MoC? A model of computation is the definition of the set of allowable operations used in computation and their respective costs. It is used for measuring the complexity of an algorithm in execution time and or memory space Wikipedia: From computational theory Model of computations are abstract specifications of how a computation can progress OfComputation A Model of computation is a collection of rules that govern the interaction of components 8 J. Castrillon. Get-together for IoT, Apr Ptolemaeus, C. (Ed.). System Design, Modeling, and Simulation using Ptolemy II Ptolemy.org, 2014

9 (Parallel) Models of Computation (MoCs): Rules A Model of computation is a collection of rules that govern the interaction of components What are the components Threads, processes, actors, tasks or procedures Execution and concurrency Order and determinism Communication mechanisms: How do components exchange data Asynchronous or rendezvous, perfect or lossy Ptolemaeus, C. (Ed.). System Design, Modeling, and Simulation using Ptolemy II Ptolemy.org, J. Castrillon. Get-together for IoT, Apr. 2016

10 Why MoCs? Depending on the rules, MoCs feature different properties Properties Relate to the power: what can be computed with the model Makes it easier for automatic tools to understand and synthesize code E.g., compile-time optimization, support resource constraints, Examples Can the application run on bounded memory? Can we compute the maximal throughput? Is the execution deterministic? 10 J. Castrillon. Get-together for IoT, Apr. 2016

11 MoCs: Overview For IoT in general: Mixture of MoCs interacting (across different domains. In this talk: Software (concurrent, dataflow + PN + time) Ptolemaeus, C. (Ed.). System Design, Modeling, and Simulation using Ptolemy II Ptolemy.org, J. Castrillon. Get-together for IoT, Apr. 2016

12 Homogeneous Synchronous Dataflow (HSDF) Graph with simple execution semantics e4 e4 e4 a1 a2 a3 e1 e3 e2 a1 a2 a3 e1 e3 e2 a1 a2 a3 e1 e3 e2 Functional, graph model can be extended to model Bounded buffers Schedules a1 a2 c 12 J. Castrillon. Get-together for IoT, Apr. 2016

13 HSDF: schedules Overlapping schedule How to delay the execution of a3?, how to prevent a4 from executing earlier? a2 a3 PE2 a3 a2 a3 a2 a3 a2 a1 a4 PE1 a4 a1 a4 a1 a4 a1 Time 13 J. Castrillon. Get-together for IoT, Apr. 2016

14 Outline Introduction Models of computation Tool flows Outlook for IoT Summary 14 J. Castrillon. Get-together for IoT, Apr. 2016

15 Programming flow: Overview MoC-based Application Non-functional specification Architecture model MEM subsystem DMAs, semaphores PMU L2 Analysis Synthesis Code generation VLIW DSP,L2 NoC Peripherals [Castrill11a] Communication support HW ueues Network Processor Packet DMA PNargs_ifft_r.ID = 6U; PNargs_ifft_r.PNchannel_fre_coef = filtered_coe PNargs_ifft_r.PNnum_fre_coef = 0U; PNargs_ifft_r.PNchannel_time_coef = sink_right; PNargs_ifft_r.channel = 1; sink_left = IPCllmrf_open(3, 1, 1); sink_right = IPCllmrf_open(7, 1, 1); PNargs_sink.ID = 7U; PNargs_sink.PNchannel_in_left = sink_left; PNargs_sink.PNnum_in_left = 0U; PNargs_sink.PNchannel_in_right = sink_right; PNargs_sink.PNnum_in_right = 0U; taskparams.arg0 = (xdc_uarg)&pnargs_src; taskparams.priority = 1; ti_sysbios_knl_task_create((ti_sysbios_knl_task_func &taskparams, &eb); glob_proc_cnt++; hasprocess = 1; taskparams.arg0 = (xdc_uarg)&pnargs_fft_l; taskparams.priority = 1; ti_sysbios_knl_task_create((ti_sysbios_knl_task_func ft_templ, &taskparams, &eb); glob_proc_cnt++; hasprocess = 1; taskparams.arg0 = (xdc_uarg)&pnargs_ifft_r; taskparams.priority = 1; ti_sysbios_knl_task_create((ti_sysbios_knl_task_func fft_templ, &taskparams, &eb); glob_proc_cnt++; hasprocess = 1; taskparams.arg0 = (xdc_uarg)&pnargs_sink; taskparams.priority = 1; 15 J. Castrillon. Get-together for IoT, Apr. 2016

16 Application model: Beyond HSDF SDF: Popular model for static applications Possible to derive euivalent HSDF Dynamic DF (DDF): For dynamic applications Flexible firing rules (even non-determinism) 2 e a1 a2 a3 e1 e3 6 2 e2 i1 a1 a2 a3 1 Kahn Process Networks (KPN): Also dynamic Deterministic No firing semantics i2 e4 p1 p2 p3 e1 e3 16 J. Castrillon. Get-together for IoT, Apr e2

17 Non/extra-functional: Constraints Timing constraints Process throughput Latencies along paths 1 ms 3 ms 1 ms Time triggering Mapping constraints Processes to processors Channels to primitives Platform constraints Subset of resources (processors or memories) Utilization 17 J. Castrillon. Get-together for IoT, Apr. 2016

18 Architecture model Key for retargetable tool flows Abstract for speed Relevant components: processors (types), interconnect and memories MEM subsystem DMAs, semaphores PMU L2 VLIW DSP,L2 NoC Peripherals Communication support HW ueues Network Processor Packet DMA Why? Understand effect of executing an actor on the different resources for a schedule PE2 PE1 a4 a3 a1 a2 a4 a3 a1 a2 a4 a3 a1 a2 Time 18 J. Castrillon. Get-together for IoT, Apr. 2016

19 Modeling processors Abstract models with functional units, latencies [Eusse14] Execution counts, branch stats and execution traces 19 J. Castrillon. Get-together for IoT, Apr. 2016

20 Modeling communication High-level: Available APIs for implementing application channels Benchmarking for different platforms Duo-PE3 VDSP RISC Duo-PE2 VDSP RISC FPGA- Interface ADPLL Router (1,0) hs-serial Router (0,0) Duo-PE0 VDSP RISC Duo-PE1 VDSP RISC FEC Tomahawk2_core hs-serial hs-serial CM APP Duo-PE7 VDSP RISC Router (1,1) hs-serial Router (0,1) UART- GPIO parallel Duo-PE4 VDSP RISC ADPLL DDR- SDRAM- Interface [Oden13] AVS Contr. [Arnold13] SD Duo-PE6 VDSP RISC hs-serial Duo-PE5 VDSP RISC 20 J. Castrillon. Get-together for IoT, Apr. 2016

21 Modeling communication High-level: Available APIs for implementing application channels Benchmarking for different platforms Duo-PE3 VDSP RISC Duo-PE2 VDSP RISC FPGA- Interface ADPLL AVS Contr. Router (1,0) hs-serial Router (0,0) [Arnold13] Duo-PE0 VDSP RISC Duo-PE1 VDSP RISC FEC SD Tomahawk2_core hs-serial hs-serial CM APP Duo-PE7 VDSP RISC Duo-PE6 VDSP RISC hs-serial Router (1,1) hs-serial Router (0,1) UART- GPIO parallel Duo-PE4 VDSP RISC Duo-PE5 VDSP RISC ADPLL DDR- SDRAM- Interface [Oden13] J. Castrillon. Get-together for IoT, Apr. 2016

22 Analysis and synthesis: Overview For dynamic models! Application specification Analysis: Instrumentation, profiling, tracing Seuential performance estimation Time-annotated traces Architecture model Mapping and scheduling Parallel perf. estimation Mapping configuration Non-functional specification Increase resources 22 J. Castrillon. Get-together for IoT, Apr. 2016

23 Tracing: Dealing with dynamic behavior KPNs do not have firing semantics White model of processes: source code analysis and tracing Tracing: instrumentation, token logging and event recording Tracing Mapping Resources Se. perf. estimation Par. perf. estimation Elapsed time from processor models 23 J. Castrillon. Get-together for IoT, Apr. 2016

24 Trace-based synthesis Non-functional specification Mapping, scheduling, buffer sizing Mapping configuration Tracing Mapping Resources Se. perf. estimation Par. perf. estimation Time-annotated traces t t t Architecture model [Castrill10, Castrill10b, Castrill13] Synthesis based on code and trace analysis (using simple heuristics) Mapping of processes and channels Scheduling policies Buffer sizing 24 J. Castrillon. Get-together for IoT, Apr. 2016

25 Mapping, scheduling and buffer sizing Graph representation of event traces Reason about deadlocks Find critical path Tracing Mapping Resources Se. perf. estimation Par. perf. estimation... [Castrill12] Downside: For dynamic portions of the application, graph is input dependent 25 J. Castrillon. Get-together for IoT, Apr. 2016

26 Multiple traces (ongoing work) Different input à different behavior (traces) Characterize behaviors and impact on mapping performance Tracing Mapping Resources Se. perf. estimation Par. perf. estimation... Mapping configuration... Mapping configuration [Goens15]... Mapping configuration 26 J. Castrillon. Get-together for IoT, Apr. 2016

27 Multiple traces (2) Different input à different behavior (traces) Characterize behaviors and impact on mapping performance Tracing Mapping Resources Se. perf. estimation Par. perf. estimation... Mapping configuration Performance... Mapping configuration [Goens15] Behavior... Mapping configuration 27 J. Castrillon. Get-together for IoT, Apr. 2016

28 Parallel performance estimation Mapping configuration Trace Replay Module (TRM) Context switch Blocked time... Tracing Mapping Resources Se. perf. estimation Par. perf. estimation Time-annotated traces t t t Architecture model t Grantt Chart, platform utilization, channel profiles,... Discrete event simulator to evaluate a solution Replay traces according to mapping Extract costs from architecture file (NoC modeling, context switches, communication) 28 J. Castrillon. Get-together for IoT, Apr. 2016

29 Increasing resources Add resources to the synthesis until constraints are met Tracing Mapping Se. perf. estimation Par. perf. estimation Mapping and scheduling Parallel perf. estimation Resources Increase resources Add processors and memories Easy for homogeneous platforms Non trivial for heterogeneous platforms (ongoing work) 29 J. Castrillon. Get-together for IoT, Apr. 2016

30 Multiple mapping configurations In case multiple applications may run on the system (or system of systems) Need different configurations Adapt to resource and energy budgets Reason about mapping euivalences =? 30 [Goens15] J. Castrillon. Get-together for IoT, Apr. 2016

31 Analysis for Multi-applications Use utilization profiles from the discrete event simulator (TRM) Quickly separate good from bad implementations [Castrill14] 31 J. Castrillon. Get-together for IoT, Apr. 2016

32 Code generation CPN application Mapping configuration Code generation Architecture model PNargs_ifft_r.ID = 6U; PNargs_ifft_r.PNchannel_fre_coef = filtered_coef_right; PNargs_ifft_r.PNnum_fre_coef = 0U; PNargs_ifft_r.PNchannel_time_coef = sink_right; PNargs_ifft_r.channel = 1; sink_left = IPCllmrf_open(3, 1, 1); sink_right = IPCllmrf_open(7, 1, 1); PNargs_sink.ID = 7U; PNargs_sink.PNchannel_in_left = sink_left; PNargs_sink.PNnum_in_left = 0U; PNargs_sink.PNchannel_in_right = sink_right; PNargs_sink.PNnum_in_right = 0U; taskparams.arg0 = (xdc_uarg)&pnargs_src; taskparams.priority = 1;... Debugging info [Castrill11b, Murillo14] Take mapping configuration and generate code accordingly From architecture model: APIs, configuration parameters, Sample targets: experimental heterogenous systems, TI (Keysonte, TDA3x), Parallela/Ephiphany, ARM-based (Exynos, Snapdragon) 32 J. Castrillon. Get-together for IoT, Apr. 2016

33 Examples Same application(s) automatically compiled to different platforms Virtual platforms: SystemC models of full systems Bare metal Multi-RISC/VLIW platform Real platform: TI Keystone platform Speedup on commercial platforms Code generation against vendor stacks 33 J. Castrillon. Get-together for IoT, Apr. 2016

34 Example: multi-media applications Iterative mapping 34 J. Castrillon. Get-together for IoT, Apr. 2016

35 Manual vs. Automatic: TI Keystone Image processing Audio filtering application [Aguilar14] LTE digital receiver 35 J. Castrillon. Get-together for IoT, Apr. 2016

36 Outline Introduction Models of computation Tool flows Outlook for IoT Summary 36 J. Castrillon. Get-together for IoT, Apr. 2016

37 So far MoC-based Application Non-functional specification Analysis Synthesis Code generation PNargs_ifft_r.ID = 6U; PNargs_ifft_r.PNchannel_fre_coef = filtered_coe PNargs_ifft_r.PNnum_fre_coef = 0U; PNargs_ifft_r.PNchannel_time_coef = sink_right; PNargs_ifft_r.channel = 1; sink_left = IPCllmrf_open(3, 1, 1); sink_right = IPCllmrf_open(7, 1, 1); PNargs_sink.ID = 7U; PNargs_sink.PNchannel_in_left = sink_left; PNargs_sink.PNnum_in_left = 0U; PNargs_sink.PNchannel_in_right = sink_right; PNargs_sink.PNnum_in_right = 0U; taskparams.arg0 = (xdc_uarg)&pnargs_src; taskparams.priority = 1; ti_sysbios_knl_task_create((ti_sysbios_knl_task_func &taskparams, &eb); glob_proc_cnt++; hasprocess = 1; taskparams.arg0 = (xdc_uarg)&pnargs_fft_l; taskparams.priority = 1; Architecture model MEM subsystem DMAs, semaphores PMU L2 VLIW DSP,L2 NoC Peripherals Communication support HW ueues Network Processor Packet DMA ti_sysbios_knl_task_create((ti_sysbios_knl_task_func ft_templ, &taskparams, &eb); glob_proc_cnt++; hasprocess = 1; taskparams.arg0 = (xdc_uarg)&pnargs_ifft_r; taskparams.priority = 1; ti_sysbios_knl_task_create((ti_sysbios_knl_task_func fft_templ, &taskparams, &eb); glob_proc_cnt++; hasprocess = 1; taskparams.arg0 = (xdc_uarg)&pnargs_sink; taskparams.priority = 1; 37 J. Castrillon. Get-together for IoT, Apr. 2016

38 What s missing? Reactivity Supported for periodic events (trigger) Enough for many applications (automotive) 1 ms 3 ms 1 ms Sporadic (I/O) events may break determinism Better execution guarantees Multi-SoC Supported if inter-soc communication is predictable (same cost-function approach) Scalability: Add a layer of geographic coarse mapping MEM subsystem DMAs, semaphores PMU L2 VLIW DSP,L2 NoC Peripherals Communication support HW ueues Network Processor Packet DMA 38 J. Castrillon. Get-together for IoT, Apr. 2016

39 Outline Introduction Models of computation Tool flows Outlook for IoT Summary 40 J. Castrillon. Get-together for IoT, Apr. 2016

40 Summary IoT complexity: heterogeneity, resource constraints, distributed, The need for formal MoC for programming and synthesis Sample tool flow Heterogeneity: High-level architecture models Support dynamic applications: Analysis and synthesis based on traces Extensions for: multiple traces Outlook Adaptivity at runtime Reactivity and multi-soc case studies 41 J. Castrillon. Get-together for IoT, Apr. 2016

41 Acknowledgements Silexica Software Solutions GmbH German Cluster of Excellence: Center for Advancing Electronics Dresden ( 42 J. Castrillon. Get-together for IoT, Apr. 2016

42 References [Castrill14] J. Castrillon, et al., Programming Heterogeneous MPSoCs: Tool Flows to Close the Software Productivity Gap, Springer, 2014 [Castrill11a] J. Castrillon, et al., Trends in embedded software synthesis, International Conference on Embedded Computer Systems (SAMOS) pp , 2011 [Oden13] M. Odendahl, et al., Split-cost communication model for improved MPSoC application mapping, In International Symposium on System on Chip pp. 1-8, 2013 [Arnold13] O. Arnold, et al. Tomahawk - Parallelism and Heterogeneity in Communications Signal Processing MPSoCs. TECS, 2013 [Eusse14] J.F. Eusse,, et al., "Pre-architectural performance estimation for ASIP design based on abstract processor models," In SAMOS 2014 pp , 2014 [Castrill10] J. Castrillon,, et al., Component-based waveform development: The nucleus tool flow for efficient and portable SDR, Wireless Innovation Conference and Product Exposition (SDR), 2010 [Castrill10b] J. Castrillon, et al., Trace-based KPN composability analysis for mapping simultaneous applications to MPSoC platforms, In DATE 2010, pp [Castrill13] J. Castrillon, et al., MAPS: Mapping concurrent dataflow applications to heterogeneous MPSoCs, IEEE Transactions on Industrial Informatics, vol. 9, 2013 [Castrill12] J. Castrillon, et al., Communication-aware mapping of KPN applications onto heterogeneous MPSoCs, in DAC 2012 [Goens15] A. Goens, et al., Analysis of Process Traces for Mapping Dynamic KPN Applications to MPSoCs, In IFIP International Embedded Systems Symposium (IESS), 2015, Foz do Iguaçu, Brazil (Accepted for publication), 2015 [Castrill11b] J. Castrillon, et al., Backend for virtual platforms with hardware scheduler in the MAPS framework, In LASCAS 2011 pp. 1-4, 2011 [Murillo14] L. G. Murillo, et al., Automatic detection of concurrency bugs through event ordering constraints, In DATE 2014, pp. 1-6, 2014 [Aguilar14] M. Aguilar, et al., "Improving performance and productivity for software development on TI Multicore DSP platforms," in Education and Research Conference (EDERC), th European Embedded Design in, vol., no., pp.31-35, Sept J. Castrillon. Get-together for IoT, Apr. 2016

Compiling for deeply embedded and heterogeneous signal processing systems

Compiling for deeply embedded and heterogeneous signal processing systems Compiling for deeply embedded and heterogeneous signal processing systems Jeronimo Castrillon Cfaed Chair for Compiler Construction (CCC) 5G Summit, Dresden, Germany September 29, 2016 Multi-Processor/core

More information

Analysis and software synthesis of KPN applications

Analysis and software synthesis of KPN applications Analysis and software synthesis of KPN applications Jeronimo Castrillon Chair for Compiler Construction TU Dresden jeronimo.castrillon@tu-dresden.de DREAMS Seminar UC Berkeley, CA. October 22 nd 2015 Acknowledgements

More information

Dataflow programming for heterogeneous computing systems

Dataflow programming for heterogeneous computing systems Dataflow programming for heterogeneous computing systems Jeronimo Castrillon Cfaed Chair for Compiler Construction TU Dresden jeronimo.castrillon@tu-dresden.de Tutorial: Algorithmic specification, tools

More information

On mapping to multi/manycores

On mapping to multi/manycores On mapping to multi/manycores Jeronimo Castrillon Chair for Compiler Construction (CCC) TU Dresden, Germany MULTIPROG HiPEAC Conference Stockholm, 24.01.2017 Mapping for dataflow programming models MEM

More information

Easy Multicore Programming using MAPS

Easy Multicore Programming using MAPS Easy Multicore Programming using MAPS Jeronimo Castrillon, Maximilian Odendahl Multicore Challenge Conference 2012 September 24 th, 2012 Institute for Communication Technologies and Embedded Systems Outline

More information

Reliable Embedded Multimedia Systems?

Reliable Embedded Multimedia Systems? 2 Overview Reliable Embedded Multimedia Systems? Twan Basten Joint work with Marc Geilen, AmirHossein Ghamarian, Hamid Shojaei, Sander Stuijk, Bart Theelen, and others Embedded Multi-media Analysis of

More information

Modelling, Analysis and Scheduling with Dataflow Models

Modelling, Analysis and Scheduling with Dataflow Models technische universiteit eindhoven Modelling, Analysis and Scheduling with Dataflow Models Marc Geilen, Bart Theelen, Twan Basten, Sander Stuijk, AmirHossein Ghamarian, Jeroen Voeten Eindhoven University

More information

Distributed Operation Layer Integrated SW Design Flow for Mapping Streaming Applications to MPSoC

Distributed Operation Layer Integrated SW Design Flow for Mapping Streaming Applications to MPSoC Distributed Operation Layer Integrated SW Design Flow for Mapping Streaming Applications to MPSoC Iuliana Bacivarov, Wolfgang Haid, Kai Huang, and Lothar Thiele ETH Zürich MPSoCs are Hard to program (

More information

DIGITAL VS. ANALOG SIGNAL PROCESSING Digital signal processing (DSP) characterized by: OUTLINE APPLICATIONS OF DIGITAL SIGNAL PROCESSING

DIGITAL VS. ANALOG SIGNAL PROCESSING Digital signal processing (DSP) characterized by: OUTLINE APPLICATIONS OF DIGITAL SIGNAL PROCESSING 1 DSP applications DSP platforms The synthesis problem Models of computation OUTLINE 2 DIGITAL VS. ANALOG SIGNAL PROCESSING Digital signal processing (DSP) characterized by: Time-discrete representation

More information

Design methodology for multi processor systems design on regular platforms

Design methodology for multi processor systems design on regular platforms Design methodology for multi processor systems design on regular platforms Ph.D in Electronics, Computer Science and Telecommunications Ph.D Student: Davide Rossi Ph.D Tutor: Prof. Roberto Guerrieri Outline

More information

MoCC - Models of Computation and Communication SystemC as an Heterogeneous System Specification Language

MoCC - Models of Computation and Communication SystemC as an Heterogeneous System Specification Language SystemC as an Heterogeneous System Specification Language Eugenio Villar Fernando Herrera University of Cantabria Challenges Massive concurrency Complexity PCB MPSoC with NoC Nanoelectronics Challenges

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

Codesign Framework. Parts of this lecture are borrowed from lectures of Johan Lilius of TUCS and ASV/LL of UC Berkeley available in their web.

Codesign Framework. Parts of this lecture are borrowed from lectures of Johan Lilius of TUCS and ASV/LL of UC Berkeley available in their web. Codesign Framework Parts of this lecture are borrowed from lectures of Johan Lilius of TUCS and ASV/LL of UC Berkeley available in their web. Embedded Processor Types General Purpose Expensive, requires

More information

EE382V: System-on-a-Chip (SoC) Design

EE382V: System-on-a-Chip (SoC) Design EE382V: System-on-a-Chip (SoC) Design Lecture 8 HW/SW Co-Design Sources: Prof. Margarida Jacome, UT Austin Andreas Gerstlauer Electrical and Computer Engineering University of Texas at Austin gerstl@ece.utexas.edu

More information

Hardware-Software Codesign

Hardware-Software Codesign Hardware-Software Codesign 8. Performance Estimation Lothar Thiele 8-1 System Design specification system synthesis estimation -compilation intellectual prop. code instruction set HW-synthesis intellectual

More information

EE382V: System-on-a-Chip (SoC) Design

EE382V: System-on-a-Chip (SoC) Design EE382V: System-on-a-Chip (SoC) Design Lecture 10 Task Partitioning Sources: Prof. Margarida Jacome, UT Austin Prof. Lothar Thiele, ETH Zürich Andreas Gerstlauer Electrical and Computer Engineering University

More information

Hardware-Software Codesign. 1. Introduction

Hardware-Software Codesign. 1. Introduction Hardware-Software Codesign 1. Introduction Lothar Thiele 1-1 Contents What is an Embedded System? Levels of Abstraction in Electronic System Design Typical Design Flow of Hardware-Software Systems 1-2

More information

Dynamic Dataflow. Seminar on embedded systems

Dynamic Dataflow. Seminar on embedded systems Dynamic Dataflow Seminar on embedded systems Dataflow Dataflow programming, Dataflow architecture Dataflow Models of Computation Computation is divided into nodes that can be executed concurrently Dataflow

More information

Applying Models of Computation to OpenCL Pipes for FPGA Computing. Nachiket Kapre + Hiren Patel

Applying Models of Computation to OpenCL Pipes for FPGA Computing. Nachiket Kapre + Hiren Patel Applying Models of Computation to OpenCL Pipes for FPGA Computing Nachiket Kapre + Hiren Patel nachiket@uwaterloo.ca Outline Models of Computation and Parallelism OpenCL code samples Synchronous Dataflow

More information

MPSoC Design Space Exploration Framework

MPSoC Design Space Exploration Framework MPSoC Design Space Exploration Framework Gerd Ascheid RWTH Aachen University, Germany Outline Motivation: MPSoC requirements in wireless and multimedia MPSoC design space exploration framework Summary

More information

SDL. Jian-Jia Chen (slides are based on Peter Marwedel) TU Dortmund, Informatik 年 10 月 18 日. technische universität dortmund

SDL. Jian-Jia Chen (slides are based on Peter Marwedel) TU Dortmund, Informatik 年 10 月 18 日. technische universität dortmund 12 SDL Jian-Jia Chen (slides are based on Peter Marwedel) TU Dortmund, Informatik 12 2017 年 10 月 18 日 Springer, 2010 These slides use Microsoft clip arts. Microsoft copyright restrictions apply. Models

More information

Hierarchical FSMs with Multiple CMs

Hierarchical FSMs with Multiple CMs Hierarchical FSMs with Multiple CMs Manaloor Govindarajan Balasubramanian Manikantan Bharathwaj Muthuswamy (aka Bharath) Reference: Hierarchical FSMs with Multiple Concurrency Models. Alain Girault, Bilung

More information

FSMs & message passing: SDL

FSMs & message passing: SDL 12 FSMs & message passing: SDL Peter Marwedel TU Dortmund, Informatik 12 Springer, 2010 2012 年 10 月 30 日 These slides use Microsoft clip arts. Microsoft copyright restrictions apply. Models of computation

More information

Hardware-Software Codesign. 6. System Simulation

Hardware-Software Codesign. 6. System Simulation Hardware-Software Codesign 6. System Simulation Lothar Thiele 6-1 System Design specification system simulation (this lecture) (worst-case) perf. analysis (lectures 10-11) system synthesis estimation SW-compilation

More information

Code Generation for TMS320C6x in Ptolemy

Code Generation for TMS320C6x in Ptolemy Code Generation for TMS320C6x in Ptolemy Sresth Kumar, Vikram Sardesai and Hamid Rahim Sheikh EE382C-9 Embedded Software Systems Spring 2000 Abstract Most Electronic Design Automation (EDA) tool vendors

More information

Multicore DSP Software Synthesis using Partial Expansion of Dataflow Graphs

Multicore DSP Software Synthesis using Partial Expansion of Dataflow Graphs Multicore DSP Software Synthesis using Partial Expansion of Dataflow Graphs George F. Zaki, William Plishker, Shuvra S. Bhattacharyya University of Maryland, College Park, MD, USA & Frank Fruth Texas Instruments

More information

Implementing Flexible Interconnect Topologies for Machine Learning Acceleration

Implementing Flexible Interconnect Topologies for Machine Learning Acceleration Implementing Flexible Interconnect for Machine Learning Acceleration A R M T E C H S Y M P O S I A O C T 2 0 1 8 WILLIAM TSENG Mem Controller 20 mm Mem Controller Machine Learning / AI SoC New Challenges

More information

Software Compilation Techniques for Heterogeneous Embedded Multi-Core Systems

Software Compilation Techniques for Heterogeneous Embedded Multi-Core Systems Software Compilation Techniques for Heterogeneous Embedded Multi-Core Systems Rainer Leupers, Miguel Angel Aguilar, Jeronimo Castrillon, and Weihua Sheng Abstract The increasing demands of modern embedded

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

The Architects View Framework: A Modeling Environment for Architectural Exploration and HW/SW Partitioning

The Architects View Framework: A Modeling Environment for Architectural Exploration and HW/SW Partitioning 1 The Architects View Framework: A Modeling Environment for Architectural Exploration and HW/SW Partitioning Tim Kogel European SystemC User Group Meeting, 12.10.2004 Outline 2 Transaction Level Modeling

More information

On the Portability and Performance of Message-Passing Programs on Embedded Multicore Platforms

On the Portability and Performance of Message-Passing Programs on Embedded Multicore Platforms On the Portability and Performance of Message-Passing Programs on Embedded Multicore Platforms Shih-Hao Hung, Po-Hsun Chiu, Chia-Heng Tu, Wei-Ting Chou and Wen-Long Yang Graduate Institute of Networking

More information

MPSOC Design examples

MPSOC Design examples MPSOC 2007 Eshel Haritan, VP Engineering, Inc. 1 MPSOC Design examples Freescale: ARM1136 + StarCore140e Broadcom: ARM11 + ARM9 + TeakLite + accelerators Qualcomm 4 processors + video, gps, wireless, audio

More information

Software Quality is Directly Proportional to Simulation Speed

Software Quality is Directly Proportional to Simulation Speed Software Quality is Directly Proportional to Simulation Speed CDNLive! 11 March 2014 Larry Lapides Page 1 Software Quality is Directly Proportional to Test Speed Intuitively obvious (so my presentation

More information

fakultät für informatik informatik 12 technische universität dortmund Data flow models Peter Marwedel TU Dortmund, Informatik /10/08

fakultät für informatik informatik 12 technische universität dortmund Data flow models Peter Marwedel TU Dortmund, Informatik /10/08 12 Data flow models Peter Marwedel TU Dortmund, Informatik 12 2009/10/08 Graphics: Alexandra Nolte, Gesine Marwedel, 2003 Models of computation considered in this course Communication/ local computations

More information

The Use Of Virtual Platforms In MP-SoC Design. Eshel Haritan, VP Engineering CoWare Inc. MPSoC 2006

The Use Of Virtual Platforms In MP-SoC Design. Eshel Haritan, VP Engineering CoWare Inc. MPSoC 2006 The Use Of Virtual Platforms In MP-SoC Design Eshel Haritan, VP Engineering CoWare Inc. MPSoC 2006 1 MPSoC Is MP SoC design happening? Why? Consumer Electronics Complexity Cost of ASIC Increased SW Content

More information

TKT-1527 Digital System Design Issues Tero Arpinen. Introduction to SoC modeling and Models of Computation

TKT-1527 Digital System Design Issues Tero Arpinen. Introduction to SoC modeling and Models of Computation TKT-1527 Digital System Design Issues Tero Arpinen Introduction to SoC modeling and Models of Computation 1 Reference material A. Jantsch and I. Sander, Models of computation and languages for embedded

More information

Modeling and Simulation of System-on. Platorms. Politecnico di Milano. Donatella Sciuto. Piazza Leonardo da Vinci 32, 20131, Milano

Modeling and Simulation of System-on. Platorms. Politecnico di Milano. Donatella Sciuto. Piazza Leonardo da Vinci 32, 20131, Milano Modeling and Simulation of System-on on-chip Platorms Donatella Sciuto 10/01/2007 Politecnico di Milano Dipartimento di Elettronica e Informazione Piazza Leonardo da Vinci 32, 20131, Milano Key SoC Market

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

Verification Futures Nick Heaton, Distinguished Engineer, Cadence Design Systems

Verification Futures Nick Heaton, Distinguished Engineer, Cadence Design Systems Verification Futures 2016 Nick Heaton, Distinguished Engineer, Cadence Systems Agenda Update on Challenges presented in 2015, namely Scalability of the verification engines The rise of Use-Case Driven

More information

An MPSoC for Energy-Efficient Database Query Processing

An MPSoC for Energy-Efficient Database Query Processing Vodafone Chair Mobile Communications Systems, Prof. Dr.-Ing. Dr. h.c. G. Fettweis An MPSoC for Energy-Efficient Database Query Processing TensilicaDay 2016 Sebastian Haas Emil Matúš Gerhard Fettweis 09.02.2016

More information

Hardware/Software Co-design

Hardware/Software Co-design Hardware/Software Co-design Zebo Peng, Department of Computer and Information Science (IDA) Linköping University Course page: http://www.ida.liu.se/~petel/codesign/ 1 of 52 Lecture 1/2: Outline : an Introduction

More information

Massively Parallel Processor Breadboarding (MPPB)

Massively Parallel Processor Breadboarding (MPPB) Massively Parallel Processor Breadboarding (MPPB) 28 August 2012 Final Presentation TRP study 21986 Gerard Rauwerda CTO, Recore Systems Gerard.Rauwerda@RecoreSystems.com Recore Systems BV P.O. Box 77,

More information

Embedded Systems CS - ES

Embedded Systems CS - ES Embedded Systems - 1 - Synchronous dataflow REVIEW Multiple tokens consumed and produced per firing Synchronous dataflow model takes advantage of this Each edge labeled with number of tokens consumed/produced

More information

Validation Strategies with pre-silicon platforms

Validation Strategies with pre-silicon platforms Validation Strategies with pre-silicon platforms Shantanu Ganguly Synopsys Inc April 10 2014 2014 Synopsys. All rights reserved. 1 Agenda Market Trends Emulation HW Considerations Emulation Scenarios Debug

More information

SYSTEMS ON CHIP (SOC) FOR EMBEDDED APPLICATIONS

SYSTEMS ON CHIP (SOC) FOR EMBEDDED APPLICATIONS SYSTEMS ON CHIP (SOC) FOR EMBEDDED APPLICATIONS Embedded System System Set of components needed to perform a function Hardware + software +. Embedded Main function not computing Usually not autonomous

More information

Improving Parallel MPSoC Simulation Performance by Exploiting Dynamic Routing Delay Prediction

Improving Parallel MPSoC Simulation Performance by Exploiting Dynamic Routing Delay Prediction Improving Parallel MPSoC Simulation Performance by Exploiting Dynamic Routing Delay Prediction Christoph Roth, Harald Bucher, Simon Reder, Oliver Sander, Jürgen Becker KIT University of the State of Baden-Wuerttemberg

More information

Simulink -based Programming Environment for Heterogeneous MPSoC

Simulink -based Programming Environment for Heterogeneous MPSoC Simulink -based Programming Environment for Heterogeneous MPSoC Katalin Popovici katalin.popovici@mathworks.com Software Engineer, The MathWorks DATE 2009, Nice, France 2009 The MathWorks, Inc. Summary

More information

Next Generation Enterprise Solutions from ARM

Next Generation Enterprise Solutions from ARM Next Generation Enterprise Solutions from ARM Ian Forsyth Director Product Marketing Enterprise and Infrastructure Applications Processor Product Line Ian.forsyth@arm.com 1 Enterprise Trends IT is the

More information

Parallel Simulation Accelerates Embedded Software Development, Debug and Test

Parallel Simulation Accelerates Embedded Software Development, Debug and Test Parallel Simulation Accelerates Embedded Software Development, Debug and Test Larry Lapides Imperas Software Ltd. larryl@imperas.com Page 1 Modern SoCs Have Many Concurrent Processing Elements SMP cores

More information

Embedded Systems: Hardware Components (part II) Todor Stefanov

Embedded Systems: Hardware Components (part II) Todor Stefanov Embedded Systems: Hardware Components (part II) Todor Stefanov Leiden Embedded Research Center, Leiden Institute of Advanced Computer Science Leiden University, The Netherlands Outline Generic Embedded

More information

EMBEDDED SYSTEMS READY TO USE LECTURE MATERIALS FOR UNDERGRADUATES

EMBEDDED SYSTEMS READY TO USE LECTURE MATERIALS FOR UNDERGRADUATES EMBEDDED SYSTEMS READY TO USE LECTURE MATERIALS FOR UNDERGRADUATES INTRODUCTION 12 WEEK COURSE OUTLINE (1/2) 1.) Introduction What are embedded systems Characteristics Sample Market Segments The IoT Era

More information

NetSpeed ORION: A New Approach to Design On-chip Interconnects. August 26 th, 2013

NetSpeed ORION: A New Approach to Design On-chip Interconnects. August 26 th, 2013 NetSpeed ORION: A New Approach to Design On-chip Interconnects August 26 th, 2013 INTERCONNECTS BECOMING INCREASINGLY IMPORTANT Growing number of IP cores Average SoCs today have 100+ IPs Mixing and matching

More information

Adaptive Stream Mining: A Novel Dynamic Computing Paradigm for Knowledge Extraction

Adaptive Stream Mining: A Novel Dynamic Computing Paradigm for Knowledge Extraction Adaptive Stream Mining: A Novel Dynamic Computing Paradigm for Knowledge Extraction AFOSR DDDAS Program PI Meeting Presentation PIs: Shuvra S. Bhattacharyya, University of Maryland Mihaela van der Schaar,

More information

Graphical System Design. David Fuller LabVIEW R&D Section Manager

Graphical System Design. David Fuller LabVIEW R&D Section Manager Graphical System Design David Fuller LabVIEW R&D Section Manager Agenda Visions Demo Order & time National Instruments Confidential 2 Virtual Instrumentation National Instruments Confidential 3 Virtual

More information

A Reconfigurable Crossbar Switch with Adaptive Bandwidth Control for Networks-on

A Reconfigurable Crossbar Switch with Adaptive Bandwidth Control for Networks-on A Reconfigurable Crossbar Switch with Adaptive Bandwidth Control for Networks-on on-chip Donghyun Kim, Kangmin Lee, Se-joong Lee and Hoi-Jun Yoo Semiconductor System Laboratory, Dept. of EECS, Korea Advanced

More information

Modeling and Verification of Networkon-Chip using Constrained-DEVS

Modeling and Verification of Networkon-Chip using Constrained-DEVS Modeling and Verification of Networkon-Chip using Constrained-DEVS Soroosh Gholami Hessam S. Sarjoughian School of Computing, Informatics, and Decision Systems Engineering Arizona Center for Integrative

More information

D Demonstration of disturbance recording functions for PQ monitoring

D Demonstration of disturbance recording functions for PQ monitoring D6.3.7. Demonstration of disturbance recording functions for PQ monitoring Final Report March, 2013 M.Sc. Bashir Ahmed Siddiqui Dr. Pertti Pakonen 1. Introduction The OMAP-L138 C6-Integra DSP+ARM processor

More information

Runtime Adaptation of Application Execution under Thermal and Power Constraints in Massively Parallel Processor Arrays

Runtime Adaptation of Application Execution under Thermal and Power Constraints in Massively Parallel Processor Arrays Runtime Adaptation of Application Execution under Thermal and Power Constraints in Massively Parallel Processor Arrays Éricles Sousa 1, Frank Hannig 1, Jürgen Teich 1, Qingqing Chen 2, and Ulf Schlichtmann

More information

Compilation of Parametric Dataflow Applications for Software-Defined-Radio-Dedicated MPSoCs DREAM seminar

Compilation of Parametric Dataflow Applications for Software-Defined-Radio-Dedicated MPSoCs DREAM seminar Compilation of Parametric Dataflow Applications for Software-Defined-Radio-Dedicated MPSoCs DREAM seminar Mickaël Dardaillon Research Intern with NOKIA Technologies January 27th, 2015 2 / 33 What we know

More information

SysteMoC. Verification and Refinement of Actor-Based Models of Computation

SysteMoC. Verification and Refinement of Actor-Based Models of Computation SysteMoC Verification and Refinement of Actor-Based Models of Computation Joachim Falk, Jens Gladigau, Christian Haubelt, Joachim Keinert, Martin Streubühr, and Jürgen Teich {falk, haubelt}@cs.fau.de Hardware-Software-Co-Design

More information

Optimizing Cache Coherent Subsystem Architecture for Heterogeneous Multicore SoCs

Optimizing Cache Coherent Subsystem Architecture for Heterogeneous Multicore SoCs Optimizing Cache Coherent Subsystem Architecture for Heterogeneous Multicore SoCs Niu Feng Technical Specialist, ARM Tech Symposia 2016 Agenda Introduction Challenges: Optimizing cache coherent subsystem

More information

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

Getting the Most out of Advanced ARM IP. ARM Technology Symposia November 2013 Getting the Most out of Advanced ARM IP ARM Technology Symposia November 2013 Evolving System Requirements Processor Advances big.little Multicore Unicore DSP Cortex -R7 Block are now Sub-Systems Cortex

More information

Buffer Dimensioning for Throughput Improvement of Dynamic Dataflow Signal Processing Applications on Multi-Core Platforms

Buffer Dimensioning for Throughput Improvement of Dynamic Dataflow Signal Processing Applications on Multi-Core Platforms Buffer Dimensioning for Throughput Improvement of Dynamic Dataflow Signal Processing Applications on Multi-Core Platforms Małgorzata Michalska, Endri Bezati, Simone Casale-Brunet, Marco Mattavelli EPFL

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

HW/SW Cyber-System Co-Design and Modeling

HW/SW Cyber-System Co-Design and Modeling HW/SW Cyber-System Co-Design and Modeling Julio OLIVEIRA Karol DESNOS Karol Desnos (IETR) & Julio Oliveira (TNO) 1 Introduction Who are we? Julio de OLIVEIRA Position: TNO - Researcher & innovation scientist

More information

A Graduate Embedded System Education Program

A Graduate Embedded System Education Program A Graduate Embedded System Education Program Alberto Sangiovanni-Vincentelli Department of EECS, University of California at Berkeley EE249:Fall03 The Killer Applications for the Future? 2 Energy Conservation

More information

OCCN: A Network-On-Chip Modeling and Simulation Framework. M.Coppola, S.Curaba, M.Grammatikakis, R.Locatelli, G.Maruccia, F.Papariello, L.

OCCN: A Network-On-Chip Modeling and Simulation Framework. M.Coppola, S.Curaba, M.Grammatikakis, R.Locatelli, G.Maruccia, F.Papariello, L. OCCN: A Network-On-Chip Modeling and Simulation Framework M.Coppola, S.Curaba, M.Grammatikakis, R.Locatelli, G.Maruccia, F.Papariello, L.Pieralisi Outline Introduction SoC trends SoC: Towards a NoC centric

More information

PREESM: A Dataflow-Based Rapid Prototyping Framework for Simplifying Multicore DSP Programming

PREESM: A Dataflow-Based Rapid Prototyping Framework for Simplifying Multicore DSP Programming PREESM: A Dataflow-Based Rapid Prototyping Framework for Simplifying Multicore DSP Programming Maxime Pelcat, Karol Desnos, Julien Heulot Clément Guy, Jean-François Nezan, Slaheddine Aridhi EDERC 2014

More information

Exploring Task Parallelism for Heterogeneous Systems Using Multicore Task Management API

Exploring Task Parallelism for Heterogeneous Systems Using Multicore Task Management API EuroPAR 2016 ROME Workshop Exploring Task Parallelism for Heterogeneous Systems Using Multicore Task Management API Suyang Zhu 1, Sunita Chandrasekaran 2, Peng Sun 1, Barbara Chapman 1, Marcus Winter 3,

More information

Outline. SLD challenges Platform Based Design (PBD) Leveraging state of the art CAD Metropolis. Case study: Wireless Sensor Network

Outline. SLD challenges Platform Based Design (PBD) Leveraging state of the art CAD Metropolis. Case study: Wireless Sensor Network By Alberto Puggelli Outline SLD challenges Platform Based Design (PBD) Case study: Wireless Sensor Network Leveraging state of the art CAD Metropolis Case study: JPEG Encoder SLD Challenge Establish a

More information

A Tuneable Software Cache Coherence Protocol for Heterogeneous MPSoCs. Marco Bekooij & Frank Ophelders

A Tuneable Software Cache Coherence Protocol for Heterogeneous MPSoCs. Marco Bekooij & Frank Ophelders A Tuneable Software Cache Coherence Protocol for Heterogeneous MPSoCs Marco Bekooij & Frank Ophelders Outline Context What is cache coherence Addressed challenge Short overview of related work Related

More information

Efficient Throughput-Guarantees for Latency-Sensitive Networks-On-Chip

Efficient Throughput-Guarantees for Latency-Sensitive Networks-On-Chip ASP-DAC 2010 20 Jan 2010 Session 6C Efficient Throughput-Guarantees for Latency-Sensitive Networks-On-Chip Jonas Diemer, Rolf Ernst TU Braunschweig, Germany diemer@ida.ing.tu-bs.de Michael Kauschke Intel,

More information

Predictable Timing of Cyber-Physical Systems Future Research Challenges

Predictable Timing of Cyber-Physical Systems Future Research Challenges Predictable Timing of Cyber- Systems Future Research Challenges DREAMS Seminar, EECS, UC Berkeley January 17, 2012 David Broman EECS Department UC Berkeley, USA Department of Computer and Information Science

More information

A unified multicore programming model

A unified multicore programming model A unified multicore programming model Simplifying multicore migration By Sven Brehmer Abstract There are a number of different multicore architectures and programming models available, making it challenging

More information

Building blocks for 64-bit Systems Development of System IP in ARM

Building blocks for 64-bit Systems Development of System IP in ARM Building blocks for 64-bit Systems Development of System IP in ARM Research seminar @ University of York January 2015 Stuart Kenny stuart.kenny@arm.com 1 2 64-bit Mobile Devices The Mobile Consumer Expects

More information

Automatic Instrumentation of Embedded Software for High Level Hardware/Software Co-Simulation

Automatic Instrumentation of Embedded Software for High Level Hardware/Software Co-Simulation Automatic Instrumentation of Embedded Software for High Level Hardware/Software Co-Simulation Aimen Bouchhima, Patrice Gerin and Frédéric Pétrot System-Level Synthesis Group TIMA Laboratory 46, Av Félix

More information

TOOLS FOR IMPROVING CROSS-PLATFORM SOFTWARE DEVELOPMENT

TOOLS FOR IMPROVING CROSS-PLATFORM SOFTWARE DEVELOPMENT TOOLS FOR IMPROVING CROSS-PLATFORM SOFTWARE DEVELOPMENT Eric Kelmelis 28 March 2018 OVERVIEW BACKGROUND Evolution of processing hardware CROSS-PLATFORM KERNEL DEVELOPMENT Write once, target multiple hardware

More information

Combining Arm & RISC-V in Heterogeneous Designs

Combining Arm & RISC-V in Heterogeneous Designs Combining Arm & RISC-V in Heterogeneous Designs Gajinder Panesar, CTO, UltraSoC gajinder.panesar@ultrasoc.com RISC-V Summit 3 5 December 2018 Santa Clara, USA Problem statement Deterministic multi-core

More information

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

Designing, developing, debugging ARM Cortex-A and Cortex-M heterogeneous multi-processor systems Designing, developing, debugging ARM and heterogeneous multi-processor systems Kinjal Dave Senior Product Manager, ARM ARM Tech Symposia India December 7 th 2016 Topics Introduction System design Software

More information

Distributed Operation Layer

Distributed Operation Layer Distributed Operation Layer Iuliana Bacivarov, Wolfgang Haid, Kai Huang, and Lothar Thiele ETH Zürich Outline Distributed Operation Layer Overview Specification Application Architecture Mapping Design

More information

Processor Trace in a Holistic World. DAC-2018 San Francisco RISC-V Foundation Booth

Processor Trace in a Holistic World. DAC-2018 San Francisco RISC-V Foundation Booth Processor Trace in a Holistic World DAC-2018 San Francisco RISC-V Foundation Booth Processor Trace in a Holistic World SoC DAC-2018 San Francisco RISC-V Foundation Booth Processor Debug, Analytics and

More information

Optimal Architectures for Massively Parallel Implementation of Hard. Real-time Beamformers

Optimal Architectures for Massively Parallel Implementation of Hard. Real-time Beamformers Optimal Architectures for Massively Parallel Implementation of Hard Real-time Beamformers Final Report Thomas Holme and Karen P. Watkins 8 May 1998 EE 382C Embedded Software Systems Prof. Brian Evans 1

More information

Contents Part I Basic Concepts The Nature of Hardware and Software Data Flow Modeling and Transformation

Contents Part I Basic Concepts The Nature of Hardware and Software Data Flow Modeling and Transformation Contents Part I Basic Concepts 1 The Nature of Hardware and Software... 3 1.1 Introducing Hardware/Software Codesign... 3 1.1.1 Hardware... 3 1.1.2 Software... 5 1.1.3 Hardware and Software... 7 1.1.4

More information

Interface-Based Design Introduction

Interface-Based Design Introduction Interface-Based Design Introduction A. Richard Newton Department of Electrical Engineering and Computer Sciences University of California at Berkeley Integrated CMOS Radio Dedicated Logic and Memory uc

More information

MULTI-PROCESSOR SYSTEM-LEVEL SYNTHESIS FOR MULTIPLE APPLICATIONS ON PLATFORM FPGA

MULTI-PROCESSOR SYSTEM-LEVEL SYNTHESIS FOR MULTIPLE APPLICATIONS ON PLATFORM FPGA MULTI-PROCESSOR SYSTEM-LEVEL SYNTHESIS FOR MULTIPLE APPLICATIONS ON PLATFORM FPGA Akash Kumar,, Shakith Fernando, Yajun Ha, Bart Mesman and Henk Corporaal Eindhoven University of Technology, Eindhoven,

More information

Embedded Systems Dr. Santanu Chaudhury Department of Electrical Engineering Indian Institute of Technology, Delhi. Lecture - 10 System on Chip (SOC)

Embedded Systems Dr. Santanu Chaudhury Department of Electrical Engineering Indian Institute of Technology, Delhi. Lecture - 10 System on Chip (SOC) Embedded Systems Dr. Santanu Chaudhury Department of Electrical Engineering Indian Institute of Technology, Delhi Lecture - 10 System on Chip (SOC) In the last class, we had discussed digital signal processors.

More information

Performance Characterization, Prediction, and Optimization for Heterogeneous Systems with Multi-Level Memory Interference

Performance Characterization, Prediction, and Optimization for Heterogeneous Systems with Multi-Level Memory Interference The 2017 IEEE International Symposium on Workload Characterization Performance Characterization, Prediction, and Optimization for Heterogeneous Systems with Multi-Level Memory Interference Shin-Ying Lee

More information

Efficient use of Virtual Prototypes in HW/SW Development and Verification

Efficient use of Virtual Prototypes in HW/SW Development and Verification Efficient use of Virtual Prototypes in HW/SW Development and Verification Rocco Jonack, MINRES Technologies GmbH Eyck Jentzsch, MINRES Technologies GmbH Accellera Systems Initiative 1 Virtual prototype

More information

Reliable Dynamic Embedded Data Processing Systems

Reliable Dynamic Embedded Data Processing Systems 2 Embedded Data Processing Systems Reliable Dynamic Embedded Data Processing Systems sony Twan Basten thales Joint work with Marc Geilen, AmirHossein Ghamarian, Hamid Shojaei, Sander Stuijk, Bart Theelen,

More information

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

Profiling and Debugging OpenCL Applications with ARM Development Tools. October 2014 Profiling and Debugging OpenCL Applications with ARM Development Tools October 2014 1 Agenda 1. Introduction to GPU Compute 2. ARM Development Solutions 3. Mali GPU Architecture 4. Using ARM DS-5 Streamline

More information

Applications to MPSoCs

Applications to MPSoCs 3 rd Workshop on Mapping of Applications to MPSoCs A Design Exploration Framework for Mapping and Scheduling onto Heterogeneous MPSoCs Christian Pilato, Fabrizio Ferrandi, Donatella Sciuto Dipartimento

More information

Specification and Validation for Heterogeneous MP-SoCs

Specification and Validation for Heterogeneous MP-SoCs Specification and Validation for Heterogeneous MP-SoCs Gabriela Nicolescu Ecole Polytechnique de Montréal Tel : (514) 340 4711 ext 5434 Fax: (514) 340 3240 Email : gabriela.nicolescu@polymtl.ca Heterogeneous

More information

Tomasz Włostowski Beams Department Controls Group Hardware and Timing Section. Developing hard real-time systems using FPGAs and soft CPU cores

Tomasz Włostowski Beams Department Controls Group Hardware and Timing Section. Developing hard real-time systems using FPGAs and soft CPU cores Tomasz Włostowski Beams Department Controls Group Hardware and Timing Section Developing hard real-time systems using FPGAs and soft CPU cores Melbourne, 22 October 2015 Outline 2 Hard Real Time control

More information

Modeling and SW Synthesis for

Modeling and SW Synthesis for Modeling and SW Synthesis for Heterogeneous Embedded Systems in UML/MARTE Hector Posadas, Pablo Peñil, Alejandro Nicolás, Eugenio Villar University of Cantabria Spain Motivation Design productivity it

More information

ESE532: System-on-a-Chip Architecture. Today. Programmable SoC. Message. Process. Reminder

ESE532: System-on-a-Chip Architecture. Today. Programmable SoC. Message. Process. Reminder ESE532: System-on-a-Chip Architecture Day 5: September 18, 2017 Dataflow Process Model Today Dataflow Process Model Motivation Issues Abstraction Basic Approach Dataflow variants Motivations/demands for

More information

Precise Continuous Non-Intrusive Measurement-Based Execution Time Estimation. Boris Dreyer, Christian Hochberger, Simon Wegener, Alexander Weiss

Precise Continuous Non-Intrusive Measurement-Based Execution Time Estimation. Boris Dreyer, Christian Hochberger, Simon Wegener, Alexander Weiss Precise Continuous Non-Intrusive Measurement-Based Execution Time Estimation Boris Dreyer, Christian Hochberger, Simon Wegener, Alexander Weiss This work was funded within the project CONIRAS by the German

More information

Address InterLeaving for Low- Cost NoCs

Address InterLeaving for Low- Cost NoCs Address InterLeaving for Low- Cost NoCs Miltos D. Grammatikakis, Kyprianos Papadimitriou, Polydoros Petrakis, Marcello Coppola, and Michael Soulie Technological Educational Institute of Crete, GR STMicroelectronics,

More information

MOJTABA MAHDAVI Mojtaba Mahdavi DSP Design Course, EIT Department, Lund University, Sweden

MOJTABA MAHDAVI Mojtaba Mahdavi DSP Design Course, EIT Department, Lund University, Sweden High Level Synthesis with Catapult MOJTABA MAHDAVI 1 Outline High Level Synthesis HLS Design Flow in Catapult Data Types Project Creation Design Setup Data Flow Analysis Resource Allocation Scheduling

More information

Node Prefetch Prediction in Dataflow Graphs

Node Prefetch Prediction in Dataflow Graphs Node Prefetch Prediction in Dataflow Graphs Newton G. Petersen Martin R. Wojcik The Department of Electrical and Computer Engineering The University of Texas at Austin newton.petersen@ni.com mrw325@yahoo.com

More information

HotChips An innovative HD video and digital image processor for low-cost digital entertainment products. Deepu Talla.

HotChips An innovative HD video and digital image processor for low-cost digital entertainment products. Deepu Talla. HotChips 2007 An innovative HD video and digital image processor for low-cost digital entertainment products Deepu Talla Texas Instruments 1 Salient features of the SoC HD video encode and decode using

More information