XiangShan: procesador RISC-V de alto rendimiento de código abierto
(github.com/OpenXiangShan)-
Introducción al proyecto XiangShan
- XiangShan es un proyecto de código abierto para desarrollar procesadores RISC-V de alto rendimiento, actualmente en curso en el Instituto de Tecnología de Computación de la Academia China de Ciencias y el Instituto Fengqing.
- El proyecto usa y desarrolla diversas herramientas para acelerar el proceso de desarrollo de chips mediante una metodología ágil.
-
Documentación y diapositivas
- XiangShan-doc es el repositorio oficial de documentación e incluye especificaciones de diseño, diapositivas técnicas, tutoriales y más.
- La documentación de microarquitectura está disponible públicamente, y los detalles pueden consultarse en XiangShan-doc.
-
Publicaciones
- El trabajo presentado en MICRO 2022 introduce el desarrollo de un procesador RISC-V de alto rendimiento de XiangShan y su metodología ágil.
- Este trabajo obtuvo todas las insignias relacionadas con disponibilidad, funcionalidad y reproducibilidad.
-
Arquitectura
- La primera microarquitectura estable de XiangShan es Yanqihu y la segunda es Nanhu.
- La versión en desarrollo actualmente es Kunminghu y se encuentra en la rama principal (master).
-
Resumen de subdirectorios
- Los directorios principales incluyen archivos de diseño, dispositivos virtuales, wrapper de SoC, módulos de nivel superior, código de utilidades y el código de diseño principal.
- También se incluyen scripts, unidad de punto flotante, caché L2/L3, un framework de co-simulación y una imagen de simulación precompilada.
-
Soporte de IDE
- Soporte BSP con el comando
make bsp. - Soporte IDEA con el comando
make idea.
- Soporte BSP con el comando
-
Generación de Verilog
- Se puede generar código Verilog con
make verilog, y el archivo de salida esbuild/XSTop.v.
- Se puede generar código Verilog con
-
Ejecución de programas y simulación
- Configura variables de entorno, instala
mill, clona el proyecto y ejecutamake initpara inicializar submódulos. - Instala Verilator y compila el simulador C++ con
make emupara ejecutarlo.
- Configura variables de entorno, instala
-
Guía de resolución de problemas
- La documentación de XiangShan se inspiró en varios trabajos académicos clave y se espera que en el futuro se logren más innovaciones académicas.
1 comentarios
Opiniones de Hacker News
Puedes ejecutar la simulación usando un Dockerfile. Requirió 64 GB de RAM, y lo resolví agregando 48 GB de swap a una máquina con 16 GB de RAM.
Este proyecto combina muy bien intereses recientes y es interesante.
La lista de instrucciones fusionadas tiene un punto inesperado.
Este proyecto es interesante como proyecto académico.
Es interesante ver otro proyecto que use Chisel.
Hay un producto comercial que utiliza la arquitectura 'Nanhu' de XiangShan.
Me intriga qué significa "alto rendimiento".
Tengo curiosidad por la estrategia de código abierto.
Elogios por un gran trabajo.
Es impresionante que China esté avanzando mucho en IA, robótica y procesadores, y que esté liberando mucho en código abierto.