Architecture et Système

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

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

Conception de circuits numériques et architecture des ordinateurs

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

Structure de base d un ordinateur

VIII- Circuits séquentiels. Mémoires

Cours Informatique 1. Monsieur SADOUNI Salheddine

Sur un ordinateur portable ou un All-in-One tactile, la plupart des éléments mentionnés précédemment sont regroupés. 10) 11)

ASR1 TD7 : Un microprocesseur RISC 16 bits

Leçon 1 : Les principaux composants d un ordinateur

Cours 3 : L'ordinateur

Rappels d architecture

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

Chapitre 4 : Les mémoires

Exécution des instructions machine

Architecture des Ordinateurs. Partie II:

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

GPA770 Microélectronique appliquée Exercices série A

Organisation des Ordinateurs

Conception de circuits numériques et architecture des ordinateurs

Architecture des ordinateurs

CH.3 SYSTÈMES D'EXPLOITATION

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

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

IV- Comment fonctionne un ordinateur?

Architecture des ordinateurs

Licence Sciences et Technologies Examen janvier 2010

THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Initiation au HPC - Généralités

ELP 304 : Électronique Numérique. Cours 1 Introduction

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

Premiers pas sur l ordinateur Support d initiation

Fiche technique CPU 315SN/PN (315-4PN33)

Présentation du système informatique utilisé et éléments d architecture des ordinateurs

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

MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C

TD Architecture des ordinateurs. Jean-Luc Dekeyser

Ordinateurs, Structure et Applications

qwertyuiopasdfghjklzxcvbnmqwerty uiopasdfghjklzxcvbnmqwertyuiopasd fghjklzxcvbnmqwertyuiopasdfghjklzx cvbnmqwertyuiopasdfghjklzxcvbnmq

Une version javascript sera disponible directement dans le cours prochainement.

IFT1215 Introduction aux systèmes informatiques

V- Manipulations de nombres en binaire

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Tout savoir sur le matériel informatique

Atelier C TIA Portal CTIA04 : Programmation des automates S7-300 Opérations numériques

Traitement de données

Document de formation pour une solution complète d automatisation Totally Integrated Automation (T I A)

Architecture des calculateurs

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

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Introduction à l informatique en BCPST

Structure et fonctionnement d'un ordinateur : hardware

Fiche technique CPU 314SC/DPM (314-6CG13)

Compilation (INF 564)

CORRECTION EXERCICES ALGORITHME 1

Chapitre 1 L interface de Windows 7 9

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

MICROCONTROLEURS PIC PROGRAMMATION EN C. V. Chollet - cours-pic-13b - 09/12/2012 Page 1 sur 44

Définition 0,752 = 0,7 + 0,05 + 0,002 SYSTÈMES DE NUMÉRATION POSITIONNELS =

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

TP Déploiement de réseaux IP sous Linux et MS Windows sur une infrastructure virtualisée

CAA/SE N O T I C E D E M O N T A G E E T D U T I L I S A T I O N KIT DE MONTAGE. Clavier lumineux codes DIGICODE

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

Informatique Générale

Corrigé des TD 1 à 5

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

Programmation linéaire

212 Erreur accès anti- Echo. 214 Erreur démarrage vérif DSP. 215 Erreur accès trame IC. 216 Erreur DSP carte MSG. 217 Erreur données Carte MSG

T500 DUAlTACH. JAQUET T500 DualTach Instrument de mesure et de surveillance équipé de 2 entrées fréquence TACHYMETRE 2 CANAUX

Architecture ordinateur. Organisation mémoire et Entrées/Sorties

Représentation des Nombres

Mise en route et support Envision 10 SQL server (Avril 2015) A l'intention de l'administrateur SQL Server et de l administrateur Envision

QUESTION 1 {2 points}

Architecture matérielle des systèmes informatiques

Architecture des ordinateurs Introduction à l informatique

Chapitre 1 : Introduction aux méthodologies de conception et de vérification pour SE

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

