Pipeline de Cinco Etapas y Análisis de Hazards en LegV8
Visión general
De qué trata este proyecto.
Implementa el simulador en Python con 5 etapas (IF, ID, EX, MEM, WB), pipeline registers explícitos y unidad de detección de hazards. Soporta el subset LegV8 (ADD, SUB, AND, ORR, LDUR, STUR, CBZ, B). Implementa forwarding EX→EX y MEM→EX para evitar stalls de RAW, stall de un ciclo para load-use, flush de 2 ciclos en branch tomado. Produce tabla cycle-by-cycle con etapa por instrucción + bubbles. Valida con 12 programas de prueba que incluyen los patrones canónicos de hazards. Entrega simulador, tabla generada, programas y guía.
El Briefing
Lo que harás y lo que demostrarás.
Implementar simulador funcional de pipeline 5 etapas LegV8 con detección/forwarding y trazas cycle-by-cycle inspeccionables didácticamente.
Earning criteria — what you'll demonstrate
- Modelar pipeline registers entre etapas con corrección
- Detectar hazards RAW y resolverlos con forwarding
- Manejar load-use stall y flush de branches
- Producir output didáctico que ayude al estudiante a entender el pipeline
Encaje académico
Dónde encaja esto en tus estudios.
Afina las mismas habilidades que tu titulación espera de ti.
Habilidades
Habilidades que demostrarás.
Cada una aparece en tu credencial verificada.
Carreras
Roles para los que esto te prepara.
Títulos reales. Puentes de habilidades reales. Elige el que más se acerque a tu trayectoria.
Trayectorias profesionales que esto construye
Roles canónicosIngeniero de Software
Entender pipelining a nivel de simulador construido a mano da una base de microarquitectura que ningún manual transmite — ventaja en cualquier rol de software que optimice rendimiento.
Este proyecto afina
- pipelining
- cpu-architecture
- python
Ingeniero Backend
Quien ha implementado hazards de pipeline entiende por qué los CPUs reordenan instrucciones — perspectiva que ayuda al backend a escribir código consciente del coste.
Este proyecto afina
- pipelining
- hazard-detection
- simulation