You are on page 1of 35

TEMA 5.

Sistemas Secuenciales Sncronos

1. Introduccin. (2-5)
1.1 Definicin de sistema secuencial. Concepto de estado (6-10)
1.2 Esquema general de un sistema secuencial. (11)
1 3 Mquina de estados finitos.
1.3
finitos Autmata.
Autmata (12-13)
(12 13)
2. Autmatas de Mealy y Moore. (14-15)
y ((16))
2.1 Modelo de Mealy.
2.2 Modelo de Moore. (17)
3. Especificacin y etapas en el diseo de sistemas secuenciales. (18-20)
3 1 Tablas y diagramas de transicin entre estados.
3.1
estados (21-24)
(21 24)
3.2 Ejemplos de sistemas secuenciales (25-39 )
p
Cannica de sistemas secuenciales ((40-41))
4. Implementacin
4.1 Ejemplos de implementacin (42-43)
5. Especificacin de SS mediante Diagramas ASM. (44- 45)
5 1 Ejemplos de implementacin (46-53)
5.1
(46 53)
6. Modelado VHDL de mquinas de estados finitos (FSM) (46-61)
j p
de modelado VHDL ((62-67))
6.1 Ejemplos
7. Anlisis y Sntesis de Sistemas Secuenciales (68-70)
1

1.. INTRODUCCIN (I)


D
Dentro
de los sistemas
m
secuenciales,, los SISTEMAS
EM
SECUENCIALES SNCRONOS es el caso ms habitual
y ms sencillo, en el diseo p
prctico de dichos sistemas
digitales
Sistemas sncronos:

aquellos
ll en los
l que existe all menos
una seal de reloj que va marcando en que momento se
pueden
d producir
d i los
l cambios
bi en las
l salidas
lid del
d l circuito.
i
it
Disparo de reloj por flanco.
flanco

1.. INTRODUCCIN (II)


EJEMPLO: Circuito que no es combinacional: generador de bit de paridad

Constryase un circuito que nos indique, si el nmero


total de 1s presentados en su entrada, hasta un
instante determinado,
determinado es par o impar.
impar
x

El sistema se puede especificar utilizando un tabla de


verdad, en la q
que se reflejen
j
las variables q
que
intervienen en el sistema: entrada, x; salida, z;
situacin del sistema en un instante
3

1. INTRODUCCIN (III)
EJEMPLO: Circuito que no es combinacional:
Generador de bit de paridad
TABLA DE VERDAD

ENTRADA

SALIDA

X(t)

Z(t)

N par de 1
N
1ss

0
1

par
impar

N impar de 1ss
N

0
1

impar
par

Situacin hasta el
instante t

1.. INTRODUCCIN (IV)


Ser
un sistema que tendr:

1. Una nica entrada para la llegada de datos en serie (X)


2 Una nica salida que ser el bit de paridad par,
2.
par de la
secuencia de bits llegados al sistema hasta el momento t (Z)
sta os internos,
nt rnos, pu
puesto
sto qu
que to
toda
a la
a h
historia
stor a pasa
pasada
a
3.. Dos estados
puede reducirse a dos situaciones:
PAR (P) sii ell nmero

d 1 llegados
de
ll
d hasta
h
ell instante
i
t es PAR
IMPAR (I) si el nmero de 1 llegados hasta el instante t es IMPAR

Ser necesaria 1 variable de estado y una funcin f que


relacione el estado presente, con el estado anterior y la entrada
presente de acuerdo con el esquema:
X = 0
PAR
IMPAR

X = 1

PAR

IMPAR

IMPAR
MP R

P R
PAR

1.1 DEFINICIN DE UN SISTEMA SECUENCIAL (I)

Un sistema es secuencial si la salida en cada


instante t,
t depende tanto del valor de las
entradas presentes en ese instante, como de la
historia
historia del sistema,
sistema estado esta determinada,
determinada
por el estado del sistema en el instante que
comienza a operar y por los valores de las
entradas en ese momento inicial.
Un sistema secuencial depende de su historia,
pues de acuerdo de ella, el sistema estar en
cada instante en un estado determinado
6

1.1 DEFINICIN DE UN SISTEMA SECUENCIAL (II)


1.

D p
Dependen
del tiempo:
mp p
para una m
misma
m combinacin
m
de
entradas pueden obtenerse salidas diferentes; de
esto, se deduce, q
que estas dependen
p
del momento en
que se presentan las distintas combinaciones de
entrada.

2.

Debe existir realimentacin de la salida a la entrada:


