Les microprocesseurs

Download Report

Transcript Les microprocesseurs

A. Objectifs de la séquence:
à l'issue de la séquence, il faut être capable de:
•Comprendre le fonctionnement de la technologie
3 états
•Déterminer l’adresse de différents boîtiers
mémoires dans un système minimum.
B) Introduction
La disponibilité de petits ordinateurs bon marché a rendu très attrayant le pilotage
direct, par ordinateur, d’expériences et de processus ainsi que la collecte de données
et les calculs.
Actionneur
Commande
Logique
de
commande
Environnement
Capteurs
Logique de commande :
Logique câblée : Fonctions ET, OU, RS,JK,séquenceur
Logique programmée : Automate programmable,système minimum à μP
C) Elément de base d’un micro-ordinateur
Un micro-ordinateur est constitué de plusieurs éléments dont le plus important est
le microprocesseur.
C.1) Fonctions réalisées par un μP
Un μP peut:
Fournir les signaux de synchronisation et de commande à tous les éléments du
micro-ordinateur.
Prendre en charge les instructions et les données dans la mémoire
Transférer les données entre la mémoire et les dispositifs E/S et vice versa
Décoder les instructions
Effectuer les opérations arithmétiques et logiques commandées par les
instructions
Réagir aux signaux de commande produits par les entrées sorties comme le
signal RESET et les INTERRUPTIONS
C.2) Organisation interne d’un μP
La logique interne est d'une très grande complexité on peut cependant schématiser et dire
qu'elle comprend 3 sections comme le montre la figure ci-dessous.
L'UAL, pour sa part a pour tâche d'effectuer sur les données les opérations
arithmétiques et logiques (ET,OU, décalages,incrémentation,décrémentation ect…).
La Section de registres contient les différents registres qui ont tous un rôle précis.
Le plus important des registres est le pointeur d'instruction PC qui a pour rôle de
savoir quelles sont les adresses des codes instructions qui doivent être pris en
charge dans la mémoire
Section de commande et de synchronisation: est de prendre en charge
(récupérer) et décoder (interpréter) les codes instruction dans la mémoire
contenant le programme (R/W,horloge,)
C.3) Les informations traitées par un μP
 La plus petite unité d'information dans un ordinateur est le bit.
 Un bit isolé ne nous apprend pas grand chose. C'est pour cela que l'on a choisi
comme unité d'information dans un ordinateur un groupe de bits appelé mot.
 Le nombre de bits qui constitue un mot est le paramètre le plus souvent utilisé pour
décrire un ordinateur. (8bits, 16bits, 32bits..).
C.3.1) Types de mots machines.
Un mot conservé dans une mémoire d'ordinateur peut correspondre à deux
types d'informations.
Une instruction ou une donnée.
a) Les données
Les données sont des nombres ou des caractères que le programme du μP
soumet à diverses opérations.
Les données se présentent sous diverses formes:
binaires signées, DCB,à virgule flottante, code ASCII.
Exemples:
 Le nombre +86 dans un mot de 8bit
01010110
 Code ASCII de la lettre V
01010110
Les deux codes sont identiques l'ordinateur ne sait pas faire la différence entre les
deux. C'est la tâche du programmeur de savoir quel type de données est mémorisé.
QUESTIONS?
Quel est l'avantage de disposer d'un ordinateur ayant un mot plus long ?
b) Mot instruction.
Le format pour les données varie peu entre ordinateur différent c'est tout le contraire
pour les mots intructions.
Les mots instructions précisent deux éléments d'informations de bases.
Format d'un mot instruction
Code OP
4 bits
A d re ss e d e
l 'O p é r a n d e
19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
En conclusion le mot ci-dessus peut décrire 16 opérations différentes et
retrouver 65536 adresses d'opérandes.
D) Structure type d’un micro-ordinateur.
A 15
A0
B u s
UCT
M ORTE
V IV E
D7
.
D0
R /W


RES
IN T
C irc u it
g én é r a t eu r
d u s ig n a l
d ' h o r lo g e
d 'a d r e s s e
B u s
d e
B u s
d e
d o n n é e s
c o m
m
a n d e
I n te r fa c e
d e s o rtie

B u s
In te r f a c e
d 'e n tr é e
d 'a d r e s s e

P o r t d e s o rtie
d is p o s itif
d e s o r tie
P o rt d 'e n tr é e
d is p o s itif
d 'e n tr é e
D.1) Opération de Lecture et d'écriture
a) Lecture


