How to Improve Usability of WCET tools Dr.-Ing. Christian Ferdinand AbsInt Angewandte Informatik GmbH.

Slides:



Advertisements
Similar presentations
Approximation of the Worst-Case Execution Time Using Structural Analysis Matteo Corti and Thomas Gross Zürich.
Advertisements

© 2004 Wayne Wolf Topics Task-level partitioning. Hardware/software partitioning.  Bus-based systems.
Integer Optimization Basic Concepts Integer Linear Program(ILP): A linear program except that some or all of the decision variables must have integer.
Modern Processor Architectures Make WCET Analysis for HUME Challenging Christian Ferdinand AbsInt Angewandte Informatik GmbH.
Approximating the Worst-Case Execution Time of Soft Real-time Applications Matteo Corti.
Xianfeng Li Tulika Mitra Abhik Roychoudhury
Hardware/ Software Partitioning 2011 年 12 月 09 日 Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics: © Alexandra Nolte, Gesine Marwedel, 2003 These.
SCIP Optimization Suite
DETAILED DESIGN, IMPLEMENTATIONA AND TESTING Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Modeling shared cache and bus in multi-core platforms for timing analysis Sudipta Chattopadhyay Abhik Roychoudhury Tulika Mitra.
T IME -P REDICTABLE E XECUTION OF E MBEDDED S OFTWARE ON M ULTI - CORE P LATFORMS Sudipta Chattopadhyay under the guidance of A/P Abhik Roychoudhury 1.
1 Advanced Computer Architecture Limits to ILP Lecture 3.
1 IIES 2008 Thomas Heinz (Saarland University, CR/AEA3) | 22/03/2008 | © Robert Bosch GmbH All rights reserved, also regarding any disposal, exploitation,
Constraint Systems used in Worst-Case Execution Time Analysis Andreas Ermedahl Dept. of Information Technology Uppsala University.
Systems Analysis & IT Project Management Pepper. System Life Cycle BirthDeathDevelopmentProduction.
Assembly Code Verification Using Model Checking Hao XIAO Singapore University of Technology and Design.
Susanna Byhlin, Andreas Ermedahl, Jan Gustafsson, Björn Lisper, Mälardalen Real-Time Research Center (MRTC) Västerås, Sweden Applying Static WCET Analysis.
S CALABLE A ND P RECISE R EFINEMENT OF C ACHE T IMING A NALYSIS VIA M ODEL C HECKING Sudipta Chattopadhyay Abhik Roychoudhury 1.
Eliminating Stack Overflow by Abstract Interpretation John Regehr Alastair Reid Kirk Webb University of Utah.
1 Static Testing: defect prevention SIM objectives Able to list various type of structured group examinations (manual checking) Able to statically.
Vertically Integrated Analysis and Transformation for Embedded Software John Regehr University of Utah.
Predictable Implementation of Real-Time Applications on Multiprocessor Systems-on-Chip Alexandru Andrei Embedded Systems Laboratory Linköping University,
An Object-Oriented Architecture Supporting Web Application Testing Presented By: Bhavdeep Singh.
Timing Analysis and Timing Predictability Reinhard Wilhelm Saarbrücken.
Overview of program analysis Mooly Sagiv html://
Computer Science 12 Design Automation for Embedded Systems ECRTS 2011 Bus-Aware Multicore WCET Analysis through TDMA Offset Bounds Timon Kelter, Heiko.
EADS TEST & SERVICES TS/EL/T N°08_04/08 Page 1© Copyright EADS TEST & SERVICES 2008 Engineering Process for Systems Testability Analysis. Presentation.
Software Testing Verification and validation planning Software inspections Software Inspection vs. Testing Automated static analysis Cleanroom software.
EECE **** Embedded System Design
1 CSE 2102 CSE 2102 CSE 2102: Introduction to Software Engineering Ch9: Software Engineering Tools and Environments.
Design Space Exploration
Data Flow in Static Profiling Cathal Boogerd, Delft University, The Netherlands Leon Moonen, Simula Research Lab, Norway ?
A Modular and Retargetable Framework for Tree-based WCET analysis Antoine Colin Isabelle Puaut IRISA - Solidor Rennes, France.
WCET Analysis for a Java Processor Martin Schoeberl TU Vienna, Austria Rasmus Pedersen CBS, Denmark.
Data Structures and Algorithms Lecture 5 and 6 Instructor: Quratulain Date: 15 th and 18 th September, 2009 Faculty of Computer Science, IBA.
Department of Computer Science A Static Program Analyzer to increase software reuse Ramakrishnan Venkitaraman and Gopal Gupta.
Presenter: Zong Ze-Huang Fast and Accurate Resource Conflict Simulation for Performance Analysis of Multi- Core Systems Stattelmann, S. ; Bringmann, O.
Chapter 12 Recursion, Complexity, and Searching and Sorting
1 Towards Optimal Custom Instruction Processors Wayne Luk Kubilay Atasu, Rob Dimond and Oskar Mencer Department of Computing Imperial College London HOT.
Evaluation and Validation Peter Marwedel TU Dortmund, Informatik 12 Germany 2013 年 12 月 02 日 These slides use Microsoft clip arts. Microsoft copyright.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Software Verification, Validation and Testing.
Fakultät für informatik informatik 12 technische universität dortmund Worst-Case Execution Time Analysis - Session 19 - Heiko Falk TU Dortmund Informatik.
Timing Analysis of Embedded Software for Speculative Processors Tulika Mitra Abhik Roychoudhury Xianfeng Li School of Computing National University of.
Static Program Analyses of DSP Software Systems Ramakrishnan Venkitaraman and Gopal Gupta.
UHD::3320::CH121 DESIGN PHASE Chapter 12. UHD::3320::CH122 Design Phase Two Aspects –Actions which operate on data –Data on which actions operate Two.
Zheng Wu. Background Motivation Analysis Framework Intra-Core Cache Analysis Cache Conflict Analysis Optimization Techniques WCRT Analysis Experiment.
Resource Mapping and Scheduling for Heterogeneous Network Processor Systems Liang Yang, Tushar Gohad, Pavel Ghosh, Devesh Sinha, Arunabha Sen and Andrea.
CASE Tools Union Palenshus. In the early days… ► Software engineering tools consisted solely of translators, compilers, assemblers, linkers, loaders,
6. A PPLICATION MAPPING 6.3 HW/SW partitioning 6.4 Mapping to heterogeneous multi-processors 1 6. Application mapping (part 2)
A Unified WCET Analysis Framework for Multi-core Platforms Sudipta Chattopadhyay, Chong Lee Kee, Abhik Roychoudhury National University of Singapore Timon.
Harini Ramaprasad, Frank Mueller North Carolina State University Center for Embedded Systems Research Bounding Worst-Case Data Cache Behavior by Analytically.
Static WCET Analysis vs. Measurement: What is the Right Way to Assess Real-Time Task Timing? Worst Case Execution Time Prediction by Static Program Analysis.
CSCI1600: Embedded and Real Time Software Lecture 33: Worst Case Execution Time Steven Reiss, Fall 2015.
May08-21 Model-Based Software Development Kevin Korslund Daniel De Graaf Cory Kleinheksel Benjamin Miller Client – Rockwell Collins Faculty Advisor – Dr.
Hy-C A Compiler Retargetable for Single-Chip Heterogeneous Multiprocessors Philip Sweany 8/27/2010.
Real-time aspects Bernhard Weirich Real-time Systems Real-time systems need to accomplish their task s before the deadline. – Hard real-time:
The Development Process Compilation. Compilation - Dr. Craig A. Struble 2 Programming Process Problem Solving Phase We will spend significant time on.
WCET-Aware Dynamic Code Management on Scratchpads for Software-Managed Multicores Yooseong Kim 1,2, David Broman 2,3, Jian Cai 1, Aviral Shrivastava 1,2.
Development Tools for Avionics Software Guruprasad Aphale. Comp Avionics 12/10/2010.
C++ for Engineers and Scientists, Second Edition 1 Problem Solution and Software Development Software development procedure: method for solving problems.
Anders Nielsen Technical University of Denmark, DTU-Aqua Mark Maunder Inter-American Tropical Tuna Commission An Introduction.
PROGRAMMING FUNDAMENTALS INTRODUCTION TO PROGRAMMING. Computer Programming Concepts. Flowchart. Structured Programming Design. Implementation Documentation.
Achieving Timing Predictability by Combining Models
Run-Time Guarantees for Real-Time Systems: The USES* Approach
CSCI1600: Embedded and Real Time Software
Evaluation and Validation
Chapter 1 Introduction(1.1)
Midterm 2 review Chapter
CSCI1600: Embedded and Real Time Software
Performance Evaluation of Real-Time Systems
Presentation transcript:

