Você está na página 1de 8

1

DISEÑO DE MÁQUINAS DE ESTADO


José Valencia código:814069, Juan Jaramillo código:814034, Harold Bolaños código:814011
Asignatura: Sistemas Digitales
Docente: Jaime Enrique Arango
Monitor: Carlos Andrés Serna Anduquia
Laboratorio No. 5, 09 de Noviembre de 2015
Departamento de Ingeniería Eléctrica Electrónica y Computación

Resumen—A través de una máquina de estados se dió solución 3 Flip-flop tipo D CD4013BC
a un problema específico, demostrando las etapas del proceso de Alambre para conexiones.
diseño e implementando un montaje como resultado de dicho
proceso.
IV. M ARCO T EÓRICO
Index Terms—Máquina de estados, Lógica Secucencial, Lógica
Combinacional, Flip-flops, estado actual, estado siguiente. IV-A. Latch y flip-flops
Los latchs y flip-flops son los bloques de construcción
I. I NTRODUCCIÓN básicos de la mayoría de los circuitos secuenciales. Los siste-
Los circuitos lógicos se clasifican en dos tipos, “combi- mas digitales típicos hacen uso de latchs y flip-flops que son
nacional” y “secuencial”. Un circuito lógico combinacional dispositivos preencapsulados, especificados funcionalmente en
es aquel cuyas salidas dependen solamente de sus entradas un circuito integrado estándar.
actuales. Un ejemplo que explica esto puede ser la perilla Todos los diseñadores digitales utilizan el nombre flip-
selectora de un televisor antiguo: su “salida” selecciona un flops(o elemento biestable) para un dispositivo secuencial
canal, para esto se basa solamente en su “entrada” actual, la que normalmente muestrea sus entradas y cambia sus salidas
posición de la perilla. solamente en ocasiones determinadas por una señal de reloj.
Un circuito lógico secuencial es aquel cuyas salidas de- Por otra parte la mayoría de los diseñadores digitales utilizan el
penden no sólo de sus entradas actuales, sino también de la nombre de latch para un dispositivo secuencial que monitorea
secuencia pasada de entradas, arbitrariamente lejos en el todas sus entradas continuamente y modifica sus salidas en
pasado. El circuito controlado por los botones de avance o cualquier momento, de manera independiente de una señal de
retroceso de canal en un receptor de televisión es un circuito reloj.
secuencial: la selección del canal depende de la secuencia Algunos tipos de latchs y flip-flops:
anterior de pulsaciones de avance/retroceso, inclusive hasta Latch S-R(set-reset de establecimiento-restablecimiento).
que el dispositivo fue conectado por primera vez. Latch S-R (set-reset de establecimiento-restablecimiento
de nivel activo bajo).
II. O BJETIVOS Latch S-R con habilitación.
Latch D.
Comprender la utilidad y el alcance que tienen las
Flip-flop D disparado por flanco.
máquinas de estado para la resolución de problemas de
Flip-flop D disparado por flanco con habilitación.
la vida real en sistemas digitales.
Flip-flop de exploración(capacidad de exploración).
Diferenciar el funcionamiento de las máquinas de estado
Flip-flop S-R maestro/esclavo.
tipo Moore o Mealy.
Flip-flop J-K meastro/esclavo.
Afianzar los pasos para el diseño de una máquina de
Flip-flop J-K disparado por flanco.
estados.
Flip-flop T.
Estudiaremos los flip-flops subrayados a continuación.
III. MATERIALES
Fuente de voltaje.
Generador de funciones. IV-B. Flip-flop D disparado por flanco
Oscilador astable de la práctica 1. Un flip-flop D disparado por flanco positivo combina un par
5 CI de la referencia 74LS21 (compuerta AND de 4 de latchs D, como se ilustra en las figuras 1, 2 y 3 para crear
entradas). un circuito que muestrea su entrada D y cambia sus salidas
2 CI de la referencia 74HC4075 (compuerta OR de 3 Q y QN sólo para el flanco ascendente de una señal CLK de
entradas). control. El primer latch se conoce como el maestro; se abre
3 CI de la referencia 74LS11 (compuerta AND de 3 y sigue la entrada cuando CLK es 0. Cuando CLK sube a 1,
entradas). el latch maestro se cierra y su salida se transfiere al segundo
1 CI de la referencia 74LS04 (compuerta NOT). latch conocido como el esclavo. El latch esclavo se encuentra
2

