You are previewing Behavioral Modeling for Embedded Systems and Technologies: Applications for Design and Implementation.
O'Reilly logo
Behavioral Modeling for Embedded Systems and Technologies: Applications for Design and Implementation

Book Description

Behavioral Modeling for Embedded Systems and Technologies: Applications for Design and Implementation provides innovative behavior models currently used for developing embedded systems, accentuating graphical and visual notations. This dynamic compilation presents an authoritative reference collection to the most significant models of computation currently in use for embedded systems design.

Table of Contents

  1. Copyright
  2. Foreword
  3. Preface
    1. CHARACTERISTICS OF EMBEDDED SYSTEMS
    2. CATEGORIES OF EMBEDDED SYSTEMS
    3. TYPES OF EMBEDDED SYSTEMS
    4. BEHAVIORAL MODELING
    5. BOOK CONTENTS
    6. REFERENCES
  4. Acknowledgment
  5. 1. Model–Based Approaches
    1. 1. UML as Front–End Language for Embedded Systems Design
      1. ABSTRACT
      2. INTRODUCTION
      3. BACKGROUND
        1. UML Diagrams
        2. Case Study
        3. UML Modeling Limitations
        4. UML Extension Mechanism
        5. UML Profiles
      4. MODELING EMBEDDED SYSTEMS WITH UML
        1. UML Profile for MARTE
        2. Case Study
      5. CODE GENERATION FROM UML DIAGRAMS
        1. Synthesis from Dedicated Models
        2. UML and Other Languages
      6. FUTURE TRENDS
      7. CONCLUSION
      8. REFERENCES
    2. 2. Model–Driven Design and ASM–Based Validation of Embedded Systems
      1. ABSTRACT
      2. INTRODUCTION
      3. BACKGROUND
        1. Related Work
        2. The SystemC UML Profile: An Overview
          1. SystemC
          2. UML Profiles
          3. The SystemC UML profile
        3. Formal Methods for Embedded System Design
          1. Abstract State Machines and the ASMETA toolset
      4. MODEL-DRIVEN SOC DESIGN AND ANALYSIS FLOW
      5. SOC MODELING & VALIDATION ENVIRONMENT
        1. The Modeler
        2. Translators
        3. Mapping from SystemC UML Profile to AsmM
        4. Validation by Simulation
        5. Scenario-Based Functional Validation
      6. THE COUNTER CASE STUDY
        1. Modeling
        2. Validation: Simulation and Scenario-Based Validation
          1. Simulation
          2. Scenario Validation
      7. INDUSTRIAL APPLICATION
      8. FUTURE TRENDS
      9. CONCLUSION
      10. REFERENCES
      11. ENDNOTES
    3. 3. Abstract and Concrete Data Type Optimizations at the UML and C/C++ Level for Dynamic Embedded Software
      1. ABSTRACT
      2. INTRODUCTION
        1. Multimedia Applications
        2. Wireless Network Applications
      3. BACKGROUND
      4. ABSTRACT DATA TYPE OPTIMIZATIONS AT THE MODELING LEVEL (UML)
        1. A UML Profile for ADTs at the Modeling Level
          1. Features of an ADT Modeling Language
          2. Structure of our ADT Profile
        2. ADT Design-Space and Exploration
          1. Specifying the ADT Design Space
          2. ADT Design-Space Exploration
        3. A Catalog of Atomic ADT Transformations
          1. Partition Concept
            1. Intention
            2. Consequences
          2. Partition Container
            1. Intention
            2. Consequences
          3. Remove Redundant Container
            1. Intention
            2. Consequences
          4. Fuse Attributes
          5. Raise Attribute
          6. Add Computable Attribute
          7. Compress Container
      5. CONCRETE DATA TYPE OPTIMIZATIONS AT THE SOURCE CODE LEVEL (C/C++)
        1. Concrete Data Types at the Source Code Level
        2. Concrete Data Types Design Space and Exploration
        3. Design Space Exploration
      6. CASE STUDY FOR COMBINED ADT/CDT EXPERIMENTAL RESULTS
        1. The Spell-Checker Application
        2. Fuse Attributes ADT Transformation
          1. Results
        3. Partition Container ADT Transformation
          1. Results
      7. FUTURE TRENDS
      8. CONCLUSION
      9. REFERENCES
  6. 2. Aspect–Oriented Approaches
    1. 4. Concern Separation for Adaptive QoS Modeling in Distributed Real–time Embedded Systems
      1. ABSTRACT
      2. INTRODUCTION
        1. Common QoS Implementation Problems
        2. A Solution: Aspects for Supporting Model-Driven Engineering
      3. VIEWPOINT MODELING FOR QOS ADAPTATION IN DRE SYSTEMS
        1. QoS Adaptation Modeling
        2. Computation Modeling
        3. Middleware Modeling
        4. Interaction of QoS Adaptation with Middleware and Computation Modeling
      4. SPECIFYING QOS POLICIES FOR ADAPTATION OF VIDEO BANDWIDTH
        1. AQML Modeling of UAV Interactions
      5. TRANSFORMATIONS FOR RAPID EVOLUTION OF MODELS
        1. Weaving Across Finite State Machines
        2. Scaling a Base Model to Include Multiple UAVs
        3. Synthesis of AQML Models for Simulation and Execution
          1. Matlab Simulation Generator
          2. Generation of QoS Adaptation Code from AQML
      6. CONCLUDING REMARKS
      7. ACKNOWLEDGMENT
      8. REFERENCES
      9. ENDNOTE
    2. 5. High–Level Design Space Exploration of Embedded Systems Using the Model–Driven Engineering and Aspect–Oriented Design Approaches
      1. ABSTRACT
      2. INTRODUCTION
      3. BACKGROUND AND RELATED WORK
        1. Model-Driven Engineering
        2. Aspect-Oriented Design and Its Application to Embedded Systems Design
        3. Design Space Exploration for Embedded Systems Development
      4. MODELLING FOR AUTOMATED DESIGN SPACE EXPLORATION
        1. Requirements Specification
        2. Analysis and Design Modelling
      5. SUPPORTING TOOLS FOR AUTOMATIC DESIGN SPACE EXPLORATION
        1. MDE Infrastructure
        2. Model-Based Estimation Tool
        3. Automated Design Space Exploration Tool
        4. Preliminary Results
        5. Discussion
      6. FUTURE TRENDS
      7. CONCLUSION
      8. REFERENCES
    3. 6. Separation of Concerns in Model–based Development of Distributed Real–time Systems
      1. ABSTRACT
      2. INTRODUCTION
      3. EMBEDDED SOFTWARE: BEYOND FUNCTIONAL BEHAVIOR
      4. A NEW APPROACH TO DESIGN FUNCTIONAL AND PARAFUNCTIONAL CONSTRUCTS
        1. Semantic Dimensions
        2. Couplers
      5. RELATED WORK
        1. Composition Languages
      6. UML
      7. AIRES
      8. AADL
        1. Ptolemy II
        2. Aspect-Oriented Programming
        3. Meta-Model Tools
      9. PARA-FUNCTIONAL BEHAVIORS AND SOFTWARE STRUCTURES
        1. Separating Functional and Para-Functional Concerns
          1. Couplers
            1. Deployment Restrictions
            2. Couplers for the Execution Platform
            3. Communication Scopes
            4. The Timing Model
      10. MULTIPLE HIERARCHIES
        1. Functional Hierarchies
        2. Para-Functional Hierarchies
          1. Parametric Structures
          2. Role-Based Synchronization Protocols
          3. Synchronization layers
          4. Hardware Description
      11. SEMANTIC DIMENSIONS
      12. CODE GENERATION
        1. Deployment Synthesis Algorithms
      13. SUMMARY
      14. REFERENCES
  7. 3. Verification & Model Checking
    1. 7. Using Timed Automata for Modeling the Clocks of Distributed Embedded Systems
      1. ABSTRACT
      2. INTRODUCTION
      3. MODELLING WITH TIMED AUTOMATA
        1. Timed Automata
        2. UPPAAL Extensions Used in the Modeling
      4. CLOCKS IN EMBEDDED SYSTEMS: PROPERTIES AND USES
        1. The Ideal Clock
        2. The Physical Clock
        3. The Global Clock
        4. The Virtual Clock
        5. Clocks and the Paradigms for the Design of Distributed Embedded Systems
        6. Common Challenges when Modeling Computer Clocks
      5. MODELLING COMPUTER CLOCKS WITH UPPAAL
        1. Modeling Ideal Timers with UPPAAL
        2. Modeling Timers of Bounded Drift with UPPAAL
          1. Perturbed Timed Automata
          2. Example 1: A Timer-Driven System with Drifting Physical Clocks
          3. Example 2: A Clock-Driven System with Drifting Virtual Clocks
        3. Modeling Timers of Variable Drift with UPPAAL: The Case of Clock Synchronization
      6. CONCLUSION
      7. REFERENCES
      8. ENDNOTES
    2. 8. Model Checking of Multitasking Real–Time Applications Based on the Timed Automata Model Using One Clock
      1. ABSTRACT
      2. INTRODUCTION
      3. BACKGROUND
        1. Model-Checking
        2. Real-Time Systems Model: Timed Automata
        3. UPPAAL Requirement Specification Language
        4. OSEK/VDX Overview
          1. Task Management
          2. Event Management
          3. Resource Management
          4. Interrupt Management
      4. FINE-GRAIN MODEL OF A MULTITASKING APPLICATION
        1. Task Model
        2. Os Kernel Model
          1. Variables Representing OS Objects
          2. OS Services
      5. PREEMPTION MODELING
        1. The Essential Problem with Preemption Modeling
        2. Basic Idea of the One-Clock Approach
        3. Implementation of the One-Clock Approach by the Timed Automaton
          1. Ad Context Switch Modeling
          2. Ad Δ-List Management after Preemption
          3. Ad Execution Time Measurement
        4. Over-Approximation of Preemption Modeling
      6. EXPERIMENTAL RESULTS
      7. CASE STUDY
      8. RELATED WORKS
      9. CONCLUSION
      10. ACKNOWLEDGMENT
      11. REFERENCES
    3. 9. SystemC Platform Modeling for Behavioral Simulation and Performance Estimation of Embedded Systems
      1. ABSTRACT1
      2. INTRODUCTION
      3. BACKGROUND
        1. System Simulation and Performance Estimation
        2. SystemC
      4. SYSTEMC EXTENSIONS FOR TIMED-BEHAVIORAL SIMULATION
        1. Application SW Modeling
          1. Performance Estimation
          2. Execution Model
        2. RTOS Modeling
        3. HW Platform Modeling
          1. Bus Modeling
          2. NoC Modeling
          3. HW Peripherals
        4. SCoPE: SystemC Library for Platform Modeling
        5. Case Study and Results
          1. Results
      5. CONCLUSION
      6. REFERENCES
      7. ENDNOTES
  8. 4. Design Automation
    1. 10. Engineering Embedded Software: From Application Modeling to Software Synthesis
      1. ABSTRACT
      2. INTRODUCTION
      3. BACKGROUND
        1. Embedded Software Development Requirements
        2. Embedded Software Modeling and Design
        3. Domain Specific Languages for Embedded Systems
        4. Formal Verification for Embedded Systems
        5. Software Synthesis
        6. Software Automation for Embedded Systems: A CASE STUDY
        7. Design Flow for Embedded Software Automation
          1. Alloy Language
          2. Model Translator
            1. Class and Attributes Generation
            2. Method Generation
            3. Alloy Built-In Operations Generation
            4. State Machine Inference and Synthesis
          3. Estimation Tool and Target Platform
          4. Experimental Results
      4. FUTURE TRENDS
      5. CONCLUSION
      6. REFERENCES
    2. 11. Transaction Level Model Automation for Multicore Systems
      1. ABSTRACT
      2. INTRODUCTION
      3. TLM BACKGROUND
      4. PLATFORM-BASED DESIGN
      5. BACKGROUND
      6. PLATFORM MODELING
        1. Generic Bus Channel
          1. Synchronization
          2. Arbitration
        2. Generic Bridge Module
          1. FIFO Channels
          2. Request Buffers
          3. IO Module
        3. Expressivity of the Elements
      7. AUTOMATIC TLM GENERATION
        1. GBC Code Generation
          1. GBM Code Generation
        2. Top Module Code Generation
      8. EXPERIMENTAL RESULTS
      9. CONCLUSION, FUTURE TRENDS
      10. ACKNOWLEDGMENT
      11. REFERENCES
    3. 12. The Role of Programming Models on Reconfigurable Computing Fabrics
      1. ABSTRACT
      2. INTRODUCTION
      3. SYSTEMS-ON-A-RECONFIGURABLE FABRIC
        1. The Potential of Reconfigurable Logic to implement Architectures
        2. The Role of Softcores as Programmable Layers
        3. Seamless Software/Hardware Integration
        4. Architecting the SoC Organization
      4. MAPPING COMPUTATIONS AND PROGRAMMING MODELS
        1. Mapping Applications to Reconfigurable Fabrics
          1. Targeting Single- or Multi-Processor Architectures
          2. Targeting Application-Specific Computing Engines
          3. Targeting ALU-Based Reconfigurable Arrays
        2. Models of Computation and Reconfigurable Fabrics
          1. Models of Computation and Their Suitability for Reconfigurable Fabrics
          2. Comments on the Support Given by Reconfigurable Architectures
      5. PROGRAMMING LANGUAGES
        1. Addressing Applicationspecific Computing Engines
        2. Addressing System-Level Design
        3. Addressing Parallel Computers
        4. Domain-Specific Languages
      6. EXAMPLES
        1. Example-A: Single-core vs. Customized Multi-core Architectures
        2. Example B: Generic vs. Domain-Specific Architectures
      7. CONCLUSION
      8. ACKNOWLEDGMENT
      9. REFERENCES
      10. ENDNOTES
  9. 5. Industrial Applications
    1. 13. Reconfiguration of Industrial Embedded Control Systems
      1. ABSTRACT
      2. INTRODUCTION
      3. BACKGROUND
        1. IEC61499 Standard
        2. Industrial Case Study
          1. FESTO Manufacturing System
          2. EnAS Manufacturing System
        3. NCES Formalism: Extension of Petri Net
        4. The Temporal Logic: Computation Tree Logic
          1. Computation Tree Logic
          2. Extended Computation Tree Logic
          3. Timed Computation Tree Logic
      4. STATE OF THE ART
      5. CONTRIBUTIONS
      6. NEW RECONFIGURATION SCENARIO
      7. RECONFIGURATION CASES
      8. AUTOMATIC RECONFIGURATION OF EMBEDDED SYSTEMS
        1. Architecture of the Reconfiguration Agent
        2. System Behaviors
        3. Specification with Net Condition / Event Systems
      9. VERIFICATION OF CONTROL SYSTEMS FOLLOWING THE STANDARD IEC 61499
        1. Verification of Functional Properties
        2. Verification of Temporal Properties
        3. Verification of QoS Properties
      10. REAL-TIME ASSIGNMENT
        1. Formalization of a FB Network
          1. Action of a Reconfiguration Scenario
          2. Trace of a Reconfiguration Scenario
        2. Assignment of a Resource
          1. Hyper Period Evaluation for a Reconfiguration Scenario
          2. Reachability Graph of a Resource for a Reconfiguration Scenario
        3. Construction of GRes i,j,k,h
          1. Generation of a Resource Pre-scheduling for a Reconfiguration Scenario
          2. Assignment of Function Blocks into OS Tasks
        4. Rule 0. Construction of the First Subtask T0i,j,k,h in Г Res i,j,k,h
        5. Verification of OS tasks for a Reconfiguration Scenario
        6. Generalization: Verification and Assignment of Reconfigurable Control Systems
          1. Algorithm
          2. Discussion
      11. FUTURE TRENDS
      12. CONCLUSION
      13. REFERENCES
    2. 14. Architecture Description Languages for the Automotive Domain
      1. ABSTRACT
      2. INTRODUCTION
      3. BACKGROUND
        1. Reference Architectures for the Automotive Domain
        2. Concepts of Architecture Description Languages
      4. EAST-ADL: AN ARCHITECTURE DESCRIPTION LANGUAGE FOR THE AUTOMOTIVE INDUSTRY
        1. Artifacts in EAST-ADL
          1. Vehicle Feature Model
          2. Functional Analysis Architecture
          3. Functional Design Architecture
          4. Function Instance Model
          5. Hardware Architecture
          6. Platform Model
          7. Allocation Model
        2. Association EAST-ADL / AUTOSAR
      5. CONSISTENCY OF EASTADL MODELS
        1. Requirements Modeling
        2. EAST-ADL as a Support for Validation and Verification Activities
          1. V&V Cases in the Design Process of Embedded Electronic Architecture
          2. Modeling of V&V Cases with EAST-ADL
      6. EXAMPLE: TIMING ANALYSIS
        1. System Under Study
        2. Quality Requirement and Verification Process
        3. EAST Verification Process Applied to the Example
      7. CONCLUSION
      8. REFERENCES
    3. 15. Model-Based Testing of Embedded Systems Exemplified for the Automotive Domain
      1. ABSTRACT
      2. INTRODUCTION
        1. Embedded System Context
        2. Automotive Domain
      3. TESTING OF EMBEDDED SYSTEMS
        1. Background
        2. Test Development Process
        3. Hybrid Embedded Systems Test and its Dimensions
      4. MODEL-BASED TESTING TAXONOMY
        1. Model-Based Testing Taxonomy
        2. Test Generation
        3. Test Execution
        4. Test Evaluation
      5. ANALYSIS OF THE EXISTING APPROACHES FOR THE AUTOMOTIVE DOMAIN
        1. Academic Achievements
        2. Industrial Test Approaches
        3. Analysis Summary
      6. SOLUTION PROPOSAL
        1. The MiLEST Approach
        2. The Test Development Process in MiLEST
        3. MiLEST Effects and Benefits
      7. CASE STUDY
      8. CONCLUSION AND FUTURE TRENDS
      9. REFERENCES
  10. Compilation of References
  11. About the Contributors