Code Generation and System Integration of Distributed Automotive Applications

In this thesis an approach for the automated code generation and system integration of distributed automotive applications is presented. The concept is based on the Component Language (COLA), which has been created during a joint research project between BMW Group Research and Technology, and Technische Universitat Munchen. The language is targeted at the design of safety-critical automotive systems. COLA facilitates software modeling throughout the entire development process, thus covering requirements, behavior, and technical aspects of the system under design. Using the information contained in this comprehensive model, executable code for applications as well as configuration data for the distributed target platform are produced. As a result, the generated system is ready for execution on a distributed platform without requiring any manual integration.

[1]  Michael Tautschnig,et al.  Running COLA on Embedded Systems , 2008, IMECS 2008.

[2]  Cornelia Heinisch,et al.  Adaptierbare Software-Architektur für den Software-Download in Kfz-Steuergerate , 2003, GI Jahrestagung.

[3]  Uwe Baumgarten,et al.  Reliable operating modes for distributed embedded systems , 2009, 2009 ICSE Workshop on Model-Based Methodologies for Pervasive and Embedded Software.

[4]  Françoise Simonot-Lion,et al.  EAST-ADL - An Architecture Description Language - Validation and Verification Aspects , 2004, IFIP-WADL.

[5]  Günter Grünsteidl,et al.  TTP - A Protocol for Fault-Tolerant Real-Time Systems , 1994, Computer.

[6]  Kevin Driscoll,et al.  ARINC 659 scheduling: problem definition , 1994, 1994 Proceedings Real-Time Systems Symposium.

[7]  Thomas A. Henzinger,et al.  Composable code generation for distributed giotto , 2005, LCTES '05.

[8]  David Lorge Parnas,et al.  Scheduling Processes with Release Times, Deadlines, Precedence, and Exclusion Relations , 1990, IEEE Trans. Software Eng..

[9]  Manfred Broy The 'Grand Challenge' in Informatics: Engineering Software-Intensive Systems , 2006, Computer.

[10]  Cm Ananda Civil Aircraft Advanced Avionics Architecutres - An Insight Into Saras Avionics, Present and Future Perspective13; , 2007 .

[11]  Fausto Giunchiglia,et al.  A Provably Correct Embedded Verifier for the Certification of Safety Critical Software , 1997, CAV.

[12]  Charles E. McDowell,et al.  Debugging concurrent programs , 1989, ACM Comput. Surv..

[13]  J.W. McBride,et al.  The degradation of road tested automotive connectors , 1999, Electrical Contacts - 1999. Proceedings of the Forty-Fifth IEEE Holm Conference on Electrical Contacts (Cat. No.99CB36343).

[14]  Manfred Broy,et al.  Scanning Advances in Aerospace & Automobile Software Technology , 2010, Proceedings of the IEEE.

[15]  R. Makowitz,et al.  Flexray - A communication network for automotive control systems , 2006, 2006 IEEE International Workshop on Factory Communication Systems.

[16]  Hermann Kopetz,et al.  Why time-triggered architectures will succeed in large hard real-time systems , 1995, Proceedings of the Fifth IEEE Computer Society Workshop on Future Trends of Distributed Computing Systems.

[17]  Jonathan Streit,et al.  SALT - Structured Assertion Language for Temporal Logic , 2006, ICFEM.

[18]  WILLIAM B. ACKERMAN Data flow languages , 1979, 1979 International Workshop on Managing Requirements Knowledge (MARK).

[19]  Markus Herrmannsdoerfer,et al.  Model-level simulation for COLA , 2009, 2009 ICSE Workshop on Modeling in Software Engineering.

[20]  Amir Pnueli,et al.  On the Development of Reactive Systems , 1989, Logics and Models of Concurrent Systems.

[21]  H Fennel,et al.  AUTOSAR-challenges and achievements 2005 , 2005 .

[22]  Hermann Kopetz,et al.  Event-Triggered Versus Time-Triggered Real-Time Systems , 1991, Operating Systems of the 90s and Beyond.

[23]  Manfred Broy,et al.  Engineering Automotive Software , 2007, Proceedings of the IEEE.

