TD organisation mémoire



Documents pareils
Assembleur. Faculté I&C, André Maurer, Claude Petitpierre

Cours Informatique 1. Monsieur SADOUNI Salheddine

Transmissions série et parallèle

Chapitre 4 : Les mémoires

AUJOUR'HUI, NOUS ALLONS DÉCOUVRIR

Architecture des ordinateurs

La mémoire. Un ordinateur. L'octet. Le bit

Comme chaque ligne de cache a 1024 bits. Le nombre de lignes de cache contenu dans chaque ensemble est:

Base de l'informatique. Généralité et Architecture Le système d'exploitation Les logiciels Le réseau et l'extérieur (WEB)

Structure de base d un ordinateur

Découverte de l ordinateur. Partie matérielle

TD Architecture des ordinateurs. Jean-Luc Dekeyser

Leçon 1 : Les principaux composants d un ordinateur

nom : Collège Ste Clotilde

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.

Ed 03/95 PAQ 1530 NON URGENTE (INFO PRODUIT) TEMPORAIRE DEFINITIVE

Partie 7 : Gestion de la mémoire

Structure fonctionnelle d un SGBD

THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs

1 Architecture du cœur ARM Cortex M3. Le cœur ARM Cortex M3 sera présenté en classe à partir des éléments suivants :

TIC. Tout d abord. Objectifs. L information et l ordinateur. TC IUT Montpellier

Projet de Bachelor Virtual Desktop Infrastructure

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping

I. QU'EST-CE QU'UN ORDINATEUR? Un ordinateur est relié à plein de périphériques

La carte à puce. Jean-Philippe Babau

Représentation d un entier en base b

Travaux pratiques Détermination de la capacité de stockage des données

ASR1 TD7 : Un microprocesseur RISC 16 bits

Windows 2000: W2K: Architecture. Introduction. W2K: amélioration du noyau. Gamme windows W2K pro: configuration.

Ordinateur Logiciel Mémoire. Entrées/sorties Périphériques. Suite d'instructions permettant de réaliser une ou plusieurs tâche(s), de résoudre un

Programmation C. Apprendre à développer des programmes simples dans le langage C

L informatique en solo

Présentation du cours

Introduction à l architecture des ordinateurs. Adrien Lebre Décembre 2007

UE Programmation Impérative Licence 2ème Année

Document de formation pour une solution complète d automatisation Totally Integrated Automation (T I A) MODULE A5 Programmation de la CPU 314C-2DP

GESTION DE LA MEMOIRE

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

Ordinateurs, Structure et Applications

Traitement de données

Mémoire de l'imprimante

Manuel du logiciel PrestaTest.

Hiérarchie matériel dans le monde informatique. Architecture d ordinateur : introduction. Hiérarchie matériel dans le monde informatique

1.1 L EXPLORATEUR WINDOWS

Licence Sciences et Technologies Examen janvier 2010

Organisation des Ordinateurs

CARTES A PUCE. Pascal Urien - Cours cartes à puce /06/10 Page 1

Fonctions homographiques

IV- Comment fonctionne un ordinateur?

Architecture des ordinateurs

Guide Mémoire NETRAM

Partie 1. Professeur : Haouati Abdelali. CPGE Lycée Omar Ibn Lkhattab - Meknès haouaticpge@gmail.com

LA mémoire principale est le lieu où se trouvent les programmes et les

Programmation d un contrôleur via une liaison téléphonique Note d application

Linux embarqué: une alternative à Windows CE?

IN SYSTEM. Préconisations techniques pour Sage 100 Windows, MAC/OS, et pour Sage 100 pour SQL Server V16. Objectif :

Université d Aix-Marseille Master Réseaux & Télécoms Cryptographie

MB Led. Benjamin Bonny Cédric Le Ninivin Guillaume Normand

Adressage des données des contrôleurs du WAGO-I/O-SYSTEM 750. Note d application

SYSTÈME DE GESTION DE FICHIERS

Croisière au cœur d un OS Étape 4 : Mise en place de la pagination

TP 2 Réseaux. Adresses IP, routage et sous-réseaux

TARGET SKILLS PlanningPME

On distingue deux grandes catégories de mémoires : mémoire centrale (appelée également mémoire interne)

USTL - Licence ST-A 1ère année Codage de l information TP 1 :

Microprocesseur + Logiciel

Codage d information. Codage d information : -Définition-

Tests de performance du matériel

SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE

DE L ORDINATEUR. Ligue Libérale des Pensionnés asbl

