introducciÓn - quegrande.orgquegrande.org/apuntes/ei/1/tc/teoria/09-10/e...formas. una de las mÆs...

Post on 26-Aug-2020

1 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

INTRODUCCIÓN

Existen sistemas secuenciales demasiado complejos pa-ra poder implementarlos con las técnicas vistas hastaahora, por ejemplo, el procesador MIPS posee 32 regis-tros de 32 bits, lo que lleva a un total de 21024 estados.

En este tema veremos nuevas metodologías para imple-mentar algoritmos o computaciones sobre conjuntos dedatos (vectores de n bits). En general constan de ope-raciones combinacionales más sencillas que se realizansecuencialmente.

Ejemplos de dichos algoritmos son un sumador secuen-cial con un único FA o un multiplicador a partir de unsumador paralelo.

Esta metodología es la que se emplea para la implemen-tación de los computadores digitales de propósito gene-ral.

También se utiliza para implementar hardware específi-co para la computacóon de algoritmos concretos, sobretodo en campos tales como el tratamiento de señales,procesamiento de imágenes, etc.

1

CONCEPTOS BÁSICOS

La especificación algorítmica de sistemas secuenciales implementaeficientemente algoritmos o computaciones que se realizan sobrevectores de datos de n bits. Son los llamados algoritmos RT (’Regis-ter Transfer’).

Una computación es un conjunto de operaciones más simples queconsiste en la transferencia de vectores entre registros. Durante lastransferencias se realizan las operaciones de suma, desplazamien-to, comparación, etc.

Esta nueva metodología divide la implementación en dos bloquesbásicos:

• Camino de datos, el conjunto de elementos que implementael almacenamiento de datos y las funciones de transformaciónde los mismos.

• Sección de control, el sistema secuencial o autómata quecontrola la transferencia y transformaciones de los datos asícomo el secuenciamiento y la operación de todo el sistema.

El esquema general se puede ver en la siguiente figura:

2

CONCEPTOS BÁSICOS

El camino de datos recibe los datos del exterior (entra-das o “Data Input”) y devuelve los resultados obtenidos(salidas o “Data Output”).

La sección de control recibe órdenes e información delexterior (“Control Input”, por ejemplo, reset , begin, stop,modo de operación...) y envía información u órdenes alexterior (“Control Output”, por ejemplo, end , done, over-flow ...).

Las condiciones son generadas por el camino de datosy sirven para que la sección de control pueda tomar de-cisiones y realizar un control dependiente de los datos.

Ejemplos de condiciones son el signo de un operando, elacarreo en una operación, un desbordamiento, el valorde un bit o una comparación, etc.

Los puntos de control son las señales necesarias pararealizar las transformaciones de los datos. Son genera-das por la sección de control e indican al camino de da-tos el modo de operación de todos y cada uno de suselementos.

Ejemplos de puntos de control son la carga de un regis-tro, los bits de control de un MUX o de DEMUX, el tipode operación de una ALU, el incremento de un contador,el desplazamiento de un registro, el sentido del despla-zamiento, la lectura o escritura en una memoria, etc.

3

CONCEPTOS BÁSICOS

El resultado de aplicar o activar cada uno de los puntosde control se denomina microoperación.

El conjunto de microoperaciones que se pueden reali-zar de forma concurrente (en paralelo) se denomina mi-croinstrucción. Cada microinstrucción determina o equi-vale a un estado del autómata de la sección de control.

Cada estado debe indicar que puntos de control hay queactivar en ese momento y cual es su estado (microins-trucción) siguiente, que en general dependerá de las con-diciones actuales del camino de datos.

El conjunto o secuencia de todas las microinstruccionesconstituye un microprograma y su objetivo es imple-mentar el algoritmo o computación requerido.

4

CAMINO DE DATOS

Se encarga de almacenar y transformar los datos.

Consta de:

• Elementos de almacenamiento.

• Operadores.

• Buses.

Elementos de almacenamiento: almacenan la informa-ción. El componente básico es el registro de N bits.

• Registro de N bits con LOAD y CLEAR.

Operación: if LOAD then y←xif CLEAR then y←0

5

CAMINO DE DATOS

RAM = conjunto de 2k registros de N bits que sólo pue-den accederse de uno en uno.

Operación: if READ then y←M[ϑ(A)] else y←0if WRITE then M[ϑ(A)]←x

siendo ϑ(A) =∑k−1

