Timing Analysis on Complex Real-Time Automotive Multicore Architectures

Similar documents
UNIVERSITÄTSBIBLIOTHEK BRAUNSCHWEIG

Modeling Event Stream Hierarchies with Hierarchical Event Models

UNIVERSITÄTSBIBLIOTHEK BRAUNSCHWEIG

Formal Timing Analysis of Ethernet AVB for Industrial Automation

Model transformation and scheduling analysis of an AUTOSAR system

Formal Analysis of Timing Effects on Closed-loop Properties of Cyber Physical Systems

Enabling Scheduling Analysis of Heterogeneous Systems with Multi-Rate Data Dependencies and Rate Intervals

Formal Modeling and Analysis of Stream Processing Systems

CONTENTION IN MULTICORE HARDWARE SHARED RESOURCES: UNDERSTANDING OF THE STATE OF THE ART

Formal Worst-Case Timing Analysis of Ethernet Topologies with Strict-Priority and AVB Switching

Timing Analysis of Automotive Architectures and Software. Nicolas Navet University of Luxembourg, founder RealTime-at-Work

Automotive Networks Are New Busses and Gateways the Answer or Just Another Challenge? ESWEEK Panel Oct. 3, 2007

Influence of Different System Abstractions on the Performance Analysis of Distributed Real-Time Systems

Hardware-Software Codesign

Designing Predictable Real-Time and Embedded Systems

Efficient Latency Guarantees for Mixed-criticality Networks-on-Chip

Verification of automotive networks -

Probabilistic Worst-Case Response-Time Analysis for the Controller Area Network

Application of Network Calculus to the TSN Problem Space

SMFF: System Models for Free

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

Single-Path Programming on a Chip-Multiprocessor System

Why an additional Shaper

Taking the Right Turn with Safe and Modular Solutions for the Automotive Industry

Evaluation and Validation

A Multi-Modal Composability Framework for Cyber-Physical Systems

Ensuring Schedulability of Spacecraft Flight Software

FZI Forschungszentrum Informatik

IEEE Time-Sensitive Networking (TSN)

Resource Sharing and Partitioning in Multicore

-- the Timing Problem & Possible Solutions

Compositional Performance Analysis in Python with pycpa

Handling Challenges of Multi-Core Technology in Automotive Software Engineering

Ultra-Low Latency Shaper

Breaking Down Complexity for Reliable System-Level Timing Validation

Organic Self-organizing Bus-based Communication Systems

Trends in Embedded System Design

AUTOBEST: A microkernel-based system (not only) for automotive applications. Marc Bommert, Alexander Züpke, Robert Kaiser.

Resource Manager for Non-preemptive Heterogeneous Multiprocessor System-on-chip

Pushing the limits of CAN - Scheduling frames with offsets provides a major performance boost

Implementation of automotive CAN module requirements

Real-Time Mixed-Criticality Wormhole Networks

Optimal Implementation of Simulink Models on Multicore Architectures with Partitioned Fixed Priority Scheduling

Giancarlo Vasta, Magneti Marelli, Lucia Lo Bello, University of Catania,

Functional Safety and Safety Standards: Challenges and Comparison of Solutions AA309

Dynamic Response Time Optimization for SDF Graphs

A Simulation Methodology for Worst-Case Response Time Estimation of Distributed Real-Time Systems

Software architecture in ASPICE and Even-André Karlsson

AirTight: A Resilient Wireless Communication Protocol for Mixed- Criticality Systems

Capita Selecta: Software engineering for automotive systems

Memory Consistency. Challenges. Program order Memory access order

Integration of Code-Level and System-Level Timing Analysis for Early Architecture Exploration and Reliable Timing Verification

MATLAB Expo Simulation Based Automotive Communication Design using MATLAB- SimEvent. Sudhakaran M Anand H General Motors

IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS, VOL. 7, NO. 1, FEBRUARY

Software Verification and Validation (VIMMD052) Introduction. Istvan Majzik Budapest University of Technology and Economics

Combining Simulation and Formal Methods for System-Level Performance Analysis

Virtual Validation of Cyber Physical Systems

A Formal Approach to the WCRT Analysis of Multicore Systems with Memory Contention under Phase-structured Task Sets

Network-on-Chip Micro-Benchmarks

Multiprocessor Synchronization

Volvo Car Group Jonn Lantz Agile by Models

Using SCADE to Develop Mission-critical High-quality Radar Application Software

Context. Giorgio Buttazzo. Scuola Superiore Sant Anna. Embedded systems are becoming more complex every day: more functions. higher performance

Context. Hardware Performance. Increasing complexity. Software Complexity. And the Result is. Embedded systems are becoming more complex every day:

Policy-based Message Scheduling Using FlexRay

Contents The Definition of a Fieldbus An Introduction to Industrial Systems Communications.

Timing Analysis of Parallel Software Using Abstract Execution

Mentor Automotive. Vehicle Network Design to meet the needs of ADAS and Autonomous Driving

Chapters 5 and 6 Concurrency

Worst-case Ethernet Network Latency for Shaped Sources

