XiangShan — Processeur RISC-V haute performance open source
(github.com/OpenXiangShan)-
Présentation du projet XiangShan
- XiangShan est un projet open source visant à développer des processeurs RISC-V haute performance, piloté par l'Institute of Computing Technology de l'Académie des sciences de Chine et l'Institut Fengqing.
- Ce projet développe et utilise diverses méthodes et outils pour accélérer le processus de conception de puce grâce à une méthodologie agile.
-
Documentation et slides
- XiangShan-doc est le dépôt de documentation officiel, incluant les spécifications de conception, les slides techniques, les tutoriels, etc.
- La documentation de micro-architecture est publiée, et les détails complets sont disponibles sur XiangShan-doc.
-
Publications
- L'article présenté à MICRO en 2022 présente le développement d'un processeur RISC-V haute performance avec XiangShan et une méthodologie de développement agile.
- Cet article a obtenu tous les badges de disponibilité, de fonctionnalité et de reproductibilité.
-
Architecture
- La première micro-architecture stable de XiangShan est Yanqihu, suivie par Nanhu.
- La version actuellement en cours de développement est Kunminghu, réalisée sur la branche master.
-
Aperçu des sous-répertoires
- Les répertoires principaux comprennent les fichiers de conception, les périphériques virtuels, le wrapper SoC, les modules de haut niveau, le code utilitaire et le code de conception principal.
- Les scripts, l'unité de calcul en virgule flottante, les caches L2/L3, le framework de co-simulation ainsi que des images de simulation pré-construites y sont également présents.
-
Prise en charge de l'IDE
- Prise en charge BSP via la commande
make bsp. - Prise en charge IDEA via la commande
make idea.
- Prise en charge BSP via la commande
-
Génération Verilog
- Le code Verilog peut être généré avec la commande
make verilog, le fichier de sortie étantbuild/XSTop.v.
- Le code Verilog peut être généré avec la commande
-
Exécution de programmes et simulation
- Après avoir configuré les variables d'environnement et installé
mill, clonez le projet puis initialisez les sous-modules avecmake init. - Installez Verilator et construisez le simulateur C++ avec la commande
make emupour l'exécuter.
- Après avoir configuré les variables d'environnement et installé
-
Guide de dépannage
- La documentation de XiangShan s'est inspirée de plusieurs publications influentes, et il est attendu que d'autres innovations académiques émergent à l'avenir.
1 commentaires
Commentaires Hacker News
On peut exécuter la simulation avec un Dockerfile. Il faut 64 Go de RAM, j’ai contourné le problème en ajoutant 48 Go de swap à une machine avec 16 Go de RAM.
Ce projet est intéressant car il combine bien des sujets d’actualité.
La liste d’instructions fusionnées contient des éléments inattendus.
Ce projet est intéressant en tant que projet académique.
Il serait intéressant de voir un autre projet utilisant Chisel.
Il existe un produit commercial qui utilise l’architecture 'Nanhu' de XiangShan.
Je me demande ce que signifie ici “high performance”.
Je suis curieux de connaître la stratégie d’open source.
Beau travail.
C’est impressionnant de voir la Chine progresser sérieusement en IA, robotique et processeurs, tout en open-sourçant beaucoup.