Download docx - Balotario 1er Examen

Transcript
Page 1: Balotario 1er Examen

BALOTARIO CAPITULO 11. Mencione y describa una aplicación para las cuales se necesitan desarrollar nuevas arquitecturas más rápidasEl movimiento de un fluido tanto en régimen laminar como turbulento es descrita a través de las ecuaciones no lineales de Navier-Stokes para las que no se conocen soluciones analíticas. La resolución de estas ecuaciones para números de Reynolds elevados y geometrías complejas muy utilizados en la industria aeronáutica en el cual necesita velocidades y cantidades de memoria muy elevadas.2. ¿En qué consiste el nivel de especulación?Permite iniciar cálculos antes de que hayan terminado las instrucciones de las que depende el resultado de dichos cálculos sea útil o correcto.3. ¿En la estructura Nivel Conceptual de Blaaw cuantos niveles conceptuales se identifican?La Arquitectura: define el comportamiento funcional del computador, tal como aparece ante un programador en lenguaje maquina La Configuración: define la organización del computador en términos de transferencia entre registros y flujos de información La Realización: se refiere a la tecnología de los elementos concretos que se utilizan para la implementar la configuración.4. ¿En qué se diferencian la arquitectura concreta y abstracta?La arquitectura concreta; es la descripción de la estructura y organización de un elemento.La arquitectura abstracta; es una interface que permite utilizar los recursos de ese nivel por los niveles superiores.5. ¿En que se basa la ley de Moore?La ley de Moore es una conjetura basada en ciertas observaciones empíricas que establece que el número de transistores en un circuito integrado se duplica cada año y medio o dos años.6. Que es la computación ubicua.Es la integración de la informática en el entorno de la persona, de forma que los ordenadores no se perciban como objetos diferenciados. Se refiere al hardware, al software y a las aplicaciones relacionadas con las interfaces persona-computador y la interacción computador-mundo real. 7. Aparte de la potencia que otras figuras de mérito existen relacionadas con el consumo de energía de los circuitos integradosLa densidad de potencia o potencia consumida por unidad de superficiePotencia pico o potencia máximaPotencia dinámica8. En que consiste la técnica “codigo gray” para reducir el consumo de energia en los busesUna técnica para reducir el consumo en los buses consiste en codificar las direcciones mediante el código GRAY esto permite reducir el número de transiciones de nivel en las líneas del bus dado que las direcciones suelen cambiar secuencialmente, particularmente en las transferencias de líneas de cache.9. ¿puede el sistema operativo controlar la tension a la que trabaja el procesador?SI: El sistema operativo puede encargarse de controlar la tensión a la que trabaja el procesador mediante una técnica llamada escalado de la tensión para esto existen dos alternativas. En la primera el sistema operativo puede fijar la tensión directamente a través de la correspondiente interfaz (usualmente escribiendo en un registro) y las aplicaciones utilizan las funciones del sistema operativo para controlar los valores de tensión que precisan. En la segunda alternativa, el sistema operativo también dispone de una interfaz para establecer los valores de tensión, pero es el propio sistema operativo el que detecta la necesidad de variar los niveles de tensión10. ¿Qué líneas fundamentales ha seguido el paralelismo en la implementación de las arquitecturas?Básicamente una es: la replicación de elementos, incluyendo unidades funcionales, procesadores, módulos de memoria, etc. Entre los que distribuye el trabajo.Otra alternativa, para la implementación del paralelismo, es la segmentación de cauce (pipelining), técnica a través de la cual un elemento se divide en un serie de etapas que funcionan de forma independiente y por las que van pasando los operando, instrucciones procesados por el elemento.11. ¿Qué es taxonomía En arquitectura de computadores?La taxonomía en arquitectura hace referencia a una clasificación en este caso a computadores, a clases caracterizadas por un conjunto de propiedades, comportamiento frente a determinadas situaciones, la taxonomía de

Page 2: Balotario 1er Examen

Flynn divide el universo de los computadores en cuatro clases, basándose en el flujo de secuencias e instrucciones y flujo de datos.12. Clasificación de las 4 taxonomías de Flynn, descríbalas.Computadores SISD: Un único flujo de instrucciones y un único flujo de datos.Computadores SIMD: Un único flujo de instrucciones y varios flujos de datos.Computadores MIMD: Varios flujos de instrucciones y varios flujos de datos.Computadores MISD: Varios flujos de instrucciones y un único flujo de datos.13. ¿Cuáles son las medidas para la evaluación de las prestaciones de un computador?, indique que es lo que miden.- Tiempo de respuesta: Tiempo que tarda el computador en procesar una entrada.- Productividad: Número de entradas procesadas por unidad de tiempo- Funcionalidad: Tipos de entradas diferentes que es capaz de procesar- Expansibilidad: Posibilidad de ampliar la capacidad de procesamiento- Escalabilidad: Ampliación del sistema sin una devaluación de prestaciones- Eficiencia: Razón entre prestaciones y coste14. ¿Cuáles son las definiciones de MIPS y MFLOPS en términos de CPU, y para qué sirven?

