Академический Документы
Профессиональный Документы
Культура Документы
microprocesseur
Du data-flot
au
micro-programm
(microprocesseur)
1
Solutions numriques
1- Dfinition du problme
2- Conception dune solution
VHDL
Schma ?
Autres :
3456-
Ralisation
Vrification
etc.
etc.
2
Logique cble
Toute ralisation dun circuit
spcifique une fonction
Circuit intgr spcifique
Circuit programmable
Etc.
=> logique cble
hardwired
Cble en dur
Fonction
PC Linux i7
ARM 11
FPGA
FPGA effectif
Matching 3D
partir de 2
images HD
34 s
246 s
32 ms
192 ms
Rutilisation de ressources
Peu, sinon conception trop complique
Extension en surface silicium
Nest pas infinie !
Rutiliser la logique
Entity
end
Architecture
Begin
S1 = a and b;
S2 = c and d;
End titi;
a
b
s1
c
d
s2
Rutilisation de Ressources
Raliser un
additionneur
n bits
Bien
loptimiser
Additionneur
s
8
a+b
a
b
B
Positionner
les entres
A et B fil par
fil !
Recueillir
Sortie S
Additionneur
s
9
a+b+c?
a
a+b+c?
b
B
Soit utiliser
un deuxime
additionneur
Additionneur
s
Additionneur
s
10
a + b + c ?!
A et B, et
rcuprer S,
puis appliquer C
et s, et rcuprer
S finale
Mais il faut
mmoriser S
entre temps
Additionneur
11
a + b + c ?!
A et B, et
rcuprer S,
puis appliquer c
et s, et rcuprer
s finale
Mais il faut
mmoriser s
entre temps
Additionneur
CK3
OE3
R3
12
Squence
1ere tape
2e tape
A + B et S dans un
registre
S dans R3
3e tape
Additionneur
R3 sur R2
S dans R3
5e tape
4e tape
CK3
OE3
R3
Fin calcul
13
Diagramme dtats
Additionneur
CK3
OE3
R3
14
Machine tats
Modlisation en
VHDL
Ralisation directe
en silicium
Pas de composants
programmables
15
Rutilisation de ressources
B
On a donc rutilis
ladditionneur
Additionneur
CK3
OE3
R3
16
Comparaison 2 solutions
B
Additionneur
Additionneur
s
s
CK3
OE3
R3
Additionneur
s
Ressources mesures en
quivalent portes logiques deux
entres
Exemple additionneur complet 1 bit
4 portes
18
Multiplication (*)
Difficile concevoir
Surtout pour 16 bits * 16 bits = 32 bits !
Ou 32 * 32 = 64 bits !
2 solutions :
1- Table de vrit gante
16 bits * 16 bits
2^16 * 2^16 lignes dans la table !!
2- a * b = a + a, b fois
6*4=6+6+6+6
*remarque TP multiplieur
19
Multiplieur
Former une
nouvelle unit
Unit
Arithmtique
Additionneur
squentiel
Multiplieur
squentiel
CK3
OE3
R3
20
Multiplieur
CK3
OE3
R3
21
Rutilisation de ressources
On a donc rutilis
ladditionneur
Mais on doit
fournir :
Mul = 1, Signal qui
dmarre la
squence
a et b
On appellera ces
lments
une instruction
22
Terminologie
Micro-squence
La machine
tats qui ralise
linstruction
Les oprandes
A et B
Instruction
MUL = 1
23
Unit Arithmtique
Et Logique
s
Mais
additionneur,
soustracteur,
dcalage, etc. Fonction
Slection de la
fonction par des
CK3
lignes de
OE3
fonction
R3
24
Fonctions
+-/
Symbole exacte
dune UAL
UAL
S
25
A
Fonctions
+-/
UAL
S
Noyau
Du
Microprocesseur
26
Rsumons
On a ralis le cur dun processeur,
comprenant
un multiplieur a*b
base dun seul additionneur
Un additionneur a + b
base du mme additionneur
27
CK
D
UAL
A
Fonctions
+-/
CK
Q
CK
28
Format instruction
Code binaire
11001001001001001001010 = $4E1F ?
Adresse
Microsquence
Registres
Mnmonique
MUL R1,R2
R1 : source, R2 : destination
MUL #12,R1
29
La squence est :
Cble
machine tats en logique (bascule D,
logique transitions, logiques sorties)
30
Rsumons
Le noyau du microprocesseur est
:
B
A
Fonctions
+-/
UAL
S
31
A
Fonctions
+-/
UAL
32
A
Fonctions
+-/
UAL
33
UAL
Compteur
Dadresse
dinstruction
A
Fonctions
+-/
34
Fonctions
+-/
UAL
Compteur
Dadresse
dinstruction
R
E
G
I
S
T
R
E
35
Fonctions
+-/
UAL
Compteur
Dadresse
dinstruction
D
E
C
O
D
A
G
E
I
N
S
T
R
U
C
T
I
O
N
S
R
E
G
I
S
T
R
E
36
Interface externe
D
E
C
O
D
A
G
E
I
N
S
T
R
U
C
T
I
O
N
S
Bus de donnes
D7 D0
R
E
G
I
S
T
R
E
Fonctions UAL
+-/
Bus dadresse
A9 A0
Compteur
Dadresse
dinstruction
37
D0
D
E
C
O
D
A
G
E
I
N
S
T
R
U
C
T
I
O
N
S
R
E
G
I
S
T
R
E
Fonctions UAL
+-/
Compteur
Dadresse
dinstruction
A9
A0
38
39
D0
D
E
C
O
D
A
G
E
I
N
S
T
R
U
C
T
I
O
N
S
R
E
G
I
S
T
R
E
Fonctions UAL
+-/
Compteur
Dadresse
dinstruction
A9
A0
/MR
/MW
40
Logique
de
contrle
Fonctions
+-/
UAL
Compteur
Dadresse
dinstruction
D
E
C
O
D
A
G
E
I
N
S
T
R
U
C
T
I
O
N
S
R
E
G
I
S
T
R
E
41
D
E
C
O
D
A
G
E
I
N
S
T
R
U
C
T
I
O
N
S
R
E
G
I
S
T
R
E
Registre interne
Registre interne
Fonctions
+-/
UAL
Compteur
Dadresse
dinstruction
Logique
de
contrle
42
Registre temporaire
Registre temporaire
Registre interne
Registre interne
Registre interne
Registre interne
Fonctions
+-/
UAL
Compteur
Dadresse
dinstruction
D
E
C
O
D
A
G
E
I
N
S
T
R
U
C
T
I
O
N
S
R
E
G
I
S
T
R
E
Logique
de
contrle
43
Un microprocesseur !
Registre temporaire
B
D
E
C
O
D
A
G
E
I
N
S
T
R
U
C
T
I
O
N
S
R
E
G
I
S
T
R
E
Registre temporaire
Registre temporaire
Registre temporaire
Fonctions
+-/
UAL
Registre interne
Compteur
Dadresse
dinstruction
Registre interne
Registre interne
Registre interne
Logique
de
contrle
44
Registre temporaire
B
D
E
C
O
D
A
G
E
I
N
S
T
R
U
C
T
I
O
N
S
R
E
G
I
S
T
R
E
Registre temporaire
Registre temporaire
Registre temporaire
Fonctions
+-/
UAL
Registre interne
Compteur
Dadresse
dinstruction
Mmoire dinstructions
et de donnes
Registre interne
Registre interne
Registre interne
Logique
de
contrle
45
Solutions numriques
Solutions
numriques
Solutions
cbles
Circuit
spcifique
Circuit
programmable
Solutions
programmes
microprocesseur
Modlisation
VHDL
Programmation
Assembleur,
langage info
Synthse
Compilation
microcontrleur
46
Famille x86
Introduction
47
Architecture x86
Format instruction
Exemple dinstruction
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71