Está en la página 1de 16

TAREA: 

 CIRCUITOS 
SECUENCIALES MODO NIVEL !!!!
VIII.­INTRODUCCION A CARTAS ASM (ALGORITHMIC STATE MACHINE)

1.­ INTRODUCCION.
a) ALGORITMO
Un Algoritmo es una secuencia lógica de pasos (acciones y decisiones) que nos ayudan a resolver un problema.
Un Algoritmo puede ser definido mediante:

­ Un diagrama de flujo,
­ Pseudocódigo (PDL Program Design Languaje),
­ Tablas,
­ Etc.

b) CARACTERISTICAS
Las características principales de un Algoritmo son:

1.­ Tener un número finito de pasos.


2.­ Cada paso debe de estar definido claramente.
3.­ Un Algoritmo puede tener una o más salidas.
4.­ Un Algoritmo puede no tener entradas.
2.­ LA CARTA ASM.
a) DEFINICION.
La Carta ASM describe el funcionamiento de una máquina secuencial; sustituye hasta cierto punto el DIAGRAMA
DE ESTADOS en el diseño tradicional de circuitos secuenciales.

b) COMPONENTES DE LA CARTA ASM


i) BLOQUE DE ESTADO
Un BLOQUE DE ESTADO puede representar toda una máquina secuencial, una parte de ella o solo un
estado, un BLODE ESTADO está definido como:
Asignación
Transición de Binaria del
Estados Estado
BBB

Nombre del Lista de


q
Estado i Variables de
Salida que se
verifican en
ese Estado
Transición de
Estados
ii) DIAMANTE DE DECISION iii) SALIDAS CONDICIONADAS
La Salida de un Sistema Digital puede
depender, ya sea del Estado y de la Entrada
(Modelo Mealy), o solamente del Estado
(Modelo Moore). Una Salida Condicionada
Condición de depende del Estado y de la Condición de
Entrada a Entrada a probar, y se representa:
probar
XXX
Viene de un Diamante de Decisión

Transición cuando la Transición cuando la Lista de


Condición de Entrada a Condición de Entrada a Variables de
probar no se Verifica probar se Verifica Salida que se
verifican de
acuerdo a la
Condición de
Entrada a
probar
iv) BLOQUE ASM
Un Bloque ASM consiste de un Bloque de Estado y todos los Diamantes de Decisión y Salidas
Condicionadas asociados a él (NOTA: UN BLOQUE ASM REPRESENTA UN SOLO PERIODO DE TIEMPO),
Ejemplo:
OJO: EN ESTA CARTA ASM PODEMOS OBSERVAR QUE
SE PRESENTAN LOS DOS MODELOS MEALY Y MOORE,
1 DONDE LA SALIDA “LOUT” DEPENDE DEL ESTADO “B”
A Y DE LA ENTRADA “NRT” Y LA SALIDA “HRST”
DEPENDE EXCLUSIVAMENTE DEL ESTADO “B”, LA
B HRST 2 REPRESENTACION DE ESTA CARTA EN DIAGRAMA DE
ESTADOS SERIA:

0 1
NRT 3 t

LOUT

3 4
C D

¿CUANTOS BLOQUES ASM ¿EN CUANTOS TIEMPOS SE


TIENE ESTA CARTA ASM? EJECUTA?
iv) BLOQUE ASM
Un Bloque ASM consiste de un Bloque de Estado y todos los Diamantes de Decisión y Salidas
Condicionadas asociados a él (NOTA: UN BLOQUE ASM REPRESENTA UN SOLO PERIODO DE TIEMPO),
Ejemplo:
NOTA: HEMOS USADO MNEMONICOS PARA
NOMBRAR LAS VARIABLES Y PREFIJOS PARA INDICAR
A SI SE VERIFICAN ALTAS O BAJAS, POR EJEMPLO:

HRST VARIABLE DE SALIDA QUE SE


B HRST VERIFICA ALTA Y HACE UN “RESET”

LOUT VARIABLE DE SALIDA QUE SE


0 1 VERIFICA BAJA Y ES UNA “SALIDA”
NRT
NRT VARIABLE DE ENTRADA QUE SE
LOUT VERIFICA BAJA Y HACE UN
“RETURN”

LOS PREFIJOS “H” Y “L” LOS USO PARA VARIABLES DE


C D
SALIDA Y SI SE VERIFICAN ALTA O BAJA
RESPECTIVAMENTE Y “Y” Y “N” PARA LAS ENTRADAS
Y SI VERIFICAN ALTA O BAJA RESPECTIVAMENTE
v) RESPUESTA EN EL TIEMPO
Es necesario observar el comportamiento en el tiempo de las Cartas ASM, por ejemplo en el caso de la
carta anterior consideraremos 3 casos: CK

0 1 2 3
t
NRT
A t
HRST CASO 1
t
B HRST LOUT
t

0 1 A B D
NRT CK

0 1 2 3
LOUT t
NRT
t
CASO 2
HRST
C D
t
LOUT
t

A B C
v) RESPUESTA EN EL TIEMPO
Es necesario observar el comportamiento en el tiempo de las Cartas ASM, por ejemplo en el caso de la
carta anterior consideraremos 3 casos: CK

0 1 2 3
t
NRT
A t
HRST CASO 3
t
B HRST LOUT
t

0 1 A B D
NRT
C
LOUT
OJO: PODEMOS OBSERVAR QUE EN ESTE CASO
LA ENTRADA “NRT” ES ASINCRONA Y NO ES
SUFICIENTEMENTE ANCHA PARA DISPARAR UN
C D
CAMBIO DE ESTADO, POR LO QUE LA CARTA
TRASCIENDE AL ESTADO “D” DEBIENDOSE DE
HABER IDO AL ESTADO “C”
c) PASOS DE DISEÑO

