The Rare Glitch Project: Verification Tools for Embedded Systems Ed Clarke, David Garlan, Bruce Krogh, Reid Simmons, Jeannette Wing Carnegie Mellon University Pittsburgh, PA.

Download Report

Transcript The Rare Glitch Project: Verification Tools for Embedded Systems Ed Clarke, David Garlan, Bruce Krogh, Reid Simmons, Jeannette Wing Carnegie Mellon University Pittsburgh, PA.

The Rare Glitch Project:
Verification Tools for Embedded Systems
Ed Clarke, David Garlan, Bruce Krogh,
Reid Simmons, Jeannette Wing
Carnegie Mellon University
Pittsburgh, PA
Embedded Systems
 They are highly distributed, multi-task, concurrent
real-time systems.
 They control increasingly sophisticated physical
systems.
 They operate with increasing autonomy under
adverse and unpredictable conditions.
 They eventually will be seamlessly woven into the
fabric of our everyday lives.
Carnegie Mellon: The Rare Glitch Project
2
Jeannette M. Wing
Verification
 Grand Challenge
 To ensure the correctness of these embedded systems as
they operate in increasingly complex environments—for the
safety and good of the general public.
 Opportunity
 State of the art verification tools are well suited for control
systems.
 Embedded systems have narrow hardware/software
interface.
 Embedded systems architectures are simpler and more
regular.
 Feasibility
 We are not trying to solve the whole verification problem, but
one for a class of systems for which we believe we can make
the next big success story.
Carnegie Mellon: The Rare Glitch Project
3
Jeannette M. Wing
Our Long-Term Vision
 To provide design engineers with lightweight “pushbutton” tools, each checking a specific applicationspecific property.
Check
Check
Restart
Deadlock Race
Carnegie Mellon: The Rare Glitch Project
Check
4
Check
Check
Power
usage
Fuel
usage
Jeannette M. Wing
Three Main Thrusts of Our Project
system
environment
 Verifying system integrity
Synchronization constraints
 Resource constraints
 Real-time constraints

 Modeling the environment
Hybrid dynamics
 Stochastic models

 Usability
Extracting models
 Explaining tool feedback

Carnegie Mellon: The Rare Glitch Project
5
Jeannette M. Wing
Technical Challenges
 Interleavings of multiple task executions
 Inter-task dependencies and synchronization
requirements
 System resource constraints
 Hard real-time constraints
 Interactions with complex physical dynamic systems
 Adverse, unpredictable environments
 Stringent requirements for autonomy, fault tolerance,
and survivability
Carnegie Mellon: The Rare Glitch Project
6
Jeannette M. Wing
Technical Approach
Embedded System
Environment
Design Engineer’s Verification Toolbox
Usability
System Integrity Properties
Synchronization
Constraints
Resource
Constraints
Modeling the Environment
System-Environment Modeling Uncertainty:
Interactions: Hybrid
Stochastic Models
Dynamics
Real-time
Constraints
Foundational Building Blocks
Model checking techniques and tools
Task-level system architecture, task executive languages
Continuous dynamics, quantitative analysis, reliability analysis
Carnegie Mellon: The Rare Glitch Project
7
Jeannette M. Wing
Cross-Cutting Themes
 Exploit model checking techniques and tools.
 Focus on the task level.
 Incorporate continuous domains in our models.
Carnegie Mellon: The Rare Glitch Project
8
Jeannette M. Wing
Verifying System Integrity
 Synchronization constraints
 Publish-subscribe
architecture
 Cyclic-tasks with shared variables

Research question: How can we reason about their aggregate
behavior?
 Resource constraints
 Continuous,
consumable (e.g., fuel) and
renewable (e.g., bandwidth, disk space)
resources

Research question: How should we specify and verify resource
constraints?
 Real-time constraints
 Quantitative

timing analysis
Research questions: How can we extend this technique to
continuous time? How can we deal with dynamic process
creation and deletion?
Carnegie Mellon: The Rare Glitch Project
9
Jeannette M. Wing
Modeling the Environment
 Hybrid dynamics
 Dealing
with both discrete and continuous state
variables

Research question: How can we automate and scale differential
equations models for large systems?
 Stochastic models
 Dealing
with uncertainty, unpredictability
 Using continuous variables (e.g., probabilities) for
reliability and cost-benefit analyses

Research questions: How can we handle dependent events,
cascading of events? Both nondeterministic and probabilistic
state transitions?
Carnegie Mellon: The Rare Glitch Project
10
Jeannette M. Wing
Usability
 Extracting models
 Synchronization
skeletons
 Translators for task execution languages

Research question: How can we balance expressibility of
languages with efficiency of verification and user-friendliness?
 Explaining verification tool results
 Adopt
AI techniques to explain counterexamples for
task executive programs.
 Develop techniques to view and browse the temporal
evolution of counterexamples.

Research question: How can we create virtual execution traces
that can be used by existing visualization tools?
Carnegie Mellon: The Rare Glitch Project
11
Jeannette M. Wing
The Rare Glitch Tool Suite
Checkers and Provers
Specification and
Modeling
Languages
Specification
Analysis Engines
Checkmate
Reliability and
Cost Analyzers
Prism
SMV
Counterexamples
Explanation
Generator
Model
PVS
Abstraction/
Refinement
Processor
Symp
…
…
Carnegie Mellon: The Rare Glitch Project
12
Jeannette M. Wing
Preliminary Planning
 Technical
 So
far: Technical presentations of our current work
 To do


Identification of case studies
Identification of common group project
 Continue
to pursue existing two-way and three-way
collaborations
 Administrative
 Weekly
project meetings, project name, project web
page
Carnegie Mellon: The Rare Glitch Project
13
Jeannette M. Wing
Project Administration
 Principal Investigators
 Ed
Clarke, David Garlan, Bruce Krogh, Reid Simmons,
Jeannette Wing (POC)
 Industrial connections
 Honeywell
Technology Center
 CMU High Dependability Computing Consortium
 Years 3 and 5
 Hold
workshops for technical exchange with industry
Carnegie Mellon: The Rare Glitch Project
14
Jeannette M. Wing
Preview of This Afternoon’s Talks
 Ed Clarke
 Verifying
Bus Protocol Standards for Embedded
Systems
 Bruce Krogh
 Model
Checking for Hybrid Systems
 Jeannette Wing
 Scenario
Graph Generation and MDP-Based Analysis
 David Garlan
 Model
Checking Publish-Subscribe Software
Architectures
Carnegie Mellon: The Rare Glitch Project
15
Jeannette M. Wing