Behavioural synthesis of asynchronous controllers: a case study with a self-timed communication channel Alex Yakovlev, Frank Burns, Alex Bystrov, Albert.

Slides:



Advertisements
Similar presentations
Copyright 2000 Cadence Design Systems. Permission is granted to reproduce without modification. Introduction An overview of formal methods for hardware.
Advertisements

Embedded System, A Brief Introduction
Andrey Mokhov, Victor Khomenko Danil Sokolov, Alex Yakovlev Dual-Rail Control Logic for Enhanced Circuit Robustness.
Reading1: An Introduction to Asynchronous Circuit Design Al Davis Steve Nowick University of Utah Columbia University.
Logic Synthesis – 3 Optimization Ahmed Hemani Sources: Synopsys Documentation.
1 BalsaOpt a tool for Balsa Synthesis Francisco Fernández-Nogueira, UPC (Spain) Josep Carmona, UPC (Spain)
Southampton: Oct 99AMULET3i - 1 AMULET3i - asynchronous SoC Steve Furber - n Agenda: AMULET3i Design tools Future problems.
Delay/Phase Regeneration Circuits Crescenzo D’Alessandro, Andrey Mokhov, Alex Bystrov, Alex Yakovlev Microelectronics Systems Design Group School of EECE.
1 Advanced Digital Design Synthesis of Control Circuits by A. Steininger and J. Lechner Vienna University of Technology.
Background information Formal verification methods based on theorem proving techniques and model­checking –to prove the absence of errors (in the formal.
Hazard-free logic synthesis and technology mapping I Jordi Cortadella Michael Kishinevsky Alex Kondratyev Luciano Lavagno Alex Yakovlev Univ. Politècnica.
1 Asynchronous Bit-stream Compression (ABC) IEEE 2006 ABC Asynchronous Bit-stream Compression Arkadiy Morgenshtein, Avinoam Kolodny, Ran Ginosar Technion.
Hardware and Petri nets Synthesis of asynchronous circuits from Signal Transition Graphs.
Direct synthesis of large-scale asynchronous controllers using a Petri-net-based approach Ivan BlunnoPolitecnico di Torino Alex BystrovUniv. Newcastle.
© Ran Ginosar Lecture 3: Handshake Ckt Implementations 1 VLSI Architectures Lecture 3 S&F Ch. 5: Handshake Ckt Implementations.
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.
1 Clockless Logic Montek Singh Thu, Jan 13, 2004.
Introduction to asynchronous circuit design: specification and synthesis Part IV: Synthesis from HDL Other synthesis paradigms.
Introduction to asynchronous circuit design: specification and synthesis Part III: Advanced topics on synthesis of control circuits from STGs.
RESYN'09 March 2009 Newcastle upon Tyne 1 Workcraft – a Framework for Interpreted Graph Models Ivan Poliakov, Arseniy Alekseyev, Victor Khomenko, Alex.
COMP Clockless Logic and Silicon Compilers Lecture 3
Is the die cast for the token game? Alex Yakovlev, Frank Burns, Alex Bystrov, Delong Shang, Danil Sokolov University of Newcastle upon Tyne ICATPN’02 –
Combining Decomposition and Unfolding for STG Synthesis (application paper) Victor Khomenko 1 and Mark Schaefer 2 1 School of Computing Science, Newcastle.
ECE Synthesis & Verification1 ECE 667 Spring 2011 Synthesis and Verification of Digital Systems Verification Introduction.
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.
Visualisation and Resolution of Coding Conflicts in Asynchronous Circuit Design A. Madalinski, V. Khomenko, A. Bystrov and A. Yakovlev University of Newcastle.
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.
ASYNC 2000 Eilat April Priority Arbiters Alex Bystrov David Kinniment Alex Yakovlev University of Newcastle upon Tyne, UK.
Lab for Reliable Computing Generalized Latency-Insensitive Systems for Single-Clock and Multi-Clock Architectures Singh, M.; Theobald, M.; Design, Automation.
Modeling and the simulator of Digital Circuits in Object-Oriented Programming Stefan Senczyna Department of Fundamentals of Technical Systems The Silesian.
1 State Encoding of Large Asynchronous Controllers Josep Carmona and Jordi Cortadella Universitat Politècnica de Catalunya Barcelona, Spain.
Advanced Tutorial on Hardware Design and Petri nets Jordi CortadellaUniv. Politècnica de Catalunya Luciano LavagnoUniversità di Udine Alex YakovlevUniv.
1 A Case for Using Signal Transition Graphs for Analysing and Refining Genetic Networks Richard Banks, Victor Khomenko and Jason Steggles School of Computing.
01/27/2005 Combinationality of cyclic definitions EECS 290A – Spring 2005 UC Berkeley.
Automatic synthesis and verification of asynchronous interface controllers Jordi CortadellaUniversitat Politècnica de Catalunya, Spain Michael KishinevskyIntel.
Asynchronous Circuit Verification and Synthesis with Petri Nets J. Cortadella Universitat Politècnica de Catalunya, Barcelona Thanks to: Michael Kishinevsky.
Lecture 11 MOUSETRAP: Ultra-High-Speed Transition-Signaling Asynchronous Pipelines.
Automated synthesis of micro-pipelines from behavioral Verilog HDL Ivan BlunnoPolitecnico di Torino Luciano LavagnoUniversità di Udine.
A Mystery Esterel –small no type inference, subtyping, … no recursion, functions, … no pointers, malloc, GC, … no complex data structures, libraries,
02/06/05 “Investigating a Finite–State Machine Notation for Discrete–Event Systems” Nikolay Stoimenov.
Advanced Digital Design Asynchronous EDA by A. Steininger, J. Lechner and R. Najvirt Vienna University of Technology.
Requirements Expression and Modelling
1 VERILOG Fundamentals Workshop סמסטר א ' תשע " ה מרצה : משה דורון הפקולטה להנדסה Workshop Objectives: Gain basic understanding of the essential concepts.
A Usable Reachability Analyser Victor Khomenko Newcastle University.
Speaking Bluntly about SharpHDL: Some Old Stuff and Some Other Proposed Future Extensions Gordon J. Pace & Christine Vella Synchron’05 Malta, November.
UK Asynchronous Forum, September Synthesis of multiple rail phase encoding circuits Andrey Mokhov, Crescenzo D’Alessandro, Alex Yakovlev Microelectronics.
ASIC/FPGA design flow. FPGA Design Flow Detailed (RTL) Design Detailed (RTL) Design Ideas (Specifications) Design Ideas (Specifications) Device Programming.
ICCD Conversion Driven Design of Binary to Mixed Radix Circuits Ashur Rafiev, Julian Murphy, Danil Sokolov, Alex Yakovlev School of EECE, Newcastle.
High-Level Interconnect Architectures for FPGAs Nick Barrow-Williams.
1 H ardware D escription L anguages Modeling Digital Systems.
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.
ECE-C662 Lecture 2 Prawat Nagvajara
Equivalence checking Prof Shobha Vasudevan ECE 598SV.
Compositional Verification for System-on-Chip Designs SRC Student Symposium Paper 16.5 Nishant Sinha Edmund Clarke Carnegie Mellon University.
Formal Verification of Clock Domain Crossing Using Gate-level Models of Metastable Flip-Flops Ghaith Tarawneh, Andrey Mokhov and Alex Yakovlev Newcastle.
Specification mining for asynchronous controllers Javier de San Pedro† Thomas Bourgeat ‡ Jordi Cortadella† † Universitat Politecnica de Catalunya ‡ Massachusetts.
Victor Khomenko Newcastle University
Synthesis from HDL Other synthesis paradigms
Asynchronous Interface Specification, Analysis and Synthesis
Synthesis of Speed Independent Circuits Based on Decomposition
Part IV: Synthesis from HDL Other synthesis paradigms
ECE-C662 Introduction to Behavioral Synthesis Knapp Text Ch
Synthesis of asynchronous controllers from Signal Transition Graphs:
Chapter 3 – Combinational Logic Design
Clockless Logic: Asynchronous Pipelines
Synthesis of multiple rail phase encoding circuits
Presentation transcript:

Behavioural synthesis of asynchronous controllers: a case study with a self-timed communication channel Alex Yakovlev, Frank Burns, Alex Bystrov, Albert Koelmans, Delong Shang University of Newcastle upon Tyne Rene Krenz Royal Institute of Technology, Stockholm ACiD-WG Workshop, München, Jan.2002

Outline  Motivation Design flow Two-level behavioural synthesis Direct translation from LPNs and STGs Communication channel case study –Specification, verification, controller synthesis, optimisation and performance Conclusion

Motivation Complex asynchronous controllers still cannot be designed fully automatically Existing logic synthesis tools (cf. Petrify and Minimalist) can only cope with small- scale low level designs (state-space explosion, limited optimisation heuristics) Logic synthesis produces circuits whose structure does not correspond to their behaviour structure (bad for analysis and testing) Syntax-direct translation techniques may be a way forward but applied at what level?

Motivation Applying directly at front-end (cf. Tangram) guarantees design productivity but may produce slow circuits (control flow is driven by program syntax, not by natural operation sequencing) Ideally, front-end (HDLs) needs efficient simulation support and flexible and rigorous interface with behavioural back-end (labelled Petri nets, STGs) used for synthesis The back-end must support compositionality and hierarchy (of HDLs) but offer sequencing paradigms (causality and concurrency) for high performance Optimisations can be applied to back-end models Direct translation of LPNs and STGs helps structural transparency between specification and implementation

Motivation Implications to new research targets on: –Translation between HDLs and LPNs, FSMs, STGs, particularly formal underpinning of semantic links between front-end and back-end formats –New composition and decomposition techniques (incl. various forms of refinement and transformations) applied to LPNs/STGs/FSMs –New circuit mapping and optimisation techniques for different types of models (under various delay- dependence or relative time assumptions and different signalling schemes) –Combination of direct mapping with logic synthesis (eg. circuits with predictable latency)

Design flow Control/data splitting Hierarchical control spec HDL specification Datapath spec LPN to circuit synthesis (direct mapping) HDL implementation Data logic synthesis Control&data interfacing Hierarchical control logic STG to circuit synthesis (Petrify & direct mapping) LPN STG Data logic Our present focus

Design flow What is now being developed at Newcastle? translation from ‘subset VHDL’ (and other languages) to LPNs and STGs direct synthesis from LPNs and STGs combined direct and logic (Petrify) synthesis optimisation at LPN/STG level (eg. for low latency)

HDL syntax directed mapping do if (X=A) then par OP1; OP2; rap else seq OP3; OP4; qes if od do par seq OP2 OP1 OP3 OP4 (X=A) if then else Control flow is transferred between HDL syntax constructs rather than between operations

Two-level behavioural synthesis do if (X=A) then par OP1; OP2; rap else seq OP3; OP4; qes if od (X=A) (X<>A) OP1 OP2 OP3 OP4 dum High level control: Labelled Petri net (LPN)

Two-level behavioural synthesis Data path 1 OP1r OP3r OP1a OP4r OP3a OP4a req1 ack1 Data path 2 OP2r OP2a ack2req2 OP1r OP1a OP3r OP3a OP4r OP4a req1 ack1 dum OP2r+ req2+ ack2+ OP2a+ req2- OP2r- OP2a+ ack2- Low level control: Signal Transition Graphs (STG)

Two-level behavioural synthesis (X=A) (X<>A) OP1 OP2 OP3 OP4 dum DC1 DC2 DC3 DC4 DC5 High-level control logic directly mapped from LPN Basic David cell (DC)

Direct mapping of LPNs and STGs to David Cell netlist p1p2 Operation Controlled p2 (0)(1) p1 (1)(0) 1* (1) To Operation Operation can be interpreted as access to datapath (LPN) or as switching a binary (input or output) signal (STG)

Direct mapping of LPNs and STGs LPN-to-DC mapping elements linear join fork controlled choice arbitrated choice merge input test Gate-level DC implementations

Communication channel example A duplex delay-insensitive channel for low power and pin-efficiency proposed by Steve Furber (AINT’2002) Relatively simple data path (with handshake access via push and pull protocols) Sophisticated control (involves arbitration, choice and concurrency) Natural two-level control decomposition Requires low-latency (existing STG and BM solutions produce too heavy logic)

Channel Structure MasterSlave N-of-M code N-of-M codes: dual-rail, 3-of-6,2-of-7 Key Protocol Symbols (e.g. in dual rail): Start (01), Ack (10), Slave-Ack (11), Data (01 or 10)

Protocol Specification Master Slave Protocol Automaton The protocol can be defined on an imaginary Protocol Automaton receiving symbols from both sides (it will hide all activity internal to Master and Slave)

Protocol Specification Master Slave Protocol Automaton

Protocol Refined (for Dual Rail encoding)

Protocol Verification Master Slave Properties to be verified: absence of deadlock and delay-insensitivity (w.r.t. delays in the channel wires) m01m m10m s01s m01s m10s s10s s10m s01m

Protocol Verification Petri net model of the protocol for verification Fragment of the master subnet for verification These places must be 1-safe to have freedom from communication interference (delay-insensitivity)

Protocol Verification The Petri net unfolding prefix was constructed by tool PUNT and checked: There are no deadlocks The net is 1-safe w.r.t. channel places (which proves delay-insensitivity)

Controller Overview push pull High Level control Data path and low level control push

Low-level logic Tx controller Sending interface

LPN model for high level control (master) Calls to local arbiters Slave-Ack pull Three-way pulls Three-way pushes pushes pulls dummies inserted for direct DC mapping

High level control (master) mapped directly from LPN arbiter1 arbiter2 push pull dummies pull push pull

Towards synthesis for higher performance dummy pull push pull Is the dummy in the right place? It is on the cycle of (output) push and (input) pull: pull->dummy->push- >pull-dummy->push -> …

Towards synthesis for higher performance pull push Critical path Non-critical path Synthesis rule: Don’t insert dummies on critical paths dummy

Synthesis for lower I/O latency LPN level pull logic Environment (channel) pullpush internal actions pull High-level control … … push logic input output input … pull logic Low latency shortcut

Channel Cycle Time Controller Implementation Simplex modeDuplex mode Direct mapping from LPN 7.6 ns8.3 ns Logic synthesis from STG 12.7 ns16.5 ns These results were obtained for 0.6 micro CMOS Further improvement can be achieved by more use of low latency techniques (at the gate level) and introducing aggressive relative timing, in David cells and low level logic

Conclusion Hierarchical (eg. Protocol) controller synthesis can go via back-end LPN/STG models Direct mapping from LPNs/STGs yields fast circuits that are easy to analyse and test Translation from PNs to David cell netlists implemented in tool pn2dc Translation from FSM VHDL specs to LPNs and STGs implemented in tools fsm2lpn and fsm2stg Further work needed on: Formal link between HDLs and PNs (semantics and equivalence), leading to better synthesis of PNs from HDLs Optimisation techniques at LPN/STG and circuit levels See our papers in Async’02 and 11 th UK Async Forum