Anda di halaman 1dari 37

Tema 4.

La Unidad de Control

Arquitectura de
Computadores

I. T. Informtica de Sistemas

Curso 2009-2010

Tema 4: Transparencia: 2 / 73

La Unidad de Control

ndice

Operaciones elementales
Computador elemental
Memoria principal
Banco de registros
Unidad aritmtico-lgica
Unidad de direccionamiento
Unidad de control
Temporizacin de las seales de control
Ejecucin de instrucciones
Diseo de la Unidad de Control: cableado vs. Microprogramado
Microprogramacin y nanoprogramacin: Motorola 68000
Excepciones en el computador
Arranque del computador
Bibliografa

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

1
Tema 4: Transparencia: 3 / 73

La Unidad de Control

Operaciones elementales (I)

La unidad de control tiene como funcin bsica la ejecucin la


secuencia siguiente:
Tomar la instruccin apuntada por el CP de la memoria principal
(fase de fetch)
Decodificar la instruccin leda
Ejecutar la instruccin
Actualizar debidamente el CP

La ejecucin de una instruccin est gobernada por un contador


de periodos, durante los cuales, la UC genera las seales de
control necesarias en funcin de la informacin de que dispone
en:
La propia instruccin
El registro de estado
Seales de E/S (interrupciones, DMA, reset, etc.)

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 4 / 73

La Unidad de Control

Operaciones elementales (II)

La ejecucin de cada instruccin requiere realizar una serie de


pequeos pasos mediante seales de control; estos pasos se llaman
operaciones elementales

Las operaciones elementales que puede realizar todo sistema


computador se clasifican en los grupos siguientes:
Operaciones de transferencia. Mover informacin de un elemento
a otro

Operaciones de proceso.La informacin origen pasa a travs de


un operador
Todas las operaciones elementales, ya sean de transferencia o de
proceso comienzan en un elemento de almacenamiento y terminan en
otro

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

2
Tema 4: Transparencia: 5 / 73

La Unidad de Control

Operaciones elementales (III)


Transferencia

LA LB LC
Registro A Registro B Registro C

TA TB TC

Bus de Datos

Operacin de transferencia: MOV RegB, RegA

Volcar el contenido del Registro A al Bus de Datos


Cargar el contenido del Bus de Datos en Registro B

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 6 / 73

La Unidad de Control

Operaciones elementales (y IV)


Proceso

LA LB
Registro A Registro B

Operacin de proceso: XOR RC, RA, RB

ALU SelOp
Llevar el Registro A a la ALU
Llevar el Registro B a la ALU
Escoger la operacin XOR LC
Registro C
Cargar el resultado en el Registro C
TC
Bus de Datos

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

3
Tema 4: Transparencia: 7 / 73

La Unidad de Control

Estructura computador elemental (I)


Estudiaremos las seales de control que genera una Unidad de Control
por medio del empleo de una mquina simplificada que siga la
arquitectura de Von Neumann

REGISTROS
CPU
PERIFRICO
MEMORIA
PRINCIPAL PERIFRICO
UNIDAD UNIDAD PERIFRICO
ARITMTICA DE E/S
PERIFRICO

CP PERIFRICO
UNIDAD DE CONTROL

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 8 / 73

La Unidad de Control

Estructura computador elemental (II)


Memoria Principal (I)

El bloque de memoria principal


consta: Las seales de control son:
Pastilla/s de memoria RAM Activa
Seal Nombre Significado
por
Registro de direcciones
Iniciar ciclo de
Buffer bidireccional al bus de MEM Nivel Memory
memoria
datos RD Nivel Memory read Ciclo de lectura
Mem
WR Nivel Memory write Ciclo de escritura
Memoria Rd
Principal Address latch Carga el registro
Wr LDIR Flanco
enable de direcciones
A nivel alto los
TMEM Nivel --- datos se vuelcan al
Tmem bus

Bus de datos
Bus de direcciones

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

4
Tema 4: Transparencia: 9 / 73

La Unidad de Control

Estructura computador elemental (III)


Memoria Principal (y II)

La duracin de la seales RD y WR depende de la memoria, es decir,


de sus tiempos de lectura y escritura
La duracin de MEM ser la mnima posible, es decir, la
correspondiente al periodo bsico de la mquina
seales
seales

MEM
MEM

LDIR
LDIR

RD
RD

WR
WR
vuelca
TMEM contenido lee el
al bus TMEM contenido
del bus
Ciclo de lectura tiempo
Ciclo de escritura tiempo
Cronograma del ciclo de lectura Cronograma del ciclo de escritura
Departamento de Automtica Arquitectura de Computadores
rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 10 / 73

La Unidad de Control

Estructura computador elemental (IV) Banco


de Registros
El banco de registros consta de los siguientes elementos:
16 registros de propsito general accesibles al usuario desde el
ensamblador o lenguaje mquina
2 puertas de salida que permiten leer 2 registros simultneamente
1 puerta de entrada que permite cargar un registro desde el bus de
datos
a la ALU
Dir A Dir B
Sal A Sal B La seal de control es la siguiente:
Banco de Activa
Seal Nombre Significado
Registros por
Carga el registro
Entrada indicado por
Lr LR Flanco Load register DIRECCIN A
con un dato del
bus de datos
Bus de Datos

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

5
Tema 4: Transparencia: 11 / 73

La Unidad de Control

Estructura computador elemental (V) Unidad


Aritmtico-Lgica (I)

La unidad aritmtico-lgica consta de los siguientes


