Presenter : Shih-Tung Huang Tsung-Cheng Lin Kuan-Fu Kuo 2015/6/15 EICE team Model-Level Debugging of Embedded Real-Time Systems Wolfgang Haberl, Markus.

Slides:



Advertisements
Similar presentations
Executional Architecture
Advertisements

Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
Overview: Chapter 7  Sensor node platforms must contend with many issues  Energy consumption  Sensing environment  Networking  Real-time constraints.
Presented by: Thabet Kacem Spring Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.
Reporter:PCLee With a significant increase in the design complexity of cores and associated communication among them, post-silicon validation.
Asa MacWilliams Lehrstuhl für Angewandte Softwaretechnik Institut für Informatik Technische Universität München Dec Software.
6.1 Copyright © 2014 Pearson Education, Inc. publishing as Prentice Hall Building Information Systems Chapter 13 VIDEO CASES Video Case 1: IBM: Business.
Multimedia Search and Retrieval: New Concepts, System Implementation, and Application Qian Huang, Atul Puri, Zhu Liu IEEE TRANSACTION ON CIRCUITS AND SYSTEMS.
High-level System Modeling and Power Management Techniques Jinfeng Liu Dept. of ECE, UC Irvine Sep
System Design and Analysis
Requirements Analysis Concepts & Principles
Ritu Varma Roshanak Roshandel Manu Prasanna
CS533 - Concepts of Operating Systems
Functional Coverage Driven Test Generation for Validation of Pipelined Processors P. Mishra and N. Dutt Proceedings of the Design, Automation and Test.
November 18, 2004 Embedded System Design Flow Arkadeb Ghosal Alessandro Pinto Daniele Gasperini Alberto Sangiovanni-Vincentelli
Software Issues Derived from Dr. Fawcett’s Slides Phil Pratt-Szeliga Fall 2009.
Copyright Arshi Khan1 System Programming Instructor Arshi Khan.
Software Life Cycle Model
Architectural Design.
Introduction to Systems Analysis and Design Trisha Cummings.
Research on cloud computing application in the peer-to-peer based video-on-demand systems Speaker : 吳靖緯 MA0G rd International Workshop.
1 BTEC HNC Systems Support Castle College 2007/8 Systems Analysis Lecture 9 Introduction to Design.
An Introduction to Software Architecture
Introduction to MDA (Model Driven Architecture) CYT.
Role-Based Guide to the RUP Architect. 2 Mission of an Architect A software architect leads and coordinates technical activities and artifacts throughout.
Proof Carrying Code Zhiwei Lin. Outline Proof-Carrying Code The Design and Implementation of a Certifying Compiler A Proof – Carrying Code Architecture.
Contents 1.Introduction, architecture 2.Live demonstration 3.Extensibility.
Henri Kujala Integration of programmable logic into a network front-end of a telecontrol system Supervisor: Professor Patric Östergård Instructor: Jouni.
Model-Driven Analysis Frameworks for Embedded Systems George Edwards USC Center for Systems and Software Engineering
Modeling and simulation of systems Model building Slovak University of Technology Faculty of Material Science and Technology in Trnava.
11 CORE Architecture Mauro Bruno, Monica Scannapieco, Carlo Vaccari, Giulia Vaste Antonino Virgillito, Diego Zardetto (Istat)
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
DEBUGGING. BUG A software bug is an error, flaw, failure, or fault in a computer program or system that causes it to produce an incorrect or unexpected.
1 Introduction to Software Engineering Lecture 1.
The Systems Development Life Cycle
An Ontological Framework for Web Service Processes By Claus Pahl and Ronan Barrett.
Chapter 10 Analysis and Design Discipline. 2 Purpose The purpose is to translate the requirements into a specification that describes how to implement.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
1 Context-dependent Product Line Practice for Constructing Reliable Embedded Systems Naoyasu UbayashiKyushu University, Japan Shin NakajimaNational Institute.
Model Checking and Model-Based Design Bruce H. Krogh Carnegie Mellon University.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
Performance evaluation on grid Zsolt Németh MTA SZTAKI Computer and Automation Research Institute.
SOFTWARE DESIGN. INTRODUCTION There are 3 distinct types of activities in design 1.External design 2.Architectural design 3.Detailed design Architectural.
© 2005 Prentice Hall1-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
Lab 5 CPIT 250 System Analysis and Design.
By Jeff Dean & Sanjay Ghemawat Google Inc. OSDI 2004 Presented by : Mohit Deopujari.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Design and Implementation of Spacecraft Avionics Software Architecture based on Spacecraft Onboard Interface Services and Packet Utilization Standard Beijing.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Course: COMS-E6125 Professor: Gail E. Kaiser Student: Shanghao Li (sl2967)
Internet of Things. IoT Novel paradigm – Rapidly gaining ground in the wireless scenario Basic idea – Pervasive presence around us a variety of things.
Digital Design Using VHDL and PLDs ECOM 4311 Digital System Design Chapter 1.
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
Capturing Requirements. Questions to Ask about Requirements 1)Are the requirements correct? 2)Consistent? 3)Unambiguous? 4)Complete? 5)Feasible? 6)Relevant?
1 SYS366 Week 1 - Lecture 1 Introduction to Systems.
Software Systems Division (TEC-SW) ASSERT process & toolchain Maxime Perrotin, ESA.
Introduction to Computer Programming Concepts M. Uyguroğlu R. Uyguroğlu.
Chapter 2 Database System Concepts and Architecture
OVERVIEW Impact of Modelling and simulation in Mechatronics system
Unified Modeling Language
Introduction to System Analysis and Design
Distribution and components
Design and Implementation of Spacecraft Avionics Software Architecture based on Spacecraft Onboard Interface Services and Packet Utilization Standard Beijing.
Web Ontology Language for Service (OWL-S)
Model-Driven Analysis Frameworks for Embedded Systems
An Introduction to Software Architecture
Design Yaodong Bi.
Stumpf and Teague Object-Oriented Systems Analysis and Design with UML
Stumpf and Teague Object-Oriented Systems Analysis and Design with UML
Presentation transcript:

