a) Ésta es mi solución al apartado a) (seguramente tenga errores)

Pues parece que no tiene errores, tras una sesión de revisión por parte de un profesor.
1.- Superescalar, VLIW, supersegmentación. Ejecución especulativa.
2.- Arquitecturas multimedia y vectoriales.
3.- Sistemas multiprocesadores.
---
Explicación de un ciclo de bloqueo estructural.-
Por otra parte, estudiando la planificación dinámica con Tomasulo, me gustaría incluir un ejemplo con un código DLX simulado con la herramienta Supertomasim (del departamento ATC de la Univ. Sevilla). En concreto, la instantánea que viene a continuación muestra el estado del cronograma en el ciclo número 9 (C9), al cual voy a hacer referencia a continuación.
Para la máquina simulada se suponen 2 estaciones de reserva (RS) de Load y una sóla unidad funcional (UF) de Load. En el ciclo 9 se produce un ciclo de bloqueo debido a que la segunda instrucción Load del código puede emitirse (fase IS realizada en el ciclo 8) pero no puede ejecutarse hasta que la primera instrucción Load no haya finalizado su ejecución. Nótese que en el ciclo 9 aún se encuentra ejecutando el primer Load (su segundo ciclo EXE).
Este ciclo de bloqueo puede haberse subsanado si la unidad funcional de Load estuviese segmentada (en Supertomasim, incluir dos unidades funcionales de Load (por ser 2 la duración de dicha UF)).
---
Una duda sobre la ausencia de un ciclo de bloqueo.-
Por otra parte, en el mismo código anterior, en el ciclo 15, primera instrucción ADDD, tengo una duda. En la ilustración siguiente se muestra dicho ciclo.
La cuestión es que la primera instrucción ADDD tiene una dependencia RAW con las dos instrucciones anteriores, con lo cual, hasta que éstas no escriban en el CDB (tras la fase WB), no se "levanta" el bloqueo de datos (lo cual, por otra parte, no bloquea la cadena, ya que se tiene ejecución en desorden (planificación dinámica con algoritmo de Tomasulo)).