designing the future of embedded systems at darpa ixo dr. douglas c. schmidt [email protected]...
TRANSCRIPT
Designing the Designing the Future of Future of
Embedded Systems Embedded Systems at DARPA IXOat DARPA IXO
Dr. Douglas C. Schmidt
[email protected] Manager
Information Exploitation Office
Authorized for Public Release: Distribution Unlimited
DARPA IXO Embedded Systems Programs
System Technology
Design Technology
Small GrainLarge Grain
PCES
SynchronizationPersistence
Fault ToleranceMemory Management
Cross-cutting Concerns
GPS IFF FLIR
Object Request Broker
AirFrame
HUD Nav WTS
Event Channel
ReplicationService
MoBIES
NESTARMS
Technology Transition ProcessInitial DARPA IXO Program
Structure
DARPA/DoD
Funding/Directing/Advising
Tool Vendors
Tool Vendors
Tool Vendors
Tech. transfer toCOTS tools
Technologydomainspanned
OEP-2
OEP-1
Standards &Certification
Bodies
Tech. transfer to standards
Stakeholder Role
DARPA Set direction, supplies funding
End Users Set DoD needs, market potential, stake in progress, augment funding
Open Experimentation Platform (OEP)
Define challenge problems, measure progress, ensure DoD transition
Tool Vendors Follow programs & stimulate commercial transition
Standards & Certification
Involve in adopting & creating standards & certification processes based on emerging architectures & best practices
Technology Developers (Universities, R&D organizations)
GROW A COMMERCIAL MARKET
Open ExperimentalPlatform-2
End User/Tech. Tr. target
Open ExperimentalPlatform-1
End-user/Tech. Tr. target
Tool Vendors
Tool Vendors
Technology Transition ProcessAfter DARPA Exits
Tool Vendors
DARPALeave-Behinds
Technology Developers
DoD Programs
COTS tools
Commercial Applications
Large vendorsSmall companies/StartupsUniversities
• Reference Solutions• Open Tool Integration Framework• Open Code Bases & Repository• Open Tool Repository
NationalExperimentalPlatforms
Stakeholder Role
DoD Services Additional R&D as needed
Defense Industry Market for created COTS
Commercial Industry Incentive to generate COTS
DARPA Leave-behinds Open repositories & reference solutions
DoDAgencies
Non-DefenseIndustry
DefenseIndustry
Standards &Certification
Bodies
SELF-SUSTAINING COMMERCIAL MARKET
ExpandedTechnology
Domain
Dr. Douglas C. SchmidtDARPA IXO
ARMSAdaptive & Reflective Middleware
Systems
RTP
DNS
HTTP
UDP TCP
IP
TELNET
Ethernet ATM FDDI
Fibre Channel
FTP
INTERNETWORKING ARCH
TFTP
20th Century
Win2K Linux LynxOS
Solaris VxWorks
Middleware
MiddlewareServices
MiddlewareApplications
MIDDLEWARE ARCH
21st Century
The objective of ARMS is to create the new generation of middleware technologies for distributed real-time & embedded (DRE) combat systems to enable 1.Simultaneous control of multiple
QoS properties & 2.Composable & customizable DoD
common technology bases
ARMS Technical Focus: Real-time Control of Distributed Resources
Ship-wide QoS Doctrine & Readiness Display
Distributed resource management
• Allocation/reservations, caching, scheduling, monitoring, & load balancing
Distributed security Distributed fault tolerance
Network latency & bandwidth
Workload & Replicas
CPU & memory
Connections & priority bands
Network latency & bandwidth
Workload & Replicas
CPU & memory
Connections & priority bands
Control Vars.}
Localmiddleware
QoS
QoS
TBMD Application
AAW Application
ControlAlgorithmControlAlgorithm
ControlAlgorithmControlAlgorithm
ControlAlgorithmControlAlgorithm
Requested QoS
Measured QoS
GlobalMiddleware
Network latency & bandwidth
Workload & Replicas
CPU & memory
Connections & priority bands
Create new generation of middleware to simultaneously control multiple QoS properties
Hardware
Middleware
OS & Protocols
Applications
ARMS Technical Agenda:Adaptive & Reflective Middleware
Endsystem
ApplicationsApplications
Endsystem
MiddlewareMiddleware MiddlewareMiddleware
ApplicationsApplications
Mechanism & PropertyManagers
Sys Cond Sys Cond Sys CondInterceptor Interceptor
LocalResourceManagers
Sys Cond
{}QoS Doctrine QoS Doctrine
Network latency & bandwidth
Workload & Replicas
CPU & memory
Connections & priority bands
Network latency & bandwidth
Workload & Replicas
CPU & memory
Connections & priority bands
LocalResourceManagers
Problem• Existing DRE systems are
rigidly designed with fixed QoS parameters that limit their utility for new missions
Research Challenges• Assuring dynamic flexibility and QoS simultaneously• Devise middleware to formally specify QoS-constrained global resource
management plans; model, reason about and refine them; & monitor/enforce these plans automatically at run-time
Qu
ali
ty o
f S
erv
ice
lo
hi
System Utilityhi lo
Qu
ali
ty o
f S
erv
ice hi
loSystem Utilityhi lo
Solution Approach• Meta-programming techniques that
• Decouple functional & QoS paths to allow more degrees of freedom
• Specify QoS doctrine declaratively• Support dynamic QoS adaptation &
optimizations• Secure multi-level distributed
resource management
Solution Approach• Meta-programming techniques that
• Decouple functional & QoS paths to allow more degrees of freedom
• Specify QoS doctrine declaratively• Support dynamic QoS adaptation &
optimizations• Secure multi-level distributed
resource management
Applications of ARMS Technology
Target Target Application: Application: Total Ship Total Ship Computing Computing EnvironmentsEnvironments
Key System Functionality•Sensor systems•Command & control systems
•Engagement systems•Weapons control systems•Weapons systems
Navy Benefits• Load-invariant tactical performance• Information access• Dynamic mission flexibility• Continuous availability• Rapid upgrades• Low ownership cost• Reduced manning
ARMS Middleware Technologies• Distributed real-time processing• QoS-enabled open systems• Portability• Scalability• Secure fault tolerance• Shared resource management • Self-adaptive
Program Impact• Important DoD systems will be more assurable, adaptable, & affordable
• e.g., network-centric warfare, total ship computing environments, theater ballistic missile defense• Researchers will have higher-level techniques & tools to enhance future R&D
MoBIESModel-Based Integration of
Embedded Systems
Dr. John S. Bay
DARPA IXO
The objective of MoBIES is to develop technology to flexibly integrate the physics of
the underlying domain with the embedded software design tools in order to custom-tailor
the software process to the application
Analysis Simul. Synth. Analysis
Meta-Prog.Model
Builder
Exec.Frame-work
ModelRep.
Gen.
Gen
Open Tool Integration Framework
Transl. Transl. Transl. Transl.
MetaP-IF Meta-IF
Data/MetaData/Meta
Data/MetaData
Data/MetaData
Data/MetaData
Data/MetaData
Data/MetaData
Data/MetaP-IF Data/MetaP-IF
Data/MetaP-IF
Components
Exec.Frame-work
Customization
Exec.Frame-work
Customization
Exec.Frame-work
Customization
TimingAnalysisHybridSimulationSafety
AnalysisFaultAnalysis
ModelBuilderModel
Builders
ModelRep.Model
Rep.
GeneratorGenerator
MoBIES Technical Agenda
• Models of broad physical processes (HW)• Models of time and concurrency (SW)• Mathematical models for …
– analysis tools
(HW&SW)– scheduling– code generation (generator-generators)
• Framework & toolsuite integrationMODEL-BASED INTEGRATION
DESIGN TOOLS
MoBIES
(Application INdependent)
• Reduced design space• Formal specification languages• Correct-by-construction generators• Tailored models of computation• Reduced V&V complexity• Composable tool market
DESIGN PROCESS
(Application Dependent)DESIGN TOOLSfor
Embedded Systemsfor
MoBIES Technical Focus: Model-Based Integration of Embedded
SoftwareComplex Operational Embedded System
Mathematical Models• Structural analysis• Dynamic equations• CAD modeling and simulation• Part interaction analysis• Sensor and actuator circuits
Complex but Inert Machine
Requirements• Real-time control• Network connectivity• Fault tolerant/fail safe• Harsh environment• Size/weight/power/thermal
constraints
Embedded Software
MoBIES Tools• Intelligent programming tools• Smart process schedulers• Communications configuration• On-line resource allocation• User interfaces• Automatic code generation
if (inactiveInterval != -1) { int thisInterval = (int)(System.currentTimeMillis() - lastAccessed) / 1000;
if (thisInterval > inactiveInterval) { invalidate();
ServerSessionManager ssm = ServerSessionManager.getManager();
ssm.removeSession(this); } } }
private long lastAccessedTime = creationTime;
/** * Return the last time the client sent a request associated with this * session, as the number of milliseconds since midnight, January 1, 1970 * GMT. Actions that your application takes, such as getting or setting * a value associated with the session, do not affect the access time. */ public long getLastAccessedTime() {
return (this.lastAccessedTime);
}
this.lastAccessedTime = time;
/** * Update the accessed time information for this session. This method * should be called by the context when a request comes in for a particular * session, even if the application does not reference it. */ public void access() {
this.lastAccessedTime = this.thisAccessedTime; this.thisAccessedTime = System.currentTimeMillis(); this.isNew=false; }
lastAccessedTime = 0L;
lastAccessedTime = ((Long) stream.readObject()).longValue(); maxInactiveInterval = ((Integer) stream.readObject()).intValue(); isNew = ((Boolean) stream.readObject()).booleanValue();
+ =
MoBIES finds the underlying Application-Specific Mathematical Principles of the Embedded Software, enabling us to …
• Generate complex software automatically; not through laborious manual coding• Guarantee that generated code is correct; do not rely on after-the-fact testing• Provide application engineers programming interfaces using their own terminology• Tailor and specialize programming tools to the systems they are designing
MoBIES finds the underlying Application-Specific Mathematical Principles of the Embedded Software, enabling us to …
• Generate complex software automatically; not through laborious manual coding• Guarantee that generated code is correct; do not rely on after-the-fact testing• Provide application engineers programming interfaces using their own terminology• Tailor and specialize programming tools to the systems they are designing
Over 99% of all microprocessors manufactured today are destined for embedded applications; we need software tools tailored to those special needs.
Over 99% of all microprocessors manufactured today are destined for embedded applications; we need software tools tailored to those special needs.
DEVICE PHYSICS
PERFORMANCE REQUIREMENTS
Potential Applications of MoBIES Technology
MAJOR WEAPONS
PROGRAMS
MAJOR WEAPONS
PROGRAMS
JOINT DARPA/ SERVICE
PROGRAMS
JOINT DARPA/ SERVICE
PROGRAMS
SOFTWARE TOOL VENDORSSOFTWARE TOOL VENDORS
STANDARDS BODIESSTANDARDS BODIES
COMMERCIAL USERS
COMMERCIAL USERS
Dr. Vijay RaghavanDARPA IXO
NESTNetworked Embedded Software
Technology
The objective of NEST is to develop robust coordination & synthesis services to support
networked embedded systems of 100 to 1,000,000 nodes
NEST Technical Focus: Robust Coordination Services
Missions for Coordinated Fleets of
UAV-s
Mathematical Models• Distributed Control Algorithms• Stability, dynamics• Network models• Device models
Distributed Control of Fine-grain Network of MEMS
devices
Requirements• Physical: power, dynamics• Communication quality• Coordination Service
Requirements• Mission modality
Coordination Services
NEST Tools• Micro-protocols for coordination• Time-bounded synthesis
methods• Service package synthesis tools• Reference solutions
+ =
NEST provides the computational foundation for building large-scale distributed control applications by implementing services for coordination such that …
• Control algorithms may assume guarantees for time, consensus, and other requirements
• The service packages are customized to the needs of applications
NEST provides the computational foundation for building large-scale distributed control applications by implementing services for coordination such that …
• Control algorithms may assume guarantees for time, consensus, and other requirements
• The service packages are customized to the needs of applications
Networked embedded systems represent a new wave in technology. NEST provides the groundwork for making new applications feasible.
Networked embedded systems represent a new wave in technology. NEST provides the groundwork for making new applications feasible.
CONTROL+DISTRIBUTED
ALGORITHMS
COORDINATION REQUIREMENTS
COCKPITDISPLAYS
FLIGHT,ELECTRICAL,PROPULSION
STORES
STORES
STORES
AP
AP
AP
RFM
RFM
RFMRFM
RFM
RFM
RFMRFM
ASDN
AP
Integrated EO/IR System
ConvertersSensors
Integrated RF System
IntegratedVehicleManagementSystem(VMS)
Ph
oto
nic
Sw
itch
Fa
bri
c
STORESMGMT.SYSTEM
(SMS)
Ph
oto
nic
Sw
itch
Fa
bri
c
GP SignalProcessor
GP SignalProcessor
GP SignalProcessor
ImageProcessorImage
ProcessorImage
Processor
I/OModulesI/O
ModulesI/O
Modules
MultiportMemory
MultiportMemory
MultiportMemory
DataProcessor
DataProcessor
DataProcessor
GraphicsProcessor
GraphicsProcessorGraphicsProcessor
PhotonicBackplane
SwitchFabric
GP SignalProcessor
GP SignalProcessor
GP SignalProcessor
ImageProcessorImage
ProcessorImage
Processor
I/OModulesI/O
ModulesI/O
Modules
MultiportMemory
MultiportMemory
MultiportMemory
DataProcessor
DataProcessor
DataProcessor
GraphicsProcessor
GraphicsProcessorGraphicsProcessor
Photonic
Switch
Fabric
VMS Bus
PhotonicPort(s)
PhotonicPort(s)
SMS Bus
Avi
onic
s B
us
SuperProcessingCenter
Photonic Port(s)
Scalable Photonic Interconnect Achieves Reduction in Avionics Size,Weight and Power with Increased Performance and Reliability
LocalClock
Reference Clock
Precision
Local clocks are synchronized:• limit the effects of clock drift• sufficient resolution• fault resilience
Time Service
v1vvj = v
vkv
A common v is selected:• uniform agreement • uniform validity (v {vi}) • the protocol terminates
Consensus Service
Networked Processes
v2v
Distributed Network of Sensor Motes
Berkeley OEP
Resource Constraints, non-determinism, dynamism
Determ
inism,
real-time
constraints
Boeing OEP
Extreme Scaling
Active Acoustical/Structural Mode Damping
•••
•••
Sensor(Accelerometer)
Actuator(PZT)
Processor
Nodelet
Control Loop
Adaptive Damage Identification(ADI) and Diagnostics
NEST Technical Agenda
Applications: Acoustic damping, Motes
Tasks: Coordination, Synthesis, Composition
Extreme Scaling
Applications of NEST Technology
Actuators for Vortex Control (10,000 nodes)
Distributed Active Control: Vibration Damping on Delta-4Rocket Payload Fairing (1,000 nodes)An experimental platform in the NEST program
Distributed Network of sensor motes for environmental monitoring,tracking, surveillance (1,000 nodes): An experimental platform in the NEST program
Noiseless sonar onsubmarines to providecamouflage (3,000 nodes)
100 – 1,000,000 node fusion of physicaland information
systems
Smart reconfigurable engines (100 nodes)
Gossamer Space Reflector (1,000,000 nodes) High resolution reconnaissance, GMTI
Dr. Douglas C. SchmidtDARPA IXO
PCESProgram Composition for
Embedded Systems
The objective of PCES is to create programming language & compiler technology that enables developers to safely &
productively weave cross-cutting aspects with real-time (RT) embedded program functionality
Event Channel
ReplicationService
GPSIFF
FLIR
Object Request Broker
AirFrame HUD
Nav
WTS
AP
Dr. Douglas C. SchmidtDARPA IXO
Small changes can break everythingSmall changes can break everything
AirFrame
AP
Nav WTS
GPS IFF
FLIR
Cyclic Exec
First Generation: Free form Spaghetti
Cross-cutting changes can break everythingCross-cutting changes can break everything
Event Channel
ReplicationService
GPS IFF FLIR
Object Request Broker
AirFrame
AP Nav WTS
Second Generation:Components
Many changes can be done easilyMany changes can be done easily
GPS IFF FLIR
Object Request Broker
AirFrame
AP Nav WTS
Event Channel
ReplicationService
SynchronizationPersistence Fault Tolerance
Memory ManagementCross-cutting Concerns
Third Generation:Aspects & Components
PCES Technical Focus: Real-time Plug & Play Avionics Systems
Key Cross-cutting Systemic Aspects
• Synchronization• Memory management &
persistence• Fault tolerance & error handling• Real-time deadlines • Bandwidth & CPU management
Key System Functionality• Weapons targeting systems (WTS)• Airframe & navigation (Nav)• Sensor control (GPS, IFF, FLIR)• Heads-up display (HUD)• Auto-pilot (AP)
Radar
Nav Sensors
WeaponManagement
Data Links
MissionComputer
VehicleMgmt
Weapons
PCES provides language & compiler technology to safely & productively program & evolve cross-cutting aspects to support real-time middleware & “plug & play” avionics applications
AirFrame
AP Nav WTSHUD
Avionics Applications
Object Request Broker
Event Channel
ReplicationService
Real-time Middleware
Ap
plic
atio
ns
of
PC
ES
La
ng
ua
ge
& C
om
pile
r T
ech
no
log
y
PCES Technical Agenda:Systemic Aspects for Real-time
Avionics
Boeing Bold
Stroke OEP
ASPECTANALYZER
PROGRAMANALYZER
Staging Controller• Compile time• Link time• Download time• Run time
Issues• Binding time• Order of specialization• Scope of properties• Conservative analysis
Program/Aspect Representations
WEAVER
e.g., Core Mission Computing Algorithms
Programmed
void HUD_update (int id, Coords coords) { HUDID aHud=null; aHud= hudRepo.getHud(id, coords); theDisplay.print(id, aHud); return true;}
Functional code
Reusable
Aspect Code• Synchronization• Fault Tolerance• Persistence• Error handling
aspect PublicErrorLogging { static Log log = new Log(); pointcut publicEntries (): receptions(public *com.boeing..*.*(..)) after() throwing (Error e): publicEntries() { log.write(e); }}
Loggingaspect
Mission Computer Code• Synchronized• Fault tolerant• Persistent• Robust
void HUD_update (int id, Coords coords) { HUDID aHud=null; try { aHud= hudRepo.getHud(id, coords); } catch (Error e) { log.write (e); } try { theDisplay.print(id, aHud); } catch (Error e) { log.write (e); } return true;}
Auto-tangled code
BBN, & LMCO TCT OEP
C2 assets & strike aircraft share imagery
data in real-time
PC
ES
Arch
itecture
Applications of PCES Technology
Local AreaNetwork
NYSE
NASDAQ
StockTrading
Hot Rolling Mill
Distributed Interactive Simulation
Quality Control
MilitaryCommunications
RadarControlSystems
Unmanned Systems
Tactical Aircraft
Shipboard Computing
•Provide decomposible & easily customizable component interfaces & implementations
Characteristics of Successful DARPA Embedded System Technology
Transitions•Program structure conveys & enforces endstate vision(s)•e.g., OEPs help to guide R&D efforts & build end-user alliances to Services & industry integrators/vendors
•Explicit focus on constraints of transition environment(s)•Performance, footprint, languages, tools, & commercial trends
LATENCY
THROUGHPUT
•Leverage R&D maturation cycles to “cross the chasm” of transition successfully•This generation’s successful transitions are often last generation’s successful R&D projects
Lev
el o
f T
ech
no
log
y A
bst
ract
ion
’96-’01 ’02-’06’90-’95lo
hi ResearchersPractitioners
C/AdaCyclic execsProprietary
C++UNIXCORBA
C++UNIXCORBA
JavaLinuxRT CORBA
JavaLinuxRT CORBA
DRTS JavaRT LinuxDynamic RT CORBA