LOGICA DIGITAL II Universidad Nacional Federico Villarreal Ing. Javier Barriga Hoyle CAP 1. Biestables Contenido: 1.1 Introduccin a los circuitos secuenciales 1.2 Latch y Flip Flops 1.3 Circuitos Secuenciales: Diseo. 1.4 Monoestables y temporizadores. 1.5 Aplicaciones. 1.1 Introduccin a los circuitos secuenciales Los circuitos secuenciales se caracterizan por su capacidad de memorizar informacin; a consecuencia de esto, los valores de sus respectivas salidas en un momento concreto, no dependen exclusivamente de los valores de las entradas en ese instante, sino que dependen tambin de los valores que estuvieran presentes con anterioridad. Lgica Digital II Ing. Javier Barriga Hoyle 2 1.1 Introduccin a los circuitos secuenciales Figura 1.1 Diagrama de un circuito secuencial Circuito Combinacional Memoria Estado interno Entradas Salidas 1.2 Latch y Flip-Flops Biestable: Los dispositivos biestables se dividen en flip-flops y latches. Los biestables poseen dos estados estables, denominados SET (activacin) y RESET (desactivacin), en los cuales se pueden mantener indefinidamente, por lo que estos dispositivos son muy adecuados como elementos de almacenamiento. 1.2 Latch y Flip Flops Latch: Es un elemento de memoria cuyas seales de entrada de excitacin controlan el estado del dispositivo. Si un latch tiene una entrada que obliga a la salida del dispositivo a tomar el valor 1, sta es un latch set. Si un latch tiene una entrada que obliga a la salida del dispositivo a tomar el valor 0, sta es un latch reset. Si el dispositivo tiene ambas entradas de excitacin se tiene un latch set-reset. Lgica Digital II Ing. Javier Barriga Hoyle 3 1.2 Latch y Flip Flops (a) Diagrama lgico (b) Smbolo Lgico Q Q' S R S R Q' Q Figura 1.2 Representacin de un latch RS. 1.2 Latch y Flip Flops Latch RS con NOR Tabla de verdad del Latch RS S R Q Q 1 0 1 0 0 0 1 0 0 1 0 1 0 0 0 1 1 1 0 0 S R Q' Q 1.2 Latch y Flip Flops Figura 1.3 Diagrama de Tiempos en el Latch RS Set Reset Q Lgica Digital II Ing. Javier Barriga Hoyle 4 1.2 Latch y Flip Flops (a) Diagrama lgico (b) Smbolo Lgico Q Q' S' R' Q Q' R' S' Figura 1.4 Representacin de un latch RS con NAND. 1.2 Latch y Flip Flops Flip Flops: Difiere de un Latch por el hecho de que tiene una seal de control llamada reloj. La seal de reloj emite una instruccin al flip-flop, permitindole cambiar de estado de acuerdo con las seales de entrada de excitacin. Un latch cambia de estado de inmediato, segn sus seales de excitacin de entrada, mientras que un flip-flop espera la seal de su reloj antes de cambiar de estado. 1.2 Latch y Flip Flops S R Q' Q C Q Q' S R C (a) Diagrama lgico (b) Smbolo Lgico Figura 1.5 Representacin de un F/F RS temporizado. Lgica Digital II Ing. Javier Barriga Hoyle 5 1.2 Latch y Flip Flops Tabla caracterstica Q S R Q(t+1) 0 0 0 0 0 0 1 0 0 1 0 1 0 1 1 Ind. 1 0 0 1 1 0 1 0 1 1 0 1 1 1 1 Ind. S R C Q Diagrama de tiempos 1.2 Latch y Flip Flops Conclusin: Actualmente solamente se suelen utilizar biestables sncronos y dentro de estos los que tienen activacin por flanco, ya sea de subida o de bajada. La clasificacin de biestables desde el punto de vista del nmero de entradas y de su constitucin interna se puede resumir en: Biestable o F/F R-S. Biestable o F/F D. Biestable o F/F J-K. Biestable o F/F T. 1.2.1 Flip-flop disparado por flanco R C Q Q' S Detector de transicin de impulsos Figura 1.6 F/F disparado por flanco positivo o flanco negativo. Lgica Digital II Ing. Javier Barriga Hoyle 6 1.2.1 Flip-flop disparado por flanco (a) Flanco positivo Retardo CLK CK CK Retardo CLK CK CK CK CK CLK CK CK CLK (b) Flanco negativo Figura 1.7 Circuitos detectores de flanco. 1.2.1 Flip-flop disparado por flanco Q Q' S R C Q Q' S R C (b) Flanco de bajada (a) Flanco de subida Figura 1.8 Representacin simblica del F/F. 1.2.1 Flip-flop disparado por flanco Tabla caracterstica Q S R Q(t+1) 0 0 0 0 0 0 1 0 0 1 0 1 0 1 1 Ind. 1 0 0 1 1 0 1 0 1 1 0 1 1 1 1 Ind. Diagrama de tiempos S R CK Q Q(t+1) = S + Q.R Ecuacin caracterstica Lgica Digital II Ing. Javier Barriga Hoyle 7 1.2.2 Flip-flop tipo D Es un circuito secuencial que tiene una sola entrada D de control, una entrada de reloj y dos salidas Q y su inversa. Se obtiene uniendo la entrada S con la entrada R a travs de un inversor. Su aplicacin est orientado principalmente para almacenar datos en forma temporal, ya que la salida Q sigue a la entrada D. Es decir, no cambia de estado el dato de entrada. 1.2.2 Flip-flop tipo D (a) Diagrama lgico (b) Smbolo lgico RS Q Q' D CK Q Q' D C Figura 1.9 Representacin de un F/F D. 1.2.2 Flip-flop tipo D Tabla caracterstica Diagrama de tiempos Q D Q(t+1) 0 0 0 0 1 1 1 0 0 1 1 1 D CK Q Q(t+1) = D Ecuacin caracterstica Lgica Digital II Ing. Javier Barriga Hoyle 8 1.2.2 Flip-flop tipo J-K Es un biestable con el mismo nmero de entradas y salidas que el biestable R-S, en el que se ha introducido la mejora de que el estado 11 en las entradas JK no es un estado prohibido como lo era en el caso del biestable RS. Las entradas J y K se comportan como las entradas S y R para poner en uno o cero (set o reset) al flip flop Su aplicacin est orientado principalmente para el diseo de contadores. 1.2.2 Flip-flop tipo J-K Q' CK J Q K Q Q' J K C (a) Diagrama lgico (b) Smbolo lgico Figura 1.10 Representacin de un F/F J-K. 1.2.2 Flip-flop tipo J-K Tabla caracterstica Q J K Q(t+1) 0 0 0 0 0 0 1 0 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 0 1 1 0 1 1 1 1 0 Diagrama de tiempos J K CK Q Q(t+1) = J.Q + K.Q Ecuacin caracterstica Lgica Digital II Ing. Javier Barriga Hoyle 9 1.2.2 Flip-flop tipo T Es un circuito secuencial que tiene una sola entrada T de control, una entrada de reloj y dos salidas Q y su inversa (Q). Se obtiene uniendo la entrada J con la entrada K El nombre T se deriva de la habilidad del F/F de variar (toggle) o cambiar de estado. Su aplicacin est orientado principalmente para el diseo de contadores, pero ya no se emplea porque se puede implementar con el F/F J-K. 1.2.2 Flip-flop tipo T CK Q' Q T Q Q' T C (a) Diagrama lgico (b) Smbolo lgico Figura 1.11 Representacin de un F/F T. 1.2.2 Flip-flop tipo T Tabla caracterstica Diagrama de tiempos Q T Q(t+1) 0 0 0 0 1 1 1 0 1 1 1 0 T CK Q Q(t+1) = Q.T + Q.T Ecuacin caracterstica Lgica Digital II Ing. Javier Barriga Hoyle 10 1.2.3 Entradas asncronas en los Flip-flops En los F/F sincronizados por reloj que hemos visto, las entradas S, R, J, K , D y T se denominan entradas de control y hacen cambiar de estado al F/F. Muchos F/F comerciales tienen una o ms entradas asncronas que operan independientemente de las otras entradas (S, R, J, K, D, T y CLK). Estas entradas asncronas PR (Preset) y CLR (Clear) fijan al F/F en el estado 1 o en el 0 en cualquier instante, sin importar las condiciones presentes en las otras entradas. 1.2.3 Entradas asncronas en los Flip-flops (a) Smbolo lgico (b) Diagrama de tiempos Q Q' J K C CLR PR J K CK Q PRE CLK Figura 1.12 Flip-flop J-K con clear y preset. 1.3 Diseo de circuitos secuenciales El diseo de circuitos secuenciales complejos sera una actividad muy complicada si no hubiese algn mtodo de diseo estudiado paso a paso. Este es el caso de las mquinas de estados, que consisten en un mtodo de anlisis y sntesis de circuitos secuenciales. Para el estudio de circuitos secuenciales como mquinas de estados, se han de conocer las tablas de excitacin y definir previamente una serie de conceptos. Lgica Digital II Ing. Javier Barriga Hoyle 11 1.3 Diseo de circuitos secuenciales Q(t) Q(t+1) S R 0 0 0 1 1 0 1 1 0 X 1 0 0 1 X 0 Q(t) Q(t+1) J K 0 0 0 1 1 0 1 1 0 X 1 X X 1 X 0 Q(t) Q(t+1) D 0 0 0 1 1 0 1 1 0 1 0 1 Q(t) Q(t+1) T 0 0 0 1 1 0 1 1 0 1 1 0 Figura 1.13 Tablas de excitacin de los F/F. 1.3 Diseo de circuitos secuenciales Tabla de estados: Contiene la secuencia de tiempo de las entradas, salidas y estados de los Flip-flops. Esta tabla se divide en tres secciones llamadas: Estado presente; designa los estados de los F/F antes de la ocurrencia de un pulso de reloj. Estado siguiente; muestra los estados de los F/F despus de la aplicacin del pulso de reloj. Salida; muestra los valores de las variables de salida durante el presente estado. 1.3 Diseo de circuitos secuenciales Diagrama de estados: Es la representacin grfica de una tabla de estados en donde se visualiza la secuencia de estados por las que atraviesa el circuito secuencial. Este diagrama vara segn sea una mquina de Moore o Mealy. Ecuaciones de Estado: Es una expresin algebraica que especifica las condiciones para la transicin de estado de un F/F. Lgica Digital II Ing. Javier Barriga Hoyle 12 1.3 Diseo de circuitos secuenciales Hay dos tipos de arquitecturas de circuitos secuenciales o mquinas de estados, que son la arquitectura Mealy y la arquitectura Moore. En los diagramas de transiciones de estado se representa el estado por un circulo (a) y la transicin por una flecha (b) como se indica en la sgt. Figura. (a) (b) 1.3.1 Mquina de estado de Mealy En este tipo de mquina de estado las salidas son funcin de las entradas y del estado interno. En la figura 1.14 se puede ver el esquema de bloques de una mquina Moore. Salidas = f(entradas, estado interno) La representacin de una mquina de Mealy es: E x/y 1.3.1 Mquina de estado de Mealy Donde: El circulo representa al estado presente y E el valor en binario del estado. La lnea dirigida representa la transicin entre estados. La letra x es el valor que causa la transicin y la letra y es el valor que toma la salida en ese estado. Una lnea dirigida que conecta un crculo a s mismo indica que no hay cambio de estado. Lgica Digital II Ing. Javier Barriga Hoyle 13 1.3.1 Mquina de estado de Mealy Figura 1.14 Estructura de Mealy Circuito Combinacional Conjunto de Flip-Flops Clk Estado interno Entradas Salidas 1.3.2 Mquina de estado de Moore En este tipo de mquina de estado las salidas son funcin nica y exclusivamente de las entradas. En la figura 1.15 se puede ver el esquema de bloques de una mquina Moore. Salidas = f(entradas) La representacin de una mquina de Moore es: Estado Salida Entradas 1.3.2 Mquina de estado de Moore Figura 1.15 Estructura de Moore Circuito Combinacional (1) Circuito Combinacional (2) Conjunto de Flip-Flops Clk Estado interno Entradas Salidas Lgica Digital II Ing. Javier Barriga Hoyle 14 1.3.3 Aplicacin 1: Mquina de Moore Ejemplo 1: Arquitectura Moore Disear un generador de secuencia. El generador en cuestin ha de proporcionar a su salida la secuencia 101011. Solucin Nota: Ud. debe complementar el anlisis con la separata de Mquinas de estado cualquier otro texto. 1.3.3 Aplicacin 1: Mquina de Moore Paso 1: Diagrama de transicin de estados. E0 1 E3 0 E1 0 E2 1 E5 1 E4 1 Figura 1.16 Diagrama de estados (Ej. 1) 1.3.3 Aplicacin 1: Mquina de Moore Paso 2: Tabla de transicin de estados y tabla de salida Estado actual Estado siguiente E0 E1 E1 E2 E2 E3 E3 E4 E4 E5 E5 E0 Estado actual Salida E0 1 E1 0 E2 1 E3 0 E4 1 E5 1 Lgica Digital II Ing. Javier Barriga Hoyle 15 1.3.3 Aplicacin 1: Mquina de Moore Paso 3: Determinar el nmero de F/F necesarios. Para ello ha de cumplirse la ecuacin siguiente, donde n es el nmero de biestables. 2 n-1 < n de estados 2 n En nuestro problema se cumple que: 2 2 < 6 2 3 Por lo tanto el nmero de biestables necesarios es 3. n = 3 1.3.3 Aplicacin 1: Mquina de Moore Paso 4: Tabla de codificacin de estados. Q2 Q1 Q0 Estado 0 0 0 E0 0 0 1 E1 0 1 0 E2 0 1 1 E3 1 0 0 E4 1 0 1 E5 1 1 0 X 1 1 1 X 1.3.3 Aplicacin 1: Mquina de Moore Paso 5: Tabla de transicin de estados y salida Est. actual Est. siguiente 0 0 0 0 0 1 0 0 1 0 1 0 0 1 0 0 1 1 0 1 1 1 0 0 1 0 0 1 0 1 1 0 1 0 0 0 1 1 0 X X X 1 1 1 X X X Est. actual Salida 0 0 0 1 0 0 1 0 0 1 0 1 0 1 1 0 1 0 0 1 1 0 1 1 1 1 0 X 1 1 1 X Lgica Digital II Ing. Javier Barriga Hoyle 16 1.3.3 Aplicacin 1: Mquina de Moore Paso 6: Tabla de excitacin de los F/F D. Estado actual Estado siguiente D2 D1 D0 0 0 0 0 0 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 0 1 1 0 1 1 0 1 1 1 0 0 1 0 0 1 0 0 1 0 1 1 0 1 1 0 1 0 0 0 0 0 0 1 1 0 X X X X X X 1 1 1 X X X X X X 1.3.3 Aplicacin 1: Mquina de Moore Paso 7: Simplificar las tablas (Mapa de Karnaugh). D2 = Q2.Q0 + Q1.Q0 D1 = Q1.Q0 + Q2.Q1.Q0 D0 = Q0 S = Q2 + Q0 Paso 8: Dibujar el circuito respectivo. 1.3.3 Aplicacin 1: Mquina de Moore Salida S Q2 Q1 Q0 D Q Q CLK D Q Q CLK D Q Q CLK Q0 Q0' Q1 Q1' Q2' CLOCK Q2 Figura 1.17 Lgica Digital II Ing. Javier Barriga Hoyle 17 1.3.3 Aplicacin 2: Mquina de Mealy Ejemplo 2: Arquitectura Mealy Dada la siguiente tabla de estados de un circuito secuencial, encontrar su diagrama de estados, sus ecuaciones de estado y luego el diagrama del circuito. Solucin Nota: Con este ejemplo se pretende mostrar los pasos que se tiene que seguir para implementar un circuito secuencial. 1.3.3 Aplicacin 2: Mquina de Mealy Tabla de estados: Estado siguiente x = 0 x = 1 Estado presente A B A B A B Salida x = 0 x = 1 y y 0 0 0 1 1 0 1 1 0 0 1 1 1 0 1 0 0 1 0 1 0 0 1 1 0 0 0 0 0 0 1 0 Tabla 1.1 Tabla de estado para el circuito de la figura 1.19 1.3.3 Aplicacin 2: Mquina de Mealy 0 0 1 0 1 1 0 1 0/0 0/0 0/0 0/0 1/1 1/0 1/0 1/0 Diagrama de estados: Figura 1.18 Diagrama de estado del circuito de la fig. 1.19 Lgica Digital II Ing. Javier Barriga Hoyle 18 1.3.3 Aplicacin 2: Mquina de Mealy Ecuacin de estado: De la tabla 1.1, se deduce para la variable A: => A(t+1) = (AB +AB+AB).x + A.B.x => A(t+1) = B.x + (B.x)A Si la ecuacin del F/F RS es: Q(t+1) = S + R.Q => A(t+1) = B.x + (B.x)A = S + R.A => S A = Bx , R A = Bx 1.3.3 Aplicacin 2: Mquina de Mealy Ecuacin de estado: De la tabla 1.1, se deduce para la variable B: => B(t+1) = A.x +(A.x).B => B(t+1) = A.x +(A.x).B = S + R.Q => S B = A.x , R B = A.x De la tabla 1.1, se deduce para la variable y: => y = A.B.x 1.3.3 Aplicacin 2: Mquina de Mealy Figura 1.19 Circuito secuencial temporizado x' A A' x x x' B' B B' B A A' x A B' y CLK R S Q Q CLK R S Q Q CLK Lgica Digital II Ing. Javier Barriga Hoyle 19 1.4 Monoestables y temporizadores Introduccin: Cuando se trabaja con circuitos digitales, es muy frecuente utilizar circuitos que sean capaces de generar impulsos o de conformarlos, mantenerlos durante un tiempo determinado, retardarlos, adaptar las seales que se obtienen de las puertas lgicas para excitar otros circuitos, etc. Para ello se tiene: Multivibradores monoestables y astables. Temporizadores. Circuitos adaptadores de entrada y salida de puertas lgicas. 1.4.1 Multivibrador Monoestable Son circuitos que a su salida tienen un estado estable (0 o 1) y un estado inestable (1 o 0). Permanecen en su estado estable durante un tiempo indefinido y cuando se les excita con una seal de disparo, conmutan al estado inestable durante un tiempo t. Multivibrador monoestable T 1 T 2 Seal de disparo Salida Figura 1.20 1.4.1 Multivibrador Monoestable En la figura 1.20 se muestra que ingresa un impulso de corta duracin T 1 al monoestable y produce una salida de duracin T 2 de valor constante. Las aplicaciones ms usuales son: Generar impulsos de anchura controlable. Retardar impulsos digitales. Generar retardos en la activacin en sistemas de alarmas. Establecer un intervalo de tiempo fijo entre el principio y el fin de la transmisin de datos. Regenerar y dar la forma primitiva a impulsos deformados en la transmisin. Lgica Digital II Ing. Javier Barriga Hoyle 20 1.4.1 Multivibrador Monoestable t w Disparo Salida Disparo t w Salida (a) (b) Figura 1.21 Monoestable no redisparable disparado a intervalos mayores (a) y menores (b) que t w . 1.4.1 Multivibrador Monoestable (a) (b) Figura 1.22 Monoestable redisparable disparado a intervalos mayores (a) y menores (b) que t w . t w Disparo Salida Disparo t w Salida 1.4.2 Multivibrador Astable o Temporizador Son circuitos que a su salida no tienen ningn estado estable. Es decir, continuamente oscila entre 0 y 1. Su principal aplicacin es como generador de seales de reloj, que sirve para excitar todo tipo de circuito sncrono. Por ejemplo, contadores, registros, microprocesadores, etc. Figura 1.23 Representacin de un astable Multivibrador astable o temporizador Reloj T Lgica Digital II Ing. Javier Barriga Hoyle 21 1.4.3 Temporizador 555 + _ + _ R S Q 5K 5K 5K Comparador A Comparador B Transistor de descarga Buffer de salida Salida Latch (3) (8) Vcc (4) Reset GND (1) (6) (5) (2) (7) Umbral Tensin de control Disparo Descarga 555 Figura 1.24 1.4.3 Timer 555: Monoestable Figura 1.25 Timer en modo monoestable +VCC
R1 C1 C2 0.01uF 8 4 1 DESCARGA 7 DISPARO 2 SALIDA 3 CONTROL 5 UMBRAL 6 RESET VCC GND 1.4.3 Timer 555: Monoestable El ancho del pulso T est dado por: T = 1.1 R 1 C 1 Figura 1.26 Formas de onda en modo Monoestable T (2) t (3) t Disparo Salida Lgica Digital II Ing. Javier Barriga Hoyle 22 1.4.3 Timer 555: Astable Figura 1.27 Timer en modo astable
+VCC
C1 C2 0.01uF 8 4 1 DESCARGA 7 DISPARO 2 SALIDA 3 CONTROL 5 UMBRAL 6 RESET VCC GND R1 R2 1.4.3 Timer 555: Astable Las formulas a utilizar son: Tiempo de carga T 1 : (0 voltios a 2/3 Vcc) T 1 = 1.1 (R 1 + R 2 ) C 1 Tiempo de descarga T2: (2/3 Vcc a 1/3 Vcc) T 2 = 0.693 R 2 C 1 Tiempo de carga T3: (1/3 Vcc a 2/3 Vcc) T 3 = 0.693 (R 1 + R 2 ) C 1 Periodo de oscilacin T T = 0.693 (R 1 + 2*R 2 ) C 1 1.4.3 Timer 555: Astable Las formulas a utilizar son: La frecuencia de oscilacin se determina por: El ciclo de servicio (duty cycle) se determina por: Cuando R2 disminuye, el ciclo de servicio puede alcanzar el 100% y cuando R2 aumenta se aproxima al 50%. 1 2 1 * ) * 2 ( 44 . 1 C R R F + = ) * 2 ( 2 1 2 R R R D + = Lgica Digital II Ing. Javier Barriga Hoyle 23 1.4.3 Timer 555: Astable Figura 1.28 Formas de onda en modo Astable T 1 (2,6) t (2/3)Vcc (1/3)Vcc (3) t T 2 T 3 T T