Skip to content

Turingine/RoadMap

Repository files navigation

Turingine : The Sovereign Scientific Calculator

Build Status License Hardware Platform

Projet TIPE 2025/2026 - Thème : Sobriété, Efficacité, Optimisation

Le Projet

Turingine est une initiative étudiante (MP2I/MPI) visant à restaurer la souveraineté numérique dans le domaine des calculatrices scientifiques. Face à la fermeture progressive des écosystèmes propriétaires (Numworks, TI), nous concevons une machine performante et totalement auditable, du PCB jusqu'au Kernel.

Notre objectif n'est pas seulement de calculer, mais d'étudier l'optimisation énergétique et logicielle sur une architecture embarquée moderne.


Architecture Technique

Le projet repose sur une approche Hardware/Software intégrée :

Hardware (L'efficacité matérielle)

  • Cœur de calcul : Radxa Cubie A7Z (SoC Allwinner A733).
    • Architecture big.LITTLE (2x Cortex-A76 + 6x Cortex-A55) pour une gestion fine de l'énergie.
    • NPU 3 TOPS (Expérimental).
  • Interface : Clavier mécanique custom (Layout 60%) sur PCB maison.
  • Affichage : Écran LCD SPI.

Software (La sobriété logicielle)

  • OS : Distribution Linux Embedded Custom (Basée sur Ubuntu Linux ARM).
    • Kernel optimisé pour le hardware Radxa.
    • Userspace minimaliste (pas de bloatware).
  • Moteur Mathématique : Giac/XCas (C++) pour le calcul formel symbolique.
  • Optimisation TIPE :
    • CPU Pinning : Allocation dynamique des processus lourds sur les cœurs P (Performance) et de l'UI sur les cœurs E (Efficacité).
    • Boot Time : Objectif < 5 secondes.

Roadmap (Feuille de Route)

Phase 1 : Le Socle (Hiver 2025)

  • Sélection du hardware (Radxa Cubie A7Z).
  • Hardware : Design du PCB v1 (Matrice clavier).

Phase 2 : L'Intégration (Printemps 2026)

  • Interface : Développement de l'UI graphique communiquant avec XCas.
  • Hardware : Assemblage du prototype physique (Fabrication et conception de la coque).
  • Système : Scripting du démarrage automatique (Systemd service) et affichage via wayland.
  • Software : Compilation et exécution de Giac en ligne de commande sur la cible.
  • Système : Création de l'image disque "Rootfs" Custom (Xcas, GCC, OCaml, ...).

Phase 3 : L'Optimisation & TIPE (Été 2026)

  • Mesures : Comparatifs de consommation (Joules/Calcul) vs architectures classiques.
  • Documentation : Rédaction du dossier technique et publication des plans finaux.

Programmation :

  • Communication avec le buffer graphique (Nathanaël)
  • Interface graphique (Nathanaël)
  • Gestion des input (Nathanaël)
  • Plotter (Nathanaël)
  • Interface avec giac (parsing,...) (Kamil)
  • Faire fonctionner l'hardware (Tout le monde).

Installation & Reproduction

Prérequis

  • Une carte Radxa Cubie A7Z.
  • Une carte microSD (16 Go min).
  • Un PC Linux pour la compilation croisée.

Flasher l'OS (Méthode "Injection")

  1. Cloner ce dépôt.
  2. Lancer le script de construction de l'image (nécessite qemu-user-static) :
    sudo ./scripts/build_os.sh
  3. Flasher l'image générée sur la carte SD :
    sudo dd if=output/turingine_v1.img of=/dev/sdX bs=4M status=progress

L'Équipe

  • Nathanaël Buendia (Poitiers) : CPGE MP2I
  • Kamil Leys (Tours) : CPGE MP2I
  • Gaspard Lebaube (Paris) : DL1

Licence

  • Code source : GPLv3 (Garantit que le projet restera toujours ouvert).
  • Hardware (PCB) : CERN-OHL-W (Open Hardware Licence).

Soutien

Projet financé avec le soutien de la Fondation de Poitiers.

Logo Fondation de Poitiers Université

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors