Temario del curso
Fundamentos de Arquitectura RISC-V y Visión General del Ecosistema
Paisaje de la ISA RISC-V y Adopción en la Industria
- Filosofía de ISA abierta y el paisaje de estandarización de RISC-V International
- Modelo Mental de RISC-V: Arquitectura de Carga-Almacenamiento, Archivo de Registros, Ordenamiento de Bytes
- Comparación con ARM, x86 y POWER: Compensaciones para arquitecturas de computación heterogénea
- Evaluación de la madurez del ecosistema: SiFive, T-Head, Western Digital y la creciente comunidad de silicio de código abierto
- Interfaces estandarizadas: ISA Privilegiada de RISC-V, Capa de Abstracción de Software de Máquina (MSBL)
Modelos de Memoria y Cumplimiento de ABI
- Especificación de Arquitectura No Privilegiada: mapa de CSR, manejo de excepciones y jerarquías de memoria
- Conjuntos de instrucciones RV32I / RV64I y cumplimiento de ABI para portabilidad binaria entre plataformas
- Convenciones de ordenamiento de memoria e instrucciones de barrera para sistemas multiprocesador
Programación en Ensamblador RISC-V y Cadena de Herramientas del Compilador
Programación de Instrucciones de Bajo Nivel
- Instrucciones enteras base (I), extensiones de Multiplicación/División (M) y operaciones atómicas (A)
- Estrategias de programación conscientes de la profundidad de bits para objetivos RISC-V de 32 y 64 bits
- Convenciones de llamada y gestión de marcos de pila para sistemas de software embebidos y en tiempo real
Dominio de la Cadena de Herramientas del Compilador
- Cadena de herramientas del compilador basada en LLVM: Clang, LLVM, Binutils para compilación cruzada RISC-V
- Scripts de enlazador, secciones y configuración de la disposición de la memoria para entornos bare-metal y RTOS
- Integraciones de compilador (intrinsics), niveles de optimización y ajuste de código basado en perfiles (profiling)
- Flujos de trabajo de desarrollo de herramientas de código abierto: construcción, pruebas y empaquetado de herramientas GCC/Clang personalizadas
Desarrollo de Sistemas Embebidos y Sistemas Operativos en Tiempo Real
Programación Bare-Metal y RTOS
- Programación de sistemas en Rust para RISC-V: abstracciones de coste cero, gestión de memoria insegura (unsafe) y desarrollo bare-metal
- Entornos No-Std: enlazadores personalizados, desarrollo de controladores de dispositivos y E/S mapeada en memoria
- Desarrollo de Zephyr RTOS y BSP de Buildroot para objetivos RISC-V
- Interfaz con periféricos: programación de GPIO, I2C, SPI, UART y controladores DMA
Optimización de Energía y Rendimiento
- Cancelación de reloj (clock gating), gestión de dominios de potencia y optimización de modos de bajo consumo
- Análisis de rendimiento exacto a nivel de ciclo con perfiles de simulación y contadores de rendimiento de hardware
- Ajuste de la latencia de interrupciones en tiempo real para aplicaciones críticas de seguridad
Desarrollo del Kernel de Linux y Bootloader para RISC-V
Ecosistema de Firmware de Arranque y Bootloader
- OpenSBI (implementación de la especificación SBI): desarrollo de firmware de bootloader
- UEFI/EDK II en RISC-V: desarrollo de pila de arranque de firmware moderna
- Porteo de Coreboot y U-Boot para ordenadores de placa única RISC-V
Integración del Kernel de Linux
- Contribuciones al kernel principal de RISC-V: superposiciones de árbol de dispositivos (device tree), topología de CPU y desarrollo de controladores de controlador de interrupciones (AIA)
- Desarrollo de BSP de vendedor y configuración del kernel para plataformas SoC personalizadas
- Soporte de sistemas de archivos, pila de redes y soporte de contenerización (Docker, Kubernetes) en sistemas host RISC-V
Diseño de SoC RISC-V y Prototipado con FPGA
Arquitectura e Integración de SoC Multi-núcleo
- Metodologías de diseño de Network-on-Chip (NoC) para procesadores multi-núcleo RISC-V
- Coherencia de caché Axi4/CHI y protocolos de comunicación entre procesadores
- Integración de IP de código abierto: OpenCores, ChIPS Framework y componentes RTL de proveedores
- Diseño de matrices de bus e integración de controladores de memoria (DDR, SRAM, eMMC, PCIe)
Prototipado de Procesadores Basados en FPGA
- Síntesis e implementación de FPGA de núcleos RISC-V (p. ej., BOOM, VexRiscv, PULP)
- Afirmaciones de SystemVerilog (SVA) y metodología de verificación funcional basada en UVM
- Herramientas de verificación formal y pruebas basadas en propiedades para la validación de núcleos RISC-V
Extensiones Vectoriales RISC-V y Aceleración Específica de Dominio
Análisis Profundo de la Extensión RVV (Vectorial RISC-V)
- Carga/almacenamiento vectorial, multiplicación-suma vectorial fusionada (VFMA) y aceleración del cálculo de matrices
- Operaciones vectoriales de longitud variable (VL, VLEN) para ejecución SIMD optimizada para la carga de trabajo
- Operaciones de máscara vectorial, control de segmentos y flexibilidad de tipos de datos para cargas de trabajo DSP y ML
Diseño de DSP Personalizado e Instrucciones Específicas de Dominio
- Diseño de aceleradores específicos de dominio mediante extensiones personalizadas e interfaces de operandos basadas en CBAR
- Modificaciones del frontend del compilador para la generación de instrucciones personalizadas y emisión de código
- Estrategias de partición hardware-software para la integración de aceleradores en SoC de producción
Aceleración de IA y Aprendizaje Automático Perimetral en RISC-V
Diseño e Integración de NPU para Procesadores RISC-V
- Arquitectura de Unidad de Procesamiento Neural: arrays sístolicos, núcleos tensoriales y compresión de pesos para aceleración de IA en el chip
- Técnicas de cuantización de modelos (INT8, INT4, FP8) para despliegue perimetral en RISC-V
- Compatibilidad de marcos de trabajo: TensorFlow Lite Micro, ONNX Runtime y PyTorch Edge en objetivos RISC-V
Computación Heterogénea para Cargas de Trabajo de IA
- Codiseño de CPU host RISC-V con NPU de aceleración de IA para pipelines de inferencia en tiempo real
- Optimización del subsistema de memoria: gestión de ancho de banda HBM/DDR para pesos y activaciones de modelos ML
- Gestión térmica y presupuestación de energía para sistemas de inferencia de IA perimetral
Seguridad de Hardware y Computación Confidencial en RISC-V
Protección de Memoria Física y Ejecución Confiable
- Protección de Memoria Física (PMP) y mecanismos de seguridad del recorrido de tablas de páginas
- Arquitecturas de Enclave Seguro/TEE para RISC-V: integración de OP-TEE, entornos de ejecución confiables de clase SEV
- Seguridad de la cadena de arranque: raíz de confianza, arranque seguro y prueba de lanzamiento medido
Aceleración Criptográfica
- Extensiones criptográficas RISC-V (Zk, Zkr, K): aceleración de SHA, AES, RSA, RSA-PSS y ECC
- Integración de criptografía post-cuántica (PQC) para procesadores RISC-V de próxima generación
- Técnicas de mitigación de ataques por canal lateral: programación en tiempo constante, enmascarado y generadores de números aleatorios de hardware
Arquitectura Personalizada Avanzada y Diseño de Extensiones ISA
Arquitectura Específica de Dominio y Extensiones de Instrucciones Personalizadas
- Metodología de diseño de extensiones ISA: codificación, tablas de codificación, análisis de impacto de ABI y proceso de envío de especificaciones a RISC-V International
- Diseño de archivo de registros personalizado con CBAR (Registros de Dirección Base Personalizada) para el despachado de operandos
- Enrutamiento de instrucciones, detección de peligros y modificaciones de pipeline para extensiones personalizadas
Verificación y Aprobación de Modificaciones de Arquitectura Personalizada
- Diseño de bancada de pruebas (testbench) para extensiones personalizadas: generación de estímulos dirigidos vs. aleatorios con restricciones
- Marco de pruebas de regresión y verificación impulsada por cobertura para modificaciones arquitectónicas
- Pruebas de interoperabilidad: asegurarse de que las instrucciones personalizadas funcionen dentro de las restricciones de ABI establecidas
Aplicaciones RISC-V Críticas de Seguridad y del Sector Automotriz
Cumplimiento de Normas de Seguridad Funcional y del Sector Automotriz
- Cumplimiento de seguridad funcional ISO 26262 para procesadores RISC-V automotrices
- Clasificación ASIL-Q y desarrollo de manuales de seguridad para IP de silicio RISC-V
- Manejo determinista de interrupciones, pares de núcleos en lockstep y protección de memoria para sistemas RISC-V críticos de seguridad
Aplicaciones Industriales en Tiempo Real y de Computación Perimetral
- Cumplimiento de SIL IEC 61508 y programación determinista en plataformas multi-núcleo RISC-V
- Desarrollo de puertas de enlace (gateways) de IoT industrial con RISC-V: conectividad, analítica perimetral y sistemas de actualización de firmware OTA
Proyecto de Grado: Desarrollo de Sistema RISC-V de Extremo a Extremo
Proyecto de Ciclo de Vida Completo
- Especificación de arquitectura: diseño de extensiones ISA y configuración del núcleo para un caso de uso definido
- Implementación RTL en SystemVerilog con bancadas de pruebas UVM y cobertura de verificación formal
- Prototipado en FPGA, desarrollo de firmware de arranque e integración de la pila de controladores bare-metal
- BSP de Linux y personalización de la cadena de herramientas para el núcleo RISC-V personalizado
- Despliegue de carga de trabajo de IA: integración de NPU, cuantización de modelos y benchmark de rendimiento
- Validación de seguridad: aplicación de PMP, arranque seguro y benchmark de aceleración criptográfica
- Documentación de arquitectura técnica, análisis de estrategia de IP y presentación ante equipos multidisciplinarios
Requerimientos
Ninguno.
Reseñas (3)
Observé aspectos de la generación de ideas, especialmente durante la actividad en la que primero enumeramos ideas malas y luego las transformamos en ideas buenas. Me resultó útil sacar las ideas negativas al principio, ya que me ayudó a entrar en ritmo para idear propuestas, sin importar si eran buenas o malas.
William Boscher - Bank Julius Baer Guernsey
Curso - Design Thinking: Innovation & Creative Problem Solving
Traducción Automática
Las explicaciones y la interactividad del instructor fueron excelentes; realmente llevó el tema muy bien. Aunque probablemente no tenía suficiente experiencia, ¡aprendí mucho de ello!
Pieter Bruynseels - Spot Buy Center BV
Curso - Design Patterns
Traducción Automática
Me gustó la plataforma que usamos. Fue realmente agradable y fácil de usar. Me gustó la sección de TypeScript, en particular la parte sobre espacios de nombres y módulos.
Robert - DB Global Technology
Curso - JavaScript - Advanced Programming
Traducción Automática