Mémoires mortes et circuits programmables

Slides:



Advertisements
Présentations similaires
Plan de l’exposé Introduction
Advertisements

CHAftITREI ARCHITECTURE de BASE. Modèle de Von Neumann Langage d’assemblage1 John Von Neumann est à l'origine d'un modèle de machine universelle de traitement.
Page de garde Validation d ’APEF.
LE SUPPORT D'ORDINATEUR PORTABLE. Problématique Oh, j'ai chaud aux jambes ! Et moi, j'ai chaud à mon processeur !
TP 1 BIS Programmation structurée à l’aide de fonctions (FC) et de bloc fonctionnels (FB)
Le moniteur Le clavier L'unité centrale (l'ordinateur proprement dit) Qui sont des périphériques DEFINITIONS DE BASE.
1 Les circuits combinatoires Chapitre Les Circuits combinatoires Un circuit combinatoire est un circuit numérique dont les sorties dépendent uniquement.
DIAGRAMME DE DEPLOIEMENT Exposé de: MBALLA MEKONGO Michèle MBOUNA FEUZE William SIEYADJEU Alex Lionel CHOPGWE Leonard NDUMATE Landry TIDJON Lionel.
Sommaire : I.Introduction II.Fibre optique (pr é sentation g é n é ral de la fibre) III.Les techniques de transmissions -Multiplexage temporelle (TDM)
Les PREF, DEC, et jauges outils En tournage, puis en fraisage En fraisage directement P roductique M écanique U sinage Tâche principale : La mise en œuvre.
Acquisition Rapide Multivoies
La technologie des mémoires
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
L’ALTERNATEUR.
CEMTEC Comment scénariser l’éclairage d’un escalier ?
DropBox Projet App’Ifa.
L’ELECTRICITE AUTOMOBILE
Utilisation de Windows
Algorithme et programmation
Découverte et mise en service Temps de séquence : 3 heures
CCNP Routage Chapitre 4 - Questionnaire N°1
Les Bases de données Définition Architecture d’un SGBD
LA DIRECTION.
Lois fondamentales de l'algèbre de Boole
Evaluation de l'UE TICE 1 TRANSMISSION DES DONNEES INFORMATIQUES SABATIER Fabienne 1ère année de sciences du langage/sciences de l’éducation.
Initiation aux bases de données et à la programmation événementielle
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Les transistors bipolaires
SECURITE DU SYSTEME D’INFORMATION (SSI)
Plan du cours Introduction : création de circuits
Les composants informatiques
Le flux d’information.
Fonction logique Il existe deux grands types de fonctions logiques :
Architecture de machines Le microprocesseur
Circuits Logiques Programmables
La technique du pipeline
Système d’exploitation Windows XP
Semaine #4 INF130 par Frédérick Henri.
Piloter un robot mbot à distance avec retour vidéo
Notion De Gestion De Bases De Données
Création Et Modification De La Structure De La Base De Données
PROGRAMMATION INFORMATIQUE D’INGÉNIERIE II
Présentation de la carte graphique
Evaluation de l'UE TICE 1 TRANSMISSION DES DONNEES INFORMATIQUES SABATIER Fabienne 1ère année de sciences du langage/sciences de l’éducation.
Sfaihi Yassine Rabai Fatma Aissaoui Walid
À l’intérieur de l’ordinateur
Formation sur les bases de données relationnelles.
Composantes principales des ordinateurs
Les amplificateurs opérationnels
Utilisation générale du multimètre DT-830B
Adaptive Neuro Fuzzy Inference System (ANFIS)
Cliquer sur l’un des carrés selon votre choix
La Station de pompage.
Mémoire: cache, RAM, disque dur
Assembleur, Compilateur et Éditeur de Liens
Analogique-numérique
NUMERATION et REPRESENTATION DES NOMBRES
Architecture matérielle des ordinateurs
Plan du cours A. Généralités Introduction
LES MEMOIRES.
1 PROJET D’INFORMATIQUE les composants de l'ordinateur Gammoudi Rayéne 7 B 2.
Difficultés d’apprentissage
Les réseaux logiques programmables
Présentation 9 : Calcul de précision des estimateurs complexes
LINKY Les compteurs introduisent plusieurs nouvelles sources
Les différents modes de démarrage de Windows
I. Aouichak, I. Elfeki, Y. Raingeaud, J.-C. Le Bunetel
Type Tableau Partie 1 : Vecteurs
Traitement de TEXTE 2 Stage – Semaine 3.
Introduction aux Circuits Reconfigurables et FPGA.
Transcription de la présentation:

