Rôle des mémoires dans les systèmes électroniques

Le marché des mémoires a connu un essor exceptionnel au cours des dernières décennies. Sa réussite est à l’origine de sa capacité à répondre aux attentes des circuits intégrés électroniques comme les processeurs, les ASIC (Application Specific Integrated Circuit) ou encore les circuits logiques programmables. La technologie mémoire est un élément central de ces systèmes. Aujourd’hui, la mémoire « idéale » qui combine à la fois une endurance infinie, une densité élevée, une grande vitesse avec une consommation faible n’existe pas. Les technologies actuelles reposent sur un compromis entre ces différentes performances au regard de l’application. Deux caractéristiques s’opposent généralement : le temps d’accès et la densité. Au-delà des problématiques de miniaturisation, la consommation énergétique des mémoires occupe une part de plus en plus importante dans la consommation globale des puces. Pour diminuer cette consommation, de nouvelles technologies de mémoires intégrent depuis peu le marché des semiconducteurs. Parmi ces mémoires, la mémoire MRAM (Magnetic RAM) passe de simple « candidat potentiel » il y a quelques années à des mémoires fabriquées par de grandes industries, aujourd’hui disponibles sur le marché, suscitant un fort intérêt général dans le monde industriel et académique de la microélectronique.

Rôle des mémoires dans les systèmes électroniques

Au sein de l’unité de calcul d’un système électronique, le choix technologique des mémoires est un élément clef. Les caractéristiques et les performances des mémoires ont un impact capital sur le fonctionnement intrinsèque du système. Aujourd’hui, la mémoire idéale, autrement dit la mémoire qui combine à la fois une endurance infinie, une densité élevée, une consommation réduite, un coût très faible avec une vitesse assez importante n’existe pas. C’est pourquoi les technologies actuelles reposent sur un compromis entre ces différentes performances au regard de l’application visée. La solution est donc de ne pas se limiter à une technologie de mémoire mais d’adopter plutôt une hiérarchie de mémoire de façon bien définie.

Classiquement, un système informatique est formé d’une unité de calcul (tel que le processeur, ALU pour Arithmetic Logic Unit), qui va réaliser toutes les opérations et gérer toutes les tâches. Cette unité communique également avec des mémoires adjacentes où les données sont stockées afin de réaliser les opérations nécessaires. Les mémoires, opérant en lien direct avec le processeur, devraient donc avoir un temps d’accès très court afin d’assurer la rapidité de la communication.

Globalement, l’unité de calcul utilise des registres composés principalement de bascules de mémorisation type SRAM (pour Static Random Access Memory) pour sauvegarder les données nécessaires au calcul à un instant donné avec un temps d’accès < 1 ns[15]. Les mémoires de type cache de niveau 1, très rapides, et de niveaux 2 et 3, sont également des SRAMs avec un temps d’accès d’environ 1 et 10 ns respectivement. Aujourd’hui, la SRAM est la mémoire la plus rapide. Son architecture repose sur 6 transistors pour sauvegarder 1 bit de donnée, ce qui rend cette cellule gourmande en surface.

La mémoire centrale est une mémoire DRAM (pour Dynamic Random Access Memory) constituée d’un transistor et d’un condensateur pour sauvegarder 1 bit. Cette technologie de mémoire est la solution la plus bénéfique en densité avec un faible coût pour le stockage haute densité. En revanche, elle est moins rapide que la SRAM avec un temps d’accès d’environ 60 ns [16]. Etant donné que les condensateurs se déchargent, une DRAM nécessite un rafraîchissement régulier des données d’environ 15 ns pour sauvegarder l’information[17]. Ces deux types de mémoires SRAM et DRAM sont volatiles, ce qui signifie qu’elles perdent leurs données en cas de coupure de l’alimentation électrique. On note enfin les mémoires de stockage des disques durs ou des mémoires Flash (SSD : Solid State Device) qui utilisent un transistor MOS possédant une grille flottante. Ces mémoires sont extrêmement denses, mais très lentes avec un temps t’accès > 50 ns et une endurance limitée[18]. Contrairement aux mémoires SRAMs et DRAMs, ces mémoires sont non-volatiles, permettant de conserver l’information même en l’absence de l’alimentation [19]. Ces caractéristiques nous permettent d’observer qu’il est en général nécessaire de combiner plusieurs types de mémoires dans une hiérarchie permettant d’associer toutes les performances.  plus on a besoin de mémoires rapides et peu denses, ne contenant que les données nécessaires au calcul. Au contraire, plus on est loin, les mémoires sont plus lentes mais avec une grande capacité de stockage. Cette hiérarchie est générique et souvent utilisée pour des applications haute performance. C’est pourquoi, pour des applications spécifiques de type IoT (Internet of Things) ou capteurs par exemple, la hiérarchie de mémoire est souvent modifiée.

Limitation des solutions actuelles