i=0Ai · 2i

Fichero de registros.

Operación: if READ then y←R[ϑ(A)] else y←0if WRITE then R[ϑ(A)]←x

6

CAMINO DE DATOS

Otros elementos de almacenamiento: FIFO y LIFO

Operadores: se encargan de transformar los datos.

donde OP: ADD, SUB, MAX, MIN, ...AND, OR, NOR, EXOR, ...SHIFT, ...

OP también puede representar una función más compleja imple-mentada con sistemas secuenciales (multiplicadores, divisores, ...).

Los operadores generan algunas condiciones: >, <, =, carry, over-flow, ...

7

CAMINO DE DATOS

Buses: son las conexiones, junto con los switches necesarios, quecomunican los distintos elementos del camino de datos (registros yoperadores).

Se clasifican en:

• Paralelos/Serie

• Unidireccionales/Bidireccionales

• Dedicados/Compartidos

• Directos/Indirectos

8

CAMINO DE DATOS

Switches: establecen o cortan el acceso al bus.

• Unidireccionales

• Bidireccionales

9

CAMINO DE DATOS

Selector: selecciona una de entre varias fuentes de da-tos (MUX).

Distribuidor: selecciona uno de entre varios destinos dedatos (DEMUX).

10

CAMINO DE DATOS

Ejemplos de buses:

• Crossbar

• Bus compartido

◦ Usando un selector.

◦ Usando registros con salida triestado.

11

SECCIÓN DE CONTROL

Es el sistema secuencial o autómata que al activar los puntos decontrol en el orden adecuado controla las transferencias y transfor-maciones de los datos que tienen lugar en el camino de datos y queimplementan un algoritmo específico.

Cada estado o microinstrucción de la sección de control indica quépuntos de control se activan en cada momento (salidas del autóma-ta) y, en función de las condiciones (entradas del autómata), cual esel estado o microinstrucción siguiente.

La sección de control también se puede representar mediante undiagrama de flujo.

Existen diversos métodos para implementar una sección de control:

1. Tablas de estado.

2. Elementos de retardo.

3. Microprogramación.

Tablas de Estado

• Es la metodología que ya se ha explicado.

• Es compleja, dificil de depurar, no es modular ni flexible y esdificil realizar modificaciones (no hai una relación evidente entrela implementación y el algoritmo).

• Su uso es poco frecuente.

• Se denomina “Lógica Aleatoria”.

12

SECCIÓN DE CONTROL

Elementos de retardo

• Implementación sencilla y directa.

• Alta velocidad pero con un alto coste hardware.

• Se utiliza en sistemas relativamente pequeños.

• Cada estado se implementa con un biestable tipo D.

• Exiten equivalencias entre un autómata, un diagrama de flujo yla implementación mediante elementos de retardo.

⇔ ⇔

⇔ ⇔

13

SECCIÓN DE CONTROL

Los puntos de control que se activan en cada estado se sacan de lasalida del biestable correspondiente.

Para activar un punto de control en dos o más estados:

14

SECCIÓN DE CONTROL

Ejemplo: implementación con elementos de retardo

Autómata Diagrama de Flujo

15

SECCIÓN DE CONTROL

Ejemplo (cont.): implem. con elementos de retardo

16

SECCIÓN DE CONTROL

Ejemplo (cont.): implem. con elementos de retardo

17

SECCIÓN DE CONTROL

Microprogramación

• La implementación es sencilla y estándar.

• El hardware es casi independiente de la implemen-tación.

• Es muy flexible y versátil.

• Fácil de depurar, modificar y ampliar.

• Su funcionamiento es relativamente lento debido alos accesos a la memoria de control.

• Apta para sistemas grandes y/o complejos.

18

SECCIÓN DE CONTROL

Microprogramación

• Una de las implementaciones más sencillas:

19

SECCIÓN DE CONTROL

Memoria de control

• Almacena la información de control necesaria paraejecutar el algoritmo.

• Su tamaño viene dado por el número de microins-trucciones (2k) del microprograma por el número debits por microinstrucción (m).

• Se puede implementar con una ROM, PROM o RAM.

Contador de microprograma (µPC)

• Direcciona la memoria de control para seleccionar lasiguiente microinstrucción (µI).

20

SECCIÓN DE CONTROL

Registro de microinstrucciones (MIR)

• Almacena la µI que se está ejecutando actualmente.

• Ejemplo de formato doble para codificar las µI:

