¿Qué es el jitter de un FIFO asíncrono?

Tengo un FIFO asíncrono (en un Stratix V FPGA) con dos relojes asíncronos de lectura y escritura de la misma frecuencia de 100 MHz. Según tengo entendido, los FIFO asíncronos tienen una etapa de resincronización de dos registros.

Debido a que las fases relativas de los dos relojes pueden desviarse hasta 10 ns, la fluctuación del FIFO es de al menos 10 ns. ¿Estoy en lo correcto? ¿La fluctuación de un FIFO asíncrono es al menos un ciclo de reloj? ¿Es más de un ciclo de reloj?

Respuestas (2)

Los FIFO asíncronos se caracterizan por su latencia estática , expresada como un número de ciclos completos en el dominio de origen (antes del cruce) y en el dominio de destino. El cruce en sí introduce fluctuaciones si no existe una relación exacta de fase y frecuencia entre los dos relojes. En su ejemplo, dice que la fase se desvía, para que esto suceda, la frecuencia del reloj debe ser ligeramente diferente. Tiene razón en que esto introduce 0-1 ciclos adicionales además de la latencia estática, dependiendo de si las señales del contador de código gris asincrónico aterrizan antes de la ventana de configuración (0) o caen en el siguiente ciclo (+1).

Los valores estáticos para las megafunciones dcfifo se encuentran en la GUI de megafunciones de Quartus y dependen de los parámetros que haya establecido; de lo contrario, puede medirlos y verlos en la simulación. Creo que es 1 ciclo antes, 2 ciclos después, por lo que 3 estáticos en el modo de presentación anticipada, por lo que en general 30-40 ns para su caso.

Debería haber una respuesta a esta pregunta en la hoja de datos del fabricante. Sé que es un documento extenso, pero le sugiero que lo examine. Además, jitter no es la palabra correcta para describir de lo que estás hablando. Jitter se refiere a variaciones aleatorias en la frecuencia del reloj en un solo reloj. De lo que está hablando es de la compensación del reloj (que variará según la fluctuación de los dos relojes, hasta 10 ns como usted dice). También diré que creo que lo que está haciendo es exactamente para lo que está diseñado ese tipo de FIFO, por lo que probablemente esté bien.