Professional Documents
Culture Documents
a ) Si la única cosa que hubiera que hacer en un procesador fuera cargar nuevas ins-
trucciones desde memoria, ¾cuál sería el tiempo de ciclo para cada conguración?.
b ) Considera una ruta de datos similar a la vista en la transparencia 17, pero para
un procesador que sólo tuviera un único tipo de instrucción: saltos incondicionales
relativos al PC. ¾Cuál sería el tiempo de ciclo para cada conguración?.
c ) Repetir el apartado anterior pero esta vez para instrucciones de saltos condiciona-
les.
Solución en página 69
c ) Suponiendo que sólo soportamos las instrucciones beq y add discutir qué cambios en
la latencia dada para este recurso afecta el tiempo de ciclo del procesador. Suponer
las latencias del ejercicio anterior y que para el resto de bloques no cambian.
Solución en página 69
3. Supongamos que los siguientes elementos de la ruta de datos tienen las latencias seña-
ladas para las conguraciones a y b:
9
10 TEMA 1. DISEÑO DE LA RUTA DE DATOS DE UN PROCESADOR
a ) ¾Cuál es el ciclo de reloj del cauce si el único tipo de instrucciones que queremos
soportar son las instrucciones ALU (add, and, etc.)?.
Solución en página 69
Solución en página 69
5. Cuando se fabrican los chips de siliciio, los defectos en los materiales utilizados (por
ejemplo el silicio) y los errores de fabricación pueden provocar errores en los circuitos
resultantes. Un error muy común es cuando una línea afecta a la señal de otra. Este error
se llama cross-talk. Un clase especial de cross-talk es cuando una señal está conectada
a una línea que tiene un valor lógico constante (por ejemplo la línea de alimentación
de corriente). En este caso se dice que tenemos un fallo de stuck-at-0 o stuck-at-1, y la
señal afectada siempre tiene un valor lógico de 0 o 1, respectivamente.
a ) En los siguientes apartados nos vamos a referir a las siguientes señales de la gura
1.1.
2) Repite el apartado anterior para detectar un fallo stuck-at-1. ¾Es posible usar
un mismo test para detectar tanto un fallo stuck-at-0 como un fallo stuck-at-
1 ?. Si la respuesta es sí, explica cómo; si la respuesta es no, explica por qué
no.
a stuck-at-1
b Se convierte en 0 is los bits [31-26] tiene todos sus
bits a 0, y no hay fallo en otro caso
plexores (cada bit de salida de cada uno de los cinco multiplexores). Intenta
hacerlo minimizando el número de instrucciones utilizadas para testear.
Solución en página 69
a lw 1, 40(6)
b Label: bne 1,2, Label
Solución en página 69
7. Supongamos las siguientes latencias para cada componente del cauce de la gura 1.1:
I-Mem Add Mux ALU Regs D-Mem Sign-extend Shift-left-2 ALU Ctrl
a 400ps 100ps 30ps 120ps 200ps 350ps 20ps 0ps 50ps
b 500ps 150ps 100ps 180ps 220ps 1000ps 90ps 20ps 55ps
a ) Para evitar hacer más largo el camino crítico de la ruta de datos, ¾cuánto tiempo
puede tardar la unidad de control en generar la señal MemWrite ?
b ) ¾Qué señal de control de la gura tiene más margen y cuánto es ese margen, para
no estar en el camino crítico?
c ) ¾Qué señal de control de la gura tiene menos margen y cuánto es ese margen,
para no estar en el camino crítico?
Solución en página 69
8. Supongamos que la unidad de control necesita los siguientes tiempos para generar las
correspondientes señales de control::
Solución en página 69
9. Supongamos que el procesador de la gura 1.1 carga desde la memoria las siguientes
instrucciones:
Instrucción
a 10001100010000110000000000010000
b 00010000001000110000000000001100
b ) ¾Cuáles son los valores de las entradas de la unidad de control de la ALU para
estas instrucciones?
Solución en página 69
10. Supongamos que el contenido de la memoria de datos es todo ceros y que los registros del
procesador tienen los siguientes valores al comienzo de la ejecución de las instrucciones
del ejercicio anterior:
$0 $1 $2 $3 $4 $5 $6 $8 $12 $31
a 0 1 2 3 -4 5 6 8 1 -32
b 0 -16 -2 -3 4 -10 -6 -1 8 -4
a ) Para cada multiplexor, señala los valores de sus salidas durante la ejecución de las
instrucciones del ejercicio anterior para estos valores de los registros.
b ) Para la ALU y las dos unidades sumadoras del cauce de la gura 1.1, ¾cuáles son
sus valores de entrada?
c ) ¾Cuáles son los valores de todas las entradas del banco de registros?.
Solución en página 69
11. Añadir a la ruta de datos monociclo de la gura 1.1, los elementos y las señales de
control necesarios para añadir la instrucción addi (add inmediato).
Solución en página 69
12. Añadir a la ruta de datos monociclo de la gura 1.1, los elementos y las señales de
control necesarios para añadir la instrucción jal.
Solución en página 70
14 TEMA 1. DISEÑO DE LA RUTA DE DATOS DE UN PROCESADOR
13. Para el cálculo del rendimiento de la implementación monociclo suponemos que sólo
las unidades mayores tienen retardo, las demás son despreciables. Asumiendo que esos
retardos son las siguientes:
ALU: 2ns
Unidades de memoria: 2 ns
Solución en página 71
14. Supongamos que tenemos una unidad de punto otante que requiere 8ns para la suma
en punto otante y 16ns para la multiplicación en punto otante. Los demás tiempos
de las unidades funcionales son como en el ejercicio anterior, y una instrucción en punto
otante es como una instrucción aritmético-lógica, excepto que utiliza la ALU en punto
otante en lugar de la ALU principal. Encontrar la relación de rendimiento entre una
implementación donde el ciclo de reloj sea diferente para cada tipo de instrucción y una
implementación donde todas las instrucciones tengan la misma duración del reloj.
Suponer que:
Solución en página 72
15. Para el cálculo del rendimiento de la implementación monociclo suponemos que sólo las
unidades mayores tienen retardo, los demás tiempos son despreciables. Asumiendo que
los tiempos son los siguientes:
ALU: 2ns
Memoria: 2 ns
Fichero de registros: 1 ns
15
Solución en página 72