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?

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

Programmable FIR Filter Design
Self-Timed Systems Timing complexity growing in digital design -Wiring delays can dominate timing analysis (increasing interdependence between logical.
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.
1 Clockless Logic  Recap: Lookahead Pipelines  High-Capacity Pipelines.
Finite State Machine Chapter 10 RTL Hardware Design by P. Chu.
Z. Feng MTU EE4800 CMOS Digital IC Design & Analysis EE4800 CMOS Digital IC Design & Analysis Lecture 11 Sequential Circuit Design Zhuo Feng.
1 Asynchronous Bit-stream Compression (ABC) IEEE 2006 ABC Asynchronous Bit-stream Compression Arkadiy Morgenshtein, Avinoam Kolodny, Ran Ginosar Technion.
CS 151 Digital Systems Design Lecture 25 State Reduction and Assignment.
1 Clockless Logic Montek Singh Thu, Jan 13, 2004.
1 Clockless Logic Montek Singh Tue, Mar 23, 2004.
Low Power Design for Wireless Sensor Networks Aki Happonen.
COMP Clockless Logic and Silicon Compilers Lecture 3
Chapter 16 Control Unit Implemntation. A Basic Computer Model.
High-Throughput Asynchronous Pipelines for Fine-Grain Dynamic Datapaths Montek Singh and Steven Nowick Columbia University New York, USA
Spring 2002EECS150 - Lec15-seq2 Page 1 EECS150 - Digital Design Lecture 15 - Sequential Circuits II (Finite State Machines revisited) March 14, 2002 John.
ELEN 468 Advanced Logic Design
Data Communications Chapter 6 The Data Communications Interface.
1 Clockless Computing Montek Singh Thu, Sep 13, 2007.
ENGIN112 L25: State Reduction and Assignment October 31, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 25 State Reduction and Assignment.
Lecture 11 MOUSETRAP: Ultra-High-Speed Transition-Signaling Asynchronous Pipelines.
1 Recap: Lectures 5 & 6 Classic Pipeline Styles 1. Williams and Horowitz’s PS0 pipeline 2. Sutherland’s micropipelines.
1 Clockless Logic: Dynamic Logic Pipelines (contd.)  Drawbacks of Williams’ PS0 Pipelines  Lookahead Pipelines.
Lecture 21 Overview Counters Sequential logic design.
1 Seminar on High-Speed Asynchronous Pipelines Montek Singh Thursdays 10-11, SN325.
CS1Q Computer Systems Lecture 8
1 Clockless Computing Montek Singh Thu, Sep 6, 2007  Review: Logic Gate Families  A classic asynchronous pipeline by Williams.
Parallel architecture Technique. Pipelining Processor Pipelining is a technique of decomposing a sequential process into sub-processes, with each sub-process.
12004 MAPLD: 153Brej Early output logic and Anti-Tokens Charlie Brej APT Group Manchester University.
DLD Lecture 26 Finite State Machine Design Procedure.
Reading Assignment: Rabaey: Chapter 9
1 Clockless Logic or How do I make hardware fast, power- efficient, less noisy, and easy-to-design? Montek Singh Tue, Jan 14, 2003.
CSCI1600: Embedded and Real Time Software Lecture 16: Advanced Programming with I/O Steven Reiss, Fall 2015.
Lecture 5B Block Diagrams HASH Example.
Chapter 7 Channel organization. Group members  Bilal Ahmed  Mehmal javed  Faisal khan janjua  Harris bashir.
1 Practical Design and Performance Evaluation of Completion Detection Circuits Fu-Chiung Cheng Department of Computer Science Columbia University.
1 Bridging the gap between asynchronous design and designers Peter A. BeerelFulcrum Microsystems, Calabasas Hills, CA, USA Jordi CortadellaUniversitat.
1 Recap: Lecture 4 Logic Implementation Styles:  Static CMOS logic  Dynamic logic, or “domino” logic  Transmission gates, or “pass-transistor” logic.
1 Clockless Logic Montek Singh Thu, Mar 2, Review: Logic Gate Families  Static CMOS logic  Dynamic logic, or “domino” logic  Transmission gates,
Lecture 11: Sequential Circuit Design
Chapter 6 Input/Output Organization
Lecture 4. Sequential Logic #2
Welcome To Seminar Presentation Seminar Report On Clockless Chips
Other Approaches.
DATA COMMUNICATION Lecture-14.
Computer Architecture & Operations I
Stateless Combinational Logic and State Circuits
Chapter 10 Input/Output Organization
Parallel and Distributed Simulation Techniques
Dr. Michael Nasief Lecture 2
Processor (I).
Introduction to CMOS VLSI Design Lecture 10: Sequential Circuits
Inter Process Communication (IPC)
Overview of Computer Architecture and Organization
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.
CSE 370 – Winter Sequential Logic-2 - 1
22 October 3 classes before 2nd exam! Control 1/16/2019
Overview of Computer Architecture and Organization
Emerging Technologies of Computation
Simple Implementation
Clockless Logic: Asynchronous Pipelines
Sequential Logic.
Reduction in synchronisation in bundled data systems
Chapter 13: I/O Systems.
A Quasi-Delay-Insensitive Method to Overcome Transistor Variation
4-Bit Register Built using D flip-flops:
Early output logic and Anti-Tokens
Clockless Computing Lecture 3
William Stallings Computer Organization and Architecture
Presentation transcript:

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?

Homework Problem Alice and Bob live on opposite sides of a wide river: Alice is supposed to send a message (say, a “Yes”/”No”) across to Bob around midnight. Both have flashlights, but neither owns a watch. What should they do? Suggest several strategies, and discuss pros and cons of each.

Solution 1 Alice uses 2 lamps: Bob uses 1 lamp: 1 to indicate that she is ready with the message, and 1 for the message itself Bob uses 1 lamp: to indicate that he has received the message 4 phases during communication: got it yes/no Alice ready Bob

Solution 2 Alice uses 2 lamps: Bob uses 1 lamp: Green lamp to indicate “yes” Red lamp to indicate “no” Bob uses 1 lamp: to indicate that he has received the message Also 4 phase communication: got it no yes Alice Bob

Solution 3 What if Alice and Bob could keep time? Alice uses 1 lamp for the message: At 12 midnight: turns on lamp if message = “yes” At 12:01: turns lamp off Bob needs no lamps! Takes down the message between 12 and 12:01 Pros: Fewer signals, lesser processing needed Cons: Alice and Bob must keep their clocks closely synchronized

Lecture 2: Asynchronous Datapaths How is data represented in an asynchronous system? How is information exchanged?

Data Representation Styles: Dual-Rail Dual-rail: uses 2 wires per data bit bit n bit 1 bit m Each Dual-Rail Pair: provides both data value and validity provides robust data-dependent completion needs completion detectors

Dual-Rail (contd.) OR together 2 rails per bit Dual-Rail Completion Detector: combines dual-rail signals indicates when all bits are valid (or reset) C-element: if all inputs=1, output  1 if all inputs=0, output  0 else, maintain output value C Done OR bit0 bit1 bitn OR together 2 rails per bit Merge results using “C-element”

Data Representation Styles: Single-Rail Single-rail “Bundled Datapath”: alternative approach widely used Features: datapath: 1 wire per bit (e.g. standard sync blocks) matched delay: produces delayed “done” signal worst-case delay: longer than slowest path done indicates valid data bit 1 request bit n bit m done matched delay function block Practical style: can reuse sync components; small area Fixed (worst-case) completion time

Handshaking Styles: 4-phase 4-Phase: requires 4 events per handshake Request Acknowledge start event done get ready for next event ready for “Level-sensitive”  simpler logic implementation Overhead of “return-to-zero” (RTZ or resetting) extra events which do no useful computation

Handshaking Styles: 2-phase 2-Phase: requires 2 events per handshake Request Acknowledge start event done start next next event Elegant: no return-to-zero Slower logic implementation: logic primitives are inherently level-sensitive, not event-based (at least in CMOS)

Handshaking + Data Representation Several combinations possible: dual-rail 4-phase, single-rail 4-phase, dual-rail 2-phase, and single-rail 2-phase Example: dual-rail 4-phase bit m bit 1 ack dual-rail data: functions as an implicit “request” 4-phase cycle: between acknowledge and implicit request A B

Other Data Representation Styles Level-Encoded Dual-Rail (LEDR) 2 wires per bit: “data” and “phase” exactly one wire per bit changes value if new value is different, “data” wire changes value else “phase” wire change value M-of-N Codes N wires used for a data word M wires (M <= N) change value numbers used for N and M: have impact on… information transmitted, power consumed and logic complexity Knuth codes, Huffman codes, … data phase