ACSD Conference, Augsburg, Summer 2009 1 Flat Arbiters Andrey Mokhov 1, Victor Khomenko 2, Alex Yakovlev 1 1 School of Electrical, Electronic and Computer.

Slides:



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

Copyright 2000 Cadence Design Systems. Permission is granted to reproduce without modification. Introduction An overview of formal methods for hardware.
Andrey Mokhov, Victor Khomenko Danil Sokolov, Alex Yakovlev Dual-Rail Control Logic for Enhanced Circuit Robustness.
A university for the world real R © 2009, Chapter 3 Advanced Synchronization Moe Wynn Wil van der Aalst Arthur ter Hofstede.
Selinger Optimizer Lecture 10 October 15, 2009 Sam Madden.
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.
6.830 Lecture 10 Query Optimization 10/6/2014. Selinger Optimizer Algorithm algorithm: compute optimal way to generate every sub-join: size 1, size 2,...
Lecture 10 Query Optimization II Automatic Database Design.
6.830 Lecture 11 Query Optimization & Automatic Database Design 10/8/2014.
Reduction of Interpolants for Logic Synthesis John Backes Marc Riedel University of Minnesota Dept.
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.
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.
Computer Science Lecture 12, page 1 CS677: Distributed OS Last Class Distributed Snapshots –Termination detection Election algorithms –Bully –Ring.
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.
Introduction to asynchronous circuit design: specification and synthesis Part II: Synthesis of control circuits from STGs.
Exploiting Symmetry in SAT-Based Boolean Matching for Heterogeneous FPGA Technology Mapping Yu Hu 1, Victor Shih 2, Rupak Majumdar 2 and Lei He 1 1 Electrical.
1 Logic synthesis from concurrent specifications Jordi Cortadella Universitat Politecnica de Catalunya Barcelona, Spain In collaboration with M. Kishinevsky,
1 BDS: A BDD-Based Logic Optimization System “BDS: A BDD-Based Logic Optimization System”, by Congguang Yang and Maciej Ciesielski, 2000 By Chang Seok.
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.
ASYNC 2000 Eilat April Priority Arbiters Alex Bystrov David Kinniment Alex Yakovlev University of Newcastle upon Tyne, UK.
Synthesis of Asynchronous Control Circuits with Automatically Generated Relative Timing Assumptions Jordi Cortadella, University Politècnica de Catalunya.
A forest of trees even with modest numbers of tip species, the number of possible trees is frightening. Fitch W.M Syst. Zool. 20:
A Framework for Object-Based Event Composition in Distributed Systems Peter Pietzuch and Brian Shand June 2002.
1 A Case for Using Signal Transition Graphs for Analysing and Refining Genetic Networks Richard Banks, Victor Khomenko and Jason Steggles School of Computing.
Automatic synthesis and verification of asynchronous interface controllers Jordi CortadellaUniversitat Politècnica de Catalunya, Spain Michael KishinevskyIntel.
Logic Synthesis 3 1 Logic Synthesis Part III Maciej Ciesielski Univ. of Massachusetts Amherst, MA.
Derivation of Monotonic Covers for Standard C Implementation Using STG Unfoldings Victor Khomenko.
Chapter 9: Graphs Basic Concepts
Computer Science Lecture 12, page 1 CS677: Distributed OS Last Class Vector timestamps Global state –Distributed Snapshot Election algorithms.
1 Section 7.1 Relations and their properties. 2 Binary relation A binary relation is a set of ordered pairs that expresses a relationship between elements.
Combinations & Permutations. Essentials: Permutations & Combinations (So that’s how we determine the number of possible samples!) Definitions: Permutation;
UK Asynchronous Forum, September Synthesis of multiple rail phase encoding circuits Andrey Mokhov, Crescenzo D’Alessandro, Alex Yakovlev Microelectronics.
Budapest University of Technology and Economics Department of Telecommunications and Media Informatics Optimized QoS Protection of Ethernet Trees Tibor.
Computer Science Lecture 12, page 1 CS677: Distributed OS Last Class Vector timestamps Global state –Distributed Snapshot Election algorithms –Bully algorithm.
On Reducing the Global State Graph for Verification of Distributed Computations Vijay K. Garg, Arindam Chakraborty Parallel and Distributed Systems Laboratory.
Lyra – A service-oriented and component-based method for the development of communicating systems (by Sari Leppänen, Nokia/NRC) Traditionally, the design,
Engineering Mechanics: Statics
Phrase-structure grammar A phrase-structure grammar is a quadruple G = (V, T, P, S) where V is a finite set of symbols called nonterminals, T is a set.
Computer Science and Engineering Parallelizing Defect Detection and Categorization Using FREERIDE Leonid Glimcher P. 1 ipdps’05 Scaling and Parallelizing.
Proportions and Similar Triangles
Properties of Inverse Matrices King Saud University.
Bc. Jozef Lang (xlangj01) Bc. Zoltán Zemko (xzemko01) Increasing power of LL(k) parsers.
Geometry: Plane Figures Chapter. point A point marks a location. A A B B line segment the part of the line between 2 points endpoints.
Counting Techniques Tree Diagram Multiplication Rule Permutations Combinations.
Ordering of Events in Distributed Systems UNIVERSITY of WISCONSIN-MADISON Computer Sciences Department CS 739 Distributed Systems Andrea C. Arpaci-Dusseau.
CS3771 Today: Distributed Coordination  Previous class: Distributed File Systems Issues: Naming Strategies: Absolute Names, Mount Points (logical connection.
WAITX: An Arbiter for Non-Persistent Signals
A Framework for Object-Based Event Composition in Distributed Systems
Aim: Full House Grid: 9 Grid Play: Calculate answer & cross it off
Combinations COURSE 3 LESSON 11-3
Combinations & Permutations
Make an Organized List and Simulate a Problem
Ms. Vazquez-Perez Geometry
Chapter 9: Graphs Basic Concepts
Running example The 4-houses puzzle:
Combinations & Permutations
1.1 ID Points, Lines, Planes Mrs. vazquez Geometry.
Synchronization (2) – Mutual Exclusion
Md. Tanveer Anwar University of Arkansas
Synthesis of multiple rail phase encoding circuits
Vectors (2).
Predictability Verification with Petri Net Unfoldings
Chapter 9: Graphs Basic Concepts
Presentation transcript:

ACSD Conference, Augsburg, Summer Flat Arbiters Andrey Mokhov 1, Victor Khomenko 2, Alex Yakovlev 1 1 School of Electrical, Electronic and Computer Engineering 2 School of Computing Science Newcastle University {andrey.mokhov, victor.khomenko, ncl.ac.uk

ACSD Conference, Augsburg, Summer Outline  N-way arbiters Flat arbitration 3-way flat arbiter General solution Conclusions Outline

ACSD Conference, Augsburg, Summer N-way arbiters

ACSD Conference, Augsburg, Summer N-way arbiters STG specifications: standard vs. early protocols At most one grant can be high at any moment of time Standard protocol The next grant can be issued as soon as the previous request is removed Early protocol

ACSD Conference, Augsburg, Summer N-way arbiters 2-way Mutual-Exclusion (ME) element r 1 +, r 2 +, g 1 +, r 2 - More complex protocol than a 2-way arbiter, permitting trace

ACSD Conference, Augsburg, Summer N-way arbiters Solutions review Locking arbiters –Concurrent arbitration –Timing assumptions  –Limited information (only winner is detected)  Token ring arbiters –Concurrent arbitration, high scalability –Latency  –Unordered client service  Balanced tree of 2-way arbiters –Simplicity –Sequential arbitration  (but see [Josephs, Yantchev 1996]) –Limited information (only winner is detected)  Flat arbiters –Concurrent arbitration, speed-independent –Complicated, not practical for large values of N  –Complete information on the order of requests 

ACSD Conference, Augsburg, Summer Outline N-way arbiters  Flat arbitration 3-way flat arbiter General solution Conclusions Outline

ACSD Conference, Augsburg, Summer Flat arbitration The ME elements structure is flat (all pairwise arbitrations are performed concurrently) The decision logic does not contain ME elements and hence has bounded latency

ACSD Conference, Augsburg, Summer Flat arbitration Matrix of ME elements detects complete information on order of the received requests (arbitration matrix). Decision logic is speed-independent and has bounded latency. It decides which grant to issue according to the arbitration matrix. Composition of environment STG, ME element STGs, and decision logic STG is a deadlock free, speed-independent STG (formally verified in framework).

ACSD Conference, Augsburg, Summer Outline N-way arbiters Flat arbitration  3-way flat arbiter General solution Conclusions Outline

ACSD Conference, Augsburg, Summer way flat arbiter

ACSD Conference, Augsburg, Summer way flat arbiter (implementation with deadlocks) 3-way flat arbiter 2 deadlock traces: 1) ra+, rb+, rc+, ab+, bc+, ca+ 2) ra+, rb+, rc+, ba+, ac+, cb A CB

