design and validation of a multi-core embedded platform under high performance requirements

21
Design and validation of a multi-core embedded platform under high performance requirements University of L’Aquila Center of Excellence DEWS Department of Information Engineering, Computer Science and Mathematics DISIM 4th Workshop on High-performance and Real-time Embedded Systems (HiRES 2016) V. Muttillo, G. Valente, F. Federici, L. Pomante, M. Faccio

Upload: vittoriano-muttillo

Post on 25-Jan-2017

173 views

Category:

Engineering


1 download

TRANSCRIPT

Page 1: Design and validation of a multi-core embedded platform under high performance requirements

Design and validation of a multi-core embedded

platform under high performance requirements

University of L’AquilaCenter of Excellence DEWS

Department of Information Engineering, Computer Science and Mathematics DISIM

4th Workshop on High-performance and Real-time Embedded Systems (HiRES 2016)

V. Muttillo, G. Valente, F. Federici, L. Pomante, M. Faccio

Page 2: Design and validation of a multi-core embedded platform under high performance requirements

2

Overview

Introduction

Proposed Platform

Evaluation and Validation

Conclusions and future developments

HiRES 2016

Page 3: Design and validation of a multi-core embedded platform under high performance requirements

3

Introduction

HiRES 2016

Page 4: Design and validation of a multi-core embedded platform under high performance requirements

4

Multi-core Embedded SoC

On-Chip embedded systems are characterized by several F/NF requirements

• Response time, power consumption, time-to-market etc.Multi-core embedded systems design

• Suffers from the lack of uniform pathways to system realization and application deployment

Parallel programming model• Allows to obtain a speed-up for a multi-threaded

application by splitting the workloadRun-time monitoring solutions

• Allows to monitor system behaviour during life-time

HiRES 2016

Page 5: Design and validation of a multi-core embedded platform under high performance requirements

5

Proposed SolutionThis work presents the development of an

embedded multi-core platform on FPGA with:• Multi-LEON3 SMP HW architecture• Non-intrusive distributed HW profiling subsystem• Integrated customized Linux OS distribution• OpenMP parallel programming models• RVS profiling tool support

Final goal of the work• Development of high-performance multi-core

embedded platform with run-time resource monitoring components and off-line verification tools support

HiRES 2016

Page 6: Design and validation of a multi-core embedded platform under high performance requirements

6

Platform in development flow

The work is related to the Artemis-JU ASP CRAFTERS European project

• It has led to uniform embedded system development flow in the research and industry domains

• The platform has been proposed to execute and validate industrial case studies

• Support to embedded system designers

HiRES 2016

Page 7: Design and validation of a multi-core embedded platform under high performance requirements

7

Proposed Platform

HiRES 2016

Page 8: Design and validation of a multi-core embedded platform under high performance requirements

8

LEON3 32-bit synthesizable soft-processors, multi-core mode, dedicated FPU, MMU for Linux OS etc.

HW Architecture

HiRES 2016

Page 9: Design and validation of a multi-core embedded platform under high performance requirements

9

OS and Parallel Programming Model

Operating System• A Linux distribution has been customized, starting from

LEON LINUX kernel• Cross-compiler toolchain, buildroot tool to build user space

application and RAM loader have been provided by Aeroflex Gaisler

Parallel Programming Model• Libraries required to implement parallel applications

using OpenMP C/C++, have been added to the customized Linux distribution

HiRES 2016

Page 10: Design and validation of a multi-core embedded platform under high performance requirements

10

HW Profiling System

AIPHS (AdaptIve Profiling Hardware Subsystem)• Event and Time monitoring functionalities

HiRES 2016

Page 11: Design and validation of a multi-core embedded platform under high performance requirements

11

Final Platform4-core Leon 3 with Linux operating system,

OpenMP libraries and hardware profiling system

HiRES 2016

ML605 (Virtex 6) Development Board

THE PLATFORM HARDWARE ARCHITECTURE

Page 12: Design and validation of a multi-core embedded platform under high performance requirements

12

Final Platform4-core Leon 3 with Linux operating system,

OpenMP libraries and hardware profiling system

HiRES 2016

ML605 (Virtex 6) Development Board

THE PLATFORM HARDWARE ARCHITECTURE

Page 13: Design and validation of a multi-core embedded platform under high performance requirements

13

Platform Functionalities

• High performance multi-processing software execution• Run-time event and time monitoring• Reconfigurable HW architecture• Resource monitoring application using MW layer

HiRES 2016

Page 14: Design and validation of a multi-core embedded platform under high performance requirements

14

Evaluation and Validation

HiRES 2016

Page 15: Design and validation of a multi-core embedded platform under high performance requirements

15

Reduction Parallel SPMD No false Sharing0

50000000

100000000

150000000

200000000

250000000

300000000

1 2 3 4

Simulated resultsVIPPE-based speed-up evaluation on selected

benchmark• Verify if OpenMP program parallelization made sense in

a scenario with a given memory organization (i.e. single cache, DDR3 interface for external memory etc.)

• To check if specific OpenMP library implementation works well with the proposed memory organization

HiRES 2016

Page 16: Design and validation of a multi-core embedded platform under high performance requirements

16

Experimental resultsAIPHS-based speed-up evaluation on selected

benchmark• Execution time increases with number of threads• Multi-core architecture, based on LEON3 and one level

cache, using OpenMP leads to optimal performances• False sharing problem is quite influent in this system

HiRES 2016

Reduction Parallel SPMD No false Sharing0

100000000

200000000

300000000

400000000

500000000

600000000

700000000

1 2 3 4

Page 17: Design and validation of a multi-core embedded platform under high performance requirements

17

RVS SupportRapita Verification Suite provides a framework for

on-target verification of embedded software

The use of AIPHS enables the designer to analyze time information offline by using Rapita tools

AIPHS allows reducing the need for code instrumentation so providing information more related to the real behavior of the considered application

HiRES 2016

Page 18: Design and validation of a multi-core embedded platform under high performance requirements

18

Conclusions and future

developmentsHiRES 2016

Page 19: Design and validation of a multi-core embedded platform under high performance requirements

19

ConclusionsThis work has described the design and the

validation of an embedded SoC multi-core platform• early verification and validation• enhanced performances in execution time (OpenMP) • on-chip run-time monitoring (AIPHS)

Support for Rapita Verification Suite (RVS) allows designers to evaluate meaningful statistics

• WCRT• Average time execution• etc…

HiRES 2016

Page 20: Design and validation of a multi-core embedded platform under high performance requirements

20

Future developmentsImprovement of the profiling system to collect

more data and events while better filtering overhead due to OS and ISR

Improvement of multi-core monitoring support for RVS

Preliminary simulation step with VIPPE tool integrated in the multi-core embedded systems specific design flow

HiRES 2016

Page 21: Design and validation of a multi-core embedded platform under high performance requirements

21

Thanks for the attention

Questions?

HiRES 2016