MIPS= ¿T CPU∗10

6= f

CPI ¿106, mide la velocidad de ejecución de las instrucciones.

MFLOPS=OperacionesEnComaFlotanteTCPU∗10

6 , mide el rendimiento de los ordenadores en operaciones de punto flotante

por segundo.15. ¿Qué es un benchmarking y para qué sirve?Es un conjunto de programas de prueba que representa la carga de trabajo usual en la máquina que se va a evaluar, un benchmark nos sirve para evaluar las prestaciones de una arquitectura.16. ¿Cuál es el concepto posterior al año 1964 de arquitectura de computador?Conjunto de niveles de abstracción estructurados jerárquicamente, que permiten encuadrar la tecnología y la arquitectura dentro de un marco común de estudio del computador17. Mencione una de las consecuencias de la ley de MooreUna de las consecuencias de la LEY DE MOORE es el rápido ritmo de abaratamiento de la capacidad de procesamiento, así mismo reducción del coste de la potencia de computo ocasionando crecimiento exponenciales en el número de usuarios que tienen acceso a una capacidad de procesamiento dada y afectando a la rentabilidad de las aplicaciones18. ¿Qué es microarquitectura?Es el conjunto de recursos y métodos utilizados para satisfacer las especificaciones que establece la arquitectura, este incluye tanto la forma en que se organizan los recursos como las técnicas utilizadas para alcanzar los objetivos de costes y prestaciones planteados, por lo que la microarquitectura define las especificaciones para la implementación lógica.19. ¿Los computadores del futuro de qué aspecto fundamental dependerá su arquitectura?Dependerá de la interacción mercado/aplicaciones arquitectura mediante una breve referencia a las aplicaciones influirán en el desarrollo de nuevas arquitecturas.20. Mencione algunos métodos para reducir el consumo de energía- Memoria:- Desconectar la memoria cuando no vaya a utilizarse durante un tiempo largo.- Compresión de código.- Buses:- Codificar las direcciones mediante código Gray.- Transmitir la diferencia entre direcciones que se solicitan consecutivamente.- Compresión de la información de las líneas de dirección para reducir el número de líneas del bus.- Aprovechamiento eficiente del paralelismo.- Reducir la frecuencia del reloj.

Page 3: Balotario 1er Examen

21. ¿Qué posible solución se tendría para los mayores retardos en las comunicaciones globales que limitan la frecuencia de reloj?- Microarquitecturas sencillas- Multiprocesadores en un chip - Procesadores VLIW22. ¿Qué estrategias se tiene para la reducción de corriente de perdidas?Una posibilidad es desconectar la memoria cuando esta no vaya a utilizarse durante un tiempo suficiente largo, dado que la desconexión supondría que se perdería la información almacenada y habría que recuperarla desde disco. En este caso, es el sistema operativo el que se encargaría de gestionar este tipo de desconexión (sleep mode).23. Según la taxonomía de Flynn, explique los dos tipos de paralelismo.- Paralelismo de datos: Se explota cuando una misma función, instrucción, etc; se ejecuta repetidas veces en paralelo

con datos diferentes- Paralelismo Funcional: Se aprovecha cuando las funciones, bloques, instrucciones, etc; que intervienen en la

aplicación, se ejecutan en paralelo24. ¿Cuáles son los niveles del paralelismo funcional? Explique cada uno.- Nivel de Instrucciones u Operaciones: Cuando se ejecutan en paralelo las instrucciones de un programa. Es el nivel

de granularidad más fina que se considera en el ámbito de la arquitectura de computadores.- Nivel de Bucle: Se ejecutan en paralelo distintas iteraciones de un bucle o secuencias de instrucciones de un

programa. En este caso la granularidad es fina-media.- Nivel de Funciones: Distintos procedimientos que constituyen un programa se ejecutan simultáneamente. La

granularidad es media- Nivel de Programas: Cuando la plataforma ejecuta en paralelo programas diferentes que pueden corresponder, o

no, a una misma aplicación. La granularidad es más gruesa25. Las Arquitecturas según el tipo de paralelismo y la taxonomía de Flynn:Paralelismo Funcional:SISD: Proc. Segmentados, Proc. Superescalar, Proc. VLIWMIMD: Memoria Compartida, Acceso Uniforme (SMP), Acceso no uniforme o distribuido, Paso de mensaje, Multi-computadoras, Paralelismo de DatosSIMD: Proc. Vectoriales, Proc. Matriciales, Proc. Sistolicos26. ¿Qué distintas alternativas se han dado para aumentar las prestaciones de los procesadores segmentados?- Implementar microarquitecturas más complejas para diseñar cauces en cuyas etapas se pueda procesar más de una

instrucción y reducir de esta forma el CPI.- Aprovechar la mayor velocidad de los circuitos, diseñando cauces con mas etapas, cada una de las cuales necesita

