Professional Documents
Culture Documents
PLAN
Concept gnral de la machine de Von Neumann Concept dtaill de larchitecture Mmoire Module dE/S Bus Processeur Excution dune instruction Niveaux de programmation
Concept gnral
En 1946, John Von Neumann: mathmaticien amricain dorigine hongroise, a dfinit un modle de larchitecture interne que doit avoir un ordinateur (on la nomm machine de Von Neumann). Ce modle darchitecture de Von Neumann rgit jusqu nos jours, et reprsente larchitecture sur laquelle se base nos ordinateurs actuels.
La mmoire centrale dite aussi principale est un dispositif capable de stocker les informations: linformation peut tre de type programme qui est en cours d'excution (auquel on a fait appel ou bien par lutilisateur via des touches clavier ou clic souris ou bien un programme qui a fait appel un autre programme) ou bien de type donnes (chiffres, lettres..) qui sont utilises ou traites par ce programme.
Un programme = est du traitement de linformation crit sous forme dune suite dinstructions (instruction= opration, tche effectuer)
7
10
Slection destination
2 1
11
Composant 1: Mmoire
La mmoire centrale ou principale ou RAM (Random Access Memory) stocke le programme en cours d'excution et les donnes utilises par ce programme.
RAM : Random Access Memory :
Mmoire accessible en criture (on peut y sauvegarder des informations) et lecture (rcuprer une information dj stocke). Mmoire volatile : son contenu est vid en l'absence d'alimentation (si systme teint, les dernires informations sont oublis)
12
Composant 1: Mmoire
La mmoire est constitue d'un ensemble de cellules (=cases), o on stocke (mmorise) des informations toutes de mme taille (mme nombre de bit): chaque information est dite motmmoire. Chaque mot mmoire est repr par son adresse @.
13
Composant 1 : Mmoire
La taille du mot mmoire ( w : sur combien de bits, le mot mmoire est crit) est gnralement en Octet (sur 8 bits), mais peut tre de 8, 16, 32 ou 64 bits sur les systmes rcents. Ladresse est crite sur N bits, donc on dispose de 2N mots mmoire. si le mot mmoire est un octet, on mesure la capacit totale de la mmoire(=le nombre de bits quelle peut contenir) en octet = 2N. les prfixes usuels pour les RAMs:
14
Composant 1 : Mmoire
Les oprations niveau mmoire: Fetch (=read): lecture du contenu dune cellule mmoire (mot mmoire) ayant une adresse spcifie lavance. Store (=write): Ecriture dun mot mmoire une adresse bien dtermine. La mmoire est interface (interroge) via: Registre dadresse RA = Memory Adress Register (MAR) contient ladresse dune donne Registre Mot RM= registre dchange de donnes= Memory Data Register (MDR) Signal Lecture/Ecriture = Fetch/Store signal Comment se droule lexcution dune opration au niveau de la mmoire?
15
Composant 1 : Mmoire
Droulement dune opration de lecture : lire (adresse @): Si on
veut effectuer une opration de lecture, on doit dabord disposer de ladresse du mot mmoire quon veut lire, do les tapes suivantes :
Charger l@ dans le registre dadresses MAR Dcodage de ladresse a lieu au niveau du circuit dcodeur (voir figure) Copier la valeur contenue l@ prcise dans le registre MDR.
16
Composant 1 : Mmoire
Charger l@ dans MAR Charger value dans MDR Dcoder ladresse dans MAR Copier le contenu de MDR dans cellule mmoire ayant ladresse @mentionne.
17
Composant 1 : Mmoire
18
RS
RE
19
Composant 3 : Bus
Les changes dinformations diffrents niveaux passent par un bus partag dit bus systme. Un bus est un ensemble de lignes (chemin conducteur) qui transportent linformation.
Il existe des bus : Entre systmes autonomes (ex ordinateur- retroprojecteur) : passage par des ''fils'' ou cbles. Entre composants (ex. Bus systme) : passage par des pistes sur circuit imprim. A l'intrieur d'un composant (ex. registres<-> UAL): passage sur des pistes mtalliques ''graves'' sur le support silicium
20
Composant 3 : Bus
Un bus transportant des 0 et des 1 peut tre:
Bus srie:
Les donnes d'un mot binaire (les 0 et les 1) sont envoyes successivement (synchronises par lhorloge: temps) sur un nombre de lignes de transmissions restreints. ex.
Bus parallle est constitu de groupes de lignes permettant l'envoi de mots binaires complets en une seule tape. Les donnes d'un mot binaire sont envoyes simultanment (sur plusieurs lignes)
21
Composant 3 : Bus
Le bus systme dsigne un bus parallle au cur de l'ordinateur qui fait circuler 3 types d'informations sur 3 groupes de fils:
Les lignes de donnes permettent dchanger du contenu mmoire: bidirectionnelles (par exemple entre les registres du processeur et la mmoire principale et vice versa) Les lignes d'adresse identifient la case mmoire concerne Les lignes de contrle signalent le type d'opration effectuer(read/ write..) et coordonnent les changes (synchronisation)
22
Composant 3 : Bus
Exemple: de bus systme entre processeur et mmoire :
23
Composant 3 : Bus
Exemple: Une instruction exige au processeur de rcuprer la valeur dune case mmoire dsigne par ladresse 0x2E00001C et la mettre dans un registre interne du processeur.
=> Comment procde le processeur? : Le processeur envoie ladresse hexadcimale 0x2E00001C (qui peut tre convertie en binaire) sur les lignes d'adresse. Il met le bit de contrle RD/WR 1 (pour dire quil sagit dune opration de ReaD : lecture) et la ligne de contrle ENABLE 0 (pour activer le module mmoire) La mmoire cherche la donne contenue cette adresse et envoie sa valeur (sur 32bits) sur les lignes de donnes. La mmoire fait passer le bit de contrle ACK de 1 0 pour signaler au processeur que l'information est disponible sur les lignes de donnes
24
26
27
Le dcodeur informe le squenceur qui met partir de ces informations l'enchainement de signaux qui ralise l'action au niveau registres (ex: transfert de donnes depuis la mmoire ou un priphriqueE/S..), bus (rcolter les @ (bus adresse), valeurs des donnes (bus de donnes) , UAL (effectuer laction de lopration exemple: addition, ET, comparaison)...
LUAL, aprs excution de laction, retourne le rsultat et modifie le registre Flags de codes conditions qui est un ensemble de bits rsumant l'issue de la dernire opration de calcul ou de comparaison 29
30
Architecture gnrale
31
Oprations arithmtiques ou logiques effectues au niveau UAL -Arithmtique entire usuelle a 2 oprandes -Oprateurs boolens NON, ET, OU, dcalages -Comparaisons
Modification du droulement de la squence -Branchements non conditionnels -Branchements conditionnels : choix de squence en fonction du rsultat d'une opration (CCR) -Appels de sous programmes et retours appelant
32
Les instructions(2)
Jeu dinstructions:
L'association entre le code de l'instruction et les actions effectues par le processeur est dtermine par le schma de cblage du dcodeur et du squenceur C'est le niveau du passage du logiciel (instructions sous formes d'informations) au matriel (actions effectives), on dit que les instructions sont excutes.
Exemple de codage binaire d'une instruction sur processeur type Intel (x86):
33
Instructions (3)
Jeu dinstructions:
Chaque type de processeur possde son propre systme d'associations entre codes d'instructions et actions effectives Cet ensemble dpend aussi du nombre et de la largeur des registres, des oprations possibles ...
L'ensemble des instructions qu'un type de processeur peut excuter s'appelle le jeu d'instructions (instruction set) C'est le ''vocabulaire'' du processeur Cest le concepteur du processeur qui dfinit Registres, chemins de donnees (Bus) Actions possibles (calculs, copies, acces bus...) Codage instructions actions La liste des instructions (jeu d'instruction) possibles sur ces dispositifs matriels
34
36
37
38
39
40