stringtranslate.com

Lógica secuencial

En la teoría de los autómatas , la lógica secuencial es un tipo de circuito lógico cuya salida depende del valor presente de sus señales de entrada y de la secuencia de entradas pasadas, el historial de entradas. [1] [2] [3] [4] Esto contrasta con la lógica combinacional , cuya salida es función únicamente de la entrada actual. Es decir, la lógica secuencial tiene estado ( memoria ) mientras que la lógica combinacional no.

La lógica secuencial se utiliza para construir máquinas de estados finitos , un elemento básico en todos los circuitos digitales. Prácticamente todos los circuitos de los dispositivos digitales prácticos son una mezcla de lógica combinacional y secuencial.

Un ejemplo familiar de un dispositivo con lógica secuencial es un televisor con botones de "canal arriba" y "canal abajo". [1] Al presionar el botón "arriba", el televisor recibe una señal que le indica que cambie al siguiente canal por encima del que está recibiendo actualmente. Si el televisor está en el canal 5, al presionar "arriba" se cambia para recibir el canal 6. Sin embargo, si el televisor está en el canal 8, al presionar "arriba" se cambia al canal "9". Para que la selección de canales funcione correctamente, el televisor debe saber qué canal está recibiendo actualmente, lo cual fue determinado por selecciones de canales anteriores. [1] El televisor almacena el canal actual como parte de su estado . Cuando se le proporciona una entrada de "canal arriba" o "canal abajo", la lógica secuencial del circuito de selección de canal calcula el nuevo canal a partir de la entrada y el canal actual.

Los circuitos lógicos secuenciales digitales se dividen en tipos síncronos y asíncronos . En los circuitos secuenciales síncronos, el estado del dispositivo cambia sólo en momentos discretos en respuesta a una señal de reloj . En los circuitos asíncronos, el estado del dispositivo puede cambiar en cualquier momento en respuesta a cambios en las entradas.

Lógica secuencial síncrona

Casi toda la lógica secuencial actual es lógica síncrona o sincronizada . En un circuito síncrono, un oscilador electrónico llamado reloj (o generador de reloj ) genera una secuencia de pulsos repetitivos llamada señal de reloj que se distribuye a todos los elementos de memoria del circuito. El elemento de memoria básico en la lógica síncrona es el flip-flop . La salida de cada flip-flop solo cambia cuando es activada por el pulso del reloj, por lo que los cambios en las señales lógicas en todo el circuito comienzan al mismo tiempo, a intervalos regulares, sincronizados por el reloj.

La salida de todos los elementos de almacenamiento (flip-flops) del circuito en un momento dado, los datos binarios que contienen, se denomina estado del circuito. El estado del circuito síncrono sólo cambia con los pulsos de reloj. En cada ciclo, el siguiente estado está determinado por el estado actual y el valor de las señales de entrada cuando ocurre el pulso del reloj.

La principal ventaja de la lógica síncrona es su simplicidad. Las puertas lógicas que realizan las operaciones con los datos requieren una cantidad finita de tiempo para responder a los cambios en sus entradas. Esto se llama retraso de propagación . El intervalo entre pulsos de reloj debe ser lo suficientemente largo para que todas las puertas lógicas tengan tiempo de responder a los cambios y sus salidas se "establezcan" en valores lógicos estables antes de que ocurra el siguiente pulso de reloj. Siempre que se cumpla esta condición (ignorando otros detalles determinados), se garantiza que el circuito será estable y confiable. Esto determina la velocidad máxima de funcionamiento del circuito síncrono.

La lógica síncrona tiene dos desventajas principales:

Lógica secuencial asincrónica

La lógica secuencial asíncrona ( sin reloj o temporizada automáticamente ) no está sincronizada mediante una señal de reloj; las salidas del circuito cambian directamente en respuesta a cambios en las entradas. La ventaja de la lógica asíncrona es que puede ser más rápida que la lógica síncrona, porque el circuito no tiene que esperar una señal de reloj para procesar las entradas. La velocidad del dispositivo está potencialmente limitada únicamente por los retardos de propagación de las puertas lógicas utilizadas.

Sin embargo, la lógica asíncrona es más difícil de diseñar y está sujeta a problemas que no se encuentran en los diseños síncronos. El principal problema es que los elementos de la memoria digital son sensibles al orden en que llegan sus señales de entrada; Si dos señales llegan a un flip-flop o pestillo casi al mismo tiempo, el estado al que entra el circuito puede depender de qué señal llega primero a la puerta. Por lo tanto, el circuito puede entrar en un estado incorrecto, dependiendo de pequeñas diferencias en los retardos de propagación de las puertas lógicas. Esto se llama condición de carrera . Este problema no es tan grave en los circuitos síncronos porque las salidas de los elementos de memoria sólo cambian con cada pulso de reloj. El intervalo entre señales de reloj está diseñado para ser lo suficientemente largo como para permitir que las salidas de los elementos de memoria se "establezcan" de modo que no cambien cuando llegue el siguiente reloj. Por lo tanto, los únicos problemas de sincronización se deben a "entradas asincrónicas"; entradas al circuito desde otros sistemas que no están sincronizados con la señal del reloj.

Los circuitos secuenciales asíncronos generalmente se usan solo en algunas partes críticas de sistemas que de otro modo serían síncronos donde la velocidad es muy importante, como partes de microprocesadores y circuitos de procesamiento de señales digitales .

El diseño de lógica asincrónica utiliza diferentes modelos y técnicas matemáticas de la lógica síncrona, y es un área activa de investigación.

Ver también

Referencias

  1. ^ abc Vai, M. Michael (2000). Diseño VLSI. Prensa CRC . pag. 147.ISBN​ 0-84931876-9.
  2. ^ Cavanagh, José (2006). Lógica secuencial: análisis y síntesis. Prensa CRC . pag. IX. ISBN 0-84937564-9.
  3. ^ Lipiansky, Ed (2012). Conceptos básicos de hardware eléctrico, electrónico y digital para científicos e ingenieros. Wiley . pag. 8.39. ISBN 978-1-11841454-5.
  4. ^ Dally, William James ; Harting, R.Curtis (2012). Diseño digital: un enfoque de sistemas. Prensa de la Universidad de Cambridge . pag. 291.ISBN 978-0-52119950-6.

Otras lecturas