para que ell estado
t d del
d l circuito
i
it repercuta
t en ell valor
l
de la salida, dicho estado ha de almacenarse y
presentarse al circuito,
circuito como un tipo
tipo de variable de
entrada.
7

1.1 DEFINICIN DE UN SISTEMA SECUENCIAL (III)


En los sistemas secuenciales sncronos con disparo por flanco del
reloj est garantizado que:
reloj,
1.

Transcurrido un tiempo suficiente desde el flanco del reloj, los


valores actualizados (nuevos valores) de las seales de entrada a la
memoria del sistema (biestables) se propagarn a lo largo del mismo
y ste adqu
adquirir
r r una conf
configuracin
gurac n estable.
Las entradas al sistema deben ser estables y no deben existir
lazos de realimentacin puramente combinacionales (es decir sin
que atraviesen una clula de almacenamiento, un biestable).

2
2.

No sucedern cambios en el sistema hasta el nuevo flanco del reloj,


reloj
pues las realimentaciones quedan cortadas en los biestables.

1.1 DEFINICIN DE UN SISTEMA SECUENCIAL (IV)


VARIABLES
El nmero de variables independientes
p
es el conjunto
j
de:
Entradas al sistema.
z Salidas
S lid de
d los
l biestables.
bi
bl
El estado interno del circuito:
z

Es igual
E
i
l a la
l combinacin
bi
i de
d valores
l
que tengan
t
l
los
biestables.
Ap
partir de las entradas al sistema
m y el estado interno se
generarn:
z

z
z

Las salidas del circuito.


Las propias entradas a los elementos de memoria
(biestables).
9

1.1 DEFINICIN DE UN SISTEMA SECUENCIAL (V)


Variables: entrada xi, i=1n,
salida zj, j=1m
estado siguiente Yk, k=1p,
k=1 p
estado actual yl, l=1q,
Ecuaciones:
Zj(t) = f1 (x1(t) x2(t).. xn(t), Y1(t) Y2(t).Yp(t))
Yl(t) = f2 (x1(t) x2(t).. xn(t), y1(t) y2(t).yp(t))
yk(t+1) = f3 (Y1(t) Y2(t).Y
(t) Yq(t))
10

1.2 ESQUEMA GENERAL DE UN SISTEMA SECUENCIAL

ENTRADAS

CIRCUITO
COMBINACIONAL

SALIDAS

MEMORIA
(Bi
(Biestables)
bl )
Estado actual

Estado futuro
Reloj

11

1.3 MQUINA DE ESTADOS FINITOS. AUTMATA

El modelo g
general de la mquina
q
sncrona
que estamos presentando es una Mquina
de Estados Finitos
Finitos o FSM (Finite State
Machine), dado que el nmero de
combinaciones de los valores de los
biestables; es decir, en nuestro caso los
estados
t d internos
i t
d l sistema,
del
i t
es finito.
fi it

12

1.3 MQUINA DE ESTADOS FINITOS. AUTMATA

La teora de circuitos secuenciales se le


denomina tambin teora de autmatas,
autmatas ya que
estos ante una sucesin de valores de entrada
que se presentan a lo largo del tiempo,
tiempo
proporcionan en cada instante una salida que
depende de toda la secuencia de entradas
llegadas hasta ese momento.
Entrada/salida
Estado

13

2. AUTMATAS DE MEALY Y DE MOORE (I)


Autmata de MEALY
Las salidas dependen
p
de las entradas y de las variables de
estado.

Autmata de MOORE
Las salidas no dependen directamente de las entradas, sino
que stas primeramente han de producir un cambio de
estado; este cambio de estado determinar el nuevo valor
de las salidas.
z

z
z

lla salida
l d est
vinculada
l d all estado,
d cambiando
b d sincrnicamente

con el reloj.
Las salidas no se modifican en las transiciones (arcos).
(arcos)
Cada cambio de la entrada, produce una modificacin de las
variables de excitacin, que producirn con el reloj, un nuevo
estado.
d Las
L salidas
lid dependern
d
d de
d este estado.
d
14

2. AUTMATAS DE MEALY Y DE MOORE (II)


Las mquinas de Moore,
Moore al cambiar las salidas de
forma sncrona con el reloj, son en general, ms
estables q
que las mquinas
q
de Mealy,
y y
ya q
que cualquier
q
ruido transitorio que pudiera traer la entrada queda
eliminado en las salidas.
Las mquinas de Moore constituyen un caso particular
de las mquinas de Mealy.

15

2.1 MODELO DE MEALY

ENTRADAS

Estado actual

