SlideShare a Scribd company logo
Introduction to
CMOS VLSI
Design
Sequential Circuits
Sequential Logic Slide 2
CMOS VLSI Design
Outline
 Sequencing
 Sequencing Element Design
 Max and Min-Delay
 Clock Skew
 Time Borrowing
 Two-Phase Clocking
Sequential Logic Slide 3
CMOS VLSI Design
Sequencing
 Combinational logic
– 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
CL
clk
in out
clk clk clk
CL CL
Pipeline
Finite State Machine
Sequential Logic Slide 4
CMOS VLSI Design
Sequencing Cont.
 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 don’t catch slow ones.
Sequential Logic Slide 5
CMOS VLSI Design
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
Sequential Logic Slide 6
CMOS VLSI Design
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
D
Flop
Latch
Q
clk clk
D Q
clk
D
Q (latch)
Q (flop)
Sequential Logic Slide 7
CMOS VLSI Design
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
D
Flop
Latch
Q
clk clk
D Q
clk
D
Q (latch)
Q (flop)
Sequential Logic Slide 8
CMOS VLSI Design
Latch Design
 Pass Transistor Latch
 Pros
+
+
 Cons
–
–
–
–
–
–
D Q

Sequential Logic Slide 9
CMOS VLSI Design
Latch Design
 Pass Transistor Latch
 Pros
+ Tiny
+ Low clock load
 Cons
– Vt drop
– nonrestoring
– backdriving
– output noise sensitivity
– dynamic
– diffusion input
D Q

Used in 1970’s
Sequential Logic Slide 10
CMOS VLSI Design
Latch Design
 Transmission gate
+
- D Q


Sequential Logic Slide 11
CMOS VLSI Design
Latch Design
 Transmission gate
+ No Vt drop
- Requires inverted clock D Q


Sequential Logic Slide 12
CMOS VLSI Design
Latch Design
 Inverting buffer
+
+
+ Fixes either
•
•
–
D


X
Q
D Q


Sequential Logic Slide 13
CMOS VLSI Design
Latch Design
 Inverting buffer
+ Restoring
+ No backdriving
+ Fixes either
• Output noise sensitivity
• Or diffusion input
– Inverted output
D


X
Q
D Q


Sequential Logic Slide 14
CMOS VLSI Design
Latch Design
 Tristate feedback
+
–




Q
D
X
Sequential Logic Slide 15
CMOS VLSI Design
Latch Design
 Tristate feedback
+ Static
– Backdriving risk
 Static latches are now essential




Q
D
X
Sequential Logic Slide 16
CMOS VLSI Design
Latch Design
 Buffered input
+
+ 

Q
D
X


Sequential Logic Slide 17
CMOS VLSI Design
Latch Design
 Buffered input
+ Fixes diffusion input
+ Noninverting 

Q
D
X


Sequential Logic Slide 18
CMOS VLSI Design
Latch Design
 Buffered output
+


Q
D
X


Sequential Logic Slide 19
CMOS VLSI Design
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


Q
D
X


Sequential Logic Slide 20
CMOS VLSI Design
Latch Design
 Datapath latch
+
-




Q
D
X
Sequential Logic Slide 21
CMOS VLSI Design
Latch Design
 Datapath latch
+ Smaller, faster
- unbuffered input




Q
D
X
Sequential Logic Slide 22
CMOS VLSI Design
Flip-Flop Design
 Flip-flop is built as pair of back-to-back latches
D Q




X
D




X
Q
Q




Sequential Logic Slide 23
CMOS VLSI Design
Enable
 Enable: ignore clock when en = 0
– Mux: increase latch D-Q delay
– Clock Gating: increase en setup time, skew
D Q
Latch
D Q
en
en


Latch
D
Q

0
1
en
Latch
D Q
 en
D
Q

0
1
en
D Q
 en
