draper ir&d: performance modeling and analysis of an ...aadl.sei.cmu.edu/aadl/documents/draper...

16
1 Draper IR&D: Performance Modeling and Analysis of an Avionics System Architecture January, 2006

Upload: phamhuong

Post on 06-Feb-2018

224 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Draper IR&D: Performance Modeling and Analysis of an ...aadl.sei.cmu.edu/aadl/documents/Draper Labs AADL X38 Jan 2006.pdf · 2006 IR&D: Performance Modeling and Analysis of an Avionics

1

Draper IR&D:Performance Modeling

and Analysis of an

Avionics System ArchitectureJanuary, 2006

Page 2: Draper IR&D: Performance Modeling and Analysis of an ...aadl.sei.cmu.edu/aadl/documents/Draper Labs AADL X38 Jan 2006.pdf · 2006 IR&D: Performance Modeling and Analysis of an Avionics

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

Performance modeling and analysis

• Use an architecture description language (ADL) with precise syntax and semantics to create an integrated avionics system architecture 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 analysis and simulation results for:

– schedulability, latency, resource utilization, throughput, jitter, race condition

avoidance

• The process shall include use of actual source code and actual measurements from system integration lab to update fidelity of model.

Page 3: Draper IR&D: Performance Modeling and Analysis of an ...aadl.sei.cmu.edu/aadl/documents/Draper Labs AADL X38 Jan 2006.pdf · 2006 IR&D: Performance Modeling and Analysis of an Avionics

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

Page 4: Draper IR&D: Performance Modeling and Analysis of an ...aadl.sei.cmu.edu/aadl/documents/Draper Labs AADL X38 Jan 2006.pdf · 2006 IR&D: Performance Modeling and Analysis of an Avionics

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

Tool Chain and Process Overview

GN&C Engineer Model: Simulink

etc

Software Engineer Model: UML etc

Avionics/System Engineer Model:

Visio, ppt etc

Integrated System Model(OSATE/AADL)

Static Analysis

Tools (OSATE,

RapidRMA)

Profiling/testing on target hardware

Model Translators

XML

Various

Formats

Mostly manual process to

create integrated

system model

Analysis/

Simulation

Results

Analysis/Simulation

Results

Individual Teams

Model

SynthesisRefine

model

Simulation Tool (OPNET)

Page 5: Draper IR&D: Performance Modeling and Analysis of an ...aadl.sei.cmu.edu/aadl/documents/Draper Labs AADL X38 Jan 2006.pdf · 2006 IR&D: Performance Modeling and Analysis of an Avionics

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

Project Constellation Avionics

• Family of avionics systems for various Constellation components (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-38 Fault Tolerant Parallel Processor (FTPP)

Courtesy of NASA

Page 6: Draper IR&D: Performance Modeling and Analysis of an ...aadl.sei.cmu.edu/aadl/documents/Draper Labs AADL X38 Jan 2006.pdf · 2006 IR&D: Performance Modeling and Analysis of an Avionics

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 a vehicle that would be used for emergency return from the International Space Station.

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

• Sensors and actuation are connected to the FCCs such that any two operating 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 transient and 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 design errors.

Page 7: Draper IR&D: Performance Modeling and Analysis of an ...aadl.sei.cmu.edu/aadl/documents/Draper Labs AADL X38 Jan 2006.pdf · 2006 IR&D: Performance Modeling and Analysis of an Avionics

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

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

• Five fault-containment regions (FCRs)

– 4 Flight Critical Computer (FCC) chassis

– 1 Network Element Fifth Unit

• One NE per FCR

• Nine Processing Elements configured in 6 processing groups

– Instrumentation Control Processors (ICPs)

– Flight Critical Processors (FCPs)

• Will accommodate 2 arbitrary non-simultaneous faults

NetworkElement

ICP VM

E B

us

NetworkElement

ICP

FCP

Digital I/O

Decomm

Analog Out

MPCC

Digital I/O

Digital I/O

VM

E B

us

NetworkElement

ICP

FCP

Decomm

Analog Out

MPCC

Digital I/O

Digital I/O

Digital I/O

VM

E B

us

NetworkElement

ICP

Analog Out

MPCC

Decomm

Digital I/O

Digital I/O

Digital I/O

VM

E B

us

FCP

NetworkElement

ICP

Digital I/O

Decomm

Digital I/O

Analog Out

MPCC

Digital I/O

VM

E B

us

FCP

Page 8: Draper IR&D: Performance Modeling and Analysis of an ...aadl.sei.cmu.edu/aadl/documents/Draper Labs AADL X38 Jan 2006.pdf · 2006 IR&D: Performance Modeling and Analysis of an Avionics

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

X-38 FTPP Virtual Architecture

Virtual Bus

MP

CC

Flight CriticalProcessor

MP

CC

MP

CC

MP

CC

ICP

Decomm

Analog Out

Digital I/O

Digital I/O

Digital I/O Lo

ca

l B

us

1553

RS-232/422

ICP

Decomm

Analog Out

Digital I/O

Digital I/O

Digital I/O Lo

ca

l B

us

1553

RS-232/422

ICP

Decomm

Analog Out

Digital I/O

Digital I/O

Digital I/O Lo

ca

l B

us

1553

RS-232/422

ICP

Decomm

Analog Out

Digital I/O

Digital I/O

Digital I/O Lo

ca

l B

us

1553

RS-232/422

ICP

• Four FCP processor boards form a quadruplex fault-tolerant virtual group

– Inputs and outputs voted each minor frame

• ICP processor boards are each a simplex processor

• Virtual Bus provides fault-tolerant communication – “Network Element Byzantine Resilient Virtual Circuit Abstraction”

Page 9: Draper IR&D: Performance Modeling and Analysis of an ...aadl.sei.cmu.edu/aadl/documents/Draper Labs AADL X38 Jan 2006.pdf · 2006 IR&D: Performance Modeling and Analysis of an Avionics

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

FCC Software Architecture

Applications

BRVC

Mission / VehicleManagement

FDIR(FCP, NE)

Memory

Mgmt.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)

