332:479 Concepts in VLSI Design Lecture 13 Sequential Circuits - PowerPoint PPT Presentation

1 / 61
About This Presentation
Title:

332:479 Concepts in VLSI Design Lecture 13 Sequential Circuits

Description:

Make paper design simulate correctly. Layout. Physical design, DRC, NCC, ERC. Concepts in VLSI Des. ... How do you estimate block areas? Begin with block ... – PowerPoint PPT presentation

Number of Views:169
Avg rating:3.0/5.0
Slides: 62
Provided by: davidh187
Category:

less

Transcript and Presenter's Notes

Title: 332:479 Concepts in VLSI Design Lecture 13 Sequential Circuits


1
332479 Concepts in VLSIDesignLecture 13
Sequential Circuits
  • David Harris and Mike Bushnell
  • Harvey Mudd College and Rutgers University
  • Spring 2004

2
Outline
  • Floorplanning
  • Sequencing
  • Sequencing Element Design
  • Max and Min-Delay
  • Clock Skew
  • Two-Phase Clocking
  • Summary

Material from CMOS VLSI Design By Neil E. Weste
and David Harris
3
Project Strategy
  • Proposal
  • Specifies inputs, outputs, relation between them
  • Floorplan
  • Begins with block diagram
  • Annotate dimensions and location of each block
  • Requires detailed paper design
  • Schematic
  • Make paper design simulate correctly
  • Layout
  • Physical design, DRC, NCC, ERC

4
Floorplan
  • How do you estimate block areas?
  • Begin with block diagram
  • Each block has
  • Inputs
  • Outputs
  • Function (draw schematic)
  • Type array, datapath, random logic
  • Estimation depends on type of logic

5
MIPS Floorplan
6
Area Estimation
  • Arrays
  • Layout basic cell
  • Calculate core area from of cells
  • Allow area for decoders, column circuitry
  • Datapaths
  • Sketch slice plan
  • Count area of cells from cell library
  • Ensure wiring is possible
  • Random logic
  • Compare complexity do a design you have done

7
MIPS Slice Plan
8
Typical Layout Densities
  • Typical numbers of high-quality layout
  • Derate by 2 for class projects to allow routing
    and some sloppy layout.
  • Allocate space for big wiring channels

9
Sequencing
  • Combinational logic (CL)
  • output depends on current inputs
  • Sequential logic
  • output depends on current and previous inputs
  • Requires separating previous, current, future
  • Called state or tokens
  • Ex FSM, pipeline

10
Pipelined System
  • Huffman Model Finite State Machine (FSM)
    pipelined system

11
Sequencing (contd.)
  • If tokens moved through pipeline at constant
    speed, no sequencing elements would be necessary
  • Ex fiber-optic cable
  • Light pulses (tokens) are sent down cable
  • Next pulse sent before first reaches end of cable
  • No need for hardware to separate pulses
  • But dispersion sets min. time between pulses
  • This is called wave pipelining in circuits
  • In most circuits, dispersion is high
  • Delay fast tokens so they dont catch slow ones.

12
Sequencing Overhead
  • Use flip-flops to delay fast tokens so they move
    through exactly one stage each cycle.
  • Inevitably adds some delay to the slow tokens
  • Makes circuit slower than just the logic delay
  • Called sequencing overhead
  • Some people call this clocking overhead
  • But it applies to asynchronous circuits too
  • Inevitable side effect of maintaining sequence

13
Sequencing Elements
  • Latch Level sensitive
  • a.k.a. transparent latch, D latch
  • Flip-flop edge triggered
  • A.k.a. master-slave flip-flop, D flip-flop, D
    register
  • Timing Diagrams
  • Transparent
  • Opaque
  • Edge-trigger

14
Sequencing Elements
  • Latch Level sensitive
  • a.k.a. transparent latch, D latch
  • Flip-flop edge triggered
  • A.k.a. master-slave flip-flop, D flip-flop, D
    register
  • Timing Diagrams
  • Transparent
  • Opaque
  • Edge-trigger

15
Latch Design
  • Pass Transistor Latch
  • Pros
  • Cons

16
Latch Design
  • Pass Transistor Latch
  • Pros
  • Tiny
  • Low clock load
  • Cons
  • Vt drop
  • nonrestoring
  • backdriving
  • output noise sensitivity
  • dynamic
  • diffusion input

Used in 1970s
17
Latch Design
  • Transmission gate
  • -

18
Latch Design
  • Transmission gate
  • No Vt drop
  • - Requires inverted clock

