Andrey Mokhov, Victor Khomenko Arseniy Alekseyev, Alex Yakovlev Algebra of Parameterised Graphs.

Slides:



Advertisements
Similar presentations
Presented by: Ms. Maria Estrellita D. Hechanova, ECE
Advertisements

Hardware/Software Mechanisms for Cross-Layer Power Proportionality “Power Prop” Alex Yakovlev, Andrey Mokhov, Sascha Romanovsky, Max Rykunov, Alexei Iliasov.
Types of Logic Circuits
CSE 311: Foundations of Computing Fall 2013 Lecture 3: Logic and Boolean algebra.
Chapter 2 Logic Circuits.
Delay/Phase Regeneration Circuits Crescenzo D’Alessandro, Andrey Mokhov, Alex Bystrov, Alex Yakovlev Microelectronics Systems Design Group School of EECE.
The Game of Algebra or The Other Side of Arithmetic The Game of Algebra or The Other Side of Arithmetic © 2007 Herbert I. Gross by Herbert I. Gross & Richard.
Boolean rules for simplification Dr. Ahmed Telba.
Class Presentation on Binary Moment Diagrams by Krishna Chillara Base Paper: “Verification of Arithmetic Circuits using Binary Moment Diagrams” by.
ECE C03 Lecture 21 Lecture 2 Two Level Minimization Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
Boolean Algebra cont’ The digital abstraction Graphs and Topological Sort מבנה המחשב + מבוא למחשבים ספרתיים תרגול 2#
Contemporary Logic Design Two-Level Logic © R.H. Katz Transparency No. 3-1 Chapter #2: Two-Level Combinational Logic Section 2.1, Logic Functions.
Taylor Expansion Diagrams (TED): Verification EC667: Synthesis and Verification of Digital Systems Spring 2011 Presented by: Sudhan.
Boolean Algebra cont’ The digital abstraction מבנה המחשב + מבוא למחשבים ספרתיים תרגול 2#
ENGIN112 L5: Boolean Algebra September 12, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 5 Boolean Algebra.
The Processor Data Path & Control Chapter 5 Part 1 - Introduction and Single Clock Cycle Design N. Guydosh 2/29/04.
Logic Gates Circuits to manipulate 0’s and 1’s. 0’s and 1’s used for numbers Also to make decisions within the computer. In that context, 1 corresponds.
Chapter 2: Boolean Algebra and Logic Functions
1 CHAPTER 4: PART I ARITHMETIC FOR COMPUTERS. 2 The MIPS ALU We’ll be working with the MIPS instruction set architecture –similar to other architectures.
BOOLEAN ALGEBRA Saras M. Srivastava PGT (Computer Science)
Boolean Algebra and Digital Circuits
Logic Design Computer Architecture and Design Lecture 1.
UK Asynchronous Forum, September Synthesis of multiple rail phase encoding circuits Andrey Mokhov, Crescenzo D’Alessandro, Alex Yakovlev Microelectronics.
Computer Organization 1 Logic Gates and Adders. Propositions –Venn Diagrams.
Digital Computer Concept and Practice Copyright ©2012 by Jaejin Lee Logic Circuits I.
Digital Logic. 4 Why is 32-bit or 64-bit significant in terms of speed, efficiency? 4 Difference between OR and XOR 4 What is a mux for? PLA 4 Two kinds.
1 Boolean Algebra & Logic Gates. 2 Objectives Understand the relationship between Boolean logic and digital computer circuits. Learn how to design simple.
Module 4.  Boolean Algebra is used to simplify the design of digital logic circuits.  The design simplification are based on: Postulates of Boolean.
Algebraic Manipulation. Amendments to worksheet  Pg 3 Example 2:  Pg 3 Example 3:
+ CS 325: CS Hardware and Software Organization and Architecture Gates and Boolean Algebra Part 2.
June 2005Computer Architecture, Background and MotivationSlide 1 Part I Background and Motivation.
LOGIC GATES & BOOLEAN ALGEBRA
ECE 301 – Digital Electronics Basic Logic Operations, Boolean Expressions, and Boolean Algebra (Lecture #3)
1 Lecture 6 BOOLEAN ALGEBRA and GATES Building a 32 bit processor PH 3: B.1-B.5.
CSE 311 Foundations of Computing I
A four function ALU A 00 ADD B MUX SUB 11 Result AND OR
Boolean Algebra and Reduction Techniques
Lecture 4 Boolean Algebra. Logical Statements °A proposition that may or may not be true: Today is Monday Today is Sunday It is raining °Compound Statements.
1 Lect # 2 Boolean Algebra and Logic Gates Boolean algebra defines rules for manipulating symbolic binary logic expressions. –a symbolic binary logic expression.
UNIT - 2.  A binary operation on a set combines two elements of the set to produce another element of the set. a*b  G,  a, b  G e.g. +, -, ,  are.
CS/COE0447 Computer Organization & Assembly Language
Appendix C Basics of Digital Logic Part I. Florida A & M University - Department of Computer and Information Sciences Modern Computer Digital electronics.
Computer Architecture Lecture 9 MIPS ALU and Data Paths Ralph Grishman Oct NYU.
2009/6/30 CAV Quantifier Elimination via Functional Composition Jie-Hong Roland Jiang Dept. of Electrical Eng. / Grad. Inst. of Electronics Eng.
Boolean Algebra and Computer Logic Mathematical Structures for Computer Science Chapter 7 Copyright © 2006 W.H. Freeman & Co.MSCS Slides Boolean Logic.
Chapter 3 Boolean Algebra and Digital Logic T103: Computer architecture, logic and information processing.
1 CS/COE0447 Computer Organization & Assembly Language Logic Design Appendix C.
Computer Architecture & Operations I
ECE 301 – Digital Electronics
Morgan Kaufmann Publishers
CS 270: Mathematical Foundations of Computer Science
Chapter 2: Boolean Algebra and Logic Functions
ECE 2110: Introduction to Digital Systems
Morgan Kaufmann Publishers
Speaker: Fuw-Yi Yang 楊伏夷 伏夷非征番, 道德經 察政章(Chapter 58) 伏者潛藏也
Real Numbers, Algebra, and Problem Solving
CSE 311 Foundations of Computing I
A Boolean Paradigm in Multi-Valued Logic Synthesis
Propositional Calculus: Boolean Algebra and Simplification
CSE 370 – Winter Combinational Logic - 1
February 7, 2002 John Wawrzynek
Part I Background and Motivation
1.1 Apply Properties of Real Numbers
Subspaces and Spanning Sets
Dr. Clincy Professor of CS
ECE 352 Digital System Fundamentals
Lecture 4 Logistics Last lecture --- Boolean algebra Today’s lecture
ECE 352 Digital System Fundamentals
Design of Digital Circuits Lab 1 Supplement: Drawing Basic Circuits
Synthesis of multiple rail phase encoding circuits
Presentation transcript:

Andrey Mokhov, Victor Khomenko Arseniy Alekseyev, Alex Yakovlev Algebra of Parameterised Graphs

Motivation Design cost is the greatest threat to the semiconductors roadmap: manufacturing takes weeks, with low uncertainty design takes months or years, with high uncertainty Designer has to explore a large design space, and thus comprehend a huge number of system configurations operational modes behavioural scenarios implementation choices Infeasible to consider each individual mode, need to exploit similarities between the individual modes work with groups of modes rather than individual ones manage the modes and groups of modes compositionally transform/optimise specs in a formal and natural way

Design productivity gap 10000py Annual productivity gain ~20% Annual manufacturing gain >40% 850py “Productivity gap”

? 13 lines 270 stations Individual descriptions

Easier for comprehension and reasoning Gives bigger picture of the system Easier to modify than individual lines Orange Park Overlaid descriptions ?

Characteristics of components a)2-input adder b)3-input adder c)2-input multiplier d)fast 2-input multiplier e)dedicated DP3 unit Design space exploration DP3(x,y)=x 1 y 1 + x 2 y 2 + x 3 y 3

