Journal NaxRiscv, un CPU rapide open source

Posté par  (site web personnel) . Licence CC By‑SA.
28
4
jan.
2024

En parcourant le journal sur le 37C3, sur les conférences du Chaos Computer Club Allemand, je suis tombé sur la présentation d'un CPU open source, le NaxRiscv.

Pour ceux qui se souviennent, c'était le rêve d'un groupe d'illuminé autour du F-cpu dans les années 2000.

Le NaxRiscv est donc un CPU RISC-V out-of-order. Il exécute maximum 3 instructions à la volée ce qui permet d'être plus rapide qu'un ARM M4 à fréquence égale.

Ce CPU est écrit non pas en VHDL ou en Verilog mais par un générateur de HDL, SpinalHDL. C'est une library Scala pour générer de plus haut niveau du hardware. La description du projet met en avant les limites des anciens langages et permet d'aller plus loin dans l'abstraction (Interface plus propre, code moins verbeux, paramètres génériques).

NaxRiscv est donc la démonstration qu'un langage de plus haut niveau permet de faire plus de chose, plus complexe, même en hardware. Il cible les FPGA dans un premier temps. 2 boites chinoises l'utilisent ainsi que des universités. Le projet propose une configuration par défaut, mais il est possible de composer son CPU (nombre d'unité de calcul, profondeur de pipeline). Debian démarre sur ce programme.

Il est inclus dans une système plus large LiteX qui permet de composer un système complet.

Le code est assez lisible et je pense que des softeux n'auront pas trop de mal à le comprendre. Il va falloir que je me mette au Scala.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.