abierto todo el tiempo que CLK es 1, pero solamente cambia Si los tiempos de establecimiento y retención no se satisfacen,
al principio de este intervalo, porque el maestro está cerrado la salida del flip-flop por lo regular se irá a un estado estable,
y sin modificaciones durante el resto del intervalo. aunque impredecible, de 0 a 1. Sin embargo, en algunos casos
la salida oscilará o se irá a un estado metaestable a mitad
del camino entre 0 y 1, como se muestra del segundo al
último ciclo de reloj en la figura. Si el flip-flop tiende al
estaddo metaestable , regresará a un estado estable por sí
mismo después de un retardo probabilístico.

IV-C. Flip-flop J-K disparado por flanco


El problema de captura de unos y ceros se resuelve en un
Figura 1. Flip-flop D disparado por flanco positivo: Diseño de circuito que flip-flop J-K disparado por flanco, cuyo equivalente funcional
utiliza latch D. se muestra en las figuras 4, 5 y 6. Al utilizar un flip-flop D
disparado por flanco, internamente, el flip-flop J-K disparado
por flanco muestrea sus entradas en el flanco ascendente del
reloj y produce su siguiente salida de acuerdo con la “ecuación
característica” Q∗ = J.Q0 + K 0 .Q

Figura 2. Tabla de función del flip-flop D.

Figura 4. Flip-flop J-K disparado por flanco: Diseño de circuito que utiliza
un flip-flop D disparado por flanco.

Figura 3. Símbolo lógico del flip-flop D.

El triángulo en la entrada CLK de los flip-flops D indica


un comportamiento de disparo por flanco y se denomina
indicador de entrada dinámica. Ejemplos del comportamiento
funcional del flip-flop para diversas transiciones de entrada se
Figura 5. Tabla de función del flip-flop J-K.
presentan en la figura 11 en la sección IX . La señal QM es
la salida del latch maestro. Nótese que QM cambia solamente
cuando CLK es 0. Caundo CLK se va a 1, el valor actual de
QM se transfiere a Q, y se evita que QM cambie hasta que
CLK regresa de nuevo al valor de 0.
La figura 12 en la sección IX muestra un comportamiento
de temporización más detallado para el flip-flop D. Todos los
retardos de propagación se miden dese el flanco ascendente
de CLK, puesto que ese es el único evento que ocasiona un
cambio de salida. Los diferentes retardos pueden especificarse
para cambios de salida BAJO a ALTO y ALTO a BAJO.
Como un latch D, el flip-flop D disparado por flanco tiene Figura 6. Símbolo lógico del flip-flop J-K.
una ventana de tiempos de establecimiento y de retención
durante los cuales las entradas D no deben cambiar. Esta El comportamiento funcional típico de un flip-flop J-K
ventana se presenta en torno del flanco de disparo CLK, y se disparado por flanco se muestra en la figura 13 en la sección
indica mediante un sombreado de color gris en la figura 12. IX. Como la entrada D de un flip-flop D disparado por flanco,
3

las entradas J y K de un flip-flop J-K deben satisfacer las


especificaciones de tiempo de establecimiento y tiempo de
retención publicadas con respecto al flanco de reloj de disparo
para un funcionamiento adecuado.
La aplicación más común de los flip-flops J-K se encuentran
en las máquinas de estado sincrónicas temporizadas. La ló-
gica del estado siguiente para los flip-flops J-K es en ocasiones
más sencilla que para los flip-flops D, porque la metodología
del diseño es un poco más simple y porque la mayor parte de
los dispositivos lógicos programables secuenciales contienen
flip-flops D, no J-K. Por lo tanto, daremos mayor atención a
los flip-flops D.
Figura 7. Estructura de máquina de estado sincrónica temporizada tipo Mealy.