CIRCUITO
COMBINACIONAL

MEMORIA
(Biestables)

SALIDAS

Estado futuro

RELOJ

16

2.2 MODELO DE MOORE


CIRCUITO
COMBINACIONAL

ENTRADAS

SALIDAS

CIRCUITO
COMBINACIONAL

MEMORIA
(
(Biestables)
)
Estado actual

Estado futuro

Reloj
17

3. ESPECIFICACIN Y ETAPAS DE DISEO DE


SISTEMAS SECUENCIALES (I)

El diseo de un sistema secuencial constar de


dos etapas:
1. Determinacin del nmero de estados necesarios, o lo
que es equivalente, del nmero de biestables, N
z El nmero de estados P deber cumplir:
P 2N.

2 Construccin de la red combinacional,


2.
combinacional tal que para
cada combinacin del estado interno y las entradas
proporcione las salidas requeridas y los valores que
han de atacar a los biestables
z Estos ltimos darn lugar,
lugar en el prximo ciclo de reloj,
reloj
al nuevo estado.
18

DISEO DE LA MEMORIA:

Eleccin del tipo de autmata (Mealy o Moore)


Determinacin
D t
i
i del
d l nmero

d estados
de
t d internos,
i t
P
P.
Codificacin de los estados
Descripcin formal del problema (Tabla de estados,
Di
Diagrama
d
de
t
transiciones,
i i
t bl
tabla
d
de
t
transiciones,
i i
diagramas ASM,..)
Eleccin del tipo de biestable.
Determinacin
D t
i
i del
d l nmero

d biestables,
de
bi t bl
N
N.
P 2N
19

DISEO DEL SISTEMA (RED) COMBINACIONAL


Identificacin de variables: entrada, salida, estado y
excitacin.
R
Realizacin
li
i de
d la
l tabla
t bl de
d transiciones
t
i i
entre
t estados
t d y la
l
tabla de salida.
Obtencin de las funciones lgicas de salida y de entradas
a los biestables.
Realizacin fsica mediante elementos combinacionales
(
(puertas
t s lgicas,
l i s muxess, .))

20

3.1 TABLAS Y DIAGRAMAS DE TRANSICIN ENTRE


ESTADOS (I)
La tabla de transicin entre estados es directamente la
especificacin de la parte combinacional del sistema
secuencial
E la tabla de transicin entre estados,, p
En
para cada estado y
para combinacin de las entradas se recoge cul va a ser el
prximo estado y qu valor van a tomar las seales de
salida.
1.

Se nombran los estados.

2.

Se codifican los estados:


1..

Se cu
S
cuenta
nta el nm
nmero
ro de estados
sta os distintos.
st ntos.

2.

Se escoge el nmero adecuado de biestables.

3
3.

Se asigna un cdigo (una combinacin de variables)


distinto a cada estado.
21

3.1 TABLAS Y DIAGRAMAS DE TRANSICIN ENTRE


ESTADOS ((II))
Un diagrama de transicin de estados, diagramas de flujo,
autmata es una representacin que muestra las transiciones
entre los estados, de acuerdo con las condiciones de conmutacin. Se representa utilizando los siguientes smbolos:
Crculos.
z Indican un estado. Dentro del crculo aparecer
p
una etiqueta
q
del
tipo:
codificacin del estado. (MEALY)
codificacin del estado/salida del estado.
estado (MOORE)

Arcos.

z Indican la transicin de un estado origen


g a un estado destino p
por
medio de una ocurrencia en alguna de sus entradas. El arco se
acompaa de una etiqueta del tipo:
entrada o entradas.
entradas (MOORE)
entrada o entradas/salida o salidas. (MEALY)
22

3.1 TABLAS Y DIAGRAMAS DE TRANSICIN ENTRE


ESTADOS ((III))
AUTMATA DE MEALY

AUTMATA DE MOORE

Entrada/salida

Entrada

Estado

Estado
Salida

Entrada/salida

Entrada

Estado

Estado
0
salida

23

3.1 TABLAS Y DIAGRAMAS DE TRANSICIN ENTRE


ESTADOS (IV)
EJEMPLOS:
EJEMPLOS
Autmatas de MEALY
0

1/1

0/1

Autmatas de MOORE

1/0

0/0

0/0

1/0

0/1

1/11

1/10

0/10

0/00

1/01

2/11

1/01
0/11

2/1

1/1

0/00

24

3.2 EJEMPLOS DE CIRCUITOS SECUENCIALES (I)


