Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Diapos
Diapos
La Unidad de Control
Arquitectura de
Computadores
I. T. Informática de Gestión
Curso 2009-2010
Tema 4: Transparencia: 2 / 73
La Unidad de Control
Índice
Operaciones elementales
Computador elemental
– Memoria principal
– Banco de registros
– Unidad aritmético-lógica
– Unidad de direccionamiento
– Unidad de control
Temporización de las señales de control
Ejecución de instrucciones
Diseño de la Unidad de Control: cableado vs. Microprogramado
Microprogramación y nanoprogramación: Motorola 68000
Excepciones en el computador
Arranque del computador
Bibliografía
1
Tema 4: Transparencia: 3 / 73
La Unidad de Control
Tema 4: Transparencia: 4 / 73
La Unidad de Control
2
Tema 4: Transparencia: 5 / 73
La Unidad de Control
LA LB LC
Registro A Registro B Registro C
TA TB TC
Bus de Datos
Tema 4: Transparencia: 6 / 73
La Unidad de Control
LA LB
Registro A Registro B
ALU SelOp
Llevar el Registro A a la ALU
Llevar el Registro B a la ALU
Escoger la operación XOR LC
Registro C
Cargar el resultado en el Registro C
TC
Bus de Datos
3
Tema 4: Transparencia: 7 / 73
La Unidad de Control
REGISTROS
CPU
PERIFÉRICO
MEMORIA
PRINCIPAL PERIFÉRICO
UNIDAD UNIDAD PERIFÉRICO
ARITMÉTICA DE E/S
PERIFÉRICO
CP PERIFÉRICO
UNIDAD DE CONTROL
Tema 4: Transparencia: 8 / 73
La Unidad de Control
Bus de datos
Bus de direcciones
4
Tema 4: Transparencia: 9 / 73
La Unidad de Control
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 Automática Arquitectura de Computadores
Área de Arquitectura y Tecnología de Computadores I. T. Informática de Gestión
Tema 4: Transparencia: 10 / 73
La Unidad de Control
5
Tema 4: Transparencia: 11 / 73
La Unidad de Control
Tema 4: Transparencia: 12 / 73
La Unidad de Control
de CP
Las señales de control son
de salida B del banco de registros
Activa
Señal Nombre Significado
por
de salida A del banco de registros
de salida A del banco de registros Selecciona la
Selop Nivel Selection
operación 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
6
Tema 4: Transparencia: 13 / 73
La Unidad de Control
Tema 4: Transparencia: 14 / 73
La Unidad de Control
7
Tema 4: Transparencia: 15 / 73
La Unidad de Control
Reloj
DIT Oscilador
Li
R.Ins Desp./ DI. C.Fases
Reset
Unidad de Control
al banco de registros
LFlags
Registro Estado
señales de control
Activa
Señal Nombre Significado
por
LI Flanco Load instruction Carga una instrucción 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 después de una instrucción aritmética o lógica
RESET Flanco Reset Pone a 0 el contador de fases
Tema 4: Transparencia: 16 / 73
La Unidad de Control
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
8
Tema 4: Transparencia: 17 / 73
La Unidad de Control
Temporalización
Tema 4: Transparencia: 18 / 73
La Unidad de Control
9
Tema 4: Transparencia: 19 / 73
La Unidad de Control
Tema 4: Transparencia: 20 / 73
La Unidad de Control
10
Tema 4: Transparencia: 21 / 73
La Unidad de Control
DIR B registro A
TAC
TALU
LPC
LR
LFlags
RESET
periodo 1periodo 2periodo 3periodo 4.periodo 5periodo 6periodo 7periodo 8
Tema 4: Transparencia: 22 / 73
La Unidad de Control
Comentarios y mejoras:
– La fase de fetch solamente trae 1 byte si el tamaño del bus de
datos es de 1 byte; en ese caso tendríamos que realizar dos
accesos a memoria para traer la instrucción entera
– El periodo 4 se "pierde" en decodificar la instrucción; es parte del
tiempo de ejecución de la instrucción
– Los periodos 5 y 6 de actualización del CP se podrían ahorrar con
un sumador aparte para la Unidad de direccionamiento
– Igualmente, la actualización de CP llevaría 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 instrucción se empiece la siguiente fase de
fetch
– Hay que tener cuidado con los posibles conflictos en los buses
11
Tema 4: Transparencia: 23 / 73
La Unidad de Control
Tema 4: Transparencia: 24 / 73
La Unidad de Control
SEÑAL DE
ACCIÓN OPERACIÓN ELEMENTAL CONTROL
Traer la instrucción
Direccionar CP bus de direcciones TCP
Cargar registro de direcciones LDIR
Decodificación 1 periodo de
retardo
12
Tema 4: Transparencia: 25 / 73
La Unidad de Control
SEÑAL DE
ACCIÓN OPERACIÓN ELEMENTAL CONTROL
Incrementar CP
Sumar CP + 4 UC pone en el bus de datos el 4 DIT
Selección de operandos y <X0, X1 = B. Dat>
operación de suma <Y0, Y1 = CP>
<Selop = sumar>
Cargar el acumulador LAC
Tema 4: Transparencia: 26 / 73
La Unidad de Control
SEÑAL DE
ACCIÓN OPERACIÓN ELEMENTAL CONTROL
13
Tema 4: Transparencia: 27 / 73
La Unidad de Control
SEÑAL DE
ACCIÓN OPERACIÓN 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 dirección A <DIR A = A>
Cargar banco de registros LR
Tema 4: Transparencia: 28 / 73
La Unidad de Control
reloj
TCP
LDIR
MEM
RD
WR
TMEM
LI
DIT
bus de bus de
X0, X1 datos datos
Y0, Y1 CP puerto A
LAC
DIR A registro B registro A
DIR B
TAC
TALU
LPC
LR
RESET
14
Tema 4: Transparencia: 29 / 73
La Unidad de Control
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
Tema 4: Transparencia: 30 / 73
La Unidad de Control
INSTRUCCIÓN
CONTADOR
DE FASES UNIDAD SEÑALES DE
DE CONTROL
CONTROL
ESTADO
E/S
15
Tema 4: Transparencia: 31 / 73
La Unidad de Control
Tema 4: Transparencia: 32 / 73
La Unidad de Control
16
Tema 4: Transparencia: 33 / 73
La Unidad de Control
Tema 4: Transparencia: 34 / 73
La Unidad de Control
17
Tema 4: Transparencia: 35 / 73
La Unidad de Control
Tema 4: Transparencia: 36 / 73
La Unidad de Control
18
Tema 4: Transparencia: 37 / 73
La Unidad de Control
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
Al estado 0
Tema 4: Transparencia: 38 / 73
La Unidad de Control
19
Tema 4: Transparencia: 39 / 73
La Unidad de Control
Tema 4: Transparencia: 40 / 73
La Unidad de Control
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
Al estado 0
20
Tema 4: Transparencia: 41 / 73
La Unidad de Control
Tema 4: Transparencia: 42 / 73
La Unidad de Control
21
Tema 4: Transparencia: 43 / 73
La Unidad de Control
Tema 4: Transparencia: 44 / 73
La Unidad de Control
22
Tema 4: Transparencia: 45 / 73
La Unidad de Control
Tema 4: Transparencia: 46 / 73
La Unidad de Control
23
Tema 4: Transparencia: 47 / 73
La Unidad de Control
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 Decodificación
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
Al estado 0
Tema 4: Transparencia: 48 / 73
La Unidad de Control
CP a Reg.
Célula deDir.
0
2 CP
retardo
= CP +22
CP
Célula
a Reg.
deDir.
0
3 retardo
CP = CP 3+2
Si no Z Si Z
CP
Célula
a Reg.
deDir. CPCélula
a Reg.deDir. CPCélula
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
CPCélula
a Reg.deDir. CPCélula
a Reg.deDir.
0
5
CP
Célula
a Reg.
deDir. 10
0 CP
retardo
= CP +102 12
0 CPretardo
= CP +122 15
CPCélula
a Reg.
0 CPretardo
deDir.
CP
retardo
= CP 5+2 = CP +15
2
CPCélula
a Reg.deDir. CP
Célula
a Reg.
deDir.
CP
Célula
a Reg.
deDir.
11
0 CPretardo
= CP +112 13
0 CP
retardo
= CP +132
0
6 CP
retardo
= CP 6+2
24
Tema 4: Transparencia: 49 / 73
La Unidad de Control
Tema 4: Transparencia: 50 / 73
La Unidad de Control
25
Tema 4: Transparencia: 51 / 73
La Unidad de Control
Procesador basado en el
secuenciador AMD 2910
Tiene un formato de instrucción de
32 bits
Código de operación es de 8 bits
que entra a la ROM de
instrucciones
Tema 4: Transparencia: 52 / 73
La Unidad de Control
26
Tema 4: Transparencia: 53 / 73
La Unidad de Control
Tema 4: Transparencia: 54 / 73
La Unidad de Control
27
Tema 4: Transparencia: 55 / 73
La Unidad de Control
Codificación de µinstrucciones
– µprogramación horizontal, si no se usa codificación
– µprogramación vertical, si las µIs. están altamente codificadas
Tema 4: Transparencia: 56 / 73
La Unidad de Control
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
28
Tema 4: Transparencia: 57 / 73
La Unidad de Control
Microbifurcaciones condicionales
Tema 4: Transparencia: 58 / 73
La Unidad de Control
Bit de Bit de
secuenciamiento condición
29
Tema 4: Transparencia: 59 / 73
La Unidad 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.
Tema 4: Transparencia: 60 / 73
La Unidad de Control
30
Tema 4: Transparencia: 61 / 73
La Unidad de Control
Nanoprogramación M68000
Emplea un sistema de
nanoprogramación 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 activación
(desactivación) de las señales
El tamaño de la palabra de control
de segundo nivel es de 70 bits
Tema 4: Transparencia: 62 / 73
La Unidad de Control
31
Tema 4: Transparencia: 63 / 73
La Unidad de Control
Tema 4: Transparencia: 64 / 73
La Unidad de Control
32
Tema 4: Transparencia: 65 / 73
La Unidad de Control
Tema 4: Transparencia: 66 / 73
La Unidad de Control
33
Tema 4: Transparencia: 67 / 73
La Unidad de Control
Tema 4: Transparencia: 68 / 73
La Unidad de Control
34
Tema 4: Transparencia: 69 / 73
La Unidad de Control
Tema 4: Transparencia: 70 / 73
La Unidad de Control
35
Tema 4: Transparencia: 71 / 73
La Unidad de Control
Excepciones
Tema 4: Transparencia: 72 / 73
La Unidad de Control
36
Tema 4: Transparencia: 73 / 73
La Unidad de Control
Bibliografía
Estructura y diseño de computadores
David A. Patterson y John L. Hennessy. Reverté, 2000
Capítulo 5 y Apéndice C
Arquitectura de computadores
José A. de Frutos y Rafael Rico. Servicio de Publicaciones de la
Universidad de Alcalá, 1995
Capítulo 4.
Departamento de Automática Arquitectura de Computadores
Área de Arquitectura y Tecnología de Computadores I. T. Informática de Gestión
37