stringtranslate.com

Metaestabilidad (electrónica)

Figura 1. Una ilustración de la metaestabilidad en un sincronizador , donde los datos se cruzan entre dominios de reloj. En el peor de los casos, dependiendo del tiempo, la condición metaestable en D s puede propagarse hacia D y a través de la siguiente lógica hacia más partes del sistema, provocando un comportamiento indefinido e inconsistente.

En electrónica , la metaestabilidad es la capacidad de un sistema electrónico digital de persistir durante un tiempo ilimitado en un equilibrio inestable o estado metaestable . [1] En los circuitos lógicos digitales , se requiere que una señal digital esté dentro de ciertos límites de voltaje o corriente para representar un nivel lógico '0' o '1' para el correcto funcionamiento del circuito; si la señal está dentro de un rango intermedio prohibido, puede provocar un comportamiento defectuoso en las puertas lógicas a las que se aplica la señal. En estados metaestables, es posible que el circuito no pueda establecerse en un nivel lógico estable '0' o '1' dentro del tiempo requerido para el funcionamiento adecuado del circuito. Como resultado, el circuito puede actuar de manera impredecible y puede provocar una falla del sistema, a veces denominada "falla". [2] La metaestabilidad es un ejemplo de la paradoja del culo de Buridan .

Los estados metaestables son características inherentes de los sistemas digitales asíncronos y de los sistemas con más de un dominio de reloj independiente . En los sistemas asíncronos autocronometrados , los árbitros están diseñados para permitir que el sistema continúe solo después de que se haya resuelto la metaestabilidad, por lo que la metaestabilidad es una condición normal, no una condición de error. [3] En sistemas síncronos con entradas asíncronas, los sincronizadores están diseñados para hacer que la probabilidad de un fallo de sincronización sea aceptablemente pequeña. [4] Los estados metaestables se pueden evitar en sistemas totalmente síncronos cuando se satisfacen los requisitos de configuración de entrada y tiempo de retención en los flip-flops.

Ejemplo

Figura 2. Ejemplo de pestillo NOR de configuración y reinicio

Se puede encontrar un ejemplo simple de metaestabilidad en un pestillo SR NOR , cuando las entradas Set y Reset son verdaderas (R=1 y S=1) y luego ambas pasan a falsas (R=0 y S=0) aproximadamente al mismo tiempo. tiempo. Ambas salidas Q y Q se mantienen inicialmente en 0 mediante las entradas simultáneas Set y Reset. Después de que las entradas Set y Reset cambian a falsas, el flip-flop terminará (eventualmente) en uno de dos estados estables, uno de Q y Q verdadero y el otro falso. El estado final dependerá de cuál de R o S regresa primero a cero, cronológicamente, pero si ambos hacen la transición aproximadamente al mismo tiempo, la metaestabilidad resultante, con niveles de salida intermedios u oscilatorios, puede tardar arbitrariamente en resolverse a un estado estable.

Árbitros

En electrónica, un árbitro es un circuito diseñado para determinar cuál de varias señales llega primero. Los árbitros se utilizan en circuitos asíncronos para ordenar actividades computacionales para recursos compartidos para evitar operaciones incorrectas simultáneas. Los árbitros se utilizan en las entradas de sistemas totalmente síncronos, y también entre dominios de reloj, como sincronizadores de señales de entrada. Aunque pueden minimizar la aparición de metaestabilidad a probabilidades muy bajas, todos los árbitros tienen estados metaestables, que son inevitables en los límites de las regiones del espacio de estados de entrada , lo que da como resultado diferentes salidas. [5]

Circuitos sincrónicos

Figura 3. Este registro de desplazamiento de 4 bits actúa como sincronizador. A medida que los datos de entrada no sincronizados0 viajan a través de cada etapa del flip-flop, su probabilidad de permanecer metaestable disminuye dramáticamente, ya que casi un ciclo de reloj completo está disponible durante cada etapa para resolver una posible metaestabilidad de la etapa anterior.

Las técnicas de diseño de circuitos síncronos crean circuitos digitales que son resistentes a los modos de falla que pueden ser causados ​​por la metaestabilidad. Un dominio de reloj se define como un grupo de flip-flops con un reloj común. Dichas arquitecturas pueden formar un circuito garantizado libre de metaestabilidad (por debajo de una cierta frecuencia máxima de reloj, por encima de la cual primero ocurre metaestabilidad y luego falla absoluta), suponiendo un reloj común con baja desviación . Sin embargo, incluso entonces, si el sistema depende de entradas continuas, es probable que éstas sean vulnerables a estados metaestables. [6]

Los circuitos sincronizadores se utilizan para reducir la probabilidad de metaestabilidad al recibir una entrada asíncrona o al transferir señales entre diferentes dominios de reloj. Los sincronizadores pueden adoptar la forma de una cascada de flip-flops D (por ejemplo, el registro de desplazamiento de la Figura 3). [7] Aunque cada etapa del flip-flop agrega un ciclo de reloj adicional de latencia al flujo de datos de entrada, cada etapa brinda la oportunidad de resolver la metaestabilidad. Estos sincronizadores pueden diseñarse para reducir la metaestabilidad a un ritmo insignificante pero tolerable.

Los desencadenantes de Schmitt también se pueden utilizar para reducir la probabilidad de metaestabilidad, pero como demostró el investigador Chaney en 1979, incluso los desencadenantes de Schmitt pueden volverse metaestables. Además, argumentó que no es posible eliminar por completo la posibilidad de metaestabilidad de entradas no sincronizadas en un tiempo finito y que "hay una gran cantidad de evidencia teórica y experimental de que existe una región de comportamiento anómalo para cada dispositivo que tiene dos estados estables. " Frente a esta inevitabilidad, el hardware sólo puede reducir la probabilidad de metaestabilidad, y los sistemas pueden intentar manejar con gracia el evento metaestable ocasional. [8]