1. Para instrucciones de salto:

◦ El bit más significativo a cero.

◦ El campo condición indica la condición a verificar.

◦ El campo dirección de salto codifica la dirección de lasiguiente µI a ejecutar si la condición es cierta.

2. Para puntos de control:

◦ El bit más significativo a uno.

◦ Los puntos de control pueden estar codificados (micro-programación vertical) o no (microprogramación horizon-tal).

21

SECCIÓN DE CONTROL

El funcionamiento o secuenciamiento puede realizarse de diferentesformas. Una de las más sencillas:

• a: generación de la dirección siguiente = el µPC se incrementa(ejecución de la siguiente µI) o se carga una nueva dirección(salto).

• b: se direcciona la memoria de control = lectura de la µI co-rrespondiente.

• c: carga de la µI direccionada en el MIR.

• d: ejecución de la µI, dos posibilidades:

1. Activación de los puntos de control y desactivación del MUXde condiciones⇒ El µPC se incrementa.

2. Selección en el MUX de la condición a verificar. Si se cumplela salida del MUX = 1⇒ el µPC se carga con la direcciónespecificada en la µI.

22

SECCIÓN DE CONTROL

Ejemplo de sección de control microprogramada

23

SECCIÓN DE CONTROL

Ejemplo de sección de control microprogramada (cont.)

24

SUMADOR SECUENCIAL

Algoritmo 0 (alto nivel): realiza la operación pero no tie-ne en cuenta la sincronización con el exterior.

Cargar A

Cargar B

Borrar C

for I=1 to n

{Di ← Ai ⊕ Bi ⊕ CC ← Ai ·Bi + (Ai ⊕ Bi) · C

}

25

SUMADOR SECUENCIAL

Algoritmo 1: introduce la sincronización con el exterior mediantedos señales:

1. Control Input: start , indica cuando comenzar la operación.

2. Control Output: done, indica cuando ha finalizado. Mientras es-ta señal esté a cero no puede comenzarse una nueva opera-ción.

También se identifican las entradas y salidas utilizadas:

1. Data Inputs: A, B

2. Data Outputs: D

WAIT: dodone ← 1

while (start)done ← 0

------------------------------Cargar ACargar BBorrar Cfor I=1 to n{

Di ← Ai ⊕ Bi ⊕ CC ← Ai ·Bi + (Ai ⊕ Bi) · C

}

------------------------------goto WAIT

26

SUMADOR SECUENCIAL

Una vez identificadas las líneas de conexión con el exte-rior empezaremos por diseñar un camino de datos capazde realizar el algoritmo:

1. Se identifican las unidades de almacenamiento y ope-radores necesarios:

• A, B y D: registros de n bits.

• C, done: biestables (registros de 1 bit).

• 1 FA.

• 1 Contador + 1 Comparador.

2. Se establecen las conexiones entre los elementosdel camino de datos identificados y se determinanlos puntos de control necesarios (existen diferentesalternativas).

27

SUMADOR SECUENCIAL

Camino de datos (alternativa 1)

28

SUMADOR SECUENCIAL

Algoritmo 2: introduce los puntos de control (microoperaciones)

WAIT: doPreset

while (start)ClearLOADA

LOADB

CLEARC

for I=1 to n{

SHIFTD

LOADC

SHIFT A

SHIFT B

}goto WAIT

Existen microoperaciones que pueden realizarse simultaneamente(p.e. LOADA y CLEARC), por lo que ambos puntos de controlpueden activarse simultaneamente y formar una microinstrucción.

Por el contrario hay puntos que no se pueden activar simultanea-mente (p.e. LOADA y LOADB), por lo que formaran microinstruc-ciones diferentes.

29

SUMADOR SECUENCIAL

Algoritmo 3: se identifican las operaciones simultaneas(se reduce el número de microinstrucciones necesarias).

WAIT: doPreset

while (start)Clear || LOADA|| CLEARC

LOADB

for I=1 to nSHIFTD || LOADC|| SHIFT A|| SHIFT B

goto WAIT

30

SUMADOR SECUENCIAL

El último paso consiste en eliminar las estructuras de control com-plejas (bucles WHILE, FOR, etc.) remplazándolas por saltos condi-cionales (if ) o incondicionales (goto).

dooperación

while (x)

pasaría a ser:

LOOP: operaciónif (x) then goto LOOP

for I=1 to noperación

pasaría a ser:

CLEARI

