Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Problemas de Arquitectura de Computadores: Ejercicios y Soluciones, Ejercicios de Arquitectura de ordenadores

para practicar y reforzar el conocimiento

Tipo: Ejercicios

2020/2021

Subido el 13/09/2021

iddo-taipe-quispe
iddo-taipe-quispe 🇵🇪

4.2

(5)

5 documentos

1 / 57

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
202 PROBLEMAS DE
ARQUITECTURA DE
COMPUTADORES
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39

Vista previa parcial del texto

¡Descarga Problemas de Arquitectura de Computadores: Ejercicios y Soluciones y más Ejercicios en PDF de Arquitectura de ordenadores solo en Docsity!

202 PROBLEMAS DE

ARQUITECTURA DE

C OMPUTADORES

César Represa Pérez

Carmen Rodríguez Clavería

Nº de Asiento Registral 00/2013/

Burgos, 2013

202 Problemas de Arquitectura de Computadores – 2º G.I.I –

Área de Tecnología Electrónica 3 Universidad de Burgos

Bloque I: PROCESADORES ESCALARES

Tema 1: Arquitectura de computadores

Dentro de la visión multinivel de la estructura de un computador, el nivel de “Arquitectura” se encuentra por encima del nivel “Físico” y por debajo del nivel de “Aplicación”. ¿VERDADERO o FALSO? Solución: VERDADERO

La “Arquitectura de Computadores” únicamente se encarga del estudio del repertorio de instrucciones de un computador y de evaluar su rendimiento. ¿VERDADERO o FALSO? Solución: FALSO

Los registros son dispositivos hardware que permiten almacenar cualquier valor binario. ¿VERDADERO o FALSO? Solución: VERDADERO

La cantidad de información que puede almacenar un registro depende de su longitud, la cual se puede medir en bytes. ¿VERDADERO o FALSO? Solución: VERDADERO

En la estructura de un computador, el registro denominado PC ( Program Counter ) almacena la siguiente instrucción que se va a ejecutar. ¿VERDADERO o FALSO? Solución: FALSO

Una característica de las “máquinas de Von Neumann” es la ejecución simultánea de varias instrucciones. ¿VERDADERO o FALSO? Solución: FALSO

La posición que ocupa una instrucción o un dato dentro de un programa recibe el nombre de dirección lógica? ¿VERDADERO o FALSO? Solución: VERDADERO

1.1.

1.2.

1.3.

1.4.

1.5.

1.6.

1.7.

202 Problemas de Arquitectura de Computadores – 2º G.I.I –

Área de Tecnología Electrónica 5 Universidad de Burgos

Tema 2: Arquitectura del repertorio de instrucciones

Para realizar una determinada tarea, en una arquitectura de tipo RISC se necesita un mayor número de instrucciones que en una arquitectura de tipo CISC. ¿VERDADERO o FALSO? Solución: VERDADERO

El periodo de la señal de reloj en una arquitectura RISC puede ser más pequeño que en una arquitectura CISC. ¿VERDADERO o FALSO? Solución: VERDADERO

En el modo de direccionamiento de tipo registro la dirección del operando buscado se encuentra almacenada en un registro. ¿VERDADERO o FALSO? Solución: FALSO

En el modo de direccionamiento de tipo indirecto, la dirección del operando buscado se encuentra almacenada en un registro. ¿VERDADERO o FALSO? Solución: VERDADERO

La ALU de un procesador se encarga de calcular operaciones aritméticas, direcciones y destinos de saltos. ¿VERDADERO o FALSO? Solución: VERDADERO

Un formato de instrucción de longitud variable siempre es el más eficiente a la hora de su decodificación. ¿VERDADERO o FALSO? Solución: FALSO

Un procesador multiciclo es aquel que puede ejecutar múltiples instrucciones en un solo ciclo. ¿VERDADERO o FALSO? Solución: FALSO

2.1.

2.2.

2.3.

2.4.

2.5.

2.6.

2.7.

  • 2º G.I.I – 202 Problemas de Arquitectura de Computadores

Universidad de Burgos 6 Área de Tecnología Electrónica

En cada etapa dentro de la ejecución de una instrucción se utilizan todos los recursos del procesador. ¿VERDADERO o FALSO? Solución: FALSO