1. Disese un detector de secuencia, que detecte la
secuencia
i 101 y que una vez detectada
d t t d permanezca en
esa situacin hasta que se inicialice. Implemntese con
p D disparados
p
por f
p
flanco de bajada,
j
, con
biestables tipo
seal CLEAR, y puertas lgicas necesarias para la red
combinacional.
1.
2.
3.
4.
5.

Realcese mediante un autmata de Mealy.


Realcese mediante un autmata de Moore.
Implementacin cannica del detector
Descripcin mediante diagramas ASM
Modelado VHDL en los tres estilos de descripcin

25

3.21 DETECTOR DE SECUENCIA 101 (II)


Autmata de MOORE

0/0

1/0

x
0

2/0

Tabla de transicin
entre estados

3/1

Estado
actual (t)

0
Diagrama de transicin entre
j )
estados ((flujo)
Entradas: E (una entrada)
Salidas: S (una salida)
Estados: 4 estados 4 = 2P p=2
N Biestables: 2

Q1
0
0
0
0
1
1
1
1

Q0
0
0
1
1
0
0
1
1

Ent
(t)

E
0
1
0
1
0
1
0
1

Estado
sig.(t+1)

D1
0
0
1
0
0
1
1
1

Sal
(t)

D0
0
1
0
1
0
1
1
1

S
0
0
0
0
0
0
1
1
26

3.21 DETECTOR DE SECUENCIA 101 (III)

D1

D0

Q1 Q0

Q1 Q0

00

00

01

01

11

11

10

10

D0 = E + Q 1 Q 0

S = Q 1Q 0

D1= EQ
E 0 + EQ
E 1
27

3.21 DETECTOR DE SECUENCIA 101 (IV)


Implementacin con biestables tipo D y puertas lgicas
E

D0 = E + Q 1 Q 0
D1= EQ0 + EQ1
S = Q 1Q 0

D1

CLK CLR

Q1

D0

Q1
CLK CLR

Q0
Q0

CLK
RESET

28

3.21 DETECTOR DE SECUENCIA 101 (V)


Autmata de MEALY
0/0

1/0
0

1/0

X/1
0/0

1/1

Tabla de transicin
entre estados

Q1
0
0
0
0
1
1
1
1

0/0

Diagrama de transicin entre


estados (flujo)
Entradas: E (una entrada)
Salidas: S (una salida)
Estados: 4 estados 4 = 2P p=2
N Biestables: 2

Q0
0
0
1
1
0
0
1
1

E
0
1
0
1
0
1
0
1

D1
0
0
1
0
0
1
1
1

D0
0
1
0
1
0
1
1
1

S
0
0
0
0
0
1
1
1
29

3.21 DETECTOR DE SECUENCIA 101 (VI)

Q1 Q0

D0 = E + Q 1 Q 0

00

D1= EQ0 + EQ1

01

S = Q 1E + Q 1Q 0

11

10

30

3.21 DETECTOR DE SECUENCIA 101 (VII)


Implementacin con biestables tipo D y puertas lgicas
E

D0 = E + Q 1 Q 0
D1= EQ0 + EQ1
S = Q 1E + Q 1Q 0

D1

CLK CLR

D0

Q1

Q0

Q1
CLK CLR

Q0

CLK

RESET

31

3.22 EJEMPLOS DE CIRCUITOS SECUENCIALES (II)


2. Disese un contador hasta 10 (mdulo 10) sncrono, mediante
un autmata de Moore,
Moore e implemntese con biestables tipo D
disparados por flanco de bajada, con seal CLEAR, y puertas
lgicas para la red combinacional.
0
9

Autmata de Moore:
Entradas: no tiene entradas

f
con
Estados: hasta 10 se codifica
4 bits 4 biestables
10 estados; 10

2P p=4

4
5

N Biestables
N
Biestables: 4
Salidas: es el estado

Diagrama de flujo
32

3.22 Contador mdulo 10 (II)


ESTADO ACTUAL

ESTADO PRXIMO

Q3

Q2

Q1

Q0

D3

D2

D1

D0

0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1

0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1

0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

0
0
0
0
0
0
0
1
1
0
x
x
x
x
x
x

0
0
0
1
1
1
1
0
0
0
x
x
x
x
x
x

0
1
1
0
0
1
1
0
0
0
x
x
x
x
x
x

1
0
1
0
1
0
1
0
1
0
x
x
x
x
x
x

33

3.22 Contador mdulo 10 (III)


D0

Q1Q0

D1

Q1Q0

Q3Q2

00

01

11

10

Q3Q2

00

01

11

10

00

00

01

01

11

11

10

10

D0= Q0
D1= Q1Q0+ Q3Q1Q0

D2

Q1Q0

Q3Q2

00

01

11

10

00

01

11

10

D3

Q1Q0

Q3Q

00

01

11

10

00

01

11

10

D2= Q2Q1+ Q2Q0+ Q2Q1Q0


D3= Q3Q0+ Q2Q1Q0

34

3.22. Contador mdulo 10 (IV)


Implementacin: puertas lgicas y biestables tipo D disparados por flanco de bajada

D3

CLK CLR

Q3

D2

Q3
CLK CLR

Q2
Q2

D1

CLK CLR

D0
Q1
Q1

CLK CLR

Q0
Q0

CLK

RESET

35

3.23,4,5 EJEMPLOS DE CIRCUITOS SECUENCIALES (III)


3. Una mquina expendedora de billetes de transporte, admite
billetes de 5 y 20. El precio del billete unitario es de 15. La
mquina debe admitir billetes hasta que se alcance o se supere
el precio del billete, en ese momento lo expende y da el cmbio,
si fuese preciso. Disese un autmata de Mealy y otro de
M
Moore,
que permita
it construir
st i una mquina
i de
d estas
st s caracterst s
tcas, con el menor nmero de estados posible.
4. Disese una red con salida alta, que detecte si el nmero de
unos incluido en una secuencia de tres bits es impar.
Constryase el sistema utilizando biestables tipo D disparados
por flanco de bajada y puertas lgicas bsicas
5 Disese un sistema secuencial sncrono utilizando biestables
5.
tipo D disparados por flanco de bajada de la seal de reloj, que
genere en su salida reversiblemente y a voluntad la secuencia
d los
de
l nmeros

pares codificados
difi d con tres
t
bit
bits
36

3.23 MQUINA EXPENDEDORA (I)


EJ 3 Autmata de Mealy

Autmata de Moore
ai,bi

ai,bi /ci+1si

ai,bi /ci+1si

ai,bi
Estado/

cisi

ci

20

20
20/15billlete
5/0

20

0/5
billete

0/10
billete

0/15
billete

0
20

5/0billete
20/0 billete

20

20/15billete

10

5/0

0/0

5/0

10/0

37

3.24 RED DE DETECCIN DE NMERO DE 1S (I)


EJ4 Variables
EJ4:
V i bl :

0/0
1

0/0
3

0/0

entrada
t d w
salida z
estados: 5 estados; 5 2P p=3
estado QA QB QC
excitacin DA DB DC

1/0 1/0

1/1
0

3 biestables tipo D

1/0

0/1
1/0

0/0
4

38

3.24 RED DE DETECCIN DE NMERO DE 1S (II)


Estado actual (t)

Entrada (t)

Estado prximo Qi(t+1)=Di

Salida (t)

QA

QB

QC

DA

DB

DC

0
0

0
0

0
0

0
1

0
0

0
1

1
0

0
0

0
0

0
0

1
1

0
1

0
1

1
0

1
0

0
0

0
0

1
1

0
0

0
1

1
0

0
1

0
1

0
0

0
0

1
1

1
1

0
1

0
0

0
0

0
0

0
1

1
1

0
0

0
0

0
1

0
0

0
0

0
0

1
0

1
1

0
0

1
1

0
1

1
1

1
1

0
0

0
1

1
1

1
1

1
1

0
1
39

4. IMPLEMENTACIN CANNICA DE SS: CONSTRUCCIN


CON BIESTABLES,, MUXES Y DECODIFICADORES ((I))

Utilizacin de circuitos que presenten regularidad en su


estructura: multiplexores y decodificadores.
decodificadores
Consideraciones para la implementacin del sistema combinacional:

Decodificacin
D
difi
i de
d estados:
t d
l
las
variables
i bl
de estado
d
t d se
toman como entradas a un decodificador las salidas
sern los estados
Realizacin del secuenciamiento de los estados mediante
multiplexores el valor de las variables que determinan el
estado siguiente, variables de excitacin, solamente
depende de las entradas al sistema. Esto supone la
utilizacin de un mux,
mux por cada biestable

Las entradas de control de los muxes: variables de estado


Las entradas de los mu
mues:
es: funciones combinacionales de las
entradas del sistema
40

4.IMPLEMENTACIN CANNICA DE SS: CONSTRUCCIN


CON BIESTABLES,, MUXES Y DECODIFICADORES ((II))
DIAGRAMA DE BLOQUES
Entrada
cc

0
1
2
3

D1

MUX

Q1
Q1

CLK

C1 C0

2
3

D0

MUX
CLK

C1 C0

CLK

cc

0
1

C1

DEC

C0
0

Q0

SAL2

Q0

cc

SAL1

41

4.1 EJEMPLOS DE IMPLEMENTACIN (I)


1. Disese un detector de secuencia, que detecte la
secuencia
i 101 y que una vez detectada
d t t d permanezca en
esa situacin hasta que se inicialice. Implemntese con
p D disparados
p
por f
p
flanco de bajada,
j
, con
biestables tipo
seal CLEAR, y puertas lgicas necesarias para la red
combinacional.
1.
2.
3.
4.
5.

Realcese mediante un autmata de Mealy.


Realcese mediante un autmata de Moore.
Implementacin cannica del detector.
Descripcin mediante diagramas ASM
Modelado VHDL en los tres estilos de descripcin

42

4.11 Detector de secuencia 101 (VIII)

D0= E + Q1Q0
D1= EQ
Q0 + EQ
Q1
SMoore = Q1Q0
SMealy = Q1E + Q1Q0

43

5. ESPECIFICACIN DE SS MEDIANTE DIAGRAMAS


ASM (I)

o Los diagramas de flujo son muy tiles para


especificar sistemas secuenciales simples.

o Hasta
H t una docena
d
d estados
de
t d aproximadamente.
i d
t

o Por este motivo,


motivo vamos a presentar otro mtodo

de especificacin de sistemas secuenciales: los


diagramas de maquinas de estado algortmicas o
ASM (Algorithmic State Machine).

o Nos
N describen
d
ib
d forma
de
f
sistemtica
i t ti y estructurat
t
da el algoritmo de una mquina secuencial

44

5. ESPECIFICACIN de SS MEDIANTE DIAGRAMAS


ASM (II)
Estos diagramas expresan detalladamente el algo
algoritmo que se debe de seguir para resolver un
determinado
t rm na o pro
problema.
ma.
Indican:
n
o

Los estados por los que puede atravesar el sistema.


Las condiciones
L
di i
que producen
d
transiciones
i i
entre
estados. Entre dos estados hay un ciclo de reloj.
Las seales de salida que se deben producir en cada
estado.
45

5. ESPECIFICACIN de SS MEDIANTE DIAGRAMAS


ASM
M (III)
(
)
Un diagrama ASM consta de los siguientes smbolos:
Rectngulos (disponen de un pequeo crculo en el ngulo superior izquierdo, para incluir el nombre).
zIdentifican los estados.
zDentro del rectngulo se especifican aquellas salidas que
se activan siempre que nos encontremos en dicho estado,
estado
con independencia de los valores que tomen las entradas.

Rombos o hexgonos.
g
zPermiten expresar bifurcaciones en el flujo de control.

valos.
valos
zIndican las salidas condicionales.
Siempre se presentan a continuacin de una bifurcacin.
bifurcacin
46

5. ESPECIFICACIN de SS MEDIANTE DIAGRAMAS


ASM (IV)
1.

Secuenciamiento
de estados.

2.

Si

3.

Bifurcaciones en el flujo de
g
m .
control del algoritmo.

No

A=1?
A
1?

Salidas condicionales.
X
Si

No

A=1?

Z
B:= 1

47

5. ESPECIFICACIN de SS MEDIANTE DIAGRAMAS


ASM (V)
Ejemplo
INIC

Si

SAL1:= 1

No

Entrada=1?

U
SAL2:=
S
L
1

SAL2:= 1
SAL2

48

5. ESPECIFICACIN de SS MEDIANTE DIAGRAMAS


ASM (VI)
COMENTARIOS:
1.

Dado que hay salidas condicionales el autmata es de Mealy.

2 Tenemos 3 estados necesitamos 2 biestables.


2.
biestables
3. Variables:
entrada E
salidas
l d Sall1 Sall2
estados inic,, u,, v
4. Utilizaremos implementacin cannica y biestables tipo D
disparados
p
por flanco de bajada.
p
j
49

5. ESPECIFICACIN de SS MEDIANTE DIAGRAMAS


ASM (VII)
Tabla de transicin entre estados y de salida
Estado actual
Nombre
Q1
INIC:
0
INIC:
0
U:
0
V:
1

Q0
0
0
1
0

Entradas
Entrada
0
1
x
x

Estado siguiente
D1
D0
U:
0
1
V:
1
0
INIC:
0
0
INIC:
0
0

Salidas
Sal1
Sal2
1
0
1
1
0
1
0
0

D0= INICE= Q1Q0E


D1= INICE= Q1Q0E
Sal1= INIC= Q1Q0
Sal2= INICE+ U= Q1Q0E+ Q1Q0
50

5. ESPECIFICACIN de SS MEDIANTE DIAGRAMAS


ASM (VIII)
Implementacin cannica del ejemplo
Entrada

00
01
10
11

D1
MUX
4:1
CLK

C1 C0

Q1
Q1

C1
DEC
C0
00
01
10
11

D0
MUX
4:1
CLK

C1 C0

00

01

10

11

Q0
SAL2

Q0

CLK
SAL1

51

5.11 DETECTOR DE SECUENCIA 101 (IX)


1. Disese un detector de secuencia, que detecte la
secuencia
i 101 y que una vez detectada
d t t d permanezca en
esa situacin hasta que se inicialice. Implemntese con
p D disparados
p
por f
p
flanco de bajada,
j
, con
biestables tipo
seal CLEAR, y puertas lgicas necesarias para la red
combinacional.
1.
2.
3.
4.
5.

Realcese mediante un autmata de Mealy.


Realcese mediante un autmata de Moore.
Implementacin cannica del detector.
Descripcin mediante diagramas ASM
Modelado VHDL en los tres estilos de descripcin

52

5.11 DETECTOR DE SECUENCIA 101 (X)


Autmata de MEALY

0/0

Autmata de MOORE

1/0
0

1/0

X/1
0/0

1/1

0
0/0

0/0

1
1

1/0

x
0

2/0

3/1

53

6. MODELADO VHDL DE MQUINAS DE ESTADOS


FINITOS ((FSM)) ((I))

Modelos de Moore y Mealy


Metodologa de diseo de FSM
- Modelo Comportamiento (Algortmico)
- Seales de Reset
- Varios PROCESS
- Modelo Flujo de datos (Transferencia entre registros)
- Modelo
M d l estructural
t
t
l

54

4. METODOLOGA DE DISEO DE (FSMS) (II)

Niveles de Descripcin
asociados con los HDLs

1) Diagrama o Tabla de estados, diagrama


