Lecture Building reliable component-based systems - Chapter 13: Components in real-time systems

34 28 0
Lecture Building reliable component-based systems - Chapter 13: Components in real-time systems

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

In this chapter, the following content will be discussed: Introduction, Characteristics and challenges of real-time systems, real-time component models, designing component-based real-time systems, composition of components, example: RT components in rubus OS.

Chapter 13 Components in Real-Time Systems Building Reliable Component­based  Overview Introduction Characteristics and challenges of real-time systems Real-time component models Designing component-based real-time systems Composition of components Example: RT components in Rubus OS Building Reliable Component­based  Introduction Embedded computers Medical control equipment, mobile phones, and vehicle control systems Most of such embedded systems can also be characterized as real-time systems They must usually meet stringent specifications for safety, reliability, limited hardware capacity etc Building Reliable Component­based  Characteristics and Challenges of RTS Real-time systems are computing systems in which the meeting of timing constraints is essential to correctness If the system delivers the correct answer, but after a certain deadline, it could be regarded as having failed Building Reliable Component­based  Tasks Real-time systems can be constructed of sequential programs, but typically they are built of concurrent programs, called tasks Tasks are usually divided into: Periodic tasks: consist of an infinite sequence of identical activities, called instances, which are invoked within regular time periods Non-periodic : are invoked by the occurrence of an event Building Reliable Component­based  Scheduling Offline scheduling: The scheduler has complete knowledge of the task set and its constraints Online scheduling: Make their scheduling decisions during run-time Deadline: Is the maximum time within which the task must complete its execution with respect to an event Real-time systems are divided into two classes, hard and soft real-time systems Building Reliable Component­based  Limited Resources Common CBSE technologies (JavaBeans, CORBA and COM) are seldom used as they: Require excessive processing requirements Require excessive memory requirements Provide unpredictable timing characteristics Building Reliable Component­based  System Level Analysis At system level we analyze to determine if the system composed fulfils the timing requirements Several different mature analysis methods exist, for example, analysis for priority-based systems and prerun-time scheduling techniques Building Reliable Component­based  Real-time Component Models Using a standard operating system in a real-time application, such as windows NT must be done carefully, as it was designed to be used so Building Reliable Component­based  Application-specific Component Models Maintain a component library which the application engineer can use when developing an application In addition to infrastructure components, domain specific component models, which in fact have been used for many years for certain domains must be considered Building Reliable Component­based  Architecture Analysis At this stage it is time to check that the system under development satisfies extra-functional requirements such as: Maintainability Reusability Modifiability Testability Building Reliable Component­based  Scheduling At this point we must check that the temporal requirements of the system can be satisfied, assuming time budgets assigned in the detailed design stage In other words, we need to make a schedulability analysis of the system based on the temporal requirements of each component Building Reliable Component­based  WCET Verification Performing a worst-case analysis can either be based on measurements or on a static analysis of the source code What is more interesting in the test cases is the execution time behavior shown as a function of input parameters as shown in the following slide Building Reliable Component­based  An Execution Time Graph The execution time shows different values for the different input sub-domains   Execution time  domain 1  domain 2  domain 3  Building Reliable Component­based  Input  Maximum execution time per sub-domain   Execution time  domain 1  domain 2  domain 3  Building Reliable Component­based  Input  Implementation of New Components New components; Those not already in the library must be implemented The designer of the component has two requirements: The functional requirements The assigned time budget Building Reliable Component­based  System Build and Test Finally, we build the system using old and new components We must now verify the functional and temporal properties of the system obtained If the verification test fails, we must return to the relevant stage of the development process and correct the error Building Reliable Component­based  Component Library Is the most central part of any CBSE system as it contains binaries of components and their descriptions A component library containing real-time components should provide the following: Memory requirements WCET test cases Dependencies Environment assumptions Building Reliable Component­based  Composition of Components New Component  (Cnew)    in1_Cnew  in_C1  Component 1  (C1)  out_C1    in2_Cnew  in3_Cnew  in4_Cnew  in2_Cn  in1_C2  in2_C2  Component n  (C2)  out1_Cn  out1_Cnew  out2_Cn  out2_Cnew    Component 2  (C3)  out_C2    Building Reliable Component­based  out3_Cnew  End-To-End Deadlines End-to-end deadlines Are set such that the system requirements are fulfilled in the same way as the time budgets are set Should be specified for the input to and output from the component since the WCET cannot be computed since its parts may be executing with different periods Building Reliable Component­based  Specification Of Timing Attributes We specify virtual timing attributes of the composed component, which are used to compute the timing attributes of sub-components, ie: IF virtual period is set to P, THEN the period of a sub-component A should be fA * P AND the period of B is fB * P, WHERE fA and fB are constants for the composed component, which are stored in the component library Building Reliable Component­based  RT Components in Rubus OS Rubus: Is one of a few real-time operating systems currently available which have some concept of components Is a hybrid operating system, in the sense that it supports both pre-emptive static scheduling and fixed priority scheduling Building Reliable Component­based  A Task and Its Interfaces The timing requirements are specified by release-time, deadline, WCET and period Task state information  oil pressure  speed  ….    Task:   BrakeLeftRight     Period:  50 ms    Release time:  10 ms  Deadline:  30 ms  Precedes:  outputBrakeValues  WCET:  2 ms    Building Reliable Component­based  brake left wheel  brake right wheel  A Composed System in the Red Model of Rubus The task depicted below is required to execute before the outputBrakeValues task, (i.E Task BrakeLeftRight precedes task outputBrakeValues)   State information  oil pressure    speed    State information  brake left wheel  Component:   BrakeLeftRight  brake right wheel  input 1  input 2  Building Reliable Component­based      Component:  OutputBrakeValues  Composition of Components in Rubus Component: BrakeSystem Task state information pressure oil pressure speed speed Task state information brake left Task: BrakeLeftRight brake right Task: OutputBrakeValues Building Reliable Component­based  ... and challenges of real-time systems Real-time component models Designing component-based real-time systems Composition of components Example: RT components in Rubus OS Building Reliable Component­based ... analysis for priority-based systems and prerun-time scheduling techniques Building Reliable Component­based  Real-time Component Models Using a standard operating system in a real-time application,... during run-time Deadline: Is the maximum time within which the task must complete its execution with respect to an event Real-time systems are divided into two classes, hard and soft real-time systems

Ngày đăng: 15/05/2020, 22:09

Mục lục

  • Slide 1

  • Overview

  • Introduction

  • Characteristics and Challenges of RTS

  • Tasks

  • Scheduling

  • Limited Resources

  • System Level Analysis

  • Real-time Component Models

  • Application-specific Component Models

  • IEC 61131-3 Application Structure

  • A Configuration in IEC 61131-3

  • A Program in IEC 61131-3

  • Function Block Diagram

  • A Port-based Object Approach

  • A Port-based Object

  • Designing Component-based RTS

  • Top-level Design

  • Detailed Design

  • Architecture Analysis

Tài liệu cùng người dùng

Tài liệu liên quan