Mohamed Mourad HAFIDHI

Ingénieur Développement FPGA Senior | VHDL

Salary / Daily rate

92160 Antony, France

Freelance

Remote only

Languages

EnglishFrench

About me

Intro

FPGA Engineer with extensive experience in digital system design and hardware architecture. Specialized in developing mission-critical systems for aerospace (Ariane 6) and automotive industries using VHDL and C++. Expert in implementing complex FPGA solutions with proven track record in underwater repeater architecture and audio chain prototyping for ASICs.

Links

Work experience

Ingénieur Développement FPGA

ASN

Jun 2022 - Present

4 years 5 months

91620 Nozay, France

1. Analyse des besoins et des exigences : Évaluer les besoins en termes de capacités de communication, de bande passante, de fiabilité, etc., pour définir les spécifications de l'architecture du répéteur sous-marin. 2. Conception de l'architecture FPGA : Concevoir l'architecture globale du répéteur sous-marin en utilisant des circuits programmables (FPGA). Identifier les composants clés, les interfaces et les flux de données nécessaires pour garantir des communications sous-marines fiables. 3. Codage en VHDL : Développer et implémenter l'architecture du répéteur sous-marin en utilisant le langage VHDL. Écrire le code VHDL pour chaque composant du répéteur, en suivant les spécifications et les normes requises. 4. Tests et simulations : Réaliser des tests approfondis et des simulations pour valider l'architecture du répéteur sous-marin. Utiliser des outils de simulation pour évaluer les performances, détecter les problèmes potentiels et optimiser le fonctionnement du système. 5. Maquette pour la validation de l'architecture (Proof of Concept) : Mettre en place une maquette du répéteur sous-marin pour tester et démontrer la viabilité de l'architecture conçue. Collaborer avec des équipes multidisciplinaires, notamment des ingénieurs en optronique, en logiciel et en matériel, pour assurer une intégration réussie. 6. Documentation : Documenter l'architecture conçue en créant des schémas, des spécifications techniques, des interfaces et des processus de fonctionnement détaillés. Rédiger des rapports complets sur les tests, les simulations et les résultats obtenus lors de la validation de l'architecture.

Ingénieur FPGA

VITEC

Dec 2021 - Jul 2022

8 months

92320 Châtillon, France

Mission : Prototypage de la chaîne audio pour un ASIC Description des tâches : 1. Définition des plans de prototypage audio et rédaction des documents : - Analyser les spécifications de la fonction audio du système et définir les exigences du prototypage. - Élaborer un plan détaillé pour le test de la chaîne audio. - Rédiger des documents techniques, tels que des manuels d'utilisation et des rapports de test. 2. Développement en C++ des fonctions audio : - Implémenter les fonctions audio requises en utilisant le langage C++. - Assurer la compatibilité et l'interopérabilité avec les autres composants du système. - Effectuer des tests unitaires pour vérifier la fonctionnalité et la qualité du code. 3. Ajout des modules VHDL et intégration dans la carte : - Concevoir et développer les modules VHDL nécessaires pour le traitement audio. - Intégrer les modules VHDL avec les composants existants. - Effectuer des simulations pour valider le bon fonctionnement des modules VHDL. 4. Debug et correction des bugs : - Identifier et résoudre les problèmes de fonctionnement, les bugs et les erreurs dans la chaîne audio. - Utiliser des outils de débogage, tels que des analyseurs logiques, pour trouver et corriger les problèmes. - Collaborer avec l'équipe pour effectuer des tests de validation et de vérification. Environnement technique requis : - Langages de programmation : VHDL, C++ - Outils de développement : Quartus, ALDEC - Outils d'intégration continue : Jenkins - Plateforme matérielle : Arria10

Elsys Design

Jun 2019 - Aug 2021

2 years 3 months

91300 Massy, France

Ingénieur FPGA - Client : Watt and Well

Feb 2020 - Aug 2021

1 year 7 months

91300 Massy, France