The AUTOSAR Timing Model --- Status and Challenges. Dr. Kai Richter Symtavision GmbH, Germany

TDMA Time Slot and Turn Optimization with Evolutionary Search Techniques

Memory Architectures for NoC-Based Real-Time Mixed Criticality Systems

Analyzing the performance of CAN networks

StackAnalyzer Proving the Absence of Stack Overflows

Multicore Migration Study in Automotive Powertrain Domain

Cross Clock-Domain TDM Virtual Circuits for Networks on Chips

OPERATING SYSTEMS CS3502 Spring Processor Scheduling. Chapter 5

13 AutoFocus 3 - A Scientific Tool Prototype for Model-Based Development of Component-Based, Reactive, Distributed Systems

COSC 6385 Computer Architecture - Memory Hierarchy Design (III)

Blocking Analysis of FIFO, Unordered, and Priority-Ordered Spin Locks

Hardware/Software Co-design

An ILP-based Worst-case Performance Analysis Technique for Distributed Real-time Embedded Systems

FUTURE NETWORKS SON and SDN: Friends or Foes? Technische Universität Braunschweig 26. September 2014

Lecture 25: Busses. A Typical Computer Organization

Achieving Predictable Multicore Execution of Automotive Applications Using the LET Paradigm

A Server-based Approach for Predictable GPU Access Control

Resource-bound process algebras for Schedulability and Performance Analysis of Real-Time and Embedded Systems

802.1Qbv: Performance / Complexity Tradeoffs

Ontology- and Bayesian- based Information Security Risk Management

Complexity-Reducing Design Patterns for Cyber-Physical Systems. DARPA META Project. AADL Standards Meeting January 2011 Steven P.

Reuse of Hardware Independent Test Sequences across MiL-, SiL- and HiL-Test Scenarios

Co-synthesis and Accelerator based Embedded System Design

Architecture concepts in Body Control Modules

Hardware-Software Codesign. 9. Worst Case Execution Time Analysis

CS 654 Computer Architecture Summary. Peter Kemper

Cosimulation of ITRON-Based Embedded Software with SystemC

Hardware-Software Codesign. 1. Introduction

Design Optimization of Multi-Cluster Embedded Systems for Real-Time Applications

Performance Evaluation of Computer Systems

Transcription:

2 nd Workshop on Mapping Applications to MPSoCs St. Goar, June 2009 Timing Analysis on Complex Real-Time Automotive Multicore Architectures Mircea Negrean Simon Schliecker Rolf Ernst Technische Universität Braunschweig

Automotive challenges Requirements of automotive E/E platforms and architectures - Sufficient computing power and communication bandwidth - Avoid unnecessary over-dimensioning of computing resources - Low cost Find sweet spot between maximum performance and minimum costs Requirements of automotive OEMs (for certification) - Analytical proof: That systems correctly work under maximum load Sufficient resource availability at any time Formal performance verification techniques - During different system design phases - For final product to increase SIL (safety integrity level) compliance 2

Outline Abstractions for the analysis of real-time systems Multicore architectures Timing implications and countermeasures Formal analysis method Conclusion 3

Outline Abstractions for the analysis of real-time systems Multicore architectures Timing implications and countermeasures Formal analysis method Conclusion 4

Software Timing Hierarchy System Shared Memory Arbiter HW CPU1 CPU2 CoP Resource activations T 1 T 2 Scheduler Local Memory Task 5

Local Scheduling Analysis Single core task execution (classical model) CPU1 Execution Preemption Stalling Single core task execution (with shared resources) CPU1 Shared Resource Valid assumption for single processor systems: Shared Resource access times are part of the Core Execution Time C i WCRT Large body of methods available to derive WCRTs for different scheduling policies - SPP, TDMA, RR, EDF, - considering realistic scheduling effects (context switch times, offsets, ) 6

Model Task Activation as Event Streams Response Time Analysis requires traffic models: Event Stream T 1 events t [ms] Determined by application model (Simulink, LabView, ) environment model (reactive systems) service contracts (max no of requests per time, ) Arrival Curves T 1 Derive event bounds events D [ms] Extract key parameters (optional) P Period J Jitter d min Minimum event distance 7

Component Performance Analysis Comp 1 input event streams T 4 T 3 output event streams scheduling comp 1 Output event model of one processor becomes input event model of successor compose multiple local analyses into system level analysis 8

Abstractions for the analysis of real-time systems Multicore architectures Timing implications and countermeasures Formal analysis method Conclusion 9

Multicore Architectures Expected in near future automotive designs Current distributed system All accesses to local resources local resources ECU1 CPU1 CPU2 ECU2 local resources Bus communication clearly specified and systematic Multicore system Accesses to local and shared resources local resources core1 core2 local resources Complicated, interleaved and less systematic communication timing shared resources MC-ECU Complex impact on timing 10

Abstractions for the analysis of real-time systems Multicore architectures Timing implications and countermeasures Formal analysis method Conclusion 11

Task Execution in Multicore Single core task execution (with shared resources) CPU1 Shared Resource WCRT Multicore task execution with shared resources CPU1 Shared Resource CPU2 WCRT Mapping to multicore architectures changes timing - Leads to new timing dependencies between applications! 12

