Anda di halaman 1dari 26

Arbitation and

Metastability
Presented by: Sampurna Ganguly
Ark Mahata
Viswajeet Paul
Arbitation & Metastability

• Introduction
• Discussion
• Fixes
• Conclusion
A ‘D’ Flip-flop as an Arbiter

Q
D
Q’

clock clock
D D
Q Q
What Happens Now?

CLOCK Ts Th

Flip-Flop Specification Says: Nothing


Nothing
Buridan’s Ass
Didn’t I learn
about this thing?

Buridan, Jean
Buridan, Jean (1300-58), French Scholastic philosopher, Buridan is associated with
a philosophical dilemma of moral choice called "Buridan's ass" In the
problem an ass starves to death between two alluring bundles of hay
because it does not have the will to decide which one to eat.
The Game Show Arbiter
Terminator A Terminator B

Arbiter

A wins B Wins
A Simpler Arbiter

AA AAwins
wins

BBwins
wins
BB
With Both Inputs High

H
Static Metastability

Vin Vout
Vin Vout R
A
i C
Vout = Vin
Vout > Vin
Vout

Vout < Vin

Vin
Static Metastability
Inverted Pendulum Analogy

Potential Energy
m (mgh)

left up right
What does Heisenberg Say ?

 x p  h
Heisenberg uncertainty principle
states by precise
inequalities that certain pairs of physical properties,
such as position and momentum, cannot be
simultaneously known to arbitrarily high
precision
What if we relax accuracy?
Who Won

Ta - Tb

Arbiter output
perfectly correct if | Ta - Tb | > Tmargin
if | Ta - Tb | <= Tmargin, output can be RANDOM
The Remarkable Fact

The perfect arbiter:


Tmargin and Tpd finite and constant
Correct Ouput if | Ta - Tb | > Tmargin
Any Output if | Ta - Tb | <= Tmargin
Answer valid and stable after Tpd

IT IS IMPOSSIBLE TO BUILD ! ! ! !
Is It Possible to Build This?

A B Answer:
The
Asynchronous
Arbiter: Winner Done
Yes
Yes
__________
Practical Metastability

Async. FSM
Inputs

Clock
Async. Async.
Inputs
Inputs FSM FSM

Clock
Clock

Async.
Inputs FSM

Clock
A Simple Model of Static
Metstability
Assume Vout = A Vin (i.e. not saturated)
Vin Vout R
A
i=
(A
(A--1)
1)Vin
Vin//RR
i C

Vout
1 Vin(t) =E tt(A
(A- -1)1)/ /( (RRCC) )
E
Vin

-1
Evolution of Vout

Vout
1

time

-1
How Small must Vin(0) be
to make time to saturation take
longer than time t?
t / 1
Vin ( t )  Vin ( 0 )e 
A

Vin ( 0 )  1/(A
1/(Aee t/tau)) == ee -t/tau //A
t/tau -t/tau
A
If Vin(0) is uniformly distributed

Vin

1/(A
1/(Aee t/tau) = e -t/tau
t/tau
) = e -t/tau//AA
p metastable (t) = __________________________
But if Vin is in linear rise/fall a certain fraction
(p transition) of the time:

Vin

p metastable(t)=_________________
pptransition /(A
transition /(Aeet/tau ))==(p
t/tau
(ptransition / /A)
transition A) ee-t/tau
-t/tau
How much time do we need
to achieve a certain pmetastable?

Ptransition t /
Pmetstable (t )  e
A
t / Ptransition
e 
A  Pmetstable (t )
Ptransition
t   ln( )
A  Pmetstable (t )
Example:
How Long for 1 failure / year?
100 MHz Clock (t = 10 ns) P
Pmetstable  transition e  t /
ptransition = 0.1 A
Ptransition
A = 10 t   ln( )
A  Pmetstable
t = 1 ns
Pmetstable = 1 / (100MHz . 1 year)
= 1 / (108 x p x 10 7 ) = p x 10 -16

t = 10 -9 ln( 0.1 / (10 x p x 10 -16 ) ) = about 31 ns

ttHow about 10 years instead


== (10^-9)ln(pi x of 1?
10^(-15))
(10^-9)ln(pi x 10^(-15))
== 33ns
33ns
How often will failures
occur if we wait 100 ns?
Ptransition t /
Pmetstable (t )  e
A
100
0.1 100 2
 e  10  10 ln(10 )

10
 45.4
 10
At 100 MHz, this is about 1 failure every 1030 YEARS!
Age of Hominids: 10 7
10 7
Age of Earth: 10 9
10 9
Age of Universe: 10 1010
10
Is this a Good Excuse
For Cruising a Light?

Honest ,
Your honour
It was
metastability…. You
Youget
get10
10 30Years!
30
Years!

Later in the day !!!


What ‘s the conclusion?
Thank you

Anda mungkin juga menyukai