Title: 332:437 Lecture 16 FSM Synchronizers
1332437 Lecture 16 FSM Synchronizers
- Synchronization failure
- Runt pulses
- Simple synchronizers
- Synchronizer timing
- Handshake interface techniques
- Summary
Material from An Engineering Approach to Digital
Design, by William I. Fletcher, Englewood Cliffs,
NJ Prentice-Hall
2Synchronization of Systems
- Needed when merging independent systems on
different clocks - Problem System controller needs to know when or
within what time frame it can expect input
changes from controlled/controlling systems
3Consequences of Synchronization Failure
- Input Changes missed by system controller
- Undefined state transitions occur
4Input changing Near Triggering Edge of Clock
5Output Cell in Meta-Stable Condition from Runt
Pulse
6Meta-Stable Condition of Flip-Flop
7Example Synchronizer Catching Cell
- Catching cell converts Pulse into level
8Synchronizer with Explicit Reset from System
Controller
SYNCHD INPUT(H)
9Synching Operation of the Pulse-Catching Circuits
10Synchronizer Timing Considerations
- May be impractical to increase system clock
frequency for synchronization - Need to instead catch input pulse hold it until
system controller can service it. - fp frequency of input pulse
- fc Clock frequency
- tp Period of input pulse
- tc Period of Clock
- First assume that fp lt fc
11Synchronizer Based on These Assumptions
- tp lt tc So, tp short infrequent in relation
to system clock - State changes of system controller made on rising
edge of system clock - Time period between falling rising edge of
system clock gt systems setting time
12Missed Short Asynchronous Input
13Level Synchronization When tp gtgt tc
- Catching level that changes asynchronously with
respect to system clock - Use same circuit as before, but omit catching cell
14Problem with Asynchronous Inputs
- Changes in inputs may cause outputs of next state
decoder to change during set-up hold times of
flip-flops - Causes erratic behavior of present-state register
15Handshake Interface Technique
- One party stimulates second party
- Second party signals first to acknowledge receipt
of signal - First party can now initiate another transaction
16Handshake Between Systems Operating Asynchronously
17Problem
- Internal input changes in one of the systems
being synchronized can cause transient electrical
noise on output control lines. - May have to design special circuits to sense
noise transient and delay action until it damps
out.
18Summary
- Synchronization failure
- Runt pulses
- Simple synchronizers
- Synchronizer timing
- Handshake interface techniques