Temporización activada por flanco sincronizado (retardo de contaminación)

6

Estoy leyendo un libro sobre arquitectura de computadoras, y dice que, en los dispositivos activados por flanco temporizado, el retraso de la contaminación generalmente es distinto de cero, y se supone que el retraso de la contaminación de los registros es mayor que su tiempo de retención ". dándole la importante propiedad de que sus entradas y salidas se pueden leer y escribir simultáneamente (es decir, mediante dispositivos similares que comparten la misma entrada de reloj) ".

Pero no entendí muy bien esta afirmación. Por lo que sé (soy muy nuevo en este tema), el retraso de la contaminación es un tiempo mínimo, medido después del borde del reloj activo, durante el cual la salida sigue siendo válida después de que la entrada haya cambiado (medida después del borde del reloj activo), y el tiempo de espera es un requisito de tiempo mínimo medido desde el borde del reloj activo, durante el cual los datos de entrada deben mantenerse estables. ¿Por qué el retraso de la contaminación del registro es mayor que el tiempo de espera y cómo este hecho permite que se lea y se escriba simultáneamente? ¿Podría alguien dar una explicación más detallada?

Actualización : entiendo básicamente la importancia de tener un retraso de contaminación mayor que el tiempo de espera en el flip-flop disparado por el borde en la situación donde hay dos flip-flops encadenados (es decir, la salida del primero sirve como entrada al segundo). Cuando el reloj sube, la entrada al primer flip-flop se muestrea y se propaga al segundo flip-flop. Luego, después de un período de reloj, cuando el reloj vuelve a subir, el segundo flip-flop muestrea su entrada. Pero la entrada del segundo flip-flop debe permanecer en el mismo valor durante al menos un tiempo de espera después de que se levante el reloj, si queremos que se almacene correctamente. Por lo tanto, el primer flip-flop debe garantizar que su salida (que es la entrada para el segundo flip-flop) no cambie durante al menos un tiempo de espera. Es decir, el retraso de contaminación del primer flip-flop debe ser al menos el tiempo de espera del segundo flip-flop.

¿Esto es correcto? La parte que no entiendo es por qué este hecho da a los registros "la propiedad importante de que sus entradas y salidas se pueden leer y escribir simultáneamente (es decir, por dispositivos similares que comparten la misma entrada de reloj)".

    
pregunta favq

3 respuestas

5

De mi libro de texto, Diseño digital y arquitectura de computadora , Harris y Harris, pág. 88

Una nota importante

Cuando intenta encontrar el retardo de propagación de un circuito combinado con varios elementos, debe agregar el retardo de propagación a través de la ruta crítica .

Sin embargo, cuando intenta encontrar el retraso de contaminación de un circuito combinado con varios elementos, debe agregar el retraso de contaminación a través de la ruta más corta .

Eso es probablemente obvio para ti.

En realidad, me parece que te refieres al retraso de la contaminación. Dijo que el retraso de contaminación es la cantidad de tiempo medida después de que una entrada cambia que la salida sigue siendo válida. Si te refieres a la salida anterior , entonces sí, porque eso significa lo mismo que hasta que la salida comience a cambiar al nuevo valor.

Adición

Acerca de su pregunta sobre cómo se trata esto de leer y escribir de un registro. Esto me confundió por un tiempo, pero creo que ahora tiene mucho sentido para mí.

Entonces, lo que dijo sobre el retraso de la contaminación y el tiempo de espera es correcto. Este problema se aplica cuando los flip-flops se encadenan en margarita. Y si lo piensas, también se aplica cuando quieres leer y escribir al mismo tiempo.

Imagina un circuito con solo 2 chanclas. No necesariamente tiene que ser un registro, solo que el primer flip-flop es el elemento de almacenamiento que está escrito a , y el segundo flip-flop es el elemento de almacenamiento que lee el primero. Si solo necesitara leer y escribir en diferentes ciclos de reloj, entonces nada de este retardo sería importante, porque la lectura siempre se produciría en un ciclo de reloj diferente cuando la salida del primero era estable y no podía cambiar, ya que la escritura puede Ocurren en el mismo ciclo de reloj.