Gestion de mémoire secondaire F. Boyer, Laboratoire Sardes

Choix d'un serveur. Choix 1 : HP ProLiant DL380 G7 Base - Xeon E GHz

Module M1 Elément 2 : Informatique 1 (I1)

1) Où est le problème? Chère lectrice, cher lecteur, On est entre nous, alors on va se tutoyer.

L ORDINATEUR. Les composants. La carte mère. Le processeur. Fréquence

Initiation. àl algorithmique et à la programmation. en C

Equipement. électronique

Systemes d'exploitation des ordinateurs

Algorithme. Table des matières

Robert Guichet. Conférence DERBI Juin 2008

Informatique Générale

INFO 2 : Traitement des images

PIC : COURS ASSEMBLEUR

Limitations of the Playstation 3 for High Performance Cluster Computing

Ordinateurs, Structure et Applications

La technologie Java Card TM

Informatique Industrielle Année Architecture des ordinateurs Note de cours T.Dumartin

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte

Logique séquentielle

Les tablettes. Présentation tablettes Descriptif Fournisseurs Caractéristiques Comparatifs Conseils Perspectives Démonstration

Enregistreur de données d humidité et de température

Le poids et la taille des fichiers

USTL - Licence ST-A 1ère année Initiation à la programmation TP 1

2 Comment fonctionne un ordinateur, dans les grandes lignes

Travail d évaluation personnelle UV valeur C : IRE. Planification de réseaux : Simulateur IT-GURU Academic Edition

Informatique. Les réponses doivent être données en cochant les cases sur la dernière feuille du sujet, intitulée feuille de réponse

SYSTEME DE SERRURES D HÔTEL GUIDE DE RÉFÉRENCE RAPIDE POUR LES

Traitement numérique de l'image. Raphaël Isdant

INSTALLATION. 3 Installation. Configuration requise

Transcription:

TD organisation mémoire 1 Le processeur et la mémoire Soit un processeur à connecter à 4 boîtiers mémoire. Chaque boîtier est organisé en 2 20 octets ( 1 Méga octet ). Voir figure 1. A 0 -A23 AccèsMem R/W 20 fils adresses Type accès 8/16/32 D 24 -D 31 Long 0 Long 1 R/W Mémoire Vive RAM D 16 -D 23 D 8 -D 15 D 0 -D 7 8 fils données FIG. 1 Description du processeur et des boîtiers RAM Le processeur a un bus de données de 32 bits et un bus d adresses de 24 bits. Le processeur peut vouloir écrire/lire différents types de données (un octet, deux octets, quatres octets) en un cycle d horloge. Nous supposons ici que la convention de ce processeur est «big endian». 2 Accès à des données des mots de 4 octets Nous supposons dans un premier temps que le processeur ne peut accéder qu à des mots de 4 octets (instructions assembleur ldr et str du ARM). 1