ACSD Conference, Augsburg, Summer STG specification (with deadlocks) 3-way flat arbiter

ACSD Conference, Augsburg, Summer STG specification (deadlocks resolved) 3-way flat arbiter ME elements are used in a non- standard way! ra+ rb+ rc+ ab+ bc+ ca+ ga+ ra−

ACSD Conference, Augsburg, Summer gC implementation 3-way flat arbiter

ACSD Conference, Augsburg, Summer STG-driven approach limitations Flat arbitration STG is large and complicated if N>3 The number of deadlocks grows extremely fast: –2 for N=3 –40 for N=4 –904 for N=5 –32048 for N=6 Logic decomposition is required for N>3

ACSD Conference, Augsburg, Summer Outline General solution Flat arbitration 3-way flat arbiter study  General solution Conclusions Outline

ACSD Conference, Augsburg, Summer Basic notions General solution Arbitration matrix: Boolean N x N matrix with A[i][j]=1 iff request[i] won arbitration with request[j] Request[k] is observable in A iff it has at least one win A is stable w.r.t. request[k] iff all the arbitrations in which it participates have completed A is stable iff it is stable w.r.t. all the observable requests A may contain cycles leading to deadlocks

ACSD Conference, Augsburg, Summer Acyclic arbitration matrix B Request[k] is dominated (denoted dom[k]) iff it has lost an arbitration with some smaller request[j] (j<k) Request[k] is non-dominated (denoted ndom[k]) iff it has won all the arbitrations with smaller requests Arbirtration martix B is defined as: Matrix B properties: –B can obtained from A by reversing some of the arbitration results –B is acyclic; if A is stable then B has a winner –The winner is observable in A, and A is stable w.r.t. it General solution

