Sugar 2.0 Formal Specification Language D ana F isman 1,2 Cindy Eisner 1 1 IBM Haifa Research Laboratory 1 IBM Haifa Research Laboratory 2 Weizmann Institute.

Slides:



Advertisements
Similar presentations
TWO STEP EQUATIONS 1. SOLVE FOR X 2. DO THE ADDITION STEP FIRST
Advertisements

Mathematical Preliminaries
1
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (Parallel Algorithms) Robin Pomplun.
© 2008 Pearson Addison Wesley. All rights reserved Chapter Seven Costs.
Copyright © 2003 Pearson Education, Inc. Slide 1 Computer Systems Organization & Architecture Chapters 8-12 John D. Carpinelli.
Chapter 1 The Study of Body Function Image PowerPoint
1 Copyright © 2013 Elsevier Inc. All rights reserved. Chapter 1 Embedded Computing.
Copyright © 2011, Elsevier Inc. All rights reserved. Chapter 6 Author: Julia Richards and R. Scott Hawley.
Author: Julia Richards and R. Scott Hawley
1 Copyright © 2013 Elsevier Inc. All rights reserved. Appendix 01.
1 Copyright © 2013 Elsevier Inc. All rights reserved. Chapter 3 CPUs.
Properties Use, share, or modify this drill on mathematic properties. There is too much material for a single class, so you’ll have to select for your.
UNITED NATIONS Shipment Details Report – January 2006.
By John E. Hopcroft, Rajeev Motwani and Jeffrey D. Ullman
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
Properties of Real Numbers CommutativeAssociativeDistributive Identity + × Inverse + ×
FACTORING ax2 + bx + c Think “unfoil” Work down, Show all steps.
Year 6 mental test 5 second questions
Year 6 mental test 10 second questions
5. Model Checking Modellbasierte Softwareentwicklung
Excel Functions. Part 1. Introduction 2 An Excel function is a formula or a procedure that is performed in the Visual Basic environment, outside the.
Solve Multi-step Equations
REVIEW: Arthropod ID. 1. Name the subphylum. 2. Name the subphylum. 3. Name the order.
Sequential Machine Theory
PP Test Review Sections 6-1 to 6-6
ABC Technology Project
EU market situation for eggs and poultry Management Committee 20 October 2011.
EU Market Situation for Eggs and Poultry Management Committee 21 June 2012.
2 |SharePoint Saturday New York City
Green Eggs and Ham.
VOORBLAD.
Name Convolutional codes Tomashevich Victor. Name- 2 - Introduction Convolutional codes map information to code bits sequentially by convolving a sequence.
Copyright © 2012, Elsevier Inc. All rights Reserved. 1 Chapter 7 Modeling Structure with Blocks.
Factor P 16 8(8-5ab) 4(d² + 4) 3rs(2r – s) 15cd(1 + 2cd) 8(4a² + 3b²)
Basel-ICU-Journal Challenge18/20/ Basel-ICU-Journal Challenge8/20/2014.
1..
CONTROL VISION Set-up. Step 1 Step 2 Step 3 Step 5 Step 4.
© 2012 National Heart Foundation of Australia. Slide 2.
Understanding Generalist Practice, 5e, Kirst-Ashman/Hull
25 seconds left…...
Januar MDMDFSSMDMDFSSS
Chapter 10: The Traditional Approach to Design
Analyzing Genes and Genomes
Systems Analysis and Design in a Changing World, Fifth Edition
1 Let’s Recapitulate. 2 Regular Languages DFAs NFAs Regular Expressions Regular Grammars.
We will resume in: 25 Minutes.
©Brooks/Cole, 2001 Chapter 12 Derived Types-- Enumerated, Structure and Union.
Essential Cell Biology
Intracellular Compartments and Transport
PSSA Preparation.
Essential Cell Biology
Sequential PAttern Mining using A Bitmap Representation
1 Chapter 13 Nuclear Magnetic Resonance Spectroscopy.
Energy Generation in Mitochondria and Chlorplasts
1 Decidability continued…. 2 Theorem: For a recursively enumerable language it is undecidable to determine whether is finite Proof: We will reduce the.
Distributed Computing 5. Snapshot Shmuel Zaks ©
The Pumping Lemma for CFL’s
1 Programming Languages (CS 550) Mini Language Interpreter Jeremy R. Johnson.
Specifying circuit properties in PSL. Formal methods Mathematical and logical methods used in system development Aim to increase confidence in riktighet.
Verification Technologies IBM Haifa Labs Formal Specification Using Sugar 2.0 Cindy Eisner September 2002.
March 20, Sugar 2.0 – Proposal Presented to Accellera FVTC Cindy Eisner Joint Work with Dana Fisman IBM Research Laboratory in Haifa.
Presentation transcript:

