50
sif-1053 1 Cours 5 3. Construction d’un ordinateur Les circuits logiques L ’unité de contrôle (UC) L’unité arithmétique et logique (UAL) Le matériel Chapitres 4 et 5 CSA Chapitres 3 et 4 CSAPP Synthèse du professeur

Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

Embed Size (px)

Citation preview

Page 1: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 1

Cours 5

3. Construction d’un ordinateur

Les circuits logiquesL ’unité de contrôle (UC)L’unité arithmétique et logique (UAL)

Le matériel

Chapitres 4 et 5 CSA Chapitres 3 et 4 CSAPP Synthèse du professeur

Page 2: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 2

Les circuits logiques

La notion de circuits logiques a été introduite en vue de simplifier l’étude des circuits électroniques numériques.

Grâce à la notion de circuits logiques il est possible de travailler sur des systèmes extrêmement complexes sans pratiquement faire appel à aucune notion d’électronique.

Les systèmes électroniques numériques les plus complexes, tels les ordinateurs, sont construits à partir de circuits logiques (on utilise également portes logiques) fondamentaux. Il existe trois portes logiques élémentaires, le circuit NON (circuit inverseur), le circuit OU et le circuit ET.

Page 3: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 3

Les circuits logiques

Page 4: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

4sif-1053

Le circuit NON

Le circuit inverseur, ou circuit NON, effectue l’opération de complémentation d’une variable booléenne. Il comporte bien sûr une entrée et une sortie. Si dans l’entrée nous introduisons la variable A, à la sortie nous obtenons la variable complémentée A’.

A A

Page 5: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

5sif-1053

Le circuit OU

0

1

t

0

1

t

A

AB

C = A + B

B

C

0

1

t

Page 6: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

6sif-1053

Le circuit ET

0

1

t

0

1

t

A

B

C

0

1

t

AB

C = A x B

Page 7: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 7

Identités de l’algèbre de Boole

Page 8: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

8sif-1053

Le circuit NET

Le circuit NET (contraction de NON-ET) résulte de la mise en série d’un circuit ET et d’un circuit NON.

A

BA B+=A . B

A . B

AB

A B+=A . B

Page 9: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 9

Le circuit NET

Le circuit NET

Page 10: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

10sif-1053

Le circuit NI (OU complémenté) Le circuit NI résulte de la mise en série d’un circuit OU et d’un circuit NON.

A + BA

BA + B A . B=

A

BA + B A . B=

Page 11: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

11sif-1053

Il est important de constater que le circuit NET peut, par de judicieuses combinaisons, servir à réaliser les trois portes logiques de base.

AA i AA

AB

A . BAB

A . BA . B i

A

BB

A

A + B A + BiA

B

Loi d’idempotence (AA = A)

Loi de De Morgan (AB)’ = A’ + B’

Page 12: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 12

Le circuit OU EXCLUSIF (XOU) La porte OU EXCLUSIF est souvent appelée la porte “un mais pas tous”. On constate à partir du tableau booléen qu’il est semblable à celui de la fonction OU, à cela près que, quand les deux entrées sont à 1, la porte XOU donne un 0.

En fait, la porte XOU n’est validée (donne une sortie 1) que si ses entrées comportent un nombre impair de 1. La porte XOU peut donc être considérée comme un circuit de contrôle des bits impairs.

A A xor B

Page 13: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 13

Page 14: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 14

Circuits plus élaborés La combinaison de portes logiques permet le développement de circuits plus spécialisés

Par exemple, avec un circuit simple nous pourrions contrôler le flot de données

Page 15: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 15

Circuits plus élaborés Pour sélectionner une entrée de donnée parmi plusieurs et l’aiguiller vers une sortie il existe des circuits de multiplexage

O = (A ET Z) OU (B ET Y) OU (C ET X) OU (D ET W)

Page 16: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 16

Circuits plus élaborés En ajoutant un décodeur, nous pouvons sélectionner une des quatre entrées en ayant que deux signaux de sélection

O = (A ET (X’ ET Y’) ) OU (B ET (X ET Y’)) OU (C ET (X’ ET Y)) OU (D ET (X ET Y))

Page 17: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 17

Circuits plus élaborés Multiplexeur 4/1 avec la sélection de l’entrée par un décodeur

Page 18: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 18

Circuits plus élaborés Diagramme temporel d’un multiplexeur 4/1 avec la sélection de l’entrée par un décodeur

Page 19: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 19

Multiplexeur 4/1

Permet de sélectionner une entréeparmi quatre

O = (D0 ET (C1’ ET C2’) ) OU (D1 ET (C1 ET C2’)) OU (D2 ET (C1’ ET C2)) OU (D3 ET (C1 ET C2))

Page 20: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 20

Circuits plus élaborés Les circuits de décodage (décodeur) servent à la sélection de dispositifs:

Sélections de registres Sélections d’emplacements de mémoire Sélections d’opérations dans l’ALU

Page 21: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 21

Décodeur et ALU

10

1

Page 22: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 22

Décodeur 3/8

Page 23: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 23

Circuits plus élaborés Les circuits de décodage (décodeur) servent à la sélection de dispositifs

Par exemple: sélection de segments d’afficheur

Page 24: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 24

Circuits plus élaborés Regardons plus spécifiquement l’alimentation du segment a

Logique directe

a = W’X’Y’Z’ + W’X’YZ’ + W’X’YZ + W’XY’Z + W’XYZ + WX’Y’Z’ + WX’Y’Z

Logique inverse

a’ = W’X’Y’Z + W’XY’Z’ + W’XYZ’