Sin embargo, si desea escribir un nuevo valor en el primer flip-flop, así como leer el valor anterior correctamente en el segundo en el mismo ciclo de reloj, esa es la situación exacta que describió, donde si el retraso de contaminación La primera fue menor que el tiempo de espera de la segunda, luego escribir en la primera contaminaría la lectura de la segunda. Tiene perfecto sentido. La lectura debe realizarse correctamente antes de que la escritura comience a cambiar lo que se está leyendo, de lo contrario, el valor se perderá.

    
respondido por el krb686
1

Nunca antes había escuchado el término "retraso de contaminación", pero parece que estás hablando de los requisitos de tiempo de retención de entrada.

Los dispositivos de almacenamiento activados por flanco tienen una ventana de tiempo relativa al borde del reloj durante el cual la entrada debe mantenerse estable para capturar su valor de manera confiable (y evitar problemas de metastabilidad). El inicio de esta ventana se denomina "tiempo de configuración de entrada" y el final de la ventana se denomina "tiempo de retención de entrada". El tiempo de espera de entrada es a menudo cero, e incluso puede ser negativo.

La salida de tal dispositivo tiene una ventana de tiempo durante la cual cambiará si el nuevo valor es diferente del valor anterior. Por lo general, hay un tiempo mínimo de reloj a salida, también llamado "tiempo de espera de salida", que siempre es un valor positivo pequeño. También hay un tiempo máximo de propagación de reloj a salida, después del cual se garantiza que la salida tendrá el nuevo valor.

Su pregunta se relaciona con la relación entre el tiempo de espera de salida y el tiempo de espera de entrada. Siempre que el primero sea más grande que el segundo, las cadenas de dispositivos idénticos (por ejemplo, flip-flops en un registro de desplazamiento) se pueden conectar directamente, de salida a entrada, sin preocuparse por el comportamiento inesperado.

    
respondido por el Dave Tweed
0

Creo que el término "retraso de contaminación" se usa para referirse a la duración mínima posible entre el momento en que las entradas dejan de mantener sus niveles de entrada válidos anteriores y el momento más temprano en que las salidas pueden dejar de mantener sus niveles de salida válidos anteriores. El término "retraso mínimo de propagación" se usa a menudo para este propósito, pero dicho uso implica que el término "retraso de propagación" en realidad mide dos cosas:

  • La cantidad de tiempo entre el momento en que una entrada deja de ser una representación válida del nivel anterior y cuando se permite que la salida sea un nivel válido.

  • La cantidad de tiempo entre cuando una entrada asume un nivel lógico válido estable, y el tiempo por el cual se requiere que la salida asuma un nivel lógico estable.

Si se supone que una entrada dejará de ser un mínimo válido y se convertirá en un máximo válido, o viceversa, la referencia de inicio para estos dos tiempos será la misma. En algunos casos, sin embargo, pueden ser diferentes. Además, el término "retraso de propagación" generalmente implica que algo útil se está propagando, pero en algunos casos un estímulo de entrada puede causar una salida que era válida, y que debería permanecer en su estado actual, para volverse momentáneamente inválida antes de regresar al estado Se había celebrado anteriormente.

Imagine, por ejemplo, un circuito que se supone que tiene una salida "alta" cuando un contador de rizado de rizado de 16 bits tiene un valor de 32767 a 65534, inclusive. Idealmente, el circuito comenzaría a emitir un "alto" precisamente a la llegada del pulso 32.767 (asumiendo que el contador comenzó a cero) y bajaría a la llegada del pulso 65.535. Sin embargo, a falta de algunos circuitos adicionales, es posible que el circuito se agote brevemente con la llegada del pulso 32.768 (cuando debería estar sentado arriba), y que se agote brevemente con la llegada del pulso 65.536 (cuando debería estar sentado). bajo). Dependiendo de lo que haga la salida de "comparación", el hecho de que se invalide brevemente en esos pulsos puede o no ser un problema, pero parecería un poco incómodo pensar en su comportamiento en términos de "tiempo de propagación mínimo y máximo" ". En todos los casos en los que se supone que la salida debe cambiar, lo hará después de un retraso de flop y un par de retardos de puerta. Sin embargo, en algunos casos en los que no se supone que deba cambiar, lo hará de todos modos y permanecerá en el estado incorrecto durante 16 retrasos en el flop (mucho más que el tiempo requerido para un interruptor "apropiado"). Un término como "retraso de contaminación" puede ser más adecuado para eso.

    
respondido por el supercat

Lea otras preguntas en las etiquetas