IV-D. Análisis de una máquina de estado sincrónica tempo-


rizada de reloj. También es posible para la memoria de estado hacer
Los latchs y flip-flops son los bloques de construcción uso de flip-flops D disparados por flanco negativo, latchs D o
básicos de los circuitos secuenciales, pero por sí solos son flip-flops J-K.
circuitos secuenciales de retroalimentación que se pueden
analizar formalmente. Primero analizaremos el funcionamiento IV-F. Estructura de la máquina de Moore
de las máquinas de estado sincrónicas temporizadas, puesto Un circuito secuencial cuya salida depende solamente del
que son las más fáciles de comprender. estado se conoce como una máquina de Moore a diferencia
“Máquina de estado” es un nombre genérico dado a de una máquina de Mealy que depende tanto del estado como
estos circuitos secuenciales; “temporizada” hace referencia de la entrada.
al hecho de que sus elementos de almacenamiento (flip-
flops) emplean una entrada de reloj y “sincrónica” siginifica Salida = G(estado actual)
que todos los flip-flops utilizan la misma señal de reloj.
Una máquina de estado de esta naturaleza cambia de estado Su estructura general se muestra en la figura 8 y obviamente
solamente cuando se presenta un disparo o “pulso” en la señal la única diferencia entre los dos modelos de máquina de
de reloj. estado se encuentra en cómo sono generadas las salidas. En la
práctica, muchas máquinas de estado deben ser categorizadas
como máquinas de Mealy, porque tiene una o más salidas del
IV-E. Estructura de la máquina de Mealy
tipo Mealy y que dependen de la entrada así como también del
La figura 7 ilusra la estructura general de una máquina de estado. Sin embargo, muchas de estas máquinas también tiene
estado sincrónica temporizada Mealy. La memoria de estado una o más salidas del tipo Moore que dependen solamente del
es un conjunto de n flip-flops que almacenan el estado actual estado.
dela máquina, y tiene 2n estados distintos. Los flip-flops se
encuentran todos conectados a una señal de reloj común que
ocasiona que cambien de estado en cada pulso o “tic” del
reloj. Lo que constituya un “tic” depende del tipo de flip-
flop(disarado por flanco, disparado por pulso, etc. ). Para
los flip-flops J-K y D diparados por flanco positivo que se
consideran en esta práctica, un “tic” es el flanco ascendente
de la señal de reloj.
El estado siguiente de la máquina de estado en la figura
7 está determinado por la lógica de estado siguiente,F como
una función de la entrada y estado actuales.
La lógica de salida G determina la salida como una función
de la entrada y el estado actuales. Tanto F como G son Figura 8. Estructura de máquina de estado sincrónica temporizada tipo Moore.
estrictamente circuitos lógicos combinacionales. Podemos
escribir
IV-G. Ecuaciones características
Estado siguiente = F(estado actual, entrada) El comportamiento funcional de un latch o flip-flop puede
Salida = G(estado actual, entrada) describirse formalmente mediante una ecuación carcaterística
que especifique el siguiente estado del flip-flop como una
Las máquinas de estado pueden emplear flip-flops D dispa- función de su estado y entradas actuales.
rados por flanco positivo para su memoria de estado, en cuyo Las ecuaciones característcas de los flip-flops y latchs lista-
caso se presenta un “tic” en cada flanco ascendente de la señal dos anterioremente se presentan en la figura 9. Por convención
4

