Documentos de Académico
Documentos de Profesional
Documentos de Cultura
COP MD RA RD SHI
SOLUCIÓN:
RDM=16 ; Porque las direcciones, que vienen dadas por los registros RAi, son de 16 bits
RIM=16 ; Porque los registros de datos RDk son de 16 bits y la instrucción también es de 16 bits
MP = 64Kx16
b) Completar la tabla, incluyendo para cada instrucción la columna que falte con el LM, sus campos, el
nemotécnico o su explicación:
SOLUCIÓN:
Instrucción 1: RD1←SH L(M (RA3+12)) 0010+C=001C 2*001C=0038h SHL(0038)=0070h
RD1=0070h
Instrucción 2: M( RA2) RD0 El contenido de la dirección de memoria 0010 es 00FF
Instrucción 3: RD2 - M(RA0+9); M(0019)=2*0019=0032h; 00FF-0032=00CB ; al hacer la
operación sumando al número 00FF el C-2 del número 0032 resulta un acarreo final, luego
C=1
Instrucción 4: Si C=1 PCRA1, como no se considera una ejecución en secuencia el flag C=0,
luego no hay salto y el PC queda con el valor que tenga.
EJERCICIO 2: (6 puntos) (Todo el ejercicio se resuelve SÓLO para las instrucciones del apartado b)
a) Expresar en LTR las operaciones elementales de las instrucciones del apartado b)
SOLUCIÓN:
b) Dibujar el esquema hardware que pueda realizar estas instrucciones, etiquetando todos los elementos y
conexiones, indicando su tamaño y colocando en el esquema TODAS las señales de control necesarias
(explica cada una de ellas agrúpalas por funcionalidad).
SOLUCIÓN:
RA
RA
DEC
RA0
RA1 M
U PC
RA2 X
INC
ESC
RA3 PC
M0 RDM
RD
RD0
M R MP
RD1
U D 216 x 16
RD2 SUM X M
M
BANCO U
REGISTROS X
LEC
RIM
RD7 RI
RIM
RI
DEC C
AND 001Fh
ALU
RD C ALU
SOLUCIÓN:
0 MD
1
ALMA SALTC
COP
RDM<--RAi+RI(SHI), LEC
RDM<--RAi
RIM<--RDj 0
C
ESC SHL CMP
COP
1
d) Indicar el valor de las señales de control implicadas en la fase de búsqueda de operandos de las instrucciones
para el MD=1
SOLUCIÓN:
SOLUCIÓN:
SOLUCIÓN:
SOLUCIÓN:
__ __ __ __
Luego CircuitoM1 = A19 A18 + A19 A18 (A17 + A16)
SOLUCIÓN:
Es decir, construir un bloque 128Kx8 en base a módulos de 64Kx8 Hay que duplicar las
palabras
_
(A16..A0) A (A15..A0) W/R
17 16 8 DO (DO7..DO0)
A (*)
A16 E RAM 8
64K x 8
DI (DI7..DI0)
A (A15..A0) 16
E RAM
64K x 8
EJERCICIO 2: (1,5 puntos) Un computador dispone de 512GB de memoria virtual y 1Gx8 de memoria física.
El tamaño de la página es 4096B. Se pide:
a) Formato de las direcciones (virtual y física), número máximo de páginas virtuales y tamaño de la tabla
de páginas (de un nivel).
SOLUCIÓN:
SOLUCIÓN:
000 0000 0000 0000 0000 0001 0100 0100 0100 0000
(27) (12)
Solución: 0000014440)16
c) Si la memoria física tiene organización 3D, indicar el tamaño de los decodificadores (DECX y DECY)
y sus salidas activas cuando se referencia a la palabra (física) 32768
SOLUCIÓN:
La dirección física de 30bits se divide en dos de 15, siendo las entradas de los DECX y DECY son
Decodificadores de 15 entradas y 32K (215) salidas;
Salidas activas 32768 = 32 K luego la dirección es: 00 0000 0000 0000 1000 0000 0000 0000
EJERCICIO 3:(2,5 puntos) Se tiene una un computador MP de 4Gx8, se tiene una MC de 64KB, con
correspondencia asociativa por conjuntos de 4 vías y tamaño de bloque de 128B. Se pide:
SOLUCIÓN:
Número de Bloques (M) Tam MP / Tam Bloque = 4Gx8 /128B = 4G/128 = 232/27= 225 = 32M
Particiones (P) Tam MC / Tam bloque = 64KB / 128B = 216/27= 29=512
Conjuntos (C) P/N = 512/4 = 29/22= 27=128
b) Estructura de la dirección de MP
SOLUCIÓN:
32
A D
25 7
Etiqueta/Índice
18 / 7
SOLUCIÓN:
SOLUCIÓN:
EJERCICIO 4: (3,5 puntos) En un computador con 8G palabras de MP (m=16), de 512M Bloques y una MC
de 32K palabras, con correspondencia totalmente asociativa, política de reemplazo LRU, inicialmente está vacía,
se ejecuta dos veces un programa de 2000 instrucciones (una instrucción, una palabra) ubicado desde la dirección
0 y que referencia a un 20% de datos ubicados consecutivamente desde la dirección 0000B0000)h.
Calcular:
a) NC, NA, NF, FF y FA.
SOLUCIÓN:
(k) Tamaño bloque = Tamaño MC / Bloques (M) = 8G/512M = 233/229= 24=16 palabras por bloque
(P) Tamaño MC / Tamaño Bloque = 32K/ 16 = 215/24= 211=2K particiones
Primera Iteración:
Las 2.000 instrucciones ocupan un total de 2000/16 = 125 Particiones (completas)
Cuando se referencia a la instrucción 0 (que está en el bloque 0) hay fallo forzoso y se lleva a MC todo
el bloque (instrucciones de la 0 a la 15); las referencias a las instrucciones 1 a 15 serán aciertos.
Cada 16 instrucciones habrá 1 Fallo forzoso y 15 aciertos
Luego para las 2000 instrucciones habrá (1Fallo + 15 Aciertos) * 125 = 125 Fallos + 1.875 Aciertos
Además, un 20% de esas 2000 instrucciones (2000*0,2= 400) acceden a datos desde la posición B0000)16
= 720.896)10 (palabra 0 del bloque B000)16) hasta la B0190 )16 ( B0000)16 -inicial- + 190)16 -400 en
hexadecimal-); son 400/16 = 25 particiones enteras; en ellas pasa lo mismo que con las instrucciones: el
primer acceso es un Fallo Forzoso y los 15 siguientes accesos son aciertos.
Luego de las 400 referencias a datos habrá (1Fallo + 15 Aciertos) * 25 = 25 Fallos + 375 Aciertos
Segunda Iteración:
Las 2.000 instrucciones y los 400 datos YA están en MC, luego todos los accesos son ACIERTOS.
b) Sabiendo que el computador tiene un CPI de 1.25, trabaja a 8GHz, que el tiempo de acceso a la MP
es de 10 ciclos, la cual es capaz de transferir 8B en 10 ns, calcular el TMA y el TCPU
SOLUCIÓN:
c) ¿Cambiaría el TMA si todas las referencias a datos fuesen escrituras y la política de la MC fuese post-
escritura?
SOLUCIÓN:
NO, todos los accesos son escrituras en caché y se comportan como si fueran lecturas (no se
reemplaza, que es cuando hay que reescribir todo el bloque en memoria).
d) ¿Mejorará el rendimiento del computador si se le añade un segundo nivel de caché, con Tiempo de
acceso igual al del nivel anterior y Frecuencia de Fallos del 2%?
SOLUCIÓN:
TCPU-2 = NI * (CPI + NC/NI*FFL1*PFL1) * Treloj
Dividiendo TCPU-2 / TCPU = 455/ 6.792,5 = 0,067 Mejora un 93,3% con MC de dos niveles