Mémoires mortes et circuits programmables

Mémoires mortes on vient d'étudier les mémoires vives accessibles en lecture et en écriture mais volatiles de nombreuses applications demandent de pouvoir conserver des informations, même si l'alimentation électrique est coupée mémoires mortes, le plus souvent accessibles en lecture seulement ROM (Read Only Memory) les informations stockées ne peuvent être modifiées, ni intentionnellement ni accidentellement accès généralement très rapide

Mémoires mortes principe bloc mémoire sans lignes d'entrée ni commande d'écriture 2k mots de n bits k lignes d'adresse n lignes de sortie CS

Mémoires mortes chaque mot peut être considéré comme un code et la mémoire réalisée avec un encodeur de 2k lignes et n sorties associées à un décodeur pour activer une de ces 2k lignes

Mémoires mortes exemple d'une mémoire de 4 mots de 4 bits table de vérité réalisation possible de l'encodeur avec des diodes adresse X1 X0 Y3 Y2 Y1 Y0 1 2 3

Mémoires mortes justification de l'utilisation des diodes OU inclusif DA A B état des diodes S DA et DB bloquées +V DA passante, DB bloquée DA bloquée, DB passante DA et DB passantes A B S DB A B S 1 OU inclusif

Mémoires mortes exemple d'une mémoire de 4 mots de 4 bits table de vérité réalisation possible de l'encodeur avec des diodes adresse X1 X0 Y3 Y2 Y1 Y0 1 2 3

Mémoires mortes on préfère le plus souvent une organisation matricielle une partie de l'adresse identifie les lignes l'autre partie identifie les colonnes mêmes remarques pour l'assemblage de blocs mémoires que pour les mémoires vives

Mémoires mortes applications des ROMs stockage de programmes dans des systèmes embarqués téléphonie mobile BIOS calculatrice machine à laver

Mémoires mortes réalisation du transcodeur du TD adr. b3 b2 b1 b0 g f contenu 1 40 79 2 24 3 30 4 19 5 12 6 02 7 78 8 00 9 10 A 08 B 03 C 46 D 21 E 06 F 0E

Mémoires mortes génération de fonction numérique exemple : sin(x), x ∈ [0, /2] l'intervalle [0, π/2] est divisé en N = 2k intervalles, la variable xi prenant les valeurs centrales : chacune des valeurs est identifiée par l'indice i, qui peut être utilisé comme une adresse si on code dans la cellule mémoire associée à l'adresse i le nombre fi = Partie Entière [(2n - 1) sin xi] on obtient une grandeur proportionnelle à sin xi codée sur la totalité de la gamme dynamique des n bits Look-up Table associée à un compteur et un convertisseur numérique- analogique : possibilité de génération de signaux périodiques x i = i+ 1 2  δxaveci∈ 0,N−1 etδx= π 2N

Mémoires mortes génération de fonctions logiques exemple : pouvoir effectuer une des 8 fonctions logiques sur 2 variables facile d'écrire la table de vérité des 8 fonctions par rapport aux 4 combinaisons de a et b, puis de mémoriser les 32 valeurs dans une ROM: f 0 a,b =a.b f 1 a,b =a b f 2 a,b = a.b f 3 a,b =a+b f 4 a,b =a+ b f 5 a,b = a+b f 6 a,b =a⊕b f 7 a,b = a⊕b 32 bits a b fi S

Mémoires mortes f2 f1 f0 b a f 1 f2 f1 f0 b a f 1 a⋅b a+ b a⋅ b a+b 1 f2 f1 f0 b a f 1 a⋅b a+ b a⋅ b a+b a⋅b a⊕b a+b a⊕b

Mémoires programmables par l'utilisateur PROM Programmable Read Only Memory pour éviter d'avoir à demander une fabrication spéciale des mémoires mortes coûteux lent intéressant pour la phase de développement d'un produit ou pour de petites séries

