Merci d'avoir envoyé votre demande ! Un membre de notre équipe vous contactera sous peu.
Merci d'avoir envoyé votre réservation ! Un membre de notre équipe vous contactera sous peu.
Plan du cours
Fondamentaux de l'architecture RISC-V et aperçu de l'écosystème
Paysage de l'ISA RISC-V et adoption industrielle
- Philosophie de l'ISA open source et paysage de la standardisation par RISC-V International
- Modèle mental de RISC-V : architecture de chargement-stockage (Load-Store), registre, ordre des octets
- Comparaison avec ARM, x86 et POWER : compromis pour les architectures de calcul hétérogènes
- Évaluation de la maturité de l'écosystème : SiFive, T-Head, Western Digital et la communauté silicium open source en croissance
- Interfaces standardisées : ISA RISC-V privilégiée, couche d'abstraction logicielle pour machines (MSBL)
Modèles mémoire et conformité ABI
- Spécification de l'architecture non privilégiée : carte CSR, gestion des exceptions et hiérarchies de mémoire
- Jeu d'instructions RV32I / RV64I et conformité ABI pour la portabilité binaire multiplateforme
- Conventions d'ordonnancement mémoire et instructions de barrière pour les systèmes multiprocesseurs
Programmation assembleur RISC-V et chaîne d'outils du compilateur
Programmation des instructions de bas niveau
- Extensions d'instructions entières de base (I), multiplication/division (M) et opérations atomiques (A)
- Stratégies de programmation tenant compte de la profondeur de bit pour les cibles RISC-V 32 bits et 64 bits
- Conventions d'appel et gestion des trames de pile pour les systèmes logiciels embarqués et temps réel
Maîtrise de la chaîne d'outils du compilateur
- Chaîne d'outils du compilateur basée sur LLVM : Clang, LLVM, Binutils pour la compilation croisée RISC-V
- Scripts de lieur, sections et configuration de la disposition mémoire pour les environnements bare-metal et RTOS
- Intrinsics du compilateur, niveaux d'optimisation et ajustement du code basé sur le profilage
- Flux de travail de développement de chaînes d'outils open source : construction, test et emballage de chaînes d'outils 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 en Rust pour RISC-V : abstractions à coût nul, gestion mémoire non sécurisée (unsafe) et développement bare-metal
- Environnements No-Std : lieurs personnalisés, développement de pilotes de périphérique et E/S mémoire mappée
- Développement Zephyr RTOS et Buildroot BSP pour les cibles RISC-V
- Interfaçage des périphériques : programmation des contrôleurs GPIO, I2C, SPI, UART et DMA
Optimisation de l'alimentation et des performances
- Portes d'horloge (clock gating), gestion des domaines d'alimentation et optimisation des modes basse consommation
- Analyse des performances cycle par cycle avec des profileurs de simulation et des compteurs de performances matérielles
- Réglage de la latence d'interruption temps réel pour les applications critiques sécurité
Développement du noyau Linux et du chargeur de démarrage pour RISC-V
Écosystème du micrologiciel et du chargeur de démarrage
- OpenSBI (implémentation de la spécification SBI) : développement du micrologiciel de démarrage
- UEFI/EDK II sur RISC-V : développement de la pile de démarrage de micrologiciel moderne
- Portage de Coreboot et U-Boot pour les ordinateurs à carte unique RISC-V
Intégration du noyau Linux
- Contributions au noyau RISC-V en mainline : superpositions d'arbre de périphériques (device tree), topologie CPU et développement de pilotes de contrôleurs d'interruption (AIA)
- Développement de BSP fournisseurs et configuration du noyau pour les plates-formes SoC personnalisées
- Prise en charge du système de fichiers, de la pile réseau et de la conteneurisation (Docker, Kubernetes) sur les systèmes hôtes RISC-V
Conception SoC RISC-V et prototypage sur FPGA
Architecture et intégration SoC multicœur
- Méthodologies de conception de réseaux sur puce (NoC) pour les processeurs multicœur RISC-V
- Cohérence de cache Axi4/CHI et protocoles de communication interprocesseur
- Intégration de IP open source : OpenCores, ChIPS Framework et composants RTL fournisseurs
- Conception de matrices de bus et intégration de contrôleurs mémoire (DDR, SRAM, eMMC, PCIe)
Prototypage de processeurs basé sur FPGA
- Synthèse et implémentation FPGA du cœur RISC-V (p. ex., BOOM, VexRiscv, PULP)
- Assertions SystemVerilog (SVA) et méthodologie de validation fonctionnelle basée sur UVM
- Outils de validation formelle et tests basés sur les propriétés pour la validation des cœurs RISC-V
Extensions vectorielles RISC-V et accélération spécifique au domaine
Approfondissement de l'extension RVV (RISC-V Vector)
- Chargement/stockage vectoriel, multiplication-addition vectorielle fusionnée (VFMA) et accélération des calculs matriciels
- Opérations vectorielles de longueur variable (VL, VLEN) pour une exécution SIMD optimisée pour les charges de travail
- Opérations de masque vectoriel, contrôle de segments et flexibilité des types de données pour les charges de travail DSP et IA
Conception de DSP personnalisé et d'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 de l'avant-plan du compilateur pour la génération d'instructions personnalisées et l'émission de code
- Stratégies de partitionnement logicielle et matérielle pour l'intégration des accélérateurs dans les SoC de production
Accélération IA et apprentissage automatique à la périphérie sur RISC-V
Conception et intégration de NPU pour processeurs RISC-V
- Architecture de l'unité de traitement neuronal : arrays systoliques, cœurs tensoriels et compression des poids pour l'accélération IA sur puce
- Techniques de quantification de modèles (INT8, INT4, FP8) pour le déploiement à la périphérie sur RISC-V
- Compatibilité des cadres de travail : TensorFlow Lite Micro, ONNX Runtime et PyTorch Edge sur les cibles RISC-V
Calcul hétérogène pour les charges de travail IA
- Co-conception du CPU hôte RISC-V avec le NPU accélérateur IA pour les pipelines d'inférence en temps réel
- Optimisation du sous-système mémoire : gestion de la bande passante HBM/DDR pour les poids et activations des modèles IA
- Budget thermique et énergétique pour les systèmes d'inférence IA à la périphérie
Sécurité matérielle et calcul confidentiel sur RISC-V
Protection mémoire physique et exécution de confiance
- Protection mémoire physique (PMP) et mécanismes de sécurité du parcours de table 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, démarrage sécurisé et attestation de lancement mesurée
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 nouvelle génération
- Techniques d'atténuation des attaques par canaux latéraux : programmation en 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'extensions ISA : encodage, tables d'encodage, analyse de l'impact sur l'ABI et processus de soumission de spécification à RISC-V International
- Conception de registres personnalisés avec CBAR (registres d'adresse de base personnalisés) pour la distribution des opérandes
- Canalisation des instructions (pipelining), détection des conflits et modifications de canal pour les extensions personnalisées
Validation et signature (signoff) des modifications d'architecture personnalisées
- Conception de bancs d'essai pour les extensions personnalisées : génération de stimulation dirigée vs aléatoire contrainte
- Frameworks de tests de régression et validation pilotée par la couverture pour les modifications d'architecture
- Tests d'interopérabilité : veiller à ce que les instructions personnalisées fonctionnent dans les contraintes ABI établies
Applications critiques sécurité et automobiles RISC-V
Sécurité fonctionnelle et conformité aux normes automobiles
- Conformité à la sécurité fonctionnelle ISO 26262 pour les processeurs RISC-V automobiles
- Classification ASIL-Q et développement de manuels de sécurité pour l'IP silicium RISC-V
- Gestion d'interruption déterministe, paires de cœurs en verrouillage (lockstep) et protection mémoire pour les systèmes RISC-V critiques sécurité
Applications temps réel industrielles et calcul à la périphérie
- Conformité IEC 61508 SIL et planification déterministe sur les plates-formes multicœur RISC-V
- Développement de passerelles IoT industrielles avec RISC-V : connectivité, analytique à la périphérie et systèmes de mise à jour du micrologiciel OTA
Projet de synthèse : Développement de système RISC-V de bout en bout
Projet de cycle de vie complet
- Spécification d'architecture : conception d'extensions ISA et de configuration du cœur pour un cas d'utilisation défini
- Implémentation RTL en SystemVerilog avec des bancs d'essai UVM et une couverture de validation formelle
- Prototypage sur FPGA, développement du micrologiciel de démarrage et intégration de la pile de pilotes bare-metal
- Personnalisation du BSP Linux et de la chaîne d'outils pour le cœur RISC-V personnalisé
- Déploiement de charges de travail IA : intégration de NPU, quantification des modèles et benchmarking des performances
- Validation de la sécurité : application PMP, démarrage sécurisé et benchmarking de l'accélération cryptographique
- Documentation d'architecture technique, analyse de la stratégie IP et présentation à l'équipe interfonctionnelle
Pré requis
Aucun.
21 Heures
Nos clients témoignent (2)
Les explications et l'interactivité du formateur étaient vraiment excellentes ; même si je n'étais probablement pas assez expérimenté, j'ai beaucoup appris !
Pieter Bruynseels - Spot Buy Center BV
Formation - Design Patterns
Traduction automatique
J'ai aimé la plateforme que nous avons utilisée. Elle était vraiment agréable et facile à utiliser. J'ai particulièrement apprécié la section sur TypeScript, en particulier les parties consacrées aux espaces de noms et aux modules.
Robert - DB Global Technology
Formation - JavaScript - Advanced Programming
Traduction automatique