Liste RISC-V sélectionnée
Liste des outils RISC-V
Awesome RISC-V est un répertoire sélectionné d'outils open source RISC-V, de cœurs de processeur, de cartes de développement et de ressources d'apprentissage.
Simulateurs et cœurs RISC-V largement utilisés, avec des notes sur leurs créateurs et leurs origines.
Pays
Brésil
Le Brésil produit-il des puces ? Le Brésil conçoit des puces, du microcontrôleur RISC-V BlueMacaw aux cœurs de recherche tels que NoX, tandis que la fabrication nationale dépend de fonderies étrangères. La fonderie publique CEITEC a été dissoute par décret en 2020.
Lire l’entréePaysUkraine
L'Ukraine produit-elle des puces ? L'Ukraine n'a pas d'usine de puces. Le pays construit une industrie fabless qui conçoit des puces sur son sol et les fait fabriquer à l'étranger, en plus de détenir les plus grandes réserves de titane d'Europe.
Lire l’entréeApprentissage
Spécifications
Index officiel des spécifications ratifiées relatives à l’ISA, aux profils et aux plateformes RISC-V, publié par RISC-V International.
Source des spécifications de l’ISA en mode non privilégié et en mode privilégié.
Directives d’assembleur, pseudo-instructions et syntaxe de relocalisation.
Convention d'appel, utilisation des registres et format ELF utilisés par les compilateurs RISC-V.
Formations
Cours gratuit de la Linux Foundation sur edX consacré à la conception pratique de microarchitectures de processeurs à l'aide d'outils open source (TL-Verilog / Makerchip).
Par le MIT.
Par l'université d'Oakland.
Cours gratuit de la Linux Foundation sur edX ; traite de l'architecture RISC-V, des spécifications et de l'écosystème ; point de départ idéal pour les étudiants.
Par l'UC Irvine.
Tutoriels
Leçons d'assemblage RISC-V pour débutants avec des figures interactives, traduites en plusieurs langues et exécutables dans le simulateur Lux.
Bootcamp interactif basé sur Jupyter Notebook pour apprendre la conception matérielle avec Chisel.
Dépôt Workshop documentant la construction pratique d'un processeur RISC-V TL-Verilog en cinq jours.
Page Wiki présentant des exemples avancés de conception matérielle avec Chisel à l’aide des cœurs RISC-V Sodor.
Wiki regroupant des modèles et des solutions Chisel proposés par la communauté.
Wiki communautaire documentant un parcours d'apprentissage structuré pour la conception matérielle avec Chisel.
Notes de lecture annotées sur le code source du générateur Rocket Chip.
Livres
Manuel open source sur la conception matérielle avec Chisel, disponible gratuitement au format PDF.
Manuel gratuit et open source (avec des versions PDF) couvrant l’assemblage RV32I depuis les principes fondamentaux ; activement mis à jour par John Winans.
Documentation
Référence des instructions RV32IM avec les formats d'encodage, des exemples et les développements des pseudo-instructions.
Spécification formelle de l'ISA RISC-V.
Aide-mémoire de référence rapide pour le langage de conception matérielle Chisel.
Documentation officielle du framework de conception de SoC Chipyard.
Wiki officiel et présentation du simulateur visuel Ripes RISC-V.
Articles
Article rétrospectif retraçant les principales étapes franchies en 2019 dans le domaine des puces open source RISC-V.
Diapositives de la conférence ELCE 2018 sur l'intégration de Linux embarqué sur les plateformes RISC-V.
Ressource pédagogique d'introduction au processeur RISC-V Shakti de l'IIT Madras.
Présentation accessible de l'ISA de base RISC-V et de ses extensions standard.
Page du wiki Debian consacrée à l'état d'avancement du portage de RISC-V et aux instructions de compilation.
Tutoriel sur l'écriture et la visualisation de code d'assemblage RV32I à l'aide du simulateur Ripes.
Page consacrée au langage de spécification ISA Sail utilisé pour décrire formellement RISC-V.
Page consacrée aux travaux liés à RISC-V menés à l'UC Berkeley.
Recueil de notes, de liens et de ressources pédagogiques sur RISC-V, géré par la communauté.
Vidéos
Démonstration en direct d’un programme « Hello World » s’exécutant sur du matériel RISC-V.
Playlist YouTube sur la conception d’un processeur RISC 32 bits sur mesure à partir de zéro.
Par Western Digital Corporation.
Enregistrements de l'atelier RISC-V organisé à Zurich, traitant du développement de l'ISA et des actualités de l'écosystème.
Articles
Article plaidant en faveur d’interfaces d’accélérateurs matériels gérées par le système d’exploitation.
Article IEEE sur la prise en charge matérielle sur mesure du ramasse-miettes dans les environnements d’exécution gérés.
Article IEEE sur l'accélération compacte des CNN pour la vision embarquée.
Article IEEE sur la gestion intégrée de l'alimentation pour les processeurs vectoriels RISC-V.
Article de l’IEEE sur les cœurs vectoriels RISC-V à faible consommation d’énergie avec convertisseurs CC-CC intégrés.
Livre blanc de Microsoft Research sur l’accélération matérielle dédiée aux réseaux neuronaux convolutifs (CNN).
Outils
Chaînes d’outils
Scripts de compilation de GCC, binutils et de la bibliothèque C pour les cibles RISC-V « bare-metal » et Linux.
Compilateur en ligne qui affiche le code assembleur RISC-V généré par GCC et Clang à partir du C, du C++, de Rust et d’autres langages.
Simulateurs et émulateurs
Assembleur et simulateur RV32IM fonctionnant dans un navigateur, avec des leçons et un guide de référence des instructions.
Simulateur officiel de l'ISA RISC-V utilisé comme modèle de référence.
Simulateur et éditeur RV32IM fonctionnant dans le navigateur, utilisé dans le cours CS61C de l'université de Berkeley.
Simulateur et débogueur RV32 basé sur navigateur, avec affichage de la mémoire et des registres.
Le principal émulateur et virtualiseur open source ; prend en charge l'émulation en mode système et en mode utilisateur pour les architectures RV32 et RV64.
Le simulateur Verilog/SystemVerilog le plus rapide.
Environnements de conception
Framework pour le développement agile de systèmes sur puce basés sur Chisel.
Outil portable de placement et de routage pour FPGA.
Système à microcontrôleur monocœur, basé sur des cœurs RISC-V 32 bits.
Plateforme SoC lowRISC construite autour du cœur Rocket RISC-V.
Architecture de microcontrôleur des puces PULP les plus récentes.
Outil d’exploration de l’espace de conception de l’architecture RISC-V accessible via un navigateur, développé par l’université de Boston.
Représentation interne flexible pour le RTL.
Chaîne d'outils de compilation GNU RISC-V.
Moteur d'exécution Chisel/Firrtl.
Compilation du bureau Fedora Gnome sur RISC-V.
Bibliothèque de visualisation des performances des outils FPGA.
Langages de description matérielle
Vérification
Spécification formelle de l’ISA RISC-V écrite en Sail, adoptée comme modèle de référence officiel.
Suite de tests architecturaux permettant de vérifier si une implémentation respecte la spécification RISC-V.
Générateur d'instructions aléatoires en SystemVerilog et UVM pour la vérification des processeurs RISC-V.
Cadre de vérification formelle open source pour les processeurs RISC-V.
Générateur aléatoire de tests de torture pour les processeurs RISC-V.
Cadre de vérification formelle pour les processeurs RISC-V.
Utilitaires de test pour les circuits écrits en Chisel.
Générateur d'instructions open source basé sur SV/UVM pour la vérification des processeurs RISC-V.
Tests unitaires pour les processeurs RISC-V.
Bibliothèque UVM (Universal Verification Methodology) pour les flux EDA open source.
Attaques spéculatives BOOM.
Tests automatiques en boîte noire.
Logiciels
Systèmes d’exploitation
État d’avancement du portage de Fedora, images et guides d’installation pour les cartes RISC-V.
Images officielles d'Ubuntu pour les cartes RISC-V et QEMU.
État d'avancement du portage de FreeBSD et instructions pour le matériel RISC-V et les émulateurs.
Cartes RISC-V prises en charge par le système d'exploitation temps réel Zephyr.
Implémentations
Cœurs
Processeur RISC-V open source haute performance à exécution désordonnée, développé à l’Institut des technologies informatiques de l’Académie chinoise des sciences.
Générateur de SoC RISC-V paramétrable développé par l'université de Berkeley.
Implémentation RISC-V 32 bits adaptée aux FPGA, écrite en SpinalHDL.
Implémentation expérimentale de RISC-V en Verilog, pouvant tenir dans un petit FPGA.
CPU et SoC de type microcontrôleur 32 bits personnalisables et extensibles, écrits en VHDL.
Processeur RISC-V « out-of-order » de Berkeley.
SoC
Système sur puce RISC-V 32 bits pour les FPGA iCE40 HX8K, iCE40 UP5K et ECP5.
Modèle permettant de créer des SoC basés sur RISC-V à l'aide d'outils open source.
Exemple simple de SoC utilisant PicoRV32.
SoC complet articulé autour de la famille de processeurs RISC-V Shakti de l’IIT Madras.
Implémentation ASIC du PicoSoC PicoRV32.
Implémentation d’un SoC RISC-V destinée aux FPGA Xilinx.
Accélérateurs
Silicium
Puce PULP, 330 MHz, 22 nm, 3 000 × 3 000 µm.
Puce PULP, 500 MHz, 65 nm, 1 252 × 1 252 µm.
Puce PULP, 200 MHz, 65 nm, 2 626 x 2 626 µm.
Puce PULP, 500 MHz, 65 nm, 1 252 x 1 252 µm.
Puce PULP, 15 MHz, 180 nm, 7 201 x 8 160 µm.
Puce PULP, 400 MHz, 65 nm, 2 626 × 2 626 µm.
Matériel
Cartes
Conceptions matérielles, documentation du SDK, outils de flashage et images système pour les cartes Allwinner D1, en chinois.
Carte à microcontrôleur RISC-V compatible Arduino de SiFive ; un point d'entrée accessible pour la programmation embarquée « bare-metal ».
Ordinateur monocarte RISC-V quadricœur 64 bits fonctionnant sous Debian, Ubuntu et Fedora.
Ordinateur monocarte BeagleBoard basé sur le processeur quadricœur T-Head C910.
Carte RISC-V à bas coût basée sur la puce Bouffalo BL808.
Documentation relative aux cartes et modules RISC-V Lichee et Maix de Sipeed.
Carte Linux embarquée ultra-compacte et extrêmement économique (5 à 9 $) basée sur un SoC double cœur RISC-V + ARM ; idéale pour l'apprentissage de l'IoT.
Microcontrôleurs
Carte basée sur le RP2350, capable de démarrer sur deux cœurs RISC-V Hazard3 à la place de ses cœurs ARM.
Microcontrôleur RISC-V d'Espressif avec Wi-Fi et Bluetooth Low Energy.
Microcontrôleur RISC-V 32 bits de WCH vendu quelques centimes par puce.
Par pays
Brésil
Leçon sur l'histoire de la fabrication de puces au Brésil, l'usine CEITEC et les processeurs RISC-V brésiliens, avec sources.
Microcontrôleur RISC-V brésilien 32 bits avec Bluetooth Low Energy pour l’IoT, également appelé u32BR, conçu par l’UFCG, l’UFPR, l’UFSM, l’UnB et l’UFMG grâce à un financement fédéral.
Rapport de l’UFMG sur les premières puces BlueMacaw fabriquées, en portugais.
Conférence de Fernando Pereira, du laboratoire des compilateurs de l’UFMG, sur le kit de développement logiciel u32BR, en portugais.
Processeur RISC-V open source compact destiné aux systèmes sur puce multiprocesseurs, développé par des chercheurs brésiliens.
Programme national brésilien qui forme des concepteurs de puces grâce à des stages en microélectronique.
Annonce par l'Instituto Eldorado d'un projet commun sur RISC-V pour le calcul haute performance.
Article de RISC-V International sur la communauté RISC-V au Brésil.
Colombie
Groupe de recherche de l’Université industrielle de Santander à l’origine de mRISCV, un microcontrôleur RISC-V 32 bits conçu pour être le premier système sur puce colombien.
Article d’eeNews Europe consacré à l’équipe Onchip et au financement du projet mRISCV.
Chine
Institut de recherche qui développe le processeur open source haute performance XiangShan.
Laboratoire de l'ISCAS contribuant à la prise en charge de RISC-V par les compilateurs, les émulateurs et les distributions Linux.
Environnement de développement et gestionnaire de paquets pour le matériel RISC-V, développé par l’ISCAS.
Cœurs RISC-V open source C906 et C910ISC-V open source de la part d’Alibaba T-Head.
Europe
Projet de l’UE visant à développer des processeurs européens, notamment des accélérateurs RISC-V pour le calcul haute performance.
Projet de l'UE visant à créer un écosystème européen d'IP de processeurs RISC-V et d'outils de conception.
Entreprise tchèque proposant des IP de processeurs RISC-V personnalisables et des outils de conception.
Entreprise barcelonaise concevant des cœurs RISC-V dotés d'unités vectorielles pour les charges de travail d'IA.
Inde
Communauté
Organisations
Association à but non lucratif qui détient et valide les spécifications RISC-V.
Dépôts officiels des spécifications, du modèle Sail et des outils associés.
Projet industriel finançant la prise en charge de RISC-V dans les compilateurs, les environnements d’exécution, les distributions et les noyaux.
Association à but non lucratif soutenant les puces open source par le biais d’événements, d'actualités et d'hébergement de projets.
Créateur du langage de description matérielle Bluespec et des cœurs Piccolo, Flute et Toooba.
Projet de la Linux Foundation développant du matériel open source et des outils de conception, notamment Rocket Chip.
Organisation à but non- à but non lucratif de Cambridge assurant la maintenance du cœur Ibex et de la racine de confiance matérielle OpenTitan.
Organisation à but non lucratif assurant la maintenance de la famille CORE-V de cœurs RISC-V open source, dont le CVA6.
Plateforme de l'ETH Zurich et de l'université de Bologne dédiée aux cœurs et SoC open source à très faible consommation.
Entreprise fondée par les créateurs de l’ISA RISC-V, qui publie des IP de processeurs, des SDK et des outils.
Langage de description matérielle basé sur Scala et hébergeant les cœurs VexRiscv et NaxRiscv.
Responsables de la suite de synthèse Yosys, de nextpnr et de riscv-formal.
Événements
Calendrier de RISC-V International répertoriant les sommets, les rencontres et les webinaires.
Conférence européenne annuelle sur le RISC-V.
Conférence chinoise annuelle sur le RISC-V.
Forums
Groupes Google
Liste de diffusion communautaire destinée aux utilisateurs du langage de conception matérielle Chisel.
Liste de diffusion officielle dédiée au développement matériel RISC-V.
Liste de diffusion officielle dédiée aux discussions sur le développement de la spécification de l'ISA RISC-V.
Liste de diffusion destinée aux enseignants utilisant RISC-V dans leurs cours et programmes universitaires.
Contribuer
Les suggestions sont les bienvenues via des tickets et des pull requests. Ajoutez un lien par pull request, placez-le dans la section correspondante et décrivez-le en une phrase.
Remerciements
Cette liste a été créée à partir des listes suivantes, dont les entrées ont été fusionnées, vérifiées et réorganisées.
- 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
Licence
Cette liste est placée sous licence Creative Commons Attribution-ShareAlike 4.0. Les copies et adaptations doivent mentionner Awesome RISC-V et être publiées sous la même licence.