En una memoria donde el almacenamiento es de tipo little-endian el byte menos significativo se almacena en la dirección más baja. ¿VERDADERO o FALSO? Solución: VERDADERO

El valor de CPI de un procesador nos informa del tiempo que tarda el procesador en llevar a cabo cada instrucción. ¿VERDADERO o FALSO? Solución: VERDADERO

El alineamiento de datos en memoria obliga a que los datos estén almacenados en direcciones que dependen de su tamaño. ¿VERDADERO o FALSO? Solución: VERDADERO

Utilizando un tipo de codificación híbrida y de acuerdo con el pequeño repertorio de instrucciones mostrado en la tabla, determinar de qué instrucción se trata cada una de las siguientes instrucciones: a. 10001111 10110100 10110011 00100100 b. 00010010 10011100 11001010 00100000 c. 00000011 10110100 10110000 00100101 d. 10101110 01110101 11001100 10100100 e. 00000010 00110011 11000000 00100100

Solución: a. Carga (LW); b. Salto (BEQ); c. Aritmético-lógica (OR); d. Almacenamiento (SW); e. Aritmético-lógica (AND).

2.8.

2.9.

2.10.

2.11.

2.12.

  • 2º G.I.I – 202 Problemas de Arquitectura de Computadores

Universidad de Burgos 8 Área de Tecnología Electrónica

La siguiente figura representa la ruta de datos de un procesador monociclo. El repertorio de instrucciones que puede ejecutar y sus respectivas latencias es el siguiente: » LW (carga de datos en registro): 1,15 ns. » SW (almacenamiento de datos en memoria): 1,25 ns. » Aritmético–lógica : 0,85 ns. » BEQ (control de flujo): 0,80 ns.

a. Señala en la figura anterior las estructuras hardware que se utilizan para ejecutar una instrucción aritmético-lógica. b. Determinar la frecuencia máxima de funcionamiento. c. Si rediseñamos la ruta de datos para que funcione como un procesador multiciclo con un CPI de 2,5 y a una frecuencia de 3,2 GHz, ¿cúal será la ganancia obtenida? Solución: a. MUX  PC  ALU  memoria de intrucciones  banco de registros  MUX  ALU  MUX  banco de regstros. b. T = 1,25 ns  f = 800 MHz. c. RMONO = 800 MIPS, RMULTI = 1280 MIPS  G = 1,60.

2.17.

202 Problemas de Arquitectura de Computadores – 2º G.I.I –

Área de Tecnología Electrónica 9 Universidad de Burgos

Tema 3: Evaluación de prestaciones

Para evaluar el rendimiento de un sistema se pueden utilizar los benchmark sintéticos, que son aplicaciones artificiales que no realizan ningún trabajo útil. ¿VERDADERO o FALSO? Solución: VERDADERO

El rendimiento de un computador está relacionado con el tiempo que tarda en realizar un determinado trabajo. ¿VERDADERO o FALSO? Solución: VERDADERO

Los benchmark de juguete son aplicaciones destinadas a medir el rendimiento de las videoconsolas. ¿VERDADERO o FALSO? Solución: FALSO

La ley de Amdhal se puede generalizar siempre que haya más de una mejora dentro de un mismo sistema. ¿VERDADERO o FALSO? Solución: FALSO

La comparación de rendimiento utilizando como métrica las instrucciones por segundo sólo es fiable cuando las arquitecturas son similares. ¿VERDADERO o FALSO? Solución: VERDADERO

¿Cuánto tiempo tarda en ejecutar un código de un millón de instrucciones un procesador multiciclo de 5 etapas que funciona a una frecuencia de 1 MHz suponiendo que cada instrucción utiliza las 5 etapas? Solución: t = 5 s

Un procesador con un CPI = 1,2 y que trabaja a una frecuencia de 2 GHz está ejecutando un código de 10 billones de instrucciones donde el 60% corresponden a operaciones en punto flotante. ¿Cuál será su rendimiento expresado en GFLOPS? Solución: R = 1 GFLOPS

3.1.

3.2.

3.3.

3.4.

3.5.

3.6.

3.7.

202 Problemas de Arquitectura de Computadores – 2º G.I.I –