ASM
Entrada

Entrada

Entrada/salida

Estado

Estado

Salida

lida

Moore

Entrada/salida

Comportam ento o
Comportamiento
algortmico

Estado

Estado

Mealy

2) Ecuaciones del estado futuro y salidas


D1(t+1) = C1(t) A(t) + C0(t) A(t)+ ......
D0(t+1) = C1(t) B(t) + C0(t) B(t)+ ......
X(t) = ........

Y(t) = ................

3) Implementacin del circuito: instanciacin de


componentes y conexionado
Dispositivos lgicos (puertas: NOT, AND... MUX, DECODERS, .....)
Elementos de memoria ((biestables))

Flujo de datos o
Transferencia entre
registros
i

Estructural

55

4. MODELO ALGORTMICO DE UNA FSM (III)


Consideraciones Generales:

El estilo del cdigo tiene que ser independiente de


la mquina de estados que se disee.
Diferentes formas de modelar la misma mquina:

Nmero de procesos PROCESS

Sentencias IF o CASE

Uso de seales o de variables

El uso de la sentencia WAIT o lista de sensibilidad

Debe
D
b ser
s
i i i li d la
inicializada
l mquina
m i
en un estado
st d
vlido? Hay que utilizar seal de reset?
Portabilidad del cdigo
56

