El uso de sincronizadores 2ff ha sido un estándar para que una señal cruce los límites del reloj. Y hay muchos documentos/figuras que ilustran el mecanismo, como este:
Parece que bclk sólo puede muestrear el pulso de adat una vez (en el segundo flanco de subida de bclk ), que provoca la metaestabilidad de la salida en bq1_dat . ¿Cómo puede bq1_dat se muestreará en "alto" en el siguiente flanco de reloj activo?
Además de mi pregunta, me gustaría añadir lo que pienso para que una señal pase con seguridad a otro dominio de reloj (supongamos que 2-FF es suficiente para satisfacer el requisito de MTBF). Por favor, corregidme si hay algún error.
ps: El estado metaestable no muestra una forma de onda "errante", sino un nivel que no es ni '1' ni '0'. La siguiente figura muestra un ejemplo de salida metaestable.
La cifra original procede de Notas de clase para EE108A, Clase 13: Metastability and Synchronization Failure (ow When Good Flip-Flops go Bad) por W. J. Dally.