Carta ASM

Cartas ASM • Descripción gráfica del desarrollo de instrucciones en microoperaciones • Grafo orientado y cerrado cuyos n

Views 210 Downloads 17 File size 160KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Cartas ASM • Descripción gráfica del desarrollo de instrucciones en microoperaciones • Grafo orientado y cerrado cuyos nodos son bloques ASM • Un bloque ASM es similar a un estado en un circuito secuencial síncrono: todas las acciones asociadas a un bloque ASM tienen lugar en el mismo ciclo de reloj • Un bloque ASM puede estar formado por tres tipos de elementos (gráficos): • Una caja de estado • Cajas de decisión • Cajas de acción condicional

Cartas ASM: cajas de estado • Hay una y sólo una en cada bloque ASM • Especifica las acciones incondicionales del bloque ASM (aquellas que se activan siempre que se ejecuta el bloque) • Las acciones son transferencias entre registros ≡ activación de señales de control Camino de entrada código

S

Acciones

identificador

Transferencias entre registros, p.e: B ← A Señales de control activas, p.e: RA, WB

Camino de salida

1

Cartas ASM: cajas de decisión • Puede haber varias en un mismo bloque, o ninguna • Permiten especificar bifurcaciones dentro del bloque ASM • Están caracterizadas por una condición sobre • las entradas de control externas del sistema • las salidas de control de la unidad de datos Camino de entrada

0

1

Expr. lóg.

Condición 00...0

11...1

Variables

Caminos de salida

Cartas ASM: ejemplos de cajas de decisión

0

1

X1+X0

B

A

0 00

1-

X1 X0 -1

A

0

X0

1

X1

1

B A

B

Son equivalentes entre sí

2

Cartas ASM: cajas de acción condicional • Puede haber varias en un mismo bloque, o ninguna • Especifica las acciones condicionales del bloque ASM (aquellas que se activan siempre que se ejecuta el bloque y además se cumpla una condición) • Por tanto, van siempre asociadas a las cajas de decisión • Las acciones son transferencias entre registros ≡ activación de señales de control Camino de entrada Transferencias entre registros, p.e: B ← A

Acciones

Señales de control activas, p.e: RA, WB

Camino de salida

Cartas ASM: bloque ASM • El bloque ASM está caracterizado por la caja de estado • El camino de entrada al bloque siempre va a la caja de estado • Los demás elementos (cajas de decisión y acción condicional) son opcionales, pueden aparecer en cualquier número

Un bloque ASM se ejecuta en 1 ciclo de reloj

Camino de entrada código Acciones incondicionales

S 0

condición0

1

Acciones condic. 0

condición1

1

Acciones condic.

Camino de salida

Camino de salida

3

Cartas ASM: relación con las diagramas de estados Diagrama de estados

Carta ASM

Combinaciones de entrada

Condiciones en cajas de decisión

Salidas

Acciones

- tipo Moore [=f(estado)] - tipo Mealy [=f(estado, entradas)]

Estados

- en cajas de estado - en cajas de acción condicional

Bloque ASM

- actual - siguiente

- actual - bloque apuntado por el camino de salida habilitado 0/11

x/z1z2

z2

B 1 1/01

C

x

C

B 0 z1

Cartas ASM: estructura típica

0

Xs

Bloque ASM de espera a la activación de la señal de comienzo (Xs)

1 Camino de entrada código Acciones incondicionales

S 0

1

condición0

Acciones condic. 0

condición1

1

Acciones condic. Camino de entrada

Camino de salida

código

Camino de salida

Acciones incondicionales

S 0

condición0

1

Bloques ASM resultantes de traducir las instrucciones del sistema a microoperaciones

Acciones condic. 0

condición1

1

Acciones condic.

Camino de salida

FIN

Camino de salida

Bloque ASM de activación de la señal de fin de ejecución (FIN)

4

0

Cartas ASM: ejemplo calculadora

0

Xs 1

Instrucción

µops

B ← A+ B IR2-0 = 001

A← A-B IR2-0 = 010

AC ← 0, RT ← A

2

RT ← B, AC ← AC + RT

3

Instrucción

AC ← AC + RT A ← AC

B ← AC

A ← AC

B ← AC

A← -A+B IR2-0 = 100

B←-A+B IR2-0 = 101

A← -A-B IR2-0 = 110

B←-A-B IR2-0 = 111

AC ← 0, RT ← A

2

RT ← B, AC ← AC - RT

4

AC ← AC + RT A ← AC

RT←B

A ← AC

IR2

AC←AC+ RT

0

1 clk

AC←AC+ RT

1

AC←AC-RT

4

B ← AC

Carta ASM de procesado las acciones se expresan como transferencias entre registros

0

Cartas ASM: ejemplo calculadora (2)

AC←AC-RT

IR1

0

IR0

A←AC

F

1

B←AC

(FIN)

0

0

Carta ASM de procesado

Xs 1

1

AC←0,RT←A

2

RT←B

0

IR2

AC←AC+ RT

las acciones se expresan como transferencias entre registros

0

1 ZA C,WT,RA

2

WAC,WT,RB

0

AC←AC-RT

IR1

AC←AC+ RT

1

0

IR0

A←AC

1

B←AC

(FIN)

1

r

WAC

0

AC←AC-RT

4

IR2

s

3

0

Xs

1

1

3

F

1

3

AC ← AC - RT

B ← AC

2

1 clk

AC ← AC - RT

1 3

B← A-B IR2-0 = 011

AC←0,RT←A

0

1

4

µops

A←A+B IR2-0 = 000

1

IR1

1

s

Carta ASM de control las acciones se expresan como activación de señales de control

r

4

RAC

0

IR0

WA

F

1

WB

FIN

5

Cartas ASM: errores comunes Indeterminación del siguiente estado: A A 0 B

1

x

0

1

y

C B

C

D

Lazos sin cajas de estado: A

A

0

0

1

x

1

x

B

B

z0

Cartas ASM: errores comunes (2) Caminos imposibles A A

0

x

1 0 0

y

1

xy

1 z0

z0 1 0

x

x+y

0

1 B

B

6

Cartas ASM: consideraciones temporales Un bloque ASM se ejecuta en 1 ciclo de reloj

A

C0

1

A 0 z0

1

C0

C1

0

1

0 z0

C2

1

0 z1

C2

=

1

0

z2

z2

C1 B

1

0 z1

B

Cartas ASM: consideraciones temporales (2) X Sk

RA RA

M←A

A

WM

0

Control WN WM

X

1

WN M

N

N←A

clk

Sk+1 clk Sk-1

Sk

Sk+1

X RA, WM WN A

A0

A0

A0

M

M0

M0

A0

N

N0

N0

A0

7