Modos de fallo

Aunque la metaestabilidad se comprende bien y se conocen técnicas arquitectónicas para controlarla, persiste como un modo de falla en los equipos.

Los graves errores informáticos y de hardware digital causados ​​por la metaestabilidad tienen una historia social fascinante. Muchos ingenieros se han negado a creer que un dispositivo biestable pueda entrar en un estado que no es ni verdadero ni falso y que tiene una probabilidad positiva de permanecer indefinido durante un período de tiempo determinado, aunque con una probabilidad decreciente exponencialmente con el tiempo. [9] [10] [11] [12] [13] Sin embargo, la metaestabilidad es un resultado inevitable de cualquier intento de asignar un dominio continuo a uno discreto. En los límites en el dominio continuo entre regiones que se asignan a diferentes salidas discretas, los puntos arbitrariamente cercanos en el dominio continuo se asignan a diferentes salidas, lo que toma una decisión sobre qué salida seleccionar en un proceso difícil y potencialmente largo. [14] Si las entradas a un árbitro o flip-flop llegan casi simultáneamente, lo más probable es que el circuito atraviese un punto de metaestabilidad. La metaestabilidad sigue siendo poco comprendida en algunos círculos, y varios ingenieros han propuesto sus propios circuitos que supuestamente resuelven o filtran la metaestabilidad; normalmente, estos circuitos simplemente desplazan la aparición de metaestabilidad de un lugar a otro. [15] Los chips que utilizan múltiples fuentes de reloj a menudo se prueban con relojes de prueba que tienen relaciones de fase fijas, no con relojes independientes que se adelantan entre sí como se experimentarán durante la operación. Por lo general, esto evita explícitamente que se vea o informe el modo de falla metaestable que ocurrirá en el campo. Las pruebas adecuadas de metaestabilidad emplean frecuentemente relojes de frecuencias ligeramente diferentes y garantizan el funcionamiento correcto del circuito.

Ver también

Referencias

  1. ^ Thomas J. Chaney y Charles E. Molnar (abril de 1973). "Comportamiento anómalo de los circuitos sincronizador y árbitro" (PDF) . Transacciones IEEE en computadoras . C-22 (4): 421–422. doi :10.1109/TC.1973.223730. ISSN  0018-9340. S2CID  12594672.
  2. ^ Chaney, Thomas J. "Mi trabajo sobre todas las cosas metaestables O yo y mi falla" (PDF) . Archivado desde el original (PDF) el 8 de diciembre de 2015 . Consultado el 5 de noviembre de 2015 .
  3. ^ John Bainbridge (2002). Interconexión asíncrona de sistema en chip. Saltador. pag. 18.ISBN 978-1-85233-598-4.
  4. ^ Chaney, Thomas J. ""Reimpresión del Memorando técnico nº 10, "The Glitch Phenomenon" (1966)"".Universidad de Washington en San Luis
  5. ^ Richard F. Yesca (2009). Diseño y análisis de máquinas secuenciales asíncronas: un desarrollo integral del diseño y análisis de máquinas y sistemas de estados independientes del reloj. Editores Morgan y Claypool. pag. 165.ISBN 978-1-59829-689-1.
  6. ^ Kleeman, L.; Cantoni, A. "Metastable Behavior in Digital Systems" diciembre de 1987 ". Diseño y prueba de computadoras IEEE . 4 (6): 4–19. doi :10.1109/MDT.1987.295189. S2CID  1895434.
  7. ^ APDahlen (19 de octubre de 2023). "Implementación de un sincronizador de límites de reloj en Verilog". Foro de soluciones de ingeniería y componentes electrónicos de DigiKey . Archivado desde el original el 5 de diciembre de 2023 . Consultado el 17 de febrero de 2024 .
  8. ^ Chaney, Thomas (1979). "Comentarios sobre" Una nota sobre el mal funcionamiento del sincronizador o del enclavamiento"". Transacciones IEEE en computadoras . C-28 (10): 802–804. doi :10.1109/TC.1979.1675252. ISSN  0018-9340.
  9. ^ Harris, Sara; Harris, David (2015). Diseño digital y arquitectura informática: edición ARM. Morgan Kaufman. págs. 151-153. ISBN 978-0128009116.
  10. ^ Ginosar, corrió (2011). "Metaestabilidad y sincronizadores: un tutorial" (PDF) . Centro de Investigación de Sistemas VLSI . Departamento de Ingeniería Eléctrica y Ciencias de la Computación, Technion—Instituto de Tecnología de Israel, Haifa., pag. 4-6
  11. ^ Xanthopoulos, Tucídides (2009). "Fichaje en sistemas VLSI modernos ". Springer Science and Business Media. pag. 196.ISBN 978-1441902610., pag. 196, 200, ecuaciones. 6-29
  12. ^ "Introducción a la metaestabilidad" (PDF) . Nota de Aplicación AN-219 . Semiconductor Phillips. 1989 . Consultado el 20 de enero de 2017 .
  13. ^ Arora, Mohit (2011). El arte de la arquitectura de hardware: métodos y técnicas de diseño para circuitos digitales. Springer Science and Business Media. ISBN 978-1461403975., pag. 4-5, ecuaciones. 1-1
  14. ^ Leslie Lamport (febrero de 2012) [diciembre de 1984]. "Principio de Buridán" (PDF) . Consultado el 9 de julio de 2010 .
  15. ^ Corrió Ginosar. "Catorce formas de engañar a su sincronizador" ASYNC 2003.

enlaces externos