GELE5343 Chapitre 1 : Introduction aux systèmes à microprocesseurs Gabriel Cormier, Ph.D., ing. Université de Moncton Hiver 2013 Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 1 / 26
Introduction Contenu 1 Introduction 2 Définition 3 Marché 4 Caractéristiques 5 PIC32 Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 2 / 26
Définition Système embarqué Dispositif contenant un microprocesseur Parfois invisible à l utilisateur Pas nécessaire d avoir un système à la fine pointe Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 3 / 26
Définition Système embarqué Utile pour : Flexibilité : plus facile à modifier le logiciel (software) que le matériel (hardware) Plus facile à corriger les erreurs Permet d ajouter de la fonctionnalité plus tard (peut être une source de revenus) Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 4 / 26
Définition Exemples Sonicare Elite : Brosse à dent électrique (8 bit) Imprimantes Carte de contrôle de disque dur Automobiles, avions Caméra numérique Santé : pacemaker, équipement de diagnostique Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 5 / 26
Marché Marché Selon certains estimés : 100 fois plus de microcontrôleurs vendus que de microprocesseurs de PC Marché de gros volume, mais moins grand revenus Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 6 / 26
Marché Marché des microprocesseurs en 2002 100% 90% 80% 70% 60% 50% 40% 30% 20% 10% 0% Volume Dollars 32-Bit 16-Bit 8-Bit 4-Bit DSP Marché en 2002 Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 7 / 26
Marché Marché des microprocesseurs en 2006 Type 64-Bit 32-Bit 16-Bit 8-Bit 4-Bit 0% 10% 20% 30% 40% 50% 60% Marché en 2006 Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 8 / 26
Marché Marché des microprocesseurs en 2012 PART DU MARCHÉ DES MICROPROCESSEURS, 2012 (73.8 G$) DSP; 7% 4/8 bit; 6% 16 bit; 7% 32 bit; 10% MPU; 70% Source : IC Insights Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 9 / 26
Marché Marché des microprocesseurs en 2011 Marché des microcontrolleurs (M$) 25000 20000 15000 10000 5000 0 2005 2010 2011 2016 4/8 bit 16 bit 32 bit Source : IC Insights Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 10 / 26
Marché Langage de programmation des microprocesseurs en 2006 Autres Assembleur Java C# C++ C 0% 10% 20% 30% 40% 50% 60% 70% Langages de programmation en 2006 Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 11 / 26
Marché Langage de programmation des microprocesseurs en 2011 Autres Assembleur Java.NET C++ C 0% 10% 20% 30% 40% 50% 60% 70% Source : Embedded.com Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 12 / 26
Marché Croissance prévue du marché 2011 2016 Consommateur Ordinateur Gov./Mil. Industriel Total Automobile Communications Source : IC Insights 0.0% 2.0% 4.0% 6.0% 8.0% 10.0% 12.0% 14.0% 16.0% Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 13 / 26
Marché Vendeurs principaux en 2011 Entreprise Rang 2011 Marché % changement de 2010 Renesas Electronics 1 17.3% -1% Freescale Semiconductor 2 10.1% 4% Atmel 3 7.4% 25% Microchip 4 6.7% 6% Infineon 5 6.6% 18% Texas Instruments 6 5.5% 4% Fujitsu 7 5.5% -17% NXP Semiconductors 8 4.8% -2% ST Microlectronics 9 4.4% -3% Samsung 10 3.4% -1% Autres 28.4% 2% Source : Databeans Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 14 / 26
Caractéristiques Microcontrôleurs : Caractéristiques Très souvent des systèmes à temps réel Contraintes de minutage très importantes Deux catégories : Critique et non critique Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 15 / 26
Caractéristiques Systèmes critiques Défaillance peut être catastrophique : freins dans voiture, système de coussins gonflables, stimulateur cardiaque, etc. Le microprocesseur doit détecter correctement les entrées et appliquer la sortie appropriée selon le délai prescrit. Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 16 / 26
Caractéristiques Systèmes non critiques Système où la défaillance n est pas catastrophique Erreurs de minutage ou de fonctionnement pas critiques Ex : lecteur MP3 Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 17 / 26
Caractéristiques Autres caractéristiques Auto-démarrage Horloge de surveillance Coût Fiabilité Consommation de puissance Performance Design et développement Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 18 / 26
Caractéristiques Design et développement Généralement, à base d événements Communiqués au processeur par des interruptions (interrupt) Doit gérer ces interruptions (ex : plus d un en même temps) ; priorités Contrôle des exceptions (ex : division par zéro?) Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 19 / 26
Caractéristiques Design et développement Généralement, choisir le microcontrôleur le moins cher qui fait le travail. Ne pas négliger l expérience avec un manufacturier Vérifier si du code peut être réutilisé Vérifier la facilité et coût des outils de développement Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 20 / 26
Caractéristiques Design et développement Souvent, les microcontrôleurs n ont pas de système d exploitation (operating system) Si oui, c est un système d exploitation en temps réel (SETR ou RTOS) Réagit à des événements de façon consistante (délai toujours le même) Pas comme Windows qui vous dit d attendre! Quelques exemples : INTEGRITY LynxOS OSE Windows CE Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 21 / 26
Caractéristiques Erreur logicielles catastrophiques Attention aux erreurs logiciels Therac-25 (1985 1987) : quelques patients morts à cause de doses massives de radiation, due à une mauvaise séquence de clavier dans un intervalle de 8 s lors de traitements pour le cancer. Ariane 5 - vol 501 (1996) : fusée et satellite de 500M$ détruit à cause d erreur de conversion d une valeur 64 bit virgule flottante à 16 bit entier (overflow ou dépassement). Phobos 1 (1998) : code de débogage a été activé par erreur de 1 caractère, et la sonde n a pas pu recharger ses batteries et a été perdue. Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 22 / 26
Caractéristiques Erreur logicielles catastrophiques Apollo 11 (1969) : Armstrong a été forcé de faire un atterrissage manuel à cause d une erreur dans le manuel. Missile Patriot (1991) : Un missile Patriot n a pas intercepté un Scud irakien causant la mort de 28 personnes, due à une erreur d arrondissement de 1/10 11. Le système n était pas conçu pour opérer continuellement, et l erreur d arrondissement s est multipliée et a causé une erreur de minutage. Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 23 / 26
Caractéristiques Manufacturiers AMD : www.amd.com Analog Devices : www.analog.com/processors ARM : www.arm.com/products/cpus/embedded.html (IP) ATMEL : www.atmel.com/products Freescale : www.freescale.com (Motorola) Intel : www.intel.com/design/embedded/solutions Microchip : www.microchip.com (PIC) MIPS : www.mips.com/products/processors (IP) TI : focus.ti.com ZiLOG : www.zilog.com Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 24 / 26
PIC32 PIC32 Caractéristiques : 80 MHz, 1.56 DMIPS/MHz Multiplication en 1 cycle Cache 256 Bytes Contrôleur DMA 8 canaux Convertisseur A/N 10 bit Port parallèle 16 bit pour vidéo (QVGA) USB, Ethernet Unité arithmétique en entier (pas de FPU) 512 KB mémoire, 128KB RAM (PIC32MX460F512L) Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 25 / 26
PIC32 Gabriel Cormier (UdeM) GELE5343 Chapitre 1 Hiver 2013 26 / 26