Configurar y mantener el tiempo de salida cuando se viola

9

Considere un flip flop D activado por flanco positivo con señal de entrada X con un tiempo de configuración de 20 ns y un tiempo de retención de 0 ns. ¿Cuál será el resultado?

C es señal de reloj con un período de 40 ns.

Ingrese la descripción de la imagen aquí

Durante el sexto borde positivo, vemos que los datos (o X) no son estables durante 20 ns (tiempo de configuración) antes de pasar de 1 a 0. Entonces, la salida no es predecible, ¿verdad?

Cuando le pregunté esto a mi profesor, dijo que la salida del flip flop sería el valor de la entrada (X) antes de 20 ns, que es 1 aquí.

¿Es correcto?

Céfiro
fuente

Respuestas:

17

Si el tiempo de configuración del flip-flop es de 20 ns, significa que los datos deben ser estables al menos 20ns antes de la captura del borde del reloj. Del mismo modo, el tiempo de espera es la cantidad de tiempo, los datos tienen que permanecer estables después de que aparece un borde de reloj. Así que juntos definen una "ventana de configuración de retención", en la que los datos deben permanecer estables.

ingrese la descripción de la imagen aquí Si los datos cambian / cambian dentro de esta ventana, la salida es impredecible o metaestable.

En su pregunta, los datos se alternan dentro de la ventana de configuración antes del borde del sexto reloj, lo que significa que la salida es impredecible.

Mitu Raj
fuente
Tal vez puedas corregir a tu profesor tomo.
Mitu Raj
8
Y vale la pena mencionar que, dependiendo de los retrasos internos, los tiempos de espera pueden ser negativos. Es decir, para algunos circuitos integrados, puede liberar los datos antes de que llegue el borde del reloj. Pero queda una ventana en la que los datos deben ser estables.
WhatRoughBeast
1
Corrección menor: en los procesos modernos, la verdadera metaestabilidad solo ocurre en una ventana del orden de femtosegundos. La gran mayoría de los casos en los que se viola la configuración / retención no verá metaestabilidad. El resultado en estos casos será en realidad determinista pero altamente dependiente de la temperatura además de las entradas. Todavía no estaría de acuerdo con el profesor y estaría de acuerdo con usted en que el resultado es impredecible para todos los efectos, pero la metaestabilidad no es el problema (y de hecho rara vez es el problema).
jalalipop
7

Tu profesor necesita reducir las hierbas.

Dado que los datos están cambiando dentro del tiempo de configuración, y dado que el tiempo de configuración es una cantidad mínima de tiempo antes del reloj de que los datos deben ser estables, es imposible saber si la salida será cero o uno. De hecho, incluso podría entrar en un estado metaestable y oscilar.

Trevor_G
fuente
5

Si los datos son estables entre los tiempos de configuración y retención, entonces el fabricante del pestillo D garantiza que la salida del pestillo D será predecible, lo que dice que estará en la hoja de datos.

Si los datos cambian durante la configuración para mantener la ventana, entonces es probable que el resultado sea un 0 o 1 sólido, pero el fabricante no hace ninguna afirmación sobre cuál.

Es probable que sea un 0 o 1 sólido, no está garantizado. La salida podría ir metaestable. Esto significa que podría haber un tiempo extra finito e impredecible, más allá del retraso de propagación normal citado en la hoja de datos, para el cual dos puertas impulsadas por esta salida podrían tomar decisiones diferentes sobre si era un 0 o 1. Esto es una mala cosa.

Neil_UK
fuente
4

Si la entrada cumple con los requisitos de configuración y tiempo de espera, entonces la salida está esencialmente "garantizada" para reflejar la entrada; Si viola el tiempo de configuración, el comportamiento ya no está garantizado o es completamente predecible, como usted dice.

Su profesor puede estar "más o menos probablemente" justo en el sentido de que puede estar expresando lo que es probable que termine la señal de salida, especialmente si está interpretando el tiempo de configuración como una descripción determinista del comportamiento del flip-flop, en lugar de un requisito mínimo con una posible variación de un conjunto de condiciones al siguiente. Pero su interpretación e instintos están realmente en el blanco. Los tiempos de configuración y retención generalmente se usan para expresar valores mínimos / máximos para los cuales el comportamiento puede predecirse de manera confiable a través de las variaciones de proceso / voltaje / temperatura, y cada vez que la entrada los viola, la salida no puede predecirse de manera confiable .

Si el flip-flop generalmente tiene un retraso de hasta 20ns desde la entrada hasta donde el borde del reloj surte efecto, entonces es más probable que la salida termine siendo la entrada "alrededor" (hasta) 20ns antes del borde del reloj, como sugiere tu profesor. Pero lo único que se especifica para el dispositivo es que si se cumplen los tiempos de configuración y retención, la salida seguirá a la entrada.

Entonces, en otras palabras, puede que ambos tengan razón en un grado, pero su interpretación es 100% correcta, mientras que la respuesta de su profesor es "probablemente" correcta, y el grado en que su respuesta será correcta es, como usted dice, impredecible.

(Y, por supuesto, en un sentido práctico, en lugar de académico, solo usaría esa respuesta en un diseño en el que era aceptable que la salida en ese ciclo de reloj fuera "probablemente 1" sin ninguna especificación de cuán probable era eso o dónde no hubo consecuencias reales por hacer que el flip-flop entrara en un estado metaestable "por un tiempo". Esas aplicaciones tienden a ser más raras).

BobH
fuente
3

La salida será desconocida y un simulador lo reflejará al establecer el valor de salida en 'X'.

Viejo pedo
fuente