LOOP: operación || INCI

if (I<n) then goto LOOP

31

SUMADOR SECUENCIAL

Algoritmo 4: se substituyen las estructuras complejas por sus mi-croinstrucciones equivalentes activando en paralelo los puntos decontrol que lo permitan.

WAIT: S0: Presetif (start) then goto WAITS1: Clear || LOADA|| CLEARC|| CLEARI

S2 : LOADB

LOOP: S3: SHIFTD || LOADC|| SHIFT A|| SHIFT B||INCI

if (I<n) then goto LOOPgoto WAIT

32

SUMADOR SECUENCIAL

El algoritmo puede expresarse también mediante un au-tómata o diagrama de flujo.

33

SUMADOR SECUENCIAL

El camino de datos que implementa una computación noes único. Otra posibilidad:

34

SUMADOR SECUENCIAL

Algoritmo 4 bis: sólo cambian los puntos de control que se activanen S3

WAIT: S0: Presetif (start) then goto WAITS1: Clear || LOADA|| CLEARC|| CLEARI

S2 : LOADB

LOOP: S3: SHIFTD || LOADC|| INCI

if (I<n) then goto LOOPgoto WAIT

35

SUMADOR SECUENCIAL

Implementación de la sección de control: elementos deretardo.

36

SUMADOR SECUENCIAL

Implementación de la sección de control: elementos deretardo.

37

SUMADOR SECUENCIAL

Implementación de la sección de control: microprogra-mación.

38

SUMADOR SECUENCIAL

Implementación de la sección de control: microprogra-mación.

39

29EJERCICIOS9.1. Es ribe el mi ro �odigo de la memoria ROM de la se i�on de ontrol de un sistemaque realiza el algoritmo que se expone a ontinua i�on, indi ando los valores de lasentradas del multiplexor de sele i�on de salto.INICIO : a tivar PRESETif empieza goto INICIOa tivar LOADR y CLEARTEST : if z1z0 = 10 goto BUCLEelse if z1z0 = 01 goto CORRECCIONelse a tivar DESPLAZARBUCLE : a tivar INCREMENTAa tivar RESTA y LOADDif I < n goto BUCLEgoto INICIOCORRECCION : a tivar SUMA y LOADRgoto TEST9.2. Dado el aut�omata de la �gura dise~na su orrespondiente unidad de ontrol mi ro-progamada ompleta.

S5

S0

S1

S2

start

c

z

S4

S3

I>n

start

z

I<n

c

{C , C , C }0 1 2

{C , C }1 3

{C , C }4 6

{C , C }2 7

{C }8

{C }5

30 TEMA 9. ESPECIFICACI �ON ALGOR�ITMICA DE SISTEMAS SECUENCIALES9.3. La siguiente �gura representa una unidad de ontrol implementada on elementosde retardo. Extrae su aut�omata de ontrol e implem�entalo mediante la t�e ni a de ontrol mi roprogramado.DQ

DQ

DQ

DQ

3

3

DQ

4

4

DEMUX1 a 4

DQ

5

5

DEMUXstart

1 0

DEMUX1 a 2

1 a 2

0

0

1

1

2

2

C0

C1

CLK

Preset

I>n

Clear

C4,C6

C2,C7

C3

00 01 10 11

0 1

X

Y

C59.4. Dise~na una unidad de ontrol mi roprogramada ompleta orrespondiente al algo-ritmo siguiente que realiza la multipli a i�on entre dos n�umeros naturales X e Y de uatro bits, teniendo en uenta el amino de datos de la �gura. Cal ula tambi�en u�al es la mejor se~nal de reloj para sin ronizar el sistema, teniendo en uenta lossiguientes datos: tiempo de estabiliza i�on de los registros y ontadores 10ns, tiempode retardo en el sumador de 4 bits 30 ns, tiempo de retardo en el omparador y enlos multiplexores 20 ns, tiempo de a eso a la memoria 90 ns. arga X arga YAC = 0for i = 1 to YAC = AC plus Xend 4 bitsSUM

inCCout4 bitsSUM

inCCout

LOADRexistro X

LOADRexistro Y

A<B A>BA=B

A B

COMP

LOADRexistro S

LOADRexistro ACH

CLEARRexistro ACL

CLEAR

LOAD

COUNT

CLEAR

4bits

0

0

RELOXOLX LY CON

CC

LS

CAC

BUS DE ENTRADA

0

4

4 4

4 4

