Formal Verification of Safety Properties in Timed Circuits Marco A. Peña (Univ. Politècnica de Catalunya) Jordi Cortadella (Univ. Politècnica de Catalunya)

Slides:



Advertisements
Similar presentations
The Quest for Correctness Joseph Sifakis VERIMAG Laboratory 2nd Sogeti Testing Academy April 29th 2009.
Advertisements

Clocked Mazurkiewicz Traces and Partial Order Reductions for Timed Automata D. Lugiez, P. Niebert, S. Zennou Laboratoire d Informatique Fondamentale de.
Modeling and Analyzing Periodic Distributed Computations Anurag Agarwal Vijay Garg Vinit Ogale The University.
Concurrent Operational Semantics of Safe Time Petri Nets Claude Jard European University of Brittany, ENS Cachan Bretagne, IRISA Campus de Ker-Lann,
Planning based on Model Checking Dept. of Information Systems and Applied CS Bamberg University Seminar Paper Svetlana Balinova.
ECE Synthesis & Verification - L271 ECE 697B (667) Spring 2006 Synthesis and Verification of Digital Systems Model Checking basics.
Timed Automata.
26 September 2003U. Buy -- SEES 2003 Sidestepping verification complexity with supervisory control Ugo Buy Department of Computer Science Houshang Darabi.
1 Advanced Digital Design Synthesis of Control Circuits by A. Steininger and J. Lechner Vienna University of Technology.
Efficient Reachability Analysis for Verification of Asynchronous Systems Nishant Sinha.
Model Checking for Probabilistic Timed Systems Jeremy Sproston Università di Torino VOSS Dagstuhl seminar 9th December 2002.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Hazard-free logic synthesis and technology mapping I Jordi Cortadella Michael Kishinevsky Alex Kondratyev Luciano Lavagno Alex Yakovlev Univ. Politècnica.
Hardware and Petri nets Synthesis of asynchronous circuits from Signal Transition Graphs.
Yongjian Li The State Key Laboratory of Computer Science Chinese Academy of Sciences William N. N. HungSynopsys Inc. Xiaoyu SongPortland State University.
STARI: A Case Study in Compositional and Hierarchical Timing Verification Serdar Tasiran, Prof. Robert K. Brayton Department of Electrical Engineering.
Ordering and Consistent Cuts Presented By Biswanath Panda.
Hardware and Petri nets: application to asynchronous circuit design Jordi CortadellaUniversitat Politècnica de Catalunya, Spain Michael KishinevskyIntel.
Using Interfaces to Analyze Compositionality Haiyang Zheng and Rachel Zhou EE290N Class Project Presentation Dec. 10, 2004.
Introduction to asynchronous circuit design: specification and synthesis Part III: Advanced topics on synthesis of control circuits from STGs.
1 Logic design of asynchronous circuits Part II: Logic synthesis from concurrent specifications.
Asynchronous Sequential Logic
Handshake protocols for de-synchronization I. Blunno, J. Cortadella, A. Kondratyev, L. Lavagno, K. Lwin and C. Sotiriou Politecnico di Torino, Italy Universitat.
Introduction to asynchronous circuit design: specification and synthesis Part II: Synthesis of control circuits from STGs.
1 Logic synthesis from concurrent specifications Jordi Cortadella Universitat Politecnica de Catalunya Barcelona, Spain In collaboration with M. Kishinevsky,
Asynchronous Interface Specification, Analysis and Synthesis M. Kishinevsky Intel Corporation J. Cortadella Technical University of Catalonia.
Computing Delay with Coupling Using Timed Automata Serdar Tasiran, Yuji Kukimoto, Robert K. Brayton Department of Electrical Engineering & Computer Sciences.
Verification and Controller Synthesis for Timed Automata : the tool KRONOS Stavros Trypakis.
Scheduling Using Timed Automata Borzoo Bonakdarpour Wednesday, April 13, 2005 Selected Topics in Algorithms and Complexity (CSE960)
Sanjit A. Seshia and Randal E. Bryant Computer Science Department
10/25/2007 ITC-07 Paper Delay Fault Simulation with Bounded Gate Delay Model Soumitra Bose Design Technology, Intel Corp. Folsom, CA Hillary.
STG-based synthesis and Petrify J. Cortadella (Univ. Politècnica Catalunya) Mike Kishinevsky (Intel Corporation) Alex Kondratyev (University of Aizu) Luciano.
Rajeev K. Ranjan Advanced Technology Group Synopsys Inc. Using Combinational Verification for Sequential Circuits Joint work with: Vigyan Singhal, Cadence.
Reasoning about Timed Systems Using Boolean Methods Sanjit A. Seshia EECS, UC Berkeley Joint work with Randal E. Bryant (CMU) Kenneth S. Stevens (Intel,
1 State Encoding of Large Asynchronous Controllers Josep Carmona and Jordi Cortadella Universitat Politècnica de Catalunya Barcelona, Spain.
Synthesis of Asynchronous Control Circuits with Automatically Generated Relative Timing Assumptions Jordi Cortadella, University Politècnica de Catalunya.
Efficient Hybrid Reachability Analysis for Asynchronous Concurrent Systems E. Pastor and M.A. Peña Department of Computer Architecture Technical University.
Computing Over­Approximations with Bounded Model Checking Daniel Kroening ETH Zürich.
1 A propositional world Ofer Strichman School of Computer Science, Carnegie Mellon University.
Automatic synthesis and verification of asynchronous interface controllers Jordi CortadellaUniversitat Politècnica de Catalunya, Spain Michael KishinevskyIntel.
Derivation of Monotonic Covers for Standard C Implementation Using STG Unfoldings Victor Khomenko.
Asynchronous Circuit Verification and Synthesis with Petri Nets J. Cortadella Universitat Politècnica de Catalunya, Barcelona Thanks to: Michael Kishinevsky.
Formal verification Marco A. Peña Universitat Politècnica de Catalunya.
1 Efficient Verification of Timed Automata Kim Guldstrand Larsen Paul PetterssonMogens Nielsen
Maria-Cristina Marinescu Martin Rinard Laboratory for Computer Science Massachusetts Institute of Technology A Synthesis Algorithm for Modular Design of.
Regular Model Checking Ahmed Bouajjani,Benget Jonsson, Marcus Nillson and Tayssir Touili Moran Ben Tulila
7/13/2003BMC A SAT-Based Approach to Abstraction Refinement in Model Checking Bing Li, Chao Wang and Fabio Somenzi University of Colorado at Boulder.
Jorge Muñoz-Gama Universitat Politècnica de Catalunya (Barcelona, Spain) Algorithms for Process Conformance and Process Refinement.
On Reducing the Global State Graph for Verification of Distributed Computations Vijay K. Garg, Arindam Chakraborty Parallel and Distributed Systems Laboratory.
1 Hybrid-Formal Coverage Convergence Dan Benua Synopsys Verification Group January 18, 2010.
Correct-by-construction asynchronous implementation of modular synchronous specifications Jacky Potop Benoît Caillaud Albert Benveniste IRISA, France.
Computer Organization & Programming Chapter 5 Synchronous Components.
Curtis A. Nelson 1 Technology Mapping of Timed Circuits Curtis A. Nelson University of Utah September 23, 2002.
1 Model Checking of of Timed Systems Rajeev Alur University of Pennsylvania.
1 Chapter 4 Combinational Logic Logic circuits for digital systems may be combinational or sequential. A combinational circuit consists of input variables,
Standard & Canonical Forms COE 202 Digital Logic Design Dr. Aiman El-Maleh College of Computer Sciences and Engineering King Fahd University of Petroleum.
Controller Synthesis For Timed Automata Authors : Eugene Asarin, Oded Maler, Amir Pnueli and Joseph Sifakis Yean-Ru Chen Embedded System Laboratory of.
Specification mining for asynchronous controllers Javier de San Pedro† Thomas Bourgeat ‡ Jordi Cortadella† † Universitat Politecnica de Catalunya ‡ Massachusetts.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
The Time-abstracting Bisimulation Equivalence  on TA states: Preserve discrete state changes. Abstract exact time delays. s1s2 s3  a s4  a 11 s1s2.
SS 2017 Software Verification Timed Automata
Asynchronous Interface Specification, Analysis and Synthesis
Register Transfer Specification And Design
Instructor: Rajeev Alur
Lifting Propositional Interpolants to the Word-Level
Relative-timing based verification of timed circuits and systems
Vishwani D. Agrawal James J. Danaher Professor
Synthesis of asynchronous controllers from Signal Transition Graphs:
Discrete Controller Synthesis
Producing short counterexamples using “crucial events”
Presentation transcript:

Formal Verification of Safety Properties in Timed Circuits Marco A. Peña (Univ. Politècnica de Catalunya) Jordi Cortadella (Univ. Politècnica de Catalunya) Alex Kondratyev (Theseus Logic Inc.) Enric Pastor (Univ. Politècnica de Catalunya)

y- a+b+ x+y+ c+ c- a- b- x- x+y- y+x- a b x y c Are there any hazards or glitches?

Outline Preliminaries Transitions systems and timing constraints From absolute to relative timing State space refinement by timing constraints Verification algorithm Results and conclusions

Gate Delay Model d  [3,5] d  [2,4] X Y Z X Y Z

A circuit is a concurrent system Gates  Processes Delays  Computation times Signal transitions  Events

Previous work Time separation of events –McMillan & Dill (1992): min/max constraints in acyclic graphs –Hulgaard & Burns (1994): max constraints for cyclic graphs with choice Zone automata –Dill (1989): Clock zones represented as conjunctions of timing constraints (difference-bound matrices) –Rockiki, Myers, Belluomini (1994, 1998): Partial orders to reduce the number of geometric regions (ATACS) –Maler (1995): Timed polyhedra (Open KRONOS) Incremental refinement –Alur et al. (1995): timing constraints added as needed (COSPAN, timed automata). –Balarin & Sangiovanni-Vincentelli (1995): trace-based refinement –Negulescu (1997): process spaces (FIREMAPS)

Time separation of events –McMillan & Dill (1992): min/max constraints in acyclic graphs Incremental refinement Our approach for absolute timing analysis by acyclic graphs with relative timing

Applicable to timed transition systems, with any type of causality relations Verification of temporal safety properties BDD-based symbolic representation (large untimed state spaces can be handled) Backannotation: sufficient (relative) timing constraints for correctness are reported Our approach: features

Transition systems and timing constraints

x a a a b b b c c c c c g g g g b b d d y Transition System States Transitions Events g

x a a a b b b c c c c c g g g g b b d d y Firing Region (a) g

x a a a b b b c c c c c g g g g b b d d y Firing Region (b) g

x a a a b b b c c c c c g g g g b b d d y g Concurrency a || b

x a a a b b b c c c c c g g g g b b d d y AND causality g a b c d FR (d)

x a a a b b b c c c c c g g g g b b d d y OR causality g a b c FR (c)

Property g must fire before d after having fired x x a a a b b b c c c c c g g g g b b d d y g

x a a b b b c c c c c g g d y Timed Transition System (Manna, Pnueli) Transition System Min/Max Delays  (a)  [1,2]  (b)  [1,2]  (c)  [2.5,3]  (g)  [0.5,0.5]  d,x,y 

From absolute to relative timing

{x} {a,b} {b,c,g} {c,g} {d,g} {g} Ø x a b c d g x a a a b b b c c c c c g g g g b b d d y g

An event e can only become enabled at the time another event e’ fires (e’ triggers e) {e’,...} {e,...} e’ {x} {a,b} {b,c,g} {c,g} {d,g} {g} Ø x a b c d g

a a x x g b b c c d d g Timing-consistent trace Time assignment to event firings such that...  min (g)  t 6 - t 2   max (g) t1t1 t2t2 t3t3 t4t4 t5t5 t6t6 {x} {a,b} {b,c,g} {c,g} {d,g} {g} Ø x a b c d g

Event structure from a trace x a b c d g a a x x g b b c c d d g {x} {a,b} {b,c,g} {c,g} {d,g} {g} Ø x a b c d g

{x} {a,b} {b,c,g} {c,g} {d,g} {g} Ø x a b c d g x a b c d g

x a b c d g {x} {a,b} {b,c,g} {c,g} {d,g} {g} Ø x a b c d g

x a b c d g {x} {a,b} {b,c,g} {c,g} {d,g} {g} Ø x a b c d g

x a b c d g {x} {a,b} {b,c,g} {c,g} {d,g} {g} Ø x a b c d g

x a b c d g {x} {a,b} {b,c,g} {c,g} {d,g} {g} Ø x a b c d g

x a b c d g {x} {a,b} {b,c,g} {c,g} {d,g} {g} Ø x a b c d g

x a b c d g {x} {a,b} {b,c,g} {c,g} {d,g} {g} Ø x a b c d g Trace and event structure are enabling compatible

{x} {a,b} {b,c,g} {c,g} {d,g} {g} Ø x a b c d g x a b c d g {x} {a,b} {a} {c,g} {d,g} {g} Ø x b a c d g {x} {a,b} {b,c,g} {b,g} {b} {d} Ø x a c g b d {x} {a,b} {b,c,g} {b,c} {c} {d} Ø x a g b c d

x a b c d g [1,2] [2.5,3] [0.5,0.5] [0,  ) Maximum Time Separation (McMillan & Dill, 1992) max  (g) -  (d) = -2

x a b c d g [1,2] [2.5,3] [0.5,0.5] [0,  ) Maximum Time Separation (McMillan & Dill, 1992) max  (g) -  (d) longest min path for d slack for max path of g = -2

x a b c d g Maximum Time Separation (McMillan & Dill, 1992) max  (g) -  (d) = -2 From absolute to relative timing

{x} {a,b} {b,c,g} {c,g} {d,g} {g} Ø x a b c d g x a b c d g {x} {a,b} {a} {c,g} {d,g} {g} Ø x b a c d g {x} {a,b} {b,c,g} {b,g} {b} {d} Ø x a c g b d {x} {a,b} {b,c,g} {b,c} {c} {d} Ø x a g b c d

{x} {a,b} {b,c,g} {c,g} {d,g} {g} Ø x a b c d g x a b c d g  min and  max for each event Theorem: timed The trace is timing consistent iff it is an enabling-compatible trace of the timed event structure {x} {a,b} {b,c,g} {b,g} {b} {d} Ø x a c g b d

State space refinement by timing constraints

x a a a b b b c c c c c g g g g b b d d y g x a b c g d

x a a a b b b c c c c c g g g g b b d d y g x a b c g d

x a a a b b b c c c c c g g g g b b d d y g x a b c g d

x a a a b b b c c c c c g g g g b b d d y g x a b c g d

x a a a b b b c c c c c g g g g b b d d y g x a b c g d

x a a a b b b c c c c c g g g g b b d d y g x a b c g d

x a a a b b b c c c c c g g g g b b d d y g x a b c g d Enabling compatible

x a a a b b b c c c c c g g g g b b d d y g x a b c g d

x a a a b b b c c c c c g g g g b b d d y g x a b c g d Not enabling compatible

x a a a b b b c c c c c g g g g b b d d y g x a b c g d

x a a a b b b c c c c c g g g g b b d d y g x a b c g d

x a a a b b b c c c c c g g g g b b d d y g x a b c g d

x a b b b c c c c g g g g b b d d y g a a c c c g g g d d y

x a b b c c c c g g g g b b d d g x a b c g d Timing analysis

x a b b c c c c g g g g b b d d g x a b c g d

x a b b c c c c g g d x a b c g d

x a b b c g g d b y a a c c c g g g d d y

x b a a c c c g g g d d x a b c g d

x b a a c c c g g g d d x a b c g d

x b a c c c g d x a b c g d

x b a c g d a b c g g d y y b

x a b b b c g g d y a c g d y

Verification algorithm

Symbolic state space exploration and failure detection

Border of failure states Failure trace Event structure x a b c g d Timing analysis Composition

Failure trace Event structure Timing analysis x a b c g d Composition

r s t u w

r s t u w

i j k

i j k

i j k r s t u w x a b c g d Backannotation (sufficient timing constraints)

Convergence of the algorithm Nodal points All cycles cut by nodal points Finite number of traces between nodal points Convergence and exact results guaranteed

Implementation issues Event structure: calculated from the shortest suffix that invalidates the failure trace Composition: slight modification of the Transition Relation (one extra boolean variable to indicate enabling compatibility) State encoding: n bits for untimed states n+k bits for timed states (k event structures used for timing analysis)

Experimental results

Conclusions Timing analysis with absolute delays typically produces unmanageable state spaces Temporal properties (no glitches, mutual exclusion, no conflicts) can be posed as relative timing constraints Strategy: combine absolute timing (for analysis) with relative timing (for state space calculation) Backannotation: important in the design flow and for sensitivity analysis

Experimental results: the STARI FIFO