RISC-V · Arquitectura de computadores · Lógica digital
Aprende ingeniería de computadores practicando
SmartEng Tools combina explicaciones, ejemplos resueltos, ejercicios con corrección y simuladores interactivos para que entiendas cómo se codifica, se ejecuta y se segmenta una instrucción RISC-V, y cómo se simplifica el circuito que la calcula.
Itinerarios de aprendizaje
- 1Guía: decodificar una instrucción
- 2Guía: del código máquina al ensamblador
- 3Decodificador y depurador
- 49 ejercicios
- 1Guía: el pipeline de 5 etapas
- 2Guía: riesgos RAW y forwarding
- 3Simulador de pipeline
- 43 ejercicios
- 1Guía: mapas de Karnaugh
- 2Guía: decodificador de 7 segmentos
- 3Minimizador de Karnaugh
- 44 ejercicios
Cómo se aprende aquí
Cada tema sigue la misma secuencia: concepto → ejemplo → ejercicio → herramienta → verificación. Así se ve con un caso real:
- 1. Concepto
En RV32I, los formatos con registro destino (R, I, U y J) sitúan rd en los bits 11–7. En S y B no hay rd: esos bits forman parte del inmediato.
- 2. Ejemplo
0x00500513 → bits 11–7 = 01010 = x10 (a0). La instrucción es addi a0, zero, 5.
- 3. Ejercicio
¿Cuál es el rd de 0x40B50533? Escribe tu respuesta y compruébala.
- 4. Herramienta
El decodificador colorea los campos de cualquier palabra que escribas.
- 5. Verificación
La respuesta la corrige el mismo código del decodificador, así que no puede contradecirlo.
Herramientas interactivas
Cada herramienta está dentro de una lección que explica qué modela, cómo leer el resultado y qué no hace.
Guías
Todas las guías- Cómo decodificar una instrucción RV32IUn método en cinco pasos y un ejemplo de cada formato (R, I, S, B, U y J), con la reconstrucción de los inmediatos y los errores más habituales.
- Del código máquina al ensambladorTraducimos un volcado de ocho palabras a una rutina legible: decodificar, convertir desplazamientos en etiquetas, reconocer pseudoinstrucciones y deducir qué hace.
- Cómo funciona un pipeline de 5 etapasLatencia frente a rendimiento, cuántos ciclos tarda una secuencia, por qué la ganancia real es menor que el número de etapas y qué rompe el ritmo ideal.
- Riesgos RAW, forwarding y burbujasCuándo una dependencia obliga a esperar, qué caminos de forwarding la resuelven, por qué la carga-uso siempre cuesta un ciclo y cómo se evita reordenando.
- Cómo funcionan los mapas de KarnaughPor qué el orden Gray permite simplificar, las reglas de agrupación, implicantes primos esenciales, funciones con dos soluciones y cómo obtener un producto de sumas.
- Diseño de un decodificador BCD a 7 segmentosSiete funciones de cuatro variables con indiferencias: tabla de verdad, mapa del segmento e, expresiones mínimas de todos los segmentos y productos compartidos.
Ejercicios
Los 16 ejerciciosProblemas concretos que se corrigen en tu navegador con el mismo algoritmo que la herramienta correspondiente. Por ejemplo:
- Decodifica una instrucción tipo R — Identifica los campos de 0x40B50533. Presta atención a funct7: es lo que distingue add de sub.
- Cuenta los ciclos de un riesgo carga-uso — En el cauce de 5 etapas del simulador, ¿cuántos ciclos tarda esta secuencia con forwarding y sin forwarding? ¿Cuántas burbujas hay con forwarding?
- Minimiza aprovechando las indiferencias — Escribe una suma de productos mínima para F(A,B,C,D) = Σm(1, 3, 7, 11, 15) + d(0, 2, 5). Usa A, B, C, D y un apóstrofo para negar (por ejemplo A'B).
- Sigue la ejecución de un bucle — ¿Cuánto vale a0 al salir del bucle? ¿Cuántas instrucciones se ejecutan en total (contando cada vuelta)?
Herramientas para estudiantes
- Calculadora de nota del examen final — qué nota necesitas en el final según tus parciales.
- Calculadora de media ECTS — media del expediente ponderada por créditos.
Sobre SmartEng Tools
Es un proyecto educativo personal e independiente, pensado para estudiantes de asignaturas de arquitectura de computadores y electrónica digital. Las herramientas se ejecutan en tu navegador, son gratuitas y no necesitan registro. Cada una documenta qué algoritmo usa y qué limitaciones tiene.