Ingénieur vérification fonctionnelle UVM - Microprocesseur
CDI Grenoble (Isère)
Description de l'offre
Vous rejoignez l'équipe logiciel embarqué qui est en charge de la vérification matérielle du processeur.
Cette équipe a le rôle crucial de vérifier fonctionnellement la netlist fournie par les concepteurs RTL, avant le passage à l'implémentation physique. Les vérifications s'effectuent au niveau IP et top-level.
Pour ce faire, l'équipe a mis en place un flot mixte entre hardware (outils classiques de la microélectronique, SystemVerilog, SYstemC, VHDL, UVM) et Software (C et C++).
Sur une base de flot UVM, la vérification s'effectue sur 2 modèles émulés du processeur : l'un en full C/C++, l'autre en SystemC. Votre activité consistera à développer les logiciels embarqués qui seront portés sur ces deux modèles de processeurs.
Dans le scope de votre fonctions, vous serez amené à :
- participer au développement de l'environnement de vérification
- participer à l'écriture du flot
- rédiger la stratégie et les plans de tests des IP et sous-systèmes du microprocesseur
- écrire les tests en SystemVerilog et en C
- analyser et consigner les résultats
- interagir avec l'équipe de conception RTL
La complexité adressée rend le travail passionnant, car c'est un travail croisé entre du développement logiciel embarqué sur cible MPU croisé avec une réflexion sur l'architecture matérielle d'un processeur complexe.
Vous aurez par exemple comme tâche d'aller mettre en défaut un Network-on-Chip cohérent en cache, ou encore un gestionnaire de mémoire DDR.
Cerise sur le gâteau, vous travaillerez aux côtés d'experts en architecture processeur, passionnés par leur métier et auprès de qui vous progresserez rapidement en développement sur System-on-Chip.
>
Profil recherché
2 compétences techniques sont nécessaires ici
1 : Etre compétent design microélectronique digital (RTL)
C'est-à-dire comprendre la description matérielle (VHDL, SystemVerilog), la vérification fonctionnelle, et savoir utiliser les outils classiques du flot digital (Modelsim ou XCelium par exemple) ainsi que la méthodologie UVM et ses outils.
2 : avoir des bases logiciel embarqué
C'est-à-dire, être capable de coder en C embarqué sur une architecture de processeur de type ARM ou RISC-V (R/W registres, gestion d'interruption..), d'utiliser des OS temps Réel et Linux embarqué, et maîtriser la chaîne de compilation.
Vous rejoignez une équipe de passionnés d'architecture microprocesseur qui seront ravis de vous transmettre leur savoir. La passion du métier et l'envie d'apprendre sont les moteurs essentiels qui vous permettront d'être pleinement satisfaits dans ce poste.
Comme toujours : nous ne sommes pas une SSII mais un cabinet de recrutement ;)
Ce poste est à pourvoir en CDI direct dans les équipes grenobloises de notre client. Let's go
À propos de EN-CORE.IO
Cette Start-Up s'est donné une mission : doter la recherche européenne d'un supercalculateur sécurisé, performant et basse-consommation.
L'équipe (>150 personnes) conçoit un microprocesseur multi-coeurs (>80) ainsi que tout son écosystème matériel et logiciel. Afin de remettre clé-en-main un écosystème complet à leurs clients.
Ce processeur est doté des dernières technologies processeur du marché et vise à répondre à tout type d'application scientifique exigeante en calcul :
Médecine : virologie, essais cliniques, imagerie..
Climat : modèles prédictifs, trajectoires des tempêtes, protection du climat
Energie : optimisation de la distribution électrique
Et beaucoup d'autres applications.
Les équipes d'ingénieurs regroupent les métiers de la microélectronique (design digital, vérification, implémentation), du logiciel (embarqué bare-metal, OS, applicatif), de la carte et des outils (compilation, flot).
L'entreprise est en pleine croissance et affiche une excellente santé financière.