Software Timing Hierarchy System Shared Memory Arbiter HW Resource Task activations CPU1 T 1 T 2 Scheduler CPU2 Bottom-up broken CoP Local Memory 13

Countermeasures Orthogonalize resources - Introduce schedulers that give upper bounds on interference independently of competing streams - At least perform traffic shaping imposes strict hardware guidelines protection from partially false system specification prone to over-provisioning (not so much in hard real-time setups) Use formal analysis that covers dynamism - Find realistic upper bounds on application behavior - Provide formulas and analysis methods matching actual system requires comprehensive knowledge of hardware behavior to set up analysis requires safe assumptions about behavior of the software allows considering dynamic schedulers and load Mix of the above 14

Abstractions for the analysis of real-time systems Multicore architectures Timing implications and countermeasures Formal analysis method Conclusion 15

Formal Analysis Method - Example Response Time Analysis for multiprocessor systems (DATE2009) - Set of m processor systems each with its own SPP scheduling - Static set of tasks = { 1, 2,..., n } statically mapped on the m processors - Unique priority space across processors Priority ( 1 ) > Priority ( 2 ) >... > Priority ( n ) - Set of shared resources Local and global Arbitration according to MPCP Evolutionary extension of OSEK-AUTOSAR scheduling Matches design practice in automotive domain 16

Response Time Analysis Worst-case response time R i of a task i on a processor with SPP - Task own execution - Interference due to higher priority local tasks - Blocking time when accessing shared resources ( t) : Number of events per time interval number of events 5 4 3 2 1 t time interval ( t) ( t) t 1 3 R i t t i ( Ri ) Ci I( Ri ) Bi ( Ri CPU 1 Local Resources 1 5 3 2 4 G 1 G 2 CPU 2 Local Resources Global Shared Resources ) 17

Types of Blocking - according to MPCP Local blocking time Indirect preemption delay Direct blocking time Local preemption delay B i (R i )= B 1 (R i ) + B 2 (R i ) + B 3 (R i ) + B 4 (R i ) 1 CPU1 3 L 1 G 1 G 1 G 1 L 1 G 2 CPU2 2 4 G 2 G 2 5 G 1 G 1 CPU3 8 G 1 G 1 18

Derivation of Shared Resource Latencies Concept Use event model concept to capture resource traffic Possible upper bounds derivation: Bound 1: Bound 2: ~ ~ 1 ( t) 1 ( t R1) 1 t ( t) d srr n 1 Direct blocking time of task 5 : B ~ 5, direct ( R5) 1 ( R5) G 1 1 G1 1 - Time duration when G 1 is blocked by 5 19

Multiprocessor Response Time Analysis Couple local scheduling analysis with the blocking time analysis R i ( R i i ) C i j hpl ( ) j ( R i i R j ) C j B i ( R i ) Analysis issues: Critical instance scenario not valid due to possible self-suspension of higher priority tasks compute response times top-down (higher priority first) B i (R i ) depends on the load imposed by other tasks, but their response time has possibly not been calculated Iterative computation of tasks WCRT until general convergence For lower priority tasks use a load derivation that is independent of WCRT 20

Applicability Modeling and Analysis of multiprocessor systems implemented in SymTA/S (Symbolic Timing Analysis for Systems) WCRT of task 5 dsrr - minimum distance between two consecutive shared resource requests 21

Abstractions for the analysis of real-time systems Multicore architectures Timing implications and countermeasures Formal analysis method Conclusion 22

Conclusion Mapping ECU functions on multicore impacts function timing due to shared resources Cross-processor interference New scheduling and analysis algorithms are available for multicore - Compatible to system level analysis (DATE 2009) - Can work with incomplete and estimated task sets Use formal analysis methods to: Optimize performance and cost: - In early design stages to guide towards optimal design choices - Refine input data during design process to provide verification strength guarantees for final product Achieve compliance to safety standards 23

Thank you for your attention! Questions? 24

Bibliography [1] Negrean, M., Schliecker, S., and Ernst, R. "Response-Time Analysis of Arbitrarily Activated Tasks in Multiprocessor Systems with Shared Resources." In Proceedings of Design, Automation and Test in Europe Conference (DATE), Nice, France (April 2009). [2] Schliecker, S., Rox, J., Negrean, M., Richter, K., Jersak, M., and Ernst, R. "System Level Performance Analysis for Real-Time Automotive Multi-Core and Network Architectures." IEEE Transactions on Computer Aided Design (July 2009). [3] Richter, K., Jersak, M., and Ernst, R. "Learning Early-Stage Platform Dimensioning From Late-Stage Timing Verification." In Proceedings of Design, Automation, and Test in Europe (DATE), Nice, France, (April 2009). [4] Schliecker, S., Negrean, M., Nicolescu, G., Paulin, P., and Ernst, R. "Reliable Performance Analysis of a Multicore Multithreaded System-On-Chip." Proceedings of the 6th International Conference on Hardware/Software Codesign and System Synthesis (CODES-ISSS), Atlanta, GA (October 2008). 25