19
Latch Design
  • Inverting buffer
  • Fixes either

20
Latch Design
  • Inverting buffer
  • Restoring
  • No backdriving
  • Fixes either
  • Output noise sensitivity
  • Or diffusion input
  • Inverted output

21
Latch Design
  • Tristate feedback

22
Latch Design
  • Tristate feedback
  • Static
  • Backdriving risk
  • Static latches are now essential

23
Latch Design
  • Buffered input

24
Latch Design
  • Buffered input
  • Fixes diffusion input
  • Noninverting

25
Latch Design
  • Buffered output

26
Latch Design
  • Buffered output
  • No backdriving
  • Widely used in standard cells
  • Very robust (most important)
  • Rather large
  • Rather slow (1.5 2 FO4 delays)
  • High clock loading

27
Latch Design
  • Datapath latch
  • -

28
Latch Design
  • Datapath latch
  • Smaller, faster
  • - Unbuffered input

29
Flip-Flop Design
  • Flip-flop is built as pair of back-to-back latches

30
Enable
  • Enable ignore clock when en 0
  • Mux increase latch D-Q delay
  • Clock Gating increase en setup time, skew

31
Reset
  • Force output low when reset asserted
  • Synchronous vs. asynchronous

32
Set / Reset
  • Set forces output high when enabled
  • Flip-flop with asynchronous set and reset

33
Positive Edge Triggering
34
Negative and Positive Latches
35
Positive Edge-Triggered Reg.
36
T Flip-Flop
37
JK Flip-FLop
38
Sequencing Methods
  • Flip-flops
  • 2-Phase Latches
  • Pulsed Latches

39
Timing Diagrams
Contamination and Propagation Delays
40
Max-Delay Flip-Flops
41
Max-Delay Flip-Flops
42
Max Delay 2-Phase Latches
43
Max Delay 2-Phase Latches
44
Max Delay Pulsed Latches
45
Max Delay Pulsed Latches
46
Min-Delay Flip-Flops
47
Min-Delay Flip-Flops
48
Min-Delay 2-Phase Latches
Hold time reduced by nonoverlap Paradox hold
applies twice each cycle, vs. only once for
flops. But a flop is made of two latches!
49
Min-Delay 2-Phase Latches
Hold time reduced by nonoverlap Paradox hold
applies twice each cycle, vs. only once for
flops. But a flop is made of two latches!
50
Min-Delay Pulsed Latches
Hold time increased by pulse width
51
Min-Delay Pulsed Latches
Hold time increased by pulse width
52
Clock Skew
  • We have assumed zero clock skew
  • Clocks really have uncertainty in arrival time
  • Decreases maximum propagation delay
  • Increases minimum contamination delay
  • Decreases time borrowing

53
Skew Flip-Flops
54
Skew Latches
2-Phase Latches
Pulsed Latches
55
Two-Phase Clocking
  • If setup times are violated, reduce clock speed
  • If hold times are violated, chip fails at any
    speed
  • In this class, working chips are most important
  • No tools to analyze clock skew
  • An easy way to guarantee hold times is to use
    2-phase latches with big nonoverlap times
  • Call these clocks f1, f2 (ph1, ph2)

56
Safe Flip-Flop
  • In class, use flip-flop with nonoverlapping
    clocks
  • Very slow nonoverlap adds to setup time
  • But no hold times
  • In industry, use a better timing analyzer
  • Add buffers to slow signals if hold time is at
    risk

57
Hold Time Violation
  • Clock skew problem

58
Clock Skew and Balanced Delay Clock Generator
  • Custom Design get rid of clock buffer
  • Problem Clock Skew
  • Must carefully distribute global clock signals

59
Dynamic Single Clock Latches
  • Eliminate feedback inverter transmission gate
  • Reduce transistors
  • Store latched value on gate C
  • Clock-to-Q delay very small
  • Could be transparent
  • Need sharp anti-phase clocks
  • Use internal clock inverter

60
Single-Phase Dynamic Latch Clocking
  • DEC Alpha (a) clocking
  • Must characterize race conditions of latch
    needs care
  • For a, clock tr tf
  • Worked when lt 0.8 nsec
  • Failed when 0.8 nsec tr, tf 1.0 nsec

61
Summary
  • Flip-Flops
  • Very easy to use, supported by all tools
  • 2-Phase Transparent Latches
  • Lots of skew tolerance and time borrowing
  • Pulsed Latches
  • Fast, some skew tolerance borrow, hold time risk
Write a Comment
User Comments (0)
About PowerShow.com