ARCHITECTURE DES ORDINATEURS - Suptema-T1

Transcription

ARCHITECTURE DES ORDINATEURS - Suptema-T1
Page 1 sur 14
ARCHITECTURE DES ORDINATEURS
Concepteur de l'ordinateur IBM
En association avec
INTEL pour le micro processeur
Et
Microsoft pour le MS DOS (Operating System)
Les machines actuelles démarrent toujours comme les PC/AT de 1981 c est à dire en mode
réel : 16 bits
Même si une machine a des BUS plus importants (16,32 ou 64 bits) les machines actuelles ne
démarreront qu'en mode 16 bits, c est à dire que les machines ou le processeur et la mémoire
ROM ne liront que les bits les plus à droite, et qui seront nommés AX, BX, CX etc..
(je crois qu'on appelle cela l'espace adressable)
C'est le chargement de l'OS (Operating System) qui fait que la machine passe en 32 ou 64
bits (mode PROTEGE)
LE PROCESSEUR
Caractéristiques essentielles
1. taille de ses registres
2. jeux d'instructions (opérations mathématiques et logiques)
3. fréquence (rythme les opérations du micro processeur)
Le processeur est fixé sur une carte mère (sur laquelle il y a des CHIPSETS intégrés (ou jeu
de composants) pour un micro ordinateur et sur une CPU (Central Processing Unit) pour un
mini ordinateur (ou gros système)
Le Rôle du Processeur
1. exécuter un programme qui se trouve en mémoire centrale (qui est une suite
d'instructions en langage machine) selon le concept de VON NEUMANN
2. traiter les données informatiques (en exécutant les instructions)
Le processeur ne connaît pas les périphériques mais seulement les interfaces et les registres de
ces interfaces.
LA MÉMOIRE CENTRALE
Tout d'abord, il faut préciser que les barrettes de mémoire sont TRES sensibles à l'électricité
statique
La mémoire centrale sert à stocker les informations à TRES court terme
La mémoire se calcule sur le mode de 2 puissance 10 soit 1024 = 1 kilo octet, donc, 512K de
mémoire = 512*1024 et non 512*1000
Pour le reste on reste en système décimal normal ou
1K = 103,
1M = 106 etc…
Page 2 sur 14
La mémoire centrale est composée de
ROM : (Read Only Memory) qui est une mémoire non volatile et qui contient tous les
programmes POST (Power On Self Test) et IPL (Initial Porgram Loading équivalent de Boot
et qui sert au démarrage de l'OS) nécessaires au démarrage de l'ordinateur
La ROM donne les premières instructions nécessaires au démarrage de la machine et à la
lecture du disque dur.
RAM : Dynamic Random Access Memory : contient le système d'exploitation (du moins ce
qui est nécessaire) et dans la place qui reste, les applications vont être chargées (depuis le
stockage de masse (disques dur, lecteurs optiques, etc..)
Plus on a de mémoire mieux c est parce que les systèmes actuels ont tendance à mettre le plus
d'informations possibles dans la RAM
La RAM contient les programmes en cours d'exécution et les données en cours de traitement.
LES INTERFACES D ENTREE ET SORTIE VERS LES PERIPHERIQUES
Ce sont les moyens électroniques (composants) de communication entre l'ordinateur et les
périphériques.
Ces interfaces sont en général intégrées dans la carte mère.
Chaque interface possède plusieurs registres programmables qui permettent de gérer et
commander les périphériques raccordés.
Le programme en charge de ces registres est le Device driver ou pilote de l'interface qui est
directement rattaché à l'Operating System
Ces registres sont tous au format 16 bits et sont volatiles, c est à dire qu ils se vident lors
de l'arrêt de la machine, et se rechargent lors de la mise en marche de l ordinateur
Les registres des interfaces sont d un accès plus rapide que les registres de la RAM
Dans une interface, il existe des registres classiques et des registres à décalage (Shift Register)
Schéma :
LE BUS
Ensemble de fils sur lesquels on effectue la transmission de signaux en parallèle;
Le BUS permet les échanges entre le processeur, la mémoire et les interfaces.
Il y a des BUS unidirectionnel et bi directionnels (relation maître(processeur) esclave
(mémoire centrale))
Types de communications :
Adresses
Données
Commandes
Propriétés des BUS
Le principe est de transmettre des données (plusieurs bits) sur une ligne de communication
Chaque BUS a ses caractéristiques propres :
1. sa taille
2. sa fréquence
Page 3 sur 14
NOTION DE PROGRAMME
C est une suite d instructions qui s'exécutent dans l'ordre où elles ont été prévues (exécution
séquentielle)
Il existe des instructions de saut (sorte de séquence pour aller plus loin)
Il existe des instructions de branchements (pour revenir en arrière)
Pour être exécutés, les programmes doivent être dans la RAM
FONCTIONNEMENT DU PROCESSEUR
Pour fonctionner, le processeur possède plusieurs organes :
1. un séquenceur, qui exécute les instructions
2. L'UAL (Unité Arithmétique et Logique ou ALU) chargé d'exécuter les opérations
élémentaires permettant les traitements effectués par l'ordinateur. L'UAL reçoit des
instructions de l'unité de commande et peut lire et écrire en mémoire
3. Des registres généraux qui stockent les opérandes (données) (qui sont appelés : AEX,
EBA, ECX, EFX quand on est en 32 bit et AX, BX, CX et DX quand on est en 16 bits,
le E signifie : Extended)
4. le compteur ordinal (ou PC : program Counter ou EIP chez Intel et AMD, c'est sous
cette appellation que nous l'utiliserons). Le EIP stocke l'adresse mémoire de la
prochaine instruction à exécuter (sous le contrôle de l'OS)
5. Le registre d'instruction (IR : Instruction register) qui contient l'instruction en cours
d'exécution par le séquenceur
6. Le registre d'état du processeur (FR : Flag Register) dans lequel viennent : le signe , si
la donnée est nulle, la retenue, l'overflow, l'incohérence. Les flags servent à modifier
l'ordre d'exécution d'un programme.
Page 4 sur 14
LA CARTE MERE
CF PAGE 10 DU SUPPORT DE COURS
C'est bien expliqué et le dessin avec les annotations page 11 (format ATX)
La pile sert à alimenter en permanence la SRAM-CMOS, pour conserver en permanence les
paramètres spécifiques de la configuration de la machine
Quelques annotations
En mode réel, la première instruction vient de la ROM BIOS
En mode protégé, la première instruction vient de l'OS
Prise en compte d'une instruction :
1. La chercher dans la Ram (avec son adresse) et la ramener dans IR
2. Décodage de l'instruction pour trouver l'opération à effectuer (dans la ROM)
3. Exécution de l'instruction.
Sur un BUS, il ne peut se faire qu'un seul transfert à la fois, ce qui implique la gestion d'une
file d'attente.
A un instant T, il n'y a qu'un seul maître du BUS : c'est le processeur
Page 5 sur 14
LE MICRO-PORCESSEUR
Le micro processeur est un circuit intégré qui rassemble sur une même puce ou composant
toutes les fonctions de contrôle et de calcul.
Un processeur est un automate capable d'exécuter séquentiellement une suite d'instruction
(c'est à dire un programme) qui réside en mémoire centrale (Von Neumann)
Caractéristique d'un processeur :
1. le nombre et la taille de ses registres
2. Son jeu d'instruction (séquenceur)
3. Sa fréquence d'horloge
4. Son brochage (socket)
5. Sa tension d'alimentation
Il existe au moins 2 ALU dans un processeur
Floating point Unit : c est ce qui sert à calculer les nombres avec virgule. Il agit
comme un coprocesseur
Registres : Registres généraux, le PC le MMU (Memory Manager Unit)
Excecution Unit : c'est la conjonction de l'ALU et du Séquenceur
Core : cœur du processeur
Primary Cache : c est le cache L1 (code (instructions) cache) et cache L2 (données ou
datas). Le cache est une série de registres qui sert de tampon entre le processeur et la
RAM. Les instructions sont décodées dans le cache, ce qui fait que les instructions
vont s'exécuter plus vite par la suite.
Branch Predictor : Détermine quelles seront les instructions suivantes qu'on va aller
chercher dans le cache L1
Bus interface :
o 64 bits pour les données
o 32 bits pour les adresses
Page 6 sur 14
Les processeurs 8086 et 8088 ont tous la même architecture interne :
1+2 = registre PC en mode réel
Les principaux registres du 8086-8088
Octets de poids forts
AH
BH
CH
DH
SI
DI
BP
SP
CS
DS
SS
ES
IP
FR
Les registres généraux 4X16 BITS
Octets de poids faibles
AL
Accumulateur AX = AH+AL
BL
Accumulateur BX = BH+BL
CL
Accumulateur CX = CH+CL
DL
Accumulateur DX = DH+DL
Les registres Offset 4X16 BITS
Index de source
Index de destination
Pointeur de base
Pointeur de Pile (Stack Pointer)
Les registres Segment 4X16 BITS
Code Segment
Data Segment
Stack Segment
Extra data segment
Les registres particuliers 2x16 BITS
Instruction pointer (registre PC si avec CS)
Flag Register
Page 7 sur 14
SP : Stack Pointer : ou pointeur de Pile : est associé à SS (stack Segment) (SS:SP) pour
former l'adresse du sommet de la pile. Celle-ci est une Mémoire LIFO (Last In First Out)
utilisée lors d'interruptions de programmes
IP : Instruction Pointer : ce registre contient l'adresse de la prochaine instruction à effectuer
dans le programme
Note : Lorsqu'on parle de segment en mode réel, on fait référence à un espace de 64 Ko dans
la mémoire, et on a affaire à des fichiers en .com
UTILITE DU STACK POINTER
Adresse 1
Adresse 2
rts
Sous programme
Call sous programme
PROGRAMME
Dans le programme il y a un sous
programme qui est appelé avec l
instruction call sous programme. A ce
moment là, l'adresse de l instruction est
enregistrée dans la pile (adresse2).
A la fin du sous programme, il y a l
instruction RTS qui renvoie à l'adresse 2
et qui va dire: il me faut l’adresse
suivante soit l'adresse 1
Page 8 sur 14
LA SEGMENTATION
La segmentation fournit le mécanisme permettant d'adresser un espace mémoire de
1Mo (2 puissance 20) à partir de 2 registres de 16 bits
Le processeur travaille uniquement avec des adresses logiques
Une adresse logique est composée de 2 registres internes du processeur : un registre
segment et un registre offset ou un registre index et 1 opérande. Ce calcul est réalisé
par une seconde ALU sur 20 bits
Il existe 4 segments
o Un segment code ou programme : CS (code segment)
o Deux segments de données : DS et ES
o Un segment pile : SS
Calcul d'une adresse physique à partir d une adresse logique : C800:005
1. on est en base 16
2. on multiplie C800 base 16 par 10 base 16 = C8000
3. on ajoute 005 (base 16)
4. on a donc l'opération suivante
+C8000
+00005
=C8005 qui est bien une adresse sur 20 bits (une fois transposée en base 2)
Quelques valeurs à connaître pour l'adressage :
16 bits donnent 64 Ko adressables (2 16/2 10 = 2 6)
17 bits donnent 128 Ko
18 bits donnent 256 Ko
19 bits donnent 512 Ko
20 bits donnent 1024 Ko soit 1 Mo
32 bits donnent 4 Go
Note : on s'aperçoit que, lorsqu'on ajoute 1 bit, on multiplie par 2 la quantité adressable
Le fonctionnement du mode protégé 386
Le mode protégé possède 4 états de fonctionnement : RING 0 à RING 3
1. Ring 0: on a le droit de tout faire : lire et écrire (les programmes disposent de toutes
les ressources matérielles)
2. Ring 1 : réservé
3. Ring 2 : non utilisé
4. Ring 3 : pas de ressources matérielles : c est le mode d'utilisation de l'utilisateur final
(on a le droit de rien faire)
Page 9 sur 14
LE PROCESSEUR – suite
SIMD :
Single Instruction Multiple Data
C'étaient les processeurs de départ (inventeur : Mr. Seymour CRAY)
Penthium 4 : instruction minimum à l'intérieur : 144, maintenant on arrive à plus de 1000 avec
la technologie SSE2
LE MMX ET SSE2 (intel)
Multi Media eXtended : utilisé pour le multi média et son compressés
SSE2 : Extension Streaming SIMD 2
Le MMX : a rajouté 57 instructions aux processeurs
Le SSE2 a rajouté 70 instructions aux processeurs
Le 3Dnow
Ca a rajouté 21 nouvelles instructions dans les processeurs de AMD
CONFIGURATION DES PROCESSEURS
Réglage des tensions :
Le CPU voltage : tension à laquelle travaille le processeur. Les tensions à l'heure actuelle sont
de l'ordre de 1.2v à 3.5v (et cela continue à se réduire)
Le RATIO : c est la fréquence du BUS processeur (FSB) multiplié par un coefficient qui
donne la fréquence du processeur
LE PROCESSEUR RISC
Risc = Reduced Instruction Set Computer
Ces processeurs sont surtout utilisés par les gros modèles d'ordinateurs
Par opposition au
CISC Complex Instruction Set Computer : surtout utilisé par les machines d'aujourd'hui
(intel)
S'il ne fallait retenir qu'une caractéristique du processeur RISC, ce serait la présence d'une
structure "pipe line" : l'exécution d'une instruction commence lors même que la précédente n'a
pas atteint son terme
Techniques SUPERSCALAIRES : intègre plusieurs unités fonctionnelles, qui sont chacune
composées de d une unité arithmétique et logique (UAL) et de registres ce qui permet
d'exécuter plusieurs instructions à la fois.
PERFORMANCES DE PROCESSEURS ACTUELS
On a plusieurs mesures pour comparer les processeurs, toutefois il faut comparer ce qui est
comparable. (fréquence identique+ compilateurs)
SPEC : System Performance Evaluation Council
SPEC Int 2004 :: benchmark (programme d'essai) qui permet de classer des processeurs de
même famille (similaires) en fonction du temps que ce programme met à "tourner"
On peut leur opposer les MIPS (millions instructions par seconde) ou Mflops
Page 10 sur 14
Les DSP : Digital Signal Processor : utilisé dans le traitement numérique des signaux
analogiques. On les trouve essentiellement sur les cartes son et modem
LA MÉMOIRE
ON A VU QU'IL Y EN AVAIT DE 2 SORTES : la RAM et la ROM
RAM : mémoire volatile (random access memory)
Il existe :
DRAM :
dynamic RAM
rafraichissement : 15 nano seconde (ns)
wait state : cycle d attente d horloge jusqu'à ce que la mémoire délivre un autre donnée
au processeur
élément mémoire : le condensateur
composant par bit : 1 condensateur et un transistor MOS
utilisation : mémoire principale / mémoire vidéo
SRAM
Static RAM
Élément mémoire : la bascule RS
Synchrone par rapport au processeur
SRAM-CMOS
Faible consommation électrique
Utilisation :
o RTC (qui est dans le chip set)
o paramètres de configuration de la carte mère
SRAM Bipolaires
Accès rapide mais gourmande en courant
Utilisation : mémoire cache
LE CONTRÔLE D ERREUR
BIT DE PARITE : cf cours semaine précédente (techniques digitales)
ECC : Error Code Correction : basé sur les principes de Hamming
Meilleure détection
Surtout pour les serveurs
8 bits supplémentaires pour un mot de 64 bits
LES BARRETTES MEMOIRE (nombre de broches qui est déterminant)
Les principales mémoires qu'on va trouver sont des mémoires DIMM (SO DIMM pour les
portables)
DDR :
Utilise les fronts montants et descendants d une horloge de 133 MHz
Offre les meilleures performances à un coût réduit
Performances :
o PC2100 SDRAM DDR à 266 MHz : 2.1 Go/s
o PC2700 SDRAM DDR à 333 MHz : 2.664 GO/s 333 MHz par 8 octets
DDR2
À fréquence identique, le débit est 2 fois plus élevé que la DDR
240 broches
Barrettes non compatibles avec la DDR
Page 11 sur 14
Les MEMOIRES ROM
ROM=Read Only Memory
Il existe les technologies suivantes :
ROM
ROM BIOS : qui va servir à initialiser la RAM (BIOS = Basic Input Output System)
PROM = programmable ROM
EPROM = Erasable PROM
EPROM PROM = EPROM One Time Programmable
EEPROM : Electrically EPROM
Les mémoires FLASH sont de type EPROM
La mémoire FLASH est une mémoire non volatile, mais réinscriptible comme un DRAM
Introduction en 1983
Clés USB
Applications :
o Rom bios et boot lock
o Firmware (il en existe un certain nombre dans les interfaces (où sont localisés
les drivers)
o Clés USB
o Cartes PCMCIA de type II ou III
LE PROCESSUS DE DEMARRAGE D UN ORDINATEUR
1. MISE SOUS TENSION; Il existe un laps de temps de 20 nanosecondes entre le
moment où le courant est lancé et le moment où on considère que les tensions à
l'intérieur de ma machine sont stables (on appelle cela la Boucle de Reste)
2. Il y a ensuite un signal provenant de l'alimentation qui dit que tout est bon : c est le
POWER OK
3. Ce signal va forcer le contrôleur du processeur dans le registre CS avec une valeur de
FFFF base 16, et les valeurs dans les autres registres seront toutes à 0. On a donc
l'adresse du registre PC qui va être la suivante : PC=CS+IP = FFFF
4. Cette valeur FFFF est le point d'entrée dans la ROM BIOS
5. Cette adresse correspond à une instruction de saut (JUMP) qui va faire aller au début
du programme POST (Power On Self Test). Le programme POST démarre
6. Le POST va aller dans la SRAM CMOS et va aller recopier les valeurs trouvées dans
la mémoire centrale (DRAM) (ce sont les paramètres de configuration) à partir de
l'adresse 400(base16) ainsi que les vecteurs d'interruption entre les adresse 0 (base 16)
et 3FF (base 16) (ce sont les pointeurs vers les pilotes des périphériques)
7. Si la SRAM CMOS est vide, alors le POST va aller dans la ROM BIOS, prendre les
adresses basses et les recopier dans la SRAM CMOS, et une fois que c est fait, le
POST reprend au point d'avant.
8. Si le POST va jusqu'au bout, c est le programme IPL qui prend le relais.
9. l'IPM va aller dans la ROM BIOS chercher une adresse de périphérique amorçable qui
va lancer l OS, et une fois que l'OS se lance, la machine passe alors en mode protégé,
et l'OS va installer les drivers des périphériques.
REMARQUES :
1. Le programme POST teste de façon élémentaire les divers éléments de la carte mère
(clavier, souris, vidéo etc.). En cas d'erreur, le POST envoie une série de BIP et
s'interrompt. Et là commencent les problèmes…..lol
2. pendant que le POST tourne, il va aller chercher le programme SET UP pour
modification et vérification.
Page 12 sur 14
L'espace adressable en mode réel est de 1 MO, dont on a la représentation ci-dessus.
LES ROM D EXTENSION DES CARTES D INTERFACES
Les interfaces graphiques possèdent et SCSI possèdent toutes du FIRMWARE sur une ROM
qui leur est propre, et qui contiennent les drivers de celles-ci écrit en mode 8086 (mode réel)
Les Interfaces Ethernet (réseaux locaux) possèdent un support pour une PROM de BOOT
Les rom de l'interface graphiques et de l interface SCSI sont des rom d extension de la rom
bios
Ces trois ROM servent au démarrage du PC : POST et IPL et ce quel que soit le système
d'exploitation
Page 13 sur 14
LA MEMOIRE CACHE OU ANTE MÉMOIRE
Ces mémoires cache sont localisées entre le processeur et la DRAM.
Elles sont intégrées dans le processeur et servent à accélérer les échanges entre le processeur
et la mémoire DRAM
Elles limitent le nombre de Wait State (cycles d'attente des infos transmises par la DRAM)
Le processeur travaille en nano seconde
La DRAM travaille en 10nano secondes (rapport de 1 à 10)
ADRESSAGE DES ENTREES SORTIES
Pour les PC c'est le I/O MAPPING I/O
Pour les Mac c est le IO MAPPING
Différence :
Le IO Mapping utilise un seul espace adressable qui est partagé par la mémoire centrale et les
Entrées-Sorties
Le IO Mapping IO utilise un espace adressable exclusivement réservé aux Entrées-sorties
MAC
interfaces
ram (user ring 3)
PC
Interfaces (ring 0)
RAM (user)
RAM
ESPACES RESERVES AUX CARTES PnP (plug and play)
Page 14 sur 14
LES DIFFERENTS CO PROCESSEURS
Définition : ce sont des processeurs spécialisés : FPU, MMU, contrôleur de Bus, processeurs
graphiques, etc.
Avantages :
o réalisent leurs tâches plus rapidement
o Libèrent le processeur central pour d'autres tâches
On trouve :
LE FLOATING POINT UNIT
Processeur mathématique
Capables de gérer des valeurs sur 32,64 et 80 bits
Calcul arithmétiques, trigonométrie, etc. sur des nombres entiers et réels (avec virgule
donc)
Il est intégré dans le processeur depuis le 80486
LE MEMORY MANAGEMENT UNIT
Permet de gérer la mémoire virtuelle
Convertit une adresse virtuelle en une adresse physique
Intégré au processeur depuis le 80286
LE PROCESSEUR GRAPHIQUE
Le processeur graphique
est intégré maintenant au chip set
LE RTC (REAL TIME CLOCK)
Existe depuis le PC/AT
Fournit date et heure
Contient les paramètres set up dans sa SRAM CMOS
Pour fonctionner a besoin d'une pile et d un quartz
Intégré maintenant dans le chip set de la carte mère
Reset par cavalier ou retrait de la pile
LES INTERRUPTIONS
C'est un évènement (hardware ou software) qui vient interrompre le programme en cours pour
permettre l'exécution d'un programme spécifique (exemple : imprimante)
Les différents types d’interruption
RESET
Les interruptions hardware masquables : IRQ (Interrupt ReQuest)
Les interruptions hardware non masquables : NMI (No Masquable Interrupt)
Les interruptions software
INT : utilisé surtout pur les appels aux "system call"(API) de DOS
Les TRAPs : erreur interne du processeur

Documents pareils