4. MODELO ALGORTMICO DE UNA FSM (IV)


MODELO DE MEALY

DOS PROCESOS: uno para la generacin del estado futuro y


de la salida y otro para la actualizacin de la memoria
S lid futuro:
Salida,
f t
PROCESS (entrada,
( t d e_actual)
t l)
salida <=

ENTRADAS

SALIDAS

CIRCUITO
COMBINACIONAL

e_futuro <=
Actual: PROCESS (reset,
(reset clok)

Estado actual

MEMORIA
(Biestables)

Estado futuro

RELOJ

e_actual
t l <=
57

4. MODELO ALGORTMICO DE UNA FSM (V)


MODELO DE MOORE

TRES PROCESOS
PROCESOS: uno para la generacin del estado futuro
otro para la generacin de la salida y el tercero para la
actualizacin de la memoria
CIRCUITO
COMBINACIONAL

Salida: PROCESS (e_actual)


salida <=

ENTRADAS

Futuro: PROCESS (entrada, e_actual)


Futuro
e actual)
e_futuro <=
Actual: PROCESS (reset,
(reset clok)
e_actual <=

SALIDAS

CIRCUITO
COMBINACIONAL

MEMORIA
(Biestables)
Estado actual

Estado futuro

Reloj

58

4. MODELADO ALGORTMICO DE UNA FSM (VI)

Uso de seales o de variables: los estados deben definirse con un


tipo de datos enumerado y deben ser seales para que puedan
comunicar procesos

Sentencias IF o CASE: los estados deben modelarse con sentencia


CASE y las transiciones con sentencias IF

Debe ser inicializada la mquina en un estado vlido?: es


recomendable que se inicialice en un estado inicial

Hay que utilizar seal de reset?: es recomendable

La seales q
que activan PROCESS deben ir en la lista de
sensibilidad o en WAIT:

En la generacin de las salidas y/o el estado futuro, deben


incluirse
l
todas
d las
l seales
l que entran en ell bloque
bl
En el bloque de memoria se incluir siempre el reloj y la seal
reset si es asncrona
reset,
asncr na
59

4. MODELADO EN FLUJO DE DATOS DE UNA FSM (VII)


Se parte de las ecuaciones lgicas
Se utilizan sentencias de asignacin concurrente de
seal
Hay que utilizar seal de reset?: es recomendable
La seales que activan PROCESS deben ir en la lista de
sensibilidad o en WAIT
WAIT:
Generacin de las salidas y/o del estado futuro
((entradas a los biestables))
Di <=
Si <=
Generacin del estado actual (reloj y reset)
Qi <= ( .reset, rrising
s ng_edge,
edge, fall
fallinf
nf_edge..)
edge..)
60

