Hazard3-Doom

Doom sur le processeur RISC-V Hazard3 dans un FPGA ECP5 - et un terrain d’expérimentation pratique pour comprendre comment processeur, logique FPGA, mémoire, vidéo, firmware et logiciel s’assemblent.

Hazard3-Doom est bien plus que Doom porté sur une carte FPGA supplémentaire. C’est un écosystème matériel et logiciel pédagogique construit autour du processeur RISC-V open source Hazard3 et des familles FPGA ECP5 ULX3S et ULX4M.

Le même CPU Hazard3 que dans le Raspberry Pi RP2350

Hazard3 n’est pas un processeur créé uniquement pour ce projet. Le microcontrôleur RP2350 de Raspberry Pi contient une paire de cœurs RISC-V Hazard3 open hardware, sélectionnables à la place de sa paire de Cortex-M33, et le RP2350 équipe la famille Raspberry Pi Pico 2. Hazard3-Doom synthétise cette même architecture de processeur Hazard3 open source dans le FPGA ECP5.

La configuration du processeur n’est pas identique : RP2350 et Hazard3-Doom activent des fonctionnalités et extensions ISA Hazard3 optionnelles différentes pour leurs SoC respectifs. Cette origine CPU et ce RTL communs font de Hazard3-Doom un moyen pratique d’étudier cette architecture dans un système que vous pouvez reconstruire et modifier.

Le projet réunit des exemples C et Verilog, des conceptions FPGA, la vidéo HDMI et les framebuffers, des contrôleurs de mémoire externe, l’accès à la carte SD, le débogage UART et JTAG, un moniteur de démarrage résident, des outils de téléversement côté hôte et une application DoomGeneric chargeable.

Un outil de diagnostic I2C basé sur l”I2CDriver d’Excamera Labs est également inclus. Le même code fournit en bonus la fonction SAO Hackaday Supercon.

Vous pouvez simplement jouer à Doom sur un CPU RISC-V soft, ou descendre plus profondément dans le système pour voir comment un ordinateur complet basé sur FPGA est construit : intégration du processeur, mémoire, horloges et timing, vidéo, périphériques, démarrage, chargement et outils de débogage.

Que vous expérimentiez avec RISC-V, appreniez le Verilog ou vouliez comprendre ce qu’il faut pour faire fonctionner Doom sur un matériel que vous pouvez inspecter et modifier de bout en bout, Hazard3-Doom est conçu pour être exploré.

Note

Ces pages décrivent la version de documentation sélectionnée. Les fonctionnalités encore en évolution sont signalées explicitement. Les pages détaillées sur l’architecture du processeur sont également rattachées à l’instantané exact du code source Hazard3 indiqué dans Processeur RISC-V Hazard3.

Important

Sous Windows, les builds depuis les sources utilisent WSL

Sous Windows, les instructions de build et de développement depuis les sources exigent WSL avec Ubuntu et Bash. PowerShell et cmd.exe ne sont pas des shells de build pris en charge pour les scripts du dépôt. Windows natif n’est utilisé que lorsqu’une page demande explicitement le Device Tool du navigateur, la gestion des pilotes USB, un téléversement via port COM ou un .exe Windows fourni. Le chemin Démarrage sans installation - ULX3S dans le navigateur ne nécessite pas WSL.

Commencer ici

Pour aller plus loin

Référence

Liens du projet