Ripes
Awesome RISC-V

Ripes

Écosystème RISC-V

Ripes est un simulateur graphique d'architecture informatique par Morten Borup Petersen, écrit en C++ avec Qt.

Vous pouvez télécharger Ripes sur LYSZT.

Comment installer Ripes

Une seule ligne installe Ripes sur votre machine. L'installateur récupère la dernière version depuis GitHub, sélectionne le fichier correspondant à votre système d'exploitation et à votre architecture, vérifie sa somme de contrôle sha256 et l'installe dans votre répertoire personnel. Il n'a pas besoin de droits d'administrateur.

Installer depuis le terminal
curl -fsSL https://lyszt.net/install.sh | sh -s -- ripes

La commande fonctionne sur Linux et macOS. Sur Windows, téléchargez le fichier manuellement comme indiqué ci-dessous.

Téléchargement manuel

Vous pouvez aussi télécharger Ripes vous-même : choisissez votre système d'exploitation dans la boîte de dialogue de téléchargement et récupérez le fichier depuis les versions officielles GitHub.

D'après la documentation officielle
MéthodePrérequisComment
Binaries de sortieOuvrir la page des releases
Dans le navigateurripes.dk
Compiler à partir des sources
  • Qt >= 6.5.0 + Qt Charts
  • CMake
  • libegl1-mesa-dev (Linux)
git clone --recursive https://github.com/mortbopet/Ripes.gitcd Ripes/cmake .make

Aperçu

Ripes est un simulateur graphique de RISC-V. Un simulateur est un programme qui imite un processeur. Ripes dessine le chemin de données du processeur, le schéma des fils, des registres et des unités que les données traversent, et le met en évidence au fur et à mesure que les instructions progressent.

Ripes inclut plusieurs modèles de processeur. Le plus simple termine une instruction avant de commencer la suivante. Les modèles pipelinés divisent l'exécution en étapes, comme extraire une instruction de la mémoire, la décoder et l'exécuter, et maintiennent plusieurs instructions en cours à la fois, une par étape. La vue du pipeline montre les aléas, les cas où une instruction a besoin d'un résultat qu'une instruction précédente n'a pas encore produit, et comment le processeur attend ou transfère les données pour les résoudre.

Ripes simule aussi des caches, de petites mémoires rapides qui gardent les données récemment utilisées près du processeur, et des périphériques tels que des LED et des interrupteurs qu'un programme contrôle en lisant et en écrivant des adresses mémoire.

Historique

Morten Borup Petersen a lancé Ripes en 2017 et continue de le maintenir. Le projet a été présenté lors du Workshop on Computer Architecture Education 2021 dans l'article « Ripes: A Visual Computer Architecture Simulator ».

Ripes est écrit en C++ avec le framework Qt et publié sous licence MIT. Des versions existent pour Linux, Windows et macOS, et une version WebAssembly exécute le même programme dans un navigateur à ripes.dk.

Où il est utilisé

Ripes convient aux cours d'architecture des ordinateurs, où les étudiants étudient comment un processeur exécute du code. Avec un compilateur RISC-V installé, il compile aussi des programmes C, ce qui permet à un étudiant de comparer une ligne de C avec le code machine que le compilateur produit pour celle-ci.

Sources

  1. Ripes README
  2. Ripes: A Visual Computer Architecture Simulator, WCAE 2021