Download TEMA 3: “Control secuencial” - Tecnologia
Document related concepts
Transcript
BLOQUE 4.- DIGITAL. TEMA 3: “Control secuencial” Esquema: Índice de contenido TEMA 3: “Control secuencial”............................................................................................................1 1.- Introducción....................................................................................................................................1 2.- Biestables........................................................................................................................................3 2.1.- Biestables asíncronos: el Biestable RS....................................................................................4 2.1.1.- Biestable RS con puertas NOR........................................................................................4 2.1.2.- Biestable con puertas NAND...........................................................................................5 2.1.3.- Cronogramas....................................................................................................................5 2.1.4.- Señal de sincronismo o señal de reloj..............................................................................6 2.2.- Biestables RS síncronos .........................................................................................................7 2.2.1.- Biestable Master/Slave....................................................................................................8 2.3.- Biestable JK...........................................................................................................................10 2.4.- Biestable T.............................................................................................................................10 2.5.- Biestable D............................................................................................................................11 3.- Registros y contadores...................................................................................................................11 3.1.- Registros................................................................................................................................12 3.1.1.- Registros de almacenamiento........................................................................................12 3.1.2.- Registros de desplazamiento..........................................................................................12 3.2.- Contadores.............................................................................................................................13 1.- Introducción Los circuitos secuenciales son circuitos lógicos en los que el valor de la señal de salida, en un determinado instante, depende del valor de la señal de entrada en ese mismo instante y del valor de la propia salida en un instante anterior. El hecho de que tenga en cuenta, para obtener el valor de salida, el anterior valor de la propia salida, supone que estos circuitos tengan cierta capacidad de memoria. Un ejemplo: una máquina cuyo encendidoapagado se controla por medio de un pulsador P de marcha/paro. 1. Si la máquina está parada y se pulsa P, se pone en marcha. 2. Una vez en marcha, si dejamos de pulsar P, la máquina continúa funcionando. 3. Para detenerla volvemos a pulsar P 4. Una vez parada, aunque deje de pulsar P la máquina sigue parada. Como se puede observar, el control de la máquina tiene en cuenta su estado anterior para Aaadori@gmail.com Página 1 BLOQUE 4.- DIGITAL. obtener el estado presente. El estado, en marcha o parada, es una información que la máquina ha tenido que almacenar, para, más adelante, tenerlo en cuenta. En general, denominamos estado en un circuito secuencial a su valor de salida. El diagrama de bloques del circuito secuencial se presenta la siguiente figura. • Circuito combinacional: genera la señal de salida del circuito y la señal de excitación al elemento de memoria. • Memoria: almacena la información que constituye el estado actual del circuito. Los dispositivos básicos de memoria son los biestables. Otros ejemplos de circuitos secuenciales son los registros (dispositivos de almacenamiento de información) y los contadores (cuentan pulsos). Un biestable activado por nivel podrá cambiar de estado cuando la señal de reloj esté a un determinado nivel de tensión: "1" (nivel alto) o "0" (nivel bajo). En electrónica, un multivibrador es un circuito oscilador capaz de generar una onda cuadrada. Según su funcionamiento, los multivibradores se pueden dividir en dos clases: • De funcionamiento continuo, astable o de oscilación libre: genera ondas a partir de la propia fuente de alimentación. Un astable es un multivibrador que no tiene ningún estado estable, lo que significa que posee dos estados "quasi-estables" entre los que conmuta, permaneciendo en cada uno de ellos un tiempo determinado. • De funcionamiento impulsado: a partir de una señal de disparo o impulso sale de su estado de reposo. • Si posee dos de dichos estados, se denomina biestable. Un biestable, también llamado (flip-flop en inglés), es un multivibrador capaz de permanecer en un estado determinado o en el contrario durante un tiempo indefinido, dos posiciones estables, como ejemplo un interruptor.. Esta característica es ampliamente utilizada en electrónica digital para memorizar información. El paso de un estado a otro se realiza variando sus entradas. Dependiendo del tipo de dichas entradas los biestables se dividen en: Aaadori@gmail.com Página 2 BLOQUE 4.- DIGITAL. • Asíncronos: sólo tienen entradas de control. El más empleado es el biestable RS. • Síncronos: además de las entradas de control posee una entrada de sincronismo o de reloj. Si las entradas de control dependen de la de sincronismo se denominan síncronas y en caso contrario asíncronas. Por lo general, las entradas de control asíncronas prevalecen sobre las síncronas. La entrada de sincronismo puede ser activada por nivel (alto o bajo) o por flanco (de subida o de bajada). Dentro de los biestables síncronos activados por nivel están los tipos RS y D, y dentro de los activos por flancos los tipos JK, T y D. • Si poseen uno, se le llama monoestable. El monoestable es un circuito multivibrador que realiza una función secuencial consistente en que al recibir una excitación exterior, cambia de estado y se mantiene en él durante un periodo que viene determinado por una constante de tiempo. Transcurrido dicho período, la salida del monoestable vuelve a su estado original. Por tanto, tiene un estado estable (de aquí su nombre) y un estado casi estable. Funciona como un pulsador. La señal es del tipo anterior con un periodo de estabilidad y un pulso, este gráfico está en lógica positiva. 2.- Biestables. Los biestables como se decía anteriormente, también llamados fip-flops o básculas, son las células elementales de memoria de los sistemas digitales y constituyen la base de los circuitos secuenciales. Se caracterizan porque pueden adoptar dos estados estables, es decir, el estado que alcancen perdura en el tiempo indefinidamente aunque haya desaparecido la excitación que lo origino. Los dos estados estables son: el 1 lógico o nivel alto y el 0 lógico o nivel bajo. La señal de excitación se suele denominar señal de disparo. Los biestables se pueden clasificar atendiendo a dos criterios: ➢ Según el tipo de entradas de disparo, tenemos cuatro tipos de biestables : RS, JK, T y D. ➢ Según el sincronismo de disparo, los biestables pueden ser sincronos (con entrada de reloj) o asíncronos. Asíncronos: los cambios de estado tienen lugar cuando está presente las entradas adecuadas. Síncronos: los cambios de estado tienen lugar cuando, además de estar presentes las entradas necesarias, se produce la transición de una cierta señal compartida por todos los biestables del sistema y que, por tanto sincroniza su funcionamiento. Esta señal se denomina reloj de sistema, y siempre es simétrica. Aaadori@gmail.com Página 3 BLOQUE 4.- DIGITAL. 2.1.- Biestables asíncronos: el Biestable RS. Los biestables RS se pueden implementar de dos maneras : con puertas NOR y con puertas NAND. En ambos casos el circuito disponible de dos salidas Q y Q (complementaria), y de dos entradas R(Reset, puesta a 0) y S (Set, puesta a 1). El estado del biestable queda definido por el valor de su salida Q. Así, si su estado es 0 (Q=0), decimos que el biestable está reseteado, y si su estado es uno (Q=1), está seteado. 2.1.1.- Biestable RS con puertas NOR. La estructura y su diseño con puertas NOR, su diagrama de bloques y su tabla de verdad están representados en la siguiente figura. Antes de comenzar su estudio fijaremos una serie de consideraciones que sirven para éste y para todos los demás biestables y circuitos secuenciales en general: ➢ Qt, representa el valor de la salida del biestable antes de que se produzca una transición, es decir representa al estado a su actual del biestable. ➢ Qt+1, representa el valor de salida obtenido como consecuencia de la aplicación de los valores de entrada del biestable y el estado actual, es decir, representa el futuro estado del biestable. ➢ Cuando en el biestable se produce una transición de estados, decimos que ha conmutado. De la tabla de verdad del biestable indicaremos las siguientes consideraciones: ✔ Aplicamos Q=1. Para comprobar el funcionamiento reflejado su tabla supongamos que inicialmente las dos salidas son, Q=1 y Q=0. Si aplicamos las dos entradas a cero su salida tiene el mismo nivel que tenía antes de aplicar la combinación, ✔ Pongo S=1 . Empiezo por S; Q=0; Q=0; R=0; Q=1. Si aplicamos S=1 estaremos seteando el biestable, es decir, forzamos a que cambie la salida, Q=1 ✔ Pongo R=1 . Empiezo por RS; Q=0; Q=0; S=0; Q=1. Si aplicamos R=1 resetearemos el biestable es decir forzamos a que la salida sea cero Q=0, ✔ Pongo R=S=1 . Error. La combinación del R=S=1 está prohibida ya que produce un estado de indeterminación. ✔ Pongo R=S=0; no cambia el estado anterior Q=1 Aaadori@gmail.com Página 4 BLOQUE 4.- DIGITAL. 2.1.2.- Biestable con puertas NAND. Este biestable se construye con dos puertas NAND conectadas como indica la figura, en la que también se indica su diagrama de bloques y su tabla de verdad. En este biestable la combinación prohibida es cuando ambas salidas negadas están a cero R=S=0. 2.1.3.- Cronogramas los cronogramas, o diagramas de tiempo, nos permite mostrar las transiciones de las salidas de los biestables en función de los valores que van tomando las entradas de disparo. El cronograma de la figura muestra un ejemplo del biestable RS . Aaadori@gmail.com Página 5 BLOQUE 4.- DIGITAL. En el cronograma se genera de la siguiente manera: ➔ El estado inicial de biestable ha de ser conocido. En este caso la salida Q está en nivel bajo. Como R y S ambas están a 0, la salida mantiene su estado inicial hasta que cambien las entradas de disparo ➔ Lleva un instante en el que la entrada S pasa a 1 (y. R se mantiene a 0): en ese mismo instante la salida Q pasa también a 1. En este estado se mantiene aún después de pasar S e 0, ya que R se mantiene a 0. ➔ Cuando R pasa a 1 (con S a 0), el biestable se resetea, es decir, Q pasa a 0. Al igual que antes, este estado se mantiene mientras S no pasea 1. ➔ Podemos observar que la combinación de entrada R=S=1 no se da nunca ➔ Dibujada la salida Q, la salida Q se obtiene negando Q. 2.1.4.- Señal de sincronismo o señal de reloj. El tiempo que tarda en conmutar una puerta (tiempo que tarda en obtener el valor de salida tras un cambio de entrada) no es nulo; además, las puertas lógicas no tienen el mismo tiempo de conmutación. Esto provoca que las señales que se propague en un sistema digital estén sometidas a diversos retardos que, cuando varias de ellas coincidan a la entrada de una puerta, la diferencia de tiempos existentes da lugar a breves estados transitorios (valores de salida no estable) no deseados. Para eliminar esta incertidumbre es utilizar una señales especiales, denominada señales de reloj, que fijan los intervalos de tiempo durante los cuales los biestables pueden conmutar. Esta señal de reloj se llama también señal de sincronismo, ya que sincroniza los cambios de las señales internas del circuito. La señal de sincronismo se obtiene de un generador de impulsos de período fijo llamado, precisamente reloj. Aaadori@gmail.com Página 6 BLOQUE 4.- DIGITAL. La señal de reloj carece de información y sus pulsos sólo sirven para indicar el momento en que está permitido realizar el cambio de estado. Esta señal debe cumplir dos condiciones; que con su frecuencia permita que entre cada dos pulsos se estabilice todo sistema y cada pulso sólo puede originar un cambio de estado. La clasificación más general de los circuitos secuenciales se hace tomando como criterios la presencia o ausencia de esta señal de reloj de esta manera, podemos clasificar los circuitos secuenciales en dos tipos: ● Asincronos, en los que no existe ninguna señal de reloj externa que gobierne la progresión de estos datos internos: las señales de entrada son válidas en todo momento y las de salida siguen los cambios de las señales de entrada. ● Sincronos, en los que la evolución de los estados internos está gobernada por la señal de reloj. Los biestable estudiados hasta ahora son asincronos, ya que carecen entrada de reloj. 2.2.- Biestables RS síncronos Un biestable síncrono se obtiene apartir de uno asíncrono, añadiendo en cada una de las entradas un disparo una puerta lógica gobernada por la señal de reloj. Para el caso de biestable RS asíncrono obtenemos el circuito siguiente. En este tipo de biestables, las entrada de disparo pasan a llamarse entradas sincronas ya que están gobernadas por la señal de reloj. El biestable R S síncrono de la figura es un biestable sincronizado por nivel (en este caso a nivel alto) ya que es en este nivel cuando el biestable puede cambiar su salidas, permanece inalterable a las combinaciones de entrada cuando el relój está a nivel bajo. A estos biestables también se les suele denominar biestables activos por nivel. Un flip-flop activado por nivel sólo puede cambiar mientras la señal de reloj esté en un determinado nivel: nivel alto ("1") o nivel bajo ("0"). Aaadori@gmail.com Página 7 BLOQUE 4.- DIGITAL. Qna = Salida biestable activado por nivel alto ("1") Qnb = Salida biestable activado por nivel bajo ("0") Un biestable RS síncrono con entradas asíncronas.- Es una aplicación del biestable síncronos ya que, además de las entradas síncronas R y S, se le han añadido otras dos entradas que actúan de forma síncrona, es decir, entradas independientes de la señal de reloj. Estas entradas asíncronas actúan de forma que hacen conmutar la salida del biestable en el mismo momento en que son activadas, sin tener en cuenta la señal de reloj. 2.2.1.- Biestable Master/Slave Los biestable Master/Slave (M/S), también llamados biestables Maestro/Esclavo, tratan de eliminar las posibles oscilaciones que se producen en los biestables activos por nivel. Para ello aislan la entrada de la salida eliminando, de esta manera, la posibilidad de retroalimentación origen de las oscilaciones. Un biestable activado por flanco ignora el pulso de reloj mientras está en un nivel constante y se dispara sólo durante una transición de la señal de reloj, de "0" a "1" (flanco de subida) o de "1" a "0" (flanco de bajada). Aaadori@gmail.com Página 8 BLOQUE 4.- DIGITAL. Consiste en R-S con una entrada de habilitación (reloj), un inversor y algún circuito adicional. Al de la izquierda lo llamaremos "maestro", y al de la derecha lo llamaremos "esclavo". La diferencia es que el "maestro" está sincronizado con una señal de reloj, y el "esclavo" lo está por una señal de reloj invertida y se controla mediante las salidas del "maestro" en lugar de por las entradas externas. El "maestro" podrá cambiar de estado durante los flancos de subida, y este estado se transfiere al "esclavo" durante el siguiente flanco de bajada. El estado del "esclavo" depende únicamente del estado del "maestro" en el momento que se produce el flanco de bajada, y aparece en sus salidas Q y Q'. El funcionamiento es el siguiente activados por flancos: ➔ Cuando la señal de reloj pasa de nivel bajo a nivel alto (flanco de subida), en el biestable maestro se carga los valores indicados por las entrada de disparo de R y S y las salidas adquieren el estado correspondiente. ➔ Durante ese nivel alto de la señal de reloj, el biestable esclavo no conmuta, ya que su señal de reloj, que está nivel bajo (0), fuerza que sus entradas de disparo estén a 0 y, consecuentemente, el biestable no cambia de estado. ➔ Cuando la señal de reloj pasa nivel alto o nivel bajo (flanco de bajada), las entradas de disparo del biestable maestro quedan bloqueadas (el nivel bajo la señal de reloj hace que sus entradas pasen las dos a 0) almacenando la información que contenían en dicho instante. ➔ La señal de reloj en el biestable esclavo (1) permite que el estado del biestable maestro pase las entradas del biestable esclavo, con lo que esté conmuta al mismo estado en el que quedó el maestro. De lo explicado se deduce que este biestable Master/Slave conmuta solamente en los flancos de bajada en la señal de reloj. Para obtener el estado de este biestable se ha de tener en cuenta el valor de las entradas R y S durante el nivel alto de la señal de reloj, y el biestable conmutará en el siguiente flanco de dicha señal, es decir durante flanco de bajada. Los biestables Master/S también pueden conmutar durante flanco de subida de la señal de reloj; Aaadori@gmail.com Página 9 BLOQUE 4.- DIGITAL. en estos casos, el valor de las entradas R yS se han de tener en cuenta durante los niveles bajos de la señal de reloj. ● El triángulo en la señal de reloj identifica los biestable M/S. ● Si la entrada de lo lleva, además, un círculo el biestable se activa en los flancos de bajada de la señal de reloj. ● Si la entrada de reloj sólo lleva el triángulo, sin círculo, se trata de un biestable M/S activo en los flancos de subida de la señal de reloj. 2.3.- Biestable JK. El biestable JK es una mejora del biestable R S dado que elimina la indeterminación de salida producida al activar simultáneamente las dos entradas de disparo (R=S=1). Funciona de forma idéntica al RS, activando la entrada J como set, y la K como reset. Sin embargo, ahora sí se pueden activar ambas entradas (J=K=1) a la vez produciéndose como resultado la conmutación del biestable al estado opuesto al que tenía. El biestable JK más elemental es el JK asíncrono, cuyo circuito se obtiene a partir del biestable RS asíncrono, añadiéndole una realimentación especial a través de un par de puertas adicionales. El símbolo del biestable JK , de su tabla de verdad se muestran a continuación. El biestable JK asíncrono no se encuentra comercializado. En la práctica se utiliza el biestable JK M/S activo en flanco de bajada. 2.4.- Biestable T. El biestable T (Trigger o disparador)es un circuito que conmuta (báscula) con cada nuevo pulso de señal de entrada; es decir , que un 0 a su entrada mantiene en su salida el estado anterior, mientras que un 1 provoca una inversión en su estado de salida. Aaadori@gmail.com Página 10 BLOQUE 4.- DIGITAL. El biestable T no se comercializa, ya que se obtiene directamente de un JK uniendo sus dos entradas. Una aplicación típica de este biestable es la de divisor de frecuencias. 2.5.- Biestable D. Sólo tiene una entrada D, y su funcionamiento es tal, que el estado siguiente Q(t+1) es la entrada D, independientemente del estado actual del biestable Q(t). Puede observarse que el nuevo estado coincide siempre con la entrada D. Si lo definimos así, esto no es un biestable, ya que no almacena ninguna información. Lo que ocurre es que este biestable no tiene sentido como asíncrono. El biestable D síncrono es un elemento típico de almacenamiento gobernado por la señal de reloj. La señal lógica que haya en la entrada D, no modificará el estado Q hasta que se active la señal de reloj. Esto constituye una memoria elemental de 1 bit, ya que el valor presente en la entrada D, queda almacenado al llegar la señal de reloj. Para cambiar el contenido de esta celdilla de memoria, no hay más que colocar el nuevo valor en la entrada D y activar la señal de reloj, momento en el cual el nuevo valor queda almacenado en el biestable. Puede obtenerse también a partir de un biestable J-K y un inversor, según podemos observar en el esquema siguiente: 3.- Registros y contadores Hasta ahora hemos estudiado circuitos combinacionales y circuitos secuenciales por separado. Aaadori@gmail.com Página 11 BLOQUE 4.- DIGITAL. En este apartado vamos a unir ambos conceptos, para poder analizar los bloques funcionales secuenciales básicos, como son los registros y los contadores. Los registros y los contadores son bloques funcionales secuenciales que se utilizan extensamente en el diseño de sistemas digitales. Los registros son útiles para almacenar y manipular información; los contadores se emplean en los circuitos que secuencian y controlan las operaciones de los sistemas digitales. 3.1.- Registros Son circuitos lógicos capaces de almacenar (registrar) una cantidad limitada de información binaria durante un cierto tiempo. Los registros están compuestos por un conjunto de biestables, cada uno de los cuales almacenó un bit de información. Los registros se clasifican en dos grupos: registros de almacenamiento y registros de desplazamiento; estos últimos con capacidad de desplazar los bits que forma la información en un determinado sentido. Estos registros se suelen utilizar como bloques de funcionales a través de sus correspondiente circuito MSI; también nos encontramos con estructuras más complejas como memorias, microprocesadores, etc.. 3.1.1.- Registros de almacenamiento Los registros de almacenamiento están formados por un conjunto de biestables tipo D aislados entre sí, con una señal externa de reloj común para que se carguen todos a la vez, teniendo accesible sus entradas D y sus salidas Q. Existen dos modalidades de registro de almacenamiento: ➔ Registros tipo Latch, constituidos por biestables sincronos activos por nivel. ➔ Registros tipo M./S., activados por flancos de la señal de reloj (como ejemplo 74174). 3.1.2.- Registros de desplazamiento. Los registros de desplazamiento son registros que además de almacenar información binaria, son Aaadori@gmail.com Página 12 BLOQUE 4.- DIGITAL. capaces de desplazar bits de un biestable al siguiente. En estos registros la información binaria puede introducirse en paralelo o en serie. La información de salida de estos puede presentarse también en cualquiera de los dos formatos anteriormente mencionados. Un registro de desplazamiento consta esencialmente de una cadena de biestables conectados en cascada, de forma que la salida de uno es la entrada del siguiente, y con una señal de reloj común que se aplica a cada uno de ellos. Los biestables han de ser M/S, a fin de evitar problemas con respecto a la duración de los pulsos de reloj, y están conectados de forma que su comportamiento sea el de biestables tipo D. Los registros desplazamiento se clasifican, según el criterio de presentación entrada/salida en: serie serie, serie y paralelo, paralelo serie y paralelo paralelo. 3.2.- Contadores Un contador es un circuito combinacional que cuenta los pulsos que se aplican a través de una entrada externa de reloj. Estos pulsos se pueden considerar como un evento y el contador cuenta el número de veces que ocurre tal evento. Los contadores, a diferencia de los registros de desplazamiento, están formados por una cadena de biestables JK M/S conectados entre sí de forma diferente. La salida de éstos biestables muestran el número binario puro que indica la cuenta realizada hasta ese momento. Un contador que cuenta hasta m números distintos necesita una cantidad de n biestables tal que 2 nm La clasificación de los contadores puede realizarse distintas formas: ➢ Según la forma que conmuta: Sincronos: también llamados contadores serie, se caracterizan porque todos los biestables conmutan a la vez con una señal de reloj común. Asincronos: en los que los biestables conmutan unos tras otros sin reloj común; se conocen también con el nombre de contadores paralelo. ➢ Según el sentido de las cuentas: Ascendentes: cuentan de 0 hasta m-1. Descendentes cuentan de m-1 hasta 0. Up-down: que cuentan de forma ascendente y de forma descendente. Aaadori@gmail.com Página 13 BLOQUE 4.- DIGITAL. ➢ Según la cantidad de números que pueden contar: Binarios de n bits: de 0 hasta 2 n−1 . BCD o de décadas: de 0 a 9. Módulo N.: cuentan N números diferentes. Todos los contadores cuentan de forma cíclica, es decir una vez alcanzado el número máximo de la cuenta, ponen a comenzar desde cero al siguiente pulso de reloj. En muchas aplicaciones, los contadores son utilizados como temporizadores, en los que la señal de reloj de los pulsos a contar es generada por un circuito oscilador de frecuencia fija que permite controlar los tiempos. Aaadori@gmail.com Página 14