el sufijo ∗ en Q∗ significa “el siguiente valor de Q”. Note que o descripción en palabras, son los que a continuación se listan.
la ecuación característica no describe el comportamiento de Serían los pasos inversos del análisis de una máquina de estado
temporización detallado del dispositivo (de latch vs. disparado sincrónica temporizada:
por flanco, etc.), solamente la respuesta funcional a las 1. Construir una tabla de estado/salida que corresponde a
entradas de control. la especificación o descripción en palabras empleando
nombres mnemónicos para los estados. (Tambien es
posible comenzar con un diagrama de estado).
2. (Opcional) Minimizar el número de estados en la tabla
de estado/salida.
3. Elegir un conjunto de variables de estado y asignar
combinaciones de variables de estado a los estados
nombrados.
4. Sustituir las combinaciones de variables de estado en
la tabla de estado/salida para crear una tabla de
transición/salida que muestre la siguiente combinación
variable-estado deseada y salida para cada combinación
de estado/entrada.
5. Elegir un tipo de flip-flop (por ejemplo, D o J-K) para
la memoria de estado. En la mayoría de los casos, usted
ya tendrá una selección en mente al principio del diseño,
Figura 9. Ecuaciones características de latch y flip-flop. pero este paso es su última oportunidad de cambiar de
idea.
6. Construir una tabla de excitación que muestre los valo-
IV-H. Asignación de estado res de excitación requeridos para obtener el siguiente es-
Este paso consiste en determinar cuántas variables binarias tado deseado para cada combinación de estado/entrada.
se requieren para representar los estados en la tabla de estado, 7. Obtener las ecuaciones de excitación a partir de la tabla
y asignar una combinación específica a cada estado nombrado. de excitación.
Podemos llamar a la combinación binaria asignada a un estado 8. Obtener las ecuaciones de salida a partir de la tabla de
particular un estado codificado. El número total de estados en transición/salida.
una máquina con n flip-flops es 2n , de modo que el número 9. Dibujar un diagrama lógico que muestre los elementos
de flip-flops necesarios para codificar s estados es Logs, el de almacenamiento de variables de estado y realizar las
entero más pequeño mayor o igual que Log2 s. ecuaciones requeridas de excitación y salida.
La asignación más simple de s estados codificados a 2n
estados posibles es emplear los primeros s enteros binarios en VI. P LANTEAMIENTO DE PROBLEMAS Y P ROCEDIMIENTO
orden de conteo binario. Sin embargo, la asignación de estados
Problema: Diseñe y realice el montaje de una máquina de
más simple no siempre conduce a las más simples ecuaciones
estados que permita reconocer el patrón “01101”.
de excitación, ecuaciones de salida y circuito lógico resultante.
Para abordar este problema es necesario seguir los pasos de
la sección V los cuales se presentan a continuación: (Vamos
IV-I. Diagrama de estado a obviar el paso número 2 de minimización de estdos que es
Un diagrama de estado contien un conjunto de arcos eti- opcional)
quetados con expresiones de transición. Aun cuando existen 1. DIAGRAMA DE ESTADO:
muchas entradas, solamente una expresión de transición es Al tener un patrón de 5 bits necesitamos 5 estados para
requerida por arco. Sin embargo, cuando un diagrama de la conformación del mismo. Reconocemos también el
estado se construye, no hay garantía de que las expresiones hecho de que para que se cumpla el patrón el último bit
de transicion escritas en los arcos que dejan un estado par- debería ser 1, por lo tanto los 4 estados anteriores (que
ticular cubran la totalidad de las combinaciones de entrada cumplan el patrón) dependen de la entrada actual, lo que
exactamente una vez. nos lleva a concluir que trabajaremos con una máquina
En una máquina de Mealy las salidas se expresan junto con de estado sincrónica temporizada Mealy. Veamos el
las entradas en los arcos o transiciones de estado mientras que diagrama de estado en la figura 14:
en una máquina de Moore las salidas se expresan dentro de A: Estado Inicial
los círculos que encierran los estados, esto debido a su propia B: 0
definición. C:01
D:011
V. D ISEÑO DE MÁQUINA DE ESTADO SINCRÓNICA E:0110
TEMPORIZADA
Los pasos para el diseño de una máquina de estado sincró- 2. TABLA DE ESTADO/SALIDA:
nica temporizada, comenzando a partir de una especificación NOTA: x es la entrada de la máquina de estados.
5

