Un circuito insensible al retardo es un tipo de circuito asíncrono que realiza una operación lógica digital a menudo dentro de un chip de procesador informático. En lugar de utilizar señales de reloj u otras señales de control global , la secuencia de cálculo en un circuito insensible al retardo está determinada por el flujo de datos.
Los datos fluyen de un elemento del circuito a otro utilizando "apretones de manos" o secuencias de transiciones de voltaje para indicar la disposición para recibir datos o la disposición para ofrecer datos. Por lo general, las entradas de un módulo de circuito indicarán su disponibilidad para recibir, lo que será "reconocido" por la salida conectada mediante el envío de datos (codificados de tal manera que el receptor pueda detectar la validez directamente [1] ), y una vez que los datos ha sido recibido de forma segura, el receptor lo reconocerá explícitamente, permitiendo que el remitente elimine los datos, completando así el apretón de manos y permitiendo que se transmita otro dato.
En un circuito insensible al retardo, no hay necesidad de proporcionar una señal de reloj para determinar la hora de inicio de un cálculo. En cambio, la llegada de datos a la entrada de un subcircuito activa el inicio del cálculo. En consecuencia, el siguiente cálculo puede iniciarse inmediatamente cuando se completa el resultado del primer cálculo.
La principal ventaja de estos circuitos es su capacidad para optimizar el procesamiento de actividades que pueden tomar períodos de tiempo arbitrarios según los datos o la función solicitada. Un ejemplo de un proceso con un tiempo variable de finalización sería la división matemática o la recuperación de datos cuando dichos datos podrían estar en una caché .
La clase Delay-Insensitive (DI) es la más robusta de todos los modelos de retardo de circuito asíncrono . No hace suposiciones sobre el retraso de los cables o puertas. En este modelo, todas las transiciones en puertas o cables deben reconocerse antes de volver a realizar la transición. Esta condición evita que se produzcan transiciones invisibles. En los circuitos DI, cualquier transición en una entrada a una puerta debe verse en la salida de la puerta antes de que se permita una transición posterior en esa entrada. Esto obliga a que algunos estados o secuencias de entrada se vuelvan ilegales. Por ejemplo, las puertas OR nunca deben entrar en el estado en el que ambas entradas son una, ya que la entrada y la salida de este estado no se verán en la salida de la puerta. Aunque este modelo es muy robusto, no es posible realizar circuitos prácticos debido a la falta de condicionales expresables en los circuitos DI. [2] En cambio, el modelo Cuasi-Delay-Insensible es el modelo de compromiso más pequeño hasta ahora capaz de generar circuitos informáticos útiles. Por esta razón, los circuitos a menudo se denominan incorrectamente como insensibles al retardo cuando son cuasi insensibles al retardo.
Ver también
Referencias
- ^ Verhoeff, Tom (enero de 1987). "Códigos insensibles al retraso: una descripción general" .
- ^ Martin, Alain. "Las limitaciones de la insensibilidad al retardo en circuitos asincrónicos" (PDF) .
enlaces externos
- "Códigos no sensibles al retardo: descripción general" de Tom Verhoeff
- "TITAC: Diseño de un microprocesador casi insensible al retardo" por Takashi Nanya et al. 1994
- "Una propuesta de bus casi insensible al retardo para sistemas asincrónicos" por Pedro A. Molina y Peter YK Cheung 1997
- "Los circuitos cuasi-insensibles al retardo son Turing-Complete" por Manohar, Rajit y Martin, Alain J. (1995)
- "EDIS, la enciclopedia de sistemas insensibles al retraso" editado por Tom Verhoeff