elementos:
Un operador con 4 seales de control para seleccin
de la operacin a realizar
2 multiplexores de 4 entradas y 1 salida, que
seleccionan entre los posibles operandos
Un registro acumulador que permite almacenar
resultados intermedios
La salida del registro acumulador, puede transferirse
al multiplexor X, al bus de datos o al bus de
direcciones, segn indiquen las seales de control

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 12 / 73

La Unidad de Control

Estructura computador elemental (VI) Unidad


Aritmtico-Lgica (y II)

de CP
Las seales de control son
de salida B del banco de registros
Activa
Seal Nombre Significado
por
de salida A del banco de registros
de salida A del banco de registros Selecciona la
Selop Nivel Selection
operacin a realizar
X0, X1 Y0, Y1
Selecciona uno
Mux X Mux Y X0, X1 Nivel ---
entre 3 operandos
Selop
ALU
coma fija Selecciona uno
Y0, Y1 Nivel ---
entre 4 operandos
Carga el
Acum
Lac LAC Flanco Load acumulator acumulador con la
Tac Talu
salida del operador
Bus de datos
Transfiere el
Bus de direcciones TAC Nivel Data transfer acumulador al bus
de datos
Transfiere el
TALU contenido del
Nivel Address transfer
acumulador al bus
de direcciones

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

6
Tema 4: Transparencia: 13 / 73

La Unidad de Control

Estructura computador elemental (VII)


Unidad de Direccionamiento
La unidad de direccionamiento se encarga de generar las direcciones
de memoria
El CP debe actualizarse cada vez que se ejecuta una instruccin,
incrementndose segn la direccin de la siguiente instruccin
El incremento vendr dado por la informacin disponible en el bus de
datos
Activa
Seal Nombre Significado
por
Carga una direccin
Load program nueva en el CP
LPC Flanco
counter desde el bus de
datos
Transfiere el
TBDAD Nivel
Data bus contenido del bus
transfer de datos al bus de
direcciones
Transfiere el
Program contenido del
TCP Nivel
counter transfer registro CP al bus
de direcciones

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 14 / 73

La Unidad de Control

Estructura computador elemental (VIII)


Unidad de Control

La UC genera todas las seales que forman el bus de control


Adems, necesita de:
Registro de instrucciones, donde almacena varios bytes de
cdigo mquina correspondiente a una instruccin
Puerto de salida, que vuelca en el bus de datos los datos
inmediatos o desplazamientos que llevan asociados algunas
instrucciones
Registro de estado, que contiene los flags. Este registro se carga
selectivamente con varias seales de control activas por flanco y
provenientes de la ALU
Registro contador de fases, gobernado por el reloj del sistema y
que se puede poner a 0 con la seal RESET
Dos buses de 4 bits, que sirven para generar las seales de
seleccin de registro
Departamento de Automtica Arquitectura de Computadores
rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

7
Tema 4: Transparencia: 15 / 73

La Unidad de Control

Estructura computador elemental (VIII)


Unidad de Control
Bus de datos

Reloj
DIT Oscilador
Li
R.Ins Desp./ DI. C.Fases
Reset
Unidad de Control
al banco de registros
LFlags
Registro Estado

seales de control
Activa
Seal Nombre Significado
por
LI Flanco Load instruction Carga una instruccin desde el bus de datos
DIT Nivel Data inst. transfer Transfiere un dato inmediato o un desplazamiento al bus de datos
LFlags Flanco Load flags Carga los flags despus de una instruccin aritmtica o lgica
RESET Flanco Reset Pone a 0 el contador de fases

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 16 / 73

La Unidad de Control

Estructura computador elemental (y IX)


L cp
CP

Tcp

Dir A Dir B
Sal A S al B X 0, X 1 Y0, Y1 Me m
Mux X Mux Y
Banc o de Memo ri a Rd
Regis tros Selop Prin cipa l
ALU Wr
coma fija
E ntrada
Lr Tme m
Acu m
L ac
Tac T alu
Bus de da to s

T bd ad
Reloj
Bus de dir ec cion es
DI T Os ci lador
Li
R.I ns Desp. / DI. C. Fas es
Reset
Unidad de Cont rol
al banc o de regis t ros
LFla gs
Regis t ro E s tado

s eale s de c ont rol

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

8
Tema 4: Transparencia: 17 / 73

La Unidad de Control

Temporalizacin

El comportamiento de un computador es sncrono. Est gobernado


por un reloj
La ejecucin de una instruccin se divide en:
1. Fase de bsqueda de la instruccin o fase de fetch
2. Decodificar la instruccin
3. Ejecucin de la instruccin y en caso necesario:
3.1 Leer los operandos
3.2 Realizar la operacin
3.3 Almacenar el resultado
3.4 Actualizar el registro de estado
Habr que actualizar el CP para que apunte a la instruccin
siguiente a ejecutar
Cada una de las fases se realiza en un nmero determinado de
periodos de reloj

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 18 / 73

La Unidad de Control

Ejecucin de instrucciones (I)


ADD A, B (I)

Instruccin de suma con direccionamiento a registro


El formato de la instruccin es el siguiente:

Cdigo de operacin Registro Registro


ADD A B
0 7 8 11 12 15

La instruccin ocupa dos bytes


El significado de la instruccin es A:= A + B;

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

9
Tema 4: Transparencia: 19 / 73

La Unidad de Control

Ejecucin de instrucciones (II)


ADD A, B (II)
SEAL DE
ACCIN OPERACIN ELEMENTAL
CONTROL
Traer instruccin:
Direccionar CP bus direcciones TCP
Cargar registro de direcciones LDIR

