Está en la página 1de 13

BALOTARIO CAPITULO 3

1. ¿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?
Desde la estación de reservas, las instrucciones se envían a la unidad funcional
cuando esta pueda empezar a ejecutar nuevas instrucciones. El envío 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 DESPUES DE LECTUURA
• WAW (WRITE AFTER WRITE): ESCRITURA DESPUES DE ESCRITURA
8. ¿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 partes del buffer de renombramiento con
acceso asociativo
El acceso asociativo consta de 5 partes:
• 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
tomará este valor para la siguiente instrucción.
10. ¿En qué consiste la regla de arbitraje en el envio 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, desordenado, parcialmente desordenado
• Ordenado.-Las instrucciones no ejecutables bloquean a las ejecutables que están
después de ellas en laestació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 alternativas para el establecimiento de la condición
de salto?
Se posee dos alternativas:
• 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 procedimientos de predicción de saltos?
Se clasifican en dos:
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 estatica: Según los atributos de la instrucción de salto (el código de
operación, el
desplazamiento, la decisión del compilador).
- Predicción dinamica: 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 predecodificación
HP-PA7200 (Arquitectura RISC) AMD-K6(Arquitectura CISC)
22. ¿A QUE SE REFIERE LA CONSISTENCIA SECUENCIAL DE UN
PROGRAMA?
Hace referencia a:
• 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 21164
24. Para que se añade una serie de bits en la etapa de predecodificación
Se 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 EMISION 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
segmentado
Un 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.
• 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 qué se denomina etapa de predecodificacion ?
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
predecodificació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.
40. ¿Cuáles son las alternativas para el acceso a los buffers de
renombramiento?
Las alternativas para el acceso a los buffers de renombramiento son dos:
• Acceso Asociativo
• Acceso Indexado
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 que 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.
• el 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.
BALOTARIO CAPITULO 4
1¿PARA QUÉ ESTÁ DISEÑADA LA MEMORIA CACHE?
Está diseñado especialmente para servir al apropiado y organizado
almacenamiento de información en una computadora. Su función es básicamente
mantener de manera temporal y accesible aquellos datos que son requeridos para
realizar determinadas funciones o tareas. Esta disponibilidad permite que cada
programa o archivo tenga inmediato acceso a la información necesaria y pueda así
dedicarse a subir el nivel de eficiencia de las funciones normales. De tal modo, la
memoria principal cuenta con una gran ayuda que le permite adquirir mayor
velocidad de desempeño y mejores resultados por fuera de sus limitadas
capacidades.

2¿CUÁLES SON LAS CARACTERÍSTICAS DE LA MEMORIA CACHE?


 El objetivo de la cache es lograr que la velocidad de la memoria sea lo más
rápido
 Los diferentes tipos de cache se organizan por niveles formando una
jerarquía.
 Se encuentra en el procesador ase e acelera la velocidad de procesamiento al
tener la memoria cache
 Permite traducir una dirección de RAM en una línea de cache concreta

3 MENCIONE CARACTERISTICAS DE LA MEMORIA OPTANE


 No funciona con nanotubos (las nano flash sí), y su fabricación es mucho más
sencilla.
 Mas económicas
 Densidad mayor (aproximadamente mil veces más comparadas con las
NANDFLASH). Mas almacenamiento en menor espacio.
 Menor consumo energético
 Puede trabajar como super cache.
 Se planifica que llegara a velocidades de transmisión de datos iguales a las
memorias RAM.
4¿CUÁL ES LA COMPOSICIÓN INTERNA DE LA MEMORIA CACHE?
 Caché Inclusivo: Los datos solicitados se quedan en la memoria caché de
procedencia.
 Caché Exclusivo: Los datos solicitados se eliminan de la memoria caché de
procedencia una vez transferidos al nuevo nivel.
5 ¿Cómo se determina las Prestaciones del sistema de memoria?
Las prestaciones de memoria esta determinada por
 Ancho de banda
 Latencia

6¿Cuáles son los niveles de memoria cache?