Presenter : Shih-Tung Huang Tsung-Cheng Lin Kuan-Fu Kuo 2015/6/15 EICE team Model-Level Debugging of Embedded Real-Time Systems Wolfgang Haberl, Markus Herrmannsdoerfery, Jan Birkez and Uwe Baumgartenx Institut f¨ur Informatik, Technische Universit¨at M¨unchen Garching b. M¨unchen, Germany th IEEE International Conference on Computer and Information Technology (CIT 2010)

Outline Abstract Introduction to COLA Related work What’s the problem Proposed solution Experiences Conclusion

Model-driven development has become the state-of-the- art approach for designing embedded real-time systems. Due to their high level of abstraction, models are easier to understand and verify, thus leading to less faulty systems. But even when combined with automatic code generation, there is still the risk of unintended behavior. This may, for example, arise from real sensor inputs which differ from the characteristics assumed in the model. Consequently, debugging techniques still play an important role, even in model-driven development processes. 3 Abstract (1)

However, debugging a system on the embedded target platform is tedious because of the limited user interface. In this paper, we present an approach for capturing runtime data on the target platform and mapping them back to the model. Debugging can then be performed at model-level by visualizing actual input data, like feedback from the target platform’s environment. Using a case study, we demonstrate a realization of our approach. 4 Abstract (2)

What is COLA COmponent LAnguage Provide constructs to module a system along different layers of abstraction COLA define three abstraction layers Feature architecture: so-call features Logical architecture: map features onto software architecture Technical architecture: map logical model functionality onto the target platform This paper focus on Logical and Technical architecture layers 5 Introduction

Logical architecture Define functional behavior of a system The functional behavior is composed by many states and transitions State is composed by sub-units and channels Sub-unit stand for a task in a state, and channel form orders between tasks 6 Introduction

Technical architecture Map system functionality onto the target platform Hardware architecture: the architecture of target platform Cluster architecture: partition the system functionality into distributable entities Allocation: establish the relationship between Hardware and Cluster 7 Introduction

COLA was built to tackle the complexity of large scale system in related work[3] After COLA finish model a system, in related work [5] and [6], it can automatic generate executable distributed code which can be executed on platform When code be executed on platform, in related work [7], all software components communicate around through the middleware It mean middleware can record the exchange data between software components in related work [8], it can simulate the system operation when we give environment condition argument 8 Related work

Even in such generated system may product failures Due to faults contained in the system specification limited knowledge about the exact environmental conditions Traditional debug method can not find out the problem of above Only find out functionality bugs 9 What’s the problem

For simulation can be realized, this paper propose a method below First, they modify code generation (related work [5] and [6]) for indicating state number Second, use the middleware (related work [8]) on platform for tracing data on running time Third, do the data extraction, then feedback the information to each module for realizing simulation 10 Proposed solution

Code generation generate executable distributed code which can be executed on platform produce configure file for middleware When system startup the middleware can read the cluster and their ports information which want to be traced Captured data of ports can map back to the model by their unique middleware address 11 Code generation (1) State number Nested State Top is a automaton state

Problem: the state number is difficult map back to the model Due to state number is formed by chunk data solution: use the additional annotation to connect the relationship between every level’s automaton 12 Code generation (2)

middleware can trace the data transfer and state change When every cluster want to communication with others, the request must be translated into read or write call to middleware Every cluster use middleware to load or store their state number This paper focus two issue for tracing data First, the trace storage format should be compact as possible as we can Second, no complicated transformations to save processing resource 13 System execution

Due to the reason of above, the storage format is simply Binary format Just only two definition in header TASK: specifies the types used for the state values DATA: what ports’ data of cluster want to be recorded when data extraction the specific properties such as endianness and sizes of primitive data types must be noticed 14 Data extraction

This paper use a parking system based on several distance sensors to prove the viability of above approach There have three ECUs Input (sensors): 2 infrared, 1 supersonic sensors and Bluetooth Output (actuator) : motor and steering, indicator, reversing, and breaking lights Middleware: top of the network for data exchange and clock synchronization services parking cluster contained 115 units and was traced for 147 invocations, corresponding to 14.7 seconds The generated trace file was 45 KByte in size 15 Experiences

At first, this paper describe the problem they want to solve and their contribution clearly Second, they introduction the COLA and through now what it become Related work [4]~[7] Third, propose what method do they use to solve the problem Final, they use experiences to show why then want to solve this problem and testing result 16 Conclusion