26
© 2004 by Carnegie Mellon University SAE AADL: An Industry Standard for Embedded Systems Engineering Peter Feiler Software Engineering Institute [email protected] 412-268-7790

SAE AADL: An Industry Standard for Embedded Systems

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SAE AADL: An Industry Standard for Embedded Systems

© 2004 by Carnegie Mellon University

SAE AADL: An Industry Standard for Embedded Systems

Engineering

Peter FeilerSoftware Engineering Institute

[email protected]

Page 2: SAE AADL: An Industry Standard for Embedded Systems

Report Documentation Page Form ApprovedOMB No. 0704-0188

Public reporting burden for the collection of information is estimated to average 1 hour per response, including the time for reviewing instructions, searching existing data sources, gathering andmaintaining the data needed, and completing and reviewing the collection of information. Send comments regarding this burden estimate or any other aspect of this collection of information,including suggestions for reducing this burden, to Washington Headquarters Services, Directorate for Information Operations and Reports, 1215 Jefferson Davis Highway, Suite 1204, ArlingtonVA 22202-4302. Respondents should be aware that notwithstanding any other provision of law, no person shall be subject to a penalty for failing to comply with a collection of information if itdoes not display a currently valid OMB control number.

1. REPORT DATE 01 FEB 2005

2. REPORT TYPE N/A

3. DATES COVERED -

4. TITLE AND SUBTITLE SAE AADL: An Industry Standard for Embedded Systems Engineering

5a. CONTRACT NUMBER

5b. GRANT NUMBER

5c. PROGRAM ELEMENT NUMBER

6. AUTHOR(S) 5d. PROJECT NUMBER

5e. TASK NUMBER

5f. WORK UNIT NUMBER

7. PERFORMING ORGANIZATION NAME(S) AND ADDRESS(ES) Carnegie Mellon University Software Engineering Institute

8. PERFORMING ORGANIZATIONREPORT NUMBER

9. SPONSORING/MONITORING AGENCY NAME(S) AND ADDRESS(ES) 10. SPONSOR/MONITOR’S ACRONYM(S)

11. SPONSOR/MONITOR’S REPORT NUMBER(S)

12. DISTRIBUTION/AVAILABILITY STATEMENT Approved for public release, distribution unlimited

13. SUPPLEMENTARY NOTES See also ADM00001742, HPEC-7 Volume 1, Proceedings of the Eighth Annual High PerformanceEmbedded Computing (HPEC) Workshops, 28-30 September 2004 Volume 1., The original documentcontains color images.

14. ABSTRACT

15. SUBJECT TERMS

16. SECURITY CLASSIFICATION OF: 17. LIMITATION OF ABSTRACT

UU

18. NUMBEROF PAGES

25

19a. NAME OFRESPONSIBLE PERSON

a. REPORT unclassified

b. ABSTRACT unclassified

c. THIS PAGE unclassified

Standard Form 298 (Rev. 8-98) Prescribed by ANSI Std Z39-18

Page 3: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 2© 2004 by Carnegie Mellon University

SAE AADL StandardAn Enabler of Predictable Model-Based

System Engineering• Notation for specification of task and communication

architectures of Real-time, Embedded, Fault-tolerant, Secure, Safety-critical, Software-intensive systems

• Fields of application: Avionics, Automotive, Aerospace, Autonomous systems, …

• Based on 15 Years of DARPA funded technologies• Standard approved by SAE in Sept 2004• www.aadl.info

Page 4: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 3© 2004 by Carnegie Mellon University

SAE AS-2C AADL Subcommittee• Bruce Lewis (US Army AMRDEC): Chair• Peter Feiler (SEI): technical lead, author & editor• Steve Vestal (Honeywell): co-author• Ed Colbert (USC): UML Profile of AADL• Joyce Tokar (Pyrrhus Software): Ada & C AnnexOther Voting Members• Boeing, Rockwell, Honeywell, Lockheed Martin,

Raytheon, Smith Industries, General Dynamics, Airbus, Axlog, European Space Agency, TNI, Dassault, EADS, High Integrity Solutions

Coordination with • NATO Aviation, NATO Plug and Play, French

