Nos prestations techniques
Vous avez un besoin d’assistance technique
sur vos projets de développement ?
Nos consultants se placent en chef de projet technique
pour répondre à vos besoins.
Notre expertise en design et vérification est une véritable valeur ajoutée pour la maitrise de la gestion de projets.
Nous vous proposons des solutions adaptées pour vos problématiques et intervenons dans les domaines suivants :
- Le design d’IP, sous-systèmes, processeurs (RiscV), DSP
- Le développement de systèmes / SoC
- La co-vérification hardware / software
- La vérification firmware
- Le développement d’applications
- L’évaluation et la qualification de vos outils
Bureau d'étude
Que ce soit pour le développement d’un système complet ou d’un bloc dédié, ou encore pour le développement d’une IP de vérification UVM spécifique, notre chef de projet et son équipe vous accompagnent dans la recherche de solutions techniques, la conception et l’exécution de vos développements.
En prenant en charge la délégation complète du projet, notre bureau d’étude vous offre une gestion agile, avec des livraisons de livrables intermédiaires séquencées jusqu’à la livraison finale.
En optant pour une gestion forfaitaire des projets, vous maitrisez vos coûts et vous vous libérez de la gestion quotidienne du projet.
Service et Consulting
Vous avez besoin de flexibilité, de faire face à un accroissement temporaire d’activité, ou d’une expertise particulière sur une courte durée ? Nos consultants interviennent en mode régie internalisée ou externalisée pour répondre à votre demande.
En fonction de la définition des besoins et ce, au fur et à mesure de l’avancement de votre projet, nous allouons nos ressources les plus appropriées.
Étapes d'un développement
01
Analyse des besoins
02
Spécifications système
03
Architecture système
04
Spécification des modules
05
Développement / conception
05
Vérification et validation
06
Exécution
07
Livrables
Le détail des étapes d'un développement
Étape 01
Analyse des besoins (étude de faisabilitié)
Suivant le secteur d’activité dans lequel se place votre projet, vos besoins en termes de conception et vérification ne seront pas les mêmes. Ainsi, l’étude technique de vos besoins et la création d’un cahier des charges sont les pré-requis pour le bon développement de votre projet.
Avez-vous besoin de matériel ? De licences ? Combien de personnes (ingénieurs et autres) seront impliquées dans le projet ? En se posant les bonnes questions, notre équipe vous aide à consolider votre budget. Ainsi, pas de surprise et de coûts supplémentaires. Les choses sont prévues en amont.
Enfin, grâce aux étapes précédentes, notre équipe vous fournit un planning précis de l’exécution de votre projet. Il prend en compte les différentes étapes (sous forme de diagramme de GANTT) pour arriver à la conception complète de votre produit.
Étape 02
Spécification du système
Votre développement s’inscrit dans un domaine particulier et certainement soumis à des contraintes réglementaires. Nous étudions celles-ci et nous nous assurons que votre projet répondra à ces spécifications.
Grâce à la connaissance du niveau de criticité de votre projet, nous adaptons nos développements.
Les systèmes critiques sont tous les logiciels ou puces qui peuvent engendrer de graves conséquences en cas de panne ou de dysfonctionnement. Nous mettons en place un flow de conception et des méthodologies pour répondre aux exigences et aux contraintes qui y sont liées.
Étape 03
Architecture système
En fonction de vos spécifications haut niveau, nos consultants créent l’architecture du système et les spécifications associées.
Étape 04
Spécification des blocs unitaires
Pour un besoin spécifique, vous pouvez avoir besoin d’une IP qui n’existe pas dans le commerce.
Aedvices propose du développement de blocs et IPs dédiés pour la réalisation de vos produits. Que ceux-ci soient basés sur des architectures ARM, Intel ou encore Xilinx, nos équipes d’ingénieurs ont la solution adaptée à votre produit.
Les blocs IP développés par Aedvices sont des fonctions entièrement personnalisées et réutilisables. Utiliser une IP dédiée, c’est vous permettre de vous concentrer sur la valeur propriétaire ajoutée à votre conception. Vous accroissez ainsi la rentabilité des processus de conception.
Aedvices réalise la conception de RTL synthétisable grâce à des langages de description hardware tel que Verilog ou VHDL.
Grâce à une étude de faisabilité, nous développons une architecture spécifique à votre projet. Nous réalisons ensuite le codage, la simulation RTL, la synthèse et le placement/routage. En parallèle à cela, nos consultants simulent l’IP et effectuent la vérification du système.
Étape 05
Développement / Conception
Le développement du design se fait en RTL (VHDL, Verilog ou SystemVerilog).
Systèmes critiques
Nos designers ont des connaissances sur les normes spécifiques aux domaines du spatial, de l’aéronautique et de l’automotive.
Modules et IP
Pour des modules complets, nos ingénieurs spécifient les modules et réalisent le développement RTL en VHDL ou Verilog
SoC et sous-système
Nous définissons l’architecture et la spécification du système et pouvons réaliser la modélisation en SystemC / TLM. En fonction des spécifications du système, nous réalisons le top level du design, l’interconnect, nous intégrons la gestion de puissance.
FPGA
Basé sur des architectures Xilinx, Microsemi ou encore Intel, nos équipes réalisent pour vous le partitionnement hardware/software du système, le bitstream et la carte de prototypage.
ASIC (Circuits intégrés)
Nous développons le RTL de votre design, nous réalisons la simulation, la synthèse et son placement/routage.
Une question au sujet du développement ?
Étape 05
Vérification & Validation
En parallèle à la conception de systèmes, il faut assurer l’adéquation entre la spécification et le design. Pour cela, on utilise des outils et méthodologies de vérification et de validation du design.
Afin de réaliser la vérification de votre système, nos équipes projet ont mis en place des process de vérification basés sur :
- Assertion Based Verification / Vérification Formelle
- Coverage / Metrics Driven / UVM
- Graph Based Verification / Portable Stimulus / Vérification Systèmes
- Intégration continue
- Test plan basé sur les exigences projet
Ces process prennent en compte toutes les étapes du cycle en V afin d’obtenir un service efficace et structuré.
La vérification de votre SoC, FPGA ou tout autre design se fait grâce à l’analyse de vos spécifications. Pour cela, nous analysons les spécifications du design, ses objectifs (Design Objective Specification) ainsi que l’architecture telle que spécifiée dans la documentation. Nous intégrons les demandes de modification au fur et à mesure. Le projet est géré dans un outil de gestion de versions.
A partir de là, nous prenons en charge la vérification complète du système.
Nos ingénieurs vérifient notamment l’implémentation et la comparent à l’attendu. Le process est réitéré en fonction des modifications de spécifications. Afin de réaliser la vérification de votre système, nous utilisons des outils et langages de programmation adaptés. Parmi ceux-ci nous avons notamment SystemVerilog / UVM, Specman, VHDL / Verilog / SystemC ainsi que Python / Perl (cocotb / Python-UVM) pour les tests unitaires et d’intégration.
AEDVICES développe et fournit des IP de vérification de qualité (VIP). Conçus avec un débogage complet, une couverture fonctionnelle complète et des vérificateurs de protocole complets, nos VIPs vous permettront d’optimiser vos tâches de vérification et d’accélérer votre processus de vérification.
Basés sur SystemVerilog et UVM, nos VIPs s’intègrent totalement dans votre flux SystemVerilog/UVM selon un flot d’intégration et de compilation natif et simple. Nous fournissons également des procédures Verilog faciles à utiliser afin que même les concepteurs puissent utiliser nos VIP pour des tests dirigés.
Nos VIP accéléreront vos tâches de vérification dans les domaines du Network-On-Chip, de la cohérence du cache, des protocoles de bus embarqués de SoC ainsi que des protocoles d’E/S de SoC.
- Nos VIP sont fournis avec leur code source. Ils sont entièrement disponibles et réutilisables. Vous pourrez ainsi par la suite les adapter en fonction de vos prochains développements.
- Ils sont compatibles avec SystemVerilog et UVM
- Ce sont des IP de vérification basés sur vos besoins et donc personnalisés
- On-Chip-Bus
- AXI 3 & 4, AXI-ACE, CHI, ATB
- APB, AHB
- Generic SPI, Quad-SPI, UART
- Generic NoC Verification IP
Notre framework de vérification est une infrastructure conçue pour intégrer la vérification de votre système entier. Il gère les régressions de chaque sous-blocs et du système complet.
Le framework s’intègre dans votre système. Il permet une utilisation rapide et efficace des outils de vérification inclus dans le développement.
Étape 06
Exécution
AEDVICES adopte une méthode de gestion de projet agile. Pour répondre aux contraintes liées à la vérification des systèmes critiques, nous mettons en place une documentation ainsi qu’une traçabilité des tests réalisés. Vous obtenez un rapport de suivi qui permet de vérifier l’adéquation avec vos KPIs.
Étape 07
Livrables
Plusieurs documents sont fournis au cours et à l’issue du projet.
Dans le cadre de projets agiles, des livrables intermédiaires sont fournis en fonction des sprints agiles ou en fonction de vos attentes.
Ces documents qui sont essentiels pour le suivi du projet comportent :
1
Les archives du projet pour que vos équipes techniques puissent reprendre le projet et l’intégrer dans vos produits.
2
Les rapports de tests qui attestent que ceux-ci ont été réalisés, avec une identification des bugs et recherche de correction.
3
Les rapports de couverture : ils donnent accès aux taux de couverture des tests.
En cas de modification ultérieure du projet, ces livrables vous permettront de venir tester au maximum ces changements.
Au final, vous obtiendrez tous les documents relatifs à la vérification : plan de vérification, rapport de statuts, rapport final. Nous vous fournissons également le rapport de bugs et des conseils d’amélioration d’architecture.
KVCA : L’évaluation de votre processus de vérification
Aedvices propose une évaluation du process de vérification dans votre entreprise : le Key Verification Capability Assessment.
Peut-être avez-vous déjà des ingénieurs vérification dans votre équipe. Ils ont alors certainement mis en place un process de vérification. Aedvices étudie et analyse ce processus afin de vous aider à l’améliorer.
Pour cela, nous opérons sur plusieurs aspects :
- Analyse du processus : du plan de vérification au rapport final, comment s’enchainent concrètement les différentes étapes de la gestion votre projet ?
- Analyse des interactions équipes, métiers : chef de projet, ingénieurs design et vérification, qui sont les intervenants dans votre projet ? quelles interactions ont-ils ? quels biais cela implique-t-il ? Leurs connaissances permettent-elles une optimisation de votre process de vérification ?
- Evaluation des approches utilisées au regard du secteur d’activités : Votre plan de vérification prend-il en compte les spécificités imposées par les normes ? Votre démarche est-elle basée sur les aspects fonctionnels ? Intégrez-vous la notion de traçabilité et de métriques dans votre processus ?
- Revue des environnements de vérification existants. Nous passons en revue la facilité d’accès de vos environnements, leur factorisation et réutilisation ainsi que la mise en œuvre des critères de validation des tests.