RapidMiner. Data Mining. 1 Introduction. 2 Prise en main. Master Maths Finances 2010/ Présentation. 1.2 Ressources

Initiation à la Programmation en Logique avec SISCtus Prolog

Structure et Technologie des Ordinateurs A. Oumnad

CQP 112 Introduc/on à la programma/on. Thème 2 : Architecture d un système informa/que. Département d informa/que

Matériel & Logiciels (Hardware & Software)

Logiciel REFERENCE pré-requis informatiques et techniques :

Les liaisons SPI et I2C

Poker. A rendre pour le 25 avril

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

Configurer le Serveur avec une adresse IP Statique (INTERFACE :FastEthernet) : et un masque

I00 Éléments d architecture

Technologie 125 Khz pour une performance optimale en en environnement industriel. Création des badges. Programmation des badges

Tests de performance du matériel

Conventions d écriture et outils de mise au point

Cours 1 : Qu est-ce que la programmation?

REALISATION d'un. ORDONNANCEUR à ECHEANCES

Guide de formation EndNote Web Interface EndNote Web

Logique séquentielle

NETWORK & SOFTWARE ENGINEERING MANUEL D UTILISATEUR. Logiciel TIJARA. NETWORK AND SOFTWARE ENGINEERING Manuel d'utilisateur "TIJARA" 1

INF6500 : Structures des ordinateurs. Sylvain Martel - INF6500 1

Transcription:

Architecture et Système Stefan Schwoon Cours L3, 2016/17, ENS Cachan

Multiplexeur Supposons qu on possède k valeurs en entrée (ou k = 2 n ), pour n 1), ou chacune des valeurs x 0,..., x k 1 est un mot de m bits. On souhaite sélectionner l une de ces valeurs par son indice, p.ex. étant donné s (codé par n bits), on souhaite renvoyer x s. Applications: Lire un mot dans la mémoire en spécifiant son adresse. Choisir entre plusieurs sources de données. Obtenir une valeur dans un tableau pré-calculé. 2

Multiplexeur : Exemple Supposons m = n = 1, du coup on possède deux bits x 0, x 1 et un bit de sélection s 0. Solution: on réalise la fonction (x 0 s 0 ) (x 1 s 0 ). Supposons m = 1, n = 2, du coup on posséde x 0,, x 3 et s 1 s 0 : Dans un premier temps, on évalue s 0 pour sélectionner (en parallèle) entre x 0, x 1 et x 2, x 3. Dans un deuxième temps, on évalue s 1 pour sélectionner parmi les deux bits choisis avant. Le problème se géneralise pour n > 2 avec un circuit de profondeur O(n). Pour m > 1: On utilise m circuits en parallèle, un par bit. 3

Décodeur On possède une valeur s codée par n bits et 2 n sorties y 0,..., y 2 n 1. Sortie : y s = 1 et y s = 0 pour tout s s. Solution (facile) : Pour tout 0 s < 2 n, on construit la conjonction qui évalue si s = s. Applications : Sélectionner une cellule spécifique dans la mémoire. Sélectionner un périphérique parmi plusieurs pour échanger des données. 4

Symboles Les symboles typiquement utilisés pour les multiplexeurs et décodeurs : m x 0... x 2 n 1 m n s s n MUX m decode... y y 0 y 2 n 1 Les barres diagonales indiquent que le fil transfère un mot de la taille indiquée à côté (c est à dire il s agit d une collection d autant de bits). 5

Verrous et bascules Ce sont des circuits utilisés pour stocker des bits. La littérature distingue parfois deux types de circuits : les circuits non-temporisés sont appelés verrous (latch en anglais) les circuits temporisés sont appelés bascules (flip-flop en anglais) Il y a plusieurs types de verrous et bascules, selon des besoins spécifiques. Quelques éléments typiques : contrôles : aucun effet quand tous les fils de contrôle sont 0 signal d horloge (bascules seulement) deux sorties Q et Q, la valeur du bit et son complément 6