Área de Tecnología Electrónica 11 Universidad de Burgos

Las aplicaciones que se ejecutan en un determinado procesador invierten un 30% del tiempo en ejecutar operaciones en coma flotante. Calcular el speedup del sistema después de rediseñar el procesador para que dichas operaciones sean 10 veces más rápidas. Solución: S = 1,37   = 37%

Una importante empresa fabricante de sistemas informáticos dispone de dos líneas de producción, una dedicada a sistemas de altas prestaciones y otra dedicada a servidores web. Dentro de dicha empresa el departamento dedicado al sistema de entrada/salida es capaz de aumentar la ganancia en un factor 10, y por otro lado, el departamento dedicado al diseño de procesadores es capaz de reducir el valor de CPI desde 4,8 hasta 3,6. Sabiendo que los equipos de altas prestaciones ocupan el 80% del tiempo en cálculos en el procesador, el 15% del tiempo en accesos a memoria y el 5% en operaciones de E/S, mientras que los servidores web dedican el 10% del tiempo a cálculos en el procesador, el 40% del tiempo en accesos a memoria y el 50% en operaciones de E/S, ¿a qué departamento y en cuál de las dos líneas de producción sería aconsejable invertir un aumento de presupuesto? Solución: Departamento de E/S en la línea de Servidores Web (S = 1,81   = 81%)

Se está valorando la posibilidad de incluir una extensión multimedia en un repertorio de instrucciones. Teniendo en cuenta que esta extensión consigue que las operaciones relacionadas con multimedia se ejecuten 16 veces más rápido: a. Dibujar un gráfico donde se muestre la evolución del speedup obtenido con dicha mejora en función de la fracción de tiempo que puede emplearse. La gráfica debe incluir al menos los valores correspondientes a las fracciones de tiempo del 10%, 25%, 50%, 75% y 90%. b. ¿Qué porcentaje de tiempo se debería utilizar la extensión multimedia para conseguir una mejora global del 100%? Solución: a. f = 10%  S = 1,10; f = 25%  S = 1,31; f = 50%  S = 1,88; f = 75%  S = 3,37; f = 90%  S = 6, b. f = 53%

Se dispone de dos procesadores con el mismo repertorio de instrucciones. El primero de ellos es un procesador monociclo que puede trabajar a una frecuencia de 800 MHz mientras que el segundo es un procesador multiciclo de 6 etapas cuyo CPI promedio es de 3,2 y que puede trabajar a una frecuencia de 2,8 GHz. a. ¿Qué procesador tiene un mayor rendimiento? b. ¿Cuál es el incremento relativo de rendimiento del mejor procesador respecto del peor? Solución: a. El segundo  R = 875 MIPS b.  = 9%

3.13.

3.14.

3.15.

3.17.

  • 2º G.I.I – 202 Problemas de Arquitectura de Computadores

Universidad de Burgos 12 Área de Tecnología Electrónica

Se dispone de las siguientes medidas obtenidas tras ejecutar un programa en dos computadores con arquitecturas distintas:

Computador A Computador B Nº de Instrucciones 1000 millones 800 millones Frecuencia de reloj 4 GHz 4 GHz CPI 1,0 1,

a. ¿Qué computador tiene un valor de MIPS más elevado? b. ¿Qué computador es más rápido? c. ¿Qué computador presenta las mejores prestaciones? Solución: a. Computador A (4000 MIPS); b. Computador B (t (^) CPU = 240 ms); c. Computador B (es más rápido)

Estamos planteando realizar dos modificaciones de diseño en un procesador y que afectan a la ALU y a la unidad en coma flotante. Las características de dichas modificaciones son: » Mejorar la ALU de manera que las instrucciones aritmético-lógicas pasen de CPI = 2 a CPI = 1,6. » Mejorar la FPU (unidad en coma flotante) para que ejecute sus instrucciones al doble de velocidad. Este procesador ejecuta el 45% del tiempo instrucciones aritmético-lógicas y el 10% del tiempo instrucciones en coma flotante. a. Calcular el speedup del sistema obtenido con cada una de las mejoras. b. Calcular el speedup del sistema obtenido aplicando las dos mejoras simultáneamente. Solución: a. Unidad ALU: S = 1,10   = 10%; Unidad FP: S = 1,05   = 5% b. S = 1,16   = 16%

