Digital Integrated Circuits A Design Perspective

Slides:



Advertisements
Similar presentations
Digital Integrated Circuits A Design Perspective
Advertisements

EE141 © Digital Integrated Circuits 2nd Arithmetic Circuits 1 Digital Integrated Circuits A Design Perspective Arithmetic Circuits Jan M. Rabaey Anantha.
EE141 Adder Circuits S. Sundar Kumar Iyer.
Timing Issues Mohammad Sharifkhani. Reading Textbook II, Chapter 10 Textbook I, Chapters 12 and 13.
Introduction to CMOS VLSI Design Sequential Circuits.
Introduction to CMOS VLSI Design Sequential Circuits
ECE C03 Lecture 81 Lecture 8 Memory Elements and Clocking Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
Designing Sequential Logic Circuits
MICROELETTRONICA Sequential circuits Lection 7.
Lecture 11: Sequential Circuit Design. CMOS VLSI DesignCMOS VLSI Design 4th Ed. 11: Sequential Circuits2 Outline  Sequencing  Sequencing Element Design.
L06 – Clocks Spring /18/05 Clocking.
Flip-Flops, Registers, Counters, and a Simple Processor
(Neil west - p: ). Finite-state machine (FSM) which is composed of a set of logic input feeding a block of combinational logic resulting in a set.
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 Lecture 19: Design for Skew David Harris Harvey Mudd College Spring 2004.
Introduction to CMOS VLSI Design Clock Skew-tolerant circuits.
EE141 © Digital Integrated Circuits 2nd Timing Issues 1 Digital Integrated Circuits A Design Perspective Timing Issues Jan M. Rabaey Anantha Chandrakasan.
Sequential Definitions  Use two level sensitive latches of opposite type to build one master-slave flipflop that changes state on a clock edge (when the.
EE141 © Digital Integrated Circuits 2nd Timing Issues 1 Digital Integrated Circuits A Design Perspective Timing Issues Jan M. Rabaey Anantha Chandrakasan.
CSE477 L19 Timing Issues; Datapaths.1Irwin&Vijay, PSU, 2002 CSE477 VLSI Digital Circuits Fall 2002 Lecture 19: Timing Issues; Introduction to Datapath.
Clock Design Adopted from David Harris of Harvey Mudd College.
Technical Seminar on Timing Issues in Digital Circuits
Reading Assignment: Rabaey: Chapter 10
Chapter 11 Timing Issues in Digital Systems Boonchuay Supmonchai Integrated Design Application Research (IDAR) Laboratory August 20, 2004; Revised - July.
CSE477 L19 Timing Issues; Datapaths.1Irwin&Vijay, PSU, 2002 Complex Digital Circuits Design Lecture 2: Timing Issues; [Adapted from Rabaey’s Digital Integrated.
Digital Integrated Circuits A Design Perspective
Digital Integrated Circuits© Prentice Hall 1995 Timing ISSUES IN TIMING.
EE141 © Digital Integrated Circuits 2nd Arithmetic Circuits 1 [Adapted from Rabaey’s Digital Integrated Circuits, ©2002, J. Rabaey et al.]
EE141 © Digital Integrated Circuits 2nd Timing Issues 1 Latch-based Design.
Lecture 8: Clock Distribution, PLL & DLL
Embedded Systems Hardware:
11/15/2004EE 42 fall 2004 lecture 321 Lecture #32 Registers, counters etc. Last lecture: –Digital circuits with feedback –Clocks –Flip-Flops This Lecture:
Digital Integrated Circuits© Prentice Hall 1995 Arithmetic Arithmetic Building Blocks.
Embedded Systems Hardware: Storage Elements; Finite State Machines; Sequential Logic.
Chapter #6: Sequential Logic Design 6.2 Timing Methodologies
Temporizzazioni e sincronismo1 Progettazione di circuiti e sistemi VLSI Anno Accademico Lezione Temporizzazioni e sincronizzazione.
Adders. Full-Adder The Binary Adder Express Sum and Carry as a function of P, G, D Define 3 new variable which ONLY depend on A, B Generate (G) = AB.
Lec 17 : ADDERS ece407/507.
© Digital Integrated Circuits 2nd Sequential Circuits Digital Integrated Circuits A Design Perspective Designing Sequential Logic Circuits Jan M. Rabaey.
COE 202: Digital Logic Design Sequential Circuits Part 1
Evolution in Complexity Evolution in Transistor Count.
Arithmetic Building Blocks
EE141 © Digital Integrated Circuits 2nd Arithmetic Circuits 1 Digital Integrated Circuits A Design Perspective Arithmetic Circuits Reference: Digital Integrated.
Arithmetic Building Blocks
Chapter 14 Arithmetic Circuits (I): Adder Designs Rev /12/2003
Digital System Clocking: High-Performance and Low-Power Aspects Vojin G. Oklobdzija, Vladimir M. Stojanovic, Dejan M. Markovic, Nikola M. Nedovic Wiley-Interscience.
EE 466/586 VLSI Design Partha Pande School of EECS Washington State University
EE141 © Digital Integrated Circuits 2nd Arithmetic Circuits 1 Digital Integrated Circuits A Design Perspective Arithmetic Circuits Jan M. Rabaey Anantha.
Reading Assignment: Rabaey: Chapter 9
Digital Integrated Circuits© Prentice Hall 1995 Arithmetic Arithmetic Building Blocks.
Digital System Clocking: High-Performance and Low-Power Aspects Vojin G. Oklobdzija, Vladimir M. Stojanovic, Dejan M. Markovic, Nikola M. Nedovic Wiley-Interscience.
Page 1EL/CCUT T.-C. Huang Nov TCH CCUT Introduction to IC Design Tsung-Chu Huang ( 黃宗柱 ) Department of Electronic Eng. Chong Chou Institute of Tech.
Clocking System Design
Sp09 CMPEN 411 L21 S.1 CMPEN 411 VLSI Digital Circuits Spring 2009 Lecture 21: Shifters, Decoders, Muxes [Adapted from Rabaey’s Digital Integrated Circuits,
Penn ESE370 Fall DeHon 1 ESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems Day 20: October 25, 2010 Pass Transistors.
EE141 Arithmetic Circuits 1 Chapter 14 Arithmetic Circuits Rev /12/2003 Rev /05/2003.
EE141 Timing Issues 1 Chapter 10 Timing Issues Rev /11/2003 Rev /28/2003 Rev /05/2003.
EE141 Timing Issues 1 Chapter 10 Timing Issues Rev /11/2003.
CSE477 L19 Timing Issues; Datapaths.1Irwin&Vijay, PSU, 2003 CSE477 VLSI Digital Circuits Fall 2003 Lecture 19: Timing Issues; Introduction to Datapath.
EE141 Arithmetic Circuits 1 Chapter 14 Arithmetic Circuits Rev /12/2003.
Digital Integrated Circuits A Design Perspective
CMOS VLSI Design Chapter 13 Clocks, DLLs, PLLs
Digital Integrated Circuits A Design Perspective
Chapter 10 Timing Issues Rev /11/2003 Rev /28/2003
CMOS VLSI Design Chapter 13 Clocks, DLLs, PLLs
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
Arithmetic Building Blocks
Arithmetic Circuits.
Presentation transcript:

Digital Integrated Circuits A Design Perspective EE141 Digital Integrated Circuits A Design Perspective Timing Issues

Timing Definitions

Latch Parameters D Q Clk T Clk PWm tsu D thold tc-q td-q Q Delays can be different for rising and falling data transitions

Register Parameters D Q Clk T Clk thold D tsu tc-q Q Delays can be different for rising and falling data transitions

Clock Uncertainties Sources of clock uncertainty

Clock Non-idealities Clock skew Clock jitter Spatial variation in temporally equivalent clock edges; deterministic + random, tSK Clock jitter Temporal variations in consecutive edges of the clock signal; modulation + random noise Cycle-to-cycle (short-term) tJS Long term tJL Variation of the pulse width Important for level sensitive clocking

Clock Skew and Jitter Clk tSK Clk tJS Both skew and jitter affect the effective cycle time Only skew affects the race margin

Positive and Negative Skew

Positive Skew Launching edge arrives before the receiving edge

Negative Skew Receiving edge arrives before the launching edge

Timing Constraints Minimum cycle time: T -  = tc-q + tsu + tlogic Worst case is when receiving edge arrives early (positive )

Impact of Jitter

Longest Logic Path in Edge-Triggered Systems TJI + d TSU Clk TClk-Q TLM T Latest point of launching Earliest arrival of next cycle

Shortest Path Clk TClk-Q TLm Clk TH Earliest point of launching Data must not arrive before this time Nominal clock edge

Clock Skew

Clock Distribution H-tree Clock is distributed in a tree-like fashion

More realistic H-tree [Restle98]

The Grid System No rc-matching Large power

Self-timed and Asynchronous Design Functions of clock in synchronous design 1) Acts as completion signal 2) Ensures the correct ordering of events Truly asynchronous design 1) Completion is ensured by careful timing analysis 2) Ordering of events is implicit in logic Self-timed design 1) Completion ensured by completion signal 2) Ordering imposed by handshaking protocol

