0% encontró este documento útil (0 votos)
27 vistas71 páginas

Estructura y Diseño de Procesadores

apuntes de estructuras de computadores

Cargado por

Cristina Gracia
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
27 vistas71 páginas

Estructura y Diseño de Procesadores

apuntes de estructuras de computadores

Cargado por

Cristina Gracia
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Estructura de Computadores

Tema 3

Procesador

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
Í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

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
2
Objetivos
 Visión dinámica del computador:
● mostrar cómo se ejecutan las instrucciones
● describir el órgano encargado de que esto se lleve a cabo
(la unidad de control, UC)
● entender esta ejecución de instrucciones mediante su
representación en el tiempo por cronogramas
 Comprender el diseño de la UC
● ser capaz de descomponer las instrucciones en
operaciones básicas según la estructura del
computador
● diseño de la unidad de control microprogramada
 Comprender y analizar aspectos de diseño que pueden
mejorar el rendimiento a través de mejoras en la
estructura del computador o de la UC
Dpto. Arquitectura y Tecnología de Sistemas Informáticos.
Universidad Politécnica de Madrid
3
Bibliografía

 de Miguel, P. "Fundamentos de los computadores",


Paraninfo, 2004. 9ª Edición
 Patterson, D. A.; Hennessy, J. L. Estructura y
diseño de Computadores. Ed. Reverté 2011. 4ª
Edición
 Stallings, W. "Organización y arquitectura de
computadores", Prentice Hall, 2006, 7ª Edición
(hay 8ª ed., 2010, sólo en inglés)

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
4
Introducción
 Estudiaremos:
● Unidad de control:
– Encargada de interpretar las instrucciones del programa y
gobernar la ejecución de las mismas
● Camino de datos (o datapath):
Elementos internos de la CPU donde se transfieren los

datos procedentes de la memoria o registros internos para
obtener los resultados
– Debe soportar el conjunto de operaciones que precisa el
repertorio de instrucciones
 Organización de procesadores: ha evolucionado
● desarrollo tecnológico
● la necesidad de obtener altas prestaciones

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
5
Introducción

Visión global del computador y de la CPU


CPU
Computador

Regs ALU
Mp CPU

Sistema Bus
Interconexión

Unidad
Entrada/ De
Salida Control

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
6
Estructura de Computador Elemental y
sus señales de 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 ........

Dpto. Arquitectura y Tecnología de Sistemas Informáticos. 7


Universidad Politécnica de Madrid
Esquema básico del computador Von Neumann

CPU Direcciones
Registros

ALU Datos Memoria

Control () / Estado () Principal


U. Control

Unidad de E/S

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid 8
Introducción

 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

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
9
Introducción
 Entradas y salidas de la UC:
● Entradas
– Registro de Instrucción (RI o IR): CO, MDs
– Reloj: registro contador de fases
– Registro de estado (RE o SR)
– Señales de estado externas (de E/S y Mem)
● Salidas
– Todas las señales de control que permiten realizar cada
una de las instrucciones máquina: (casi todas) internas y
(algunas) externas (E/S y Mem)

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
10
Introducción

CLK
Reloj Contador fases

SS. Estado
externas

RI UC

Reg. Estado

Señales de control

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
11
Introducción
CPU

RI

Z
V
C …
… RE
S UC
I

p.ej.
MEMRQ
RD
WR

p.ej.
INT
Clk BUSREQ

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
12
Introducción
 Reloj: tren de pulsos caracterizado por su periodo
T

Reloj

● señales de control: siempre sincronizadas con el reloj


● Define el tiempo de cada operación.
– Memoria: tiempo de lectura y escritura
– ALU: tiempo de operación
● CAMINO CRÍTICO: camino de máximo retardo entre un origen y un
destino. Depende de los dispositivos que tengan que atravesar las
señales.
TEMPORIZACIÓN

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
13
Introducción
Ciclo de lectura en M Pasos 1 2 3

Reloj
1. dirección  AR
2. M(AR)  Reg (*), FAR

lectura (supone 3 ciclos)


Address
(*) normalmente, el Reg. de Datos
de la CPU, DR
MEMRQ

Señales de Control: RD
>Tacc
carga en AR: FAR Data
lectura: MEMRQ y RD
carga en Reg o (DR): FReg FReg

Figura . Temporización de la lectura en memoria

Dpto. Arquitectura y Tecnología de Sistemas Informáticos. .


Universidad Politécnica de Madrid
14
Introducción
Ciclo de escritura en M Pasos 1 2 3

