Specification mining for asynchronous controllers Javier de San Pedro† Thomas Bourgeat ‡ Jordi Cortadella† † Universitat Politecnica de Catalunya ‡ Massachusetts.

Slides:



Advertisements
Similar presentations
Delay models (I) A B C Real (analog) behaviorAbstract behavior A B C Abstractions are necessary to define delay models manageable for design, synthesis.
Advertisements

Hierarchical Floorplanning of Chip Multiprocessors using Subgraph Discovery Javier de San Pedro Jordi Cortadella Antoni Roca Universitat Politècnica de.
Based on: Petri Nets and Industrial Applications: A Tutorial
Reading1: An Introduction to Asynchronous Circuit Design Al Davis Steve Nowick University of Utah Columbia University.
26 September 2003U. Buy -- SEES 2003 Sidestepping verification complexity with supervisory control Ugo Buy Department of Computer Science Houshang Darabi.
1 BalsaOpt a tool for Balsa Synthesis Francisco Fernández-Nogueira, UPC (Spain) Josep Carmona, UPC (Spain)
Self-Timed Systems Timing complexity growing in digital design -Wiring delays can dominate timing analysis (increasing interdependence between logical.
Computer Architecture CS 215
1 Advanced Digital Design Synthesis of Control Circuits by A. Steininger and J. Lechner Vienna University of Technology.
Jordi Cortadella, Universitat Politecnica de Catalunya, Barcelona Mike Kishinevsky, Intel Corp., Strategic CAD Labs, Hillsboro.
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.
Logic Synthesis for Asynchronous Circuits Based on Petri Net Unfoldings and Incremental SAT Victor Khomenko, Maciej Koutny, and Alex Yakovlev University.
Hardware and Petri nets: application to asynchronous circuit design Jordi CortadellaUniversitat Politècnica de Catalunya, Spain Michael KishinevskyIntel.
Formal Verification of Safety Properties in Timed Circuits Marco A. Peña (Univ. Politècnica de Catalunya) Jordi Cortadella (Univ. Politècnica de Catalunya)
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 6 –Selected Design Topics Part 3 – Asynchronous.
© Ran GinosarAsynchronous Design and Synchronization 1 VLSI Architectures Lecture 2: Theoretical Aspects (S&F 2.5) Data Flow Structures.
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.
RESYN'09 March 2009 Newcastle upon Tyne 1 Workcraft – a Framework for Interpreted Graph Models Ivan Poliakov, Arseniy Alekseyev, Victor Khomenko, Alex.
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.
Combining Decomposition and Unfolding for STG Synthesis (application paper) Victor Khomenko 1 and Mark Schaefer 2 1 School of Computing Science, Newcastle.
TH EDA NTHU-CS VLSI/CAD LAB 1 Re-synthesis for Reliability Design Shih-Chieh Chang Department of Computer Science National Tsing Hua University.
1 Logic synthesis from concurrent specifications Jordi Cortadella Universitat Politecnica de Catalunya Barcelona, Spain In collaboration with M. Kishinevsky,
1 Clockless Logic Prof. Montek Singh Feb. 3, 2004.
Asynchronous Interface Specification, Analysis and Synthesis M. Kishinevsky Intel Corporation J. Cortadella Technical University of Catalonia.
1 Logic design of asynchronous circuits Part III: Advanced topics on synthesis.
Jordi Cortadella, Universitat Politècnica de Catalunya, Spain
Visualisation and Resolution of Coding Conflicts in Asynchronous Circuit Design A. Madalinski, V. Khomenko, A. Bystrov and A. Yakovlev University of Newcastle.
Bridging the gap between asynchronous design and designers Part II: Logic synthesis from concurrent specifications.
Resolution of Encoding Conflicts by Signal Insertion and Concurrency Reduction based on STG Unfoldings V. Khomenko, A. Madalinski and A. Yakovlev University.
STG-based synthesis and Petrify J. Cortadella (Univ. Politècnica Catalunya) Mike Kishinevsky (Intel Corporation) Alex Kondratyev (University of Aizu) Luciano.
Models of Computation for Embedded System Design Alvise Bonivento.
Rajeev K. Ranjan Advanced Technology Group Synopsys Inc. On the Optimization Power of Retiming and Resynthesis Transformations Joint work with: Vigyan.
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.
1 A Case for Using Signal Transition Graphs for Analysing and Refining Genetic Networks Richard Banks, Victor Khomenko and Jason Steggles School of Computing.
Processing Rate Optimization by Sequential System Floorplanning Jia Wang 1, Ping-Chih Wu 2, and Hai Zhou 1 1 Electrical Engineering & Computer Science.
1 Petrify: Method and Tool for Synthesis of Asynchronous Controllers and Interfaces Jordi Cortadella (UPC, Barcelona, Spain), Mike Kishinevsky (Intel Strategic.
Automatic synthesis and verification of asynchronous interface controllers Jordi CortadellaUniversitat Politècnica de Catalunya, Spain Michael KishinevskyIntel.
Constrained Pattern Assignment for Standard Cell Based Triple Patterning Lithography H. Tian, Y. Du, H. Zhang, Z. Xiao, M. D.F. Wong Department of ECE,
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.
Jorge Muñoz-Gama Universitat Politècnica de Catalunya (Barcelona, Spain) Algorithms for Process Conformance and Process Refinement.
Sparse Coding for Specification Mining and Error Localization Runtime Verification September 26, 2012 Wenchao Li, Sanjit A. Seshia University of California.
ICCD Conversion Driven Design of Binary to Mixed Radix Circuits Ashur Rafiev, Julian Murphy, Danil Sokolov, Alex Yakovlev School of EECE, Newcastle.
FORMAL VERIFICATION OF ADVANCED SYNTHESIS OPTIMIZATIONS Anant Kumar Jain Pradish Mathews Mike Mahar.
Correct-by-construction asynchronous implementation of modular synchronous specifications Jacky Potop Benoît Caillaud Albert Benveniste IRISA, France.
Reading1: An Introduction to Asynchronous Circuit Design Al Davis Steve Nowick University of Utah Columbia University.
Curtis A. Nelson 1 Technology Mapping of Timed Circuits Curtis A. Nelson University of Utah September 23, 2002.
CAP 4800/CAP 5805: Computer Simulation Concepts
On the Relation Between Simulation-based and SAT-based Diagnosis CMPE 58Q Giray Kömürcü Boğaziçi University.
CS5270 Lecture 41 Timed Automata I CS 5270 Lecture 4.
Structural methods for synthesis of large specifications
WAITX: An Arbiter for Non-Persistent Signals
Synthesis from HDL Other synthesis paradigms
Asynchronous Interface Specification, Analysis and Synthesis
Synthesis of Speed Independent Circuits Based on Decomposition
Synthesis for Verification
Part IV: Synthesis from HDL Other synthesis paradigms
332:437 Lecture 12 Finite State Machine Design
From C to Elastic Circuits
Andrey Mokhov, Jordi Cortadella, Alessandro de Gennaro
Synthesis of asynchronous controllers from Signal Transition Graphs:
Dynamically Scheduled High-level Synthesis
De-synchronization: from synchronous to asynchronous
Fast Min-Register Retiming Through Binary Max-Flow
Alan Mishchenko Department of EECS UC Berkeley
Presentation transcript:

Specification mining for asynchronous controllers Javier de San Pedro† Thomas Bourgeat ‡ Jordi Cortadella† † Universitat Politecnica de Catalunya ‡ Massachusetts Institute of Technology 1

Specification mining FIFO ctrl FIFO ctrl lr rr lara lr+ la+ lr- la- rr+ ra+ rr- ra- C C lr rr ra la Synthesis Specification mining Specification mining 2 Resynthesis

Outline Overview of specification mining Modeling behavioral properties Mining algorithm Results and conclusions 3

a b x y Background a+ b+ y+ b− x+ y+ x− a− y- a+ x+ y+ y- a− x− b+ b- Signal Transition Graph State Graph Netlist Synthesis Specification Mining 4 (Labeled Transition System - LTS) (Petri Net)

Specifications with properties Mined specifications must satisfy a set of behavioral properties – E.g., only show hazard-free behavior Nothing is known about the environment – Initially assume free (unrestricted) env. – Circuit may exhibit hazards under free env. To ensure the specification satisfies the set of properties… – Circuit behavior cannot be changed  Discover constrained environment where the circuit satisfies all properties 5 Environment Input netlist a b x y Free environment × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × ××× × × Hazard

LTS under free environment Free environment a b x y a+ a− a+ a− x− x+ 6 a x × x+ is not persistent under free environment Free environment × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × ××× × × × x+? Select a subset of input transition arcs that satisfy all behavioral properties Constrained env.

Hazards under free environment 7 Free environment a b x y b+ b− a+ a− b+ b− a+ a− b+ b− a+ a− b+ b− a+ a− b+ b− a+ a− b+ b− a+ a− b+ b− a+a− b+ b− a+ a− y− y+ y− x− x+ x− x+ x− y+ x− x+ Free environment × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × ××× × × × × x+ × × × × × × × × × × ×

Constraining the environment 8 Constrained env. a b x y b− a+ b+ a− y− y+ x+ y+ x− Free environment × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × ××× × × Constrained env. Select a subset of input transition arcs that satisfy all behavioral properties

More than one specification 9 Constrained env. #2 a b x y b− a+ b+ a− y− y+ x− Free environment × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × ××× × × x+ Constrained env. #2 There might more than one environment that satisfies the properties

Overview of mining flow 10 Circuit LTS (free env.) LTS (free env.) LTS snippet 1 (constrained env.) LTS snippet 1 (constrained env.) STG 1 LTS snippet 2 (constrained env.) LTS snippet 2 (constrained env.) STG 2 Properties SI DI interfacing … Free environment × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × × Constrained env. #2 Constrained env. #1

Outline Overview of specification mining Modeling behavioral properties Mining algorithm Results and conclusions 11

Properties Behavioral properties – Speed-independence – Delay-insensitive interfacing – Multiple independent environments – … Properties of the specification model – Marked Graph – Free Choice – …  All properties modeled using SAT 12

Modeling properties using SAT 13 a+ a− a+ x− x+ a−

Causality patterns in LTS 14 x y y y is persistent x y y x triggers y x y y x disables y Conflict/choiceConcurrencyOrder

Behavioral properties Speed-independence (SI) – Insensitive to gate delays – Property: Only inputs can disable inputs Delay insensitive interfacing (DII) – Insensitive to arrival order of input transitions – Property: Inputs cannot trigger other inputs 15 xy x triggers yx disables y Input Violates DII Output Violates SI InputOutputViolates SI OutputInputViolates SI H. Saito, A. Kondratyev, J. Cortadella, L. Lavagno and A. Yakovlev, What is the cost of delay insensitivity? ICCAD 1999

Example: speed-independence For every state, for every pair (x, y) where x input, y output: 16 x y y x disables y x y y y is persistent xy x triggers yx disables y Input Violates DII Output Violates SI InputOutputViolates SI OutputInputViolates SI

Multi-environments 17 Circuit Environment 1 Environment 2 Environment 3 xy x triggers yx disables y Input Violates DII Only if same env. Output Violates SI InputOutputViolates SI OutputInput Only if same env. Violates SI × × FIFO ctrl FIFO ctrl lr rr lara Left environment Right environment ×

Properties of the specification model Enforce specific structural types of STGs – Enhances visualization, computational cost, … Marked graph – Property: No two signals are in conflict Free choice – Property: Signals in conflict must have the same excitation set (see article) 18 E. Best and R. Devillers, Characterization of the state spaces of live and bounded marked graph Petri nets, Language and Automata Theory 2014.

Outline Overview of specification mining Modeling behavioral properties Mining algorithm Results and conclusions 19

SAT model 20 a+ a− a+ x− x+ a−

Mining algorithm: MaxSAT 21 Free environment Constrained env. #2 Constrained env. #1 No single specification may cover all behavior without violating some property E.g., marked graphs  Discover a set of maximal specifications Except those already in previous snippets!

Overview of mining flow 22 Circuit LTS (free env.) LTS (free env.) LTS snippet 1 (constrained env.) LTS snippet 1 (constrained env.) STG 1 LTS snippet 2 (constrained env.) LTS snippet 2 (constrained env.) STG 2 Properties SI DI interfacing … Petrify

Outline Overview of specification mining Modeling behavioral properties Mining algorithm Results and conclusions 23

Case study: 4-phase latch controller 137 possible speed-independent specifications Synthesized with Petrify, then STGs mined assuming: – Speed-independence – Delay insensitive interfacing – Multi-environment (L, R) All mined STGs identical to original ones 24 G. Birtwistle and K. Stevens Modelling mixed 4-phase pipelines: structures and patterns, ASYNC FIFO ctrl FIFO ctrl lr rr lara

Some 4-phase examples 25

Why multi-environment constraint? 26 FIFO ctrl FIFO ctrl lr rr lara Without multi-environments, 2 snippets are obtained Right env. is triggering left env.

Controllers with choice BenchmarkNum. of snippets Gurobi runtime [seconds] Num. of signals in orig. circuit SM-latch RLM bit variable i/o + 2 internal alloc-outbound i/o + 2 internal vmebus i/o + 1 internal A/D converter ctrl tsend-csm-> 1 hour9 i/o + 2 internal 27 For each benchmark one snippet was identical to the original specification

Example: alloc-outbound 28

Resynthesis: 1-bit variable 29 K. v. Berkel. Handshake Circuits: an Asynchronous Architecture for VLSI Programming Cambridge University Press, Spec. mining Resynthesis (Petrify)

Conclusions Specifications can be successfully recovered for several types of controllers Useful for reverse engineering, resynthesis, compositional verification, … Future work: – Heuristics to handle large exploration spaces – Circuits with bounded delays 30

31

BACKUP 32

OLD 33

34 Big LTS template x+ b+ b− a+ a− b+ b− a+ a− b+ b− a+ a− b+ b− a+ a− b+ b− a+ a− b+ b− a+ a− b+ b− a+a− b+ b− a+ a− y− y+ y− x− x+ x− x+ x− y+ x− x+

Snippet 2 35 a+ b+ y+ b− x+ y+ x− a− y- b+ y+ b− y- a+ x+ a− x− a+ x+ y+ a− x− b+ b- b+ y+ b- y- a+ x+ a- x-

LTS under free environment a b x y b+ b− a+ a− b+ b− a+ a− b+ b− a+ a− b+ b− a+ a− b+ b− a+ a− b+ b− a+ a− b+ b− a+ a− b+ b− a+ a− y− y+ 36 y− x− x+ x− x+ x− y+ x− x+ Nothing is known from the environment  Assume free environment All input transitions enabled Reset state Environment Original specification

Constraining environment a b x y b+ b− a+ a− b+ b− a+ a− b+ b− a+ a− b+ b− a+ a− b+ b− a+ a− b+ b− a+ a− b+ b− a+ a− b+ b− a+ a− y− y+ 37 y− x− x+ x− x+ x− y+ x− x+  Speed-independent  Delay-insensitive interfacing Environment Original specification ✓ ✓

Objectives of this work Can we discover a specification of the interface that guarantees a speed-independent behavior of the circuit? 38 a+ b+ y+ b− x+ y+ x− a− Removing input transitions only