3.18.

3.19.

  • 2º G.I.I – 202 Problemas de Arquitectura de Computadores

Universidad de Burgos 14 Área de Tecnología Electrónica

A diferencia de la planificación estática, en la planificación dinámica las instrucciones se pueden emitir aunque no dispongan de sus operandos. ¿VERDADERO o FALSO? Solución: VERDADERO

Dentro de un procesador segmentado de 5 etapas ( F , D , X , M y W ), ¿en qué etapa se utiliza la estructura denominada Branch Target Buffer ( BTB )? Solución: Etapa F

¿Qué nombre recibe la situación en la que dos instrucciones distintas necesitan acceder al mismo recurso hardware? Solución: Riesgo estructural

¿Qué nombre recibe la solución hardware que pretende disminuir el número de paradas necesario para resolver un riesgo de datos de tipo RAW? Solución: Adelantamiento de datos

En el siguiente fragmento de código hay un riesgo de datos de tipo RAW que se resuelve mediante paradas. Suponiendo que no hay riesgos estructurales y que se trata de un procesador segmentado de 5 etapas, ¿cuántos ciclos de penalización supone esta parada? LW R1, 100(R0) ADD R3, R2, R Solución: 2 ciclos

Cuántos ciclos de parada se producen en la ejecución de esta secuencia de instrucciones en un procesador segmentado de 5 etapas considerando únicamente riesgos de tipo RAW? SW R3, 100(R0) ADD R3, R2, R Solución: 0 ciclos

Cuántos ciclos de parada se producen en la ejecución de esta secuencia de instrucciones en un procesador segmentado de 5 etapas considerando únicamente riesgos de tipo RAW? ADD R3, R2, R SW R3, 100(R0) Solución: 2 ciclos

4.8.

4.9.

4.10.

4.11.

4.12.

4.13.

4.14.

202 Problemas de Arquitectura de Computadores – 2º G.I.I –

Área de Tecnología Electrónica 15 Universidad de Burgos

Disponemos de un procesador segmentado de 5 etapas implementado con adelantamiento de datos. ¿Cuál sería el adelantamiento adecuado en la siguiente secuencia de instrucciones? ADD R3, R2, R ADD R3, R2, R Solución:

Disponemos de un procesador segmentado de 5 etapas implementado con adelantamiento de datos. ¿Cuál sería el adelantamiento adecuado en la siguiente secuencia de instrucciones? AND R3, R2, R SW R3, 100(R0) Solución:

Se dispone de un procesador multiciclo de 5 etapas con un CPI promedio de 3,6 y cuya frecuencia de funcionamiento es de 1,2 GHz. a. Calcular el tiempo de ejecución de un código compuesto por 200 millones de instrucciones. Si se sustituye el anterior procesador por un procesador segmentado de 5 etapas cuya frecuencia de funcionamiento es de 1 GHz: b. Calcular nuevamente el tiempo de ejecución del código anterior. c. Calcular la ganacia que ha supuesto el uso del procesador segmentado respecto del procesador multiciclo. Solución: a. tCPU = 0,6 s; b. t (^) CPU = 0,2 s; c. G = 3

Disponemos de un procesador segmentado diseñado para resolver todos los riesgos mediante paradas. Ejecutamos en este procesador una aplicación con las siguientes características: » Un 5% de las instrucciones provoca riesgos estructurales con una penalización de 1 ciclo. » Un 15% de las instrucciones provoca riesgos de tipo RAW con una penalización de 2 ciclos. » Un 30% de las instrucciones son saltos condicionales con una penalización de 3 ciclos. a. Determinar el CPI efectivo suponiendo que el CPI ideal es 1. b. Determinar la pérdida de ganancia que se produce. Solución: a. CPI = 2,25; b. Gefectivo/ideal = 0,44 ( = –56%)

4.15.

4.16.

4.17.

4.18.

202 Problemas de Arquitectura de Computadores – 2º G.I.I –

Área de Tecnología Electrónica 17 Universidad de Burgos

