La metastabilidad no se puede "curar", pero si espera lo suficiente , la probabilidad de que ocurra puede hacerse arbitrariamente pequeña. Una vez que lo hayas reducido a una vez en la edad del universo, es probable que no te cause problemas.
Es como balancear un lápiz en su punto. Es probable que se caiga, y cuanto más espere, menos probable es que permanezca de pie.
Hay dos problemas con la espera durante mucho tiempo, y uno de ellos es fundamental.
El problema fundamental es que si tiene un solo elemento de memoria (pestillo o flip-flop, ambos sufren metástasis) en un sistema temporizado que recibe la salida de un sistema externo asíncrono, entonces físicamente no puede definir un límite inferior para el tiempo de espera, a veces la señal externa hará una transición cerca del borde de control de enganche. Tienes que canalizar la señal a otro flip-flop para que espere allí. Esto le da un tiempo de espera mínimo garantizado de un ciclo de reloj.
El segundo problema es que a menudo se intenta ejecutar un sistema lo más rápido posible, y la velocidad de reloj del sistema no puede reducirse para dar suficiente tiempo en el segundo flip-flop. La única forma de aumentar la latencia de la señal a lo que es necesario, sin disminuir el rendimiento, es canalizar la espera a más etapas.
Algunas personas tienen problemas para visualizar lo que está sucediendo entre los flip-flops. Hay dos formas de inducir la metastabilidad, y ambas implican violar las reglas del flip-flop. Una forma es violar la configuración de entrada y los tiempos de espera, para hacer una transición cuando el flip-flop espera que la entrada sea estable. La otra es violar los niveles lógicos de entrada, para hacer que la entrada de datos del flip-flop se sitúe en un nivel de voltaje intermedio. Un flip-flop que sea metaestable puede producir cualquier tipo de violación en su salida, para pasar en cascada al siguiente flip-flop.