6. TABLA DE EXCITACIÓN:

Cuadro III
TABLA DE EXCITACIÓN PARA EL PATRÓN “01101”

X
Q2Q1Q0 0 1
000 001,0 000,0
001 001,0 010,0
010 001,0 011,0
011 100,0 000,0
100 001,0 010,1
D2D1D0

Figura 10. Diagrama de estados para el patrón “01101”.


7. ECUACIONES DE EXCITACIÓN:

Cuadro I
TABLA DE ESTADO / SALIDA PARA EL PATRÓN “01101” D2(Q2,Q0,Q1,X):

Estado siguiente
Estado actual x=0 x=1
A B,0 A,0 0 0 0 0
0 1 5 4
B B,0 C,0
C B,0 D,0 0 0 0 1
D E,0 A,0 2 3 7 6
E B,0 C,1
0 0 0 0
10 11 15 14

0 0 0 0
3. ASIGNACIÓN DE VARIABLES DE ESTADO: 8 9 13 12

Aplicando la fórmula para conocer los flip-flops y va-


riables de estado a utiizar obtenemos: D2 = Q20 Q1Q0X 0

N umero de f lip − f lops = Log2 5 ∼


= 2, 32 → 3
D1(Q2,Q0,Q1,X):
Recordemos que 5 hace referencia a la cantidad de
estados de la máquina, además la cantidad de flip-flops
es igual a la cantidad de variables de estado que las 0 0 1 0
0 1 5 4
nombraremos de la si quiente manera: Q0Q1Q2
0 1 0 0
2 3 7 6
Log2 8 = 3
0 0 0 0
10 11 15 14
Al usar 3 flip-flops se generarán 3 estados que no se
usan en el diseño. Puesto que 2n = 8 donde n = 3 0 1 0 0
8 9 13 12
4. TABLA DE TRANSICIÓN /SALIDA:
D1 = Q20 Q10 Q0X + Q20 Q1Q00 X + Q2Q10 Q00 X
Cuadro II
TABLA DE TRANSICIÓN / SALIDA PARA EL PATRÓN “01101”

Estado siguiente Q2∗ Q1∗ Q0∗ D0(Q2,Q0,Q1,X):


Estado actual
Q2Q1Q0 x=0 x=1
000 → A 001,0 000,0
001 → B 001,0 010,0 1 0 0 1
0 1 5 4
010 → C 001,0 011,0
011 → D 100,0 000,0 1 1 0 0
100 → E 001,0 010,1 2 3 7 6

0 0 0 0
10 11 15 14
5. ELECCIÓN DE FLIP-FLOPS:
Elegimos flip-flop D, ecuación característica: 1 0 0 0
8 9 13 12

Q2∗ = D2
D0 = Q00 Q20 Q1 + Q00 X 0 Q10 + X 0 Q20 Q10
Q1∗ = D1
Q0∗ = D0 8. ECUACIONES DE SALIDA:
La salida Z se obtiene directamente de la tabla de
transición.
Z = Q2Q10 Q00 X
6

9. DIAGRAMA LÓGICO: estados, otras formas son un diagrama de estados, y


