You are on page 1of 16

Circuitos Electrónicos Digitales

Teoría de Autómatas y Circuitos


Secuenciales

Máquinas de estados finitos (Moore y


Mealy ). Diseño de máquinas de estados
finitos. Circuitos secuenciales

CEDG - Tema 6 1
Máquina de Moore
• La salida depende exclusivamente del estado en
que se encuentra la máquina

Habitualmente biestables
tipo D disparados por
flanco
CEDG - Tema 6 2
Máquina de Mealy
• La salida depende del estado en que se encuentra la máquina y de las
entradas, por tanto la salida no es síncrona con el reloj

Habitualmente biestables
tipo D disparados por flanco

CEDG - Tema 6 3
Diseño de una máquina de estados I

1. Enunciado del problema: Ej :En una señal,


detectar tres “1” seguidos utilizando una
máquina de Moore y biestables tipo D
2. Obtención del diagrama de estados
1. Definición de los estados, en este ejemplo
1. Q0 estado inicial
2. Qi los demás estados, siendo i el número de “1” alcanzado
2. Definición del diagrama de estados
1
1 1

Q0/0 Q1/0 Q2/0 Q3/1 1


0
0
0
0
CEDG - Tema 6 4
Diseño de una máquina de estados II
3. Número de biestables necesarios “m”. Se debe cumplir
siempre que: 2m ≥ número de estados.
1. En el ejemplo necesitamos dos biestables
4. Codificación de los estados en función de los valores de
los biestables (Y2,Y1)
1. En el ejemplo Q0=(00), Q1=(01), Q2=(10) y Q3=(11)
2. Normas de asignación:
1. Códigos con mas “0” para los estados más referenciados
2. Minimizar el número de biestables que cambian su estado en las
transiciones de estado
3. Estrategias con los estados no asignados
1. Riesgo mínimo: Evitar transiciones accidentales a ellos, y por tanto
programar como si existieran.
2. Coste mínimo: Considerarlos como indeterminados en la tabla de
transiciones (máxima minimización)

CEDG - Tema 6 5
Diseño de una máquina de estados III
5. Tabla de transiciones/excitaciones de los
biestables (sumario de todas las posibilidades)
Y(t) Y(t+1) D(t) J(t) K(t) T(t)
0 0 0 0 X 0
0 1 1 1 X 1
1 0 0 X 1 1
1 1 1 X 0 0

CEDG - Tema 6 6
Diseño de una máquina de estados IV
6. Tabla de excitaciones, transiciones y salidas
X(t) Q(t) Q(t+1) D(t) Z(t)
E Y2 Y1 Y2 Y1 D2 D1 S
0 0 0 0 0 0 0 0
0 0 1 0 0 0 0 0
0 1 0 0 0 0 0 0
0 1 1 0 0 0 0 1
1 0 0 0 1 0 1 0
1 0 1 1 0 1 0 0
1 1 0 1 1 1 1 0
1 1 1 1 1 1 1 1
CEDG - Tema 6 7
Diseño de una máquina de estados V
7. Simplificación (por Karnaugh)
1. D2=E(Y1+Y2), D1=E(Y´1+Y2) y S=Y1.Y2
8. Realización del circuito
14 U2A
U3A

14
U4A

6
1
3 5 1 1

S
2 D Q 3
3 2
CLK
7 74HC08 2
Q

R
74HC32

7
14013
E

4
14 U2A

1
3
S
2
14 U2A
U4A

6
1 7 74HC08
3 5 1 U3A

14
S
2 D Q
3 1
CLK 3
7 74HC08 2 2
Q
R

14013
Clk 74HC32
4

7
CEDG - Tema 6 8
Cronograma de la máquina de estados

• No es una descripción completa del comportamiento de la máquina de


estados
• MAX correspone a Máquina de Mealy, MAXS corresponde a Máquina de
Moore (ver la diferencia)
CEDG - Tema 6 9
Parámetros de temporización en circuitos
secuenciales
Elemento combinacional
Circuito secuencial

CLOCK
tH tL
tclk
Biestable disparado por flip-flop
outputs
flanco positivo tffpd

combinational
outputs
tcomb

flip-flop
inputs

setup-time margin tsetup thold

Copyright © 2000 by Prentice Hall, Inc.


Digital Design Principles and Practices, 3/e

CEDG - Tema 6 10
Problema: “skew” de reloj
– Las señales del reloj no alcanzan simultáneamente a todos los biestables
– Cambios en las salidas de biestables que reciben el reloj antes pueden
alcanzar las entradas de otros que lo reciban mas tarde

Skew: diferencia de tiempo


entre los flancos de CLOCK y
CLOCKD

Razones para el retraso:


(a) retardos de conexionado
(b) capacidades parásitas
(c) diseño incorrecto

CEDG - Tema 6 11
Cálculo del “skew”
• No hay problemas en un circuito si se cumple que:
– tffpd(min) + tcomb(min) - thold - tskew(max) > 0
• Los dos primeros términos son el mínimo tiempo después
del flanco de reloj tras el cual el valor a la entrada de un
biestable cambia
• El tiempo de “hold” es el mínimo tiempo en que la entrada
puede cambiar
• El “skew” se sustrae del margen existente en el tiempo de
“hold”
• Compesación del “skew”:
– Mayor tiempo de progagación de los biestables
– Ajuste específico de los retardos combinacionales
– Tiempos de “hold” de los biestables menores (incluso negativos)

CEDG - Tema 6 12
Ejemplo de distribución de reloj

• Produce retardos
entre CLOCK y
CLOCK1, CLOCK2

CEDG - Tema 6 13
Validación
asíncrona de
relojes

• No es recomendable de ninguna de las maneras


– Los “glitches” pueden producirse si la señal de control
CLKEN se genera con el mismo reloj
– “skew” de reloj excesivo
CEDG - Tema 6 14
Si es imprescindible
poner puertas....

CEDG - Tema 6 15
Propuesta de ejercicios

• Feb 04, Problemas 3.2 y 3.2


• Feb 99, Problema 2.2 y 2.4

CEDG - Tema 6 16

You might also like