Chapitre 1 : Introduction aux méthodologies de conception et de vérification pour SE



Documents pareils
Les systèmes embarqués Introduction. Richard Grisel Professeur des Universités Université de Rouen Nacer Abouchi Professeur ESCPE Lyon

ÉCOLE POLYTECHNIQUE DE MONTRÉAL. Département de Génie Électrique. La technologie de TEXAS INSTRUMENTS DSP pour le cours Analyse des Signaux ELE2700

Thème 3 Conception et vérification d architectures de systèmes sur puce

Sur un ordinateur portable ou un All-in-One tactile, la plupart des éléments mentionnés précédemment sont regroupés. 10) 11)

1 Architecture du cœur ARM Cortex M3. Le cœur ARM Cortex M3 sera présenté en classe à partir des éléments suivants :

Profil UML pour TLM: contribution à la formalisation et à l automatisation du flot de conception et vérification des systèmes-sur-puce.

Modélisation des interfaces matériel/logiciel

Conception et Intégration de Systèmes Critiques

Introduction aux systèmes temps réel. Iulian Ober IRIT

Structure de base d un ordinateur

Leçon 1 : Les principaux composants d un ordinateur

Vers du matériel libre

CH.3 SYSTÈMES D'EXPLOITATION

Robert Guichet. Conférence DERBI Juin 2008

Gestion de mémoire secondaire F. Boyer, Laboratoire Sardes

NOTRE OFFRE GLOBALE STAGES INTER-ENTREPRISES

Introduction à l informatique temps réel Pierre-Yves Duval (cppm)

Une méthode de conception de systèmes sur puce

2015 // des formations. programme. Retrouvez toutes ces informations sur enseirb-matmeca.bordeaux-inp.fr

Potentiels de la technologie FPGA dans la conception des systèmes. Avantages des FPGAs pour la conception de systèmes optimisés

THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs

ARTICLE. Dix raisons d acheter une caméra réseau ou ce que votre fournisseur de caméras analogiques ne vous révèlera jamais

Les tablettes. Présentation tablettes Descriptif Fournisseurs Caractéristiques Comparatifs Conseils Perspectives Démonstration

Architecture des Ordinateurs. Partie II:

Découverte de l ordinateur. Partie matérielle

Initiation au HPC - Généralités

Conférence sur les microcontroleurs.

Synergies entre Artisan Studio et outils PLM

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Introduction à l architecture des ordinateurs. Adrien Lebre Décembre 2007

Révision : 6 juin Produits qui ne sont pas assujettis aux écofrais. Catégorie de produits visés. Exemples de produits assujettis aux écofrais

Logiciel de Télégestion

et dépannage de PC Configuration Sophie Lange Guide de formation avec exercices pratiques Préparation à la certification A+

Chapitre II-2 : Conception SoPC (Altera)

A. Elmrabti. To cite this version: HAL Id: tel

Cours Informatique 1. Monsieur SADOUNI Salheddine

CONTEC CO., LTD. Novembre 2010

Glossaire technique Veditec

Un ordinateur, c est quoi?

Spécifications détaillées

Hardware dependant Software design

Teste et mesure vos réseaux et vos applicatifs en toute indépendance

Software and Hardware Datasheet / Fiche technique du logiciel et du matériel

Choix d'un serveur. Choix 1 : HP ProLiant DL380 G7 Base - Xeon E GHz

Axis IP-Surveillance. Solutions de vidéo sur IP professionnelles pour la sécurité, la vidéosurveillance et le contrôle à distance

Twincat PLC Temperature Controller. Régulation de Température à l aide de TwinCAT PLC.

GPA770 Microélectronique appliquée Exercices série A

Les 100 incontournables dans le domaine des technologies! Décembre 2011

Wobe.

Les solutions National Instruments pour le Model In-The-Loop (MIL) et le prototypage rapide (RCP)

1. Smart Energy Management System (SEMS)

ATELIERS DE FORMATION TECHNICIEN DE MAINTENANCE INFORMATIQUE

Cours 3 : L'ordinateur

Premiers pas sur l ordinateur Support d initiation

La copie sur support papier à usage privé est autorisée conformément à l article L122-5 du Code de la Propriété Intellectuelle.

Exécution des instructions machine

ERP Service Negoce. Pré-requis CEGID Business version sur Plate-forme Windows. Mise à jour Novembre 2009

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