Memory

Mgmt.Services

TimeServices

TimeServices

SupportServicesSupportServices

SchedulingServices

SchedulingServicesFTSS

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)

Page 10: Draper IR&D: Performance Modeling and Analysis of an ...aadl.sei.cmu.edu/aadl/documents/Draper Labs AADL X38 Jan 2006.pdf · 2006 IR&D: Performance Modeling and Analysis of an Avionics

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

X-38 Software Architecture

• The Flight Critical Processor (FCP) software architecture consists 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 commands

4) 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 power

management activities.

• The FTSS software in combination with the Johnson Space Center provided Vehicle, Mission, and Power Management software provides a basic environment in which applications, such as flight control, can execute and meet all necessary timing requirements.

Page 11: Draper IR&D: Performance Modeling and Analysis of an ...aadl.sei.cmu.edu/aadl/documents/Draper Labs AADL X38 Jan 2006.pdf · 2006 IR&D: Performance Modeling and Analysis of an Avionics

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 are considered to be the most time critical tasks, the 50 Hz and 10 Hz rate 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 Hz FC, 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 FC rate group meets a 10 ms end-to-end transport requirement and that 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 to determine how long each of the blocks take to process and when to start certain blocks.

Page 12: Draper IR&D: Performance Modeling and Analysis of an ...aadl.sei.cmu.edu/aadl/documents/Draper Labs AADL X38 Jan 2006.pdf · 2006 IR&D: Performance Modeling and Analysis of an Avionics

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

Synchronous Data Exchange Between Tasks

• Synchronous data exchange takes place between tasks in different rate groups using the synchronous message queues and mailbox services.

• For example, consider a simple exchange of one piece of data between a 50 Hz task and a 10 Hz task using “frame synchronous” message queue or mailbox sockets.

• In this example, it is important to note that the 50 Hz task's message 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 the minor frame the call was made in.

• Thus, it is important for application task developers to take into consideration how data is being exchange between tasks while they are designing their task layouts.

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

Page 13: Draper IR&D: Performance Modeling and Analysis of an ...aadl.sei.cmu.edu/aadl/documents/Draper Labs AADL X38 Jan 2006.pdf · 2006 IR&D: Performance Modeling and Analysis of an Avionics

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

Synchronous Delayed Data Exchange: 50Hz to 10Hz

How applications exchange data

50 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

Page 14: Draper IR&D: Performance Modeling and Analysis of an ...aadl.sei.cmu.edu/aadl/documents/Draper Labs AADL X38 Jan 2006.pdf · 2006 IR&D: Performance Modeling and Analysis of an Avionics

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 the integrated avionics system model and performance analysis tools:

– CPU schedule (single node, multiple node) and utilization

– Bus schedule and load

– Latency

– Jitter

– Impact of fault tolerance and redundancy design decisions on overall system performance

Page 15: Draper IR&D: Performance Modeling and Analysis of an ...aadl.sei.cmu.edu/aadl/documents/Draper Labs AADL X38 Jan 2006.pdf · 2006 IR&D: Performance Modeling and Analysis of an Avionics

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 implement

system.

– 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 techniques

unacceptable to the average engineering practitioner.

Page 16: Draper IR&D: Performance Modeling and Analysis of an ...aadl.sei.cmu.edu/aadl/documents/Draper Labs AADL X38 Jan 2006.pdf · 2006 IR&D: Performance Modeling and Analysis of an Avionics

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)