Au vu des besoins mémoires à l’échelle industrielle, les principaux critères d’une mémoire performante sont liés au type d’application où elle sera intégrée. On note parmi ces critères :
• Le coût de fabrication
• Le temps d’accès et le temps d’écriture : temps nécessaire pour sauvegarder un état ou une donnée
• L’énergie consommée (qui dépend en particulier des tensions et des courants appliqués liée à leur latence)
• La durée de rétention des données
• L’endurance, soit la capacité de maintenir dans le temps un état
• La compréhension des phénomènes physiques
• La miniaturisation, c’est à dire la portabilité vers un nœud technologique avancé .

Jusqu’à présent, chacune des technologies citées précédemment est confrontée à des défis technologiques variés. La taille importante des SRAMs, et les courants de fuite des capacités des DRAMs qui réduisent la rétention et qui exigent un rafraîchissement régulier de ces mémoires, restent un vrai challenge. En outre, la limitation majeure de ces mémoires est la volatilité, ce qui augmente potentiellement la consommation statique du système. Parmi les mémoires non volatiles, la technologie flash,inventée dans les années 1980[2], continue de dominer le marché. En fait, pour des cellules de petites dimensions, des limitations électriques se présentent telles que la réduction du nombre d’électrons stockés pour sauvegarder l’information ainsi que la fiabilité. Cette dernière diminue lorsque la taille de la cellule diminue [2]. Enfin, la programmation de ces mémoires exige une tension de l’ordre 3.5 à 10 V, ce qui augmente forcément la consommation totale ainsi que la surface, car des blocs spécifiques sont rajoutées afin de génerer ces tensions.

Vis- à -vis de ces limitations, changer le mode de stockage de l’information est devenu une préoccupation prépondérante. Le but est d’intégrer ces mémoires alternatives ou « émergentes » dans les systèmes embarqués pour des nœuds technologiques avancés.

Les mémoires émergentes non volatiles

Les mémoires émergentes non volatiles sont en développement depuis 15 ans avec l’objectif de prendre le relais des mémoires actuelles citées ci-dessus. Selon le cabinet Yole Développement, les technologies émergentes décollent enfin avec un marché qui devrait dépasser 1 milliard de dollars en 2019 et 7 milliards de dollars en 2023 [20]. Le développement de ces mémoires met en jeu différents principes physiques (magnétorésistance, ferroélectricité, …) qui permettent de stocker l’information selon un état distinct de la résistance de la cellule. Ces nouvelles technologies ne s’appuient plus sur le stockage des charges. Les données sont plutôt représentées sous la forme d’un état de résistance selon le phénomène physique adopté.

Nous présentons par la suite les technologies mémoires les plus étudiées actuellement, qui offrent au système différentes opportunités et couvrent un large spectre des applications dans le marché industriel.

Mémoires à changement de phase (PCRAM)

Les mémoires PCRAM pour Phase Change RAM, sont parmi les technologies les plus prometteuses pour les futures générations de mémoires non volatiles. La structure de base de la PCRAM  où l’information est stockée sous forme de phase soit amorphe soit cristalline d’un matériau de type chalcogénure [21]. Ces deux états représentent donc deux résistances distinctes ce qui les différencie du point de vue électrique. Si le point mémoire est amorphe, la résistance est forte et le bit sauvegardé est à ’0’ logique alors que si le point mémoire est cristallisé, la résistance est faible et le bit est à ’1’ logique. Les transitions de phase s’effectuent grâce à une élévation locale de la température obtenue par effet Joule permettant soit la cristallisation du chalcogénure soit son amorphisation en fonction de signaux électriques de programmation.

Cette technologie de mémoire est capable de supporter une réduction drastique de ses dimensions et offre des temps d’accès courts avec une densité de stockage élevée [22]. Cependant, la vitesse de programmation est lente et sa consommation est élevée.

De plus pour des températures élevées la rétention est limitée. Parmi les entreprises qui développent cette technologie, Intel et Micron ont introduit la mémoire ’3D-Xpoint’ sur le marché depuis 2017 pour les applications SCM (Storage Class Memory) .

Mémoire ferroélectrique (FeRAM)

Cette technologie est basée sur une structure simple: une capacité en série avec untransistor, similaire à celle d’une DRAM . L’information est stockée sous forme de polarisation ferroélectrique dans une couche utilisée (HFO2) en guise de diélectrique du condensateur, apportant à son tour la non volatilité. La commutation de la mémoire est réalisée par l’application d’un champ électrique aux bornes des électrodes du condensateur pour renverser son état de polarisation. Pour écrire l’état logique ’0’, quel que soit l’état initial du matériau ferroélectrique, il suffit d’appliquer un champ éléctrique positif supérieur à un certain seuil, alors qu’un champ éléctrique négatif permet de fixer la polarisation dans l’état rémanent négatif et ainsi d’inscrire un ’1’ logique.

La technologie FeRAM représente un bon candidat de mémoire non volatile pour des applications de l’IoT puisqu’elle possède une faible consommation avec une vitesse d’accès rapide (10 ns)[25]. Néanmoins, des limitations intrinsèques se présentent liées à la réduction de l’épaisseur de la couche ferroélectrique. Cette reduction est imposée par la diminution de la tension de programmation qui risque de dégrader ses propriétés diélectriques avec le cyclage en écriture.