Reloj

1. dirección  AR
FAR
dato  DR (**)
FDR
2. DR  M(AR),
escritura (supone 3 ciclos) dirección
Address

(**) supuesto que se pueda Data dato


realizar simultáneamente la carga
en ambos registros MEMRQ

Señales de Control: WR
>Tacc
carga en AR: FAR
carga en DR: FDR
escritura: MEMRQ y WR

Figura . Temporización de la escritura en memoria

Dpto. Arquitectura y Tecnología de Sistemas Informáticos. .


Universidad Politécnica de Madrid
15
Introducción

Ciclos de lectura y escritura en M o en los Módulos de


E/S (en sus registros): ciclo de BUS
 implica un acceso al exterior a la CPU
● durante ese tiempo sólo la CPU puede acceder a los buses
● (ningún periférico)
 suele durar más de 1 ciclo de reloj, p.ej., 3 ciclos en la figura
Reloj

CPU

Bus dir/datos

Figura . Ciclo de bus

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
16
Introducción

Evaluación del rendimiento


 Supóngase los tiempos de ejecución:
Acceso a memoria: 8 ns
ALU y sumadores: 2 ns
Acceso a registros: 1 ns
 ¿Cúal de las siguientes realizaciones será más rápida?
● Una en la que cada instrucción se ejecuta en un ciclo de
tamaño fijo (cada instrucción tarda lo que tardaría la más
lenta).
● Una realización donde cada instrucción se ejecuta en un ciclo
de longitud variable (cada instrucción tarda únicamente lo
necesario)
 ¿De qué dependería la duración del periodo de reloj?

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
17
Í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

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
18
Operaciones Elementales
 Ciclo de instrucción: conjunto de acciones que
requiere la ejecución de una instrucción
1. Leer la instrucción en memoria (fetch)
2. Decodificar la instrucción
3. Ejecución: como máximo
– Búsqueda de operandos, que puede conllevar
- Cálculo de operando
- Leer operando en memoria
– Operación
– Almacenar resultado
4. Preparar la siguiente instrucción (ir a paso 1)

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
19
Operaciones Elementales

 Las fases de ejecución ayudan a simplificar el


diseño de la UC.
Ej: fetch común a todas las instrucciones

 Funcionamiento del computador durante la


ejecución de un programa consiste en una
sucesión de ciclos de instrucción

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
20
Operaciones Elementales

 OPERACIONES ELEMENTALES (microoperaciones):


operaciones realizables directamente por el hardware
en que la UC divide cada una de las fases de ejecución
de una instrucción: p.ej.
SP  AR
 Las operaciones elementales se realizan por la UC
mediante la activación de señales de control
 Cada OE dura un ciclo de reloj (excepto las de M)
 Se pueden simultanear en el tiempo, cuidando:
● Orden preestablecido
● Conflictos en los elementos Hw

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
21
Operaciones Elementales

 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

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
22
Operaciones Elementales
 OE de transferencia
● Llevan información de un ORIGEN (reg. o M) a un
DESTINO (reg. o M)
1. Establecer camino físico entre salida de origen y entrada de
destino (abrir triestados, multiplexores, etc)
2. Activar la señal de carga en destino para que grabe el valor
presente a su entrada.

Esencial:
1) Los buses no almacenan
información
2) En cada ciclo sólo puede haber
un acceso abierto hacia un bus

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid 23
Operaciones Elementales
Ej: Transferencia a través de un bus de dos registros: RC → RA

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

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid 24
Operaciones Elementales

 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

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid 25
Operaciones Elementales
Ej: Operación en la ALU con registros:
RA + RC → RD

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

2.- avisar destino: señal por flanco FRD

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid 26
Operaciones Elementales

 Reglas de agrupación de OEs


1. Respetar el orden lógico entre las acciones
Ej: antes de leer, guardar dirección en AR
2. Evitar conflictos en el mismo recurso físico
un elemento físico no puede estar en dos estados diferentes al
mismo tiempo
Ej: conflicto en bus; memoria no puede leer y escribir al mismo
tiempo, única operación en la ALU, etc.
3. La información debe guardarse en algún sitio: ORIGEN y
DESTINO deben poder almacenar información (reg o mem)

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
27
Í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

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
28
Estructura de Computador Elemental
PDM v1.0

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
29
Bus de Dir

Estructura de Computador TI Bus de Datos

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

Acarreo El incremento del de