Verrou RS R Q S Q controls R (reset) and S (set): R = 0, S = 1: après peu de temps, Q = 1 et Q = 0 R = 1, S = 0: après peu de temps, Q = 0 et Q = 1 R = S = 0: les deux sorties restent inchangées R = S = 1: on obtient Q = Q = 0, devient instable lorsqu on on revient à R = S = 0 7

Verrou D D Q E Q contrôles D (data) et E (enable): E = 0: stable E = 1: Q devient D 8

Bascule D Reprenons le verrou D, mais en remplaçant E par un signal oscillant C (clock = horloge). Dans ce cas, D n est pris en compte que si C est dans sa phase haute. D C Q Q C D Q Q Dans les diagrammes, le signal d horloge est typiquement indiqué par un triangle. 9

Quand le signal C est partagé parmi tous les bascules du système, ceci permet de synchroniser les calculs dans le système entier. Le délai entre les 1 de C doit être suffisamment long pour que tous les calculs en parallèle puissent réussir. En plus, les 1 doivent être suffisamment courts pour bien séparer les phases d un calcul. 10

Mémoire vive Les bascules/verrous sont un exemple d une mémoire vive, avec les propritétés suivantes : mode lecture ou écriture volatile (contenu perdu sans alimentation électrique) utilisé pour faire des calculs, stocker des données en anglais: RAM (random-access memory, on accède facilement à toute adresse) 11

Mémoire morte Par contre, une mémoire morte est dite d avoir les propriétés suivantes : mode lecture seulement (pas de moyen pour l ordinateur ou le programmeur d en modifier) durable (même sans alimentation électrique) utilisé pour assurer le fonctionnement de l ordinateur (microprogrammation, tables mathématiques pré-calculées) en anglais: ROM (read-only memory) 12

Types de mémoire morte Façon la plus simple de produire un ROM : prendre une série de transistors, chacun représentera un bit physiquement interrompre le fil à la position X pour donner 1, sinon 0. voltage haut resistance voltage de sortie (C) programmable une seul fois appelé PROM quand la programmation se fait après la production initiale terre 13

EPROM EPROM = Erasable programmable ROM et EEPROM = electrically erasable PROM Consiste des transistors avec une porte supplémentaire ( floating gate ) qui accède à une couche entre la base et les autres élements du transistor. Le floating gate est programmable avec des charges électriques supérieur à ceux utilisé pendant l opération normale de l ordinateur. reprogrammable par l extérieur, mode lecteur seulement pour l ordinateur 14

Programmable logic array (PLA) Circuit logique qui sert aussi à réaliser une mémoire morte n bits d entrée, m bits de sortie tous les bits d entrée disponible aussi en négation Partie ET: k 2 n lignes, chacune choisit une conjonction d entrées Partie OU: m colonnes, tout bit de sortie est formé par la disjonction d un sous-ensemble des k lignes programmation consiste en choisissant les conjonctions et disjonctions 15

Architecture d un ordinateur simple Les éléments: processeur (CPU), consiste d une unité de contrôle (CU), unité arithmétique-logique (ALU), unité de microprogrammation et horloge mémoire principale les périphériques (fournissent des entrées/sorties pour les données) le bus qui transfert des données entre les composants 16

Architecture Un premier dessin : choisir source/destination mémoire B u s IP AX... SP Status Unité de Contrôle consulter MP périphérique ALU Horl. processeur (CPU) interrompre 17

Mémoire principale Pour stocker données et instructions (architecture dite von Neumann ) Organisée en 2 n mots de m bits, les mots stockés à des adresses 0..2 n 1 Valeur typique pour m: 8; pour n: 30..34 (= 1..16 GB) Réalisable, par exemple, avec des bascules D Échanges avec le processeur : lecture : multiplexeur pour choisir un mot à une adresse précise, transfert au bus obtenir un mot et une adresse du bus, utiliseur décodeur pour l écrire à la bonne destination 18

