Litessera Lux
Awesome RISC-V

Litessera Lux

Écosystème RISC-V

Litessera Lux est l'assembleur et le simulateur RISC-V pour les leçons d'assembleur de ce site. L'assembleur est écrit en JavaScript, et le cœur d'exécution est du C++ compilé en WebAssembly.

Aperçu

Litessera Lux est un assembleur et simulateur RISC-V conçu pour les leçons de ce site. Un simulateur imite un processeur, ce qui permet à un programme de s'exécuter sans matériel RISC-V. L'assembleur est la forme textuelle lisible des instructions machine, et RV32IM est le jeu d'instructions de base 32 bits avec l'extension M pour la multiplication et la division.

L'assembleur est écrit en JavaScript et lit la source deux fois. La première passe enregistre les étiquettes et la taille de chaque instruction. La seconde passe encode les instructions et renseigne les adresses que ces étiquettes représentent. L'exécution se fait dans un cœur C++ compilé en WebAssembly, un format binaire que les navigateurs exécutent à une vitesse proche de celle du natif.

Historique

Lux a vu le jour en 2026 sous le nom de Tesserae Venus, un simulateur écrit pour les leçons RISC-V de ce site. Il a été renommé Litessera Lux en juin 2026. Le cœur d'exécution est ensuite passé de JavaScript à C++ compilé en WebAssembly.

Où il est utilisé

Les leçons RISC-V du site fonctionnent sur Lux. Une leçon s'ouvre sur un programme que l'étudiant doit assembler et exécuter, et la référence des instructions documente les mêmes instructions RV32IM.

Lux traite aussi de sujets embarqués, notamment la famille de microcontrôleurs ESP32. Il s'exécute dans le navigateur sans rien à installer, ce qui lui permet de fonctionner sur les machines scolaires gérées et sur l'ordinateur personnel d'un étudiant.

Sources

  1. Litessera Lux
  2. RISC-V lessons in Lux
  3. RV32IM instruction reference