Cours Bases de données

MODULE I1. Plan. Introduction. Introduction. Historique. Historique avant R&T 1ère année. Sylvain MERCHEZ

Base de l'informatique. Généralité et Architecture Le système d'exploitation Les logiciels Le réseau et l'extérieur (WEB)

La Certification de la Sécurité des Automatismes de METEOR

Présentation du module Base de données spatio-temporelles

DVCAM de Sony Choisissez le format DVCAM, pour sa qualité et sa durabilité

Hiérarchie matériel dans le monde informatique. Architecture d ordinateur : introduction. Hiérarchie matériel dans le monde informatique

Windows 7 - Installation du client

Electron S.R.L. SERIE B46 - SYSTEMES DIDACTIQUES DE TELEPHONIE

UNIVERSITE D'ORLEANS ISSOUDUN CHATEAUROUX

Version de novembre 2012, valable jusqu en avril 2013

Robot WIFIBOT Lab V3. 4 roues motrices

Alchin Couderc Flambard TBSEID 2

PRESENTATION RESSOURCES. Christian Dupaty BTS Systèmes Numériques Lycée Fourcade Gardanne Académie d Aix Marseille

Pré-requis techniques

Architecture des ordinateurs Introduction à l informatique

Implémentation Matérielle des Services d un RTOS sur Circuit Reconfigurable

Cours n 12. Technologies WAN 2nd partie

UNIVERSITÉ DE MONTRÉAL ANALYSE DE PERFORMANCE MULTI-NIVEAU ET PARTIONNEMENT D APPLICATION RADIO SUR UNE PLATEFORME MULTIPROCESSEUR

L ORDINATEUR. Les composants. La carte mère. Le processeur. Fréquence

INTRODUCTION À L INFORMATIQUE

11 Février 2014 Paris nidays.fr. france.ni.com

LE MICRO ORDINATEUR. Introduction Architecture Les supports amovibles Les composants Le système d exploitation Les portables

La communication et la gestion de l'information

Triphasé 400 V kw. Variateur multifonction haute performance

Tout ce que vous avez toujours voulu savoir sur SAP HANA. Sans avoir jamais osé le demander

Modélisation de la Reconfiguration Dynamique appliquée à un décodeur LDPC Non Binaire

Pierre De Dobbeleer. Spécialiste Project Management, Electronique, Réseaux et télécommunications

Matériel & Logiciels (Hardware & Software)

Conception de Systèmes de Communications Numériques

Guide de mise à niveau pas à pas vers Windows 8 CONFIDENTIEL 1/53

JOG : une approche haut niveau des systèmes embarqués via Armadeus et Java

Catalogue des stages Ercom 2013

Disponibilité et fiabilité des services et des systèmes

Systeme d alarme intrusion mixte. i-on40. La Sécurité Partagée

Le génie logiciel. maintenance de logiciels.

Electron MECATRONIQUE. S.r.l. Educational Equipment Design, Production & Trading. Member of I.D.E.A. International Didactic Equipment Association

Informatique UE 102. Jean-Yves Antoine. Architecture des ordinateurs et Algorithmique de base. UFR Sciences et Techniques Licence S&T 1ère année

Scanner de microfilms i7300. Des archives de

AOLbox. Partage de disque dur Guide d utilisation. Partage de disque dur Guide d utilisation 1

Transcription:

Chapitre 1 : Introduction aux méthodologies de conception et de vérification pour SE 1. Rappel de ce qu est un SE 2. Conception au niveau système (ESL) Méthodologie de conception (codesign logiciel/matériel) Synthèse C à RTL Méthodologie de vérification (fonctionnelle) 1

Système embarqué Systèmes logiciel-matériel servant à résoudre des fonctions et des tâches spécifiques et limitées Opposé à un ordinateur tout usage (general purpose) Embarqué (ou dédié) dans le sens où il fait parti d un système complet qui n est pas nécessairement un ordinateur. Souvent il existe dans une application sans qu on ne le sache vraiment. 2

Une courte liste de systèmes embarqués Freins ABS Caméras numériques Guichets automatiques Système de péage automatique Transmission automatique Systèmes avioniques Chargeurs de piles Caméras vidéo numériques Téléphones cellulaires Téléphones sans file Régulateur de vitesse Disques durs Lecteurs de cartes bancaires Instrumentation électronique Jouets électroniques Télécopieurs écop Identification d empreintes digitales Systèmes d alarmes domestiques Dispositifs médicaux Agendas électroniques Modems Décodeurs MPEG Cartes réseau Commutateurs Systèmes de navigation (GPS) Téléavertisseurs Photocopieurs Jeux vidéos Imprimantes Téléphones satellites Numérisateurs (scanners) Fours micro-ondes Lave-vaisselle Reconnaissance de voix Stéréo Téléconférence éco é ce Téléviseurs Systèmes de chauffage Magnétoscopes et lecteurs DVD Électroménagers Odi Ordinateurs de poches 3

4

Composition d un système embarqué Une partie matérielle utilisée pour la performance Micro-processeur, contrôleurs, coprocesseurs, DSP Mémoires ASIC Interfaces d entrées/sorties Une partie logicielle utilisée pour sa flexibilité Programmes Software Program 5

Contraintes des systèmes embarqués Métriques de conception principales Puissance dissipée Taille Coûts de production et coûts non récurrents Fiabilité Temps de commercialisation (time to market) D autres contraintes existent: tolérance aux pannes, résistance aux chocs et températures, BIST Flexibilité et mises-à-jour Souvent utilisés dans un environnement réactif soumis à des contraintes temps réel. Nécessitent des systèmes haute performance 6

Système sur puce (SoC) Un SoC constitue un circuit complexe qui intègre tous les éléments fonctionnels d un produit sur une même puce. Par exemple, des modules logiciels (DSP), des mémoires, des périphériques, des coprocesseurs matériels (FPGA ou ASIC) et même des modules analogiques ou optoélectroniques tél t peuvent ttous être mis sur un même dé. L objectif est diminuer au minimum le nombre de composants sur une carte pour mettre tout sur une seule puce. 7

Exemple de SoC SDRAM(16Mbits ) Y/C H/V/CLK Y 8bit C 8bit ASB Control Arbiter ADDR: 12bit DATA: 16bit SDRAM Controller for Capture ARM I/F SDRAM Controller Register setting ARM Peripheral Y 8bit C 8bit Y/C H/V Processeur ARM7 Logique dédiée DCT Contrôleur USB Decoder Remap TIC DCT Engine Timer JTAG ARM7TDMI DMA Wrapper DMA DCT RAM DCT RAM 1KByte DCT Quantize/Zigzag Interrupt PIO UART Interrupt 2port P IO 8bit X 2port SIO 1ch 24MHz SCAN to S DRAMC DCT USB PLL PLL SRAM (32KByte) 40MHz for ARM 48MHz for USB ASB Memory Expansion ADDR: 32bit DATA: 32bit ADDR: 31bit DATA: 32bit APB Bridge ASB Control APB ADDR: 32bit DATA: 16bit USB USB EPROM External Bus I/F ASB : AMBA System Bus APB : AMBA Peripheral Bus Sony Digital Camera SOC 8

Qu est-ce que l ESL? ESL D&V

Qu est-ce que l ESL? Des plates-formes multifonction Qui demandent de plus en plus de logiciel et encore plus! et plus et plus SoC (4 processors) Les SoC ont besoin de méthodologies! 10

Approche conventionnelle SOFTWARE FLOW SOFTWARE DESIGN & TEST SYSTEM SPECS PARTITION & PLAN HARDWARE FLOW HARDWARE DESIGN ENTRY/CAPTURE (RTL) SIMULATION FUNCTIONAL RTL TO GATE/ DATAPATH SYNTHESIS (TIMING/ POWER/ TEST INSERTION) FUNCTIONAL TIMING FUNCTIONAL TIMING VERIFICATION PROTOTYPE PHYSICAL DESIGN/ LAYOUT VERIFICATION RULE CHECKS

Codesign logiciel/matériel Simulation Simulation à haut niveau Estimateurs Raffinement du matériel Synthèse matérielle Synthèse des communications Capture de la spécification Partitionnement logiciel matériel Co-simulation et co-vérification Prototypage ou implantation finale Raffinement du logiciel Synthèse logicielle Simulation Vérification formelle ou fonctionnelle Les quatre étapes importantes d une méthode de codesign 12

Flôt de codesign plus détaillé

Modèles plus abstraits que le RTL

Exemple d abstractions

Exploration architecturale Préconise une approche en Y (paradigme): 16

Approche en Y (autre façon de visualiser) 17

