Prenez contact avec nous

Plan du cours

Fondamentaux de l'architecture RISC-V et aperçu de l'écosystème

Paysage ISA RISC-V et adoption industrielle

  • Philosophie open-source de l'ISA et paysage de normalisation de RISC-V International
  • Modèle mental de RISC-V : Architecture Load-Store, Fichier de registres, Ordre des octets
  • Comparaison avec ARM, x86 et POWER : compromis pour les architectures informatiques hétérogènes
  • Évaluation de la maturité de l'écosystème : SiFive, T-Head, Western Digital et la communauté croissante du silicium open-source
  • Interfaces standardisées : ISA priviligiée RISC-V, Couche d'abstraction logicielle Machine (MSBL)

Modèles de mémoire et conformité ABI

  • Spécification de l'architecture non priviligiée : carte CSR, gestion des exceptions et hiérarchies de mémoire
  • Ensembles d'instructions RV32I / RV64I et conformité ABI pour la portabilité binaire multiplateforme
  • Conventionnalités d'ordonnancement mémoire et instructions barrières pour les systèmes multiprocesseurs

Programmation assembleur RISC-V et chaîne d'outils compilateur

Programmation d'instructions bas niveau

  • Instructions entières de base (I), extensions Multiply/Divide (M) et Atomic operations (A)
  • Stratégies de programmation sensibles à la taille des mots pour les cibles RISC-V 32 bits et 64 bits
  • Conventionnelles d'appel et gestion des cadres de pile pour les systèmes logiciels embarqués et temps réel

Maîtrise de la chaîne d'outils compilateur

  • Chaîne d'outils compilateur basée sur LLVM : Clang, LLVM, Binutils pour la compilation croisée RISC-V
  • Scripts d'édition de liens, sections et configuration de l'agencement mémoire pour les environnements bare-metal et RTOS
  • Intrinsèques du compilateur, niveaux d'optimisation et réglage de code piloté par le profilage
  • Flux de développement de chaînes d'outils open-source : construction, tests et emballage de chaînes GCC/Clang personnalisées

Développement de systèmes embarqués et systèmes d'exploitation temps réel

Programmation bare-metal et RTOS

  • Programmation système Rust pour RISC-V : abstractions sans coût, gestion de la mémoire non sécurisée et développement bare-metal
  • Environnements No-Std : éditeurs de liens personnalisés, développement de pilotes de périphériques et E/O mappé en mémoire
  • Développement BSP Zephyr RTOS et Buildroot pour les cibles RISC-V
  • Interfaçage des périphériques : GPIO, I2C, SPI, UART et programmation des contrôleurs DMA

Optimisation de la puissance et des performances

  • Mise en veille de l'horloge, gestion des domaines d'alimentation et optimisation des modes basse consommation
  • Analyse des performances précise au cycle avec des profileurs de simulation et des compteurs de performance matériels
  • Réglage de la latence des interruptions temps réel pour les applications critiques en matière de sécurité

Développement du noyau Linux et chargeur d'amorçage pour RISC-V

Firmware d'amorçage et écosystème des chargeurs d'amorçage

  • OpenSBI (implémentation de la spécification SBI) : développement du firmware bootloader
  • UEFI/EDK II sur RISC-V : développement de la pile de démarrage de firmware moderne
  • Portage de Coreboot et U-Boot pour les ordinateurs monocartes RISC-V

Intégration du noyau Linux

  • Contributions au noyau principale (mainline) RISC-V : superpositions de arbre des dispositifs (device tree), topologie CPU et développement de pilotes de contrôleurs d'interruption (AIA)
  • Développement BSP fournisseur et configuration du noyau pour les plateformes SoC personnalisées
  • Support du système de fichiers, pile réseau et support de conteneurisation (Docker, Kubernetes) sur les systèmes hôtes RISC-V

Conception SoC RISC-V et prototypage FPGA

Architecture et intégration multicœurs SoC

  • Méthodologies de conception Network-on-Chip (NoC) pour les processeurs multi-cœurs RISC-V
  • Cohérence de cache Axi4/CHI et protocoles de communication inter-processeurs
  • Intégration d'IP open-source : OpenCores, ChIPS Framework et composants RTL fournisseurs
  • Conception de matrice de bus et intégration de contrôleurs mémoire (DDR, SRAM, eMMC, PCIe)

Prototypage de processeur basé sur FPGA

  • Synthèse et implémentation FPGA du noyau RISC-V (par ex. BOOM, VexRiscv, PULP)
  • Méthodologie de vérification fonctionnelle basée sur les assertions SystemVerilog (SVA) et UVM
  • Outils de vérification formelle et tests basés sur les propriétés pour la validation du noyau RISC-V

Extensions vectorielles RISC-V et accélération spécifique au domaine

Plongée profonde dans l'extension RVV (RISC-V Vector)

  • Chargement/stockage vectoriel, multiplication-addition fusionnée vectorielle (VFMA) et accélération de calcul matriciel
  • Opérations vectorielles de longueur variable (VL, VLEN) pour l'exécution SIMD optimisée par la charge de travail
  • Opérations de masquage vectoriel, contrôle segmenté et flexibilité des types de données pour les charges DSP et ML