Leer instruccin Ciclo de memoria MEM


Lectura RD
Abrir buffer al bus de datos TMEM
Cargar instruccin en la Unidad de Control (UC) LI
Decodificacin: Retardo (1 periodo)
Incrementar CP:
Sumar CP+2 La UC entrega el 2 al bus de datos DIT
Seleccin de operandos y de operacin X0, X1 (B.Datos),
(simultneamente) Y0, Y1 (CP),
Selop (suma)

Carga del acumulador LAC

Transferencia al bus de datos TAC


Cargar nuevo CP
Carga del nuevo CP LPC

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 20 / 73

La Unidad de Control

Ejecucin de instrucciones (III)


ADD A, B (III)
SEAL DE
ACCIN OPERACIN ELEMENTAL
CONTROL
Realizar suma:
Obtener direcciones registros La UC genera las direcciones de los DIR A (registro B),
registros A y B DIR B (registro A)

Realizar la suma Seleccin de operandos y de operacin X0, X1 (salida B),


(simultaneamente) Y0, Y1 (salida A),
Selop (suma)
Carga del acumulador LAC
Guardar resultado:
Transferir dato del acumulador Transferencia al bus de datos TAC

Cargar registro A La UC genera direccin del registroA DIR A (registro A)


Seal de carga LR
Actualizar registro de estado:
LFlags
Poner a 0 el contador de fases:
RESET

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

10
Tema 4: Transparencia: 21 / 73

La Unidad de Control

Ejecucin de instrucciones (IV)


ADD A, B (IV)
seales
reloj
TCP
LDIR
MEM
MR
MW
TMEM
LI
DIT
X0, X1 B.Da puerto B
tos
Y0, Y1 CP puerto A

SELOP sum suma


a
LAC
DIR A registro Bregistro A

DIR B registro A

TAC
TALU
LPC
LR
LFlags
RESET
periodo 1periodo 2periodo 3periodo 4.periodo 5periodo 6periodo 7periodo 8

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 22 / 73

La Unidad de Control

Ejecucin de instrucciones (V)


ADD A, B (y V)

Comentarios y mejoras:
La fase de fetch solamente trae 1 byte si el tamao del bus de
datos es de 1 byte; en ese caso tendramos que realizar dos
accesos a memoria para traer la instruccin entera
El periodo 4 se "pierde" en decodificar la instruccin; es parte del
tiempo de ejecucin de la instruccin
Los periodos 5 y 6 de actualizacin del CP se podran ahorrar con
un sumador aparte para la Unidad de direccionamiento
Igualmente, la actualizacin de CP llevara un periodo menos si
los resultados de la ALU se volcaran directamente al bus de datos
o direcciones sin pasar por el acumulador
Se puede optimizar el funcionamiento si hacemos que antes de
terminar de ejecutar la instruccin se empiece la siguiente fase de
fetch
Hay que tener cuidado con los posibles conflictos en los buses

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

11
Tema 4: Transparencia: 23 / 73

La Unidad de Control

Ejecucin de instrucciones (VI)


MOV A, [B + 1234h] (I)

Instruccin de transferencia con direccionamiento relativo a registro


El formato de la instruccin es el siguiente:

Cdigo de operacin Registro Registro 1234h


MOV A B
0 78 11 12 15 16 31

La instruccin ocupa cuatro bytes


El significado de la instruccin es A:= Memoria (B + 1234h);

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 24 / 73

La Unidad de Control

Ejecucin de instrucciones (VII)


MOV A, [B + 1234h] (II)

SEAL DE
ACCIN OPERACIN ELEMENTAL CONTROL

Traer la instruccin
Direccionar CP bus de direcciones TCP
Cargar registro de direcciones LDIR

Leer la instruccin Inicio ciclo de memoria MEM


Lectura RD
Buffer de memoria al bus de datos TMEM
Cargar registro de instrucciones LI

Decodificacin 1 periodo de
retardo

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

12
Tema 4: Transparencia: 25 / 73

La Unidad de Control

Ejecucin de instrucciones (VIII)


MOV A, [B + 1234h] (III)

SEAL DE
ACCIN OPERACIN ELEMENTAL CONTROL

Incrementar CP
Sumar CP + 4 UC pone en el bus de datos el 4 DIT
Seleccin de operandos y <X0, X1 = B. Dat>
operacin de suma <Y0, Y1 = CP>
<Selop = sumar>
Cargar el acumulador LAC

Cargar nuevo valor en Acumulador Bus de datos TAC


CP Cargar el registro CP LCP

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 26 / 73

La Unidad de Control

Ejecucin de instrucciones (IX)


MOV A, [B + 1234h] (IV)

SEAL DE
ACCIN OPERACIN ELEMENTAL CONTROL

Calcular direccin del


operando fuente
Seleccin de B + UC pone 1234h. B.datos DIT
desplazamiento UC genera direccin B <DIR A = B>

Seleccin de operandos y <X0, X1 = b.dat>


Sumar operacin <Y0,Y1 = Sal A>
<Selop = suma>
Cargar el acumulador LAC

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

13
Tema 4: Transparencia: 27 / 73

La Unidad de Control

Ejecucin de instrucciones (X)


MOV A, [B + 1234h] (V)

SEAL DE
ACCIN OPERACIN ELEMENTAL CONTROL

Guardar el resultado
Volcar al b. datos el Transferencia del acumulador al
operando fuente bus de direcciones TALU
Cargar registro direcciones LDIR
Inicio ciclo de memoria MEM
Lectura RD
Buffer de memoria al bus de datos TMEM
UC genera direccin A <DIR A = A>
Cargar banco de registros LR

