Technologies des mémoires dans les systèmes embarqués Richard Grisel – Professeur des Universités – Université de Rouen Introduction Mémoire vous avez dit mémoire? Stockage des informations Quel type d’information? Donnés Code opérationnel (programme) Tendances techniques Logiciel plus complexe Conversion Analogique Numérique Nombre d’utilisateurs croissants Problème d’adaptation de bande passante entre la mémoire et le CPU Protocoles plus rapides Demande croissante en systèmes mobiles Interfaces utilisateurs plus grandes (écrans) Applications multimédia en augmentation Conclusion: Besoin en haute densité, en performances accrues, faible consommation, portabilité. Contraintes des systèmes temps réel Densité: Nombre de cellules par surface élémentaire Mise à jour: La mémoire doit pouvoir être mise à jour si nécessaire Performance: Vitesse mémoire suffisante pour les temps de réponse des RTOS Taille: Circuits plus petits avec des capacités de stockage plus grandes Portabilité: Faible consommation, taille réduite Coût: Moins élevés pour la conception et la fabrication Lower L’arbre généalogique Source: http://www.ewh.ieee.org/r9/wpr/computer/Activities2002/memory.htm RAM RAM - Random Access Memory Accès dans n’importe quel ordre Possibilités d’écriture/lecture Volatile ROM ROM – Read Only Memory Lecture seule Non volatile Sécurité contre les changements accidentels (malveillants), les virus (pour les vraies ROM) Applications de base des RAM & ROM ans les systèmes embarqués ROM: Stocke l’OS, les paramètres nécessaires pour l’initialisation du système et son fonctionnement (BIOS) RAM: Information temporaire ou en trée par l’utilisateur (avec ou sans conservation) Technologie des RAM SRAM DRAM FRAM NVRAM MRAM- Upcoming technology Technologie des RAM (suite) SRAM Static Random Access Memory Donnée gardée tant que l’alimentation est présente Constituée de transistors Technologie des RAM (suite) DRAM Dynamic Random Access Memory Nécessite une logique de rafraîchissement Perte de données en cas d’absence de rafraîchissement Un transistor et un condensateur (‘1’ ou ‘0’) Le transistor est utilisé pour la lecture Technologie des RAM (suite) NVRAM: Non-volatile RAM RAM avec une batterie de sauvegarde qui alimente une SRAM faible consommation quand l’alimentation du système est coupée, ce qui donne un fonctionnement comme une ROM (mais reprogrammable) FRAM: Ferroelectric RAM Nouvelle génération de NVRAM qui combine haute peformances et fonctionnement basse consommation et possibilité de conserver l’information sans alimentation Ne nécessite pas de cycles de rafraîchissement. La technologie comprend des cristaux ferroélectriques intégrés à un condensateur. MRAM: Magnetic RAM Méthode de conservation des bits de données en utilisant des charges magnétiques au lieu des charges électriques. DRAM et SRAM Permanence DRAM est dynamique – besoin d’un circuit de rafraîchissement SRAM statique, avec alimentation Complexité: DRAM est plus complexe que la SRAM à cause des circuits de rafraîchissement Vitesse: DRAM est moins rapide que la SRAM Taille: SRAM prend plus de place à cause du nombre de transistors Consommation: DRAM consomme plus Coût: SRAM coûte plus cher que la DRAM Technologie ROM Non-programmable ROM Programmable PROM EPROM EEPROM Flash memory Technologie ROM (suite) PROM: Programmable ROM Peut être programmée (écriture) une fois par un programmateur de PROM EPROM: Erasable Programmable ROM Effacement par ultraviolets et réécriture par un programmateur d’EPROM Une exposition prolongée aux UV détruit le contenu Technologie ROM (suite) EEPROM: Electrically Erasable PROM Contient une mémoire Flash Effacement logiciel Effacement d’un bit à la fois; pas de nécessité d’effacement d’un bloc (contrairement à la mémoire Flash) pour programmer les données Peut être réécrite (“flashed”) sans enlever le circuit Technologie ROM (suite) Flash memory Type d’EEPROM qui utilise des interconnexions internes pour appliquer un champ électrique au circuit ou à certaines parties du circuit (blocs) La taille typique des blocs est de 8Kb à 64 Kb Intel a annoncé des mémoires Flash capable de détruire uniquement 1 bit De manière générale n’ont pas la possibilité de détruire un bit seul ( comme les EEPROM ), la densité est plus forte Ecriture en mot ou en octet Paramètres Type Densité Vitesse Taille Coût Volatile DRAM High Fast Small Cheap Y SRAM Low V. fast Large Costly Y FRAM High Slow Small Cheap N NVRAM Low V. fast V. Large Costly N ROM High V. fast Small Cheap N PROM High V. fast moderate Cheap N EPROM V. high Fast Small Cheap N EEPROM Medium Fast Moderate Cheap N Flash V. high V. fast Large Cheap N Hiérarchie de la mémoire dans les systèmes embarqués Hiérarchie pour les DSP Source: http://www.chipcenter.com/dsp/col004.html Pourquoi faire attention à la hiérarchie mémoire ? L’un des rôles principaux du concepteur de systèmes embarqués est de faire en sorte que tout ce qui est nécessaire soit le plus près possible du CPU (Principe de localité) Cela donne les résultats suivants : Ramener l’information de la mémoire externe dans des mémoires rapides comme les câches Utiliser des techniques telles que l’accès direct mémoire (DMA) Utiliser des techniques architecturales Niveaux de hiérarchie pour la mémoire Mémoire interne (“on-chip”) Les DSP ont de la mémoire “on-chip” (interne) Les instructions comme les données peuvent résider dans la mémoire interne Le DSP peut utiliser la mémoire interne pour améliorer significativement les performances Il y a par exemple une 1M-bit Serial EEPROM/Data FLASH dans le circuit Motorola DSP56852EVM source: http://e-ww.motorola.com/webapp/sps/site/prod_summary.jsp?code=DSP56852EVM Niveaux de hiérarchie (suite) Premier niveau Est constitué par les registres du processeur. Contient les variables temporaires et intermédiaires. Le compilateur utilise ces registres pour l’ordonnancement des instructions. C’est la mémoire la plus rapide et la plus chère Niveaux de hiérarchie (suite) Deuxième niveau C’est le système de cache mémoire Il est aussi rapide (et cher) mais comparativement moins cher que le premier niveau Il est utilisé pour mettre les insructions et les données près du CPU juste avant que les blocs fonctionnels utilisent les données (principe de localité) pour accès rapide aux données utilisées fréquemment ou récemment Le système de cache utilise de la SRAM Niveaux de hiérarchie (suite) Troisième niveau Le troisième niveau est la mémoire “externe” ou “offchip” Il tend à être moins rapide (et moins cher) que les autres types de mémoire C’est l’endroit ou généralement sont sauvegardées les données et instructions non utilisées (stockage à long terme) L’accès à l’information de cette mémoire nécessite plus de “handshake” et de contrôle et donc prend plus de temps Caractéristiques du Motorola DSP56852EVM DSP56852 16-bit +1.8V/+3.3V Fréquence de travail de 120MHz Mémoire RAM statique externe rapide (FSRAM), avec comme configurations: 128K x 16-bit de mémoire avec 1 “wait state” à 120MHz via CS0 128K x 16-bit de mémoire avec 1 wait state à 120MHz via CS1/CS2 1M-bit EEPROM/Data FLASH série Processeur Intel XScale Principales caractéristiques du PXA800F XScale CPU 312-MHz 4MB de flash memory interne 512KB de SRAM. Hiérarchie mémoire: Paramètres du système En se déplacant dans les niveaux croissants de la hiérarchie, onconstate: Densité : Latence : Stockage : Puissance: Vitesse : Coût : Augmente Augmente Augmente Augmente Diminue Diminue Application des types de mémoire SRAM Systèmes rapides ¾ Mémoires cache Stations de travail ¾ DSPs ¾ Système faible puissance ¾ Systèmes portables ¾ Téléphones cellulaires Source: Deep-Submicron CMOS IC’, Harry Veendrick, Kluwer Academic Publishers, Second Edition, ISBN:9040001116 Application des types de mémoire DRAM Grandes séries PC Imprimantes PDAs Processeurs mobiles embarqués Source: Deep-Submicron CMOS IC’, Harry Veendrick, Kluwer Academic Publishers, Second Edition, ISBN:9040001116 Application des types de mémoire FRAM Faible puissance , Remplacement des RAM non-volatiles et des SRAM haute densité Applications sans fil et DSP EPROM Modem Stckage de code ans les mémoires embarqués DSPs Téléphones cellulaires Source: Deep-Submicron CMOS IC’, Harry Veendrick, Kluwer Academic Publishers, Second Edition, ISBN:9040001116 Application des types de mémoire EEPROM Applications mobiles Téléphones cellulaires DSPs “Pagers” Modems Staockage du BIOS Cameras numériques PDAs Source: Deep-Submicron CMOS IC’, Harry Veendrick, Kluwer Academic Publishers, Second Edition, ISBN:9040001116 Application des types de mémoire Flash Téléphones cellulaires numériques DSPs Mémires embarquées Systèmes portables Systèmes de communication Stockage du BIOS Camears numériques Cartes Flash Lecteur MP3 Source: Deep-Submicron CMOS IC’, Harry Veendrick, Kluwer Academic Publishers, Second Edition, ISBN:9040001116 Application des types de mémoire NVRAM Systèmes ou les pertes de puissance ne sont pas autorisées et qui requièrent un accès rapide en lecture et en écriture : ¾ ¾ Systèmes médicaux Aérospatial/ espace Source: Deep-Submicron CMOS IC’, Harry Veendrick, Kluwer Academic Publishers, Second Edition, ISBN:9040001116 Performances et paramètres Nbre de composants par cellule Surface de la cellule Surfac e du circuit Temps de programmation SRAM 6 4-6 4-4.5 10-100 ns DRAM 1.5 1.5 1.5 FRAM 1.5 1.5 ROM 1 PROM Circuit Temps d’accès Temps de rétention Sans alimenta tion Avec alimenta tion 20 – 100 ns 0 ∞ 30 – 100 ns 30 – 100 ns 0 2 ms 1.5 150 – 200 ns 150 – 200 ns > 10 years 1 1 - 10 – 100 ns ∞ 1.5 4 3 10 – 100 ms 5 – 20 ns ∞ EPROM 2.5 4 4 5 - 10 µs 20 – 150 ns > 10 years EEPROM 2.5 4 4 1 – 10 µs per byte 5 – 150 ns = SRAM FLASH 1 1.5 1.5 5 - 10 µs 20 – 150 ns > 10 years NVRAM 9 8 8 = SRAM or = EPROM = SRAM > 10 years Source: Deep-Submicron CMOS IC’, Harry Veendrick, Kluwer Academic Publishers, Second Edition, ISBN:9040001116 Technologies faisant l’objet de recherches MRAM: Magnetic (magneto-resistive) RAM Méthode de stockage utilisant des charges magnétiques plutôt que des charges électriques Les chercheurs définissent un métal comme magnétorésistif si il montre des changements lents de résistance électrique en présence d’un champ magnétique Permet de combiner la vitesse des SRAM et la densité élevée des DRAM Technologies faisant l’objet de recherches Avantages des MRAM Amélioration des produits électroniques par le stockage d’une plus grande quantité de données. Accès plus rapide alors que la consommation est inférieure aux mémoires existantes Rétention de l’information en l’absence de source d’alimentation Le remplacement des DRAM par les MRAM peut prévenir la perte de données et permettre aux systèmes de démarrer instantanément, sans attendre le temps de “boot” du logiciel Technologies faisant l’objet de recherches Future des MRAM: Perspectives industrielles Le laboratoire Motorola indique que sa “mémoire universelle" permet l’intégration de plusieurs options mémoire dans un seul circuit, avec une consommation plus faible Le circuit est un circuit MRAM alimenté en 3 Volts avec un temps d’accès d’environ 15 ns. IBM, Motorola, Honeywell, Hewlett-Packard, Fujitsu, Toshiba, Hitachi, et Siemens conduisent des recherches sur les MRAM Les premiers téléphones portables intégrant cette mémoire devraient apparaître à la fin 2005, certains périphériques d'informatique embarquée ou d'ordinateurs portables en 2006, et les appareils multimédia comme les lecteurs MP3 ou encore les appareils photo et/ou vidéo pas avant 2007. . Technologies faisant l’objet de recherches L’exemple de Motorola Motorola Inc.'s Semiconductor Products Sector (SPS) et Motorola Labs ont sorti la première MRAM 1 Mo (2004) Cette MRAM est basée sur une cellule mémoire à un seul transistor (1T) et une seule Jonction Tunnel Magnétique (MTJ), avec temps de cycle (lecture/écriture) de moins de 50 ns Organisée en 64K x 16, elle est réalisée en technologie CMOS de 0,6µ et fabriquée sur un substrat de 200 mm avec des interconnexions en cuivre Source: EETimes (www.eetimes.com) Technologies faisant l’objet de recherches Mémoire moléculaire Mémoire à changement de phase Nano-Mémoire à grille flottante Mémoire à simple/(quelques) électrons