Mission : Développement et validation de l'équipement de vol Ariane 6 1. Définition des plans de vérification du système et rédaction des documents : - Analyser les spécifications et comprendre les fonctionnalités requises. - Élaborer un plan de vérification détaillé en identifiant les tests nécessaires pour valider la carte FPGA. - Rédiger des documents techniques tels que des spécifications de vérification, des procédures de test et des rapports de validation. 2. Conception et développement de l'environnement de test/Debug : - Concevoir et mettre en place un environnement de test complet pour vérifier le bon fonctionnement de l'équipement de vol. - Développer des outils de débogage et de test en utilisant des langages de programmation tels que Python. - Créer des testbenches VHDL et utiliser la méthodologie UVM pour valider les fonctionnalités de l'équipement. 3. Codage en langage VHDL : - Implémenter les fonctionnalités requises en utilisant le langage VHDL. - Veiller à ce que le code VHDL soit conforme aux spécifications et aux normes de l'industrie. - Collaborer avec d'autres membres de l'équipe pour assurer l'interopérabilité avec les autres composants du système. 4. Validation et vérification : - Effectuer des tests unitaires pour vérifier la fonctionnalité des composants de l'équipement de vol. - Participer à des tests d'intégration pour s'assurer que tous les composants fonctionnent ensemble de manière harmonieuse. - Identifier et résoudre les problèmes de fonctionnement, les bugs et les erreurs en effectuant des activités de débogage approfondies. 5. Travailler en étroite collaboration avec des équipes multidisciplinaires, y compris des ingénieurs électroniques, logiciels et systèmes, pour assurer une intégration réussie de l'équipement 6. Documenter les résultats des tests, les problèmes rencontrés et les solutions mises en œuvre.

Ingénieur FPGA - Client : SAFRAN Electrical &Power

Jun 2019 - Jan 2020

8 months

Cachan, France

1. Codage en langage VHDL : développement des IP et simulation testbench : - Utiliser le langage VHDL pour développer les IP (Intellectual Property) nécessaires à la commande et au contrôle du moteur d'avion. - Concevoir et implémenter les modules VHDL nécessaires en fonction des spécifications techniques. - Effectuer des simulations testbench pour vérifier le bon fonctionnement des modules et valider leur conformité aux spécifications. 2. Développement des scripts batch pour l'automatisation de la compilation et des simulations : - Élaborer des scripts batch pour automatiser les processus de compilation des codes VHDL et le lancement des simulations. - Optimiser les scripts pour garantir une exécution efficace des tâches et faciliter le débogage en cas d'erreur. 3. Conception du firmware de test des cartes utilisées dans le projet : - Analyser les cartes utilisées dans le projet et comprendre les différentes interfaces telles que SPI (Serial Peripheral Interface), LVDS (Low Voltage Differential Signaling), etc. - Concevoir le firmware de test pour valider chaque interface et s'assurer qu'elles fonctionnent correctement. - Développer des scénarios de test complets en utilisant le firmware de test pour évaluer la performance et la stabilité des cartes (problème de timing). 4. Documentation : - Rédiger des documents techniques tels que des manuels d'utilisation et des rapports de test pour documenter le développement des modules, les procédures de test et les résultats obtenus. - Maintenir une documentation claire et à jour pour faciliter la compréhension et la maintenance future de l'application.

Ingénieur FPGA - Client : CEA

SERMA INGENIERIE

Oct 2018 - May 2019

8 months

91400 Saclay, France

- Etude d’une nouvelle architecture électronique pour l’automobile (pour RENAULT) - Validation et pré-intégration sur des cartes électronique MPSOC Zynq Ultrascale+ de Xilinx Environnement technique : - Environnement de développement numérique : Vivado, SDK - Gestion de version : Git - Langage de programmation : VHDL, C - Protocoles et Technologies : CANFD, Ethernet TSN, SPI, I2C, UART, TCL - Matériels : Carte Zynq MPSOC Ultrascale+

Altran

Jun 2018 - Oct 2018

5 months

Rennes, France

Ingénieur Conception micro-électronique - Client : MCBI Vishay