Le bus Pour connecter CPU, mémoire, périphériques: tous composants peuvent lire et écrire Utiliseur des multiplexeurs et décodeurs pour sélectionner source et destination du transfert Un transfert à la fois (on peut pas obtenir deux mots de la mémoire au même temps, par exemple). 19

Le processeur central (CPU) Contrôle toutes les opérations, avec les composants suivants: registres: mèmoire de court terme pour les opérations actuelles ALU: pour manipuler des données control unit: pour coordonner les transferts, avec l aide de l horloge et l unité de microprogrammation 20

Registres Un registre stocke un mot (souvent plus qu un mot de mémoire). Il existe plusieurs registres pour des objectifs différents. registres géneraux (accumulateur, AX, BX,... ) : utilisés pour les calculs compteur d instructions : pointe vers la prochaine instruction à exécuter dans la mémoire registre de statut : pour stocker quelques bits indiquant le succés ou non d une opération (comparaison, division par zéro,... ) pointeur de pile (SP) : indique le sommet d une pile qui sauvegarde des valeurs de certains registres, adresse de retour pour les sous-routines, etc 21

Unité de contrôle (CU) Travaille dans des phases indiqués par l horloge : Chaque phase réalise une opération nécessaire pour exécuter une instruction: Dans chaque phase, le CU doit organiser les transferts de données: donner les bons bits de sélection au bus transferer les donées entre ALU et registres réagir aux périquériques Quelques phases typiques: obtenir une instruction, décoder une opération, exécuter une opération (en plusieurs phases) Un ROM (unité de microprogrammation) peut servir pour fournir des signaux à donner aux autres élements 22

Phases Phase 1 (Instruction fetch): Laisser le bus utiliseur la valeur d IP comme sélecteur d adresse, transferer au CPU Phase 2 (Decode): Consulter unité de microprogrammation pour organiser les transferts néseccaires pour l opération Phases 3, 4,... (Execute): En utilisant le MU, organiser les bons transferts et manipulations dans chaque phase. En fonction de leur complexité, les différentes instructions nécessitent un nombre différent de phases. 23

Aperçu d un processeur system bus +1 pc_inc PC MA write MD read cpu bus pc_out IR op ir_in addr pc_in ia_out ac_in AC ma_in md_out ac_out md_in r_out R op ALU +1 step reset CU control signals alu_op 24

Ce dessin montre un bus à l intérieur du CPU et un bus principal. MA (memory address) et MD (memory data) communiquent avec la mémoire par le bus principal. IR (instruction register) : on suppose ici qu une instruction contient un code d opération et une adresse (comme dans l IAS). L unité de contrôle (CU) prend en compte l instruction actuelle et un compteur de phase. Ces deux permettent d obtenir les bons signaux de contrôle a fournir aux bus. 25

Exemples LOAD addr: charger le contenur d une adresse dans AC : phase 3: charger addr dans MA: (ia out, ma in) phase 4: obtenir données de la mémoire (read) phase 5: transfert vers l ALU, puis prochaine opération (md out, alu in, reset) ADD addr: rajouter contenu de addr à l accumulateur phase 3: charger addr dans MA: (ia out, ma in) phase 4: obtenir des données (read) phase 5: faire l addition (alu op=add) phase 6: transfert vers ALU, prochaine opération (r out, alu in, reset) 26

Interruptions Des périphériques (clavier, réseau) n ont pas toujours besoin de communiquer avec le processeur, mais si besoin, il faut réagir vite. Quand un périphérique souhaite échanger des données avec le processeur, il met son signal d interruption à 1. Quand le processeur est prêt pour la prochaine instruction, il vérifie s il y a reçu un tel signal d interruption et choisit celui avec la priorité la plus élevée. Dans ce cas le processeur continue son travail à une certaine adresse en fonction du signal choisi. Cette adresse devrait contenir du code pour gérer la communication. Ensuite on continue l exécution normale. 27