R /W
B us
d 'adresse
B us
d e d o nn ées
N o uvelle
adresse
Anc ienne
a dresse
D o n n ée
d e la
m ém o ire
H au te-Z
1
R /w et
adress e
générés
2
3
4
B us de do nnée
m ém orisé dans l'UC T
D onnée sur
le b us stable
V alidation de la
cas e m ém oire ou de
l'E /S sélectionné
b) écriture


R /W
B us
d 'ad res se
B us
d e d o n n ées
N o uvelle
ad re sse
A ncie nne
a dre sse
D on née
d e la
m ém oi re
H au te-Z
1
R /w et
adress e
gé nérés
2
3
4
D on né e m é mo risé e
da n s les dispositifs E /S
D o nnée s u r
le bu s stable
V alid atio n d e la
cas e m ém o ire o u d e
l'E /S s élec tio nné
E) Connexions avec l'extérieur
Exemple : Liaison entre un μP et une mémoire
E.1) Les risques de conflits sur le BUS de données
Le bus de données est commun au μP. Pour éviter les conflits sur le BUS ,
un « 0 » et un « 1 » présent en même temps ) il convient de déconnecter
électriquement , faute de pouvoir le faire physiquement , le boîtier non concerné par
l’opération de transfert à réaliser.
Ceci est possible grâce à 2 éléments
La logique 3 états (tri-states)
Le décodage d’adresses
E1.1) La logique 3 états
En dehors de l’état haut et de l’état bas, un circuit logique 3 états possède
un état supplémentaire appelé état haute impédance.
Table de vérité
A
Y
Y
A
E
E
Symbole US
A
Y
0
0
0
0
1
1
1
0
Z
1
1
Z(haute impédance)
Symbole Fr 3 états
Application:
Pour transmettre la donnée de la mémoire
au PIA, il faut successivement :
•1 Inhiber le PIA (CS=0)
•2
E
D0
D0
PIA
P
D7
D7
Valider la mémoire
•3
Inhiber la mémoire
•4
Valider le PIA
D0
CS
D7
Mémoire
OE
E1.2) Le décodage d’adresses
a) Sélection linéaire d’adresse.
Cette méthode n’est valable que pour les petits systèmes.
On utilise les bits hauts d’adresse pour valider ou inhiber les entrées « CHIP select »
et « Output Enable » des périphériques d’état.
A13
A14
A15
A13
A14
A15
P
R/W
PIA
&
CS
Conséquences:
OE
Mémoire
Les adresses des positions mémoires du PIA et de la mémoire sont directement liées
au choix des bits d’adressages.
1) Pour le PIA il est sélectionné par A15=0, A14=1 ; A13=1
2) Pour la mémoire A15=1
b) Décodage complet du Bus d’adresse.
Les 16 bits du bus d’adresses seront utilisés pour chaque boîtier par l’intermédiaire
de circuits à porte ou de décodeurs.
A15
A14
A13
A12
A11
A10
&
CS
A0
D0
Bus d'adresses
Bus de données
A9
D3
Donner la zone d’adresse ou le boîtier est valide
A15
A14
A13
A12
A11
A10
A9
A8
A7
A6
A5
A4
A3
A2
A1
A0
1
0
0
0
1
1
X
X
X
X
X
X
X
X
X
X
1
0
0
0
1
1
X
X
X
X
X
X
X
X
X
X
adresse
•On utilise plus couramment des décodeurs :
1 parmi 4 , 1 parmi 8 ; 1 parmi 10
A0
A1
A2
Exemple 74138
E1
E2
E3
&
Si le circuit n’est pas valide, toutes les sortie sont à 1.
Si le circuit est valide, seule la sortie correspondant au code binaire
affiché en A0, A1, A2 passe à 0.
S0
S1
S2
S3
S4
S5
S6
S7
c) Exercices:
1) Adresser 4 Eprom 2708 de 1Koctets chacune avec la sélection linéaire d’adresse.
Préciser le plan mémoire de chacune. (Bus d’adresse de 16bits).
A15 A14 A13 A12
BUS d'ADRESSE
10
10
10
10
A0-A9
A0-A9
A0-A9
A0-A9
CS
CS
CS
CS
2) Résoudre le problème par décodage complet du bus d’adresse avec un
décodeur 74138 .Préciser le plan mémoire de chacune.
A15 A14 A13 A12
BUS d'ADRESSE
10
A10
A11
A12
A0
A1
A2
A13
A14
A15
&
10
10
10
A0-A9
A0-A9
A0-A9
A0-A9
CS
CS
CS
CS
S0
S1
S2
S3
S4
S5
S6
S7