[24]  A. Benveniste,et al.  The SIGNAL declarative synchronous language: controller synthesis and systems/architecture design , 2001, Proceedings of the 40th IEEE Conference on Decision and Control (Cat. No.01CH37228).

[25]  Bernhard Schätz,et al.  A Case Study on Safety Cases in the Automotive Domain: Modules, Patterns, and Models , 2010, 2010 IEEE 21st International Symposium on Software Reliability Engineering.

[26]  George C. Necula,et al.  Translation validation for an optimizing compiler , 2000, PLDI '00.

[27]  Hermann Kopetz,et al.  Real-time systems , 2018, CSC '73.

[28]  Aniruddha S. Gokhale,et al.  Applying model-driven development to distributed real-time and embedded avionics systems , 2006, Int. J. Embed. Syst..

[29]  Kirsten Berkenkötter,et al.  Using UML 2 . 0 in Real-Time Development A Critical Review , 2003 .

[30]  D. Putti,et al.  A qualitative analysis of automatic code generation tools for automotive powertrain applications , 1999, Proceedings of the 1999 IEEE International Symposium on Computer Aided Control System Design (Cat. No.99TH8404).

[31]  P. Stravers Embedded system design , 1994 .

[32]  Pascal Raymond,et al.  The synchronous data flow programming language LUSTRE , 1991, Proc. IEEE.

[33]  Bernhard Rumpe,et al.  The UML as a formal modeling notation , 1998, Comput. Stand. Interfaces.

[34]  Robert Mores,et al.  FlexRay - The Communication System for Advanced Automotive Control Systems , 2001 .

[35]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[36]  Zhonglei Wang,et al.  COLA -- The component language , 2007 .

[37]  Markus Herrmannsdoerfer,et al.  Seamless Model-Driven Development Put into Practice , 2010, ISoLA.

[38]  Edward A. Lee,et al.  What's Ahead for Embedded Software? , 2000, Computer.

[39]  Felix C. Gärtner,et al.  Fundamentals of fault-tolerant distributed computing in asynchronous environments , 1999, CSUR.

[40]  Sébastien Gérard,et al.  MARTE: Also an UML Profile for Modeling AADL Applications , 2007, 12th IEEE International Conference on Engineering Complex Computer Systems (ICECCS 2007).

[41]  Stefan Poledna,et al.  Time-Triggered Architecture: A Consistent Computing Platform , 2002, IEEE Micro.

[42]  Uwe Baumgarten,et al.  Model-Based Generation of Fault-Tolerant Embedded Systems , 2010, ESA.

[43]  Stefan Kugele,et al.  Mapping Data-Flow Dependencies onto Distributed Embedded Systems , 2008, Software Engineering Research and Practice.

[44]  Markus Herrmannsdoerfer,et al.  Model-Level Debugging of Embedded Real-Time Systems , 2010, 2010 10th IEEE International Conference on Computer and Information Technology.

[45]  L. G. Tesler,et al.  A language design for concurrent processes , 1899, AFIPS Spring Joint Computing Conference.

[46]  Florence Maraninchi,et al.  Mode-Automata: a new domain-specific construct for the development of safe critical systems , 2003, Sci. Comput. Program..

[47]  Jason Gait,et al.  A probe effect in concurrent programs , 1986, Softw. Pract. Exp..

[48]  A. Cook,et al.  ARINC 653 - Challenges of the present and future , 1995, Microprocess. Microsystems.

[49]  Rolf Ernst,et al.  Safe Automotive Software Development , 2003, DATE.

[50]  Thomas A. Henzinger,et al.  The Discipline of Embedded Systems Design , 2007, Computer.

[51]  P. Anderson Coding standards for high-confidence embedded systems , 2008, MILCOM 2008 - 2008 IEEE Military Communications Conference.

[52]  Stephen A. Edwards,et al.  The synchronous languages 12 years later , 2003, Proc. IEEE.

[53]  F. Brajou,et al.  The Airbus A380 - an AFDX-based flight test computer concept , 2004, Proceedings AUTOTESTCON 2004..

