Вы находитесь на странице: 1из 18

Les Systmes base de microprocesseur:

BUS D'ADRESSE(A19..A0)

CPU
(Microprocesseur)

MMOIRE

CIRCUITS D'E/S

SORTIES ENTRES
7 4 1 0 8 5 2 . 9 6 3 =

BUS DE DONNES(D15..D0)

BUS DE CONTRLE

HORLOGE

RLE DES BUS: Les bus sont des ensembles de fils lectriques partags par les diffrents circuits et utiliss par le microprocesseur pour communiquer avec les autres circuits (mmoire et interface).

BUS D'ADRESSE BUS D'ADRESSE (A19..A0)


A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8

CPU
(Microprocesseur)

CPU
(Microprocesseur)

A0

LST E.I.

Page 1 sur 18

BUS D'ADRESSE: Le bus dadresse est gnre par le microprocesseur. Le bus dadresse est utilis par le microprocesseur pour slectionner (adresser) une location de mmoire ou un circuit dentre-sortie. Le bus dadresse est un bus uni-directionnel; ce qui signifie que ladresse voyage dans un sens seulement: ladresse origine du microprocesseur et est dirige vers les autres circuits (mmoire, circuits dE/S). Exemple dutilisation: Lors dun cycle de lecture en mmoire, 1. Ladresse de la location de mmoire est dpose par le microprocesseur sur les lignes dadresse. Dans lexemple prsent droite, ladresse est: 0D4A6 hex 2. Le microprocesseur actionne le signal de lecture. 3. La donne ladresse spcifie par le contenu des lignes dadresse est lue par le microprocesseur.
BUS D'ADRESSE
A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 0 0 0 0 1 1 0 1 0 1 0 0 1 0 1 0 0 1 1 0

0 D 4 A 6

CPU

En pratique, la mmoire est rpartie entre plusieurs botiers.


(A16..19) Circuit de Dcodage 0 1 2 3 A19 A0 CE

BUS D'ADRESSE (A0..A15)


A0..A15 CE A0..A15 CE A0..A15 CE A0..A15

CPU
(Microprocesseur)

RAM 1

RAM 2

RAM 3

RAM 4

B. OUKARFI

Page 2 sur 18

Ladressage seffectue en deux parties: 1. Un certain nombre de ligne dadresse sont appliques un circuit de dcodage qui va slectionner un des botiers de mmoire partir de ces lignes dadresse. Dans lexemple prsent ici, les adresses A16 A19. 2. Un certain nombre de lignes dadresse sont appliques directement tous les botiers de mmoire et servent slectionner la location dans le botier de mmoire slectionn. Dans lexemple prsent ici, les adresses A0 A15.

A191817 1514 12 11 9 8 7 6 5 4 3 2 1 0 16 13 10 0 0 0 1 0 1 1 0 0 0 1 1 10 1 0 1 0 0 0 A19..16 = 0001

Circuit de Dcodage 0 1 2 3

A19 A0 CE (A15..A0) BUS D'ADRESSE 0110001110101000 A0..A15 CE A0..A15 CE A0..A15 CE A0..A15

CPU
(Microprocesseur)

RAM 1

RAM 2

RAM 3

RAM 4

Le dessin plus haut montre la slection du botier de mmoire par le dcodeur dadresse. La slection dune carte dinterface seffectue de manire semblable. Sur chaque carte se trouve un dcodeur dadresse dont le rle est de dterminer si ladresse prsente sur le bus dadresse est celle de cette carte dinterface. Chaque carte dcode une adresse diffrente. Le dessin plus bas montre cette situation.
A19 A0

BUS D'ADRESSE

Dcodeur

Dcodeur Circuit d'interface no.1 Circuit d'interface no.2

Dcodeur Circuit d'interface no.3

CPU
(Microprocesseur)

LST E.I.

Page 3 sur 18

B. OUKARFI

Page 4 sur 18