Existen varios niveles de memoria caché.
• Cachés on-chip: Dentro del mismo circuito integrado del procesador
• Caches off- chip: Fuera del mismo circuito integrado del procesador
7¿Cómo se puede reducir la latencia y equilibrar el ritmo del procesador?
• Pueden implementarse estrategias en el procesador para tolerar los
retardos de la memoria
• Mejorar las prestaciones del sistema de memoria
8 De que depende el Ancho de banda (throughput-rendimiento)
Depende del tiempo de ciclo de los circuitos de memoria, del número de bits que
proporciona la memoria en cada acceso (ancho de la memoria) y la anchura de los
buses que conectan el procesador y la memoria .
9 de que depende Latencia
Depende del tiempo de acceso a los chips de memoria y de los retardos entre el
procesador y la memoria
10 Que es latencia
Tiempo que transcurre desde que el procesador inicia el acceso a la memoria,
situando la dirección de las líneas correspondientes hasta que la memoria
proporciona dicho dato.
11 Que es Ancho de banda
Numero de bytes por unidad de tiempo que es capaz de transferir el sistema de
memoria.
12¿Cuáles son los tipos de memoria semiconductoras para configurar la memoria
principal?
 Las memorias SRAM (static random access memory): cada celda está
constituida por un biestable.
 Las memorias DRAM (dynamic random Access memory): consta de un
transistor que funciona como condensador.
13.Mencione las diferencias entre la Memoria SRAM Y DRAM
 SRAM
Son más rápidas
Está constituido por una celda
Consta de 6 transistores por bit
 DRAM
Tienen mayor capacidad de almacenamiento
Está constituido por un transistor por bit
Menor coste y consumo que las SRAM

14¿Por qué las memorias principales están constituidas por las memorias DRAM?
Debido a la necesidad de disponer de una memoria principal suficientemente
grande y unos costes y niveles de consumo razonables.
15¿Cómo se podría configurar las memorias SRAM para que sea igual a las
memorias DRAM?
Para configurar una memoria SRAM con la misma capacidad que una memoria
DRAM actual haría falta 16 veces el número de chips que necesitan para la
memoria DRAM. Siendo el coste por bit de la memoria SRAM entre 8 y 16 veces el
de la memoria DRAM.
16¿Porque están multiplexadas las direcciones de las memorias DRAM? ¿cómo
se identifica el uso que hace las líneas de dirección?
Las líneas de direcciones están multiplexadas porque presentan una mayor
cantidad de celdas en los circuitos de la memoria. Para identificar el uso que hace
cada línea presenta dos líneas adicionales (RAS Y CAS).
17¿enumere los tiempos característicos de una memoria DRAM?
 Trc: tiempo de ciclo aleatorio
 Trac: tiempo de acceso desde la RAS#
 Tcac: tiempo de acceso desde la CAS#
 Tcs: tiempo set-up de fila
 Tcs: tiempo set-up de la columna (desde la dirección columna está en los
terminales hasta CAS ACTIVA)
 Tpr: tiempo set-up de columna (desde que desactiva RAS)+
18¿Qué tiempo está relacionado con el ancho de banda que puede proporcionar
un circuito de memorias DRAM?
Es el tiempo de ciclo del chip Trc, el cual está dada por la suma del tiempo de
acceso y el tiempo de precarga (Tras+Tpr).
19¿mencione las dos propuestas ofrecidas para mejorar el ancho de banda de las
memorias DRAM?
Son dos
 Localidad espacial
 Localidad temporal
