0% found this document useful (0 votes)
335 views8 pages

7 Clocking Strategies

This document summarizes a lecture on clocking strategies in VLSI systems. It discusses how clocks help define states in finite state machines and synchronize timing. It covers latch and flip-flop timing parameters and compares pulse mode, edge-triggered, two-phase, and single-phase clocking strategies. It also discusses clock skew, jitter, and qualified clocks. The goal is to break feedback loops with latches or flip-flops while meeting timing constraints for correct circuit operation.

Uploaded by

Ernest Tiong
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
335 views8 pages

7 Clocking Strategies

This document summarizes a lecture on clocking strategies in VLSI systems. It discusses how clocks help define states in finite state machines and synchronize timing. It covers latch and flip-flop timing parameters and compares pulse mode, edge-triggered, two-phase, and single-phase clocking strategies. It also discusses clock skew, jitter, and qualified clocks. The goal is to break feedback loops with latches or flip-flops while meeting timing constraints for correct circuit operation.

Uploaded by

Ernest Tiong
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

Clock - key to synchronous systems Lecture 7 Clocking Strategies in VLSI Systems

Peter Cheung Department of Electrical & Electronic Engineering Imperial College London

Clocks help the design of FSM where outputs depend on both input and previous states. Clock signals provide reference points in time - define what is previous state, current state and next state:

URL: www.ee.ic.ac.uk/pcheung/ E-mail: [email protected]


1-Feb-05 E4.20 Digital IC Design Lecture 7 - 1 1-Feb-05 E4.20 Digital IC Design Lecture 7 - 2

Latch vs Flip-Flop

Clock for timing synchronization


Clocks serve to slow down signals that are too fast
Flip-flops / latches act as barriers With a latch, a signal cant propagate through until the clock is high With a Flip-flop, the signal only propagates through on the rising edge All real flip-flops consist of two latch like elements (master and slave latch)

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 3

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 4

Latch Timing Parameters

Flip-flop Timing Parameters

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 5

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 6

Typical Clock System


Clocking Overhead
Latches and flops slow down the slow signals Flip-flop delays the slowest signal by the setup + clk-q delay Latches delay the late arriving signals by the delay through the latch

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 7

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 8

Problem of Clock Skew


Not all clocks arrive at the same time Some clocks might be gated (ANDed with a control signal) or buffered There is an RC delay associated with clock wire Causes two problems The cycle time gets longer by the skew

Clock Skew and Jitter


Clock skew
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

Both skew and jitter affect the effective cycle time Only skew affects the race margin

The part can get the wrong answer

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 9

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 10

Longest Logic Path - Edge Triggered


Shortest Path Constraint


Unger and Tran, Trans. On Comp. 10/86

If launching edge is early and receiving edge is late:

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 11

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 12

Clocking Strategies

Pulse Mode Clocking


Trade off between overhead / robustness / complexity Constraints on the logic vs. Constraints on the clocks Look at a number of different clocking methods:
Pulse mode clocking Edge triggered clocking Two phase clocking Single phase clocking

Two requirements:
All loops of logic are broken by a single latch The clock is a narrow pulse

It must be shorter than the shortest path through the logic

We will only look at system level strategy - consider clocked circuits in the next lecture

Timing Requirements

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 13

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 14

+Pulse Mode Clocking


Edge Trigger Flip-flop


Used in the original Cray computers (ECL machines) Advantage is it has a very small clocking overhead
One latch delay added to cycle

Popular TTL design style Used in many ASIC designs (Gate Arrays and Std Cells) Using a single clock, but replaces latches with flip-flops

Leads to double sided timing constraints


If logic is too slow OR too fast, the system will fail

Pulse width is critical


Hard to maintain narrow pulses through inverter chains

People are starting to use this type of clocking for MOS circuits
Pulse generation is done in each latch. Clock distributed is 50% duty cycle CAD tools check min delay

Timing Constraints
tdmax < tcycle - tsetup - tclk-q - tskew tdmin > tskew + thold - tclk-q

Not a good clocking strategy for a beginning designer


If skew is large enough, still have two sided timing constraints

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 15

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 16

Two phase clocking


Two phase clocking


Use different edges for latching the data and changing the output

Look at shift register again: If there is a large skew on the 2x clock, then the spacing between 1 and 2 can be increased to make sure that even with the skew, the 2 latch closes before the 1 latch lets the new data pass. For some setting of the timing of the clock edges, the circuit will work!

There are 4 different time periods, all under user control: 1 high 1 falling to 2 rising 2 high 2 falling to 1 rising

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 17

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 18

Stable signal type


General two phase system