Flop
Flop
Flop
Symbol Multiplexer Design Clock Gating Design
Sequential Logic Slide 24
CMOS VLSI Design
Reset
 Force output low when reset asserted
 Synchronous vs. asynchronous
D




Q
Q




reset
D






Q


D
reset


Q


D
reset
reset


reset
Synchronous
Reset
Asynchronous
Reset
Symbol
Flop
D Q
Latch
D Q
reset reset
 


Q
reset
Sequential Logic Slide 25
CMOS VLSI Design
Set / Reset
 Set forces output high when enabled
 Flip-flop with asynchronous set and reset
D






Q


reset
set
reset
set
Sequential Logic Slide 26
CMOS VLSI Design
Sequencing Methods
 Flip-flops
 2-Phase Latches
 Pulsed Latches
Flip-Flops
Flop
Latch
Flop
clk
1
2
p
clk clk
Latch
Latch
p p
1 1
2
2-Phase
Transparent
Latches
Pulsed
Latches
Combinational Logic
Combinational
Logic
Combinational
Logic
Combinational Logic
Latch
Latch
Tc
Tc
/2
tnonoverlap
tnonoverlap
tpw
Half-Cycle 1 Half-Cycle 1
Sequential Logic Slide 27
CMOS VLSI Design
Timing Diagrams
Flop
A
Y
tpd
Combinational
Logic
A Y
D Q
clk clk
D
Q
Latch
D Q
clk
clk
D
Q
tcd
tsetup thold
tccq
tpcq
tccq
tsetup
thold
tpcq
tpdq
tcdq
tpd
Logic Prop. Delay
tcd
Logic Cont. Delay
tpcq
Latch/Flop Clk-Q Prop Delay
tccq
Latch/Flop Clk-Q Cont. Delay
tpdq
Latch D-Q Prop Delay
tpcq
Latch D-Q Cont. Delay
tsetup
Latch/Flop Setup Time
thold
Latch/Flop Hold Time
Contamination and
Propagation Delays
Sequential Logic Slide 28
CMOS VLSI Design
Max-Delay: Flip-Flops
F1
F2
clk
clk clk
Combinational Logic
Tc
Q1 D2
Q1
D2
tpd
tsetup
tpcq
 
sequencing overhead
pd c
t T
 
    

Sequential Logic Slide 29
CMOS VLSI Design
Max-Delay: Flip-Flops
F1
F2
clk
clk clk
Combinational Logic
Tc
Q1 D2
Q1
D2
tpd
tsetup
tpcq
 
setup
sequencing overhead
pd c pcq
t T t t
  
    
Sequential Logic Slide 30
CMOS VLSI Design
Max Delay: 2-Phase Latches
Tc
Q1
L1
1
2
L2
L3
1
1
2
Combinational
Logic 1
Combinational
Logic 2
Q2 Q3
D1 D2 D3
Q1
D2
Q2
D3
D1
tpd1
tpdq1
tpd2
tpdq2
 
1 2
sequencing overhead
pd pd pd c
t t t T
   
    

Sequential Logic Slide 31
CMOS VLSI Design
Max Delay: 2-Phase Latches
Tc
Q1
L1
1
2
L2
L3
1
1
2
Combinational
Logic 1
Combinational
Logic 2
Q2 Q3
D1 D2 D3
Q1
D2
Q2
D3
D1
tpd1
tpdq1
tpd2
tpdq2
 
1 2
sequencing overhead
2
pd pd pd c pdq
t t t T t
   
  
Sequential Logic Slide 32
CMOS VLSI Design
Max Delay: Pulsed Latches
Tc
Q1 Q2
D1 D2
Q1
D2
D1
p
p p
Combinational Logic
L1
L2
tpw
(a) tpw
> tsetup
Q1
D2
(b) tpw < tsetup
Tc
tpd
tpdq
tpcq
tpd
tsetup
 
