EE273 Lecture 15 Asynchronous Design November 16, Today s Assignment

Similar documents
6.004 Computation Structures Spring 2009

CS 301. Lecture 04 Regular Expressions. Stephen Checkoway. January 29, 2018

Intermediate Math Circles Wednesday, November 14, 2018 Finite Automata II. Nickolas Rollick a b b. a b 4

expression simply by forming an OR of the ANDs of all input variables for which the output is

CS12N: The Coming Revolution in Computer Architecture Laboratory 2 Preparation

Fault Modeling. EE5375 ADD II Prof. MacDonald

5. (±±) Λ = fw j w is string of even lengthg [ 00 = f11,00g 7. (11 [ 00)± Λ = fw j w egins with either 11 or 00g 8. (0 [ ffl)1 Λ = 01 Λ [ 1 Λ 9.

Lecture 2e Orthogonal Complement (pages )

1B40 Practical Skills

Homework 3 Solutions

CS 373, Spring Solutions to Mock midterm 1 (Based on first midterm in CS 273, Fall 2008.)

Improper Integrals. The First Fundamental Theorem of Calculus, as we ve discussed in class, goes as follows:

Parse trees, ambiguity, and Chomsky normal form

CS 310 (sec 20) - Winter Final Exam (solutions) SOLUTIONS

I1 = I2 I1 = I2 + I3 I1 + I2 = I3 + I4 I 3

Combinational Logic. Precedence. Quick Quiz 25/9/12. Schematics à Boolean Expression. 3 Representations of Logic Functions. Dr. Hayden So.

Designing Information Devices and Systems I Anant Sahai, Ali Niknejad. This homework is due October 19, 2015, at Noon.

Outline Last time: Deriving the State Diagram & Datapath (Cont.) Mapping the Datapath onto Control

Administrivia CSE 190: Reinforcement Learning: An Introduction

Resources. Introduction: Binding. Resource Types. Resource Sharing. The type of a resource denotes its ability to perform different operations

Regular Language. Nonregular Languages The Pumping Lemma. The pumping lemma. Regular Language. The pumping lemma. Infinitely long words 3/17/15

Review of Gaussian Quadrature method

p-adic Egyptian Fractions

Theory of Computation Regular Languages. (NTU EE) Regular Languages Fall / 38

CSE396 Prelim I Answer Key Spring 2017

Quantum Nonlocality Pt. 2: No-Signaling and Local Hidden Variables May 1, / 16

Handout: Natural deduction for first order logic

CMPSCI 250: Introduction to Computation. Lecture #31: What DFA s Can and Can t Do David Mix Barrington 9 April 2014

Some Theory of Computation Exercises Week 1

5.4 The Quarter-Wave Transformer

EECS 141 Due 04/19/02, 5pm, in 558 Cory

Lecture 3. In this lecture, we will discuss algorithms for solving systems of linear equations.

Designing Information Devices and Systems I Spring 2018 Homework 7

1 Nondeterministic Finite Automata

Designing Information Devices and Systems I Discussion 8B

The University of Nottingham SCHOOL OF COMPUTER SCIENCE A LEVEL 2 MODULE, SPRING SEMESTER LANGUAGES AND COMPUTATION ANSWERS

Lecture 3: Equivalence Relations

Bob Brown Math 251 Calculus 1 Chapter 5, Section 4 1 CCBC Dundalk

12.1 Nondeterminism Nondeterministic Finite Automata. a a b ε. CS125 Lecture 12 Fall 2014

AUTOMATA AND LANGUAGES. Definition 1.5: Finite Automaton

Chapter 2 Finite Automata

POLYPHASE CIRCUITS. Introduction:

CS 311 Homework 3 due 16:30, Thursday, 14 th October 2010

Assignment 1 Automata, Languages, and Computability. 1 Finite State Automata and Regular Languages

Theory of Computation Regular Languages

Lecture 08: Feb. 08, 2019

Designing finite automata II

ECE 327 Solution to Midterm 2016t1 (Winter)

Kleene s Theorem. Kleene s Theorem. Kleene s Theorem. Kleene s Theorem. Kleene s Theorem. Kleene s Theorem 2/16/15

Coalgebra, Lecture 15: Equations for Deterministic Automata

CS103B Handout 18 Winter 2007 February 28, 2007 Finite Automata

Fast Boolean Algebra

CSCI 340: Computational Models. Kleene s Theorem. Department of Computer Science

Lecture 3. Introduction digital logic. Notes. Notes. Notes. Representations. February Bern University of Applied Sciences.

Special Relativity solved examples using an Electrical Analog Circuit

Formal languages, automata, and theory of computation

Bases for Vector Spaces

ACCESS TO SCIENCE, ENGINEERING AND AGRICULTURE: MATHEMATICS 1 MATH00030 SEMESTER /2019

Convert the NFA into DFA

1. For each of the following theorems, give a two or three sentence sketch of how the proof goes or why it is not true.

The Regulated and Riemann Integrals

Discrete Mathematics and Probability Theory Spring 2013 Anant Sahai Lecture 17

5.2 Exponent Properties Involving Quotients

Minimal DFA. minimal DFA for L starting from any other

Quadratic Forms. Quadratic Forms

Boolean algebra.

State Minimization for DFAs

10. AREAS BETWEEN CURVES

CMSC 330: Organization of Programming Languages

The Evaluation Theorem

CS 330 Formal Methods and Models

CS 275 Automata and Formal Language Theory

Torsion in Groups of Integral Triangles

Nondeterminism and Nodeterministic Automata

CS 188: Artificial Intelligence Spring 2007

UNIFORM CONVERGENCE. Contents 1. Uniform Convergence 1 2. Properties of uniform convergence 3

CS683: calculating the effective resistances

Surface maps into free groups

CHAPTER 1 Regular Languages. Contents

Math Lecture 23

3 Regular expressions

SWEN 224 Formal Foundations of Programming WITH ANSWERS

Regular expressions, Finite Automata, transition graphs are all the same!!

Lecture 6 Regular Grammars

Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2018

First Midterm Examination

12.1 Nondeterminism Nondeterministic Finite Automata. a a b ε. CS125 Lecture 12 Fall 2016

The graphs of Rational Functions

Types of Finite Automata. CMSC 330: Organization of Programming Languages. Comparing DFAs and NFAs. NFA for (a b)*abb.

Lecture 9: LTL and Büchi Automata

Kinematics equations, some numbers

Discrete Mathematics and Probability Theory Summer 2014 James Cook Note 17

Types of Finite Automata. CMSC 330: Organization of Programming Languages. Comparing DFAs and NFAs. Comparing DFAs and NFAs (cont.) Finite Automata 2

2.4 Linear Inequalities and Interval Notation

Introduction to Electrical & Electronic Engineering ENGG1203

7.2 The Definite Integral

Let's start with an example:

NFA DFA Example 3 CMSC 330: Organization of Programming Languages. Equivalence of DFAs and NFAs. Equivalence of DFAs and NFAs (cont.

Reading from Young & Freedman: For this topic, read the introduction to chapter 24 and sections 24.1 to 24.5.

How to simulate Turing machines by invertible one-dimensional cellular automata

Transcription:

EE273 Lecture 15 Asynchronous Design Novemer 16, 199 Willim J. Dlly Computer Systems Lortory Stnford University illd@csl.stnford.edu 1 Tody s Assignment Term Project see project updte hndout on we checkpoint 1 (signling components) due Wednesdy (11/1) checkpoint 2 (timing components) due on 11/25 Reding no new reding, complete Section 10.4 if you hven t lredy done so FYI meso- mens middle timing midwy etween sync nd sync? plesio- mens ner nerly mesochronous? 2 Copyright 199 y W. J. Dlly, ll rights reserved. 1

A Quick Overview Periodic Synchronizers clock prediction - looking into the future Asynchronous design most synchroniztion is unnecessry cn e voided y using synchronous design A stopple clock stop clock etween events strt clock when n input event occurs Comintionl synchronous modules inputs nd outputs encode events not just vlues modules oey the wek conditions numer of events on ech output is equl to or one less thn the numer of events on ech input Composition wek conditions re closed under cyclic composition 3 Periodic Timing Trnsmit nd receive clocks re periodic ut t unrelted frequencies e.g., modules in system operte off of seprte oscilltors with independent frequencies cse where one is rtionlly derived from the other is n interesting specil cse In this sitution, single synchroniztion won t lst forever (like mesochronous) or even for long time (like plesiochronous) However, we cn still look into the future nd predict clock conflicts fr enough hed to reduce synchronizer dely 4 Copyright 199 y W. J. Dlly, ll rights reserved. 2

Clock-Predictor Circuit Suppose we wnt to know the vlue of xclk, one rclk cycle (t rcy ) in the future This is just phse shift of t xcy -t rcy It is esy to generte this phse shift using simple timing loop Note tht we could just s esily predict xclk severl rclk cycles in the future So how do we uild synchronizer using this? xclk t rcy φc pxclk 5 Asynchronous Timing Sometimes we need to smple signl tht is truly synchronous We cn still move the synchroniztion out of the dtpth y using n synchronous FIFO synchronizer However this still incurs high ltency on the full nd empty signls s we hve to wit for rute force synchronizer to mke its decision We cn still void dely in this cse if we don t relly need to synchronize often synchroniztion is just n expensive convenience 6 Copyright 199 y W. J. Dlly, ll rights reserved. 3

Asynchronous Design Most often we synchronize just to lign n event to clock it doesn t relly mtter if we hndle the event on clock i or i+1 We cn void this unnecessry synchroniztion y processing events synchronously The rrivl of n event triggers its hndling 7 Exmple, A Stopple Clock Suppose our input is n synchronous -it signl We need to wit for 12 events on the input nd then output the verge vlue We could synchronize to locl clock on ech smple this is n exmple of unnecessry synchroniztion We could stop our clock nd restrt it on ech smple no proility of synchroniztion filure lower power in rin clk in rin sync Proc Proc clk sm out rout out rout Copyright 199 y W. J. Dlly, ll rights reserved. 4

Stopple Clock Circuit in Com Logic out done rin ASM go clk 9 Stopple Clocks Some Questions Wht do the wveforms on rin, go, clk, nd done look like? Where is rout generted? Wht re the constrints on input timing? On output timing? How do we design the ASM lock? 10 Copyright 199 y W. J. Dlly, ll rights reserved. 5

An Asynchronous Module To ensure correct design of synchronous circuits (nd to simplify verifiction) we need to impose some discipline on our designs We strt y specifying the properties of comintionl synchronous module some numer of inputs undled or dul-ril some numer of outputs undled or dul ril constrint on input nd output events r r ACL c rc 11 The Wek Conditions Inputs nd outputs trnsition in the following order 1. some input(s) ecome vlid 2. some output(s) ecome vlid 3. ll inputs ecome vlid 4. ll outputs ecome vlid 5. some input(s) ecome invlid 6. some output(s) ecome invlid 7. ll input(s) ecome invlid. ll output(s) ecome invlid So, for exmple it is not llowed for ny output to ecome vlid efore ny input ecomes vlid ll outputs to ecome vlid while ny input is invlid ny output to ecome invlid while ll inputs re vlid ll outputs to ecome invlid while ny input is vlid 12 Copyright 199 y W. J. Dlly, ll rights reserved. 6

The Wek Conditions Stte Digrm ssert siv iv reset sov ov sii ii two-phse soi oi four-phse 13 The Wek Conditions Some Questions Wht does it men for signl to e vlid or invlid? Which conditions pply to the circuit nd which pply to the environment? Is it sufficient for one output to lwys lg ll inputs? Wht do the wek conditions sy out the numer of events on ech input nd output? 14 Copyright 199 y W. J. Dlly, ll rights reserved. 7

The Wek Conditions Exmple: Self-Timed AND Gte Suppose we wnt to uild n synchronous AND gte using this discipline. inputs dul-ril Cn we just use n AND gte nd n OR gte? why not? Is the lower circuit OK? why? isn t it logiclly equivlent to the upper circuit? wht s different? 1 0 1 0 1 0 1 0 c1 c0 c1 c0 15 A Bundled Self-Timed AND Gte If the inputs re undled insted of dul ril, how do we generte undled output? A Muller C-element output follows input when oth inputs re equl This is n exmple of mtched-dely circuit dely of C element plus dely line must e dely of AND gte r r C c cr Output cr is n exmple of completion signl 16 Copyright 199 y W. J. Dlly, ll rights reserved.

A Mtched-Dely Full Adder Suppose we wnt to uild full dder with undled inputs using the mtcheddely design style Cn we generte fst crry nd still oey the wek conditions? C in A B S C out 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 17 Mtched-Dely Full Adder First Attempt Does this work? Does it give good performnce? c in s c out r r cr in C C cr out sr 1 Copyright 199 y W. J. Dlly, ll rights reserved. 9

Mtched-Dely Full Adder with Fst Crry Does this work? Does it oey the wek conditions? Is there completion signl? c in g p s c out Under wht conditions is the crry fst? r r cr in C C 0 1 cr out sr 19 Composition of Asynchronous Modules The wek conditions re closed under cyclic composition An cyclic composition of modules tht oey the wek conditions lso oeys the wek conditions Only true if the circuit is fully connected Two independent prllel circuits do not oey the wek conditions Why is this true? 20 Copyright 199 y W. J. Dlly, ll rights reserved. 10

Exmple, An Asynchronous Adder Ech line here represents two wires: vlue nd request Wht is the verge dely of this dder with the first full dder design? the second? Is there completion signl? If not how could we generte one? Cn we fctor out some of the mtched-dely completion logic? 31 31 1 1 0 0 c out c in c out c in c out c in s c31 c2 c1 s s c32 s31 s1 s0 c0 21 Next Time Asynchronous Stte Mchines Asynchronous Pipelines Itertive Asynchronous Circuits 22 Copyright 199 y W. J. Dlly, ll rights reserved. 11