Synchronous Pipelined Datapath

Self-Timed Pipelined Datapath

Completion Signal Generation

Completion Signal Using Current Sensing

Hand-Shaking Protocol Two Phase Handshake

2-Phase Handshake Protocol Advantage : FAST - minimal # of signaling events (important for global interconnect) Disadvantage : edge - sensitive, has state

4-Phase Handshake Protocol Also known as RTZ Slower, but unambiguous

4-Phase Handshake Protocol Implementation using Muller-C elements

Asynchronous-Synchronous Interface

Synchronizers and Arbiters Arbiter: Circuit to decide which of 2 events occurred first Synchronizer: Arbiter with clock f as one of the inputs Problem: Circuit HAS to make a decision in limited time - which decision is not important

A Simple Synchronizer • Data sampled on rising edge of the clock • Latch will eventually resolve the signal value, but ... this might take infinite time!

Arbiters

PLL-Based Synchronization

PLL Block Diagram

Phase Detector Output before filtering Transfer characteristic

Phase-Frequency Detector

PFD Response to Frequency

Charge Pump

Clock Generation using DLLs Delay-Locked Loop (Delay Line Based) fREF U Phase Det Charge Pump DL D Filter fO Phase-Locked Loop (VCO-Based) fREF U PD CP VCO D ÷N Filter fO