Fastest Design space exploration 2 multipliers Least peak power Dedicated component Balanced

Operations on graphs: overlay G 1 +G 2 + = = +

Operations on graphs: sequence G 1  G 2 = =  

Operations on graphs: condition [x]G [0]G=  (empty graph) [1]G=G From arithmetic to algebra: use parameters [x]G

Operations on graphs: condition [x]G [0]G=  (empty graph) [1]G=G From arithmetic to algebra: use parameters [x]G

Operations on graphs: condition [x]G [0]G=  (empty graph) [1]G=G From arithmetic to algebra: use parameters [x]G [1] [0] ? [x]

Canonical form of PGs Proposition: Any PG can be rewritten in the following canonical form: where V is a subset of singleton graphs that appear in the original PG b v are canonical forms of Boolean expressions b uv are canonical forms of Boolean expressions, s.t. b uv ⇒ b u  b v

Algebra of PGs We define the equivalence relation on PGs abstractly, using the following axioms: + is commutative and associative  is associative  is a left and right identity of   left- and right-distributes over + Decomposition: p  q  r = p  q + p  r + q  r Condition: [0]p =  and [1]p = p Theorem: The set of axioms of PG-algebra is sound minimal complete w.r.t. PGs

Useful equalities (proved from axioms)  is an identity of + + is idempotent Left/right absorption: p + p  q = p  q q + p  q = p  q Conditional  : [x]  =  Conditional + and  : [x](p + q) = [x]p + [x]q [x](p  q) = [x]p  [x]q AND-condition: [x  y]p = [x][y]p OR-condition: [x  y]p = [x]p + [y]p