sequencing overhead
max
pd c
t T
 
        
Sequential Logic Slide 33
CMOS VLSI Design
Max Delay: Pulsed Latches
Tc
Q1 Q2
D1 D2
Q1
D2
D1
p
p p
Combinational Logic
L1
L2
tpw
(a) tpw
> tsetup
Q1
D2
(b) tpw < tsetup
Tc
tpd
tpdq
tpcq
tpd
tsetup
 
setup
sequencing overhead
max ,
pd c pdq pcq pw
t T t t t t
   
          
Sequential Logic Slide 34
CMOS VLSI Design
Min-Delay: Flip-Flops
cd
t  CL
clk
Q1
D2
F1
clk
Q1
F2
clk
D2
tcd
thold
tccq
Sequential Logic Slide 35
CMOS VLSI Design
Min-Delay: Flip-Flops
hold
cd ccq
t t t
  CL
clk
Q1
D2
F1
clk
Q1
F2
clk
D2
tcd
thold
tccq
Sequential Logic Slide 36
CMOS VLSI Design
Min-Delay: 2-Phase Latches
1, 2
cd cd
t t  CL
Q1
D2
D2
Q1
1
L1
2
L2
1
2
tnonoverlap
tcd
thold
tccq
Hold time reduced by
nonoverlap
Sequential Logic Slide 37
CMOS VLSI Design
Min-Delay: 2-Phase Latches
1, 2 hold nonoverlap
cd cd ccq
t t t t t
   CL
Q1
D2
D2
Q1
1
L1
2
L2
1
2
tnonoverlap
tcd
thold
tccq
Hold time reduced by
nonoverlap
Sequential Logic Slide 38
CMOS VLSI Design
Min-Delay: Pulsed Latches
cd
t  CL
Q1
D2
Q1
D2
p tpw
p
L1
p
L2
tcd
thold
tccq
Hold time increased
by pulse width
Sequential Logic Slide 39
CMOS VLSI Design
Min-Delay: Pulsed Latches
hold
cd ccq pw
t t t t
   CL
Q1
D2
Q1
D2
p tpw
p
L1
p
L2
tcd
thold
tccq
Hold time increased
by pulse width
Sequential Logic Slide 40
CMOS VLSI Design
Time Borrowing
 In a flop-based system:
– Data launches on one rising edge
– Must setup before next rising edge
– If it arrives late, system fails
– If it arrives early, time is wasted
– Flops have hard edges
 In a latch-based system
– Data can pass through latch while transparent
– Long cycle of logic can borrow time into next
– As long as each loop completes in one cycle
Sequential Logic Slide 41
CMOS VLSI Design
Time Borrowing Example
Latch
Latch
Latch
Combinational Logic
Combinational
Logic
Borrowing time across
half-cycle boundary
Borrowing time across
pipeline stage boundary
(a)
(b)
Latch
Latch
Combinational Logic
Combinational
Logic
Loops may borrow time internally but must complete within the cycle
1
2
1 1
1
2
2
Sequential Logic Slide 42
CMOS VLSI Design
How Much Borrowing?
Q1
L1
1
2
L2
1
2
Combinational Logic 1
Q2
D1 D2
D2
Tc
Tc/2
Nominal Half-Cycle 1 Delay
tborrow
tnonoverlap
tsetup
 
borrow setup nonoverlap
2
c
T
t t t
  
2-Phase Latches
borrow setup
pw
t t t
 
Pulsed Latches
Sequential Logic Slide 43
CMOS VLSI Design
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
Sequential Logic Slide 44
CMOS VLSI Design
Skew: Flip-Flops
F1
F2
clk
clk clk
Combinational Logic
Tc
Q1 D2
Q1
D2
tskew
CL
Q1
D2
F1
clk
Q1
F2
clk
D2
clk
tskew
tsetup
tpcq
tpdq
tcd
thold
tccq
 
setup skew
sequencing overhead
hold skew
pd c pcq
cd ccq
t T t t t
t t t t
   
  
      

Sequential Logic Slide 45
CMOS VLSI Design
Skew: Latches
Q1
L1
1
2
L2
L3
1
1
2
Combinational
Logic 1
Combinational
Logic 2
Q2 Q3
D1 D2 D3
 
 
sequencing overhead
1 2 hold nonoverlap skew
borrow setup nonoverlap skew
2
,
2
pd c pdq
cd cd ccq
c
t T t
t t t t t t
T
t t t t
 
   
   
  
2-Phase Latches
 
 
setup skew
sequencing overhead
hold skew
borrow setup skew
max ,
pd c pdq pcq pw
cd pw ccq
pw
t T t t t t t
t t t t t
t t t t
    
   
  
            
Pulsed Latches
Sequential Logic Slide 46
CMOS VLSI Design
Two-Phase Clocking
 If setup times are violated, reduce clock speed
 If hold times are violated, chip fails at any speed
 Working chips are most important
– Analyzing clock skew difficult
 An easy way to guarantee hold times is to use 2-
phase latches with big nonoverlap times
 Call these clocks 1, 2 (ph1, ph2)
Sequential Logic Slide 47
CMOS VLSI Design
Safe Flip-Flop
 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
D

X
Q
Q







Sequential Logic Slide 48
CMOS VLSI Design
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 tol & borrow, hold time risk

More Related Content

PPTX
VLSI Design Sequential circuit design
PPT
Introduction to CMOS VLSI design Stick diagram.ppt
PPT
lecture 1 layout presentation of very large scale integration in digital elec...
PPT
PPSX
Delay Calculation in CMOS Chips Using Logical Effort by Prof. Akhil Masurkar
PPSX
Delay Calculation in CMOS Chips Using Logical Effort by Prof. Akhil Masurkar
PPT
lec23Concl.ppt
PPT
CMOS VLSI Design.312313131312pp3213123213313123t
VLSI Design Sequential circuit design
Introduction to CMOS VLSI design Stick diagram.ppt
lecture 1 layout presentation of very large scale integration in digital elec...
Delay Calculation in CMOS Chips Using Logical Effort by Prof. Akhil Masurkar
Delay Calculation in CMOS Chips Using Logical Effort by Prof. Akhil Masurkar
lec23Concl.ppt
CMOS VLSI Design.312313131312pp3213123213313123t

Similar to VLSI DESIGN LECTURE NOTE 10 SEQUENTIAL CIRCUITS.ppt (20)

PPT
Introduction to cmos in vlsi to seek for knowledge
PDF
Lecture on Introduction to VLSI circuits and layouts
PPTX
CMOS VLSI CKSequentialCircuitDesign.pptx
PPT
Cadence Conformal Logic Equivalance Check
PPTX
Circuit Level Modelling Simulink Projects Research Help
PPT
EEE 4157_Lecture_10_11_12_13.ppt
PDF
synopsys logic synthesis
PDF
2016 ch4 delay
PPT
Circuits layouts design in VLSI design and Testing
PPT
lect1-cktlay 12345678901222222222222222222222222
PPT
CMOS VLSI Design: Lecture 1: Circuit & Layout
PPT
lect1-Circuits and Layout_design and testing of VLSI.ppt
PPT
Lect 1 - cktlay.ppt
PPT
lect1-circuits and layout.ppt
PPT
SEQ LOGIC DESGIN DAFAFQWFASFASFASFASFASFASF
PPT
Dynamic CMOS and Domino logic design .ppt
PPTX
Latch & Flip-Flop Design.pptx
PPTX
Latch & Flip-Flop.pptx
PPT
Lecture on Adders in VLSI Design in ECE Engineering
Introduction to cmos in vlsi to seek for knowledge
Lecture on Introduction to VLSI circuits and layouts
CMOS VLSI CKSequentialCircuitDesign.pptx
Cadence Conformal Logic Equivalance Check
Circuit Level Modelling Simulink Projects Research Help
EEE 4157_Lecture_10_11_12_13.ppt
synopsys logic synthesis
2016 ch4 delay
Circuits layouts design in VLSI design and Testing
lect1-cktlay 12345678901222222222222222222222222
CMOS VLSI Design: Lecture 1: Circuit & Layout
lect1-Circuits and Layout_design and testing of VLSI.ppt
Lect 1 - cktlay.ppt
lect1-circuits and layout.ppt
SEQ LOGIC DESGIN DAFAFQWFASFASFASFASFASFASF
Dynamic CMOS and Domino logic design .ppt
Latch & Flip-Flop Design.pptx
Latch & Flip-Flop.pptx
Lecture on Adders in VLSI Design in ECE Engineering
Ad