Conception d'accélérateurs DSP personnalisés et instructions spécifiques au domaine

  • Conception d'accélérateurs spécifiques au domaine via des extensions personnalisées et des interfaces d'opérandes basées sur CBAR
  • Modifications du frontend du compilateur pour la génération d'instructions personnalisées et l'émission de code
  • Stratégies de partitionnement matériel-logiciel pour l'intégration d'accélérateurs dans les SoC de production

Accélération IA et apprentissage machine en périphérie sur RISC-V

Conception et intégration NPU pour les processeurs RISC-V

  • Architecture Neural Processing Unit (NPU) : tableaux systoliques, cœurs tensoriels et compression des poids pour l'accélération IA embarquée
  • Techniques de quantification de modèles (INT8, INT4, FP8) pour le déploiement en périphérie sur RISC-V
  • Compatibilité des frameworks : TensorFlow Lite Micro, ONNX Runtime et PyTorch Edge sur les cibles RISC-V

Informatique hétérogène pour les charges IA

  • Co-conception du CPU hôte RISC-V avec un NPU accélérateur IA pour les pipelines d'inférence en temps réel
  • Optimisation de la sous-système mémoire : gestion de la bande passante HBM/DDR pour les poids et activations des modèles ML
  • Planification thermique et budgétaire pour les systèmes d'inférence IA en périphérie

Sécurité matérielle et calcul confidentiel sur RISC-V

Protection de la mémoire physique et exécution fiable

  • Protection de la mémoire physique (PMP) et mécanismes de sécurité du marcheur de tables de pages
  • Architectures d'Enclave sécurisée/TEE pour RISC-V : intégration OP-TEE, environnements d'exécution de confiance de classe SEV
  • Sécurité de la chaîne de démarrage : racine de confiance, boot sécurisé et attestation de lancement mesuré

Accélération cryptographique

  • Extensions cryptographiques RISC-V (Zk, Zkr, K extensions) : accélération SHA, AES, RSA, RSA-PSS et ECC
  • Intégration de la cryptographie post-quantique (PQC) pour les processeurs RISC-V de prochaine génération
  • Techniques d'atténuation des attaques par canaux auxiliaires : programmation à temps constant, masquage et générateurs de nombres aléatoires matériels

Architecture personnalisée avancée et conception d'extensions ISA

Architecture spécifique au domaine et extensions d'instructions personnalisées

  • Méthodologie de conception d'extension ISA : encodage, tables d'encodage, analyse de l'impact ABI et processus de soumission à la spécification RISC-V International
  • Conception de fichier de registres personnalisé avec CBAR (Custom Base Address Registers) pour le dégroupement des opérandes
  • Pipelining d'instructions, détection de hazards et modifications de pipeline pour les extensions personnalisées

Vérification et validation des modifications architecturales personnalisées

  • Conception de bancs d'essai pour les extensions personnalisées : génération de stimuli dirigés vs contrainte-aléatoires
  • Cadre de tests de régression et vérification pilotée par la couverture pour les modifications architecturales
  • Tests d'interopérabilité : garantie que les instructions personnalisées fonctionnent dans les contraintes ABI établies

Applications RISC-V critiques en matière de sécurité et automobiles

Sécurité fonctionnelle et conformité aux normes automobiles

  • Conformité à la sécurité fonctionnelle ISO 26262 pour les processeurs automobiles RISC-V
  • Classification ASIL-Q et développement du manuel de sécurité pour le IP silicium RISC-V
  • Gestion déterministe des interruptions, paires de cœurs en pas synchrone (lockstep) et protection de la mémoire pour les systèmes RISC-V critiques en matière de sécurité

Applications industrielles temps réel et informatique en périphérie

  • Conformité SIL IEC 61508 et ordonnancement déterministe sur les plateformes multicœurs RISC-V
  • Développement de passerelles IoT industrielles avec RISC-V : connectivité, analyse en périphérie et systèmes de mise à jour firmware OTA

Projet final : Développement système RISC-V de bout en bout

Projet de cycle de vie complet

  • Spécification d'architecture : conception des extensions ISA et du noyau pour un cas d'utilisation défini
  • Implémentation RTL en SystemVerilog avec bancs d'essai UVM et couverture de vérification formelle
  • Prototypage FPGA, développement du firmware de démarrage et intégration de la pile de pilotes bare-metal
  • Personnalisation BSP Linux et chaîne d'outils pour le noyau RISC-V personnalisé
  • Déploiement de charges IA : intégration NPU, quantification des modèles et benchmarking des performances
  • Validation de la sécurité : application PMP, boot sécurisé et benchmarking de l'accélération cryptographique
  • Documentation d'architecture technique, analyse de stratégie IP et présentation à une équipe pluridisciplinaire
 21 Heures

Nombre de participants


Prix par participant

Nos clients témoignent (2)

Cours à venir

Catégories Similaires