Ken said:
This is to avoid metastability I believe?
The main issue is what I explained : related to temporal incoherence of
the same signal distributed to several paths.
Metastability is another issue, but it's much less severe than sometimes
believed. _Every_ time I inspected failures that were believed to be
related with metastability, the issue was a (more or less) simple lack
of resynchronization...
Also, resynching using the flops only *reduces* the probability of
metastability to acceptable levels (reduced further by using 2) - it does
not completely eliminate it - correct?
What would your suggestion be ?
The correct answer (if any) is an mtbf calculation, but it's often
difficult to get all the parameters related with a given technology.
Usually, knowing your technology, the input change rate and your
sampling clock frequency gives you an idea of whether you should get
concerned by metastability through a single Flop or not. Indeed, the
type of application can make lots of difference. Failues may have much
different consequences according to the design. A set-top box is less
critical than a plane.
In most current situations, the mtbf through 2 flops is simply well
above other mtbfs sourcing from other factors.