More from wesenderbe (6)

PPTX
Artificial Intelligences -CHAPTER 1_1.pptx
PPTX
Chapter 4.Intelligent Networks last.pptx
PPT
chapter -2 Intelligent Agents power Point .ppt
PPTX
TCP/IP protocol Chapter_4, Network layer
PPTX
Multistage switching Blocking Probability.pptx
PDF
physical and data linkphysical and data link.pdf
Artificial Intelligences -CHAPTER 1_1.pptx
Chapter 4.Intelligent Networks last.pptx
chapter -2 Intelligent Agents power Point .ppt
TCP/IP protocol Chapter_4, Network layer
Multistage switching Blocking Probability.pptx
physical and data linkphysical and data link.pdf
Ad

Recently uploaded (20)

PPTX
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PPTX
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
PDF
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
PPTX
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
PPTX
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
PDF
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
PDF
TFEC-4-2020-Design-Guide-for-Timber-Roof-Trusses.pdf
PPTX
UNIT 4 Total Quality Management .pptx
PDF
Operating System & Kernel Study Guide-1 - converted.pdf
PPTX
Geodesy 1.pptx...............................................
PDF
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
PDF
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
PPTX
Lecture Notes Electrical Wiring System Components
PDF
Embodied AI: Ushering in the Next Era of Intelligent Systems
PDF
Model Code of Practice - Construction Work - 21102022 .pdf
PPTX
UNIT-1 - COAL BASED THERMAL POWER PLANTS
PPTX
CYBER-CRIMES AND SECURITY A guide to understanding
PDF
R24 SURVEYING LAB MANUAL for civil enggi
PPTX
IOT PPTs Week 10 Lecture Material.pptx of NPTEL Smart Cities contd
PDF
Mitigating Risks through Effective Management for Enhancing Organizational Pe...
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
TFEC-4-2020-Design-Guide-for-Timber-Roof-Trusses.pdf
UNIT 4 Total Quality Management .pptx
Operating System & Kernel Study Guide-1 - converted.pdf
Geodesy 1.pptx...............................................
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
Lecture Notes Electrical Wiring System Components
Embodied AI: Ushering in the Next Era of Intelligent Systems
Model Code of Practice - Construction Work - 21102022 .pdf
UNIT-1 - COAL BASED THERMAL POWER PLANTS
CYBER-CRIMES AND SECURITY A guide to understanding
R24 SURVEYING LAB MANUAL for civil enggi
IOT PPTs Week 10 Lecture Material.pptx of NPTEL Smart Cities contd
Mitigating Risks through Effective Management for Enhancing Organizational Pe...

