Académique Documents
Professionnel Documents
Culture Documents
Chapitre 2. Les Mémoires Et Les Fonctions Logiques-Converti
Chapitre 2. Les Mémoires Et Les Fonctions Logiques-Converti
Fonction NON
Fonction ET (AND)
Fonction OU (OR)
1
Fonction NON OU (NOR)
3. Propriétés et théorème
2
4. Représentation des fonctions logiques.
Les fonctions logiques peuvent être représentées par plusieurs formes. Partons de l’exemple suivant:
Etude d’un exemple: Afficheur sept segments
• L'information, qui est un chiffre compris entre 0 et 9, est fournie par un nombre binaire sur 4 bits
d’entrées: E0, E1, E2 et E3.
• La sortie de l’afficheur est constituée par 7 segments Si (i=0 à 6). Chaque segment sera allumé ou
éteint, selon la combinaison des entrées affichant ainsi le chiffre correspondant.
Table de vérité
Deuxième forme canonique ou forme normale conjonctive produit des sommes : Maxtermes)
Pour aboutir à la 2ième forme canonique, on doit déterminer au préalable l’expression du complément de la
fonction à étudier ; c'est-à-dire déterminer l’expression de la fonction où elle s’annule :
𝑆6̅ = E
̅3 E
̅2 E
̅1 E
̅0 + E
̅3 E
̅2 E
̅1 E0 + E
̅3 E2 E1 E0
En utilisant le théorème de Demorgan, on en déduit la 2ième forme canonique :
̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
𝑆6̅ = E
̅3 E
̅2 E
̅1 ̅
E0 + E ̅3 E
̅2 ̅
E1 E0 + E ̅3 E2 E1 E0
𝑆6̅ = (E
̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
̅3 ̅
E2 E̅1 ̅ ̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
̅3 E
E0 ). (E ̅2 ̅ ̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
̅3 E2 E1 E0 )
E1 E0 ). (E
̅0 ). (E3 + E
Finalement: 𝑆6 = (E3 + E2 + E1 + E0 ). (E3 + E2 + E1 + E ̅2 + E
̅1 + E
̅0 )
3
Logigramme
Déterminons le logigramme de la fonction S6sous la2ième forme canonique :
Chronogramme
Comme a· b · c = a · b · c + a · b · c + a · b · c,
l’expression de la fonction S peut être écrite comme suit:
Comme a· b · c = a · b · c + a · b · c + a · b · c,
l’expression de la fonction S peut être écrite comme suit:
4
Après regroupement et factorisation, on aura :
Or :
La méthode algébrique est essentiellement intuitive. La simplification des fonctions logique devient
assez difficile quand le nombre de variables devient élevé.
Afin de surmonter ce problème, on fait recours à une méthode graphique qui est basée sur l’utilisation
d’un tableau dit: Tableau de Karnaugh.
Méthode graphique (Tableau de Karnaugh)
Le tableau de Karnaugh est un rectangle divisé en 2n cases, n étant le nombre de variables de la fonction
considérée.
On écrit dans chaque case la valeur correspondante de la fonction : 0 ou 1. Si cette valeur est
indéterminée, on met X ou Ø.
L’ordre des variables en abscisse et en ordonnée est tel que si on passe d’une case à la case adjacente, une
seule variable est varie: On utilisera ainsi le code binaire réfléchi ou code de Gray
Exemple: Passage de la table de vérité au tableau de Karnaugh
Il suffit de reporter dans chaque case du tableau de Karnaugh la valeur de la variable de sortie
correspondant à chaque combinaison des variables d’entrée.
𝑅 = 𝑧̅ + 𝑥. 𝑦
5
Partie B. Les mémoires (Mémoire Centrale ou Principale)
1. Introduction
Tout au long de l’histoire de l’informatique, la mémoire centrale (mémoire vive ou RAM : Random
Acces Memory) a été réalisée selon plusieurs principes (tubes à vide, tores magnétiques et semi
conducteurs) pour mémoriser l'information élémentaire ou le bit.
La mémoire vive est constituée de centaines de milliers de petits condensateurs emmagasinant des
charges. Lorsqu'il est chargé, l'état logique du condensateur est égal à 1, dans le cas contraire il est à 0.
Chaque condensateur représente un bit de la mémoire.
Les condensateurs sont rechargés (rafraîchis) à un intervalle de temps régulier appelé cycle de
rafraîchissement. (Exemple : les mémoires DRAM nécessitent des cycles de rafraîchissement de 15 ns).
Donc, une mémoire est un circuit à semi-conducteur permettant d’enregistrer, de conserver et de restituer
des informations (Programmes ou données). Ces informations peuvent être lues ou écrites.
Nous appelons « information » tout ensemble de données (textes, nombres, sons, images etc) ou
instructions composant un programme. Chaque donnée possède une adresse.
2. Organisation d’une mémoire
Une mémoire peut être représentée comme une armoire de rangement constituée de différents tiroirs.
Chaque tiroir représente alors une case mémoire (en générale 1octet = 8bits) utilisés pour stocker des
programmes (instructions) et des données. Chaque case est remplie par un mot mémoire de données
binaires de longueur (Largeur) m qui est toujours une puissance de 2 (ex : mot d’un octet = 8bits = 23).
Longueur : m bits
Adresses Case mémoire
0 0 1 0 1 1 0 1 0
Mot Mémoire de données
1 1 0 1 0 0 1 0 1 binaires : (1 Octet = 8bits)
Décodeur d’ Adresses
2
3 Taille :
Bus d’adresses : n bits M cases = 2n
M-2
M-1 1 1 0 1 0 0 1 0
Unité Centrale
Bit de poids fort (MSB) Bit de poids faible (LSB)
(Processeur)
Bus de données : m bits
Dans une mémoire de taille M, on a M cases mémoires, numérotés de 0 à M-1. Chaque case est repérée
par son numéro, appelé adresse. Chaque case sera adressée par un décodeur d’adresses de n bits, qui
permet de sélectionner le mot mémoire à lire ou à écrire en fonction de l’adresse qui lui est fournie en
entrée.
NB :
❖ L’adresse est le plus souvent écrite en hexadécimal.
❖ Avec une adresse de n bits il est possible de référencer à 2n = M cases mémoire.
La capacité C d’une mémoire est la quantité d’informations mémorisable dans cette mémoire. En effet, la
capacité (Taille) de la mémoire est le nombre de cases, d’adresses ou de mot mémoire M multiplier par la
longueur (largeur) m du mot mémoire. La capacité est exprimé en général en bits, octets, kilo-octets ou en
méga-octets, voire davantage.
Capacité = Nb mots (Nb adresses) x Longueur mot mémoire C=Mxm
6
Exemple :
❖ Bus d’Adresses = 3fils = n M = 23 = 8 adresses (ou mots) C = M x m =23 x 8 = 64 bits
Bus de données = 8fils = m m = 8 bits/mot
❖ Une mémoire de capacité 16 octets contient M = 16 cases chacune est remplie par un mot mémoire de
Longueur : m = 8 bits avec n = 4 bits. Soit aussi : C = 16 x 8 = 128 bits.
100
2. Supposant que le processeur veut lire la 5ème case (98),
quel sera le contenu du bus d’adresse ainsi que le bus de 3 fils
données ? (voir figure).
Exemple : une mémoire centrale de 512 Kmots de 16 bits
équivaut à : 512 x 1024 mots = 512 x 1024 * 2 octets
= 512 x 1024 * 2 * 8 bits.
01100010
7
Chaque case sera adressée par un décodeur d’adresses de n bits, qui permet de sélectionner le mot
mémoire à lire ou à écrire en fonction de l’adresse qui lui est fournie en entrée.
Tampon d’E/S (buffer) ou RIM (Registre d’Information Mémoire), appelé cache, est une zone mémoire
vive de petite taille utilisée pour le stockage temporaire des informations (données ou programmes) et
dans laquelle les opérations d'écriture et de lecture seront commandées par le bus de contrôle.
3.2. Opération sur la mémoire
Les seules opérations possibles sur la mémoire sont :
❖ Lecture d’une information :
1) Mise, dans le bus d’adresses, de l’adresse du mot mémoire qui stocke l’information à lire.
2) Décodage de l’adresse et sélection du mot mémoire associé ;
̅̅̅̅ = 0) ;
3) Sélection du boitier de la mémoire (𝐂𝐒
4) Lancement de la commande de lecture (𝐑/𝐖 ̅ = 1) ;
5) Transfert de l’information du mot mémoire vers le tampon d’E/S ;
6) Transfert de l’information du tampon d’E/S vers le bus de données au bout du temps d'accès ;
Exemple : Chronogramme d’un cycle de lecture (𝐑/𝐖 ̅ = 1 et ̅𝐂𝐒
̅̅̅ = 0).
Nb :
✓ La fréquence maximum Fmax de fonctionnement est égale à l'inverse du temps de cycle : 𝐅𝐦𝐚𝐱 = 1⁄𝐓𝐂 .
✓ La bande passante B qui caractérise le débit maximum en bits par seconde. En accès aléatoire cette
bande passante est égale à : 𝐁 = 𝐧⁄𝐓𝐂 , où n est le nombre de bits transférés par cycle.
✓ La bande passante maximum sera : 𝐁𝐦𝐚𝐱 = 𝐧⁄𝐓𝐚 . Le temps d’accès est un critère important pour
déterminer les performances d’une mémoire ainsi que les performances d’une machine.
❖ Ecriture d’une information :
1) Mise, dans le bus d’adresses, de l’adresse du mot où se fera l’écriture ;
2) Décodage de l’adresse et sélection du mot mémoire associé ;
̅̅̅̅ = 0) ;
3) Sélection du boîtier de la mémoire (𝐂𝐒
4) Mise, dans le bus de données, de l’information à écrire au bout du temps d'accès ;
5) Lancement de la commande d’écriture (𝐑/𝐖 ̅ = 0) ;
6) Transfert de l’information du bus de données vers le tampon d’E/S ;
7) Transfert de l’information du tampon d’E/S vers le mot mémoire ;
Exemple : Chronogramme d’un cycle de lecture (𝐑/𝐖 ̅ = 0 et ̅𝐂𝐒
̅̅̅ = 0) ;
8
❖ Cycle de lecture-modification-écriture
Ce cycle permet de lire une donnée à une certaine adresse, de modifier la donnée et de l'inscrire à la
même adresse. Le même résultat pourrait être obtenu avec deux cycles successifs de lecture et d'écriture,
mais plus lentement car il faut alors présenter l'adresse deux fois. Il faut que les lignes d'entrée et de sortie
soient distinctes. La procédure consiste à :
1) Mise, dans le bus d’adresses, de l’adresse du mot mémoire qui stocke l’information à lire ;
2) Décodage de l’adresse et sélection du mot mémoire associé (𝐂𝐒̅̅̅̅ = 0);
3) Lancement de la commande de lecture (𝐑/𝐖 ̅ = 1) ;
4) Transfert de l’information du mot mémoire vers le tampon d’E/S ;
5) L’information apparaît sur la sortie dans le bus de données au bout du temps d'accès;
6) Le système modifie l’information à écrire, dans le bus de données, qu'il applique sur l'entrée;
7) Lancement de la commande d’écriture (𝐑/𝐖 ̅ = 0).
Nb :
❖ La longueur d’un mot mémoire dépend du type de processeur :
➢ 1 octet dans les processeurs 8 bits (ex : Motorola 6502) ;
➢ 2 octets dans les processeurs 16 bits (ex : Intel 8086) ;
➢ 4 octets dans les processeurs 32 bits (ex : Intel 80486 ou Motorola 68030).
3.3. Caractéristiques d’une mémoire
Associatives : CAM
Mémoires de petite taille :
Les Caches et les Registres
(RIM)
9
4.1. Les mémoires vives (RAM)
Une mémoire vive sert au stockage temporaire des données. Elle doit avoir un temps de cycle très court
pour ne pas ralentir le microprocesseur. Les mémoires vives sont en général volatiles : elles perdent leurs
informations en cas de coupure d'alimentation. Certaines d'entre elles, ayant une faible consommation,
peuvent être rendues non volatiles par l'adjonction d'une batterie. Il existe deux grandes familles de
mémoires RAM (Random Acces Memory : mémoire à accès aléatoire) : SRAM et DRAM.
4.1.1. Les RAM statiques (SRAM)
Le bit mémoire d'une RAM statique (SRAM)
est composé d'une bascule. Chaque bascule
contient entre 4 et 6 transistors.
10
Il existe des ROM effaçables et reprogrammables :
➢ PROM (Programmable ROM) : C’est une ROM qui peut être programmée une seule fois par
l'utilisateur. La programmation est réalisée à partir d’un programmateur spécifique.
➢ EPROM (Erasable PROM) : reprogrammable et effaçables par rayonnement ultra-violet.
➢ EEPROM-E2PROM (Electrically EPROM) : mémoire programmable et effaçable électriquement.
➢ FLASH EPROM : mémoire morte reprogrammable plusieurs fois et effaçable électriquement. Elle
utilise la même méthode de programmation que l’EPROM standard, et la méthode d’effacement de
l’E2PROM. La mémoire flash utilise comme cellule de base un transistor MOS.
Nb : une cellule de Mémoire Flash peut être écrite entre 10.000 et 100.000 fois et lue à l'infini sans
aucun dommage. La mémoire Flash a de multiples applications en raison de sa vitesse élevée, de sa
durabilité, de sa grande résistance aux chocs et de sa faible consommation. On utilise ce type de mémoire
dans les téléphones cellulaires, les appareils photos numériques ainsi que les Imprimantes et les
ordinateurs portables ou systèmes de lecture et d'enregistrement sonore comme les baladeurs numériques,
les cartes SD, SDD et les clés USB.
Nb : Les principaux critères à retenir pour le choix d’une mémoire sont : Capacité, Vitesse,
Consommation et Coût. Le temps d’accès à la mémoire centrale et sa capacité sont deux éléments qui
influent sur le temps d’exécution d’un programme (performance d’une machine).
5. Hiérarchie des mémoires
Une mémoire idéale serait une mémoire de grande capacité, capable de stocker un maximum
d’informations et possédant un temps d’accès très faible afin de pouvoir travailler rapidement sur ces
informations. Mais il se trouve que les mémoires de grande capacité sont souvent très lente et que les
mémoires rapides sont très chères. La vitesse d'une mémoire (temps d'accès et débit) est inversement
proportionnelle à sa taille (Capacité).
Les registres sont les éléments de mémoire les
plus rapides. Ils sont situés au niveau du
processeur et servent au stockage des opérandes et
des résultats intermédiaires.
La mémoire cache est une mémoire rapide de
faible capacité destinée à accélérer l’accès à la
mémoire centrale en stockant les données les plus
utilisées.
La mémoire principale est l’organe principal de
rangement des informations. Elle contient les
programmes (instructions et données) et est plus
lente que les deux mémoires précédentes.
La mémoire d’appui sert de mémoire intermédiaire entre la mémoire centrale et les mémoires de masse.
Elle joue le même rôle que la mémoire cache.
La mémoire de masse est une mémoire périphérique de grande capacité utilisée pour le stockage
permanent ou la sauvegarde des informations. Elle utilise pour cela des supports magnétiques (disque dur,
ZIP) ou optiques (CDROM, DVDROM).
6. Méthodes d’accès aux mémoires
La méthode d'accès décrit comment accéder à une information en connaissant l'adresse et que le temps
mis pour obtenir cette information ne dépend pas de l'adresse. L'accès direct est similaire à l'accès à une
case d'un tableau, on accède directement à n'importe quelle case mémoire directement par son adresse. On
dira que l'accès à une telle mémoire est aléatoire ou direct. A l'inverse, pour accéder à une information sur
bande magnétique, il faut dérouler la bande en repérant tous les enregistrements jusqu'à ce que l'on trouve
celui que l'on désire. On dit alors que l'accès à l'information est séquentiel. Le temps d'accès est variable
selon la position de l'information recherchée. L'accès peut encore être semi-séquentiel : combinaison des
accès direct et séquentiel. Pour un disque magnétique par exemple l'accès à la piste est direct, puis l'accès
au secteur est séquentiel.
11
➢ Accès direct : chaque information possède une adresse propre, à laquelle on peut accéder directement.
On dira que l'accès à une telle mémoire est aléatoire, direct ou encore sélectif. exemple : mémoire
centrale de l'ordinateur.
➢ Accès séquentiel : pour accéder à une information, il faut parcourir toutes les informations qui la
précède jusqu'à ce que l'on trouve celui que l'on adresse. Le temps d'accès est variable selon la position
de l'information recherchée. exemple : bandes magnétiques.
➢ Accès semi-séquentiel : intermédiaire entre accès direct et séquentiel. Pour un disque magnétique par
exemple l'accès au cylindre ou à la piste est direct, puis l'accès au secteur est séquentiel.
➢ Accès par le contenu ou associatif : les informations ne sont pas accessibles par une adresse mais
sont adressables par le contenu en effet, les informations sont identifiées par une clé et la recherche
s’effectue sur cette clé de façon simultanée sur toutes les positions de la mémoire. Utilisé pour les
mémoires associatives CAM : Content Addressable Memory (mémoire cache ou registre : RIM).
Par exemple, si l’on considère la
mémoire associative de la figure
ci-dessous : Les clés sont des
noms de pays, alors que
l’information associée à chaque
clé est une ville de ce pays.
7. La mémoire cache
La mémoire cache est insérer entre le CPU et la mémoire centrale. C’est une mémoire associative qui
stock l’information lu à partir de la mémoire centrale ou l’information à écrire dans la MC. Elle est très
rapide (vitesse d’accès de 5 ns au moins, de type SRAM) mais pas très grande taille et qui va contenir les
informations (instructions, données) dont a besoin le CPU. Lorsque le processeur doit accéder à une
information, la recherche est effectuée d'abord dans la mémoire cache.
Une stratégie de tentative/échec est alors envisagée :
• Sinon, il y a défaut de cache. La lecture doit se faire dans la mémoire principale ce qui bloque le
processeur pendant plusieurs cycles. C'est le gestionnaire de cache qui se charge de faire la copie de la
donnée de la mémoire principale vers la mémoire cache, par la suite la donnée peut être lue par le
processeur. Pour le processeur, cette gestion est transparente.
1 2
CPU Cache MC
4 3
12
ANNEXE
Mémoire Flash :
La mémoire flash est un compromis entre les mémoires RAM et ROM : c’est une mémoire non volatile,
comme les mémoires mortes, mais qui possède par ailleurs les caractéristiques d'une mémoire vive. La
mémoire flash est l’une des principales technologies de stockage de données.
Il existe deux grandes familles de mémoires flash :
• Les cartes mémoires destinées aux petits matériels tels que les téléphones cellulaires, les appareils
photos numériques ainsi que les Imprimantes et les ordinateurs portables ou systèmes de lecture et
d'enregistrement sonore comme les baladeurs numériques, micro SD cartes SDD et les clés USB.
• Les disques électroniques, unités de stockage statiques destinées à remplacer progressivement les
disques durs. On les appelle souvent disques SSD (Solid-State Drive), Disque Statique à Semi-
conducteurs.
13