Poner a 0 el contador RESET


de fases

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 28 / 73

La Unidad de Control

Ejecucin de instrucciones (XI)


MOV A, [B + 1234h] (y VI)
seales

reloj
TCP
LDIR
MEM
RD
WR
TMEM
LI
DIT
bus de bus de
X0, X1 datos datos

Y0, Y1 CP puerto A

SELOP suma suma

LAC
DIR A registro B registro A

DIR B
TAC
TALU
LPC
LR
RESET

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

14
Tema 4: Transparencia: 29 / 73

La Unidad de Control

Ejecucin de instrucciones (y XII)


JZ EsCero
seales seales

reloj reloj
TCP TCP
LDIR LDIR
MEM MEM
TMEM TMEM
RD RD
WR WR
LI LI
DIT DIT
bus de bus de bus de
X0, X1 datos X0, X1 datos datos
Y0, Y1 CP Y0, Y1 CP CP
SELOP suma suma suma
SELOP
LAC LAC
DIR A DIR A
DIR B DIR B
TAC TAC
TALU TALU
LPC LPC
LR LR
LFlags LFlags
RESET RESET
periodo 1 periodo 2 periodo 3 periodo 4 periodo 5 periodo 6 periodo 7 periodo 1 periodo 2 periodo 3 periodo 4 periodo 5 periodo 6 periodo 7

decodificacin tiempo decodificacin tiempo


y y
evaluacin de la condicin de salto evaluacin de la condicin de salto
Condicin de no salto Condicin de salto
Departamento de Automtica Arquitectura de Computadores
rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 30 / 73

La Unidad de Control

Diseo de la Unidad de Control (I)

La UC necesita del cdigo de operacin de la instruccin, el estado


del sistema y las seales de E/S, al ritmo del contador de fases
La UC es un circuito que genera las seales de control necesarias
para ejecutar una instruccin
El diseo de la UC se realiza definiendo todas las seales de control
en funcin de todas las posibles entradas

INSTRUCCIN

CONTADOR
DE FASES UNIDAD SEALES DE
DE CONTROL
CONTROL
ESTADO

E/S

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

15
Tema 4: Transparencia: 31 / 73

La Unidad de Control

Diseo de la Unidad de Control (II)

UC cableada (lgica cableada) UC microprogramada(lgica


Mtodo tradicional de diseo lgico almacenada)
Ejemplos: Almacena, en memoria de control,

Alpha 21164, 21264, AMD K6, las palabras de control


Pentium correspondientes a cada periodo de
ejecucin de una instruccin
Computadores con lgica sencilla
Ejemplos:
VENTAJAS:
Ordenadores medios i80x86
Circuito ms rpido que el de
VENTAJAS:
lgica almacenada
Modificacin del juego de
INCONVENIENTES:
instrucciones
Muy laborioso de disear
Un computador puede admitir
Muy difcil de modificar
varios juegos de instrucciones
INCONVENIENTES:
Ms lentas

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 32 / 73

La Unidad de Control

Diseo de la Unidad de Control (III)


Lgica cableada (I)

La unidad de control es una mquina secuencial del tipo Moore, en la


que las salidas dependen del estado en el que se encuentra y no de
las entradas nicamente
El nmero de estados depende del nmero de operaciones
elementales a realizar, lo que dar el nmero de biestables para
realizarlos
Inicialmente la unidad de control est en estado de espera y necesita
una seal externa para cambiar de estado
La implementacin de este circuito puede hacerse mediante:
Mtodo de la tabla de estados. El control pasa por una serie de
estados que dependiendo de las entradas determinan el estado
siguiente y qu seales de control se activan
Mtodo de las clulas de retardo. Al diagrama de control de
estados se le sustituyen los estados por clulas de retardo
Mtodo del contador secuenciador. Se emplea un contador de
ciclos que indica las seales a activar dependiendo de la
instruccin
Departamento de Automtica Arquitectura de Computadores
rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

16
Tema 4: Transparencia: 33 / 73

La Unidad de Control

Diseo de la Unidad de Control (IV)


Lgica cableada (II). Mquina Estados (I)

El diseo de la Unidad de Control ser por tanto:

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 34 / 73

La Unidad de Control

Diseo de la Unidad de Control (V)


Lgica cableada (III). Mquina Estados (II)
Camino de datos anterior en la que se supone un repertorio RISC,
siendo las instrucciones del tipo registro-registro.
El repertorio de instrucciones ser
Instrucciones de memoria:
LD R, Memoria (R Contenido de la Memoria)
ST Memoria, R (Contenido de la Memoria R)
Instrucciones de proceso:
ADDI / SUBI R1, R2, Inmediato (R1 = R2 +/- Dato inmediato)
ADD / SUB R1, R2, R3 (R1 = R2 +/- R3)
Instrucciones de control:
JZ Direccin de salto (CP CP + Desplazamiento)
JMP Direccin de salto )CP Direccin de salto)
Modos de direccionamiento permitidos:
Inmediato, para las instrucciones de proceso
Relativo a registro, para las instrucciones de acceso a memoria y la de
salto condicional
Directo a memoria, para la instruccin de salto incondicional
Departamento de Automtica Arquitectura de Computadores
rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

17
Tema 4: Transparencia: 35 / 73

La Unidad de Control

Diseo de la Unidad de Control (VI)


Lgica cableada (IV). Mquina Estados (III)
Formato de instruccin todas de 32 bits.