ACSD Conference, Augsburg, Summer Top-level view of generic N-way flat arbiter General solution A B

ACSD Conference, Augsburg, Summer way decomposed solution (general approach) General solution

ACSD Conference, Augsburg, Summer way flat arbiter (gC-implementation) General solution [ga↑] = ab (ac + ca bc) (ad + da (bd + cd)) [ga↓] = ab’ ac’ ad’ [gb↑] = ba (bc + cb ac) (bd + db (ad + cd)) [gb↓] = ba’ bc’ bd’ [gc↑] = ca cb (cd + dc (ad + bd)) [gc↓] = ca’ cb’ cd’ [gd↑] = da db dc [gd↓] = da’ db’ dc’ In general, the height of the transistor stack is: (2N-3) in the set network (N-1) in the reset network

ACSD Conference, Augsburg, Summer Outline General solution Flat arbitration 3-way flat arbiter study General solution  Conclusions Outline

ACSD Conference, Augsburg, Summer Conclusions The work presents a new type of arbiters –Work with global information about pairwise arbitrations –All the ME elements work in parallel –Use ME elements in a non-standard way Practical circuits for 3-way case, theoretical polynomial-size construction for general case All the provided solutions are formally proven to be deadlock-free and speed-independent The developed framework allows for other decision policies (e.g. when up to m < N requests can be granted) Future work –Further optimisation of N-way flat arbiters –Investigation of opportunities opened by flat arbitration scheme (possibility to generate total order of the received events)

ACSD Conference, Augsburg, Summer Thank you! Questions?