Sugar 2.0 Formal Specification Language D ana F isman 1,2 Cindy Eisner 1 1 IBM Haifa Research Laboratory 1 IBM Haifa Research Laboratory 2 Weizmann Institute of Science 2 Weizmann Institute of Science

D ana F isman Cindy Eisner 2 Sugar2.0 Sugar 2.0 is a formalism to reason about behavior over time Uses of Sugar: For documentation: easy to read, yet precise specification Input to formal verification tools (model checker, theorem prover) Input to simulation tools (source of automatically generated monitors )

D ana F isman Cindy Eisner 3 Goals (in designing the language) easy easy to learn, read and write mathematically precise rigorously well defined formal syntax and semantics expressive sufficiently expressive permitting the specification of a large class of real world design properties algorithms known efficient underlying algorithms in simulation in model checking (with reasonable complexity)

D ana F isman Cindy Eisner 4 History 1994 Syntactic sugaring of CTL for RuleBase model checker 1995 Addition of regular expressions 1997 Automatic generation of simulation monitors 2001 Move to linear (LTL-based) semantics 2002 Selected by Accellera for IEEE standardization Sugar 1.0 Sugar 2.0

D ana F isman Cindy Eisner 5 Track Record Track Record ( Sugar 1.0) IBM products: Main Frame line (S/390) Mid-range line (AS/400) Workstation line (RS/6000) PC line (Netfinity) Super Computers (ASCI) ASIC/OEM business External licensees University program

D ana F isman Cindy Eisner 6 Structure of Sugar Boolean layer states Used to reason about states of the design Temporal layer behaviortime Used to reason about behavior of the design over time Modeling layer auxiliary Used to model auxiliary state variables and state machines Verification layer Directives Directives to the verification tool:

D ana F isman Cindy Eisner 7 Structure of Sugar Boolean layer states Used to reason about states of the design Temporal layer behaviortime Used to reason about behavior of the design over time Modeling layer auxiliary Used to model auxiliary state variables and state machines Verification layer Directives Directives to the verification tool: Sugar comes in three flavors: Verilog/VHDL/EDL

D ana F isman Cindy Eisner 8 The Temporal Layer Boolean Expressions expressions evaluated over a single state Sugar Extended Regular Expressions (SERE) expressions evaluated over a bounded sequence of states Sugar Foundation Language expressions evaluated over finite or infinite sequence of states Optional Branching Extension (OBE) expression evaluated over infinite trees of states (relevant for formal verification only) s s1s1 s2s2 s3s3 s4s4 s1s1 s2s2 s3s3 s4s4 … s5s5 s6s6 s7s7

D ana F isman Cindy Eisner 9 The Temporal Layer Boolean Expressions Sugar Extended Regular Expressions (SERE) expressions evaluated over a bounded sequence of states Sugar Foundation Language expressions evaluated over finite or infinite sequence of states Optional Branching Extension (OBE) expression evaluated over infinite trees of states (relevant for formal verification only) s s1s1 s2s2 s3s3 s4s4 s1s1 s2s2 s3s3 s4s4 … s5s5 s6s6 s7s7

D ana F isman Cindy Eisner 10 The Temporal Layer Boolean Expressions Sugar Extended Regular Expressions (SERE) expressions evaluated over a bounded sequence of states Sugar Foundation Language expressions evaluated over finite or infinite sequence of states Optional Branching Extension (OBE) expression evaluated over infinite trees of states (relevant for formal verification only) s s1s1 s2s2 s3s3 s4s4 s1s1 s2s2 s3s3 s4s4 … s5s5 s6s6 s7s7

D ana F isman Cindy Eisner 11 The Temporal Layer Boolean Expressions Sugar Extended Regular Expressions (SERE) expressions evaluated over a bounded sequence of states Sugar Foundation Language expressions evaluated over finite or infinite sequence of states Optional Branching Extension (OBE) expression evaluated over infinite trees of states (relevant for formal verification only) s s1s1 s2s2 s3s3 s4s4 s1s1 s2s2 s3s3 s4s4 … s5s5 s6s6 s7s7 … … … … …