Méthodologie de codesign plus complète 1 18 1. Tiré de System-Level Design Techniques for Energy-Efficient Embeded Systems, M. T. Schmitz, B. M. Al-Hashimi, P. Eles, Kluwer, 2004.

Design Space Exploration 19

Allocation des ressources 20

Allocation des ressources (suite) N.B. Tiré de http://www.ida.liu.se/~petel/codesign/ 21

Mapping (équivalent au partitionnement L/M) 22

Partitionnement L/M On partitionne les comportements, on simule, puis on implante la structure en fonction des meilleurs résultats Minimise le nombre d objets à traiter Les objets sont fonctionnels le matériel devient une structure logique, le logiciel sera compilé Spécifications exécutables avec le même langage g facilitent le développement d outils qui serviront à simuler les partitions estimer les performances partitionnement automatique (idéalement) Le profilage est disponible pour une analyse préliminaire i i 23

Partitionnement L/M (détails) Number of times a BB is excuted Number of times Ti and Tj communicates Sw size (data, program, register) Hw execution time Sw execution time Hw area Communication latency between Ti and Tj Tiré de M. Lopez-Vallejo, On the H-S Partitioning Problem:System Modeling and Partitioning Techniques, ACM Trans. On Design Automation of Electronic Systems, Juillet 2003. 24

Mapping (suite) 25

Ordonnancement 26

Ordonnancement (suite) 27

Gestion de l énergie Technique DPM: On met à off les composants lorsque le idle est suffisamment long Technique DVS: On utilise le idle et le slack pour dimunuer la fréquence et le voltage. La tâche prend donc plus de temps à s exécuter mais le temps total pour toute l application reste inchangé. 28

Synthèse du matériel Réf. HLS from Algorithm to Digital Circuit, Chap.3, Springer 29

Synthèse (compilation) du logicielle 30

La vérification 31

Flôt de vérification La vérification fonctionnelle compare un modèle, qui constitue une réalisation de la spécification, avec sa spécification (Bergeron 2003b, Bergeron 2000b) Spécification Simulation Banc d essai Transformation Comparaison MODÈLE SOUS VÉRIFICATION Réalisation Vérification dynamique 32

SCV 33

Architecture vs design vs vérification 34

Testbench par couches 35

Approche en couche OVM 36

Approche en couche OVM 37

Approche en couche OVM 38

Pourquoi générer aléatoirement 39

Couverture Il existe la couverture fonctionnelle et structurelle On va surtout s intéresser à la vérification fonctionnelle: On débute par un plan de vérification (modèle de couverture). On va échantillonner des variables et expressions dans cette couverture 40

Couverture fonctionnelle 41

Couverture fonctionnelle 42

Assertion Assertion: permet la détection d un comportement non souhaitable Exemple pour un FIFO: 43

Défis Défis actuels dans le domaine de la vérification fonctionnelle Réduire temps conception des bancs d essai Réduire temps vérification Améliorer la qualité de la vérification Intégrer nouveaux standards et nouvelles pratiques Maximiser la concurrence conception/vérification Réutilisation 44

Vérification vs TLM La vérification dynamique d un circuit requière l utilisation de métrique pour obtenir une mesure d avancement de la vérification Cependant, l application de métrique complexe sur un système matériel complexe mène au problème d explosion combinatoire Une solution connu est d appliquer une métrique sur une abstraction du système, i.e. une spécification exécutable de haut-niveau. 45

Vérification vs C/C++ Réf. HLS from Algorithm to Digital Circuit, Chap.3, Springer 46

Vérification vs TLM 47

Vérification vs TLM On veut appliquer une métrique fonctionnelle sur une spécification exécutable de façon systématique Le but est en fait de créer un Module d Analyse de la Couverture (MAC) qui servira à évaluer l efficacité d une suite de test 48

Exemple: commutateur ATM Une suite de tests a été développé en utilisant le MAC en utilisant le MAC, nous obtenons un taux de couverture de 100%: - Pour une génération complètement pseudo-aléatoire: 708 transactions - En travaillant avec le MAC: 229 transactions 100 Test 3 Test 2 Test 1 80 Taux de Couverture 60 40 20 0 0 100 200 300 400 500 600 700 Transactions appliquées Sébastien Regimbal, École Polytechnique de Montréal

En résumé Approche proposée p par ESL D&V : Dans le cours on va s intéresser aux points 2à6 50