We will give signals timing types, so it will be easier to know which latch to use: Output of a 1 latch is stable 2 (_s2) good input to 2 latch Output of a 2 latch is stable 1 (_s1) good input to 1 latch Signal is called stable2, since it is stable for the entire 2 period

Combination logic does not change the value of timing types. No static feedback in the combination logic is allowed either. This makes the system not sensitive to logic glitches.

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 19

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 20

Why two phase clocking?


Mealey and Moore Machines

It is a constrained clocking style:


Synchronous design Two clocks Constrained composition rules

But gives this guarantee: If you clock it slow enough (with enough non-overlap between edges)
It will be a level sensitive design no race, glitch, or hazard problems no skew problems One sided timing constraints Impossible for logic to be too fast

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 21

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 22

More on latch timing


Valid Signal Type


Look a little more closely at latches, to come up with a more complete set of timing types (more than _s1 _s2 signals) that we can use in our synchronous designs.
Look at a latch since this the critical element

The weakest input to a latch is called a valid signal (_v1 _v2)


For a valid signal we need to be sure we can guarantee it meets the setup and hold requirements of the latch

What is the weakest requirement on the input to a latch? Signal must settle before 1 falls, and not change for some time after 1 falling, even for a skewed 1 (this is usually called the setup and hold times of the latch)

To do this we need to have the signal settle off an edge that comes before 1 falling. The closest edge is 1 rising. The signal should not change until an edge occurs that comes after 1 falling. The closest edge is 2 rising. If we changed the input on 1 falling, most of the time the circuit would work fine. But if it failed, we cant change the clock timing to make the circuit work -- 1 falling controls the changing of the input, and the closing of the latch. Since we cant guarantee it would be ok a signal that changes on 1 falling would not be a _v1 signal.

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 23

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 24

Use of valid signal


Stable Signals

Very useful for precharged logic Is not needed for standard combinational logic with latches
This should always give stable signals

Cant use stable signals if you want to drive two signals/cycle on a wire (multiplex the wire), since the value has to change twice. There are many wrong ways to do it, and only one right way, which is shown below. The values become _v signals.

Have even larger timing margins than valid signals A _s1 signal starts to change sometime after 2 rises A _s1 signal settles sometime after 2 rises Input to the latch must be a _v2 (settles after 2 rises) Output of a latch settles some small delay after input settles
Please note that combinational logic does not change the value of the timing type, even though it does increase the delay of the signal path. The timing types have to do with the clocking guarantee that we are trying to keep. This promise is that the circuit will work at some frequency. A _s1 signal might not settle until after 1 rises when the part is run at high-frequency, but the label means that you can make that signal stabilize before 1 rises if you need to by slowing the clock down.

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 25

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 26

Qualified (Gated) Clocks


Summary of Clock Types


These are signals that have the same timing as clocks, but they dont occur every cycle. They are formed by ANDing a _s1 signal with 1 giving _q1, or ANDing a _s2 signal with 2 giving a _q2 signal. The control signal needs to be a stable signal to prevent glitches on the qualified clocks. Qualified clocks can only be used as the clock input to a latch

The figure shows the timing of all the signals we have discussed with little arrows that indication with clock edge caused the signal to change. Remember the pictures, and the timing types are what the signals look like at slow clock frequencies

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 27

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 28

Disadvantages of two phase clocking


Advantage of Latches Over Flip-Flops


Need four clocks in general


Need true and complement of both clocks

Still need low skew for good performance


The skew increases the cycle time of the machine Need low skew between all the clocks for good performance Want to have 1 and 2 close to coincident

If you are going to use Clk and Clk_b and control skew, why not go back to flip-flops? Many people do:
Most designs in industry are based on flip-flops Very easy to verify timing Each path between flip-flops must be less than cycle time Tools check for skew and hold time violations Short paths are padded (buffers are added to slow down the signals) Skew in flip-flop based systems affects the critical path Gives the designer more rope Need to CAD tools to make sure it works Can borrow time to allow a path to be longer than clock period Can tolerate clock skew -- skew does not directly add to cycle time

Many systems use clock and its complement instead of 2 phases


Needless to say they are very careful about clock skew For these systems it is still useful to maintain 2 phase timing types, since it ensures you connect all logic to the right latches Call Clk - 1 and Clk - 2, and go from there. Note in this class we will use 1 and 2 for clocks)

Latch designs are more flexible than a flip-flop design


1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 29

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 30

Single-phase Clocking

Latch-based Design with Single-phase clock

Unger and Tan, Trans. On Comp Oct 86

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 31

1-Feb-05

E4.20 Digital IC Design

Lecture 7 - 32

You might also like