Page 25: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 25

Circuits plus élaborés Alimentation du segment a

Page 26: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 26

Circuits plus élaborés Le contrôleur d’une machine à laver peut être considérer comme une représentation simplifiée de l’unité de contrôle d’un CPU

1 cycle = 30 minutes

Page 27: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 27

Circuits plus élaborés Chaque opération (instruction) est associée à un code de trois bits qui eux sont associés à des signaux de contrôle

Page 28: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 28

Circuits plus élaborés Nous pouvons alléger la logique de contrôle en emmagasinant les signaux de contrôle dans une mémoire

Page 29: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 29

Circuits plus élaborés La méthode de décodage par utilisation d’une mémoire peut aussi être améliorée en ajoutant la possibilité de branchement conditionnel et le bouclage

Et ce en élargissant le mot de contrôle: Par l’ajout d’un champ adresse qui permet d’effectuer un branchement à un autre emplacement dans la mémoire du bloc de contrôle

Par l’ajout d’un champ permettant d’identifier les branchements conditionnels

Page 30: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 30

Circuits plus élaborés

Page 31: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 31

CISC versus RISC

La microprogrammation permet de concevoir des architectures très élaborées.

Toutefois, les constructeurs des supers ordinateurs utilisent une stratégie très différente, car les très grandes vitesses d ’exécution sont difficilement réalisables avec la microprogrammation.

Les supers machines privilégient les architectures qui offrent un jeux d ’instructions réduit. Donc, plus simple à réaliser et plus rapide à l ’exécution.

Page 32: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 32

Ces architectures sont connues sous l ’acronyme RISC (Reduced Instruction Set Computer).

Ce terme a été choisi en opposition aux architectures « complexes » qui étaient la norme jusqu’à la fin des années 80 (Digital, Intel, IBM, entre autres).

Ces architectures sont du type CISC (Complex Instruction Set Computer).

La différence principale entre les architectures RISC et CISC réside dans la manière que l’unité de contrôle décode les instructions

Page 33: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 33

Architecture RISC La méthode de décodage utilisée dans la

première implémentation du système de contrôle de la machine à laver est dite cablée (Hard-wired) puisque le décodage est strictement effectué à l’aide de circuits logiques

Les architectures RISC utilisent le même principe:

L’instruction en cours d’exécution est extraite de la RAM et emmagasinée dans le IR

Le code d’instruction (ex: ADD, SUB, MOV) est utilisé pour produire les signaux de contrôle

Les registres d’état de l’ALU et un compteur de cycles machine servent aussi à la logique de contrôle pour produire les signaux de contrôle

Page 34: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 34

Architecture RISC

Page 35: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 35

Architecture CISC

Page 36: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 36

Architecture CISC

MAR: Memory adr. reg.MDR: Memory data reg.MBR: Memory byte reg.PC: Program counterSP: stack pointerLV: base pointer

Page 37: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 37

Architecture CISC

F0, F1: Opérations de l ’ALUENA, ENB: Validation des entrées (ENABLE)INVA: Inversion de AINC: Tenir compte du carry in (+ 1)

Page 38: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 38

Exemples d ’opérations

Incrément de 1 du SP

SP <- SP + 1

Bbus <- SP

ENB <- 1

ENA <- 0

INC <- 1

Cbus <- Bbus + 1

SP <- Cbus

Page 39: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 39

MPC: program counterMIR: instruction register

Architecture CISC

Page 40: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 40

Architecture CISC

NEXT_ADR.: adr. de la prochaine instructionJAM: détermine comment la prochaine instr. est sélectionnéeALU: fonction du ALU ou shifterC: reg. destinationMem: fonction mémoireB: reg. source

Page 41: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 41

Architecture CISC

Une pile est indispensable pour le bon fonctionnement de nos programmes

Une pile est un ensemble d’espaces mémoire qui permet de stocker les variables locales d’une procédure

LV pointe au début du bloc mémoire où sont stockées les variables locales d’une procédure

SP pointe sur la variable locale sur le dessus de la pile

Chaque variable est accédée en donnant le décalage par rapport à LV

Page 42: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 42

Architecture CISC (pile)

PROC()

{

int a1, a2, a3 ;

}

Page 43: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 43

Architecture CISC (pile)

{

a1 = a2 + a3 ;

}

ILOAD a2 ILOAD a3 ADD ISTORE a1

Page 44: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 44

Architecture CISC

==

Page 45: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 45

Introduction au ISA deMIC-1 (Architecture CISC) Jeu d’instructions

Page 46: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 46

Exemple d’implantation

Page 47: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 47

Exemple d’implantation

Exécution du IADD (0x60) instruction iadd1

MAR <- SP <- SP - 1; rd • SP pointe sur l’emplacement juste en dessous du haut (dessus) de la pile

• Lecture de cet emplacement dans MDR

instruction iadd2 H <- TOS

• H contient le contenu de l’emplacement du dessus de la pile (au iadd1)

instruction iadd3 MDR <- TOS <- MDR + H ; wr; goto

Main1• Addition • Écriture dans TOS et sur le dessus de la pile (adr. dans MAR)

Page 48: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 48

instruction iadd1

SP - 1

iadd2

Page 49: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 49

instruction iadd2

iadd3

TOS

Page 50: Sif-10531 Cours 5 n 3. Construction dun ordinateur F Les circuits logiques F L unité de contrôle (UC) F Lunité arithmétique et logique (UAL) n Le matériel

sif-1053 50

instruction iadd3

MDR + H

main1