1. Comment connecter la RAM pour accéder à quatre octets en un cycle? 2. Dessiner le processeur et les 4 boîtiers de RAM ainsi que leurs connexions. AccèsMem C/S R/W D 0 -D 7 A 4X+3 Processeur D 8 -D 15 D 16 -D 23 B C 4X+2 4X+1 D 24 -D 31 D 4X+0 A 2 -A23 X FIG. 2 Accès à quatre octets en un cycle Comme illustré dans la figure 2, en envoyant X sur les bits de poids fort du bus d adresses, on peut accéder aux octets : de poids fort d adresse 4X stocké dans D via D 24 -D 31. de poids moyen d adresses 4X+1 et 4X+2 stockés dans B et C via D 8 -D 15 et D 16 -D 23. de poids faible d adresse 4X+3 stocké dans D via D 0 -D 7. 3. Dessiner les octets d adresses 4, 5, 6 et 7 (données par le processeur) dans les boîtiers de RAM. L emplacement de ces octets dépend il de la convention little/big endian? 4. Le processeur émet l adresse 256 (en décimal) pour accéder à un mot long. Donner les adresses correspondantes arrivant sur les boîtiers de RAM. 5. Si le processeur accède à l adresse "8 Méga" que se passe-t-il? Comment vérifier que de la mémoire est présente pour une adresse donnée? 3 Accès à des données de taille différente Problème des tailles multiples : Le processeur peut maintenant accéder des mots de un, deux ou quatre octets (instruction assembleur ldr, str, strb, strh, ldrb, 2

ldrh). Pour cela il donne le code de la taille sur les broches Long 1 et Long 0 comme suit : Long 1 Long 0 : Taille 00 : 1 octet 01 : 2 octets 10 : 4 octets 11 : Erreur 1. Quelles sont les combinaisons de parité d adresses et de tailles d objet permises pour un accès en un seul cycle? Décrire le décodeur d adresses. La fonction de décodage doit calculer les signaux d accès à chacun des boîtiers utilisés et le signal d erreur d accès à une adresse invalide. 2. Le processeur émet l adresse 258 (en décimale) pour accéder à un mot de deux octets. Donner les adresses correspondants côté mémoire. 1 octet : toutes adresses autorisées : on prend dans le bon boîtier, le processeur remet l octet dans le poids faible du registre. A titre d exemple, l adresse 258 est de la forme 4X+2, l octet est lu dans B. En interne, le processeur recale cet octet sur les bits 7-0 d un registre. 2 octets : pour les adresses 4X+3, les octets concernés, 4X+3 et 4(X+1) se trouvent dans A et D respectivement. cette combinaison est impossible car il faudrait mettre à la fois X et X+1 dans le bus d adresses entre A 2 et A 23. Les autres combinaisons sont possibles mais en pratique on interdit toutes les adresses impaires. 4 octets : seulement les adresses multiples de 4 sont autorisées. En résumé, les cas d erreur sont les suivants : 2 octets : adresse impaire = Erreur 4 octets : adresse non multiple de quatre = Erreur Connexion de la RAM : on rajoute un boîtier de sélection des boîtiers de la mémoire. Ce boîtier est donné dans la figure 3. 3

AccèsMem A 1 A 0 Long 1/0 Erreur A B C D FIG. 3 Décodeur d adresse dans le cas d accès à des tailles multiples La table de vérité est donnée dans la figure 1. A 1 A 0 Long 1 Long 0 A B C D Erreur 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 1 0 0 0 1 1 0 0 1 0 0 0 0 0 0 0 1 0 0 1 1 0 0 1 0 1 0 0 0 0 1 1 0 0 1 1 1 0 0 0 1 1 0 1 0 0 0 0 1 0 0 1 0 1 1 1 1 0 0 1 1 0 1 0 0 0 0 0 1 1 1 1 0 0 0 0 0 1 φ φ 1 1 0 0 0 0 1 TAB. 1 Fonction de décodage d adresses 4 Augmentation de la mémoire disponible On ajoute 12 boîtiers pour remplir tout l espace d adressage (2 24 octets). On dispose au total de 16 boîtiers de 1 Mega octet chacun et possédant comme précédemment 20 fils d adresses et 8 fils de données. 4

1. Décrire l organisation de la mémoire et le décodage d adresses sachant que l on veut pouvoir accéder à des octets, à des mots de 16 bits ou à des mots de 32 bits? On assemble comme précédemment 4 blocs de 4 boîtiers de 1 Megaoctets de RAM chacun. Ces 4 blocs peuvent être vus comme des boîtiers possédant 22 fils de bus adresses et 32 fils de bus données. On rajoute un fils de sélection à ces blocs qui doit être à 1 pour sélectionner le bloc. Les fils A 0 à A 21 sont connectés à chacun de ces blocs et les bits de poids fort A 22 et A 23 du bus d adresses permettent de choisir le bon bloc comme suit : A 23 A 22 0 0 Bloc 0 0 1 Bloc 1 1 0 Bloc 2 1 1 Bloc 3 La figure 4 donne les connexions des 4 blocs dénommés A0, A1, A2 et A3. A 0 00 01 10 11 A 1 A 2 A 3 A 2 - A 21 A 23 A 22 FIG. 4 Sélection du boîtier 5