Mémoires programmables par l'utilisateur techniques de programmation méthode des fusibles une diode et un fusible à chaque noeud de la matrice initialement tous les fusibles sont conducteurs et donc tous les bits sont à 1 la définition des 0 se fait à l'aide d'un programmateur de PROM qui est capable de détruire les fusibles en indiquant l'adresse du bit du mot à modifier et en injectant un courant sur la sortie correspondante mais la manœuvre est risquée pour le circuit...

Mémoires programmables par l'utilisateur méthode des anti-fusibles aucune connexion initialement on fait fondre un diélectrique dans une zone de faibles dimensions située à l'intersection de 2 électrodes 1ère électrode en silicium polycristallin 2ème électrode réalisée dans un implant fortement dopé n+ diélectrique constitué de couches d'oxyde et de nitrure de silicium la fusion du diélectrique entraîne la diffusion des dopants

Mémoires programmables par l'utilisateur d'autres technologies sont possibles, faisant intervenir diverses combinaisons électrodes-diélectrique mais toutes ces technologies sont irréversibles du point de vue de la configuration de la PROM

Mémoires programmables par l'utilisateur multi-programmation des PROM en utilisant des transistors à effet de champ MOS avec une grille flottante la grille permet d'induire un canal entre la source et le drain une tension positive sur la grille va attirer les électrons et repousser les trous. Une partie des électrons va se recombiner avec les trous, créant une inversion de population induisant un canal n entre les implants de la source et du drain Le transistor est alors passant pour programmer le nœud, on fait passer un courant intense entre la source et le drain. Des électrons acquièrent une énergie suffisante pour atteindre la grille flottante où ils sont piégés. Quand la charge piégée est suffisante, elle masque le champ induit par la grille et le transistor est bloqué de façon permanente

Mémoires programmables par l'utilisateur pour "déprogrammer" le circuit, il faut décharger la grille flottante exposition aux rayonnements UV pendant quelques dizaines de minutes Erasable Programmable Read-Only Memory (EPROM) par effet tunnel en appliquant des tensions électriques suffisamment importantes entre la grille, la source et le drain action plus rapide et sans être obligé de retirer le circuit du système où il est monté Electrically Erasable Programmable Read-Only Memory (EEPROM) le cycle d'écriture d'une EEPROM est environ 1000 fois plus lent que celui d'une RAM les temps d'accès en lecture des RAM, ROM, EPROM, EEPROM sont comparables

Mémoires programmables par l'utilisateur mémoires flash EEPROM dans laquelle on peut atteindre plusieurs cellules en parallèle (octet ou mot), diminuant sensiblement les temps d'accès en écriture l'effacement ne peut se faire que par bloc on trouve maintenant des circuits pour lesquels on mesure la quantité d'électrons piégés dans la grille flottante, permettant ainsi de stocker plusieurs bits dans une même cellule (MLC , ou Multi-level cell) 2 grandes familles : mémoires de technologie « NOR » mémoires de technologie « NAND » toutes les 2 basées sur l'architecture EEPROM à grille flottante se différencient par l'organisation logique des cellules

Mémoires programmables par l'utilisateur mémoires flash « NOR » par défaut dans un état logique « 0 » la programmation les met dans un état logique « 1 », qui peut s 'effectuer au niveau de la page, de l'octet ou du mot remises à 0 par un effacement de la grille, qui se fait sur une base d'accès par bloc accès en lecture en mode random au niveau de l'octet utilisées surtout pour stocker du firmware exécutable mémoire flash « NAND » organisation logique différente des cellules en série, qui permet l'adressage également au niveau du bit densité des cellules plus importante, d'où des capacités de stockage plus importantes, mais des risques d'erreur plus grands (nécessité de codes de correction) bien adaptée au stockage de masse (USB)

