Professional Documents
Culture Documents
mm 40 60 80 100 120
40
11. Sequential Elements
J. A. Abraham
Department
60 of Electrical and Computer Engineering
The University of Texas at Austin
EE 382M, VLSI I
Fall 2010
80
October 4, 2010
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 1 / 39
Floor Plan
MIPS Floorplan
How mm
do you 40 60 80 100 120
estimate block
areas?
Begin with
block diagram
40
Each block has
Inputs
Outputs
Function
Type: array,
60
datapath,
random
logic
Estimation
depends
80 on type
of logic
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 1 / 39
Area Estimation
mm 40 60 80 100 120
Arrays
Layout basic cell
Calculate core area from number of cells
Allow area for decoders, column circuitry
40
Datapaths
Sketch slice plan
Count area of cells from cell library
Ensure wiring is possible
60
Random Logic
Compare complexity do a design you have done
For design in a new technology, estimate from scaling design in
the old technology
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 2 / 39
mm 40 60 80 100 120
40
60
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 3 / 39
mm
Typical number
40 of high quality
60 layout 80
given below100 120
Derate by 2 for class projects to allow routing and some
sloppy layout
Allocate space for big wiring channels
40
Element Area
Random logic (2 metal layers) 1000 – 1500 λ2 /transistor
Datapath 250 – 750 λ2 /transistor
60
or, 6W L + 360λ2 /transistor
SRAM 1000 λ2 /bit
DRAM 100 λ2 /bit
80
ROM 100 λ2 /bit
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 4 / 39
Sequencing
Combinational
mm 40 logic 60 80 100 120
Output depends on current inputs
Sequential logic
Output depends on current and previous inputs
40 Requires separating previous, current, future
Called state or tokens
Example, Finite-State Machine (FSM), pipeline
60
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 5 / 39
Sequencing, Cont’d
mm 40 60 80 100 120
If tokens moved through pipeline at constant speed, no
sequencing elements would be necessary
Example, fiber-optic cable
40 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
60 is called wave pipelining in circuits
In most circuits, dispersion is high
Delay fast tokens so they don’t catch slow ones
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 6 / 39
Sequencing Overhead
mm 40 60 80 100 120
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 7 / 39
Sequencing Elements
40
Timing Diagrams
60Transparent
Opaque
Edge-trigger
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 8 / 39
Latch Designs
mm 40 60 80 100 120
Pass Transistor Latch
+ Tiny
+ Low
40 clock load
– Vt drop Used in the 1970s
– Non-restoring
– Back driving
60
– Output noise sensitivity
– Dynamic
– Diffusion input
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 9 / 39
40
Inverting Buffer Latch
+ Restoring
60
+ No Backdriving
+ Fixes either
Output noise sensitivity
80 Or diffusion input
– Inverted output
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 10 / 39
+ Static
– Backdriving risk
Static
40 latches are now
essential
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 11 / 39
Datapath
60 Latch
+ Smaller, faster
-80Unbuffered input
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 12 / 39
Flip-Flop Design
Flip-flop is built as a pair of back-to-back latches
mm 40 60 80 100 120
40
60
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 13 / 39
Enable
Enable: ignore clock when en = 0
Mux: increase latch D-Q delay
mm Clock Gating:
40 increase60 80 skew
en setup time, 100 120
40
60
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 14 / 39
Reset
Force output low when reset asserted
Synchronous vs. asynchronous
mm 40 60 80 100 120
40
60
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 15 / 39
Set/Reset
mm 40 60
Set forces output high when enabled 80 100 120
40
60
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 16 / 39
Sequencing Methods
mm 40 60 80 100 120
Flip-Flops
40
2-Phase Trans-
parent Latches
60
Pulsed Latches
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 17 / 39
Timing Diagrams
mm 40 60 80 100 120
Contamination and
Propagation Delays
tpd
40
Logic Propagation Delay
tcd Logic Contamination Delay
tpcq Latch/Flop Clk-Q Prop. Delay
tccq Latch/Flop Clk-Q Cont. Delay
tpdq Latch D-Q Prop. Delay
tcdq
60
Latch D-Q Cont. Delay
tsetup Latch/Flop Setup Time
thold Latch/Flop Hold Time
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 18 / 39
mm 40 60 80 100 120
40
60
tsetup =
80 tpcq =
thold =
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 19 / 39
40
60
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 20 / 39
40
60
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 21 / 39
40
60
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 22 / 39
40
60
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 23 / 39
mm tcd1
40, tcd2 ≥ thold
60 − tccq − tnonoverlap
80 100 120
Hole
40 time reduced
by nonoverlap
Paradox: hold
applies twice each
cycle,
60 versus only
once for flops
But a flop is
made of two
latches!
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 24 / 39
40
60
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 25 / 39
Clock Skew
We have assumed
mm 40 zero clock
60 skew 80 100 120
Clocks really have uncertainty in arrival time
Decreases maximum propagation delay
Increases minimum contamination delay
Decreases time borrowing
40
60
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 26 / 39
Skew: Flip-Flops
mm 40 60 80 100 120
tpd ≤ Tc −(tpcq + tsetup + tskew )
| {z }
sequencing overhead
40
tcd ≥ thold − tccq + tskew
60
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 27 / 39
Skew: Latches
mm 40 60 80 100 120
40
2-Phase Latches
tpd ≤ Tc 60
− (2tpdq ) Pulsed Latches
| {z } tpd ≤ Tc −
sequencing
overhead max(tpdq , tpcq + tsetup − tpw + tskew )
| {z }
tcd1 , tcd2 ≥ sequencing overhead
thold − tccq80 − tnonoverlap + tskew tcd ≥ thold + tpw − tccq + tskew
tborrow ≤ tborrow ≤ tpw − (tsetup + tskew )
Tc /2 − (tsetup + tnonoverlap + tskew )
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 28 / 39
Two-Phase Clocking
Safe Flip-Flop
Flip-Flop with
non-overlapping
60 clocks
Very slow – nonoverlap
adds to setup time, but
no hold time problem
Use timing
80 analysis and
add buffers to slow signals
if hold time is at risk
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 29 / 39
Summary
Flip-Flops 40
mm 60 80 100 120
Very easy to use, supported by all tools
2-Phase Transparent Latches
Lost of skew tolerance and time borrowing
Pulsed
40 Latches
Fast, some skew tolerance and borrowing, hold time risk
Sequencing overhead Minimum logic de- Time borrowing
(Tc − tpd ) lay (tcd ) (tborrow )
Flip-flops60 tpcq + tsetup + tskew thold − tccq + tskew 0
Tc
Two-phase trans- 2tpdq thold − tccq − 2
− (tsetup +
parent latches tnonoverlap +tskew tnonoverlap +
in each half-cycle tskew )
Pulsed latches max(tpdq , tpcq + thold −tccq +tpw + tpw − (tsetup +
80 tsetup − tpw + tskew ) tskew tskew )
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 30 / 39
40
60
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 31 / 39
40
60
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 32 / 39
The mm
hybrid latch flip-flop
40 of AMD
60 K6 80 100 120
40
60
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 33 / 39
40
60
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 34 / 39
40
60
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 35 / 39
Cycle Stretching
mm 40 60 80 100 120
40
60
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 36 / 39
mm 40 60 80 100 120
80
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 37 / 39
mm 40 60 80 100 120
40
60
Shortest path delay from A → E = 100 + 40 + 40 + 20 = 200 ps
Delay between CLK1 and CLK = 50 ps
Adjusted hold time = 200 + 50 = 250 ps
Hold Slack = (Path Delay) − (Adjusted Hold Time) = 200 − 250
80
= −50 ps
=⇒ FAIL (Hold slack should be ≥ 0)
ECE Department, University of Texas at Austin Lecture 11. Sequential Elements J. A. Abraham, October 4, 2010 38 / 39
mm 40 60 80 100 120
40