un tiempo menor.27. Enuncie los tipos de Benchmark y sus usos- Aplicaciones reales: para analizar problemas de portabilidad y dependencia- Kernels: para explicar las causas de las diferencias entre maquinas distintas- Programas de prueba simples: pequeños programas insertados en la memoria cache- Programas sintéticos: reproducen los porcentajes de instrucciones y uso de recursos.28. Defina la ley de Amdahl e indique su utilidad.

Sp≤p

1+ f ( p−1), Donde Sp es la mejora de velocidad, p factor de mejora de recurso, f fracción de tiempo en la

maquina sin mejorar donde no se puede aplicar la mejora p.La ley de Amdahl nos indica, hasta qué punto una mejora en un factor p en un recurso, afecta la mejora final obtenida.29. ¿Cuáles son los factores que determinan el precio final de un computador?- Ganancia en ventas (beneficio para el vendedor)- Margen bruto (costes indirectos)- Costes directos (relacionados con la fabricación del producto)- Costes de los componentes (fabricación de los IC)30. ¿Cuáles son las distintas estructuras de niveles respecto a un computador?Niveles conceptuales de Blaaw

Page 4: Balotario 1er Examen

- Niveles de Bell y Newell- Niveles de interpretación de Levy- Niveles funcionales de Tanenbaum31. ¿Cuáles son los 5 niveles estructurales de Bell y Newell?- De componente- Electrónico- Digital- De transferencia entre registros (Register transfer)- Procesador - Memoria - Interconexión (PMS)32. ¿Cuáles son los 5 niveles de interpretación de Levy?- Aplicaciones- Lenguajes de alto nivel- Sistema operativo- Instrucciones maquina- Microinstrucciones33. ¿Cuál es la distribución de niveles que integra tanto los niveles de Bell y Newell como Levy y Tanenbaum?- Niveles software superiores- Nivel de sistema operativo- Nivel de sistema computador- Nivel RT- Nivel de lógica digital- Nivel de circuito electrónico- Nivel de componentes34. De una pequeña descripción acerca de SPEC.Programa de prueba utilizado principalmente en el ámbito de los computadores de sobremesa y los servidores.35. ¿Qué es arquitectura?Es el conjunto de instrucciones, recursos y características del procesador que son visibles al software que se ejecuta en el mismo. Por tanto, esta determina el software que el procesador puede ejecutar directamente y esencialmente defina las especificaciones a las que debe ajustarse la microarquitectura.36. ¿Cuáles son los dos niveles de privilegio en el modelo de programación?- El nivel de usuario- El nivel de sistema, donde se pueden usar instrucciones (como de I/O y de manipulación de estado, flags).37. Nombre tres consorcios que promueven la utilización de los benchmark para la evaluación del rendimiento de un computador.- SPEC (Standard Performance Evaluation Corporation)- TPC (Transaction Processing Council)- EEMBC (EDN Embedded Microprocessor Benchmark Consortium)38. ¿Qué ámbito incluye el el estudio de Arquitectura de Computadores?- El lenguaje máquina del computador, la microarquitectura del procesador y la interfaz para los programas en

lenguaje maquina (lenguaje ensamblador y arquitectura concreta del procesador).- Los elementos del computador y cómo interactúan (estructura y organización del computador).- La interfaz que se ofrece a los programas de alto nivel y los módulos que permiten controlar el funcionamiento del

computador (sistema operativo).- Los procedimientos cuantitativos para evaluar los sistemas (benchmarkings).- Las alternativas posibles y las tendencias en su evolución.39. ¿Cuál es el objetivo del estudio de la arquitectura de computadoras?- Evaluar las prestaciones, características y analizar su desempeño identificando posibles cuellos de botella que

limitarían sus prestaciones.- Diseñar y/o configurar un sistema para que se ajuste a los requisitos establecidos- Aprovechar las características del computador para desarrollar aplicaciones eficaces, que cumplan con las

prestaciones requeridas.40. ¿Cuál es la maquina base para los programas base del SPEC2000 y cuáles son sus características?

Page 5: Balotario 1er Examen

La máquina base es la estación de trabajo Ultra5_10, con un procesador SPARC a 300 MHz y 256 Mb de memoria.BALOTARIO CAPITULO 21. ¿Cuál es la definición de segmentación de cauce?La segmentación de cauce es una técnica que permite aumentar el rendimiento del sistema al que se aplica. Consiste en descomponer el proceso, de una tarea que realiza el sistema, en fases o pasos; que permitan una ejecución de estas fases en etapas independientes entre sí.2. ¿Qué es el tiempo de latencia de inicio y cuál es su fórmula?Es el tiempo que tarda una operación en procesarse completamente en el cauce. En un cauce segmentado la primera instrucción termina de ejecutarse pasado un tiempo igual a TLI.TLI = k*t3. ¿Que son los riesgos o dependencias en la segmentación de cauce y cuáles son?Un riesgo o dependencia de datos es cualquier condición que puede interrumpir el flujo continuo de instrucciones a través del cauce, se distinguen tres tipos de riesgos: - Riesgos de datos- Riesgos estructurales- Riesgos de control4. ¿Cuáles son las soluciones para las dependencias de datos tipo RAW?- La reorganización de código: Consiste en disponer de instrucciones independientes, que son colocadas entre