ENUNCIAR
VERBALMENTE EL
PROBLEMA

GENERAR TANTOS DIAGRAMAS


DE FLUJO COMO SEA NECESARIO
HASTA DEFINIR EL PROBLEMA
Determinar las variables
de control y su relación
DESARROLLAR UN DIAGRAMA DE BLOQUES en el tiempo (DEFINIR EL
DEL SISTEMA QUE INCLUYA TODAS LAS RELOJ)
VARIABLES DE ENTRA Y DE SALIDA

IMPLEMENTAR CADA BLOQUE DEL


DIAGRAMA DESARROLLANDO:
1.­UN ALGORITMO
2.­UNA CARTA ASM
3.­EL CIRCUITO LOGICO CORRESPONDIENTE
i) Reglas del buen diseñador.

1.­Diseñar de arriba abajo (Diseño UP­DOWN)


2.­Identificar claramente que es lo que se quiere controlar y con qué. El
Controlador es la Base fundamental del Diseño, sin embargo, lo que se
quiere controlar es el Fin del Diseño (Arquitectura)

ENTRADA
Comandos DE DATOS
de Control
Los Comandos son señales de
CONTROLADOR

control para que la

ARQUITECTURA
Arquitectura ejecute o procese
ENTRADAS SALIDA
los datos y las líneas de
DE DATOS
DE CONTROL Estatus retroalimentan al
Controlador sobre las
condiciones de la Arquitectura.

Líneas de
Estatus

3.­Documentar el Diseño. Describir detalladamente cada uno de los pasos


del diseño desde la problemática hasta la implementación.
ii) Algunos ejemplos ilustrativos de las cartas ASM.

EJEMPLO 1.­ DADA LA SIGUIENTE CARTA ASM “DIBUJARLA” CORRECTAMENTE

q
q
i q
i YA,YB
i
LOA,LOB
1
YA

1 1 00 01 10 11
YA YB 0 LOA
11 10 01 00

0 LOA 0
LOB
1
YB
q
0 LOB i+1

INCORRECTO
EQUIVALENTE EN
CORRECTO DIAGRAMA DE ESTADO
EJEMPLO 2.­ DADA LA SIGUIENTE CARTA ASM “RE­DIBUJARLA MAS BONITA”

SON DOS BLOQUES ASM SON DOS BLOQUES ASM

1 1 1
YX YX YX

0 HLT HLT 0 0 HLT


EJEMPLO 3.­ DADO EL SIGUIENTE ALGORITMO REPRESENTARLO USANDO CARTAS ASM

WHILE X=Y DO SEGUNDO PASO (DIAGRAMA DE BLOQUES)


BEGIN
instrucción 1
HINST1
instrucción 2 Y X HINST2
YIGUAL
: COMPARADOR CONTROL : ARQUITECTURA
instrucción n HINSTN
END
TERCER PASO (CARTA ASM)
PRIMER PASO (DIAGRAMA DE FLUJO)
q
q q i
i i
NO 0
X=Y YIGUAL
YIGUAL 0 YIGUAL
0
1
SI
1 Ó 1 Ó q
HINST1
i+1
instrucción 1 HINST1 HINST1
q HINST2 HINST2 q
instrucción 2 i+1 i+2
HINST2
: :
:
HINSTN HINSTN
instrucción n q HINSTN
i+n
EJEMPLO 3.­ DADO EL SIGUIENTE ALGORITMO REPRESENTARLO USANDO CARTAS ASM

SEGUNDO PASO (DIAGRAMA DE BLOQUES)

HINST1
NOTA: LOS BLOQUES ASM Y X HINST2
YIGUAL
DEPENDEN DE LA COMPARADOR CONTROL : ARQUITECTURA
HINSTN
ARQUITECTURA, ES DECIR, EN
FUNCION DE COMO EJECUTA
LAS INSTRUCCIONES LA TERCER PASO (CARTA ASM)
ARQUITECTURA: TODAS AL q
MISMO TIEMPO UN TIEMPO i
q q
DESPUES DE PREGUNTAR POR i i
LA CONDICION DE ENTRADA, O 0
AL MISMO TIEMPO QUE YIGUAL
PREGUNTA, O EJECUTA CADA YIGUAL 0 YIGUAL
0
1
INSTRUCCIÓN UNA POR UNA EN 1 Ó 1 Ó q
HINST1
FORMA CONSECUTIVA, ETC. HINST1 HINST1
i+1
q HINST2 HINST2 q HINST2
i+1 i+2
: :
HINSTN HINSTN
q HINSTN
i+n
EJEMPLO 4.­ DADO EL SIGUIENTE ALGORITMO REPRESENTARLO USANDO CARTAS ASM

IF X=N THEN SEGUNDO PASO (DIAGRAMA DE BLOQUES)


SALIDA=0
INICIO=1
N X LSAL
NCOND
CONTROL ARQUITECTURA
(NOTA: X y N son HINI
variables booleanas)
TERCER PASO (CARTA ASM)
PRIMER PASO (DIAGRAMA DE FLUJO)

q q q
i i i
SI NO
X=N
NCOND 1 NCOND 1 NCOND 1

SALIDA = 0 0 Ó 0 Ó 0
INICIO = 1 q
LSAL LSAL LSAL
i+1
HINI HINI
q
i+1 HINI
���������������������������������������������������������������������������
���������������������������������������������������������������������������������
�����������������������������������������������������

También podría gustarte