Los cdigos de operacin sern:

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 36 / 73

La Unidad de Control

Diseo de la Unidad de Control (VII)


Lgica cableada (V). Mquina Estados (IV)
Mquina de estados (primera parte)

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

18
Tema 4: Transparencia: 37 / 73

La Unidad de Control

Diseo de la Unidad de Control (VIII)


Lgica cableada (VI). Mquina Estados (V)
Mquina de estados (segunda parte)
Del estado 3
CO = memoria CO = Salto incondicional CO = proceso CO = Salto condicional

Si no Z Si Z
Rega+Reg.
CP Despl.
Dir. CP
Destino
a Reg. Dir. CP +
a Desplaz
Reg. Dir.
0
4 CP
a Acumulador
= CP + 2 0
9 CPa=CP
CP + 2 14
0 CPAcumulador
al = CP + 2

Si Inmediato Si Registro
CP
Reg
a Reg.
OP Inm
Dir. CP
Reg
a OP
Reg.Reg
Dir.
0
5
Acumulador
CP a Reg. Dir.
a 10
0 CPAcumulador
al = CP + 2 12
0 alCPAcumulador
= CP + 2 15
CP
0 CP
a Reg.
Acum a CPDir.
CP = Direcc.
Reg. CP + 2 = CP + 2

CP a Reg. Dir. CP a Reg. Dir.


CP
Iniciar
a Reg.
cicloDir.
11
0 Acum
CP
a Reg
= CP +2 13
0 Acum a Reg
CP = CP + 2
0
6 CP
de memoriaI
= CP + 2

Si mem a reg Si reg a mem


CP a a
Reg. Dir. CP aaReg. Dir.
0
7 Mem
CP = CP
Reg
+2 0
8 Reg Mem
CP = CP +2

Al estado 0

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 38 / 73

La Unidad de Control

Diseo de la Unidad de Control (IX)


Lgica cableada (VII). Mquina Estados (VI)
Hace falta definir a partir del diagrama de
estados la funcin de transicin de
estados
Como son 15 estados harn falta 4 bits
para numerarlos
Una opcin es usar el nmero del estado
en binario, por ejemplo, el estado 0
(0000), el estado 1 (0001), el estado 2
(0010), etc
Las ecuaciones del cambio de estado:

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

19
Tema 4: Transparencia: 39 / 73

La Unidad de Control

Diseo de la Unidad de Control (X)


Lgica cableada (VIII). Mquina Estados (VII)
Ecuaciones del cambio de estado (cont):

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 40 / 73

La Unidad de Control

Diseo de la Unidad de Control (XI)


Lgica cableada (IX). Mquina Estados (VIII)
Ecuaciones del cambio de estado (final): Del estado 3
CO = memoria CO = Salto incondicional CO = proceso CO = Salto condicional

Si Inmediato Si Registro
CP
Rega Reg.
OP Inm
Dir. CP
Reg
a OP
Reg.Reg
Dir.
10
0 al Acumulador
CP = CP + 2 12
0 alCPAcumulador
= CP + 2

CP a Reg. Dir. CP a Reg. Dir.


11
0 Acum
CP a Reg
= CP +2 13
0 Acum a Reg
CP = CP + 2

Al estado 0

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

20
Tema 4: Transparencia: 41 / 73

La Unidad de Control

Diseo de la Unidad de Control (XII)


Lgica cableada (X). Mquina Estados (IX)
Quedan por definir las seales que se deben generar en
cada uno de los estados

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 42 / 73

La Unidad de Control

Diseo de la Unidad de Control (XIII)


Lgica cableada (XI). Mquina Estados (X)
Seales que se generan en los estados

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

21
Tema 4: Transparencia: 43 / 73

La Unidad de Control

Diseo de la Unidad de Control (XIV)


Lgica cableada (XII). Mquina Estados (XI)
Una vez definida la funcin de transicin de estados, la unidad
de control se mueve por dicho diagrama

Como se ha visto en varios estados se generan las mismas


seales de control

Por ejemplo la seal LCP se activa en los estados 1, 9 y 15 y


la seal de LAC en los estados 0, 4, 10, 12 y 14 con lo que la
ecuacin para estas seales seran:

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 44 / 73

La Unidad de Control

Diseo de la Unidad de Control (XV)


Lgica cableada (XIII). Mquina Estados (XII)

La generacin de las seales de control sera:

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

22
Tema 4: Transparencia: 45 / 73

La Unidad de Control

Diseo de la Unidad de Control (XVI)


Lgica cableada (XIV). Mquina Estados (XIII)

La generacin de las seales de control sera (final):

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 46 / 73

La Unidad de Control

Diseo de la Unidad de Control (XVII)


Lgica cableada (XV). Clulas de retardo (I)

El diseo se basa en implementar el diagrama de estados


mediante unos elementos que nicamente proporcionan un
retardo llamados clulas de retardo

Las lneas de control se conectan a las salidas de las clulas de


retardo que representan el estado en el que se deben activar

La funcin de las clulas de retardo es la de sincronizar el


secuenciamiento de las seales de control

Una vez realizadas las conexiones se introduce un nico pulso


por el circuito

El pulso circula por el circuito activando las seales adecuadas


en cada momento

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

23
Tema 4: Transparencia: 47 / 73

La Unidad de Control

Diseo de la Unidad de Control (XVIII)


Lgica cableada (XVI). Clulas de retardo (II)

Para la misma mquina con el mismo repertorio CP a Reg. Dir.


de instrucciones y la misma mquina de estados, 0 CP = CP + 4
2