Delay Locked Loop

DLL-Based Clock Distribution

Digital Integrated Circuits A Design Perspective EE141 Digital Integrated Circuits A Design Perspective Arithmetic Circuits

A Generic Digital Processor

Building Blocks for Digital Architectures Arithmetic unit - Bit-sliced datapath (adder, multiplier, shifter, comparator, etc.) Memory - RAM, ROM, Buffers, Shift registers Control - Finite state machine (PLA, random logic.) - Counters Interconnect - Switches - Arbiters - Bus

Bit-Sliced Design

Bit-Sliced Datapath

Itanium Integer Datapath Fetzer, Orton, ISSCC’02

Adders

Full-Adder

The Binary Adder

The Ripple-Carry Adder Worst case delay linear with the number of bits td = O(N) tadder = (N-1)tcarry + tsum Goal: Make the fastest possible carry path circuit

Complimentary Static CMOS Full Adder 28 Transistors

Inversion Property

Minimize Critical Path by Reducing Inverting Stages Exploit Inversion Property

Transmission Gate Full Adder

Carry-Bypass Adder Also called Carry-Skip

Carry-Bypass Adder (cont.) tadder = tsetup + Mtcarry + (N/M-1)tbypass + (M-1)tcarry + tsum

Carry Ripple versus Carry Bypass

Carry-Select Adder

Carry Select Adder: Critical Path

Linear Carry Select

Square Root Carry Select

Adder Delays - Comparison

LookAhead - Basic Idea

Carry Lookahead Trees Can continue building the tree hierarchically.

Tree Adders 16-bit radix-2 Kogge-Stone tree

Tree Adders 16-bit radix-4 Kogge-Stone Tree

Multipliers

The Binary Multiplication

The Array Multiplier

The MxN Array Multiplier — Critical Path

Carry-Save Multiplier

Wallace-Tree Multiplier

Wallace-Tree Multiplier

Multipliers —Summary

Shifters

The Binary Shifter

The Barrel Shifter Area Dominated by Wiring

4x4 barrel shifter Widthbarrel ~ 2 pm M