How to Improve Usability of WCET tools Dr.-Ing. Christian Ferdinand AbsInt Angewandte Informatik GmbH

2 The Timing Problem Probability Execution time Exact worst-case execution time Safe worst-case execution time estimate Best-case execution time Unsafe: execution time measurement

3 aiT WCET Analyzer  The solution to the timing problem  Global program analysis  abstract interpretation for cache, pipeline, and value analysis  integer linear programming for path analysis  Everything combined in a single intuitive GUI

4 aiT WCET Analyzer Structure Loop trafo CFG builder Executable program CRL file Loop/value analyzer Cache/pipeline analyzer AIS file CRL file Static analyses ILP generator LP solver Evaluation Path analysis WCET, visualization

5 aiT WCET Analysis Input/Output clock kHz ; loop "_codebook" + 1 loop exactly 16 end ; recursion "_fac" max 6; SNIPPET "printf" IS NOT ANALYZED AND TAKES MAX 333 CYCLES; flow "U_MOD" + 0xAC bytes / "U_MOD" + 0xC4 bytes is max 4; area from 0x20 to 0x497 is read-only; Specifications (*.ais) Entry Point q Worst Case Execution Time q Visualization, Documentation aiT void Task (void) { variable++; function(); next++: if (next) do this; terminate() } Application Code Executable (*.elf / *.out) à aŒ† | ô;ÿ Kÿÿ؉€2} Œ`øÿÿ™€(8 H#鳡¶€( Compiler Linker

Correctness of Pipeline Models Derivation of Pipeline Models from VHDL Specifications

7 Integration into the Development Chain: SCADE / aiT automated Flow

8 Integration into the Development Chain: Analysis Reports  Customizable HTML reports  Global and detailed reports  Diff feature

9 Integration into the Development Chain: Scheduling Analysis Tools System level: SymTA/S / RT-Druid Code level: aiT/StackAnalyzer System model (tasks, activation,scheduling) WCET/stack analysis (single task) Scheduling analysis (WCRT) system stack analysis Refinement WCET/stack request WCET/stack response Additional info

10 Integration into the Development Chain: INTEREST Demonstrator: Engine Control System on TriCore 1796 (Ascet, SymTA/S, aiT)

11 Exploration During Early Design Phases TimingExplorer void Task (void) { variable++; function(); while (next) { do this; next--; } terminate(); } Source files T1 T2 WCET T1

Reduce the Amount of Annotations Source-Level Analyses  Source-level analyses to automatically generate AIS-annotations  SWEET from Mälardalen University  SATIRE from TU Vienna  Upper bounds of loop iterations  Targets of indirect function calls  Mutually exclusive program part  Optimizing compilers require inspection of the binary code 12

Reduce the Amount of Annotations Source-Level Analysis:Automatic Mode Detection  A mode of an application is usually characterized by the values of a set of variables  The mode variables determine the control flow of the application  The mode variables usually do not change during the execution  Source-level analysis to automatically detect application mode variables and values  Implemented with SATIRE 13

14 Summary  Safe deviation of pipeline models  Integrations with model-based development tools  Interface to scheduling analysis tools  Support to reduce the amount of annotations  New application areas  Software integration  Architecture exploration

15 Research Projects

16 Contact