[54]  Roman Obermaisser,et al.  An integrated architecture for future car generations , 2005, Eighth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC'05).

[55]  Ethan K. Jackson,et al.  Components, platforms and possibilities: towards generic automation for MDA , 2010, EMSOFT '10.

[56]  Nancy G. Leveson,et al.  Safety-Driven Design for Software-Intensive Aerospace and Automotive Systems , 2010, Proceedings of the IEEE.

[57]  Alberto L. Sangiovanni-Vincentelli,et al.  Software Components for Reliable Automotive Systems , 2008, 2008 Design, Automation and Test in Europe.

[58]  Xin Yuan,et al.  Validation of code-improving transformations for embeded systems , 2003, SAC '03.

[59]  Sabine Rittmann,et al.  A methodology for modeling usage behavior of multi-functional systems , 2008 .

[60]  Sébastien Gérard,et al.  Towards Improving Dependability of Automotive Systems by Using the EAST-ADL Architecture Description Language , 2006, WADS.

[61]  Yeqiong Song,et al.  Trends in Automotive Communication Systems , 2005, Proc. IEEE.

[62]  P. Gerum Xenomai-Implementing a RTOS emulation framework on GNU / Linux , 2022 .

[63]  Raimund Kirner,et al.  Classification of Code Annotations and Discussion of Compiler-Support for Worst-Case Execution Time Analysis , 2005, WCET.

[64]  Hermann Kopetz,et al.  The time-triggered architecture , 1998, Proceedings First International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC '98).

[65]  Ren C. Luo,et al.  Multisensor integration and fusion in intelligent systems , 1989, IEEE Trans. Syst. Man Cybern..

[66]  Ivar Jacobson,et al.  Unified Modeling Language Reference Manual, The (2nd Edition) , 2004 .

[67]  Klaus Grimm Software technology in an automotive company - major challenges , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[68]  H. Kopetz,et al.  A Comparison of TTP/C and FlexRay , 2001 .

[69]  Sébastien Gérard,et al.  First Experiments Using the UML Profile for MARTE , 2008, 2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC).

[70]  Klaus Buchenrieder,et al.  Multilevel testing for design verification of embedded systems , 2002, IEEE Design & Test of Computers.

[71]  C. Douglas Locke,et al.  Software architecture for hard real-time applications: Cyclic executives vs. fixed priority executives , 1992, Real-Time Systems.

[72]  Carlo Rossi,et al.  Giotto a time-triggered language for embedded programming , 2011 .

[73]  Christof Ebert,et al.  Guest Editors' Introduction: Embedded Software Technologies and Trends , 2009, IEEE Softw..

[74]  David A. Patterson,et al.  Computer Architecture: A Quantitative Approach , 1969 .

[75]  Stavros Tripakis,et al.  From simulink to SCADE/lustre to TTA: a layered approach for distributed embedded applications , 2003 .

[76]  Donal Heffernan,et al.  Expanding Automotive Electronic Systems , 2002, Computer.

[77]  Bernd Hardung,et al.  Reuse of software in distributed embedded automotive systems , 2004, EMSOFT '04.

[78]  A. Zahir OIL-OSEK implementation language , 1998 .

[79]  Nicolas Halbwachs,et al.  Synchronous Programming of Reactive Systems , 1992, CAV.

[80]  Gérard Berry,et al.  The Esterel Synchronous Programming Language: Design, Semantics, Implementation , 1992, Sci. Comput. Program..

[81]  Andy J. Wellings,et al.  Analysing real-time communications: controller area network (CAN) , 1994, 1994 Proceedings Real-Time Systems Symposium.

[82]  Uwe Baumgarten,et al.  From COLA Models to Distributed Embedded Systems Code , 2008 .

[83]  Uwe Baumgarten,et al.  A Middleware for Model-Based Embedded Systems , 2008, ESA.

[84]  Wei Zheng,et al.  Definition of Task Allocation and Priority Assignment in Hard Real-Time Distributed Systems , 2007, RTSS 2007.

[85]  Manfred Broy,et al.  Challenges in automotive software engineering , 2006, ICSE.

