Estructura y Diseño de Procesadores
Estructura y Diseño de Procesadores
Tema 3
Procesador
Índice
● Introducción
● Operaciones elementales
● Estructura de un computador elemental y sus señales de
control
● Cronogramas
● Diseño de la Unidad de Control (UC)
● Gestión de excepciones
Regs ALU
Mp CPU
Sistema Bus
Interconexión
Unidad
Entrada/ De
Salida Control
Bus de Dir
TI Bus de Datos
Reloj RM
FP
PC
A B 1 2 3 1 2 3 4
R0 XX Mux. X XY Mux. Y
R1 D
DB
DA
R2
R3 OP Operador
R4 Estado TP
R5 Bus de Dir Interno
R6
R7 FRA TD TRD TS FD
A' Banco de RA FS
CR Registros SP
FLM
TRA TA FEM
TRM TM
Bus de Datos Interno
TE Mux. XE TI
=0 RI RF Reloj
FRI PO
<0
Estado RE
Desbord. Unidad
Oscilador
Compa-
rador
Acarreo
Interr.
de
. Control
Inhib. Int. Señales de Control
Núcl./Usu.
Control de E/S
FEST DA DB OP XX XY ........
CPU Direcciones
Registros
Unidad de E/S
Funciones de la CPU:
1. Ejecuta instrucciones (función básica)
– Lectura (fetch) y decodificación de las instrucciones
– Generación de órdenes para la ejecución
– Secuenciamiento de las instrucciones:
decidir cuál es la siguiente que se ha de ejecutar)
2. Gestiona situaciones anómalas
(desbordamiento, operación no válida, violación de privilegio, etc)
3. Controla la comunicación con periféricos
CLK
Reloj Contador fases
SS. Estado
externas
RI UC
Reg. Estado
Señales de control
RI
Z
V
C …
… RE
S UC
I
…
p.ej.
MEMRQ
RD
WR
p.ej.
INT
Clk BUSREQ
Reloj
Reloj
1. dirección AR
2. M(AR) Reg (*), FAR
Señales de Control: RD
>Tacc
carga en AR: FAR Data
lectura: MEMRQ y RD
carga en Reg o (DR): FReg FReg
Reloj
1. dirección AR
FAR
dato DR (**)
FDR
2. DR M(AR),
escritura (supone 3 ciclos) dirección
Address
Señales de Control: WR
>Tacc
carga en AR: FAR
carga en DR: FDR
escritura: MEMRQ y WR
CPU
Bus dir/datos
Índice
● Introducción
Operaciones elementales
● Estructura de un computador elemental y sus señales de
control
● Cronogramas
● Diseño de la Unidad de Control (UC)
● Gestión de excepciones
Tipos:
● De transferencia
Llevan información de un origen a un destino
● De proceso
Llevan información de un origen a un destino, pero ésta
pasa por un operador que la transforma
Esencial:
1) Los buses no almacenan
información
2) En cada ciclo sólo puede haber
un acceso abierto hacia un bus
RA RB RC RD
FRA FRB FRC FRD
TA TB TC TD
Bus
Reloj
TC
FRA
1.- Camino: señal por nivel 2.- avisar destino: señal por flanco
OE de proceso
● Funcionamiento similar a las transferencias, pero la información de
ORIGEN se pasa por un operador (ALU) que la procesa en su camino
al DESTINO
● Ej: Operación en ALU con registros
Reloj
XX
RA RB RC RD
FRA FRB FRC FRD
XY
1 2 1 2
XX Mux. X XY Mux. Y
OP X+Y
OP Operador Estado
TALU
TALU
Bus
FRD
RA RB RC RD
FRA FRB FRC FRD
1 2 1 2
XX Mux. X XY Mux. Y
OP Operador Estado
Reloj
TALU
Bus
XX
XY
1.- Establecer camino:
señales por nivel OP X+Y
simultáneas
TALU
Índice
● Introducción
● Operaciones elementales
Estructura de un computador elemental y sus señales de
control
● Cronogramas
● Diseño de la Unidad de Control (UC)
● Gestión de excepciones
Elemental RM
Reloj
FP
PC
A B 1 2 3 1 2 3 4
R0 X
XX Mux. X Y
XY Mux. Y A
R1 D
R
DB
DA
R2
R3 OP Operador
R4 Estado TP
R5 Bus de Dir Interno
R6
R7 FRA TD TRD
TRD TS FD
FAR
A' Banco de RA FS
CR Registros SP DR
FLM
TRA TA FEM
TRM
TDR TM
Bus de Datos Interno
TE Mux. XE TI
RI
RI RF
=0 FRI
FRI PO Reloj
<0
Estado RE
Desbord. Unidad
Oscilador
Compa-
rador
Acarreo
Interr.
de
. Control
Inhib. Int. Señales de Control
Núcl./Usu.
Control de E/S
FEST DA DB OP XX XY ........
Unidad de Control 30
Reloj
FP Memoria
PC
CM Principal
L Dirección Contenido
A B E
1 2 3 1 2 3 4 04B4 5447
R0 X
XX Mux. X Y
XY Mux. Y A
R1 04B6 7B35
D
R
DB
DA
R2
R3 OP Operador
R4 Estado TP
R5 Bus de Direcciones
R6
R7 003C FRA TD TRD
TRD TS FAR
FD
A' Banco de RA FS
CR Registros SP DR
RM
FLM
TRA TA FEM
TRM
TDR TM
Bus de Datos
TE Mux. XE TI
=0 RI
I RF Reloj
FRI
FI PO
<0
Estado RE
Desbord. Unidad
Oscilador
Compa-
rador
Acarreo
Interr.
de
. Control
Inhib. Int. Señales de Control
Núcl./Usu.
Control de E/S
FEST DA DB OP XX XY ........
Esta animación presenta la forma en que un computador sencillo
ejecuta
la instrucción de suma de dos registros.
Reloj
Se supondrá que la arquitectura es de 16 bits
FP y que la memoria
PC
se
Memoria
direcciona a nivel de byte. Además, el acceso a la memoria
CM
L
principal
Principal
requiere
A Bdos ciclos. 1 2 3 1 2 3 4
E Dirección Contenido
R0 04B4 5447
XX Mux. X XY Mux. Y 04B6 7B35
R1 D
La instrucción se encuentra almacenada en la posición de memoria
DB
DA
R2
R3 OP Operador
H’4B4, ocupa 16 bits yEstado
R4
R5
se compone del código deTPoperación (H’54)
Bus de Direcciones
seguido
R6
R7 003C
de los descriptores de los registros, (4 y 7). TS
FRA TD TRD FD
A' Banco de RA FS
El resultado
CR Registros se dejará en el registro 4. SP
FLM
RM
TA FEM
Los contenidos de losTRA
registros son H’4F2 y Bus
H’3C, por lo que
de Datos
TRM el TM
resultado
TE
es H’52E.
Mux.
Además, el único
XE TI bit de estado que se activa es de
NZ, puesto que el resultado Ino es cero. RF
=0 FI PO Reloj
<0
Estado RE
La animación
Desbord. Unidadpor ciclo de reloj. La primera
contempla dos imágenes
Oscilador
Compa-
rador
Acarreo
corresponde
Interr. a las señales de controldede tipo nivel, mientras que la
. Control
segunda refleja
Inhib. Int. las señales de carga.
Señales de Control
Núcl./Usu.
Control de E/S
FEST DA DB OP XX XY ........ 32
Solamente se han indicado los valores de los registros afectados por
la instrucción.
Se ha considerado que la lectura de la instrucción empieza en el
ciclo 3 de la instrucción anterior y que el contador de ciclos se
pone a “0” en el momento de la decodificación de la instrucción
leída.
Operaciones elementales:
PC -> AR
M(AR) -> RI
decodificación
R4 + R7 -> R4
Además se incrementa el PC para preparar la lectura de la siguiente
instrucción:
PC + 2 -> PC
33
Prepara la lectura instrucción
Se prepara: D PC
Reloj
FP 04B4
PC Memoria
CM Principal
L Dirección Contenido
A B E
1 2 3 1 2 3 4 04B4 5447
R0 X
XX Mux. X Y
XY Mux. Y A
R1 04B6 7B35
D
R
DB
DA
R2
R3 OP Operador
R4 04F2 Estado TP
R5 Bus de Direcciones 04B4
R6
R7 003C FRA TD TRD
TRD TS FAR
FD
A' Banco de RA FS
CR Registros SP DR
RM
FLM
TRA TA FEM
TRM
TDR TM
Bus de Datos
TE Mux. XE TI
=0 RI
I RF Reloj
FRI
FI PO
<0 2
Estado RE
Desbord. Unidad
Oscilador
Compa-
rador
Acarreo
Interr.
de
. Control
Inhib. Int. Señales de Control
Núcl./Usu.
Control de E/S
FEST DA DB OP XX XY ........ 34
Prepara la lectura instrucción
Se realiza: D PC
Se incrementa RF: RF RF + 1
Reloj
FP 04B4
PC Memoria
CM Principal
L Dirección Contenido
A B E
1 2 3 1 2 3 4 04B4 5447
R0 X
XX Mux. X Y
XY Mux. Y A
R1 04B6 7B35
D
R
DB
DA
04B4
R2
R3 OP Operador
R4 04F2 Estado TP
R5 Bus de Direcciones 04B4
R6
R7 003C FRA TD TRD
TRD TS FAR
FD
A' Banco de RA FS
CR Registros SP DR
RM
FLM
TRA TA FEM
TRM
TDR TM
Bus de Datos
TE Mux. XE TI
=0 RI
I RF Reloj
FRI
FI PO
<0 3
Estado RE
Desbord. Unidad
Oscilador
Oscilador
Compa-
rador
Acarreo
Interr.
de
. Control
Inhib. Int. Señales de Control
Núcl./Usu.
Control de E/S
FEST DA DB OP XX XY ........ 35
Lectura instrucción
Primer ciclo de memoria
Reloj
FP 04B4
PC Memoria
CM Principal
L Dirección Contenido
A B E
1 2 3 1 2 3 4 04B4 5447
R0 X
XX Mux. X Y
XY Mux. Y A
R1 04B6 7B35
D
R
DB
DA
04B4
R2
R3 OP Operador
R4 04F2 Estado TP
R5 Bus de Direcciones
R6
R7 003C FRA TD TRD
TRD TS FAR
FD
A' Banco de RA FS
CR Registros SP DR
RM
FLM
TRA TA FEM
TRM
TDR TM
Bus de Datos
TE Mux. XE TI
=0 RI
I RF Reloj
FRI
FI PO
<0 3
Estado RE
Desbord. Unidad
Oscilador
Compa-
rador
Acarreo
Interr.
de
. Control
Inhib. Int. Señales de Control
Núcl./Usu.
Control de E/S
FEST DA DB OP XX XY ........ 36
Lectura instrucción
Primer ciclo de memoria
Se incrementa RF: RF RF + 1
Reloj
FP 04B4
PC Memoria
CM Principal
L Dirección Contenido
A B E
1 2 3 1 2 3 4 04B4 5447
R0 X
XX Mux. X Y
XY Mux. Y A
R1 04B6 7B35
D
R
DB
DA
04B4
R2
R3 OP Operador
R4 04F2 Estado TP
R5 Bus de Direcciones
R6
R7 003C FRA TD TRD
TRD TS FAR
FD
A' Banco de RA FS
CR Registros SP DR
RM
FLM
TRA TA FEM
TRM
TDR TM
Bus de Datos
TE Mux. XE TI
=0 RI
I RF Reloj
FRI
FI PO
<0 4
Estado RE
Desbord. Unidad
Oscilador
Oscilador
Compa-
rador
Acarreo
Interr.
de
. Control
Inhib. Int. Señales de Control
Núcl./Usu.
Control de E/S
FEST DA DB OP XX XY ........ 37
Lectura instrucción
Segundo ciclo de memoria, se prepara: I M(D)
Se prepara incremento de PC: PC PC + 2
Reloj
FP 04B4
PC Memoria
CM Principal
L Dirección Contenido
A B E
1 2 3 1 2 3 4 04B4 5447
R0 X
XX Mux. X Y
XY Mux. Y A
R1 04B6 7B35
D
R
DB
DA
04B4
R2
R3 OP Y+2
Operador
R4 04F2 Estado 04B6 TP
R5 Bus de Direcciones 04B6
R6
R7 003C FRA TD TRD
TRD TS FAR
FD
A' Banco de RA FS
CR Registros SP DR
RM
FLM
TRA TA FEM
TRM
TDR TM
Bus de Datos
5447
TE Mux. XE TI
=0 RI
I RF Reloj
FRI
FI PO
<0 4
Estado RE
Desbord. Unidad
Oscilador
Compa-
rador
04B4
R2
R3 OP Y+2
Operador
R4 04F2 Estado 04B6 TP
R5 Bus de Direcciones 04B6
R6
R7 003C FRA TD TRD
TRD TS FAR
FD
A' Banco de RA FS
CR Registros SP DR
RM
FLM
TRA TA FEM
TRM
TDR TM
Bus de Datos
5447
TE Mux. XE TI
=0 FRI RI
I RF Reloj
FI 5447 PO 5
<0
Estado RE
Desbord. Unidad
Oscilador
Oscilador
Compa-
rador
LaLaseñal
señalde flanco
flancoFRI
Acarreo
de FI de
Interr.
carga
cargaenenelelregistro
registro
. RII Control
elelvalor
valorInhib.
disponible
disponible
Int. en
en Señales de Control
el bus.Núcl./Usu.
el bus FEST DA DB OP XX XY ........
Control de E/S
39
Decodificación instrucción
Reloj
FP 04B6
PC Memoria
CM Principal
L Dirección Contenido
A B E
1 2 3 1 2 3 4 04B4 5447
R0 X
XX Mux. X Y
XY Mux. Y A
R1 04B6 7B35
D
R
DB
DA
04B4
R2
R3 OP Operador
R4 04F2 Estado TP
R5 Bus de Direcciones
R6
R7 003C FRA TD TRD
TRD TS FAR
FD
A' Banco de RA FS
CR Registros SP DR
RM
FLM
TRA TA FEM
TRM
TDR TM
Bus de Datos
TE Mux. XE TI
=0 RI
I RF Reloj
FRI
FI PO
<0 5447 5
Estado RE
Desbord. Unidad
Oscilador
Compa-
rador
Acarreo
Interr.
de
. Control
Inhib. Int. Señales de Control
Núcl./Usu.
Control de E/S
FEST DA DB OP XX XY ........ 40
Decodificación instrucción
Se pone RF a 0: RF 0
Reloj
FP 04B6
PC Memoria
CM Principal
L Dirección Contenido
A B E
1 2 3 1 2 3 4 04B4 5447
R0 X
XX Mux. X Y
XY Mux. Y A
R1 04B6 7B35
D
R
DB
DA
04B4
R2
R3 OP Operador
R4 04F2 Estado TP
R5 Bus de Direcciones
R6
R7 003C FRA TD TRD
TRD TS FAR
FD
A' Banco de RA FS
CR Registros SP DR
RM
FLM
TRA TA FEM
TRM
TDR TM
Bus de Datos
TE Mux. XE TI
=0 RI
I RF Reloj
FRI
FI PO
<0 5447 0
Estado RE
Desbord. Unidad
Oscilador
Compa-
rador
Acarreo
Interr.
de
. Control
Inhib. Int. Señales de Control
Núcl./Usu.
Control de E/S
FEST DA DB OP XX XY ........ 41
Ejecuta instrucción y prepara lectura instrucción siguiente
Se prepara suma: R4 R4 + R7; RE Estado ALU
Se prepara: D PC
Reloj
FP 04B6
04F2 PC Memoria
0036 CM Principal
L Dirección Contenido
A B E
1 2 3 1 2 3 4 04B4 5447
R0 X
XX Mux. X Y
XY Mux. Y A
DB=7
DA=4
R1 04B6 7B35
D
R
DB
DA
04B4
R2
R3 OP X+Y
Operador
R4 04F2 Estado 052E TP
R5 Bus de Direcciones 04B6
R6
R7 003C FRA TD TRD
TRD TS FAR
FD
A' Banco de RA FS
CR Registros SP DR
RM
FLM
TRA TA FEM
TRM
TDR TM
052E Bus de Datos
TE Mux. XE TI
=0 RI
I RF Reloj
FRI
FI PO
<0 5447 0
Estado RE
Desbord. Unidad
Oscilador
Compa-
rador
Acarreo
Interr.
de
. Control
Inhib. Int. Señales de Control
Núcl./Usu.
Control de E/S
FEST DA DB OP XX XY ........ 42
Ejecuta instrucción y prepara lectura instrucción siguiente
Se realiza suma: R4 R4 + R7; RE Estado ALU
Se realiza: D PC
Se incrementa RF: RF RF + 1
Reloj
FP 04B6
04F2 PC Memoria
0036 CM Principal
L Dirección Contenido
A B E
1 2 3 1 2 3 4 04B4 5447
R0 X
XX Mux. X Y
XY Mux. Y A
DB=7
DA=4
R1 04B6 7B35
D
R
DB
DA
04B6
R2
R3 OP X+Y
Operador
R4 052E Estado 052E TP
R5 Bus de Direcciones 04B6
R6
R7 003C FRA TD TRD
TRD TS FAR
FD
A' Banco de RA FS
CR Registros SP DR
RM
FLM
TRA TA FEM
TRM
TDR TM
052E Bus de Datos
TE Mux. XE TI
=0 0 RI
I RF Reloj
FRI
FI PO
<0 0 5447 1
Estado RE
Desbord. 0 Unidad
Oscilador
Oscilador
Compa-
rador
Reloj
FP 04B6
PC Memoria
CM Principal
L Dirección Contenido
A B E
1 2 3 1 2 3 4 04B4 5447
R0 X
XX Mux. X Y
XY Mux. Y A
R1 04B6 7B35
D
R
DB
DA
04B6
R2
R3 OP Operador
R4 052E Estado TP
R5 Bus de Direcciones
R6
R7 003C FRA TD TRD
TRD TS FAR
FD
A' Banco de RA FS
CR Registros SP DR
RM
FLM
TRA TA FEM
TRM
TDR TM
Bus de Datos
TE Mux. XE TI
=0 0 RI
I RF Reloj
FRI
FI PO
<0 0 5447 1
Estado RE
Desbord. 0 Unidad
Oscilador
Compa-
rador
Acarreo 0
Interr.
de
. Control
Inhib. Int. Señales de Control
Núcl./Usu.
Control de E/S
FEST DA DB OP XX XY ........ 44
Lectura instrucción siguiente
Primer ciclo de memoria
Se incrementa RF: RF RF + 1
Reloj
FP 04B6
PC Memoria
CM Principal
L Dirección Contenido
A B E
1 2 3 1 2 3 4 04B4 5447
R0 X
XX Mux. X Y
XY Mux. Y A
R1 04B6 7B35
D
R
DB
DA
04B6
R2
R3 OP Operador
R4 052E Estado TP
R5 Bus de Direcciones
R6
R7 003C FRA TD TRD
TRD TS FAR
FD
A' Banco de RA FS
CR Registros SP DR
RM
FLM
TRA TA FEM
TRM
TDR TM
Bus de Datos
TE Mux. XE TI
=0 0 RI
I RF Reloj
FRI
FI PO
<0 0 5447 2
Estado RE
Desbord. 0 Unidad
Oscilador
Oscilador
Compa-
rador
Acarreo 0
Interr.
de
. Control
Inhib. Int. Señales de Control
Núcl./Usu.
Control de E/S
FEST DA DB OP XX XY ........ 45
Lectura instrucción
Segundo ciclo de memoria, se prepara: I M(D)
Se prepara incremento de PC: PC PC + 2
Reloj
FP 04B6
PC Memoria
CM Principal
L Dirección Contenido
A B E
1 2 3 1 2 3 4 04B4 5447
R0 X
XX Mux. X Y
XY Mux. Y A
R1 04B6 7B35
D
R
DB
DA
04B6
R2
R3 OP Y+2
Operador
R4 052E Estado 04B8 TP
R5 Bus de Direcciones 04B6
R6
R7 003C FRA TD TRD
TRD TS FAR
FD
A' Banco de RA FS
CR Registros SP DR
RM
FLM
TRA TA FEM
TRM
TDR TM
Bus de Datos
7B35
TE Mux. XE TI
=0 0 RI
I RF Reloj
FRI
FI PO
<0 0 5447 2
Estado RE
Desbord. 0 Unidad
Oscilador
Compa-
rador
Acarreo 0
Interr.
de
. Control
Inhib. Int. Señales de Control
Núcl./Usu.
Control de E/S
FEST DA DB OP XX XY ........ 46
Lectura instrucción
Segundo ciclo de memoria, se realiza: I M(D)
Se realiza incremento de PC: PC PC + 2
Se incrementa RF: RF RF + 1
Reloj
FP 04B8
PC Memoria
CM Principal
L Dirección Contenido
A B E
1 2 3 1 2 3 4 04B4 5447
R0 X
XX Mux. X Y
XY Mux. Y A
R1 04B6 7B35
D
R
DB
DA
04B6
R2
R3 OP Y+2
Operador
R4 052E Estado 04B8 TP
R5 Bus de Direcciones 04B6
R6
R7 003C FRA TD TRD
TRD TS FAR
FD
A' Banco de RA FS
CR Registros SP DR
RM
FLM
TRA TA FEM
TRM
TDR TM
Bus de Datos
7B35
TE Mux. XE TI
=0 0 RI
I RF Reloj
FRI
FI PO
<0 0 7B35 3
Estado RE
Desbord. 0 Unidad
Oscilador
Oscilador
Compa-
rador
Acarreo 0
Interr.
de
. Control
Inhib. Int. Señales de Control
Núcl./Usu.
Control de E/S
FEST DA DB OP XX XY ........ 47
Cronogramas
Unidad de Control 48
Cronogramas
Unidad de Control 49
Índice
Índice
● Introducción
● Operaciones elementales
● Estructura de un computador elemental y sus señales de
control
● Cronogramas
Diseño de la Unidad de Control (UC)
● Gestión de excepciones
● UC CABLEADA
– Utilizando exclusivamente puertas lógicas
● UC MICROPROGRAMADA
– Utilizando una memoria de control
TP FD CM L TM FI XX XY OP TD FP DA DB TA CR FEST P0
1 1 0 0 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 1 1 1 1 1 1
0 0 1 1 0 0 x x x x x x x x 0 0 x x x x x x 0 0 0 0
0 0 1 1 1 1 x x 1 0 0 0 1 0 1 1 x x x x x x 0 0 0 0
Registro de Instrucción
Indicadores
de estado Registro de Dirección
Secuenciador
Reloj
Memoria de
control
Registro de Control
Decodificación
Señales de Señales de
Control internas Control externas
Unidad de Control 56
Diseño de la UC
UC CABLEADA UC MICROPROGRAMADA
Ventajas Ventajas
●Alta velocidad de funcionamiento ●Son sistemáticas con un formato bien
definido
●Implementaciones más pequeñas
(reducido número de componentes) ●Pueden ser fácilmente modificables durante
el proceso de diseño
Inconvenientes Inconvenientes
●Difícil realizar modificaciones en el ●Requieren más componentes para su
implementación
diseño: modificación rediseño
●Tienden a ser más lentas que las unidades
●No tienen estructura común de control cableadas debido a que tienen que
realizar operaciones de lectura de una
memoria para obtener las señales de control
Técnica de diseño favorita en las Emulación
arquitecturas RISC ●Se puede utilizar un microprograma para que la UC
interprete otro lenguaje máquina distinto (una máquina
a emular) sin necesidad de realizar modificaciones en
el hardware de la unidad de control -> cambiando sólo
el microprograma!
Conceptos básicos
● MICROINSTRUCCIÓN
● MICROPROGRAMA
Unidad de Control 58
Conceptos básicos
Microinstrucción
● Cadena de ceros y unos que
– representa la activación o no del conjunto de señales de
control durante un ciclo de reloj
– y la posibilidad de decidir condicionalmente qué
microinstrucción se debe ejecutar a continuación
● Cada palabra de la memoria de control es una
microinstrucción.
Unidad de Control 59
Conceptos básicos
Microprograma
● Secuencia de ´s cuya ejecución permite interpretar una
instrucción
● Ejecutar una microinstrucción Leer una de la MC
● Una vez rellenada la memoria de ´s:
el control es tarea de (micro)programación
● Cambiando microprogramas se puede ejecutar otros repertorios
de instrucc (simular otras arquit) -> EMULACIÓN!
Memoria de
control
<- búsqueda
Salto a ejecución
Memoria de Control
● Memoria que almacena los microprogramas o
(conjuntos de ´s) a partir de los que se obtienen las
señales de control necesarias para la ejecución del
repertorio de instrucciones
● Suelen ser ROM
Unidad de Control 61
Diseño de la UC
UC MICROPROGRAMADA
Condiciones básicas:
1. Capacidad suficiente de MC
2. Procedimiento de correspondencia
Inst dir MC comienzo su programa
3. Secuenciamiento de instrucciones
Unidad de Control 62
Conceptos básicos
Formato de microinstrucciones
– Señales de control: Señales para el camino de datos
– Condiciones: Bits para seleccionar la condición que se
desea utilizar para en función de si es cierta o no ejecutar
la siguiente microinstrucción o saltar a otra
– Siguiente instrucción: Campo que indica la siguiente
instrucción a ejecutar
Unidad de Control 63
Diseño de la UC
Diseño del formato de microinstrucción
Comenzar con la lista completa de señales de control
Agrupar las señales de control con función similar en un mismo CAMPO
● Controlar que una misma señal no esté en diferentes campos
Campo de CONTROL DE SECUENCIAMIENTO: indica la siguiente mI a
ejecutar
Secuenciamiento: se deben almacenar en algún orden en MC, por
ejemplo, secuencialmente (sec. implícito)
Se puede aplicar CODIFICACIÓN:
● Para reducir el tamaño de la mI
● Para evitar que ciertas señales se activen al mismo tiempo (evitar errores)
Ej: acceso a bus, operación de memoria, etc…
Unidad de Control 64
Diseño de la UC
Estructura básica de la UC
mprogramada
● microsaltos
condicionales
Unidad de Control 65
Índice
Índice
● Introducción
● Operaciones elementales
● Estructura de un computador elemental y sus señales de
control
● Cronogramas
● Diseño de la Unidad de Control (UC)
Gestión de excepciones
Excepciones
● Causadas por eventos internos
– Condiciones de excepción (ej: overflow)
– Errores (ej: error de alineamiento de memoria)
– Fallos (ej: fallo de página)
– Llamadas al sistema
● Síncronos a la ejecución del programa (se puede saber
cuándo)
● Puede que el programa de usuario se retome tras tratar
la excepción o bien que se “aborte” (¿’cancele’? ;-)
(Tema 7, E/S)
3 RETE/RETI
Retorno a
programa
usuario
El sistema (CPU + SO) gestiona o trata la excepción: en general:
– Guarda la dir de la Instrucción en la que se produjo la excepción, PC
– Guarda RE del programa de usuario
– Pasa a Modo Supervisor
– Trata la excepción: ejecución de una rutina de tratamiento
– Restituye el estado del programa de usuario
– Retorna el control a usuario (salvo que se aborte), restituye PC
Dpto. Arquitectura y Tecnología de Sistemas Informáticos.
Universidad Politécnica de Madrid 71