Le rapport de stage ou le pfe est un document d’analyse, de synthèse et d’évaluation de votre apprentissage, c’est pour cela chatpfe.com propose le téléchargement des modèles complet de projet de fin d’étude, rapport de stage, mémoire, pfe, thèse, pour connaître la méthodologie à avoir et savoir comment construire les parties d’un projet de fin d’étude.

Table des matières

Introduction générale
1 Etat de l’art
1.1 Rôle des mémoires dans les systèmes électroniques
1.2 Limitation des solutions actuelles
1.3 Les mémoires émergentes non volatiles
1.3.1 Mémoires à changement de phase (PCRAM)
1.3.2 Mémoire ferroélectrique (FeRAM)
1.3.3 Mémoire résistive filamentaire (RRAM)
1.3.4 Mémoire magnétique (MRAM)
1.4 Comparaison entre les mémoires émergentes non volatiles
1.5 Intérêts de la MRAM
1.6 Fonctionnement général des MRAM
1.6.1 Structure de base de la MTJ
1.6.2 Lecture d’une cellule MRAM
1.6.3 Écriture d’une cellule MRAM
1.6.3.1 Écriture TAS: Thermally Assisted Switching
1.6.3.2 Écriture STT: Spin Transfer Torque
1.6.3.3 Écriture SOT: Spin Orbit Torque
1.7 Applications des mémoires MRAM
1.7.1 Circuits logiques hybrides CMOS/MTJ
1.7.1.1 Portes logiques magnétiques NAND/NOR/XOR
1.7.1.2 Registres magnétiques de type flip-flop
1.7.1.3 Full adder magnétiques
1.7.2 Circuits reconfigurables: MRAM based FPGA
1.7.3 Processeurs embarqués
1.8 Positionnement du sujet de thèse
2 Conception d’un générateur de fonctions logiques hybrides CMOS magnétique
2.1 Architectures reconfigurables
2.2 FPGA à base de LUT
2.2.1 Principe de fonctionnement d’une LUT
2.2.2 Évaluation de la taille des LUT
2.2.2.1 Dépendance entre la taille des LUT et la surface totale occupée
2.2.2.2 Dépendance entre la taille des LUT et la vitesse
2.3 Différentes structures de LUT
2.3.1 LUT à base d’une SRAM
2.3.2 LUT hybride à base d’une SRAM/Magnétique
2.3.3 LUT à base d’une MRAM
2.4 Architecture proposée
2.4.1 Schéma de décodage
2.4.2 Amplificateur de lecture
2.4.3 Circuit d’écriture
2.4.4 Cellule de référence
2.4.5 Cellules mémoires
2.4.6 Simulations électriques
2.4.7 Évaluation des performances
2.4.8 Dessin des masques
2.4.8.1 Vérification DRC (Design Rule Cheking)
2.4.8.2 Vérification LVS (Layout Versus Schematic)
2.5 Conclusion
3 Test du demonstrateur
3.1 Du sytème au silicium
3.2 Démonstrateur: projet MAD
3.3 Filtre numérique passe-bas CMOS/STT-MRAM
3.3.1 Fonctionnement
3.3.2 Simulation
3.3.3 Intégration de jonctions tunnel magnétiques
3.3.4 Simulation du filtre en technologie CMOS/Magnétique
3.4 Environnement de test
3.4.1 Découpe et câblage
3.4.2 Description du testeur
3.4.3 Présentation du langage test
3.4.3.1 Déclaration des signaux
3.4.3.2 Déclaration des stimuli
3.4.3.3 Définition des macros
3.4.3.4 Description des vecteurs de test
3.5 Les différents tests
3.5.1 Test de continuité
3.5.2 Test fonctionnel
3.6 Conclusion
4 Conception d’une mémoire embarquée en technologie SOT-MRAM
4.1 Mémoires à semi-conducteurs
4.2 Architecture d’une mémoire embarquée
4.2.1 Matrice mémoire
4.2.2 Décodage d’adresses
4.2.3 Le bloc de contrôle
4.2.4 Amplificateurs de lecture
4.2.5 Circuit d’écriture
4.2.6 Les entrées/sorties
4.3 Etude de mémoires magnétiques selon plusieurs architectures en technologie SOT-MRAM
4.3.1 Structure 2T-1JTM
4.3.1.1 Evaluation et performances
4.3.2 Structure 1T-1D-1JTM
4.3.2.1 Fonctionnalité
4.3.2.2 Evaluation
4.3.3 Structure hybride STT/SOT : 2T-2MTJ
4.3.4 Fonctionnement
4.3.5 Evaluation
4.3.6 Comparaison entre les différentes architectures
4.4 Etude d’un processeur: Secretblaze
4.4.1 Description du Secretblaze
4.4.2 Fonctionnement du SoC
4.4.3 Flot de conception numérique
4.4.3.1 Description comportementale au niveau RTL
4.4.3.2 Simulation comportementale
4.4.3.3 Synthèse logique
4.4.3.4 Simulation après synthèse
4.4.3.5 Placement et Routage
4.4.3.6 Simulation post-layout
4.4.3.7 Estimation de consommation du SoC
4.5 Conclusion
Conclusions

Lire le rapport complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *