viernes, 6 de enero de 2017

CIRCUITOS SECUENCIALES

CIRCUITOS SECUENCIALES

      Los sistemas digitales que introducen la dependencia temporal son conocidos como sistemas secuenciales. Una definición más rigurosa de sistema secuencial puede ser la siguiente:

     Un circuito de conmutación secuencial se define como un circuito bivaluado en el cual, la salida en cualquier instante depende de las entradas en dicho instante y de la historia pasada (o secuencia) de entradas. 
         Esta definición implica una serie de características inherentes a estos sistemas. Entre éstas podemos destacar las siguientes:
• Poseen uno o más caminos de realimentación, es decir, una o más señales internas o de salida se vuelven a introducir como señales de entradas. Gracias a esta característica se garantiza la dependencia de la operación con la secuencia anterior.
 • Como es lógico, existe una dependencia explícita del tiempo. Esta dependencia se produce en los lazos de realimentación antes mencionados. En estos lazos es necesario distinguir entre las salidas y las entradas realimentadas. Esta distinción se traducirá en un retraso de ambas señales (en el caso más ideal), como se puede ver en la figura 1.2, el cual puede producirse mediante dos elementos:
 • Elementos de retraso, ya sean explícitos o implícitos debido al retraso de la lógica combinacional. Este retraso es fijo e independiente de cualquier señal.
• Elementos de memoria, que son dispositivos que almacena el valor de la entrada en un instante determinado por una señal externa y lo mantiene hasta que dicha señal ordene el almacenamiento de un nuevo valor. La diferencia de comportamiento entre ambos elementos radica en que la salida del elemento de retraso es una copia de la señal de entrada; mientras que el elemento de memoria copia determinados instantes de la entrada (determinados por una señal externa), y no la señal completa, el resto del tiempo la salida no cambia de valor, como podemos apreciar en la figura 1.2. 

Para que me entiendan un poco de que les hablo les mostrare el siguiente ejemplo:

-       -  En este caso, podemos observar que la salida del elemento de retraso es una copia de la señal de entrada retraso un determinado tiempo; mientras que la salida del elemento de memoria copia los valores de la entrada cuando la señal de control tiene una transición de subida, por lo que la copia no es exacta, sino que sólo copia lo que interesa. Por lo tanto, el modelo clásico de un sistema secuencial consta de un bloque combinacional, que generará la función lógica que queramos realizar, y un grupo de elementos de memoria con una serie de señales realimentadas, como se muestra en la figura 1.3.


    En ella podemos distinguir tres tipos de señales: señales de entradas, señales de salida y señales de estado. Las señales de entrada y salida tienen el mismo significado que en los sistemas combinacionales. En cambio, las señales de estado son aquellas que mantienen la información de la historia pasada del sistema. Las señales de estado tienen dos versiones, según se consideren a la salida o a la entrada del elemento de memoria:
  
 • Si consideramos las señales de estado a la salida de los elementos de memoria, o lo que es lo mismo, a la entrada del bloque combinacional, se denominan señales de estado presente ya que nos indica el estado en el que se encuentra el sistema para realizar una operación.
• Si consideramos las señales de estado a la entrada de los elementos de memoria, o lo que es lo mismo, a la salida del bloque combinacional, se denominan señales del próximo estado ya que nos indican el estado al que llegará después de que el bloque combinacional haya realizado la operación.

 CLASIFICACIÓN DE LOS SISTEMAS SECUENCIALES:

      Uno de los primeros problemas de los circuitos secuenciales era determinar el momento en el que el próximo estado debía pasar a estado presente, sin capturar situaciones no deseadas como pueden ser los azares. Este problema es lo que se conoce como sincronización, cuyas soluciones dieron lugar a una de la principales clasificaciones de los sistemas secuenciales. Así podemos dividir los sistemas en dos categorías:
• Sistemas asíncronos.- La sincronización depende exclusivamente de los retrasos de la lógica combinacional, sin necesidad de ninguna señal externa al sistema.
• Sistemas síncronos.- La sincronización depende exclusivamente de una señal externa al sistema, conocida generalmente como señal de reloj. Esta señal de reloj controlará el comportamiento de los elementos de memoria:



       Las operaciones de un sistema asíncrono tienen efecto, es decir, se almacena el próximo estado, en intervalos temporales diferentes. Por lo tanto, su velocidad de operación será distinta para cada secuencia de entradas. De esta forma se toma como el parámetro de la velocidad de operación el valor medio de todas las velocidades. Así, la operación de un sistema asíncrono se denomina operación del caso medio.

      En cambio, las operaciones de un sistema síncrono tienen efecto en el mismo intervalo temporal, el dictaminado por el periodo de la señal de reloj. Por lo tanto, su velocidad de operación será siempre la misma para todas las secuencias de entrada. Esta velocidad debe ser tal que todas las operaciones tengan el tiempo necesario para poder llevarse a cabo. Así, la velocidad de un sistema síncrono (y por tanto la frecuencia de la señal de reloj asociada) debe estar limitada por la operación más lenta. A este tipo de operaciones se le suele denominar operación del caso peor.

     Estos dos tipos de operaciones se muestran esquematizadas en la figura 1.4. Ambos se pueden modelar de la misma forma, es decir, con una lógica combinacional y realimentaciones a través de elementos de memoria. La diferencia radica en el control de estos elementos: en el caso síncrono, los elementos de memoria son controlados por una señal externa, que por lo general es controlada directamente por el usuario; mientras que en el caso asíncrono, esta señal de control no existe (por lo que el elemento de memoria se traduce en un elemento de retraso) o en su defecto dicha señal es generada por el propio circuito, luego el gobierno de las operaciones recaen completamente en el propio circuito. Así podemos apreciar que el cambio de las señales de próximo estado a estado presente se llevan a cabo mediante un mayor o menor retraso en el caso asíncrono o cuando lo indique una señal externa en el caso síncrono.


EXISTEN DOS GRANDES TIPOS DE CIRCUITOS SECUENCIALES:
a) Maquina de Mealy. En este tipo de circuitos, las salidas dependen, en cada instante de los valores de los elementos de memoria y de las entradas presentes en ese instante. Aquí, para cada estado, podemos tener tantas salidas como combinaciones tengarnos en las entradas.
b) Maquina de Moore. Aquí las salidas en cada instante dependen exclusivamente de los estados de los elementos de memoria, y no dependen directamente de las entradas en ese instante. Los valores de las entradas, sirven para modificar las diversas transiciones entre estados.

       ECUACIONES BOOLEANAS O LLAMADAS TAMBIÉN FUNCIONES BOOLEANAS:
    Un tipo especial de funciones son las denominadas funciones booleanas. Su especificidad se centra en el hecho que su dominio e imagen se basan en el conjunto {0,1}. Su importancia radica en el hecho que son imprescindibles en la era digital: forman parte del núcleo que permite comprender, más allá de los requerimientos meramente tecnológicos, las bases de la Informática.
    La raíz de las funciones booleanas está en la denominada álgebra booleana, o álgebra de Boole (gran matemático del s. XIX que desarrollo este área). El álgebra de Boole contiene las bases de la lógica binaria, en las que el 0 representa el valor lógico "falso", y el 1 representa el valor lógico "verdadero". Las variables lógicas, cuyos valores son los anteriores, se combinan mediante los llamados conectores u operadores lógicos  para dar lugar a expresiones complejas; a partir de los valores iniciales de las variables lógicas puede calcularse el valor de la expresión compleja, expresión que se denomina función booleana.
   Para cualquier sistema algebraico existen una serie de postulados iniciales, de aquí se pueden deducir reglas adicionales, teoremas y otras propiedades del sistema, el álgebra booleana a menudo emplea los siguientes postulados: 


•Cerrado. El sistema booleano se considera cerrado con respecto a un operador binario si para cada par de valores booleanos se produce un solo resultado booleano.

•Conmutativo. Se dice que un operador binario " º " es conmutativo si A º B = B º A para todos los posibles valores de A y B.
•Asociativo. Se dice que un operador binario " º " es asociativo si (A º B) º C = A º (B º C) para todos los valores booleanos A, B, y C.
•Distributivo. Dos operadores binarios " º " y " % " son distributivos si A º (B % C) = (A º B) % (A º C) para todos los valores booleanos A, B, y C.
•Identidad. Un valor booleano I se dice que es un elemento de identidad con respecto a un operador binario " º " si A º I = A.
•Inverso. Un valor booleano I es un elemento inverso con respecto a un operador booleano " º " si A º I = B, y B es diferente de A, es decir, B es el valor opuesto de A. 

ECUACIONES BOOLEANAS DE ESTADO:

  Un circuito secuencial queda completamente determinado si en cada estado presente en que se encuentre se conoce:
1. Los valores de las señales de salida del circuito y
2. El estado siguiente al cual pasa el circuito cuando ocurra un pulso de reloj.

   Como el estado del circuito secuencial es el conjunto de estados de los flip-flops individuales, para conocer el estado siguiente del circuito se debe conocer el estado siguiente de cada uno de los flip-flops.
   Una ecuación de estado es una expresión algebraica que proporciona el estado siguiente de un flip-flop particular en función del estado presente en un circuito secuencial y de los valores que tengan las señales de entrada al mismo.
  El lado izquierdo de la ecuación denota el estado siguiente y el lado derecho es una función de Boole que evaluada produce el valor del estado siguiente del flip-flop.

    Por ejemplo, la ecuación de estado A(t+1) = x´A´B + xA´B´ es la ecuación de estado del flip-flop A de un circuito secuencial con dos flip-flops A y B y una sola señal de entrada: x.
  La ecuación anterior nos dice que el estado siguiente del flip-flop A, A(t+1), es 1 si:
 1. el estado presente en el circuito es el estado 01 y x=0, ó
2. el estado presente en el circuito es el estado 00 y x=1. En cualquier otra condición, el estado siguiente del flip-flop A será el estado 0.
  De la discusión anterior se desprende que para conocer el estado siguiente de un circuito secuencial harán falta r ecuaciones de estado, donde r es el número de flipflops de dicho circuito.


No hay comentarios:

Publicar un comentario