la seal LR se activa en los estados 7, 11 y 13 0


1
Inic.aciclo
CP
CP = CP
Acum.
Reg.Mem.
a CP
Dir.
+2

L cp
CP
CP a Reg. Dir.
0
2 Memoria
CP = CP +a 2RI
Tcp

CP a Reg. Dir.
Dir A Dir B 0
3 Decodificacin
CP = CP + 2
Sal A S al B X 0, X 1 Y0, Y1 Me m
Mux X Mux Y
Banc o de Memo ri a Rd CO = memoria CO = Salto incondicional CO = proceso CO = Salto condicional
Regis tros ALU
Selop Prin cipa l
coma fija
Wr

E ntrada Si no Z Si Z
Lr Tme m CP +
a Desplaz
Reg. Dir.
Rega+Reg.
CP Despl.
Dir. CP
Destino
a Reg. Dir.
L ac
Acu m

Tac T alu
0
4 CP
a Acumulador
= CP + 2 0
9 CPa=CP
CP + 2 14
0 CPAcumulador
al = CP + 2
Bus de da to s
Si Inmediato Si Registro
T bd ad
CP
Reg
a Reg.
OP Inm
Dir. CP
Reg
a OP
Reg.Reg
Dir.
Reloj
Bus de dir ec cion es
0
5
Acumulador
CP a Reg. Dir.
a 10
0 CPAcumulador
al = CP + 2 12
0 alCPAcumulador
= CP + 2 15
CP
0 CP
a Reg.
Acum a CPDir.
DI T Os ci lador CP = Direcc.
Reg. CP + 2 = CP + 2
Li
R.I ns Desp. / DI. C. Fas es
Reset
CP a Reg. Dir. CP a Reg. Dir.
Unidad de Cont rol
CP
Iniciar
a Reg.
cicloDir. 11
0 Acum
CP a Reg
= CP +2 13
0 Acum a Reg
CP = CP + 2
al banc o de regis t ros
LFla gs
Regis t ro E s tado
0
6 CP
de memoriaI
= CP + 2

Si mem a reg Si reg a mem


s eale s de c ont rol
CP a a
Reg. Dir. CP aaReg. Dir.
0
7 Mem
CP = CPReg
+2 0
8 Reg Mem
CP = CP +2

Al estado 0

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 48 / 73

La Unidad de Control

Diseo de la Unidad de Control (XIX)


Lgica cableada (XVII). Clulas de retardo (III)

Introduciendo un nico pulso en el diagrama


CP
Clula
a Reg.
deDir.
0
1 CP
retardo
= CP 1+2

CP a Reg.
Clula deDir.
0
2 CP
retardo
= CP +22

CP
Clula
a Reg.
deDir.
0
3 retardo
CP = CP 3+2

CO = memoria CO = Salto incondicional CO = proceso CO = Salto condicional

Si no Z Si Z
CP
Clula
a Reg.
deDir. CPClula
a Reg.deDir. CPClula
a Reg.
deDir.
0
4 CP
retardo
= CP +4 2 0
9 CPretardo
= CP +92 14
0 CPretardo
= CP +14
2

Si Inmediato Si Registro
CPClula
a Reg.deDir. CPClula
a Reg.deDir.
0
5
CP
Clula
a Reg.
deDir. 10
0 CP
retardo
= CP +102 12
0 CPretardo
= CP +122 15
CPClula
a Reg.
0 CPretardo
deDir.
CP
retardo
= CP 5+2 = CP +15
2

CPClula
a Reg.deDir. CP
Clula
a Reg.
deDir.
CP
Clula
a Reg.
deDir.
11
0 CPretardo
= CP +112 13
0 CP
retardo
= CP +132
0
6 CP
retardo
= CP 6+2

Si mem a reg Si reg a mem LR (2) LR (3)


CPClula
a Reg.
deDir. CP
Clula
a Reg.
deDir.
0
7 CPretardo
= CP +72 0
8 CP
retardo
= CP +82
LR (1)

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

24
Tema 4: Transparencia: 49 / 73

La Unidad de Control

Diseo de la Unidad de Control (XX)


Lgica cableada (XVIII). Contador secuenciador

Emplea un contador que marca los instantes en que se deben


activar las seales
La unidad de control debe conocer adems:
La instruccin que se est ejecutando
Informacin del estado de la mquina
Con esa informacin las instrucciones recibirn para ejecutarse
las seales apropiadas en el momento preciso

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 50 / 73

La Unidad de Control

Diseo de la Unidad de Control (XXI)


Lgica cableada (XIX). Contador secuenciador (II)

Secuenicador AMD 2910. Caractersticas


Contador de microinstrucciones con
autoincremento
Micropila de cinco niveles
Contador con detector de cero para la
realizacin de microbucles
Mutiplexor para determinar la direccin
de la siguiente microinstruccin
Seales para recoger la salida de un
comparador de condicin de bifurcacin
para producir microbifurcaciones
condicionales

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

25
Tema 4: Transparencia: 51 / 73

La Unidad de Control

Diseo de la Unidad de Control (XXII)


Lgica cableada (y XX) Contador secuenciador (III)

Unidad de control del IBM 370 / 45


empleando un secundiador
AMD2910

Procesador basado en el
secuenciador AMD 2910
Tiene un formato de instruccin de
32 bits
Cdigo de operacin es de 8 bits
que entra a la ROM de
instrucciones

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 52 / 73

La Unidad de Control

Diseo de la Unidad de Control (XXIII)


Lgica microprogramada (I)