20¿Qué es localidad espacial?
Significa que si se genera un acceso a una dirección de memoria determinada es
muy probable que el siguiente acceso a memoria se refiera a la dirección siguiente
21¿Qué es localidad temporal?
Implica que, si se genera un acceso a una dirección de memoria determinada, es
muy probable que ese acceso se vuelva a repetir transcurrido un cierto número de
acceso a otras direcciones.
22Mencione las diferentes arquitecturas
DRAM: FPM DRAM, EDO DRAM, SDRAM y RDRAM
23. Cómo funciona la FPM DRAM?
Se mantiene constante la dirección de fila y se leen consecutivamente los datos de
varias columnas desde los amplificadores
24. Diferencia entre memoria EDO DRAM y FPM DRAM
Con respecto a la FPM DRAM se añade un latch entre los amplificadores y los
terminales de salida del chip de DRAM
25. Característica principal de la arquitectura SDRAM
Las memorias SDRAM disponen de una interfaz síncrona que hace que la memoria
DRAM intercambie las señales de control con el controlador de memoria usando
una señal de reloj
26. Características RDRAM
- Usa un bus de un byte de ancho -Este bus usa una frecuencia de reloj de 300 MHz
-Permite transferir 600 Mbytes/s - Cada circuito de memoria RDRAM de 64 Mbits
se divide en cuatro bancos
27. Que mejoras ofrece el uso de un sistema con memoria DRDRAM?
En los juegos se consiguen mejoras de 1% - 2% y en aplicaciones gráficas del orden
de un 10% - 15%
28. Cuáles son las propuestas anunciadas por los fabricantes que suponen
cambios en el núcleo del circuito de memoria?
Están las memorias FCRAM(Fujitsu) MoSys DRAM VCRAM (NEC)
29 Diferencia entre edo y bedo dram
En la bedo DRAM se añade un registro interno que lleva la cuenta de los datos a
leer por cada acceso
30. Que mejora de ve en la ddr DRAM con respecto a la SDRAM?
Permite transferir datos tanto en el flanco de subida como en el flanco de bajada
del reloj de sincronización
31¿Qué es necesario para que un procesador pueda procesar las instrucciones de
programa?
Para que un procesador pueda procesar las instrucciones del programa a pleno
rendimiento es preciso que la memoria proporcione las instrucciones y los datos
cuando son necesarios
32¿Qué caracteriza a las prestaciones de memoria?
Las prestaciones de la memoria se caracterizan a partir del tiempo de latencia y del
ancho de banda.
El tiempo de latencia es el retardo entre que se solicita acceder a una palabra de
memoria y se termina dicho acceso, bien porque se tiene la palabra en el caso de
una lectura, bien porque se ha actualizado la palabra en memoria en el caso de
una escritura. El ancho de banda mide el número de palabras por unidad de
tiempo que puede proporcionar la memoria una vez se ha accedido a la primera.
33¿Cómo diferencias el tiempo de latencia y el ancho de banda?
Cuando el procesador necesita acceder a un dato solicitado al ejecutar una
instrucción de carga, la magnitud que hay que tener en cuenta es la latencia de
memoria. Si de lo que se trata es de acceder a un bloque de memoria principal que
pasa a cache, interesa tener en cuenta el ancho de banda.
34¿Qué técnicas existen para reducir la tasa de fallos?
Las técnicas de precaptación (que también requieren o pueden beneficiarse de
ciertos recursos en el procesador) y otras técnicas de optimización de código como
la mezcla de arrays, la fusión de bucles, o las operaciones con submatrices
(blocking).
35¿Con que esté relacionada la mejora de prestaciones?
La mejora de prestaciones que ofrecen está relacionada fundamentalmente con el
ancho de banda que proporcionan los circuitos de memoria más que con los
tiempo de acceso, que disminuyen mucho más lentamente y a un ritmo menor
que la velocidad de los procesadores.
36¿Cuál es la clave en la mejora del ancho de banda de las arquitecturas de las
memorias DDRAM?
La clave está en aprovechar la localidad de los accesos a memoria principal, ya
que, dado que se dispone de caches, usualmente se accede a memoria para leer o
escribir, no una palabra, sino una línea de cache completa cuyos elementos están
en posiciones contiguas.
37¿Cómo se lleva a cabo una transferencia de datos entre el procesador y la
memoria?
Una transferencia de datos entre el procesador y la memoria (el controlador de
memoria) se lleva a cabo intercambiando una serie de señales de datos,
direcciones y control a lo largo de uno o varios ciclos de reloj.
38¿Qué es un ciclo de bus?
El conjunto de ciclos necesario para realizar una transferencia entre el procesador
y la memoria (entre el procesador y el controlador de memoria que, a su vez se
tiene que comunicar con el propio circuito de memoria) se denomina ciclo de bus.
39¿Qué tipos de ciclos de bus existen?
Existen ciclos de bus específicos, como los ciclos burst o a ráfagas, en los que el
procesador sólo genera la dirección de una palabra dentro de la línea, e indica, con
las correspondientes señales de control, que desea todas las palabras de la línea
en la que se incluye la dirección que ha proporcionado.
40¿Qué tipos de arquitecturas DDRAM para configurar la memoria principal
existen?
 FPM
 EDO
 BEDO
 SDRAM
 DDR
 DDR2