5 Boîtiers de tailles différentes Il existe un mode superviseur et un mode utilisateur sur ce processeur. Le signal envoyé par le processeur vers l extérieur S/U indique s il est en mode superviseur ou utilisateur. Une erreur doit être emise dans le cas où un accès à une zone superviseur est demandée alors que le processeur n est pas en mode superviseur. On considère une mémoire dans laquelle l accès à des octets, des mots de 16 bits ou 32 bits est possible. La mémoire est organisée comme suit : Quatre boîtiers de mémoire morte (accès en lecture seulement) de 256 Ko chacun. La ROM occupe les adresses [0 à 1M [ en mode superviseur seulement. C est une partie du noyau du système qui s exécute au moment du "boot" de la machine. Quatre boîtiers de mémoire vive de 256 Ko chacun, occupent les adresses [3 à 4M [ en mode superviseur seulement. C est la pile système. Huit boîtiers de mémoire vive de 1 Mo chacun, occupent [8 à 16M [ accessibles dans les deux modes. Ils contiendront les programmes et données utilisateurs. Un boîtier d E/S huit bits accessible en mode superviseur seulement. Il est considéré comme trois octets. Deux broches (a1, a0) permettent d adresser les 3 cases mémoires du coupleur : a1, a0 case mémoire 0 0 registre données en L/E 1 0 registre état en lecture 1 1 registre commande en écriture On veut qu il soit "vu" par le processeur aux adresses suivantes : 1M + 3 : registre données L/E 1M + 11 : registre état Lecture 1M + 15 : registre commande Ecriture Un boîtier d E/S seize bits accessible en mode superviseur uniquement. Deux broches (a1,a0) permettent d adresser les 3 cases mémoires comme pour le premier coupleur. On veut qu il soit "vu" par le processeur aux adresses suivantes : 2M + 2 : registre données L/E 2M + 10 : registre état Lecture 2M + 14 : registre commande Ecriture 6

1. Sur quelle partie du bus données les coupleurs d entrée sortie doivent ils être branchés pour pouvoir utiliser les adresses données ci-dessus? Quelles sont les fils du bus adresse du processeur qu il faut brancher sur les deux fils (a1, a0) des coupleurs? 2. Donner la fonction de décodage d adresses pour cette mémoire. La fonction de décodage doit calculer les signaux d accès à chacun des boîtiers utilisés et le signal d erreur d accès à la mémoire pour tous les accès interdits (accès utilisateur, écriture en ROM, accès impossible suivant l adresse). 7

8 ROM E/S RAM RAM A 23 s/u A 22 A 21 A 20 r/w A 19 A 18.. A 2 A 1 A 0 L 0 L 1 E 0 1 2 3 a b a b c d 0 1 2 3 4 5 6 7 0 0 φ 1 0 1 0 0 0 0 φ 1 0 0 0 0 0 0 1 0 0 0 0 0 1 1 1 0 0 1 0 1 1 1 1 1 1 1 0 0 0 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0 1 0 0 1 1 1 0 0 0 0 1 1 0 0 0 0 0 0 1 1 φ 0 0 0 0 0 0 1 0 0 0 0 0 1 1 1 0 0 1 0 1 1 1 1 1 1 1 0 0 0 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0 1 0 0 1 1 1 0 0 0 0 1 1 0 0 0 0 0 0 1 TAB. 2 Fonction de décodage d adresses [0M, 1M[ et [3M, 4M[ pour les boîtiers RAM et ROM accessibles en mode superviseur

9 ROM E/S RAM RAM A 23 s/u A 22 A 21 A 20 r/w A 19... A 3 A 2 A 1 A 0 L 0 L 1 E 0 1 2 3 a b a b c d 0 1 2 3 4 5 6 7 0 1 0 0 0 0 1 0 0 1 1 0 0 1 0 1 φ 1 0 0 0 1 0 0 1 0 0 1 1 1 1 0 0 0 1 0 1 1 0 φ φ φ φ 1 0 φ φ 0 φ Autre φ φ 1 0 φ 0 0 φ 1 0 0 0 0 0 0 0 1 0 1 1 0 0 1 0 1 0 φ φ 1 0 0 0 0 0 1 1 0 0 1 1 1 0 0 0 0 1 0 1 1 0 φ φ φ φ 1 φ 0 0 φ Autre φ φ TAB. 3 Fonction de décodage d adresses pour les deux boîtiers servant aux entrées/sorties

10 ROM E/S RAM RAM A 23 s/u A 22 A 21 A 20 r/w A 19... A 3 A 2 A 1 A 0 L 0 L 1 E 0 1 2 3 a b a b c d 0 1 2 3 4 5 6 7 0 φ 0 0 0 0 0 0 1 0 0 0 0 0 1 1 1 1 0 0 1 0 1 1 1 1 1 1 0 0 0 0 0 1 0 0 0 0 1 0 0 1 0 1 1 1 0 0 0 0 0 0 1 0 0 1 0 0 1 1 1 0 1 0 0 0 0 1 1 1 1 0 0 0 0 0 0 1 1 0 1 1 1 Idem Idem 0 Idem TAB. 4 Fonction de décodage d adresses [8M, 16M[ pour les 8 boîtiers RAM dans les deux modes