PC
Interr.
.
NO modifica los
Control
Inhib. Int. biestables de estado
Señales de Control
Núcl./Usu. aritméticos.
Control de E/S
FEST DA DB OP XX XY ........ 38
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 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 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

Acarreo 0 Las instrucciones de


Interr.
.
aritméticas modifican
Control
Inhib. Int. los biestables de
Señales de Control
Núcl./Usu. estado aritméticos.
Control de E/S
FEST DA DB OP XX XY ........ 43
Lectura instrucción siguiente
Primer ciclo de memoria

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

 ADD .R4, .R7


 Lectura de la instrucción
● PC  AR (1 ciclo)
● M(AR)  RI, PC + 2  PC
(2 ciclos)
 Decodificación (1 ciclo)
 Ejecución y fetch sig. Instrucción
● R4+R7  R4 y FEST;
PC  AR (1 ciclo)
● M(AR)  RI, PC + 2  PC
(2 ciclos)

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

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
50
Diseño de la UC
 El diseño de la UC exige haber definido
previamente
● El repertorio de instrucciones (formatos y
direccionamientos)
● La estructura del computador
Conjunto de cronogramas
 La UC funciona como un TRADUCTOR
RI(CO, MD), Reloj, Estado, señales ext.  señales de control
Ej: CO: 8 bits, 1 instr=16 ciclos  RF: 4 bits, …
traductor de unas 20-30 señales de entrada y 150 señales
salida

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
51
Diseño de la UC
 Formas de diseño de la UC

● UC CABLEADA
– Utilizando exclusivamente puertas lógicas

● UC MICROPROGRAMADA
– Utilizando una memoria de control

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
52
Diseño de la UC
 UC CABLEADA
● Se construye mediante métodos generales del diseño
lógico (circuito secuencial o combinacional)
● Más rápidas
● Diseño y construcción complejo y costoso
● Las técnicas actuales (CAD, comp silicio) permiten que
sea solución viable y válida cara a construir máquinas
rápidas

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
53
Diseño de la UC
 UC MICROPROGRAMADA
● Utiliza una memoria para almacenar el estado de las
señales de control en cada periodo de la ejecución de
cada instrucción.
● Generar el cronograma de cada instrucción (ejecutar la
Inst) es ir leyendo de esta memoria (Memoria de Control,
MC).

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
54
Diseño de la UC

Memoria de Control (MC)

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

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
55
Diseño de la UC

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!

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid 57
Diseño de la UC

 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

Salto a rutina según instrucción <- ejecución



<- ADD routine
 salto a búsqueda

<- OR routine
 salto a búsqueda

 <- otras
 Salto a búsqueda
Unidad de Control 60
Conceptos básicos

 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

Señales de control Tipo Sec. Cond Siguiente instr

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

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
66
Gestión de excepciones
 Además de ejecutar la secuencia de instrucciones del
programa de usuario, la UC debe controlar situaciones
excepcionales

● ¿Qué ocurre si el CO no es válido?


● ¿Y si hay overflow?
● ¿Y si el divisor es igual a cero?
● ¿Y si se ejecuta una instrucción privilegiada en Modo
Usuario?
● ¿Cómo y cuándo comunicarse con los periféricos?
● …

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid
67
Gestión de excepciones
 Excepción [Overflow, división por cero, etc.]
● Evento no planificado que detiene la ejecución de un
programa: interno
– Salvar el PC y Estado actuales en pila
– Pasar a modo SO (modo supervisor)
– Saltar a rutina de SO que maneje excepciones internas
– SO retornará después al programa, en su anterior estado
 Interrupción [E/S]
● Un evento externo inesperado rompe la ejecución del
programa (Tema 7, E/S)

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid 68
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’? ;-)

● TRAP: llamada al sistema

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid 69
Gestión de excepciones
Interrupciones
● Causadas por eventos externos (peticiones de
periféricos).
● Asíncronas a la ejecución del programa (en cualquier
instante)
● Se atienden entre instrucciones (fetch)
● Obligan a suspender temporalmente la ejecución del
programa de usuario

FETCH**: Si INT=1 e “INT_no_inhibidas” hacer


proceso_excepcion
Si no ir a FETCH

(Tema 7, E/S)

Dpto. Arquitectura y Tecnología de Sistemas Informáticos.


Universidad Politécnica de Madrid 70
Gestión de excepciones
Rut. Tto.
Programa 1 Salvar Estado excepción SO
Usuario usuario
Excepción: (Modo S)
(Modo U)

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

También podría gustarte