Aug 2018 - Oct 2018

3 months

Rennes, France

Objectifs : - Portage d'une application IOT sur un nouveau PIC32 de la famille PIC3EMM. - Evolution d’un produit existant : Modification du Soft Réalisations : - Développement C sur microcontrôleur - Préparation des librairies correspondante - Test, Débug et validation la carte de test PIC32MM0256GPM64 Environnement technique : - Environnement de développement numérique : MPLAB X IDE v3.5/5 - Langage de programmation : C - Protocoles et Technologies : SPI, UART, I2C

Ingénieur de conception en micro-électronique - Client : DeltaDore

Jun 2018 - Jul 2018

2 months

Région de Rennes, France

- Evolution d’un produit existant : Modification du Soft - Interfacer le produit avec les nouveaux compteurs Linky sur le marché Français (adapter le produit avec la nouvelle version de Télé-information …) - Intégrer un TI pour la consommation d’électricité pour les anciennes installations ou les installations hors France. Réalisations : - Développement C sur microcontrôleur - Test, Débug et validation avec des cartes de la famille Renesas : Rx21A - Préparer les tests harmonisés, CEM et production. - Instrumentation : Oscilloscope, générateur de courant … Environnement technique : - Environnement de développement numérique : Eclipse, Outils de développement Renesas (HEW,Renesas Emulator E1/E2 …) - Gestion de version : Git - Langage de programmation : C - Protocoles et Technologies : SPI, UART

Ingénieur recherche/développement

Université de Bretagne-Sud

Nov 2014 - Dec 2017

3 years 2 months

Région de Lorient, France

Résumé — Avec l’avancée technologique, la minimisation des transistors et la réduction des tensions d’alimentation ont permis de concevoir des applications complexes à faible consommation. Cependant, en abordant les limites de l’intégration des transistors de faible tension d’alimentation, la fiabilité des circuits devient critique. Les circuits sont sujet des erreurs dues aux perturbations environnementales, défauts de fabrication et interférences. L’apparition de ces erreurs peut affecter le comportement du circuit et générer en sortie un dysfonctionnement du système. Par conséquent, il est de plus en plus important de considérer les effets de ces erreurs dans la conception des futurs circuits. Réalisations : - Contribuer à l’amélioration de la fiabilité des systèmes numériques en introduisant de nouvelles techniques de tolérance aux pannes. - Considérer un exemple d’application (Applications de traitement de signal fiables sur de l’électronique peu fiable ) : les canaux de poursuite d’un récepteur GPS ; Analyser les besoins de l’application en termes de robustesse face aux fautes, adapter les techniques proposées et les intégrer dans l’algorithme GPS. - Un circuit intégré (ASIC) sera conçu en utilisant la technologie 28 nm pour valider les performances de ces techniques et faire les tests de mesures de consommation d’énergie => Préparer l'environnement d'expérimentation : PC <=> FPGA1 <=> ASIC(FPGA2) * / Développement VHDL/C, test, simulation et validation sur des cartes de Xilinx : ZedBoard (FPGA1), Virtex 6 ML 605(FPGA2). Environnement technique : - Outils de développement numérique : les outils de Xilinx (ISE, Vivado, XPS, SDK, Chipscope …), Matlab - Simulation : Modelsim - Matériels : ZedBoard, Viretx 6 ML 605. - Langages de programmation/description : C, VHDL


Education

University of South Brittany

Doctorat

2014 - 2017

3 years 2 months

Supcom

Ingénieur en Télécommunications

2011 - 2014

3 years 2 months

Institut préparatoire aux études d’ingénieurs de Tunis (IPEIT)

Admission dans le concours national d’entrée aux cycles de formation d’ingénieurs

2009 - 2011

2 years 2 months

Lycée Rue de Roussie Tunis

Baccalauréat

2005 - 2009

4 years 2 months


Licenses & certifications

Xilinx Certification ( Alliance Partner Training v2018.3)

Issued: May 2019

Certified by Xilinx

The best place to find your next move

© 2026. All Rights Reserved.