Case study: phase encoder Phase encoding: data is encoded by the order of arrival of signals on n wires: Goal: synthesise matrix phase encoder Inputs: dual-rail ports x ij that specify the order of signals Outputs: phase encoded data v i abdc n! scenarios

Case study: phase encoder Overall specification: where H ij models behaviour of i th and j th output wires If x ij =1 and x ji =0 then there is a causal dependency v i  v j If x ij =0 and x ji =1 then there is a causal dependency v j  v i If x ij =x ji =0 then neither v i nor v j can be produced yet; this is expressed by a circular wait condition between v i and v j |H| and the resulting circuit are linear in the size of input!

Transitive Parameterised Graphs  is often interpreted as causal dependency, so the graphs are transitive Hence two graphs are considered equal iff their transitive closures are equal Can express this by an additional axiom Closure: if q   then p  q + q  r = p  q + p  r + q  r Often allows to simplify expressions by transitive reduction

Transitive parameterised graphs PG expression [x]((a + b)  c + c  d) + [x]((a + b)  (d + e)) with the specialisations TPG expression (a + b)  ([x]c  d + [x]e) with the specialisations

Canonical form of TPGs Proposition: Any TPG can be rewritten in the following canonical form: where V is a subset of singleton graphs that appear in the original TPG b v are canonical forms of Boolean expressions b uv are canonical forms of Boolean expressions, s.t. b uv ⇒ b u  b v transitivity: for all u,v,w ∈ V, b uv  b vw ⇒ b uw

TPG axioms – minimal, sound, complete Theorem: The set of axioms of TPG-algebra is sound minimal complete w.r.t. TPGs.

Case study: Processor microcontroller ?

Instructions classes: ALU Rn to Rne.g. ADD A,B; MOV A,B ALU #123 to Rne.g. SUB A,#1; MOV B,#3 ALU Rn to PCe.g. JMP A ALU #123 to PCe.g. JMP #2012 Memory accesse.g. MOV A,[B]; MOV [B],A Cond. ALU Rn to Rne.g. if A<B then ADD A,B Cond. ALU #123 to Rne.g. if A<B then SUB A,#1 Cond. ALU #123 to PCe.g. if A<B then JMP #2012

Case study: Processor microcontroller ALU #123 to Rne.g. SUB A,#1; MOV B,#3 TPG algebra specification: PCIU  IFU  (ALU + PCIU’)  IFU’ The graph is considered up to transitivity

Case study: Processor microcontroller Cond. ALU #123 to Rne.g. if A<B then SUB A,#1 If A < B holds: (ALU + PCIU)  IFU  (ALU’ + PCIU’)  IFU’ If A < B does not hold: (ALU + PCIU)  PCIU’  IFU’ Composing the two scenarios, lt := (A<B): [lt]((ALU + PCIU)  IFU  (ALU’ + PCIU’)  IFU’)+ [lt]((ALU + PCIU)  PCIU’  IFU’) = (ALU + PCIU)  [lt]IFU  (PCIU’ + [lt]ALU’)  IFU’

Case study: Processor microcontroller Cond. ALU #123 to Rne.g. if A<B then SUB A,#1 (ALU + PCIU)  [lt]IFU  (PCIU’ + [lt]ALU’)  IFU’

Case study: Processor microcontroller

Conclusions and future work New formalisms: PG and TPG algebrae with sound, minimal and complete sets of axioms Canonical forms Can work with groups of scenarios and exploit the similarities between them Can formally compose, manipulate and simplify the specifications using the rules of these algebrae Applications in microelectronics, formal methods, computer architecture, modelling university courses Future work: Tool implementation Simplification by modular decomposition of graphs

Thank you!