instrucciones, con dependencia RAW, para generar retrasos y lograr que una primera instrucción guarde su resultado para que luego una segunda instrucción logre leer el resultado correcto.

- El interbloqueo entre etapas: Se introducen elementos hardware en el cauce para detectar la existencia de dependencias, en el caso de que se detecte una la instrucción que debe leer el resultado de otra debe esperar un numero de ciclos necesario.

- Los atajos (bypass): Se añaden buses en el cauce para permitir que los resultados de una etapa pasen como entradas a la etapa donde son necesarios en caso de dependencias, al mismo tiempo que siguen su camino para almacenarse en el banco de registros.

5. ¿Cuáles son los criterios que cumplen los cauces que no se ajustan al esquema de cauce lineal?- Algunas etapas que se vuelven a reutilizar por una misma operación.- Hay etapas que necesitan varios ciclos de reloj.- Una misma operación puede utilizar más de una etapa al mismo tiempo.- El orden en que se visitan las etapas puede cambiar de una operación otra (cauces multifuncionales).- Puede existir dependencias entre las operaciones que se introducen en el cauce, de forma que el orden en que una

operación6. ¿A partir de donde se construye el diagrama de retardos de inicio?Se construye a partir de estados que se designan mediante un vector con tantos componentes como el vector de colisiones y que representa las latencias prohibidas en ese estado, es decir los intervalos de tiempo en los que no se puede introducir nuevas operaciones en el cauce desde el instante actual.7. ¿De dónde parte el diseño de una unidad de control para un cause segmentado? ¿Cómo se construye?Parte a partir de la tabla de reservas del cauce, se construye con una tabla con tantas filas como etapas tiene el cauce y tantas columnas como ciclos como consume una operación al pasar a través de dicho cauce8. ¿Por qué es importante las latencias prohibidas?Es importante porque en un determinado instante no se pueden introducir nuevas operaciones en el cauce por que darían lugar a colisiones.9. ¿Cómo se organiza el cauce que definen las dimensiones de diseño de un procesador segmentado?- Numero de tareas- Subtarea que implementa cada etapa- Distribución de la secuencia de etapa- Uso de caminos de bypass (forwarding)- Temporización del cauce10. ¿Cuáles son las alternativas para la resolución dependencias?- La resolución estática: La responsabilidad es el compilador, el cual inserta instrucciones de no operar para evitar

las dependencias de datos o control.

Page 6: Balotario 1er Examen

- Resolución dinámica: se realiza durante la ejecución de las instrucciones a través de los elementos hardware (caminos de bypass).

- Resolución combinada: aquí actúan tanto el compilador como el hardware. El compilador mejora el rendimiento del hardware reduciendo el efecto de sus posibles limitaciones.

11. En la distribución de la secuencia de etapas, ¿Cómo puede ser clasificado el cauce?- Cause único o cauce multifuncional: las instrucciones de aritmética, de salto, de carga y almacenamiento son

procesadas por el mismo cauce físico.- Cauce doble: en la etapa de ejecución presenta dos caminos alternativos, uno es seguido por operaciones en coma

flotante y por el otro camino se ejecutan las operaciones asociadas al resto de las instrucciones.- Cauces múltiples: se pueden ejecutar varias operaciones simultáneamente, mejorando el rendimiento. Son más

complicadas pues se tiene que garantizar la consistencia secuencial del procesador.12. ¿Cuáles son las 4 etapas de los cauces para arquitectura RISC y las 6 etapas para la arquitectura CISC?1. Captación de instrucción (IF)2. Decodificación de la instrucción y captacion de los operando de los registros (ID)3. Ejecución de la operación codificada (EXE o ALU)4. Escritura de los resultados (WB)1. Captación de instrucciones2. Decodificación de la instrucción y captación de operandos3. Calculo de dirección4. Acceso a memoria5. Ejecución de operación6. Escritura de resultados13. ¿Cuál es el principal problema que presenta el cauce de tres etapas que utilizaban los procesadores ARM?Era el denominado cuello de botella de Von Neuman: cualquier computador de programa almacenado con una única memoria para datos y programas vera limitada sus prestaciones por el ancho de banda de memoria.14. ¿Cómo se mejora las prestaciones de un ordenador?Aumentando la frecuencia de reloj (f) y reduciendo el número de ciclos por instrucción (CPI)15. ¿Cuáles son las condiciones por las que un estado se llama preciso según Smith y Pleskun en 1985?Todas las instrucciones que se emitieron antes de la instrucción indicada por el contador de programa (PC) almacenado (para continuar el proceso interrumpido) se han completado.Las instrucciones posteriores al valor indicado por el PC almacenado no se ejecutan y no han cambiado el estado del procesador.Si la interrupción fue ocasionada por una instrucción, el contador del programa apunta a esa instrucción, que puede ejecutarse completamente o no.16. ¿Cuál es la taxonomía del diferente tipo de instrucciones?- Generadas por el propio procesador para indicar una condición de error.- Generadas por el propio procesador para acceder a un servicio del sistema operativo.- Generadas fuera del procesador para indicar una condición de error - Generadas fuera del procesador para acceder a un servicio del sistema operativo.17. ¿Cuántas y cuáles son las etapas para un cauce RISC típico?- Captación de la instrucción (IF)- Decodificación de la instrucción y captación de los operandos de los registros (ID)- Ejecución de la operación codificada (EXE o ALU)- Escritura de los resultados en el fichero de registros (WB)18. ¿Cuáles son las políticas de anulación de instrucciones captadas erróneamente en los saltos que pueden implementar los procesadores segmentados?