Mémoires programmables par l'utilisateur limitations gestion complexe des cycles d'écriture on peut mettre un bit individuellement à « 1 » mais l'effacer pour le remettre à « 0 » nécessite d'effacer tout le bloc risques de modification des cellules voisines lors de la lecture il est préférable de gérer le nombre d'opérations effectuées et de réécrire périodiquement les cellules voisines ne peuvent subir qu'un nombre limité de cycles écriture/effacement (détérioration du support sous l'effet des forts courants électriques) de l'ordre de 100 000 pour la plupart des produits courants peut aller jusqu'à 1 000 000 pour les plus récents

Mémoires programmables par l'utilisateur de plus en plus de technologies de stockage basées sur ces mémoires Solid State Drives (SSD) NVRAM (Non volatile RAM) Flash associée à une RAM. Sert à sauvegarder rapidement (< 10ms) le contenu de la RAM en cas de coupure de courant recherche très active en ce moment pour avoir la non volatilité et une vitesse d'accès comparable aux SRAM RAM ferroélectriques (FRAM) structure analogue aux DRAM mais basées sur la polarisation électrique d'un alliage Zr/Ti RAM magnétorésistives (MRAM) utilisent des éléments magnétiques (cf mémoires à tore) plusieurs technologies en cours de développement Mémoires Millipedes nanotechnologie (encore trop lent)

Circuits logiques programmables la famille des circuits logiques programmables (Programmable Logic Device, ou PLD) est vaste et variée PAL, PLA, SPLD, EPLD, CPLD, FPGA peuvent être purement combinatoires ou contenir des éléments de logique séquentielle

Circuits logiques programmables « ancêtre » des PLD : Programmable Logic Array (PLA) combinaison de portes ET et OU permettant de réaliser de façon programmable des somme canoniques de produits caractérisés par le nombre d'entrées n le nombre de sorties m le nombre de minterms p PLA n x m avec p produits généralement p << 2n

Circuits logiques programmables exemple d'un PLA 4x3 avec 6 produits 4 lignes d'entrée Ek 6 portes ET à 8 (2x4) entrées pouvant recevoir ou fabricant les minterms Pk 3 portes OU à 6 entrées fabricant les sorties On, à partir des minterms Pk E k E k

Circuits logiques programmables exemple d'un PLA 4x3 avec 6 produits E1 E2 E3 E4 P1 P2 P3 P4 P5 P6 O1 O2 O3

Circuits logiques programmables exemple d'un PLA 4x3 avec 6 produits E1 E2 E3 E4 P1 P2 P3 P4 P5 P6 O1 O2 O3

Circuits logiques programmables exemple d'un PLA 4x3 avec 6 produits E1 E2 E3 E4 exemple P1 P2 P3 P4 P5 P6 O1 O 1 = E 1 . E 2 + E 1 . E 2 . E 3. E 4 O 2 = E 1 . E 3 + E 1 . E 3 . E 4 + E 2 O 3 = E 1 . E 2 + E 1 . E 3 + E 1 . E 2 . E 4 O2 O3

Circuits logiques programmables exemple d'un PLA 4x3 avec 6 produits E1 E2 E3 E4 exemple O1 O 1 = E 1 . E 2 + E 1 . E 2 . E 3. E 4 O 2 = E 1 . E 3 + E 1 . E 3 . E 4 + E 2 O 3 = E 1 . E 2 + E 1 . E 3 + E 1 . E 2 . E 4 O2 O3

Réseaux logiques programmables Programmable Array Logic (PAL®) matrices des connexions OU figée Fixed-OR element (FOE) matrice des connexions ET programmable

Réseaux logiques programmables toujours plus de sophistication dans les catalogues des fabricants canaux d'entrée/sortie bidirectionnels grâce à des portes 3- états qui permettent de commander le sens d'utilisation possibilité de ré-injecter des sorties dans le réseau des ET (variables intermédiaires) utilisation d'un réseau de bascules D avec une horloge commune entrée programmable au niveau des portes ET et OU sortie accessible à l'extérieur et pouvant être utilisée comme variable interne injectée dans le réseau de connexions programmables → programmation de fonctions séquentielles

Réseaux logiques programmables exemple d'une PLA combiné à une bascule D

Réseaux logiques programmables Complex Programmable Logic Devices (CPLD) plusieurs PLD rassemblés en cellules (macrocellules) macrocellules regroupées en blocs logiques qui peuvent être reliés par une matrice de connexions programmable Interconnection programmable PLD PLD PLD PLD blocs d'entrée-sortie PLD PLD PLD PLD

Réseaux logiques programmables plus efficaces que un "gros" PLD problèmes de connectique capacité importante, courants de fuite → temps de réponse plus long

Réseaux logiques programmables Field Programmable Gate Arrays (FPGA) blocs d'entrée/sortie blocs logiques constitués de portes et de bascules D matrices de connexions programmables techniques de programmation analogues à celles des ROMs peut se faire aussi avec une SRAM blocs d'entrée/sortie blocs logiques réseau de connexion programmable

CPU