Le nombre de lignes dadresses prsentes sur le bus dadresse dterminent la capacit dadressage du microprocesseur. Le nombre de locations diffrentes qui peuvent tre adresses avec n lignes dadresse est: nombre de locations = 2n MICROPROCESSEUR 8088 Intel 80286 Intel 80386 Intel 80486 et pentium 6809 Motorola BUS DE DONNE: Nombre de lignes dadresse 20 24 32 32 16 220 224 232 232 216 Capacit dadressage (en location ou octet) 1 048 576 16 777 216 4 294 967 296 4 294 967 296 65536 1 Meg 16 Meg 4 Giga 4 Giga 64 Kilo

CPU
(Microprocesseur) BUS DE DONNES (D15..D0)

CPU
(Microprocesseur)

BUS DE DONNES D15 D14 D13 D12 D11 D10 D9 D8

D0

Le bus de donne est utilis par le microprocesseur pour changer des donnes de ou vers la location de mmoire ou le circuit dentre-sortie slectionne par ladresse prsente sur le bus dadresse. Exemple dutilisation: Lors dun cycle dcriture en mmoire,

LST E.I.

Page 5 sur 18

1. Ladresse de la location de mmoire est dpose par le microprocesseur sur les lignes dadresse. 2. La donne crire est dpose sur le bus de donne par le microprocesseur. Dans lexemple prsent droite, la donne crite est: B529 hex 3. Le microprocesseur actionne le signal dcriture.
BUS DE DONNES

CPUD15
D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0

1 0 1 1 0 1 0 1 0 0 1 0 1 0 0 1

B 5 2 9

B. OUKARFI

Page 6 sur 18

Le bus de donne est un bus bi-directionnel; ce qui signifie que la donne peut originer du microprocesseur et tre dirige vers les autres circuits (mmoire, circuits dE/S). ou originer de ces autres circuits et tre dirige vers le microprocesseur. Dans le premier cas, le microprocesseur agit comme la source des donnes; dans le second cas, le microprocesseur agit comme la destination. Le nombre de lignes prsentes sur le bus de donnes dtermine la taille des donnes que le

CRITURE

LECTURE

CPU
(Microprocesseur) D15 D14 D13 D12 D11 D10 D9 D8

CPU
(Microprocesseur) D15 D14 D13 D12 D11 D10 D9 D8

D0

D0

microprocesseur peut manipuler dun coup. La largeur du bus de donnes est une caractristique importante des microprocesseurs. Cest un des facteurs qui dtermine leur puissance de traitement. Dans le cas illustr plus haut, on a affaire un microprocesseur ...16 bits! MICROPROCESSEUR 8088 80186 80286 80386SX 80386DX 80486 PENTIUM AMD Athlon NOMBRE DE BITS INTERNE 16 16 16 32 32 32 32 32 LARGEUR DU BUS DE DONNES 8 16 16 16 32 32 64 64

LST E.I.

Page 7 sur 18

BUS DE CONTRLE: Le bus de contrle est constitu par lensemble des lignes de contrle qui servent grer et diriger les changes entre le microprocesseur et les autres circuits. Pour le moment, nous simplifierons ce bus aux signaux suivants: -MEMR: MEMory Read ou lecture-mmoire. Ce signal est actionn par le microprocesseur au moment deffectuer la lecture dune donne en mmoire. -MEMW: MEMory Write ou criture-mmoire. Ce signal est actionn par le microprocesseur au moment deffectuer lcriture dune donne en mmoire. -IOR: Input-Output Read ou lecture-E/S. Ce signal est actionn par le microprocesseur au moment deffectuer la lecture dune donne dans un circuit dE/S. -IOW: Input-Output Write ou criture-E/S. Ce signal est actionn par le microprocesseur au moment deffectuer lcriture dune donne dans un circuit dE/S. CLOCK: Cest lhorloge cest--dire un signal carr gnr par un oscillateur. Cest une entre sur le microprocesseur. Ce signal dtermine la vitesse laquelle le microprocesseur excute ses oprations lmentaires (lecture, criture, etc.). CPU 386SX-25 386DX-33 486DX-33 486DX-50 CLOCK 25 MHz 33 MHz 33 MHz 50 MHz

Ce tableau montre quen ne tenant compte que de la vitesse de lhorloge, un 486DX-50 est 2 fois plus puissant quun 386SX-25. Cependant dautres facteurs interviennent comme la largeur du bus de donnes. Les 486DX possdent un bus de donnes de32 bits alors que les 386SX possdent un bus de donnes de seulement 16 bits. Rsultat: le 486DX-50 peut traiter les informations non pas 2 fois mais 4 fois plus vite quun 386SX-25! NOTE: Le signe - devant ces signaux indique quil sagit de signaux actif 0 logique...

B. OUKARFI

Page 8 sur 18

FONCTIONNEMENT DES BUS BIDIRECTIONNELS (Bus de donnes): Un bus bidirectionnel, comme le bus de donnes, doit permettre de transporter des informations dans les deux directions savoir: du microprocesseur vers les circuits de mmoire ou d'entre-sortie. Le microprocesseur agit alors comme la source et les circuits de mmoire ou d'entre-sortie comme destination du transfert (criture). d'un circuit de mmoire ou d'entre-sortie vers le microprocesseur. Le microprocesseur agit alors comme la destination et le circuit impliqu comme la source du transfert (lecture).

CPU

RAM 1
D15..D0
D15 D0

RAM 2
D15..D0

RAM 3
D15..D0

RAM 4
D15..D0

BUS DE DONNES

La source de la donnes sur le bus peut donc tre nimporte quel des circuits qui y est raccord, dans lexemple plus haut, le CPU ou nimporte quel des circuits de mmoire RAM...Ce type de bus doit donc possder un mcanisme qui permette d'viter les conflits lectriques entre les diffrents circuits qui peuvent "driver" les lignes de bus. Les circuits utilisent des sorties "Tri-State". Voir illustration. SORTIE CONVENTIONNELLE
CIRCUIT 1
+5v

SORTIE TRI-STATE
CIRCUIT 1
+5v

ON

LIGNE DE BUS

OFF

LIGNE DE BUS = 0 volt

OFF Contrle = 0 logique

OFF

CIRCUIT 2

+5v

CIRCUIT 2
OFF

+5v

OFF

ON Contrle = 1 logique

ON

LST E.I.

Page 9 sur 18

La figure plus bas montre une ligne du bus de donnes. On retrouve sur chaque circuit reli au bus de donnes (microprocesseur, RAM1, RAM2, etc.) des "buffers" tri-state. Note: 2 "buffers" sont prsents sur chaque ligne l'entre des circuits. Ces "buffers" sont connects dos dos, ce qui permet d'entrer ou de sortir une donne. Ce circuit est "bi-directionnel".

RAM 1
Lecture RAM 1

RAM 2
Lecture RAM 2

RAM 3
Lecture RAM 3

RAM 4
Lecture RAM 4

CPU
Bus Interne Di

criture RAM 1

criture RAM 2

criture RAM 3

criture RAM 4

Di

Di

Di

Di

BUS DE DONNES (Di)

Le figure suivante montre ltat des buffers tri-state et le sens de circulation des informations lorsquune donne est crite par le microprocesseur dans le circuit de mmoire RAM2.

RAM 1
0 - Tri-state

RAM 2
0 - Tri-state

RAM 3
0 - Tri-state

RAM 4
0 - Tri-state

CPU
Bus Interne Di

0 - Tri-state

1 - actif

0 - Tri-state

0 - Tri-state

Di

Di

Di

Di

BUS DE DONNES (Di)

B. OUKARFI

Page 10 sur 18

Compltez la figure suivante pour quelle montre ltat des buffers tri-state et le sens de circulation des informations lorsquune donne est lue par le microprocesseur dans le circuit de mmoire RAM3.

RAM 1
Lecture RAM 1

RAM 2
Lecture RAM 2

RAM 3
Lecture RAM 3

RAM 4
Lecture RAM 4

CPU
Bus Interne Di

criture RAM 1

criture RAM 2

criture RAM 3

criture RAM 4

Di

Di

Di

Di

BUS DE DONNES (Di)

LST E.I.

Page 11 sur 18

La figure plus bas illustre les points suivants: comment le circuit de mmoire avec qui le transfert de donnes sera effectu, est slectionn partir de l'adresse prsente sur le bus d'adresse. Le circuit de dcodage dcode les lignes dadresse A16 A19 et actionne le CE dun seul des botiers de RAM. Ce qui autorise les buffers tri-state de ce botier (et seulement de ce botier) fonctionner. comment la direction des transferts est contrle partir des lignes du bus de contrle du microprocesseur. Supposons que le microprocesseur effectue une criture en mmoire. Le signal de contrle Ecrituremmoire (-MEMW) sera actionn par le microprocesseur. Rsultat: les buffers tri-state qui permettent dentrer une donne dans les circuits de RAM seront autoriss mais pas ceux qui permettent de sortir une donne. Seul le botier slectionn pourra entrer la donne prsente sur le bus... Supposons que le microprocesseur effectue une lecture en mmoire. Le signal de contrle Lecturemmoire (-MEMR) sera actionn par le microprocesseur. Rsultat: les buffers tri-state qui permettent de sortir une donne des circuits de RAM seront autoriss mais pas ceux qui permettent dentrer une donne. Seul le botier slectionn pourra placer une donne sur le bus de donnes...

B. OUKARFI

Page 12 sur 18

LST E.I.
A19,A18 Circuit de Dcodage 0 1 2 3
A19 A180 0 0 0 0 1 1 1 0 1 1 1 1 1 2 3 1 1 0 1 1 0 1 1 1 1 1 0

Exemple: Le microprocesseur va crire la donne B529 hex ladresse 0D4A6 hex

BUS D'ADRESSE
A19 19 1817 1615 1413 12 1110 9 8 7 6 5 4 3 2 1 0 (A17..A0) A0 CE A0..A17

RAM 1

CE

A0..A17

RAM 2

CE

A0..A17

RAM 3

CE

A0..A17

RAM 4

CPU
OE WE OE WE 1514 13 1211 109 8 7 6 5 4 3 2 1 0 OE WE OE WE

D15 D0
MEMR MEMW IOR IOW CLK

BUS DE DONNES BUS DE CONTRLE

HORLOGE

Page 13 sur 18

B. OUKARFI
A19,A18 Circuit de Dcodage 0 1 2 3
A19 A180 0 0 0 0 1 1 1 0 1 1 1 1 1 2 3 1 1 0 1 1 0 1 1 1 1 1 0

Exemple: Le microprocesseur va lire la donne ladresse 2E608 hex

BUS D'ADRESSE
A19 19 1817 1615 1413 12 1110 9 8 7 6 5 4 3 2 1 0 (A17..A0) A0 CE A0..A17

RAM 1

CE

A0..A17

RAM 2

CE

A0..A17

RAM 3

CE

A0..A17

RAM 4

CPU
OE WE OE WE 1514 13 1211 109 8 7 6 5 4 3 2 1 0 OE WE OE WE

D15 D0
MEMR MEMW IOR IOW CLK

BUS DE DONNES BUS DE CONTRLE

HORLOGE

Page 14 sur 18

(A16..19)

Circuit de Dcodage 0 1 2 3

A19 A0 CE (A0..A15) BUS D'ADRESSE A0..A15 CE A0..A15 CE A0..A15 CE A0..A15

CPU
(Microprocesseur)

RAM 1

RAM 2

RAM 3

RAM 4

BUS DE DONNES (D15..D0)

BUS DE CONTRLE

HORLOGE

RSUM: Le bus de donnes est un bus bidirectionnel. Ce bus utilise des tampons 3 tats ("3-state buffers") pour viter les conflits lectriques. Cependant pour viter les conflits lectriques, il faut galement qu'un seul circuit "drive" le bus la fois. Le bus d'adresse est un bus unidirectionnel, habituellement contrl par le CPU. Le bus de contrle est constitu de l'ensemble des lignes de contrle du microprocesseur Identifiez ces lignes de contrle sur le dessin plus haut de mme que les entres des circuits de RAM auxquelles ces lignes sont raccordes.

LST E.I.

Page 15 sur 18

SQUENCEMENT DE LORDINATEUR Un ordinateur est une machine lectronique conue pour excuter des programmes. Un programme est une liste dinstructions. Ces instructions sont ranges en mmoire dans des locations conscutives. Pour excuter ces instructions, le microprocesseur procde en 2 tapes: 1. 2. recherche de la prochaine instruction range en mmoire et dcodage de cette instruction excution proprement dite de cette instruction

Une fois cette instruction excute, le microprocesseur recommence le mme cycle (rechercheexcution) quil rpte et rpte encore sans arrt... Exemple: Supposons que le microprocesseur excute linstruction range en mmoire ladresse 80B63H. Et que le code de cette instruction soit FE08H qui reprsente (autre supposition...) linstruction crire en mmoire ladresse 61AE9H le contenu du registre A. Lexcution de cette instruction seffectuera en 2 tapes tel quindique auparavant: dabord la recherche ou lecture de linstruction en mmoire par le microprocesseur. Celui-ci dcodera ensuite cette instruction. Et dans un deuxime temps, le microprocesseur effectuera lcriture en mmoire du contenu du registre A. NOTE: Le code machine FE08H (16 bits) occupe deux octets en mmoire donc deux locations de mmoire!!! La prochaine instruction est donc range ladresse 80B65H. Que fera ensuite le microprocesseur? Rponse: il lira la prochaine instruction range en mmoire et lexcutera. Et ensuite? Rponse: linstruction suivante. Et ensuite?....

B. OUKARFI

Page 16 sur 18

LST E.I.

CPU
(Microprocesseur)
A19 A0

(A19,A18)

Circuit de Dcodage 0 1 2 3 (A17..A0) BUS D'ADRESSE

RAM 1
CE ( de 00000 00158H 3FFFFH) 00159H 0015AH 0015BH A0..A17

RAM 2
CE A0..A17 ( de 40000H 61AE7H 7FFFFH) 61AE8H 61AE9H 61AEAH WEOE

RAM 3
CE ( de 80000H 80B62H DFFFFH) 80B63H 80B64H 80B65H A0..A17

RAM 4
CE ( de E0000H F0268H FFFFFH) F0269H F026AH F026BH WEOE A0..A17

Registre A

WEOE D15 D0
MEMR MEMW IOR IOW

WEOE

BUS DE DONNES BUS DE CONTRLE

(D15..D0)

HORLOGE

Page 17 sur 18

B. OUKARFI

CPU
(Microprocesseur)
A19 A0

(A19,A18)

Circuit de Dcodage 0 1 2 3 (A17..A0) BUS D'ADRESSE

RAM 1
CE ( de 00000 00158H 3FFFFH) 00159H 0015AH 0015BH A0..A17

RAM 2
CE A0..A17 ( de 40000H 61AE7H 7FFFFH) 61AE8H 61AE9H 61AEAH WEOE

RAM 3
CE ( de 80000H 80B62H DFFFFH) 80B63H 80B64H 80B65H A0..A17

RAM 4
CE ( de E0000H F0268H FFFFFH) F0269H F026AH F026BH WEOE A0..A17

Registre A

WEOE D15 D0
MEMR MEMW IOR IOW

WEOE

BUS DE DONNES BUS DE CONTRLE

(D15..D0)

HORLOGE

Page 18 sur 18