This page is a drill. The parent note built the physics; here we hammer every kind of number the topic can throw at you. Before the examples, we lay out a scenario matrix — a checklist of every case-class — then work examples until every cell is covered.
Everything on this page uses one master formula. Let us re-state it so no symbol is unexplained.
T c l k
T c l k = the clock period — the time between two consecutive clock edges, in seconds. It is just the reciprocal of the clock frequency:
T c l k = f c l k 1 .
Picture the clock as a metronome ticking; T c l k is the gap between ticks. A 100 MHz clock ticks 1 0 8 times/second, so T c l k = 1/1 0 8 = 10 ns . Why we need it: each extra synchronizer flip-flop hands the previous one one whole T c l k of extra resolving time — so T c l k is literally the "grace per flop".
Intuition Why the exponent dominates everything below
t r sits inside e ( ⋅ ) ; f c l k and f d a t a sit outside as a plain product. So a change to t r (or τ ) moves MTBF by a multiplicative explosion , while a change to a frequency moves it only proportionally. Watch this asymmetry re-appear in every example.
The figure above is the mental model for the whole page: MTBF plotted against slack t r on a log vertical axis. Because ln ( MTBF ) is linear in t r , the curve is a straight line — every nanosecond of t r you add climbs a fixed number of decades. Steeper line = smaller τ = a faster-resolving flip-flop.
#
Case class
What makes it tricky
Covered by
A
Baseline single-number MTBF
plug-and-chug, get units right
Ex 1
B
Add one flip-flop (2→3 FF)
t r gains a whole clock period
Ex 2
C
Change t r by a small amount
exponential sensitivity
Ex 3
D
Double the clock frequency
f c l k up and t r down — two effects
Ex 4
E
Solve backwards for t r given a required MTBF
invert the exponential with a logarithm
Ex 5
F
Degenerate: t r = 0 (no slack)
limiting value, worst case
Ex 6
G
Degenerate: f d a t a → 0 (signal never changes)
zero input → infinite MTBF
Ex 6
H
Real-world word problem (button press)
translate English → symbols
Ex 7
I
Exam twist: compare two designs
fast-slow-FF trade-off, ratio t r / τ
Ex 8
Every cell A–I gets hit below. Let us go.
Several examples must undo the exponential — given an MTBF target, find the t r that produces it. The exponential e x answers "start at 1, grow by factor e each unit of x — where do I land?" . Its inverse, the natural logarithm ln , answers the reverse question: "I landed here — how many units of growth did that take?" . So whenever t r is the unknown hiding inside e t r / τ , we take ln of both sides. That is the only new tool on this page; the rest is multiply/divide.
A 2-FF synchronizer runs at f c l k = 50 MHz , with f d a t a = 1 MHz , τ = 0.25 ns , T 0 = 0.5 ns . The slack is t r = 15 ns . Find the MTBF.
Forecast: Guess an order of magnitude first — seconds? years? longer than the universe? Write it down before reading on.
Step 1 — Convert everything to base units (seconds, Hz).
f c l k = 5 × 1 0 7 , f d a t a = 1 × 1 0 6 , τ = 2.5 × 1 0 − 10 , T 0 = 5 × 1 0 − 10 , t r = 1.5 × 1 0 − 8 .
Why this step? The formula multiplies rates by times; mixing ns and Hz silently gives a wrong power of ten. Fix units once, up front.
Step 2 — Compute the exponent t r / τ .
τ t r = 2.5 × 1 0 − 10 1.5 × 1 0 − 8 = 60.
Why this step? This dimensionless ratio ("how many resolving time-constants of grace we allow") is the only thing inside e . It is the single most important number on the whole page.
Step 3 — Compute the prefactor T 0 f c l k f d a t a .
5 × 1 0 − 10 ⋅ 5 × 1 0 7 ⋅ 1 × 1 0 6 = 2.5 × 1 0 4 s − 1 .
Why this step? This is the raw entry rate into the danger window (failures/sec before any resolving help). Units: s ⋅ s − 1 ⋅ s − 1 = s − 1 ✓.
Step 4 — Assemble.
MTBF = 2.5 × 1 0 4 e 60 = 2.5 × 1 0 4 1.14 × 1 0 26 ≈ 4.6 × 1 0 21 s .
Verify: 4.6 × 1 0 21 s ÷ ( 3.15 × 1 0 7 s/yr ) ≈ 1.4 × 1 0 14 years — trillions of times the age of the universe. Units land in seconds (dimensionless numerator over a s − 1 prefactor). Sanity: enormous, as a good synchronizer should be. ✓
Same device as Ex 1 but now compare a 2-FF vs a 3-FF synchronizer. Each extra flip-flop adds one whole clock period T c l k = 1/ f c l k = 20 ns of resolution time (recall the T c l k definition above). By what factor does MTBF grow going 2-FF → 3-FF?
Forecast: Guess the multiplier — 2×? 100×? Bigger?
Step 1 — Find the extra t r .
Adding an FF adds Δ t r = T c l k = 20 ns = 2 × 1 0 − 8 s .
Why this step? The new flip-flop gives the previous one a full clock period to settle before anyone looks — that entire period is bonus t r .
Step 2 — Only the exponential changes.
The prefactor T 0 f c l k f d a t a is untouched (same rates, same device). So the ratio is
MTBF 2 MTBF 3 = e t r / τ e ( t r + Δ t r ) / τ = e Δ t r / τ .
Why this step? Dividing kills every common factor — the messy prefactor cancels, leaving a pure exponential of the added slack. This is why "add a flop" is such a powerful, cheap fix.
Step 3 — Evaluate.
τ Δ t r = 2.5 × 1 0 − 10 2 × 1 0 − 8 = 80 , e 80 ≈ 5.5 × 1 0 34 .
Verify: The multiplier is astronomically bigger than the whole 2-FF MTBF was — one extra flip-flop turns "trillions of years" into a number with 30+ more zeros. Independent of the prefactor, which is exactly why designers reach for it. See Positive Feedback and Regeneration for why each period multiplies exponentially. ✓
Using τ = 0.2 ns , by what factor does MTBF change if you gain just 1 ns of extra slack?
Forecast: One nanosecond out of ten sounds like +10%. Is that what MTBF does?
Step 1 — Isolate the effect of Δ t r = 1 ns .
As in Ex 2, MTBF ratio = e Δ t r / τ because prefactors cancel.
Why this step? We only care about the change , so everything constant divides out.
Step 2 — Evaluate.
τ Δ t r = 0.2 ns 1 ns = 5 , e 5 ≈ 148.4.
Why this step? 1 ns buys 5 time-constants of extra resolving — and each time-constant is one factor of e .
Verify: A "+10% of the clock" tweak in time becomes a 148× jump in reliability. This is the exponential-sensitivity lesson: never reason about MTBF linearly. ✓
Start from Ex 1 (f c l k = 50 MHz , t r = 15 ns , τ = 0.25 ns , prefactor terms as given). Now double the clock to 100 MHz . Assume t r scales down with the period: doubling f c l k halves T c l k , cutting t r by 7.5 ns to t r ′ = 7.5 ns . Does MTBF change by a modest factor?
Forecast: "I doubled the clock so failures maybe double" — guess the real MTBF ratio.
Step 1 — Track the outside factor. Doubling f c l k doubles the prefactor T 0 f c l k f d a t a , which divides MTBF by 2. That is the small, linear effect.
Why this step? f c l k sits outside the exponent, so it can only push MTBF around proportionally.
Step 2 — Track the inside factor. t r falls from 15 ns to 7.5 ns , i.e. Δ t r = − 7.5 ns . The exponent changes by
τ Δ t r = 2.5 × 1 0 − 10 − 7.5 × 1 0 − 9 = − 30 , e − 30 ≈ 9.4 × 1 0 − 14 .
Why this step? This is the exponential term — a catastrophic collapse, dwarfing the factor-of-2.
Step 3 — Combine.
MTBF slow MTBF fast = 2 1 ⋅ e − 30 ≈ 4.7 × 1 0 − 14 .
Verify: MTBF didn't "halve" — it dropped by ~14 orders of magnitude. The exponential term (from lost t r ) buried the factor-of-2 (from higher f c l k ). This confirms the parent note's Forecast-then-Verify: faster clocks make metastability dramatically worse , forcing 3-FF synchronizers (Clock Domain Crossing (CDC) ). ✓
A safety spec demands MTBF ≥ 1 0 9 years. Given τ = 0.3 ns , T 0 = 1 ns , f c l k = 200 MHz , f d a t a = 2 MHz , what is the minimum t r you must provide?
Forecast: A billion years is a huge target — will you need nanoseconds, or something impossibly long?
Step 1 — Convert the target to seconds.
1 0 9 yr × 3.15 × 1 0 7 s/yr = 3.15 × 1 0 16 s .
Why this step? The formula lives in seconds; the spec is in years. Convert or the log misfires.
Step 2 — Rearrange the formula for t r . Start from MTBF = P e t r / τ with prefactor P = T 0 f c l k f d a t a . Multiply up and take ln :
e t r / τ = MTBF ⋅ P ⇒ t r = τ ln ( MTBF ⋅ P ) .
Why this step? t r is trapped inside e ; the natural log is the exact tool that frees it (see the "Tool check" above).
Step 3 — Compute the prefactor.
P = 1 × 1 0 − 9 ⋅ 2 × 1 0 8 ⋅ 2 × 1 0 6 = 4 × 1 0 5 s − 1 .
Step 4 — Plug in.
MTBF ⋅ P = 3.15 × 1 0 16 ⋅ 4 × 1 0 5 = 1.26 × 1 0 22 ,
ln ( 1.26 × 1 0 22 ) ≈ 51.0 , t r = 0.3 ns × 51.0 ≈ 15.3 ns .
Verify: Forward-check — e 15.3/0.3 = e 51 ≈ 1.4 × 1 0 22 , divide by P = 4 × 1 0 5 → ≈ 3.5 × 1 0 16 s ≈ 1.1 × 1 0 9 yr ≥ 1 0 9 yr. ✓ Reassuringly, a billion-year target needs only ~15 ns of slack — the exponential is generous.
Two edge cases the formula must survive: (F) zero slack t r = 0 ; (G) a data signal that never toggles, f d a t a → 0 .
Forecast: For each, guess whether MTBF is zero, finite, or infinite.
Step 1 — Case F: t r = 0 . Set the exponent to zero:
MTBF = T 0 f c l k f d a t a e 0 = T 0 f c l k f d a t a 1 .
Why this step? e 0 = 1 removes all "resolving help". You are left with the bare entry rate — the reciprocal of "how often you fall in the hole". This is the worst-case floor : MTBF cannot be smaller than this for the given rates.
With Ex-1 numbers, floor = 1/ ( 2.5 × 1 0 4 ) = 4 × 1 0 − 5 s — a failure every 40 microseconds. Useless without slack.
Step 2 — Case G: f d a t a → 0 . Treat it as a limit , not literal division by zero. Hold everything else fixed and let f d a t a shrink toward zero:
lim f d a t a → 0 + MTBF = lim f d a t a → 0 + T 0 f c l k f d a t a e t r / τ = + ∞.
Why this step? The numerator is a fixed positive number; the denominator marches steadily to zero from above, so the quotient grows without bound. Physically: no data transition ⇒ nothing can ever be caught mid-flight ⇒ metastability becomes impossible, so the mean time between failures diverges to infinity. Writing it as a limit (rather than "divide by 0") is the mathematically honest way to say "never fails".
Verify: Both limits match physical intuition: no slack → protection collapses to the raw entry rate (finite, tiny MTBF); no transitions → MTBF → ∞ . The formula behaves sanely at both boundaries. A signal that is genuinely static across the domain needs no synchronizer — but see the parent's mistake: rare is not static . ✓
A human presses a push-button connected to a chip clocked at f c l k = 25 MHz . A person can't press faster than about f d a t a = 10 presses/second worst-case bounce, so take f d a t a = 10 Hz . The button feeds a 2-FF synchronizer with t r = 39 ns , τ = 0.3 ns , T 0 = 1 ns . Is one synchronizer "good enough"?
Forecast: Human presses are rare and slow. Guess: is MTBF centuries, or worryingly short?
Step 1 — Translate English → symbols. "Async button" → the press is unrelated to the clock, so it is a clock-domain crossing. Map: f c l k = 2.5 × 1 0 7 , f d a t a = 10 , t r = 3.9 × 1 0 − 8 , τ = 3 × 1 0 − 10 , T 0 = 1 × 1 0 − 9 .
Why this step? The hard part of a word problem is spotting which English phrase is which symbol; a slow human still counts as f d a t a .
Step 2 — Exponent.
τ t r = 3 × 1 0 − 10 3.9 × 1 0 − 8 = 130 , e 130 ≈ 2.6 × 1 0 56 .
Why this step? 130 time-constants of grace — thanks to a slow clock the period is long, giving huge t r .
Step 3 — Prefactor and assemble.
P = 1 × 1 0 − 9 ⋅ 2.5 × 1 0 7 ⋅ 10 = 0.25 s − 1 ,
MTBF = 0.25 2.6 × 1 0 56 ≈ 1.05 × 1 0 57 s .
Step 4 — Convert to years and conclude.
MTBF = 3.15 × 1 0 7 s/yr 1.05 × 1 0 57 s ≈ 3.3 × 1 0 49 years .
Why this step? Seconds are unreadable at this scale; years make the verdict obvious. Conclusion: one 2-FF synchronizer is massively good enough — in fact overkill. The slow f d a t a = 10 and the long clock period both push MTBF absurdly high.
Verify: Order-of-magnitude check — the exponent 130 dwarfs the tiny prefactor (0.25 ), so MTBF is dominated by e 130 . Compare with Ex 7's answer against Ex 4's collapse: the danger cases are fast async data , not slow buttons. ✓
Two candidate flip-flops, same T 0 = 1 ns , and the same design rates f c l k = 100 MHz , f d a t a = 5 MHz (so the prefactor is identical for both):
Design P (fast FF, tight slack): τ = 0.1 ns , t r = 4 ns .
Design Q (slower FF, generous slack): τ = 0.4 ns , t r = 20 ns .
Which is more reliable? The exam wants you to see that only the ratio t r / τ matters in the exponent.
Forecast: "Fast FF must win" — is that right? Guess the winner before computing.
Step 1 — Compute each exponent (the deciding quantity).
P: τ t r = 0.1 4 = 40 , Q: τ t r = 0.4 20 = 50.
Why this step? Same prefactor for both (identical T 0 , f c l k , f d a t a ), so MTBF is ranked purely by the exponent t r / τ — the dimensionless "grace in time-constants".
Step 2 — Compare via the ratio.
MTBF P MTBF Q = e 40 e 50 = e 50 − 40 = e 10 ≈ 2.2 × 1 0 4 .
Why this step? Dividing the two MTBFs cancels the identical prefactor, leaving a pure exponential of the difference in exponents. The winner is whoever has the larger t r / τ , and Q leads by 10.
Step 3 — Interpret. The slower flip-flop Q is about 2.2 × 1 0 4 (≈22,000×) more reliable, because its generous t r more than compensates for its larger τ . Speed alone is not the metric.
Verify: For a full sanity check compute both MTBFs outright. Prefactor P = 1 × 1 0 − 9 ⋅ 1 0 8 ⋅ 5 × 1 0 6 = 5 × 1 0 5 s − 1 . Then MTBF P = e 40 /5 × 1 0 5 ≈ 4.7 × 1 0 11 s and MTBF Q = e 50 /5 × 1 0 5 ≈ 1.0 × 1 0 16 s ; their ratio is indeed e 10 ≈ 2.2 × 1 0 4 . This confirms the parent's mistake #2 ("just use a faster FF"): MTBF depends on the ratio t r / τ , not τ alone. See Setup and Hold Time and Timing Analysis for how t r is budgeted. ✓
The figure above plots MTBF vs t r on a log axis for both designs — notice both are straight lines (log of an exponential is linear), and Q's operating point sits far higher than P's despite Q's gentler slope, because Q's larger t r carries it up the line.
Recall Quick self-test
A design gains 2 ns of slack; τ = 0.4 ns. MTBF multiplies by? ::: e 2/0.4 = e 5 ≈ 148 × .
You double f c l k and lose 6 ns of t r with τ = 0.2 ns. Dominant effect? ::: The exponential: e − 6/0.2 = e − 30 ≈ 9 × 1 0 − 14 , swamping the factor-of-2 from f c l k .
f d a t a → 0 gives MTBF = ? ::: Infinite — a never-changing signal can't be caught mid-transition.
Two designs, same prefactor: which wins? ::: The one with the larger ratio t r / τ .
What is T c l k in terms of f c l k ? ::: T c l k = 1/ f c l k — the gap between clock ticks.
"Ratio in the exponent, rates on the outside." Rank designs by t r / τ ; only worry about f c l k , f d a t a once the exponents tie.