4

44

44

4

4

8

4

Q

D

BUS DE SAÍDA

LAC

CONT

FIN

A<B A=B A>B

9.5.          Obter  o  autómata de  control  e  deseñar  a  unidade de  control microprogramada  completa  que implemente o algoritmo seguinte:

INICIO: activar READYIF           goto INICIO

BUCLE: activar OK, STARTINGIF end goto ESPERARELSE

activar OK, SELECTIF input = 00

activar PROCESSINGELSE IF input = 01

activar INITIATINGactivar PROCESSINGactivar DONE

ELSE goto RECUPERAREND IFgoto BUCLE

ESPERAR: activar WAIT, CHECKIF             goto ESPERARgoto INICIO

RECUPERAR: activar FAULTIF          

activar WAIT, RESTORINGgoto ESPERAR

END IFgoto BUCLE

start

ready

ready

S0

S1

S2

S4

S5

start

start

{READY}

{OK, STARTING}

{OK, SELECT}

{PROCESSING}

{INITIATING}

S6

S7

end

i1i0=00

S3

i1i0=01

end

S8

S9

ready

ready

ready

i1i0=10OR

i1i0=11(i1=1)

{PROCESSING}

{DONE}

{WAIT, CHECK}

{FAULT}

{WAIT, RESTORING}

INICIO:

BUCLE:

ESPERAR:

RECUPERAR:

Temos:

     11 puntos de control     10 microinstruccións de activación     5 condicións no MUX     12 instruccións de salto

9.5. Autómata de Control:

ready

9.5. Diagrama de Fluxo:

S0

start si

S1

no

endno

S2

i1i0=00

S3 i1i0=01

si

no

S4

S5

S6

S7

S8

S9

no

no

si

si

si

no

si

{READY}

{OK, STARTING}

{OK, SELECT}

{PROCESSING}

{INITIATING}

{PROCESSING}

{DONE}

{WAIT, CHECK}

{FAULT}

{WAIT, RESTORING}

ready

ready

9.5. Implementación con Elementos de Retardo:

S0Pr

S1Cl

S2Cl

S3Cl

S4Cl

S5Cl

S6Cl

S7Cl

S8Cl

S9Cl

DEMUX1 a 2

0 1

DEMUX1 a 2

0 1

DEMUX1 a 2

0 1

DEMUX1 a 2

0 1

DEMUX1 a 2

0 1

DEMUX1 a 2

0 1

READY

STARTING

OK

SELECT

PROCESSING

INITIATING

DONE

RESTORING

CHECK

WAIT

FAULT

PRESET

CLOCK

START

CLEAR

END

i1i0 = 00

i1i0 = 01

READY

9.5. Unidade de Control Microprogramada:

ROM

(32 x 12)

CONTADOR MICROPROGRAMA CLK

1

LOAD

INCR

STROBE

    MUX8 a 1

12

3

startend

readyi1i0 = 00i1i0 = 01

5

5

REG. MICROINSTRUCCIONES

RE

AD

YO

KST

AR

TIN

GSE

LE

CT

PRO

CE

SSING

INIT

IAT

ING

DO

NE

WA

ITC

HE

CK

FAU

LT

RE

STO

RIN

G

1   1   0   0   0   0   0   0   0   0   0   00   0   0   1   x   x   x   0   0   0   0   01   0   1   1   0   0   0   0   0   0   0   00   0   1   0   x   x   x   0   1   1   1   01   0   1   0   1   0   0   0   0   0   0   00   1   0   0   x   x   x   0   1   0   0   00   1   0   1   x   x   x   0   1   0   1   00   0   0   0   x   x   x   1   0   0   0   11   0   0   0   0   1   0   0   0   0   0   00   0   0   0   x   x   x   0   0   0   1   01   0   0   0   0   0   1   0   0   0   0   01   0   0   0   0   1   0   0   0   0   0   01   0   0   0   0   0   0   1   0   0   0   00   0   0   0   x   x   x   0   0   0   1   01   0   0   0   0   0   0   0   1   1   0   00   0   1   1   x   x   x   0   1   1   1   00   0   0   0   x   x   x   0   0   0   0   01   0   0   0   0   0   0   0   0   0   1   00   0   1   1   x   x   x   1   0   1   0   00   0   0   0   x   x   x   0   0   0   1   01   0   0   0   0   0   0   0   1   0   0   10   0   0   0   x   x   x   0   1   1   1   0

