draper labs aadl x38 jan 2006

Upload: david-johnson

Post on 03-Jun-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/12/2019 Draper Labs AADL X38 Jan 2006

    1/16

    1

    Draper IR&D:Performance Modeling

    and Analysis of anAvionics System

    ArchitectureJanuary, 2006

  • 8/12/2019 Draper Labs AADL X38 Jan 2006

    2/16

    2006 IR&D: Performance Modeling and Analysis of an Avionics Architecture 2

    Performance modeling and analysis

    Use an architecture description language (ADL) with precisesyntax and semantics to create an integrated avionics systemarchitecture model.

    Integrated avionics system architecture model will include:

    hardware components: processors, memory, buses, devices software components: processes, threads, subprograms, data

    hybrid behavior: discrete states with continuous dynamic properties

    performance attributes: scheduling policy, period, deadline, WCET etc

    Tool chain will provide rigorous and precise performance analysisand simulation results for:

    schedulability, latency, resource utilization, throughput, jitter, race conditionavoidance

    The process shall include use of actual source code and actualmeasurements from system integration lab to update fidelity ofmodel.

  • 8/12/2019 Draper Labs AADL X38 Jan 2006

    3/16

    2006 IR&D: Performance Modeling and Analysis of an Avionics Architecture 3

    Performance analysis details

    Scheduling static vs dynamic priority, pre-emptive vs non pre-emptive

    priority inheritance, priority ceiling to minimize priority inversion

    RMS, DMS, EDF, FPS etc

    thread dispatch protocol periodic, aperiodic, sporadic

    Latency and response time

    single node, multiple node, end-to-end

    jitter

    Resource utilization CPU, bus loading, memory (average, worst, best etc)

    impact of system reconfiguration after node failure

    Throughput (max messages per major frame)

    Impact of interprocess communication (IPC) on scheduling shared memory vs queues vs remote procedure call (RPC), semaphores,

    deadlock avoidance, frame delay send vs instant send

  • 8/12/2019 Draper Labs AADL X38 Jan 2006

    4/16

    2006 IR&D: Performance Modeling and Analysis of an Avionics Architecture 4

    Tool Chain and Process Overview

    GN&C EngineerModel: Simulink

    etc

    Software EngineerModel: UML etc

    Avionics/SystemEngineer Model:

    Visio, ppt etc

    Integrated System Model(OSATE/AADL)

    StaticAnalysis

    Tools(OSATE,

    RapidRMA)

    Profiling/testingon targethardware

    ModelTranslators

    XML

    VariousFormats

    Mostly manualprocess to

    createintegrated

    system model

    Analysis/Simulation

    Results

    Analysis/SimulationResults

    Individual Teams

    Model

    SynthesisRefinemodel

    SimulationTool (OPNET)

  • 8/12/2019 Draper Labs AADL X38 Jan 2006

    5/16

    2006 IR&D: Performance Modeling and Analysis of an Avionics Architecture 5

    Project Constellation Avionics

    Family of avionics systemsfor various Constellationcomponents (CEV, CLV etc)

    Architecture will be Fail-Op-

    Fail-Safe (FOFS) Integrated vehicle health

    management

    Non-proprietary

    Open systems architecture Upgradeable to future

    technologies

    Possible avionics candidate

    is based on Draper X-38Fault Tolerant ParallelProcessor (FTPP)

    Courtesy of NASA

  • 8/12/2019 Draper Labs AADL X38 Jan 2006

    6/16

    2006 IR&D: Performance Modeling and Analysis of an Avionics Architecture 6

    Modeling Test Case: X-38 FTPP

    The X-38 program was an unmanned technology demonstration for avehicle that would be used for emergency return from theInternational Space Station.

    The original demonstration system was required to operate followingany two Flight Critical Computer (FCC) failures and following any onenon-computer failure.

    Sensors and actuation are connected to the FCCs such that any twooperating FCCs can control the vehicle.

    The FCCs are COTS computers interconnected by custom network

    element hardware and Fault Tolerant Systems Services (FTSS)software to form a Fault Tolerant Parallel Processor (FTPP).

    The FTPP was designed to provide resilience to Byzantine failures.The FTPP was also designed to discriminate between transientand permanent faults, allowing recovery of an FCC that had a

    transient fault. The COTS computers and the software that runs on them are

    identical. No dissimilarity was used to protect from generic designerrors.

  • 8/12/2019 Draper Labs AADL X38 Jan 2006

    7/16

    2006 IR&D: Performance Modeling and Analysis of an Avionics Architecture 7

    X-38 FTPP Physical Architecture with 5 Network Elements (NE)

    Five fault-containmentregions (FCRs)

    4 Flight CriticalComputer (FCC)chassis

    1 Network ElementFifth Unit

    One NE per FCR

    Nine ProcessingElements configured in6 processing groups

    InstrumentationControl Processors(ICPs)

    Flight CriticalProcessors (FCPs)

    Will accommodate 2arbitrary non-simultaneous faults

    NetworkElement

    ICP VMEBus

    NetworkElement

    ICP

    FCP

    Digital I/O

    Decomm

    Analog Out

    MPCC

    Digital I/O

    Digital I/O

    VME

    Bus

    NetworkElement

    ICP

    FCP

    Decomm

    Analog Out

    MPCC

    Digital I/O

    Digital I/O

    Digital I/O

    VME

    Bus

    NetworkElement

    ICP

    Analog Out

    MPCC

    Decomm

    Digital I/O

    Digital I/O

    Digital I/O

    VMEBus

    FCP

    NetworkElement

    ICP

    Digital I/O

    Decomm

    Digital I/O

    Analog Out

    MPCC

    Digital I/O

    VMEBus

    FCP

  • 8/12/2019 Draper Labs AADL X38 Jan 2006

    8/16

    2006 IR&D: Performance Modeling and Analysis of an Avionics Architecture 8

    X-38 FTPP Virtual Architecture

    Virtual Bus

    MPCC

    Flight CriticalProcessor

    MPCC

    MPCC

    MPCC

    ICP

    Decomm

    Analog Out

    Digital I/ODigital I/O

    Digital I/OLocalB

    us

    1553

    RS-232/422

    ICP

    Decomm

    Analog Out

    Digital I/ODigital I/O

    Digital I/OLocalB

    us

    1553

    RS-232/422

    ICP

    Decomm

    Analog Out

    Digital I/ODigital I/O

    Digital I/OLocalB

    us

    1553

    RS-232/422

    ICP

    Decomm

    Analog Out

    Digital I/ODigital I/O

    Digital I/OLocalB

    us

    1553

    RS-232/422

    ICP

    Four FCP processor boards form a quadruplexfault-tolerantvirtual group

    Inputs and outputs voted each minor frame ICP processor boards are each a simplex processor

    Virtual Bus provides fault-tolerant communication NetworkElement Byzantine Resilient Virtual Circuit Abstraction

  • 8/12/2019 Draper Labs AADL X38 Jan 2006

    9/16

    2006 IR&D: Performance Modeling and Analysis of an Avionics Architecture 9

    FCC Software Architecture

    Applications

    BRVC

    Mission / VehicleManagement

    FDIR(FCP, NE)

    MemoryMgmt.

    Services

    TimeServices

    SupportServices

    SchedulingServicesFTSS

    FCP CPU and ResourcesHardware

    VxWorks

    User Software

    Fault-Tolerant System Services

    FCP Hardware

    API

    User Applications Tasks

    ICP

    VxWorks

    BRVC ICP CPU &ResourcesFCP I/O Hardware

    ICP I/OHardware

    FCP

    ICP Hardware

    User I/O Tasks

    COTS Software

    ICPCustom

    System SoftwareMPCC

    OS

    CommunicationsServices

    Sensor, Appl,Effector, Vehicle

    FDI & RM

    FTSS SW(partial)

    Applications

    BRVC

    Mission / VehicleManagement

    Mission / VehicleManagement

    FDIR(FCP, NE)

    MemoryMgmt.

    Services

    TimeServices

    TimeServices

    SupportServicesSupportServices

    SchedulingServicesSchedulingServicesFTSS

    FCP CPU and ResourcesHardware

    VxWorks

    User Software

    Fault-Tolerant System Services

    FCP Hardware

    API

    User Applications Tasks

    ICP

    VxWorks

    BRVC ICP CPU &ResourcesICP CPU &ResourcesFCP I/O Hardware

    ICP I/OHardwareICP I/O

    Hardware

    FCP

    ICP Hardware

    User I/O Tasks

    COTS Software

    ICPCustom

    System Software

    ICPCustom

    System SoftwareMPCC

    OS

    CommunicationsServices

    CommunicationsServices

    Sensor, Appl,Effector, Vehicle

    FDI & RM

    Sensor, Appl,Effector, Vehicle

    FDI & RM

    FTSS SW(partial)

  • 8/12/2019 Draper Labs AADL X38 Jan 2006

    10/16

    2006 IR&D: Performance Modeling and Analysis of an Avionics Architecture 10

    X-38 Software Architecture

    The Flight Critical Processor (FCP) software architectureconsists of the following main components:

    1) acquisition of sensor data from all ICPs via NE exchange

    2) application processing of sensor data and remote commands

    3) production of effector commands4) effector command exchange and voting among the FCPs via the NEs

    5) telemetry and remote commanding interfaces with the CTCs

    6) Draper FTSS software

    7) overall vehicle management, mission management, and powermanagement activities.

    The FTSS software in combination with the Johnson SpaceCenter provided Vehicle, Mission, and Power Managementsoftware provides a basic environment in which applications,such as flight control, can execute and meet all necessary timingrequirements.

  • 8/12/2019 Draper Labs AADL X38 Jan 2006

    11/16

    2006 IR&D: Performance Modeling and Analysis of an Avionics Architecture 11

    X38-FTPP Rate Groups

    The FCP software operates at three different rates: 50 Hz, 10 Hz,and 1 Hz.

    Because guidance, navigation, and flight control tasks areconsidered to be the most time critical tasks, the 50 Hz and 10 Hzrate groups can be further divided into Flight Critical (FC) andNon-Flight Critical (NFC) rate groups.

    Therefore the FCP software operates at five basic rates: 50 HzFC, 50 Hz NFC, 10 Hz FC, 10 Hz NFC, and 1 Hz NFC.

    These distinct rate groups are necessary to meet the Guidance,

    Navigation, & Control (GN&C) requirements that the 50 Hz FCrate group meets a 10 ms end-to-end transport requirement andthat the 10 Hz FC rate group meets a 50 ms end-to-end transportrequirement.

    The communication between the FCP and the ICP must be tightly

    synchronized. Detailed timing analysis will be completed todetermine how long each of the blocks take to process and whento start certain blocks.

  • 8/12/2019 Draper Labs AADL X38 Jan 2006

    12/16

    2006 IR&D: Performance Modeling and Analysis of an Avionics Architecture 12

    Synchronous Data Exchange Between Tasks

    Synchronous data exchange takes place between tasks indifferent rate groups using the synchronous message queuesand mailbox services.

    For example, consider a simple exchange of one piece of data

    between a 50 Hz task and a 10 Hz task using framesynchronous message queue or mailbox sockets.

    In this example, it is important to note that the 50 Hz task'smessage won't get "delivered" to the 10 Hz task until the start of

    the next 10 Hz frame even though it is "sent" at the end of theminor frame the call was made in.

    Thus, it is important for application task developers to take intoconsideration how data is being exchange between tasks whilethey are designing their task layouts.

    Note that the 50 Hz task would actually make five socket writecalls and that each time the socket write call would actually beexecuted at the minor frame boundary.

  • 8/12/2019 Draper Labs AADL X38 Jan 2006

    13/16

    2006 IR&D: Performance Modeling and Analysis of an Avionics Architecture 13

    Synchronous Delayed Data Exchange: 50Hz to 10Hz

    How applications exchange data50 Hz task exchanging data with a 10 Hz task

    50 Hz

    processing

    50 Hz

    processing

    50 Hz

    processing

    50 Hz

    processing

    50 Hz

    processing

    50 Hz

    processing

    10 Hz

    processing

    10 Hz

    processing

    10/1 Hz

    processing

    1 Hz

    processing

    1 Hz

    processing

    10 Hz

    processing

    20 ms

    100 ms

    message

    write call

    made here

    message

    write call

    is actually

    executed

    here

    message

    read call

    may be here

    new data

    will not be

    read until

    here

    message

    is actually

    delivered

    here

  • 8/12/2019 Draper Labs AADL X38 Jan 2006

    14/16

    2006 IR&D: Performance Modeling and Analysis of an Avionics Architecture 14

    IR&D Project Deliverables

    An open and extensible modeling and analysis tool chain.

    Tool chain user guide.

    Integrated avionics system model for a selected test case.

    Detailed performance analysis and simulation results using theintegrated avionics system model and performance analysistools:

    CPU schedule (single node, multiple node) and utilization

    Bus schedule and load

    Latency

    Jitter

    Impact of fault tolerance and redundancy design decisions onoverall system performance

  • 8/12/2019 Draper Labs AADL X38 Jan 2006

    15/16

    2006 IR&D: Performance Modeling and Analysis of an Avionics Architecture 15

    Summary: IR&D Goals

    REDUCE PROGRAM RISK Capability to perform virtual system integration early in the design phase

    facilitating a smoother integration and test phase with fewer performance

    problem reports.

    REDUCE PROGRAM COST The model and tools shall allow more efficient use of hardware resources

    (CPUs, bus, memory) resulting in lower hardware costs to implementsystem.

    Analysis and simulation during design phase shall reduce amount of

    testing required during V&V phase. The effort to create the model, run analysis tools and optimize the model

    shall not be so onerous as to make the use of these techniquesunacceptable to the average engineering practitioner.

  • 8/12/2019 Draper Labs AADL X38 Jan 2006

    16/16

    2006 IR&D: Performance Modeling and Analysis of an Avionics Architecture 16

    Next Steps

    Safety and reliability modeling and analysis FMEA, fault trees, Markov chains

    UIUC Mobius

    Model Synthesis - auto generate system services code (C, Ada) task scheduling, bus access, memory access etc

    can customize for different RTOS (VxWorks, Integrity etc)