19. ¿Cómo se realiza el proceso de carga (load) en los RISC?

Page 7: Balotario 1er Examen

En Procesadores RISC esto se hace en dos pasos:- Se captan los contenidos de los registros donde está la información necesaria para calcular la dirección.- Y se calcula la dirección efectiva a partir de dichos contenidos.20. ¿Cómo se realiza el proceso de carga (load) en los CISC?En Procesadores CISC, es más difícil determinar la dirección de memoria efectiva Se puede necesitar captar los contenidos de varios registros y realizar cálculos diversos en caso de direccionamientos indexados, con auto incrementos, direcciones relativas, etc.21. ¿cuál es el principio de segmentación y como es que mejora en las prestaciones?Si una operación se ejecuta en un tiempo T. la implementación se basa en dividir la ejecución de la operación en una serie de fases que se realizan una después de la otra y rediseñar el programa de tal forma de que cada una de esas fases se ejecute independientemente de las otras, en cada una de las etapa que constituye el sistema segmentado. Así en un sistema segmentado con etapas que consumen un tiempo t, la ganancia de velocidad que se conseguiría en la ejecución de n operaciones vendría dada por:

tnTLI

Tn

T

Tns

segmentado

segmentar

*)1(

*)( sin

22. ¿En qué consiste la técnica de salto retardado y de qué depende?Consiste en situar en los huecos instrucciones que se tengan que ejecutar antes que la instrucción de salto y que sean independientes de ella, con esto el cauce puede terminar una instrucción por ciclo, mejorando el rendimiento.23. En que se basa una implantación segmentada del sistemaSe basa en dividir la ejecución de la operación en una serie de fases que e realizan de después de la otra y en rediseñar el sistema de forma que cada una de esas fases se ejecute independiente de las otras.24. Describa la temporización síncrona y asíncrona.El paso de las instrucciones de una etapa a otra que se coordina mediante el uso de una señal de reloj común a todas las etapas se llama cauce síncrono, la frecuencia de reloj debe establecerse de forma que haya tiempo suficiente para que la etapa más lenta pueda completar la tarea. La otra forma de coordinar el paso de las instrucciones de una etapa a otra se basa en utilizar líneas de sincronización entre etapas consecutivas para implementar un protocolo de conformidad.25. ¿Cuál sería la política más adecuada para diseñar la unidad de control en un cauce multifuncional?Lo más razonable sería utilizar una política de tipo avaricioso, de forma que, en cada estado, cuando se tenga que iniciar una instrucción de un tipo determinado, se espere el mínimo número de intervalos para que no haya colisiones.26. ¿Si hago referencia a un error por fallo de página u originada por el programador en el propio código, a qué tipo de interrupción hago referencia y con qué finalidad?Hace referencia al tipo de interrupción generadas por el propio procesador, y esto con la finalidad de acceder a un servicio del sistema operativo.27. ¿En cuál de las arquitecturas RISC o CISC son más frecuentes o comunes tanto las instrucciones de carga como la de almacenamiento?Las operaciones de carga y almacenamiento son operaciones que tienen mayor participación o son más frecuentes en Arquitecturas RISC que en las Arquitecturas CISC, es por eso que en las arquitecturas RISC las podemos encontrar entre 25% y 35% de cargas y solamente un 10% de instrucciones de almacenamiento.28. ¿Cuántas y cuáles son las 6 etapas de un procesador ARM en su tercera evolución?1. Captación de las instrucciones (IF)2. Decodificación de la instrucción (ID)3. Decodificación y lectura de Registros (ID/OF)4. Ejecución de la operación codificada (EXE)5. Acceso a Memoria de datos (MEM)6. Escritura de los resultados (WB)29. ¿Cuál es el proceso de escritura en una interrupción precisa?En primer lugar, garantizamos que el orden en que se atiendan a las interrupciones coincida con el orden de las instrucciones, más que con el orden en que se producen estas. Pues habría que atender primero la interrupción de LW y después la de ADD, es decir en lugar de atender la interrupción en el momento en que se produce, se atienden

Page 8: Balotario 1er Examen

las interrupciones únicamente en la etapa WB, la cual reconocerá una marca que viaja junto con la instrucción a través de las etapas; es por eso que si la marca llega a la etapa WB, esta se atiende guardando el contador de programa de esta instrucción o apunta a la siguiente instrucción.30. ¿Cuáles son los tipos de organización de un cauce?- Número de etapas- Subtarea que implementa cada etapa- Distribución de la secuencia de datos- Uso de caminos de bypass (forwarding)- Temporización del cauce (síncrono/asíncrono)31. ¿Qué es el interbloqueo entre etapas?Es cuando se introducen elementos de hardware en el cauce para detectar dependencias, en caso que se detecte una la instrucción que debe leer el resultado proporcionado por la primera se detiene se detiene el número de ciclos necesario.32. Defina ProductividadSe define como el número de operaciones que se ejecutan por unidad de tiempo.33. ¿Cómo se puede definir la eficiencia para un procesador segmentado?Es la relación entre la ganancia de velocidad que proporciona el cauce y el número de etapas del mismo.34. Si el cauce es de 5 etapas ¿Qué etapas se unen en una sola?Para el cauce de 5 etapas, se unen las etapas EXE y C.35. ¿Cuándo se habla de un cauce único?Las instrucciones son procesadas por el mismo cauce físico.36. ¿Cuándo se habla de un doble?Cuando se presentan dos caminos alternativos en una cierta etapa del cauce principal.37. ¿Cuándo se habla de un múltiple?Cuando se presentan más de dos caminos alternativos para una etapa del cauce, Se usa unidades funcionales diferentes.38. ¿Cuál es la diferencia entre la resolución estática y la resolución dinámica?- La resolución estática hace uso del compilador (software)- La resolución dinámica hace uso de elementos hardware (caminos de bypass)39. ¿Qué es latencia media?Es el intervalo de tiempo medio en el que inician o terminan operaciones en el cauce.40. ¿Cómo se identifican ciclos avariciosos?Para construir un ciclo avaricioso se parte de un estado y se toma el camino que implica iniciar la operación esperando el tiempo mínimo posible. Es decir, tomando el arco correspondiente a la latencia no prohibida más pequeña del estado. Se pasa a un nuevo estado y se sigue el mismo procedimiento hasta que se cierra el ciclo.BALOTARIO CAPITULO 31. ¿De qué depende el mayor o menor grado de paralelismo entre las instrucciones de un programa?Depende de la frecuencia con que aparecen dependencias de datos y control; y de los retardos de las operaciones codificadas en las instrucciones.2. ¿A qué se refiere procesamiento de la instrucción?Se refiere a que la instrucción está en alguna de las etapas del cauce.3. ¿A qué se refiere ejecución de la instrucción?Se refiere a que la instrucción está en su etapa de ejecución.4. ¿Qué es la emisión alineada y la emisión no alineada?- Emisión alineada; La emisión es alineada si no puede introducirse nuevas instrucciones en la ventana de

instrucciones hasta que este no esté totalmente vacía.- Emisión no alineada; La emisión no es alineada mientras exista espacio en la ventana, se pueden ir introduciendo

instrucciones para ser emitidas.5. ¿En que afecta la utilización de las estaciones de reserva en un procesador superescalar?La utilización de estaciones de reserva compartidas es una decisión que afecta tanto a la complejidad de la microarquitectura como a la eficiencia en el aprovechamiento de del paralelismo entre instrucciones.6. ¿En qué consiste el envió de instrucciones?

Page 9: Balotario 1er Examen

Desde la estación de reservas, las instrucciones se envían a la unidad funcional cuando esta pueda empezar a ejecutar nuevas instrucciones. El envió implica la selección de las instrucciones ejecutables y a su vez este envió puede ser ordenado, desordenado o parcialmente ordenado.7. ¿Qué tipo de dependencia, evita la técnica del renombramiento?- WAR (WRITE AFTER READ): Escritura después de lectura- WAW (WRITE AFTER WRITE): Escritura después de escritura8. ¿En qué consiste la técnica de renombramiento?Consiste en utilizar registros de micro-arquitectura como elementos de almacenamiento, permitiendo de esta forma evitar los problemas de riesgos WAR y WAW mediante un espacio de almacenamiento alternativo en el que se realiza la escritura final.9. Breve descripción de las 5 partes del buffer de renombramiento con acceso asociativo- Asignación valida: Es 1 si ha renombrado algún registro y la información de los otros campos es válida.- Registro de Destino: Indica el registro que se ha renombrado.- Contenido: Datos actualizados o contenido original del registro renombrado.- Contenido Valido: es “0” si una instrucción (emitida o enviad) va a escribir aquí su resultado (no hay dato).- Bit de Asignación última: es “1” si se hizo la última asignación al registro, se tomara este valor para la siguiente

instrucción.10. ¿En qué consiste la regla de arbitraje en el envió de instrucciones hacia las unidades funcionales?En el caso de que haya más de una instrucción ejecutable hay que utilizar alguna regla de arbitraje para seleccionar la que se envía o las que se envían. Usualmente, el orden de envío se realiza teniendo en cuenta la antigüedad de las instrucciones en la estación de reservas.11. ¿Qué tipos de envió de instrucciones existe?- Ordenado : Las instrucciones no ejecutables bloquean a las ejecutables que están después de ellas en la estación de

reservas.- Desordenado :-No existe bloqueo entre instrucciones- Parcialmente desordenado : Se produce bloqueo solo entre determinados tipos de instrucciones.12. ¿Cuál es la diferencia entre los accesos indexado y asociativo de un buffer de renombramiento?Para acceder al buffer de renombramiento existen dos alternativas: acceso asociativo y acceso indexado. El acceso asociativo tiene en cada línea del buffer cinco campos. En cambio, el acceso indexado tiene para cada registro un índice y un bit de asignación válida, además el buffer de renombramiento propiamente dicho, únicamente tiene el campo de contenido y contenido válido.13. ¿Cuál debería ser la consistencia de memoria para mejorar las prestaciones de un procesador?Se podrían mejorar las prestaciones del procesador si se deja que puedan procesarse desordenadamente los accesos a memoria. Es decir una consistencia de memoria débil mejoraría considerablemente las prestaciones.14. ¿Por qué debe existir una consistencia de procesador fuerte?Porque una finalización desordenada no aporta mejoras claras en cuanto a prestaciones. En cambio, una ejecución desordenada de las instrucciones permite aprovechar el paralelismo entre instrucciones, en el contexto de una finalización ordenada gracias a estructuras con el buffer de reordenamiento.15. ¿Cuáles son las 2 alternativas para el establecimiento de la condición de salto?- Bits de Estado: Existen bits de estado que se modifican al realizar operaciones, o mediante operaciones que actúan

específicamente sobre el valor del registro de bits de estado.- Comprobación Directa: Los resultados de las operaciones se comprueban directamente respecto a las condiciones

específicas mediante instrucciones específicas. Pueden ser de Dos instrucciones y una instrucción.16. ¿A qué se refiere el Procesamiento especulativo de los saltos?La ejecución prosigue por el camino más probable (se especula sobre las instrucciones que se ejecutarán). Si se ha errado en la predicción hay que recuperar el camino correcto (típica en los procesadores superescalares actuales).17. ¿Cómo se clasifican los 2 procedimientos de predicción de saltos?a. Predicción fija: se toma la misma decisión: el salto siempre se realiza, "taken" o "nottaken".b. Predicción verdadera: La decisión de si se realiza o no el salto se toma mediante.

- Predicción estática: Según los atributos de la instrucción de salto (el código de operación, el desplazamiento, la decisión del compilador).

Page 10: Balotario 1er Examen

- Predicción dinámica: Según el resultado de ejecuciones pasadas de la instrucción (historia de la instrucción de salto).

18. ¿Cuál es la dificultad para procesar una interrupción en un procesador con finalización desordenada?Esta es mayor en comparación a un procesador con finalización ordenada, debido a que una instrucción puede ocasionar una interrupción después de que una instrucción que le sigue haya finalizado.19. ¿Cuáles son los 2 campos importantes que se han añadido al ROB en el procesamiento de interrupciones con buffer de reordenamiento?- Vaciado o flush: Bit de activación que evita que se actualiceel banco de registros.- Int: Bit de activación que marca el estado de excepción o interrupción.20. ¿En que basa las interrupciones precisas con buffer de Historia?Se basa en el uso de un buffer de historia, el cual guarda la información acerca del estado que se ha modificado al actualizar los registros de arquitectura, de forma que se pueda recuperar en el caso de que se produzca alguna interrupción.21. Ejemplos de procesadores que usan bits de pre-decodificación- HP-PA7200 (Arquitectura RISC)- AMD-K6 (Arquitectura CISC)22. ¿A qué se refiere la consistencia secuencial de un programa?- El orden en que las instrucciones se completan.- El orden en que se accede a memoria para leer (LOAD) o escribir (STORE)23. Ejemplos de procesadores que utilizan el nivel de especulación de saltos condicionales- Una instrucción de salto especulativa: ALPHA 21064, POWERPC 603- Dos instrucciones de salto especulativa: POWER2- Cuatro instrucciones de salto especulativa: POWERPC 620- Seis instrucciones de salto especulativa: ALPHA 2116424. Para que se añade una serie de bits en la etapa de pre-decodificaciónSe añaden para permitir acelerar la decodificación completa de las instrucciones en la etapa posterior de decodificación, el número de bits puede ser entre los 4 a 7 en arquitecturas RISC y algunos más para la arquitectura CISC.25. ¿En la captación y validez de operandos en la Emisión que función cumple el Bit de Validez en una estación de reserva?El bit de validez permite indicar si el dato se encuentra almacenado en dicho registro está disponible para poder ser utilizado por la instrucción que lo necesita (por ejemplo, si el bit de validez está a 1), o no lo está (bit de validez igual a 0), debido a que existe una instrucción ejecutándose que utiliza ese registro para escribir el resultado.26. ¿Cuál es la definición de un procesador Superescalar?Son procesadores segmentados cuyas etapas se han diseñado de forma que puedan procesar más de una instrucción por ciclo, incorporando en su microarquitectura el hardware necesario para la gestión dinámica de los riesgos de datos y de control.27. Explique una diferencia fundamental entre un procesador escalar y segmentadoUn procesador escalar (a diferencia de un procesador VLIW) debe ser capaz de identificar el paralelismo entre instrucciones (ILP) que existe en el código y permitir que los recursos se usen lo más eficazmente en la ejecución paralela de instrucciones.28. ¿A que se denomina paralelismo del procesador y como está determinado?A la capacidad de procesar instrucciones en paralelo y viene determinado por el número de instrucciones que pueden procesarse al mismo tiempo en cada una de las etapas del procesador: número de instrucciones que pueden captarse, decodificarse, ejecutarse y escribir sus resultados al mismo tiempo.29. ¿Cuáles son las principales estrategias para mejorar el paralelismo de instrucciones?- La decodificación paralela y uso de pre decodificadores.- La emisión paralela de instrucciones a las unidades funcionales.- La ejecución paralela de las operaciones codificadas en las instrucciones en las distintas unidades funcionales.- La finalización del procesamiento de las instrucciones.- La detección y resolución de dependencias.

Page 11: Balotario 1er Examen

- El mantenimiento de la consistencia secuencial mediante el desacoplo de la ejecución de las instrucciones y la escritura de resultados.

30. ¿Cuáles son las etapas de un procesamiento superescalar?- Captación de instrucciones (IF): es capaz de leer varias instrucciones por ciclo desde la cache de más alto nivel.- La etapa de decodificación (ID): Donde se decodifican varias instrucciones por ciclo.- La etapa de emisión (ISS): Determina qué instrucciones pueden pasar a ejecutarse entre las que tienen disponibles

sus operandos y la unidad funcional correspondiente.- La etapa de ejecución (EX): Donde pueden ejecutarse varias instrucciones en paralelo.- La etapa de escritura (WB): Donde se almacenará los resultados.31. ¿A que se denomina etapa de pre-decodificación?Es parte de la etapa de decodificación, en muchos casos, una pre-etapa de decodificación (dada la cantidad de instrucciones a decodificar), se implementa entre la cache L2 y la cache de instrucciones de primer nivel. Esta se encarga de determinar el tipo de instrucción, facilitando así la identificación posterior de los recursos que se van a usar.32. Explique la diferencia fundamental entre los procesadores segmentados y escalares en la etapa de decodificación paralela y pre-decodificación- En un procesador segmentado hay una sola etapa de descodificación de instrucciones y búsqueda de operandos

(ID/OF).- En un procesador super escalar existen unidades de descodificación (ID) y de emisión de instrucciones (ISS,issues)

separadas.33. ¿De qué se encarga la etapa de emisión?Determina que instrucciones pueden emitirse al disponer de sus operandos y existir unidades funcionales libres para su ejecución. También se encarga de aplicar la correspondiente política para seleccionar las instrucciones que finalmente se emiten.34. ¿Qué ventajas trae la emisión ordenada y desordenada de instrucciones?En la emisión ordenada las instrucciones se emiten en el orden en que aparecen en el programa. En la emisión desordenada las instrucciones se emiten en forma desordenada para cualquier operación que se necesite. Es por esto que en el caso de una emisión desordenada se aprovecha todo el potencial del computador, ya que a diferencia de la emisión ordenada, las instrucciones empiezan a emitirse en cuanto los datos están disponibles, aprovechando así el máximo grado de paralelismo de la máquina, y emitiendo varias instrucciones a la vez.35. ¿Qué es la ventana de Emisión?También llamada ventana de instrucciones, es una estructura que usa una cola de registros donde se almacenan las instrucciones que han sido decodificadas y que están en espera de ser emitidas.36. ¿Qué es una estación de reserva?Siguiendo la técnica de shelving la ventana de instrucciones puede distribuirse en varias estructuras que reciben el nombre de estaciones de reserva o consignas.Son estructuras similares a la ventana de instrucciones pero específica para cada unidad funcional o para un conjunto de unidades funcionales.37. ¿De qué partes consta el procesamiento de una instrucción?- Final de la ejecución de una operación codificada en la instrucción a partir del cual se dispone de los resultados

generados por las unidades funcionales pero no se ha modificado los registros de la computadora.- Final del procesamiento de la instrucción o momento en que se retira o completa la instrucción, momento en el

que se describen los resultados de operación en los registros de arquitectura.38. ¿Cuál es la tendencia en los procesadores superescalares en lo que se refiere a su consistencia?Todo hace referencia a que los procesadores superescalares apuntan hacia el uso de esquemas de consistencia de memoria débiles y esquema de consistencia de procesador fuertes basados en el uso de buffer de reordenamiento estructuras similares.39. ¿Qué tipos de renombramiento de registros existen? Existen dos tipos- Estático: renombramiento se realiza durante la compilación.- Dinámico: renombramiento se realiza durante la ejecución del programa.40. ¿Cuáles son las 2 alternativas para el acceso a los buffers de renombramiento?- Acceso Asociativo

Page 12: Balotario 1er Examen

- Acceso Indexado