Government COTRE, SAE AS-1 Weapons Plug and Play, OMG UML & SysML

Page 5: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 4© 2004 by Carnegie Mellon University

Potential Users

• Airbus• European Space Agency • Rockwell Collins• Lockheed Martin• Smith Industries• Raytheon• Boeing FCS• Common Missile• System Plug and Play

Modeling of Satellite Systems, Architecture Verification - ASSERT

New System Engineering Approach incorporates AADL

Modeling of Avionics Computer System

Embedded System Engineering & AADL

Apply AADL for systems integration modeling & analysis

NATO/SAE AS1 Weapon System Integration

Page 6: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 5© 2004 by Carnegie Mellon University

AADL-Based Engineering

Ambulatory

InformationFusion

Supply ChainMechanized

Sensor& SignalProcessing

System Integration•Runtime System Generation• Application Composition• System Configuration

Devices Memory Bus Processor

AutomaticTargetRecognition

Guidance& Control

System Analysis• Schedulability• Performance• Reliability• Fault Tolerance• Dynamic Configurability

Architecture Modeling

Abstract, but Precise

HTTPSDBGPS Ada Runtime

Execution Platform

. . . . . . . . . .

Application Software

SoftwareSystemEngineer

ComposableComponents

Predictive Embedded

System Engineering

Reduced Development &

Operational Cost

Page 7: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 6© 2004 by Carnegie Mellon University

A Partitioned Portable Architecture

Application Software

Component

Real-Time Operating System

AADL Runtime System

Application Software

Component

Application Software

Component

Application Software

Component

Embedded Hardware Target

Interoperability/Portability• Tailored Runtime Executive• Standard RTOS API• Application Components

Strong Partitioning • Timing Protection• OS Call Restrictions• Memory Protection

Page 8: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 7© 2004 by Carnegie Mellon University

MetaH: Proof of Concepts for AADL1991 DARPA DSSA program begins1992 Partitioned PFP target (Tartan MAR/i960MC)1994 Multi-processor target (VME i960MC)1995 Slack stealing scheduler1998 Portable Ada 95 and POSIX middleware configurations1998 Extensibility through MetaH-ACME Mapping1998 Reliability modeling extension1999 Hybrid automata verification of core middleware modules

Numerous evaluation and demonstration projects, e.g.Missile G&C reference architecture, demos, others (AMCOM SED)Hybrid automata formal verification (AFOSR, Honeywell)Missile defense (Boeing)Fighter guidance SW fault tolerance (DARPA, CMU, Lockheed-Martin)Incremental Upgrade of Legacy Systems (AFRL, Boeing, Honeywell)Comanche study (AMCOM, Comanche PO, Boeing, Honeywell)Tactical Mobile Robotics (DARPA, Honeywell, Georgia Tech)Advanced Intercept Technology CWE (BMDO, MaxTech)Adaptive Computer Systems (DARPA, Honeywell)Avionics System Performance Management (AFRL, Honeywell)Ada Software Integrated Development/Verification (AFRL, Honeywell)FMS reference architecture (Honeywell)JSF vehicle control (Honeywell)IFMU reengineering (Honeywell)

Page 9: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 8© 2004 by Carnegie Mellon University

AADL in Context

UML Profile

Research ADLs• MetaH

– Real-time, modal, system family– Analysis & generation– RMA based scheduling

• Rapide, Wright, ..– Behavioral validation

• ADL Interchange– ACME

Industrial Strength• UML 2.0, UML-RT• HOOD/STOOD• SDL

AADLExtensibleReal-time

Dependable

Basis

Influence

Alignment

Enhancement

Airbus & ESA

Extension

DARPA Funded Research since 1990

Page 10: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 9© 2004 by Carnegie Mellon University

AADL: The LanguageComponents with precise semantics

– Thread, thread group, process, system, processor, device, memory, bus, data, subprogram

Completely defined interfaces & interactions– Data & event flow, synchronous call/return, shared access– End-to-End flow specifications

Real-time Task Scheduling– Supports different scheduling protocols incl. GRMA, EDF– Defines scheduling properties and execution semantics