4. MODELADO ESTRUCTURAL DE UNA FSM (VIII)

Se debe disponer, en la librera WORK,


de los
componentes necesarios para la implementacin.
implementacin

Se instacian y se conectan con las seales adecuadas


Biestables,
Biestables puertas,
puertas muxe
muxess, decoder
decoderss ,..
POR MAP

61

6.1 EJEMPLOS DE MODELADO VHDL (XI)


1. Disese un detector de secuencia, que detecte la
secuencia
i 101 y que una vez detectada
d t t d permanezca en
esa situacin hasta que se inicialice. Implemntese con
p D disparados
p
por f
p
flanco de bajada,
j
, con
biestables tipo
seal CLEAR, y puertas lgicas necesarias para la red
combinacional.
1.
2.
3.
4.
5.

Realcese mediante un autmata de Mealy.


Realcese mediante un autmata de Moore.
Implementacin cannica del detector
Descripcin mediante diagramas ASM
Modelado VHDL en los tres estilos de descripcin

62

6.11 DETECTOR DE SECUENCIA 101 (XII)


AUTMATA DE MEALY
0/0

1/0
0

1/0

X/1
0/0

1/1

0/0

AUTMATA DE MOORE
0
0/0

1
1

1/0

x
0

2/0

3/1

63

6.11 Detector de secuencia 101 (XIII)