D ana F isman Cindy Eisner 12 The Temporal Layer Boolean Expressions Sugar Extended Regular Expressions (SERE) Sugar Foundation Language Optional Branching Extension (OBE) s s1s1 s2s2 s3s3 s4s4 s1s1 s2s2 s3s3 s4s4 … s5s5 s6s6 s7s7 … … … … … Building Blocks (atoms) Properties

D ana F isman Cindy Eisner 13 The Temporal Layer Boolean Expressions Sugar Extended Regular Expressions (SERE) Sugar Foundation Language atoms are Booleans Temporal formulas where the atoms are Booleans atoms are SEREs Temporal formulas where the atoms are SEREs atoms are Booleans and/or SEREs Temporal formulas where the atoms are Booleans and/or SEREs Optional Branching Extension (OBE) Building Blocks (atoms) Properties

D ana F isman Cindy Eisner 14 SEREs – Example1 A SERE describes a set of sequences of states (which we represent using timing diagrams) This diagram is described by the SERE

D ana F isman Cindy Eisner 15 SEREs – Example1 This diagram is also described by the SERE

D ana F isman Cindy Eisner 16 SEREs – Example1 expressions evaluated over a bounded sequence of states expressions evaluated over a bounded sequence of states If we want to describe only this diagram we have to change the SERE

D ana F isman Cindy Eisner 17 2SEREs – Example expressions evaluated over a bounded sequence of states expressions evaluated over a bounded sequence of states

D ana F isman Cindy Eisner 18 2SEREs – Example expressions evaluated over a bounded sequence of states expressions evaluated over a bounded sequence of states signal holds 4 times

D ana F isman Cindy Eisner 19 3SEREs – Example expressions evaluated over a bounded sequence of states expressions evaluated over a bounded sequence of states signal holds any number of times between 3 to 5 signal holds any number of times

D ana F isman Cindy Eisner 20 Examples Until now we saw examples for SEREs, which are not properties on their own, but rather building blocks of properties We will now see examples of properties composed from the SERE building blocks

D ana F isman Cindy Eisner 21 Examples – Properties suffix implication The suffix implication operator if starting now if the path starting now matches then continuation then its continuation should match

D ana F isman Cindy Eisner 22 Properties – Example1 if then But the property makes a requirement only for that holds at the very first cycle Add to the beginning of the first SERE

D ana F isman Cindy Eisner 23 Properties – Example1 Now the property makes a requirement for every no matter the cycles where it holds Note that the requirement is made for more than one (the first) if then

D ana F isman Cindy Eisner 24 Properties – Example1 if then if then Overlapping is also possible!

D ana F isman Cindy Eisner 25 Properties – Example1 if then if then

D ana F isman Cindy Eisner 26 Properties – Example2 if then But what if data does not hold in contiguous cycles? Use instead of

D ana F isman Cindy Eisner 27 Properties – Example2 if then But what if the signals are only sampled when holds? Apply to the entire property

D ana F isman Cindy Eisner 28 Properties – Example2 if then Now the property is evaluated only on the cycles where the holds

D ana F isman Cindy Eisner 29 Properties – Example2 if then

D ana F isman Cindy Eisner Properties – Example2 if then 2

D ana F isman Cindy Eisner 31 Expressiveness Theory At least as expressive as LTL CTL regular expressionsPractice All properties suggested by FVTC of Accellera are concisely and intuitively expressible in Sugar

D ana F isman Cindy Eisner 32 Implementation Sugar has a core of operators which determine its expressive power Other operators are syntactic sugaring (abbreviations) of the core operators A tool needs to implement Only the core operators Macro expansion of the syntactic sugaring operators

D ana F isman Cindy Eisner 33 Implementation (of the core) SugarLTL CTLstate machines Any Sugar property can be reduced to an LTL or CTL property using auxiliary state machines. CTLLTL CTL and LTL have known model checking algorithms. on-the-fly simple transformation rules state machine For simulation we consider the subset that can be verified on-the-fly. For this subset there are simple transformation rules that transform the formula to a state machine describing all possible counter examples.

D ana F isman Cindy Eisner 34 Sugar Home Page More information available on the sugar home page at: Complete definition Tutorial Sugar parser Formal syntax and semantics More …