Un conjunto de microinstrucciones es un microprograma encargado


de ejecutar una determinada instruccin

El conjunto de microprogramas que ejecutan las instrucciones se


llama firmware o micro cdigo

Requisitos a tener en cuenta:


Limitacin del tamao de la memoria de control a utilizar
Establecer una correspondencia entre cada instruccin mquina y
su microprograma correspondiente
Control del secuenciamiento de las Is

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

26
Tema 4: Transparencia: 53 / 73

La Unidad de Control

Diseo de la Unidad de Control (XXIV)


Lgica microprogramada (II)

Secuenciamiento explcito: Instruccin


C.Op.
Cada I. incluye la direccin de la
siguiente I.
El cdigo de operacin apunta a la Memoria
posicin de memoria en la que se de
inicia la secuencia de cada MUX control
microprograma
Cada I incluye un bit que indica si
es la ltima
Ventaja: microprogramas
diferentes, pueden utilizar
secuencias Is. comunes
Dir.sig.I. Seales de control
Inconveniente: Se necesita
memoria de control para almacenar Secuenciamiento
la direccin de la siguiente I

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 54 / 73

La Unidad de Control

Diseo de la Unidad de Control (XXV)


Lgica microprogramada (III)

Secuenciamiento implcito: Instruccin


C.Op.
Todas las Is. correspondientes
a un microprograma se CP
encuentran ordenadas Memoria
secuencialmente de
ROM MUX Reg.
control
D
Siendo necesario:
Un contador de
microprograma (CP) que
apunte a las sucesivas Is.
Una ROM que indique la
posicin de la primera I. Seales de
del microprograma control
Secuenciamiento

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

27
Tema 4: Transparencia: 55 / 73

La Unidad de Control

Diseo de la Unidad de Control (XXVI)


Lgica microprogramada (IV)

Codificacin de instrucciones
programacin horizontal, si no se usa codificacin
programacin vertical, si las Is. estn altamente codificadas

programacin horizontal programacin vertical

Las Is. slo realizan una Se reduce el tamao de la


operacin elemental por periodo memoria de control
Cada uno de los n bits controla Las Is. son lentas, ya que
directamente cada pieza de necesitan decodificacin
hardware, evitando otros niveles
de decodificacin
Las Is. presentan formatos
largos
Las Is. son rpidas
Se desperdicia memoria
Departamento de Automtica Arquitectura de Computadores
rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 56 / 73

La Unidad de Control

Diseo de la Unidad de Control (XXVII)


Lgica microprogramada (V)

Codificacin de las instrucciones


Las seales de control agrupan en:
Acceso al bus de datos Gobierno de la unidad de
Acceso al bus de direcciones direccionamiento
Gobierno de la ALU Estado o condicin
Gobierno del banco de registros Gobierno de la E/S
Gobierno de la memoria

Bus Unidad
Bus de Banco de
de ALU Memoria de
direcciones registros
datos direccion.
TMEM TALU SELOP LR MEM LPC
TAC TCP X0, X1 DIR. A RD
DIT TBDAD Y0, Y1 DIR. B WR
LAC LDIR

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

28
Tema 4: Transparencia: 57 / 73

La Unidad de Control

Diseo de la Unidad de Control (XXVIII)


Lgica microprogramada (VI)

Microbifurcaciones condicionales

Las instrucciones de salto condicional tienen dos cronogramas


posibles, es decir, poseen dos microprogramas diferentes que se
ejecutan dependiendo de la condicin

Se necesita un mecanismo de micro salto que seleccione la


ejecucin de un microprograma u otro

El mecanismo depender del tipo de secuenciamiento utilizado

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 58 / 73

La Unidad de Control

Diseo de la Unidad de Control (XXIX)


Lgica microprogramada (VII)

Microbifurcaciones condicionales. Secuenciamiento explcito:


Cada microinstruccin lleva la direccin de la siguiente

Incluir dos direcciones significa agrandar demasiado el formato de


la microinstruccin por lo que se hace que difieran en un solo bit

El bit en ser: 1 si se cumple la condicin y 0 si no se cumple

Dir.sig.I. Seales de control

Bit de Bit de
secuenciamiento condicin

B.Datos B.Dirs. ALU Regs. Mem. U.Dir. Cond. E/S

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

29
Tema 4: Transparencia: 59 / 73

La Unidad de Control

Diseo de la Unidad de Control (XXX)


Lgica microprogramada (VIII)

Microbifurcaciones condicionales. Secuenciamiento implcito:


Instruccin
Para poder elegir entre la C.Op.
secuencia normal u otra I, la
CP
direccin de la I debe estar
contenida en el campo que
comprueba la condicin Reg. Memoria
ROM MUX
Solapar el campo de direccin Dir. de
con un campo de funcin control
excluyente
C.F.: Bit de control de funcin
Seales de control

Bit de secuenciamiento
Comparador
DEMU
Estado X

B.Datos B.Dirs. ALU Regs. Mem. U.Dir. Cond. C.F. E/S Dir.ss.I.

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 60 / 73

La Unidad de Control

Diseo de la Unidad de Control (XXXI)


Lgica microprogramada (IX)

Una memoria de control contiene muchas microinstrucciones


Si muchas estn repetidas se pueden eliminar mediante la
nanoprogramacin, descomponiendo las microinstrucciones de
tal manera que en la segunda memoria todas sean distintas
A las palabras de control del segundo nivel se les denominan
nanoinstrucciones
Se pueden agrupar en microrutinas
El diseo merece la pena si se cumple que:

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

