Lista curada de RISC-V
Lista de Herramientas RISC-V
Awesome RISC-V es un directorio seleccionado de herramientas RISC-V de código abierto, núcleos de procesador, placas de desarrollo y recursos de aprendizaje.
Simuladores y núcleos RISC-V de uso extendido, junto con notas sobre sus creadores y orígenes.
Países
Brasil
¿Brasil produce chips? Brasil diseña chips, desde el microcontrolador RISC-V BlueMacaw hasta núcleos de investigación como NoX, mientras que la fabricación nacional depende de fundiciones extranjeras. La fábrica estatal CEITEC fue disuelta por decreto en 2020.
Leer la entradaPaísUcrania
¿Ucrania produce chips? Ucrania no tiene ninguna fábrica de chips. El país está construyendo una industria fabless que diseña chips en casa y los fabrica en el extranjero, sobre las mayores reservas de titanio de Europa.
Leer la entradaAprendizaje
Especificaciones
Índice oficial de las especificaciones ratificadas de la ISA, los perfiles y las plataformas de RISC-V, publicado por RISC-V International.
Fuente de las especificaciones de la ISA con y sin privilegios.
Directivas del ensamblador, pseudoinstrucciones y sintaxis de reubicación.
Convención de llamada, uso de registros y formato ELF utilizado por los compiladores de RISC-V.
Cursos
Curso gratuito de la Linux Foundation en edX que abarca el diseño práctico de microarquitecturas de CPU utilizando herramientas de código abierto (TL-Verilog / Makerchip).
Impartido por el MIT.
Impartido por la Universidad de Oakland.
Curso gratuito de la Linux Foundation en edX; aborda la arquitectura de instrucciones (ISA) de RISC-V, sus especificaciones y su ecosistema; punto de partida ideal para los estudiantes.
Por la Universidad de California en Irvine.
Tutoriales
Lecciones de ensamblador RISC-V para principiantes con figuras interactivas, traducidas a varios idiomas y ejecutables en el simulador Lux.
Bootcamp interactivo basado en cuadernos de Jupyter para aprender diseño de hardware con Chisel.
Repositorio de un taller que documenta la construcción práctica de una CPU RISC-V TL-Verilog en cinco días.
Página wiki con ejemplos avanzados de diseño de hardware con Chisel utilizando los núcleos RISC-V de Sodor.
Wiki de patrones y soluciones de Chisel aportados por la comunidad.
Wiki de la comunidad que documenta una ruta de aprendizaje estructurada para el diseño de hardware con Chisel.
Notas de lectura comentadas sobre el código fuente del generador Rocket Chip.
Libros
Libro de texto de código abierto sobre diseño de hardware con Chisel, con PDF gratuito disponible.
Libro de texto gratuito y de código abierto (con versiones en PDF) que aborda el ensamblador RV32I desde los principios básicos; mantenido activamente por John Winans.
Documentación
Referencia de instrucciones RV32IM con formatos de codificación, ejemplos y expansiones de pseudoinstrucciones.
Especificación formal de la ISA de RISC-V.
Hoja de referencia rápida para el lenguaje de diseño de hardware Chisel.
Documentación oficial del marco de diseño de SoC Chipyard.
Wiki oficial e introducción al simulador visual Ripes RISC-V.
Artículos
Artículo de resumen anual que repasa los hitos más importantes de 2019 en el ámbito de los chips de código abierto RISC-V.
Diapositivas de ELCE 2018 sobre la implementación de Linux embebido en plataformas RISC-V.
Recurso de aprendizaje introductorio sobre el procesador Shakti RISC-V del IIT Madras.
Descripción general accesible de la ISA básica de RISC-V y sus extensiones estándar.
Página de la wiki de Debian sobre el estado de la adaptación de RISC-V e instrucciones de compilación.
Tutorial sobre cómo escribir y visualizar código ensamblador RV32I utilizando el simulador Ripes.
Página sobre el lenguaje de especificación Sail ISA, utilizado para describir formalmente RISC-V.
Página sobre el trabajo relacionado con RISC-V de la Universidad de California en Berkeley.
Recopilación, mantenida por la comunidad, de notas, enlaces y recursos de aprendizaje sobre RISC-V.
Vídeos
Tutorial en directo de un programa «Hello World» ejecutándose en hardware RISC-V.
Lista de reproducción de YouTube sobre el diseño desde cero de una CPU RISC de 32 bits personalizada.
De Western Digital Corporation.
Grabaciones del taller de RISC-V celebrado en Zúrich, en las que se abordan el desarrollo de la ISA y las novedades del ecosistema.
Artículos
Artículo en el que se defienden las interfaces de aceleradores de hardware gestionadas por el sistema operativo.
Artículo del IEEE sobre el soporte de hardware personalizado para la recolección de basura en entornos de tiempo de ejecución gestionados.
Artículo del IEEE sobre la aceleración compacta de CNN para visión integrada.
Artículo del IEEE sobre la gestión integrada de la energía para procesadores vectoriales RISC-V.
Artículo del IEEE sobre núcleos vectoriales RISC-V de bajo consumo con convertidores CC-CC integrados.
Documento técnico de Microsoft Research sobre la aceleración por hardware dedicada a las CNN.
Herramientas
Cadenas de herramientas
Simuladores y emuladores
Ensamblador y simulador de RV32IM basado en navegador, con lecciones y una referencia de instrucciones.
Simulador oficial de la ISA de RISC-V utilizado como modelo de referencia.
Simulador y editor de RV32IM que se ejecuta en el navegador, utilizado en el curso CS61C de la Universidad de California en Berkeley.
Simulador y depurador de RV32 basado en navegador con vistas de memoria y registros.
El principal emulador y virtualizador de código abierto; admite la emulación en modo sistema y en modo usuario tanto de RV32 como de RV64.
El simulador de Verilog/SystemVerilog más rápido.
Entornos de diseño
Marco de trabajo para el desarrollo ágil de sistemas en chip basados en Chisel.
Herramienta portátil de colocación y enrutamiento para FPGA.
Sistema de microcontrolador de un solo núcleo, basado en núcleos RISC-V de 32 bits.
Plataforma SoC lowRISC construida sobre el núcleo Rocket RISC-V.
Arquitectura de microcontrolador de los chips PULP más recientes.
Herramienta de exploración del espacio de diseño de la arquitectura RISC-V basada en navegador, desarrollada por la Universidad de Boston.
Representación interna flexible para RTL.
Cadena de herramientas del compilador GNU para RISC-V.
Motor de ejecución de Chisel/Firrtl.
Compilación del escritorio Gnome de Fedora en RISC-V.
Biblioteca de visualización del rendimiento de herramientas FPGA.
Lenguajes de descripción de hardware
Verificación
Especificación formal de la ISA de RISC-V escrita en Sail, adoptada como modelo de referencia oficial.
Conjunto de pruebas arquitectónicas que comprueba si una implementación se ajusta a la especificación de RISC-V.
Generador de instrucciones aleatorias en SystemVerilog y UVM para la verificación de procesadores RISC-V.
Marco de verificación formal de código abierto para procesadores RISC-V.
Generador aleatorio de pruebas de estrés para procesadores RISC-V.
Marco de verificación formal para procesadores RISC-V.
Utilidades de prueba para circuitos escritos en Chisel.
Generador de instrucciones de código abierto basado en SV/UVM para la verificación de procesadores RISC-V.
Pruebas unitarias para procesadores RISC-V.
Biblioteca de la Metodología Universal de Verificación (UVM) para flujos EDA de código abierto.
Ataques especulativos BOOM.
Pruebas automáticas de caja negra.
Software
Sistemas operativos
Estado de la adaptación de Fedora, imágenes y guías de instalación para placas RISC-V.
Imágenes oficiales de Ubuntu para placas RISC-V y QEMU.
Estado de la adaptación de FreeBSD e instrucciones para hardware y emuladores de RISC-V.
Placas RISC-V compatibles con el sistema operativo en tiempo real Zephyr.
Implementaciones
Núcleos
Procesador RISC-V de código abierto, de alto rendimiento y ejecución fuera de orden, desarrollado en el Instituto de Tecnología Informática de la Academia China de Ciencias.
Generador de SoC RISC-V parametrizable de la Universidad de California en Berkeley.
Implementación RISC-V de 32 bits compatible con FPGA, escrita en SpinalHDL.
Implementación experimental de RISC-V en Verilog, que cabe en una FPGA pequeña.
CPU y SoC de 32 bits de tipo «soft-core», personalizables y extensibles, de clase MCU, escritas en VHDL.
Procesador RISC-V «out-of-order» de Berkeley.
SoC
Sistema en chip RISC-V de 32 bits para los FPGA iCE40 HX8K, iCE40 UP5K y ECP5.
Plantilla para crear SoC basados en RISC-V utilizando herramientas de código abierto.
Ejemplo sencillo de SoC que utiliza PicoRV32.
SoC completo construido en torno a la familia de procesadores Shakti RISC-V del IIT Madras.
Implementación ASIC del PicoSoC PicoRV32.
Implementación de un SoC RISC-V para FPGA de Xilinx.
Aceleradores
Silicio
Chip PULP, 330 MHz, 22 nm, 3000 x 3000 um.
Chip PULP, 500 MHz, 65 nm, 1252 x 1252 µm.
Chip PULP, 200 MHz, 65 nm, 2626 x 2626 µm.
Chip PULP, 500 MHz, 65 nm, 1252 x 1252 µm.
Chip PULP, 15 MHz, 180 nm, 7201 x 8160 µm.
Chip PULP, 400 MHz, 65 nm, 2626 x 2626 µm.
Hardware
Placas
Diseños de hardware, documentación del SDK, herramientas de flasheo e imágenes del sistema para las placas Allwinner D1, en chino.
Placa de microcontrolador RISC-V compatible con Arduino de SiFive; un punto de entrada accesible para la programación embebida «bare-metal».
Ordenador de placa única RISC-V de cuatro núcleos y 64 bits que ejecuta Debian, Ubuntu y Fedora.
Ordenador de placa única BeagleBoard basado en el T-Head C910 de cuatro núcleos.
Placa RISC-V de bajo coste basada en el chip Bouffalo BL808.
Documentación sobre las placas y módulos RISC-V Lichee y Maix de Sipeed.
Placa Linux embebida ultracompacta y de coste extremadamente bajo (entre 5 y 9 dólares), basada en un SoC de doble núcleo RISC-V + ARM; ideal para aprender sobre el IoT.
Microcontroladores
Placa basada en el RP2350, que puede arrancar con dos núcleos RISC-V Hazard3 en lugar de sus núcleos ARM.
Microcontrolador RISC-V de Espressif con Wi-Fi y Bluetooth Low Energy.
Microcontrolador RISC-V de 32 bits de WCH que se vende por unos céntimos por chip.
Por país
Brasil
Lección sobre la historia de la fabricación de chips en Brasil, la fábrica CEITEC y los procesadores RISC-V brasileños, con fuentes.
Microcontrolador RISC-V brasileño de 32 bits con Bluetooth Low Energy para el IoT, también denominado u32BR, diseñado por la UFCG, la UFPR, la UFSM, la UnB y la UFMG con financiación federal.
Informe de la UFMG sobre los primeros chips BlueMacaw fabricados, en portugués.
Charla de Fernando Pereira, del Laboratorio de Compiladores de la UFMG, sobre el kit de desarrollo de software u32BR, en portugués.
Procesador RISC-V compacto de código abierto para sistemas en chip multiprocesador, desarrollado por investigadores brasileños.
Programa nacional brasileño que forma a diseñadores de chips mediante estancias de formación en microelectrónica.
Anuncio del Instituto Eldorado sobre un proyecto conjunto basado en RISC-V para la computación de alto rendimiento.
Artículo de RISC-V International sobre la comunidad RISC-V en Brasil.
Colombia
Grupo de investigación de la Universidad Industrial de Santander responsable de mRISCV, un microcontrolador RISC-V de 32 bits diseñado como el primer sistema en chip colombiano.
Artículo de eeNews Europe sobre el equipo de Onchip y la financiación detrás de mRISCV.
China
Instituto de investigación que desarrolla el procesador de código abierto de alto rendimiento XiangShan.
Laboratorio del ISCAS que aporta soporte para RISC-V a compiladores, emuladores y distribuciones de Linux.
Entorno de desarrollo y gestor de paquetes para hardware RISC-V, de ISCAS.
Núcleos RISC-V de código abierto C906 y C910ISC-V de código abierto de Alibaba T-Head.
Europa
Proyecto de la UE dedicado al desarrollo de procesadores europeos, incluidos aceleradores RISC-V para la computación de alto rendimiento.
Proyecto de la UE para crear un ecosistema europeo de IP de procesadores RISC-V y herramientas de diseño.
Empresa checa que ofrece IP de procesadores RISC-V personalizables y herramientas de diseño.
Empresa de Barcelona que diseña núcleos RISC-V con unidades vectoriales para cargas de trabajo de IA.
India
Comunidad
Organizaciones
Organización sin ánimo de lucro propietaria de las especificaciones de RISC-V y encargada de ratificarlas.
Repositorios oficiales de las especificaciones, el modelo Sail y las herramientas relacionadas.
Proyecto del sector que financia el soporte de RISC-V en compiladores, entornos de ejecución, distribuciones y núcleos.
Organización sin ánimo de lucro que apoya el silicio de código abierto a través de eventos, noticias y el alojamiento de proyectos.
Creador del lenguaje de descripción de hardware Bluespec y de los núcleos Piccolo, Flute y Toooba.
Proyecto de la Fundación Linux que desarrolla hardware de código abierto y herramientas de diseño, incluido Rocket Chip.
Organización sin- sin ánimo de lucro con sede en Cambridge que mantiene el núcleo Ibex y la raíz de confianza de silicio OpenTitan.
Organización sin ánimo de lucro que mantiene la familia CORE-V de núcleos RISC-V de código abierto, incluido el CVA6.
Plataforma de la ETH de Zúrich y la Universidad de Bolonia para núcleos y SoC de código abierto de consumo ultrabajo.
Empresa fundada por los creadores de la ISA RISC-V, que publica IP de procesadores, SDK y herramientas.
Lenguaje de descripción de hardware basado en Scala y sede de los núcleos VexRiscv y NaxRiscv.
Responsables del mantenimiento de la suite de síntesis Yosys, nextpnr y riscv-formal.
Eventos
Foros
Grupos de Google
Lista de correo de la comunidad para usuarios del lenguaje de diseño de hardware Chisel.
Lista de correo oficial de desarrollo de hardware de RISC-V.
Lista de correo oficial para debates sobre el desarrollo de la especificación de la ISA de RISC-V.
Lista de correo para docentes que utilizan RISC-V en cursos y programas académicos.
Cómo colaborar
Se aceptan sugerencias a través de incidencias y solicitudes de incorporación de cambios. Añade un enlace por cada solicitud de incorporación de cambios, colócalo en la sección correspondiente y descríbelo en una sola frase.
Agradecimientos
Esta lista se ha elaborado a partir de las siguientes listas, cuyas entradas se han fusionado, revisado y reorganizado.
- suryakantamangaraj/awesome-riscv, CC0 1.0
- drom/awesome-riscv, CC0 1.0
- yunchenlo/awesome-RISCV-Cores, CC0 1.0
- Dragon-Git/awesome-riscv, Apache 2.0
- DongshanPI/Awesome_RISCV-AllwinnerD1, CC BY-SA 4.0
Licencia
Esta lista está sujeta a la licencia Creative Commons Reconocimiento-CompartirIgual 4.0. Las copias y adaptaciones deben citar a Awesome RISC-V y publicarse bajo la misma licencia.