El siguiente fragmento de código se ejecuta en un procesador segmentado de 5 etapas donde cada instrucción se ejecuta utilizando las cinco etapas ( F , D , X , M y W ): I1 LW R2, 0(R0) I2 LW R3, 100(R0) I3 ADD R4, R2, R I4 SUB R5, R4, R I5 LW R7, 0(R1) I6 SUB R8, R11, R I7 SW R8, 100(R1) I8 ADD R9, R12, R I9 BEQ R9, R0, etiqueta

a. Señalar los posibles riesgos de tipo RAW que pueden aparecer. b. Si todos los riesgos se resuelven mediante paradas, determinar la pérdida de ganancia que se produce. c. Si las instrucciones tuvieran diferente duración, ¿qué otro tipo de riesgos habría que considerar? Solución: a. I3 con I2 por R3; I4 con I3 por R4; I6 con I5 por R7; I7 con I6 por R8; I9 con I8 por R b. G = 0,56   = –44%; c. Riesgos de tipo WAW

Consideremos dos bucles “ for ” anidados donde el bucle exterior se ejecuta 10 veces y el interior 20. Esto supone un total de 210 instrucciones de bifurcación (200 para el bucle interior y 10 para el bucle exterior). Determinar el porcentaje de aciertos en las siguientes estrategias de predicción de saltos: a. Predicción estática, donde siempre se toma el salto. b. Predicción dinámica de un bit, donde el estado inicial de ambos bucles es de tomar el salto. c. Predicción dinámica de dos bits, donde el estado inicial de ambos bucles es de tomar el salto. Solución: a. TA = 94%; b. TA = 90%; c. TA = 94%

Un procesador segmentado que funciona a una frecuencia de 500 MHz está ejecutando un código con las siguientes características: » El 4% de las instrucciones provoca una penalización de 100 ns. » El 25% de las instrucciones son accesos a memoria donde el 6% de ellas provoca una penalización de 110 ns. a. Determinar el CPI efectivo suponiendo que el CPI ideal es 1. b. Determinar la pérdida de ganancia que se produce. Solución: a. CPI = 3,825; b. Gefectivo/ideal = 0,26 ( = –74%)

4.21.

4.22.

4.23.

  • 2º G.I.I – 202 Problemas de Arquitectura de Computadores

Universidad de Burgos 18 Área de Tecnología Electrónica

El siguiente fragmento de código se ejecuta en un procesador segmentado de cinco etapas ( F , D , X , M y W ) donde cada instrucción se ejecuta pasando por todas ellas: I1 LW R1, 0(R0) I2 LW R2, 4(R0) I3 ADD R3, R1, R I4 ADD R4, R1, R I5 LW R5, 8(R0) I6 ADD R6, R3, R I7 SW R6, 12(R0) I8 BEQ R4, R5, etiqueta a. ¿Cuántos ciclos se necesitarán para ejecutar el código anterior teniendo en cuenta únicamente los riesgos de datos y resolviéndolos mediante paradas? b. Si para resolver los riesgos utilizamos también la técnica del adelantamiento de datos, ¿cuántos ciclos se necesitarán ahora para ejecutarlo? c. ¿Cuál es la ganancia en rendimiento obtenida tras introducir el adelantamiento de datos? Dibujar en un diagrama de tiempos la evolución de la secuencia de instrucciones en cada caso. Solución: a. Parando para resolver riesgos de datos de tipo RAW: I1 LW R1, 0(R0) F D X M W I2 LW R2, 4(R0) F D X M W I3 ADD R3, R1, R2 F D D D X M W I4 ADD R4, R1, R3 F F F D D D X M W I5 LW R5, 8(R0) F F F D X M W I6 ADD R6, R3, R4 F D D X M W I7 SW R6, 12(R0) F F D D D X M W I8 BEQ R4, R5, etiqueta F F F D X M W nº ciclos = 19

b. Con adelantamiento de datos: I1 LW R1, 0(R0) F D X M W I2 LW R2, 4(R0) F D X M W I3 ADD R3, R1, R2 F D D X M W I4 ADD R4, R1, R3 F F D X M W I5 LW R5, 8(R0) F D X M W I6 ADD R6, R3, R4 F D X M W I7 SW R6, 12(R0) F D X M W I8 BEQ R4, R5, etiqueta F D X M W nº ciclos = 13

c. G = 1,46   = 46%

4.24.