[86]  Hermann Kopetz,et al.  Clock Synchronization in Distributed Real-Time Systems , 1987, IEEE Transactions on Computers.

[87]  Willem P. de Roever,et al.  29 New Unclarities in the Semantics of UML 2.0 State Machines , 2005, ICFEM.

[88]  Jie Liu,et al.  Resource Modeling and Scheduling for Extensible Embedded Platforms , 2006 .

[89]  P.J. Prisaznuk,et al.  ARINC 653 role in Integrated Modular Avionics (IMA) , 2008, 2008 IEEE/AIAA 27th Digital Avionics Systems Conference.

[90]  Albert Benveniste,et al.  The synchronous approach to reactive and real-time systems , 1991 .

[91]  Xin Yuan,et al.  Automatic validation of code-improving transformations on low-level program representations , 2004, Sci. Comput. Program..

[92]  Gerard C. M. Meijer,et al.  Concepts and focus point for intelligent sensor systems , 1994 .

[93]  Albert Benveniste,et al.  Compositionality in Dataflow Synchronous Languages: Specification and Distributed Code Generation , 2000, Inf. Comput..

[94]  S. J. Berger,et al.  ARINC 629 digital communication system - application on the 777 and beyond , 1997, Microprocess. Microsystems.

[95]  Manfred Broy,et al.  Umfassendes Architekturmodell fuer das Engineering eingebetteter Software-intensiver Systeme , 2008 .

[96]  D. Stott Parker,et al.  Saving traces for Ada debugging , 1985, SIGAda '85.

[97]  Stefan Voget AUTOSAR and the automotive tool chain , 2010, 2010 Design, Automation & Test in Europe Conference & Exhibition (DATE 2010).

[98]  Peter Liggesmeyer,et al.  Trends in Embedded Software Engineering , 2009, IEEE Software.

[99]  Jean-Philippe Babau,et al.  RT-simex: retro-analysis of execution traces , 2010, FSE '10.

[100]  John M. Rushby,et al.  Bus Architectures for Safety-Critical Embedded Systems , 2001, EMSOFT.

[101]  Stefan Kugele,et al.  Optimizing Automatic Deployment Using Non-functional Requirement Annotations , 2008, ISoLA.

[102]  A. Burns,et al.  Scheduling hard real-time systems: a review , 1991, Softw. Eng. J..

[103]  Alberto L. Sangiovanni-Vincentelli,et al.  Embedded System Design for Automotive Applications , 2007, Computer.

[104]  Hans A. Hansson,et al.  Basement: an Architecture and Methodology for Distributed Automotive Real-time Systems , 1997 .

[105]  Daniel D. Hils,et al.  Visual languages and computing survey: Data flow visual programming languages , 1992, J. Vis. Lang. Comput..

[106]  Susan Stepney,et al.  Formal Proof from UML Models , 2004, ICFEM.

[107]  José Rufino,et al.  Fault-tolerant clock synchronization in CAN , 1998, Proceedings 19th IEEE Real-Time Systems Symposium (Cat. No.98CB36279).

[108]  Parosh Aziz Abdulla,et al.  Designing Safe, Reliable Systems Using Scade , 2004, ISoLA.

[109]  P. J. Prisaznuk,et al.  Integrated modular avionics , 1992, Proceedings of the IEEE 1992 National Aerospace and Electronics Conference@m_NAECON 1992.

[110]  Abraham Silberschatz,et al.  Operating System Concepts , 1983 .

[111]  M. Broy Automotive software and systems engineering , 2005, Proceedings. Second ACM and IEEE International Conference on Formal Methods and Models for Co-Design, 2005. MEMOCODE '05..

[112]  Dale A. Mackall Development and flight test experiences with a flight-crucial digital control system , 1988 .

[113]  R.W. Butler,et al.  Design strategy for a formally verified reliable computing platform , 1991, COMPASS '91, Proceedings of the Sixth Annual Conference on Computer Assurance.

[114]  Robert Bosch,et al.  Comparison of Event-Triggered and Time-Triggered Concepts with Regard to Distributed Control Systems , 2004 .