00000

00001

00010

00011

00100

00101

00110

00111

01000

01001

01010

01011

01100

01101

01110

01111

10000

10001

10010

10011

10100

10101

.   .   .

INICIO:

BUCLE:

ESPERAR:

RECUPERAR:

activar READYIF start goto INICIOactivar OK, STARTINGIF end goto ESPERARactivar OK, SELECTIF i1i0 = 00 goto 8IF i1i0 = 01 goto 10goto RECUPERARactivar PROCESSINGgoto BUCLEactivar INITIATINGactivar PROCESSINGactivar DONEgoto BUCLEactivar WAIT, CHECKIF ready goto ESPERARgoto INICIOactivar FAULTIF ready goto 20goto BUCLEactivar WAIT, RESTORINGgoto ESPERAR

[Examen TC Septiembre'2005]

Deseñar a unidade de control microprogramada completa do seguiente algoritmo:

INICIO: activar PREPARADOIF         GOTO INICIO

activar INICIALIZANDOBUCLE_TIEMPO: activar CALCULAR_INSTANTE

activar INICIALIZAR1, INICIALIZAR2, INICIALIZAR3IF x1x0 = 11

activar PROCESAR1ELSE IF x1x0 = 01

activar PROCESAR2activar DONE

ELSEIF parar

activar FINALIZARGOTO INICIO

END IFEND IFGOTO TESTGOTO BUCLE_TIEMPO

TEST: activar PONER_A_CEROBUCLE_TEST: activar ACUMULAR

IF   parar  activar FINALIZARGOTO INICIO

END IFactivar COMPARARIF                       GOTO BUCLE_TESTGOTO BUCLE_TIEMPO

empezar

converge

S0

S3

S5

S6

empezar

empezar

{PREPARADO}

{INICIALIZAR1,   INICIALIZAR2,   INICIALIZAR3 }

{FINALIZAR}

{DONE}

S7

X1X0=11

S4

S10

S11

parar

converge

(X1X0=00 AND parar)OR

(X1X0=10 AND parar)                                (X0=0 AND parar)

{PROCESAR2}

{PONER_A_CERO}

{ACUMULAR}

INICIO:

BUCLE_TIEMPO:

TEST:

BUCLE_TEST:

Temos:

     13  puntos de control     12  microinstruccións de activación       5  condicións no MUX       7  instruccións de salto

[Examen TC Septiembre'2005] Autómata de Control:

parar

S1{INICIALIZANDO}

S2{CALCULAR_INSTANTE}

{PROCESAR1}

X1X0=01

S8

S9

{FINALIZAR}

{COMPARAR}

converge

ROM

(32 x 14)

CONTADOR MICROPROGRAMA CLK

1

LOAD

INCR

STROBE

    MUX8 a 1

14

3

empezarparar

convergex1x0 = 11x1x0 = 01

5

5

REG. MICROINSTRUCCIONES

PRE

PAR

AD

OIN

ICIA

LIZ

AN

DO

CA

LC

UL

AR

_INST

AN

TE

INIC

IAL

IZA

R1

INIC

IAL

IZA

R2

INIC

IAL

IAR

3PR

OC

ESA

R1

PRO

CE

SAR

2D

ON

EFIN

AL

IZA

RPO

NE

R_A

_CE

RO

activar PREPARADOIF empezar goto INICIOactivar INICIALIZANDOactivar CALCULAR_INSTANTEactivar INIC1, INIC2, INIC3IF x1x0 = 11 goto 9IF x1x0 = 01 goto 11IF parar goto 14goto TESTactivar PROCESAR1goto TESTactivar PROCESAR2activar DONEgoto TESTactivar FINALIZARgoto INICIOactivar PONER_A_CEROactivar ACUMULARIF parar goto 14activar COMPARARIF converge goto BUCLE_TESTgoto BUCLE_TIEMPO

AC

UM

UL

AR

CO

MPA

RA

R

[Examen TC Septiembre'2005] Unidade de control micropogramada:

00000

00001

00010

00011

00100

00101

00110

00111

01000

01001

01010

01011

01100

01101

01110

01111

10000

10001

10010

10011

10100

10101

.   .   .

INICIO:

BUCLE_TIEMPO:

TEST:

BUCLE_TEST:

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

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

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

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

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

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

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

  0   0   0   0   x   x   x   x   x   0   0   0    0   0

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

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

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

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

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

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

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

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

top related