VLSI DESIGN LECTURE NOTE 10 SEQUENTIAL CIRCUITS.ppt

  • 2. Sequential Logic Slide 2 CMOS VLSI Design Outline  Sequencing  Sequencing Element Design  Max and Min-Delay  Clock Skew  Time Borrowing  Two-Phase Clocking
  • 3. Sequential Logic Slide 3 CMOS VLSI Design Sequencing  Combinational logic – 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 CL clk in out clk clk clk CL CL Pipeline Finite State Machine
  • 4. Sequential Logic Slide 4 CMOS VLSI Design Sequencing Cont.  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 don’t catch slow ones.
  • 5. Sequential Logic Slide 5 CMOS VLSI Design 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
  • 6. Sequential Logic Slide 6 CMOS VLSI Design 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 D Flop Latch Q clk clk D Q clk D Q (latch) Q (flop)
  • 7. Sequential Logic Slide 7 CMOS VLSI Design 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 D Flop Latch Q clk clk D Q clk D Q (latch) Q (flop)
  • 8. Sequential Logic Slide 8 CMOS VLSI Design Latch Design  Pass Transistor Latch  Pros + +  Cons – – – – – – D Q 
  • 9. Sequential Logic Slide 9 CMOS VLSI Design Latch Design  Pass Transistor Latch  Pros + Tiny + Low clock load  Cons – Vt drop – nonrestoring – backdriving – output noise sensitivity – dynamic – diffusion input D Q  Used in 1970’s
  • 10. Sequential Logic Slide 10 CMOS VLSI Design Latch Design  Transmission gate + - D Q  
  • 11. Sequential Logic Slide 11 CMOS VLSI Design Latch Design  Transmission gate + No Vt drop - Requires inverted clock D Q  
  • 12. Sequential Logic Slide 12 CMOS VLSI Design Latch Design  Inverting buffer + + + Fixes either • • – D   X Q D Q  
  • 13. Sequential Logic Slide 13 CMOS VLSI Design Latch Design  Inverting buffer + Restoring + No backdriving + Fixes either • Output noise sensitivity • Or diffusion input – Inverted output D   X Q D Q  
  • 14. Sequential Logic Slide 14 CMOS VLSI Design Latch Design  Tristate feedback + –     Q D X
  • 15. Sequential Logic Slide 15 CMOS VLSI Design Latch Design  Tristate feedback + Static – Backdriving risk  Static latches are now essential     Q D X
  • 16. Sequential Logic Slide 16 CMOS VLSI Design Latch Design  Buffered input + +   Q D X  
  • 17. Sequential Logic Slide 17 CMOS VLSI Design Latch Design  Buffered input + Fixes diffusion input + Noninverting   Q D X  
  • 18. Sequential Logic Slide 18 CMOS VLSI Design Latch Design  Buffered output +   Q D X  
  • 19. Sequential Logic Slide 19 CMOS VLSI Design 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   Q D X  
  • 20. Sequential Logic Slide 20 CMOS VLSI Design Latch Design  Datapath latch + -     Q D X
  • 21. Sequential Logic Slide 21 CMOS VLSI Design Latch Design  Datapath latch + Smaller, faster - unbuffered input     Q D X
  • 22. Sequential Logic Slide 22 CMOS VLSI Design Flip-Flop Design  Flip-flop is built as pair of back-to-back latches D Q     X D     X Q Q    
  • 23. Sequential Logic Slide 23 CMOS VLSI Design Enable  Enable: ignore clock when en = 0 – Mux: increase latch D-Q delay – Clock Gating: increase en setup time, skew D Q Latch D Q en en   Latch D Q  0 1 en Latch D Q  en D Q  0 1 en D Q  en Flop Flop Flop Symbol Multiplexer Design Clock Gating Design
  • 24. Sequential Logic Slide 24 CMOS VLSI Design Reset  Force output low when reset asserted  Synchronous vs. asynchronous D     Q Q     reset D       Q   D reset   Q   D reset reset   reset Synchronous Reset Asynchronous Reset Symbol Flop D Q Latch D Q reset reset     Q reset
  • 25. Sequential Logic Slide 25 CMOS VLSI Design Set / Reset  Set forces output high when enabled  Flip-flop with asynchronous set and reset D       Q   reset set reset set
  • 26. Sequential Logic Slide 26 CMOS VLSI Design Sequencing Methods  Flip-flops  2-Phase Latches  Pulsed Latches Flip-Flops Flop Latch Flop clk 1 2 p clk clk Latch Latch p p 1 1 2 2-Phase Transparent Latches Pulsed Latches Combinational Logic Combinational Logic Combinational Logic Combinational Logic Latch Latch Tc Tc /2 tnonoverlap tnonoverlap tpw Half-Cycle 1 Half-Cycle 1
  • 27. Sequential Logic Slide 27 CMOS VLSI Design Timing Diagrams Flop A Y tpd Combinational Logic A Y D Q clk clk D Q Latch D Q clk clk D Q tcd tsetup thold tccq tpcq tccq tsetup thold tpcq tpdq tcdq tpd Logic Prop. Delay tcd Logic Cont. Delay tpcq Latch/Flop Clk-Q Prop Delay tccq Latch/Flop Clk-Q Cont. Delay tpdq Latch D-Q Prop Delay tpcq Latch D-Q Cont. Delay tsetup Latch/Flop Setup Time thold Latch/Flop Hold Time Contamination and Propagation Delays
  • 28. Sequential Logic Slide 28 CMOS VLSI Design Max-Delay: Flip-Flops F1 F2 clk clk clk Combinational Logic Tc Q1 D2 Q1 D2 tpd tsetup tpcq   sequencing overhead pd c t T        
  • 29. Sequential Logic Slide 29 CMOS VLSI Design Max-Delay: Flip-Flops F1 F2 clk clk clk Combinational Logic Tc Q1 D2 Q1 D2 tpd tsetup tpcq   setup sequencing overhead pd c pcq t T t t        
  • 30. Sequential Logic Slide 30 CMOS VLSI Design Max Delay: 2-Phase Latches Tc Q1 L1 1 2 L2 L3 1 1 2 Combinational Logic 1 Combinational Logic 2 Q2 Q3 D1 D2 D3 Q1 D2 Q2 D3 D1 tpd1 tpdq1 tpd2 tpdq2   1 2 sequencing overhead pd pd pd c t t t T          
  • 31. Sequential Logic Slide 31 CMOS VLSI Design Max Delay: 2-Phase Latches Tc Q1 L1 1 2 L2 L3 1 1 2 Combinational Logic 1 Combinational Logic 2 Q2 Q3 D1 D2 D3 Q1 D2 Q2 D3 D1 tpd1 tpdq1 tpd2 tpdq2   1 2 sequencing overhead 2 pd pd pd c pdq t t t T t       
  • 32. Sequential Logic Slide 32 CMOS VLSI Design Max Delay: Pulsed Latches Tc Q1 Q2 D1 D2 Q1 D2 D1 p p p Combinational Logic L1 L2 tpw (a) tpw > tsetup Q1 D2 (b) tpw < tsetup Tc tpd tpdq tpcq tpd tsetup   sequencing overhead max pd c t T           
  • 33. Sequential Logic Slide 33 CMOS VLSI Design Max Delay: Pulsed Latches Tc Q1 Q2 D1 D2 Q1 D2 D1 p p p Combinational Logic L1 L2 tpw (a) tpw > tsetup Q1 D2 (b) tpw < tsetup Tc tpd tpdq tpcq tpd tsetup   setup sequencing overhead max , pd c pdq pcq pw t T t t t t               
  • 34. Sequential Logic Slide 34 CMOS VLSI Design Min-Delay: Flip-Flops cd t  CL clk Q1 D2 F1 clk Q1 F2 clk D2 tcd thold tccq
  • 35. Sequential Logic Slide 35 CMOS VLSI Design Min-Delay: Flip-Flops hold cd ccq t t t   CL clk Q1 D2 F1 clk Q1 F2 clk D2 tcd thold tccq
  • 36. Sequential Logic Slide 36 CMOS VLSI Design Min-Delay: 2-Phase Latches 1, 2 cd cd t t  CL Q1 D2 D2 Q1 1 L1 2 L2 1 2 tnonoverlap tcd thold tccq Hold time reduced by nonoverlap
  • 37. Sequential Logic Slide 37 CMOS VLSI Design Min-Delay: 2-Phase Latches 1, 2 hold nonoverlap cd cd ccq t t t t t    CL Q1 D2 D2 Q1 1 L1 2 L2 1 2 tnonoverlap tcd thold tccq Hold time reduced by nonoverlap
  • 38. Sequential Logic Slide 38 CMOS VLSI Design Min-Delay: Pulsed Latches cd t  CL Q1 D2 Q1 D2 p tpw p L1 p L2 tcd thold tccq Hold time increased by pulse width
  • 39. Sequential Logic Slide 39 CMOS VLSI Design Min-Delay: Pulsed Latches hold cd ccq pw t t t t    CL Q1 D2 Q1 D2 p tpw p L1 p L2 tcd thold tccq Hold time increased by pulse width
  • 40. Sequential Logic Slide 40 CMOS VLSI Design Time Borrowing  In a flop-based system: – Data launches on one rising edge – Must setup before next rising edge – If it arrives late, system fails – If it arrives early, time is wasted – Flops have hard edges  In a latch-based system – Data can pass through latch while transparent – Long cycle of logic can borrow time into next – As long as each loop completes in one cycle
  • 41. Sequential Logic Slide 41 CMOS VLSI Design Time Borrowing Example Latch Latch Latch Combinational Logic Combinational Logic Borrowing time across half-cycle boundary Borrowing time across pipeline stage boundary (a) (b) Latch Latch Combinational Logic Combinational Logic Loops may borrow time internally but must complete within the cycle 1 2 1 1 1 2 2
  • 42. Sequential Logic Slide 42 CMOS VLSI Design How Much Borrowing? Q1 L1 1 2 L2 1 2 Combinational Logic 1 Q2 D1 D2 D2 Tc Tc/2 Nominal Half-Cycle 1 Delay tborrow tnonoverlap tsetup   borrow setup nonoverlap 2 c T t t t    2-Phase Latches borrow setup pw t t t   Pulsed Latches
  • 43. Sequential Logic Slide 43 CMOS VLSI Design 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
  • 44. Sequential Logic Slide 44 CMOS VLSI Design Skew: Flip-Flops F1 F2 clk clk clk Combinational Logic Tc Q1 D2 Q1 D2 tskew CL Q1 D2 F1 clk Q1 F2 clk D2 clk tskew tsetup tpcq tpdq tcd thold tccq   setup skew sequencing overhead hold skew pd c pcq cd ccq t T t t t t t t t               
  • 45. Sequential Logic Slide 45 CMOS VLSI Design Skew: Latches Q1 L1 1 2 L2 L3 1 1 2 Combinational Logic 1 Combinational Logic 2 Q2 Q3 D1 D2 D3     sequencing overhead 1 2 hold nonoverlap skew borrow setup nonoverlap skew 2 , 2 pd c pdq cd cd ccq c t T t t t t t t t T t t t t              2-Phase Latches     setup skew sequencing overhead hold skew borrow setup skew max , pd c pdq pcq pw cd pw ccq pw t T t t t t t t t t t t t t t t                          Pulsed Latches
  • 46. Sequential Logic Slide 46 CMOS VLSI Design Two-Phase Clocking  If setup times are violated, reduce clock speed  If hold times are violated, chip fails at any speed  Working chips are most important – Analyzing clock skew difficult  An easy way to guarantee hold times is to use 2- phase latches with big nonoverlap times  Call these clocks 1, 2 (ph1, ph2)
  • 47. Sequential Logic Slide 47 CMOS VLSI Design Safe Flip-Flop  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 D  X Q Q       
  • 48. Sequential Logic Slide 48 CMOS VLSI Design 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 tol & borrow, hold time risk