Modal, configurable systems– Modes to model transition between statically known states &

configurations

Component evolution & large scale development supportAADL language extensibility

Page 11: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 10© 2004 by Carnegie Mellon University

Thread Execution Semantics

• Dispatch protocols• Nominal & recovery• Fault handling• Resource locking• Mode switching• Initialization & finalization

Page 12: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 11© 2004 by Carnegie Mellon University

Execution Platform Bindings

Flight Mgr

WarningsAnnunciations

MFD Pilot

MFD Copilotdata

1553

Weapons Mgr

CoPilot Display

Display Processor

Pilot Display

Display Processor

High speed network

MissionProcessor

1553 bus

Processor, memory, and connection bindings

Co-location constraints in support of redundant systems

Page 13: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 12© 2004 by Carnegie Mellon University

An Avionics System Case Study

• Migration from static timeline to preemptive scheduling– Identified issues with shared variable communication– Migration potential from polling tasks to event-driven tasks

• Flexibility, predictability & efficiency of port-based communication– Defined communication timing semantics– Support for deterministic transfer & optimized buffers

• Effectiveness of connection & flow semantics– Support end-to-end latency analysis

• Analyzable fault-tolerant redundancy patterns– Orthogonal architecture view without model clutter

Page 14: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 13© 2004 by Carnegie Mellon University

A Naïve Thread-based Design

Navigation Sensor

Processing

Integrated Navigation

Guidance Processing

Flight PlanProcessing

Aircraft Performance Calculation

20Hz

10Hz

20Hz

5Hz

2Hz

From other Partitions

Dec

reas

ing

Prio

rity

Periodic I/O20Hz

To otherPartitions

Shared data area

Pr 1

Pr 2

Pr 3

Pr 4

Pr 6

Pr 9Potential priority inversion due to

priority assignment

Potential non-deterministic communication due to

preemption

Tasks must complete within frame => cyclic executive behavior

Page 15: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 14© 2004 by Carnegie Mellon University

Flight Manager in AADL

Navigation Sensor

Processing

Integrated Navigation Guidance

Processing

Flight PlanProcessing

Aircraft Performance Calculation

20Hz

10Hz 20Hz

5Hz

2Hz

From Partitions

To Partitions

Fuel Flow

Guidance

Navsensor data

Nav signal data

FP data

Performance data

NavdataNav sensor

data

Nav data

FP data

Page 16: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 15© 2004 by Carnegie Mellon University

Data Stream Latency Analysis• Flow specifications in AADL– Properties on flows: expected & actual end-to-end latency– Properties on ports: expected incoming & estimated output

latency

• End-to-end latency contributors– Delayed connections result in sampling latency– Immediate periodic & aperiodic sequences result in

cumulative execution time latency

• Phase delay shift & oscillation– Noticeable at flow merge points– Variation interpreted as noisy signal to controller

Potential hazard

Latency calculation & jitter accumulation

Page 17: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 16© 2004 by Carnegie Mellon University

Other Flow Characteristics

• Miss rate of data stream– Accommodates incomplete sensor readings– Allows for controlled deadline misses

• State vs. state delta communication– Data reduction technique– Implies requirement for guaranteed delivery

• Data accuracy– Reading accuracy– Computational error accumulation

• Message acknowledgment semantics– In terms of flow steps

Page 18: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 17© 2004 by Carnegie Mellon University

Redundancy Specification• Redundancy abstraction• Co-location constraints on execution platform binding

MFD DM1

MFD DM2

MFD DM3

MFD DM4

WAM

PCM

CM

WM

FM

SA

FD

1553SS1

SS2

4X

2X

2X2X

Redundancy characteristics as

properties

Page 19: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 18© 2004 by Carnegie Mellon University

Primary/Backup Patterns

SS1.2

CSS1 Primary

SS1.1

SS1.2

CSS1 Backup

SS1.1

SS1.2

SS1.1

SS1.2

SS1.1

Passive Backup

Hot Standby

SS1.2

CSS1

SS1.1

SS1.2

CSS1

SS1.1

Continuous State Exchange

State

CSS1 Primary

CSS1 BackupVoted Output

SS1.3