RESET

RESET

64

6.11 Detector de secuencia 101 (XIV)

RESET

RESET

65

6.11 Detector de secuencia 101 (XV)


and2_1
d
and2_2
d
AUTMATA DE MEALY
0/0

1/0
0

1/0
/

X/1
0/0
/

and2_3

1/1
/

0/0

AUTMATA DE MOORE
0
0/0

1
1

1/0

x
0

2/0

or2 1
or2_1

3/1

aux
1
aux

and2_2

aux
2

aux
3

or2_3
or2_2

66

6.11 Detector de secuencia 101 (XVI)

67

7.ANLISIS Y SNTESIS DE SISTEMAS SECUENCIALES (I)


Dos formas contrapuestas de abordar el estudios de los
sistemas secuenciales:
a. Sntesis o construccin de sistemas secuenciales: partiendo de
una especificacin encontrar el sistema cuya implementacin
cumpla los requerimientos exigidos.
b Anlisis de sistemas secuenciales: a la vista
b.
implementacin, indicar la operacin que realiza

de

una

68

7.ANLISIS Y SNTESIS DE SISTEMAS SECUENCIALES (II)


EJEMPLOS de ANLISIS
VDD

D0

Q0

T1

CLK

Q1
CLK

Q0

Q1

reset
CLK
VDD

69

7.ANLISIS Y SNTESIS DE SISTEMAS SECUENCIALES (III)


EJEMPLOS de ANLISIS (II)
x*y

00

x*y

01 MUX

10

11
QA

00

01 MUX

10

00

01 MUX

10

11

QA

CLK
QB
QB

D
DB
D

QB

CLK
CLK

11
QA

QA

D
DA

QB
Z
Z

70

You might also like