30
Tema 4: Transparencia: 61 / 73

La Unidad de Control

Diseo de la Unidad de Control (XXXII)


Lgica microprogramada (y X)

Nanoprogramacin M68000
Emplea un sistema de
nanoprogramacin en dos niveles:
El primer nivel las palabras de
control son punteros al segundo
nivel
El segundo nivel son palabras
de control no duplicadas
En el segundo nivel las palabras
de control se traducen
horizontalmente en la activacin
(desactivacin) de las seales
El tamao de la palabra de control
de segundo nivel es de 70 bits

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 62 / 73

La Unidad de Control

Diseo de la Unidad de Control (XXXIII)


Diseo microprogramado del computador (I)

Seales de carga de registro


Reset
Lflags
Li
Lr
Lac
Ldir

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

31
Tema 4: Transparencia: 63 / 73

La Unidad de Control

Diseo de la Unidad de Control (XXXIV)


Diseo microprogramado del computador (II)

Seales de acceso al bus de datos


Tmem
Tac
Dit

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 64 / 73

La Unidad de Control

Diseo de la Unidad de Control (XXXV)


Diseo microprogramado del computador (III)

Seales de acceso al bus de direcciones


Tcp
Talu
Tbdad

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

32
Tema 4: Transparencia: 65 / 73

La Unidad de Control

Diseo de la Unidad de Control (XXXVI)


Diseo microprogramado del computador (IV)

Seales de control de la ALU


X1, X0
Y1, Y0
Selop

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 66 / 73

La Unidad de Control

Diseo de la Unidad de Control (XXXVII)


Diseo microprogramado del computador (V)

Seales de control de la memoria


Mem
Rd
Wr

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

33
Tema 4: Transparencia: 67 / 73

La Unidad de Control

Diseo de la Unidad de Control (XXXVIII)


Diseo microprogramado del computador (VI)

Seales de la unidad de direccionamiento


Lcp

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 68 / 73

La Unidad de Control

Diseo de la Unidad de Control (XL)


Diseo microprogramado del computador (VIII)

Bits que quedan:


Bit de condicin
Bit de microsalto
Bit de secuenciamiento o fin de
microprograma

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

34
Tema 4: Transparencia: 69 / 73

La Unidad de Control

Diseo de la Unidad de Control (XLI)


Diseo microprogramado del computador (IX)

Bits que quedan:


Suponiendo una memoria de
control de 1K, se necesitaran 10
bits para direccionar
Empleando el solapamiento de
campos emplearemos los bits 0 a 9
que dependiendo del valor de los
bits 29 y 30, contendrn una
direccin de microsalto vlida o las
seales de carga de registroy de
acceso al bus de datos

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 70 / 73

La Unidad de Control

Diseo de la Unidad de Control (y XLII)


Diseo microprogramado del computador (y X)

Microinstruccin sin microsalto

Microinstruccin con microsalto

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

35
Tema 4: Transparencia: 71 / 73

La Unidad de Control

Excepciones

Las excepciones son eventos inesperados en el procesador de


naturaleza asncrona (divisin por cero, error de paridad de memoria,
desbordamiento, llamadas al sistema operativo (trap), peticiones de
entrada salida, etc.)
Las excepciones deben ser detectadas por la Unidad de Control y
tratadas correctamente por el sistema operativo
Para tratar las interrupciones se debe:
Parar el programa en ejecucin
Enviar la causa de la excepcin al sistema operativo
Entregar el control al sistema operativo
Las causa de las excepciones se pueden entregar:
Registro de estado para las excepciones. La Unidad de Control coloca
el cdigo de la excepcin en el registro
Excepciones vectorizadas. Se asignan diferentes direcciones a cada
tipo de excepcin. El Sistema Operativo ejecutar la rutina de tratamiento
de la excepcin que encuentre en dicha direccin

Departamento de Automtica Arquitectura de Computadores


rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

Tema 4: Transparencia: 72 / 73

La Unidad de Control

Arranque del computador

Al arrancar el computador los componentes hardware (registros,


flags, etc) toman un estado aleatorio y desconocido. Si no se tiene en
cuenta este hecho, la mquina empezar a ejecutar un "programa"
desconocido a partir de una posicin de memoria tomada al azar

La solucin consiste en forzar en el RESET todos los registros a un


estado determinado (p. ej. todo a cero) y apuntar el CP a un
programa cargador situado en memoria ROM

Este programa se encargar de las tareas siguientes:


Rutinas de comprobacin del computador
Rutinas de configuracin (dispositivos perifricos, puertos
asignados, interrupciones, etc)
Carga de vectores de interrupcin
Carga del sistema operativo
Carga de controladores de dispositivos
Departamento de Automtica Arquitectura de Computadores
rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

36
Tema 4: Transparencia: 73 / 73

La Unidad de Control

Bibliografa
Estructura y diseo de computadores
David A. Patterson y John L. Hennessy. Revert, 2000
Captulo 5 y Apndice C

Estructura y diseo de computadores


Jose M Angulo. Paraninfo, 1996
Captulo 5

Arquitectura de computadores. Un enfoque cuantitativo


John L. Hennessy y David A. Patterson. Mc Graw Hill, 3 ed, 2002
Captulo 5

Arquitectura de computadores
Jos A. de Frutos y Rafael Rico. Servicio de Publicaciones de la
Universidad de Alcal, 1995
Captulo 4.
Departamento de Automtica Arquitectura de Computadores
rea de Arquitectura y Tecnologa de Computadores I. T. Informtica de Sistemas

37

Anda mungkin juga menyukai