Page 20: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 19© 2004 by Carnegie Mellon University

Primary Backup Synchronization

WAM

WAMBackup

state

state

20Hz

20Hz

Primary Backup

init

Primaryfail

Primaryok

20Hz

Init/restart

Observer

Primary

• External and internal mode control• Errors reported as events• Supports reasoning about Primary/Backup logic

Mode

20Hz

Page 21: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 20© 2004 by Carnegie Mellon University

AADL Language Extensions • New properties through property sets• Sublanguage extension

– Annex subclauses expressed in an annex-specific sublanguage

• Project-specific language extensions• Language extensions as approved SAE AADL

standard annexes• Examples

– Reliability modeling– ARINC 653– Behavior– Constraint sublanguage

Page 22: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 21© 2004 by Carnegie Mellon University

Example Annex ExtensionTHREAD t

FEATURESsem1 : DATA ACCESS semaphore;sem2 : DATA ACCESS semaphore;

END t;

THREAD IMPLEMENTATION t.t1PROPERTIES

Period => 13.96ms;cotre::Priority => 1;cotre::Phase => 0.0ms;Dispatch_Protocol => Periodic;

ANNEX cotre.behavior {**STATES

s0, s1, s2, s3, s4, s5, s6, s7, s8 : STATE;s0 : INITIAL STATE;

TRANSITIONSs0 -[ ]-> s1 { PERIODIC_WAIT };s1 -[ ]-> s2 { COMPUTATION(1.9ms, 1.9ms) };s2 -[ sem1.wait ! (-1.0ms) ]-> s3;s3 -[ ]-> s4 { COMPUTATION(0.1ms, 0.1ms) };s4 -[ sem2.wait ! (-1.0ms) ]-> s5;s5 -[ ]-> s6 { COMPUTATION(2.5ms, 2.5ms) };s6 -[ sem2.release ! ]-> s7;s7 -[ ]-> s8 { COMPUTATION(1.5ms, 1.5ms) };s8 -[ sem1.release !]-> s0;

**);END t.t1;

COTRE threadproperties

COTRE behavioral annex

Courtesy of

Page 23: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 22© 2004 by Carnegie Mellon University

Reliability Modeling ApproachError state & occurrence model as AADL extension

– Error states and transitions – Fault events & occurrence rates– Error propagation rates– Masking of subcomponent and propagation errors

Architecture model provides– Dependency information– Isolation analysis– Basis for stochastic process model generation

Reflects hazard analysis, component failure modes &

effects analysis

error_free

babblingfail_stopped

observed_faultdetected_fault

propagate fail_stopped

propagate babbling

Page 24: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 23© 2004 by Carnegie Mellon University

An XML-Based AADL Tool Strategy

Declarative AADL XML

TextualAADL

GraphicalAADLEditor

SchedulingAnalysis

ReliabilityAnalysis

Filter to MarkovAnalysis

CommercialTool likeTimeWiz

Execution Platform Binding

SafetyAnalysis

Project-SpecificIn-House

AADL RuntimeGenerator

Semantic Checking

AADL Instance XML

Architecture Import/Export

Page 25: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 24© 2004 by Carnegie Mellon University

Open Source AADL Tool Environment• OSATE is

– Developed by the Software Engineering Institute– Available at under a no cost Common Public License (CPL)– Implemented on top of Eclipse Release 3 (www.eclipse.org)– Generated from an AADL meta model using the Eclipse

Modeling Framework (EMF)– A textual & graphical AADL front-end with semantic &

XML/XMI support– Extensible through architecture analysis & generation plug-ins

• OSATE offers– Low cost entrypoint to the use of SAE AADL

Page 26: SAE AADL: An Industry Standard for Embedded Systems

www.aadl.infowww.aadl.info 25© 2004 by Carnegie Mellon University

SAE AADL and OSATE: Enablers of Embedded Systems Research

• Industry standard architecture modeling notation & model interchange format facilitates– Interchange of architecture models between contractors &

subcontractors– Common architecture model for non-functional system

property analysis from different perspectives– In-house prototyping of project specific architecture analysis &

generation– Architecture research with access to industrial models &

industry exposure to research results