Early output logic and Anti-Tokens

Slides:



Advertisements
Similar presentations
Self-Timed Logic Timing complexity growing in digital design -Wiring delays can dominate timing analysis (increasing interdependence between logical and.
Advertisements

1 Lecture 16 Timing  Terminology  Timing issues  Asynchronous inputs.
Reading1: An Introduction to Asynchronous Circuit Design Al Davis Steve Nowick University of Utah Columbia University.
Introduction to CMOS VLSI Design Sequential Circuits.
VLSI Design EE 447/547 Sequential circuits 1 EE 447/547 VLSI Design Lecture 9: Sequential Circuits.
Introduction to CMOS VLSI Design Sequential Circuits
MICROELETTRONICA Sequential circuits Lection 7.
ELEC 256 / Saif Zahir UBC / 2000 Timing Methodology Overview Set of rules for interconnecting components and clocks When followed, guarantee proper operation.
Lecture 11: Sequential Circuit Design. CMOS VLSI DesignCMOS VLSI Design 4th Ed. 11: Sequential Circuits2 Outline  Sequencing  Sequencing Element Design.
Penn ESE370 Fall DeHon 1 ESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems Day 24: November 4, 2011 Synchronous Circuits.
Slide 1/20IWLS 2003, May 30Early Output Logic with Anti-Tokens Charlie Brej, Jim Garside APT Group Manchester University.
Sequential Circuits. Outline  Floorplanning  Sequencing  Sequencing Element Design  Max and Min-Delay  Clock Skew  Time Borrowing  Two-Phase Clocking.
P. Keresztes, L.T. Kóczy, A. Nagy, G.Rózsa: Training Electrical Engineers on Asynchronous Logic Circuits on Constant Weight Codes 1 Training Electrical.
Z. Feng MTU EE4800 CMOS Digital IC Design & Analysis EE4800 CMOS Digital IC Design & Analysis Lecture 11 Sequential Circuit Design Zhuo Feng.
Introduction to CMOS VLSI Design Clock Skew-tolerant circuits.
Clock Design Adopted from David Harris of Harvey Mudd College.
1 Clockless Logic Montek Singh Tue, Mar 23, 2004.
ELEC 6200, Fall 07, Oct 24 Jiang: Async. Processor 1 Asynchronous Processor Design for ELEC 6200 by Wei Jiang.
Network Data Organizational Communications and Technologies Prithvi N. Rao Carnegie Mellon University Web:
9/20/6Lecture 3 - Instruction Set - Al Hardware interface (part 2)
Introduction to CMOS VLSI Design Lecture 10: Sequential Circuits
Introduction to CMOS VLSI Design Lecture 10: Sequential Circuits Credits: David Harris Harvey Mudd College (Material taken/adapted from Harris’ lecture.
Fall 2009 / Winter 2010 Ran Ginosar (
Lecture 11 MOUSETRAP: Ultra-High-Speed Transition-Signaling Asynchronous Pipelines.
Pipelining By Toan Nguyen.
Clockless Chips Date: October 26, Presented by:
MOUSETRAP Ultra-High-Speed Transition-Signaling Asynchronous Pipelines Montek Singh & Steven M. Nowick Department of Computer Science Columbia University,
Paper review: High Speed Dynamic Asynchronous Pipeline: Self Precharging Style Name : Chi-Chuan Chuang Date : 2013/03/20.
Reading1: An Introduction to Asynchronous Circuit Design Al Davis Steve Nowick University of Utah Columbia University.
Penn ESE370 Fall DeHon 1 ESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems Day 26: October 31, 2014 Synchronous Circuits.
12004 MAPLD: 153Brej Early output logic and Anti-Tokens Charlie Brej APT Group Manchester University.
1 Recap: Lecture 4 Logic Implementation Styles:  Static CMOS logic  Dynamic logic, or “domino” logic  Transmission gates, or “pass-transistor” logic.
Clockless Chips Under the esteemed guidance of Romy Sinha Lecturer, REC Bhalki Presented by: Lokesh S. Woldoddy 3RB05CS122 Date:11 April 2009.
1 Clockless Logic Montek Singh Thu, Mar 2, Review: Logic Gate Families  Static CMOS logic  Dynamic logic, or “domino” logic  Transmission gates,
Interconnection Structures
Lecture 11: Sequential Circuit Design
Welcome To Seminar Presentation Seminar Report On Clockless Chips
Other Approaches.
Asynchronous Interface Specification, Analysis and Synthesis
Roadmap History Synchronized vs. Asynchronous overview How it works
The network-on-chip protocol
Sequential circuit design with metastability
Computer Architecture & Operations I
Parallel and Distributed Simulation Techniques
Recap: Lecture 1 What is asynchronous design? Why do we want to study it? What is pipelining? How can it be used to design really fast hardware?
Appendix B The Basics of Logic Design
COMP2121: Microprocessors and Interfacing
Charlie Brej APT Group University of Manchester
Introduction to CMOS VLSI Design Lecture 10: Sequential Circuits
Blame Passing for Analysis and Optimisation
Elec 2607 Digital Switching Circuits
Alternating Bit Protocol
Burst read Valid high until ready high
Day 26: November 1, 2013 Synchronous Circuits
Clocking in High-Performance and Low-Power Systems Presentation given at: EPFL Lausanne, Switzerland June 23th, 2003 Vojin G. Oklobdzija Advanced.
Topics Performance analysis..
Programmable Peripheral Interface
ARM implementation the design is divided into a data path section that is described in register transfer level (RTL) notation control section that is viewed.
332:578 Deep Submicron VLSI Design Lecture 14 Design for Clock Skew
CSE 486/586 Distributed Systems Leader Election
High Performance Asynchronous Circuit Design and Application
Clockless Logic: Asynchronous Pipelines
Lecture 19 Logistics Last lecture Today
Reduction in synchronisation in bundled data systems
Synchronous, Wave and Asynchronous pipeling
Wagging Logic: Moore's Law will eventually fix it
A Quasi-Delay-Insensitive Method to Overcome Transistor Variation
CSE 486/586 Distributed Systems Leader Election
Introduction to Silicon Programming in the Tangram/Haste language
Pipelining and Superscalar Techniques
Presentation transcript:

Early output logic and Anti-Tokens Charlie Brej APT Group Manchester University 28/08/2019 MAPLD 2004

Overview Synchronous Problems Asynchronous Logic Solutions Why? How? Early Output Anti-Tokens 28/08/2019 MAPLD 2004

Problems: Communication Communication horizon “For a 60 nanometer process a signal can reach only 5% of the die’s length in a clock cycle” [D. Matzke,1997] Clock distributed using wave pipelining 28/08/2019 MAPLD 2004

Problems: Performance Unbalanced Stages Clock overheads Clock Skew/Jitter Transistor Variability Timing Assumption overheads Signal Integrity Cycle time Worst – Average case performance Real Computation 28/08/2019 MAPLD 2004

Clock! What is it good for? No arguing with the clock 9am - 5pm. No excuses! 28/08/2019 MAPLD 2004

Bundled-Data When you finish, do the next task Flexitime Request + Delay Acknowledge When you finish, do the next task Flexitime 28/08/2019 MAPLD 2004

How do you know when you are finished? Synchronous: Estimate Global timing reference Asynchronous (bundled-data) Local delay elements Asynchronous (delay-insensitive) When the data arrives Intrinsic 28/08/2019 MAPLD 2004

Becoming Delay Insensitive Dual-Rail Two wires 00 – NULL 01 – Zero 10 – One (11 – Not used) Four Phase handshake Return to zero R0 R1 Ack 28/08/2019 MAPLD 2004

Early Output Logic Dual-Rail interfaces Output generated as early as possible Two Early output cases If either input is ‘0’ then the output is ‘0’ 28/08/2019 MAPLD 2004

Bit level pipelining Forward completed parts of the result Pace work Don’t stall parts unless you have to 28/08/2019 MAPLD 2004

Bit level pipelining Forward completed parts of the result Pace work Don’t stall parts unless you have to 28/08/2019 MAPLD 2004

Bit level pipelining Forward completed parts of the result Pace work Don’t stall parts unless you have to 28/08/2019 MAPLD 2004

Early Output cases 28/08/2019 MAPLD 2004

Validity Unnecessary late inputs Validity signal Must be acknowledged Must wait until they arrive Validity signal Latch generated Ready to be acknowledged Result before all inputs present Acknowledge after all inputs present 28/08/2019 MAPLD 2004

Synchronisation Hurts No need to wait before generating result Need to wait for input in order to acknowledge it Unnecessary stall 28/08/2019 MAPLD 2004

Anti-Tokens Unnecessary late inputs Proactive approach Stall the entire stage Proactive approach Send a ‘cancel’ signal backward to the source Acknowledge before data arrives Anti-Token latches Assert validity early 28/08/2019 MAPLD 2004

Anti-token generation 1 C 28/08/2019 MAPLD 2004

Anti-token generation 1 A C 28/08/2019 MAPLD 2004

Anti-token Propagation 1 A C 28/08/2019 MAPLD 2004

Anti-token Propagation 1 A A C 28/08/2019 MAPLD 2004

Anti-token Token collisions 1 1 A A 1 1 ? A A 1 ? A 28/08/2019 MAPLD 2004

Anti-token Token collisions 1 1 1 A A 1 1 1 A A 1 1 28/08/2019 MAPLD 2004

Remove Unnecessary computation Unbalanced Stages Clock overheads Clock Skew/Jitter Transistor Variability Timing Assumption overheads Signal Integrity Worst – Average case performance Unnecessary Computation/Delays Real Computation Cycle time 28/08/2019 MAPLD 2004

Summary Asynchronous Delay Insensitive Average case performance Safe No timing assumptions Average case performance Remove unnecessary computation Anti-tokens without mutual exclusion units 28/08/2019 MAPLD 2004