El diagrama lógico junto con la simulación previa se una ecuación característica. Cuando se trata de un
encuentran en la figura 14 de la sección IX. autómata finito no determinista, entonces la tabla de
transición muestra todos los estados que se moverá
VII. C UESTIONARIO el autómata.
1. Enumere 3 diferencias entre máquina de Mealy y Moore. Una tabla caracterísitica es aquella que expresa
valores de numeración binaria y los asocia a nom-
a) La salida Mealy depende del estado actual y de las bres o etiquetas que reoresentan o significan en la
entradas mientras que la salida Moore sólo depende mayoría de veces el valor asociado en la realidad
del estado actual. de ciertas variables.
b) Mealy es menos estable, mientras que Moore es Una tabla de excitación expresa el estado actualy el
más estable. estado siguiente con su codificación binaria exacta,
c) En Mealy para probar el circuito, primero se hace por lo que permite visualizar sus ecuaciones de
el cambio en la entrada X y después se da el puslo excitacion
de reloj, mientras que en Moore primero se da el El álgebra booleana es la teoría matemática que
pulso de reloj y después se hace el cambio en la se aplica en la lógica combinatoria. Las variables
entrada X. booleanas son símbolos utilizados para representar
2. Demuestre que la ecuación característica para la salida magnitudes lógicas y pueden tener sólo dos valores
de complemento de un flip-flop JK es: Q = JQ + KQ posibles: 1 (valor alto) ó 0 (valor bajo).
Las ecuaciones de estado se presenta la informa-
ción que describe el comportamiento del sistema
secuencial en forma algebraica.
Q0 = (JQ0 )0 + (K 0 Q)0 Una ecuación característica especifica el siguiente
Leyes de Morgan estado del flip-flop como una función de su estado
Q = (J 0 + Q)(K + Q)
0 y entradas actuales.
Utilizando la propiedad: Una ecuacion de entrada de flip-flop representa la
lógica combinacional de salida en forma algebraíca
(X + Y )(X 0 + Z) = XZ + X 0 Y de una máquina de estados.
Donde X = Q, Y = J 0 , Z = K
Se obtiene: VIII. C ONCLUSIONES
Q0 = QK + Q0 J 0 1. La lógica del estado siguiente para flip-flops JK en
ocasiones es más sencilla que para flip-flops D pese a
que su etapa de diseño es más compleja.
3. Explique la diferencia entre tabla de verdad, tabla de 2. E l uso de máquinas de estado nos permite almacenar
estados, tabla característica y tabla de excitación. Expli- datos en el tiempo, dando así una gran mejora a los
que también la diferencia entre ua ecuación booleana, circuitos combinacionales que no permitián esta ventaja.
una ecuación de estado, una ecuación característica y 3. La etapa de diseño es fundamental para lograr disposi-
una ecuación de entrada de flip-flop. tivos de menor consumo y más económicos y esto se
logra a través de una buena elección de flip-flops y una
La tabla de verdad es un instrumento utilizado para adecuada asignación codificada a los estados.
la simplificación de circuitos digitales a través de
su ecuación booleana. Todas las tablas de verdad
R EFERENCIAS
funcionan de la misma manera sin importar la
cantidad de columnas que tenga y todas tienen [1] WAKERLY JOHN F.,(2001), Diseño Digital Principios y Prácticas, Tercer
Edición, Prentice Hall.
siempre una columna de salida (la última columna a [2] http://unicrom.com
la derecha) que representa el resultado de todas las [3] https://es.wikipedia.org
posibles combinaciones de las entradas. El número [4] http://www.virtual.unal.edu.co
total de columnas en una tabla de verdad es la suma
de las entradas que hay + 1 (la columna de la
salida).
Es una tabla que muestra qué estado se moverá
un autómata finito dado, basándose en el esta-
do actual y otras entradas. Una tabla de estados
es esencialmente una tabla de verdad en la cual
algunas de las entradas son el estado actual, y
las salidas incluyen el siguiente estado, junto con
otras salidas. Una tabla de estados es una de las
muchas maneras de especificar una máquina de
7

IX. A NEXOS

Figura 11. Comportamiento funcional de un flip-flop D disparado por flanco positivo.

Figura 12. Comportamiento en el tiempo de un flip-flop D disparado por flanco positivo.

Figura 13. Comportamiento funcional de un flip-flop J-K disparado por flanco positivo.
8

Figura 14. Simulación de la máquina de estado que reconoce el patron “01101”.

Você também pode gostar