La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Systèmes numériques Du microprocesseur aux circuits logiques.

Présentations similaires


Présentation au sujet: "Systèmes numériques Du microprocesseur aux circuits logiques."— Transcription de la présentation:

1 Systèmes numériques Du microprocesseur aux circuits logiques

2 Architecture des Ordinateurs
1- Processeurs 2- Mémoire 3- Entrées-Sorties Control Unit Arith. Logic. Unit mémoire E/S Processeur bus

3 Organisation de la mémoire
Processeur Mémoire Instructions + opérandes E/S Ex: addition du contenu du registre R1 avec la valeur numérique 7 ADD R1,#7 B1 07 bus data @: adresse

4 Organisation de la mémoire
processeur @ CD04 1: positionnement 1 R/W 2: bit R/W en lecture reg. d’adresse 1 CD05H CD04H 3: chip select actif 4: données sur le bus D bus d ’adresse CD04 @ CS CD05

5 Organisation de la mémoire
D bus M D0 CS D1 E S 1 X Z processeur Exemple: mémoires de 2 Mo 21 bits d ’adresse CS0 CS7 a23 a22 a21 déc. 3 vers 8 . a20:a0 @M R/W CS1 CS2 CS3 Décodage d ’adresse @ bus

6 Entrées / Sorties Une adresse est attribuée au E/S (comme à une position mémoire) D bus 3-états processeur mémoire interface d’entrée interface de sortie R/W CS CS CS Décodage d ’adresse @ bus

7 CPU La mémoire contient la suite d ’instructions constituant le programme langage machine B1 07 assemblage assembleur ADD R1,#7 compilation langage évolué a=a+7 Trois grands types d’instructions: transfert, calcul, branchement LD R1,# :chargement de la valeur numérique 4 dans le registre R1 MOV R2,ad1 :chargement du contenu de la dans R2 ADD R1,#4 :addition de la val. num. 4 au contenu de R1, résultat dans R1 SUB R2,R3 :soustrait le contenu de R3 à celui de R2, résultat dans R2 INC R :incrémentation de R1 de 1 BR,ad :branchement inconditionnel à l’adresse ad1 JE,ad :branchement conditionnel (si le bit Z est égal à 1) à l ’adresse ad2

8 CPU Codage des instructions
. . . Code op. Opérande 1 Opérande 2 Les instructions n ’ont pas toujours le même nombre d’opérandes Nécessité de « calculer » l’adresse de la prochaine instruction Code op. @ CD04 Compteur de programme Code op. @ CD07 Code op. @ CD08 Code op. @ CD10

9 CPU fetch/decode/execute UC ALU
recherche de l’instr. lecture de l’instruction décodage de l’instr. éxécution de l’instr. fetch/decode/execute A0 A7 UC A0 07 Lecture de l ’instruction depuis la mémoire (code op.  registre d ’instruction IR ) ALU Incrémentation du compteur de programme (le PC pointe le premier arg. ou la prochaine instr. ) CD06 CD05 CD04 PC B1 IR Décodage de l’instruction par l’UC A7 Exécution lecture des arguments (inc. PC) exécution CD04 MDR B1 B1 07

10 CPU Instructions de branchement Branchement inconditionnel Jp @ad1
le PC est chargé avec l ’adresse ad1 Branchement conditionnel Appel à un sous programme A0 UC ALU flag PC Saut absolu Saut relatif IR MDR Registre de « flag » ... B1 Z N Ov 07 =1 si le résultat délivré par l ’ALU est nul

11 CPU Sous Programme Appel à un sous programme call @ad1 UC …
@15A0 @15A1 inst. @15A2 … ALU flag PC IR @2200 inst. @2201 … @22E1 ret MDR B1 Mémoriser l ’adresse de retour Pile (stack) 07

12 CPU Sous Programme Sous programmes imbriqués … UC @15A0 call @2200
PC MDR B1 IR UC 07 ALU A0 flag SP pile Sous programmes imbriqués @15A0 @15A1 inst. @15A2 … @2200 inst. @2201 @22E1 ret @2900 inst. @29A0 ret Mémoire LIFO (last in - first out) Pointeur de pile (stack pointer)

13 Unité de Controle @CD04 B1 @CD05 07 UC PCread M@Rwr Memoryread
Lecture de l ’instruction depuis la mémoire (code op.  registre d ’instruction IR ) UC PCread Memoryread Memorywait PC en lecture en écriture requête à la mémoire acquitement mémoire X SP pile ALU flag Incrémentation du compteur de programme (le PC pointe le premier arg. ou la prochaine instr. ) PC IR Xwr ALUcmd(incX) Zread PCwr en lecture registre X en écriture commande de l’ALU registre Z en lecture PC en écriture Z MDR B1 Décodage de l’instruction par l’UC 07 Exécution lecture des arguments (inc. PC) exécution signal généré par l’UC signal d’entrée de l’UC

14 Unité de Controle Pour chaque instruction, l’UC doit générer
des signaux de commande (vers l ’ALU, les registres, la mémoire) en fonction de l’état courant des registres et de stimuli extérieurs UC X SP pile 2 implémentations matérielles ALU flag machine cablée machine microprogrammée PC IR Z MDR B1 07

15 Numération Représentation d ’un entier: an-1: MSB, bit de poids fort
a0: LSB, bit de poids fort 210 = 1024 1 kilo 220 = 1 Méga Code héxadécimal C5B3h 1210=Ch

16 Numération Représentation des entiers négatifs: Module et signe:
N = 0an-1….a1a0 -N = 1an-1….a1a0 4 = 0100 -4 = 1100 Complément à 1: N = an-1….a1a0 -N = an-1… a1a0 4 = 0100 -4 = 1011 Complément à 2: N = an-1….a1a0 -N = an-1… a1a = N + 1 4 = 0100 -4 = 1100

17 Numération Intérêt du C2: Addition binaire: 1 1001 9 +0011 +3 12 1100
La soustraction est un cas particulier de l ’addition: 9 -3 6 1001 +1101 10110

18 Algèbre de Boole Variable logique: variable appartenant à {0,1}
Fonction logique: fonction de variables logiques prenant ses valeurs dans {0,1} Addition: A+B 1 A B Produit: A.B 1 A B 1

19 Algèbre de Boole Quelques propriétés: (A+B).C = A.C + B.C
Théorèmes de de Morgan: A + B = A . B A . B = A + B Généralisation: F(Ai , + , . ) = F(Ai , . , + )

20 Portes logiques élémentaires
Matérialisation des variables logiques : Les variables logiques sont représentées (le plus souvent) par des tensions VH et VL Portes élémentaires: porte NAND Valim A B A A.B B S 1 A B

21 Portes logiques élémentaires
Portes élémentaires: porte NOR Valim A B A+B A B A B 1 S 1 1

22 Portes logiques élémentaires
Simplification d ’une fonction logique Exemple: afficheur 7-segments a N 8 9 10 11 DCBA 0000 0011 0100 0101 0110 0111 1000 1011 1100 1101 1110 1111 traduction visuelle de nombres écrits en binaire sur un afficheur comportant 7 DEL f b g e c d le décodeur est un circuit qui active les segments de a à g en fonction du code de N BA DC 00 01 11 10 table de Karnaugh: 00 01 11 10 1 1 1 1 1 1 x x x x 1 1 x x

23 Portes logiques élémentaires
Simplification d ’une fonction logique BA DC 00 01 11 10 a = 00 01 11 10 1 1 1 1 1 1 x x x x 1 1 x x situation jamais atteinte simplification possible:

24 Portes logiques élémentaires
Simplification d ’une fonction logique BA DC 00 01 11 10 a = 00 01 11 10 1 1 1 1 1 1 1 1 1 x x x x Adjacences dans la table de Karnaugh 1 1 1 x x DCBA + DCBA= DCA DB DCB DCA

25 Paramètres électriques et temporels
Définition des niveaux logiques Rappelons le circuit de l ’inverseur CMOS Valim La caractéristique de transfert de l ’inverseur est donné par (série HC): Vs Valim E S Ve Valim

26 Paramètres électriques et temporels
Définition des niveaux logiques Vs Valim A A A vs1 =ve2 ve1 ve2 vs2 vs2 Ve ve1 Valim vs1 =ve2

27 Paramètres électriques et temporels
Définition des niveaux logiques variation de la tension d ’alimentation Vs Valim A ? A A? ve1 ve2 vs2 vs1 =ve2 vs2 Ve ve1 Valim vs1 =ve2 effet de la température

28 Paramètres électriques et temporels
Définition des niveaux logiques Vs Valim VOHmin A A A ve1 ve2 vs2 VOLmax Ve VILmax VIHmin Valim VOLmax < VILmax et VOHmin > VIHmin

29 Paramètres électriques et temporels
Définition des niveaux logiques valeur minimale de la tension d ’entrée pour que le signal soit vu comme « 1 » valeur maximale de la tension d ’entrée pour que le signal soit vu comme « 0 » dans les conditions du test le circuit assure cette tension

30 Paramètres électriques et temporels
Courants de sortie Valim Valim IOH S=0 E=0 E=1 S=1 IOL

31 Paramètres électriques et temporels
Valim Valim Valim Courants de sortie E S E S charge t vs Valim IOH Courant statique  0 Consommation de courant en commutation E 1 =1 =0 0 =0 S =0 =1 =1 t vs IOL

32 Paramètres électriques et temporels
Courants de sortie courant maximal délivré par l ’alimentation au repos courants minimaux fournis à la charge pendant les transitions

33 Paramètres électriques et temporels
Paramètres temporels E S condition de charge E t tp: temps de propagation tt: temps de transition S tf t tpHL tpLH

34 Paramètres électriques et temporels
Paramètres temporels écart relatif maximal

35 Quelques fonctions combinatoires
La plupart de ces fonctions sont nécessaires à la réalisation d ’un système à µP, elles existent souvent aussi sous la forme de boitiers standards Comparaison de deux mots binaires

36 Quelques fonctions combinatoires
Générateur de parité Lors du traitement ou de la transmission d'un mot binaire, il peut arriver qu'une erreur sur un des bits intervienne (à la suite d'une variation des tensions d'alimentation ou d'une perturbation). En ajoutant à l'information utile, un bit supplémentaire appelé "bit de parité", il est possible de détecter qu'une erreur s'est produite. Ce bit vaut "1" si le nombre de "1" contenu dans le mot utile est pair: Ex: A7:A0 Seven Sodd A7:A0 Seven Sodd contradiction

37 Quelques fonctions combinatoires
Multiplexeur/Démultiplexeur 1

38 Quelques fonctions combinatoires
Arithmetic and Logic Unit ALU 16 bits registre opérande choix de l ’opérande choix d ’un fonctionnement « en ligne » ou synchronisé bits d ’état sélection de l ’opération retenue entrante sortie 3-états

39 Quelques fonctions combinatoires
Arithmetic and Logic Unit

40 Logique séquentielle Principe E1 S1 E2 S2 État initial Mémorisation 1
1 1 E1 1 S1 E2 S2 1 État initial Mémorisation

41 Logique séquentielle Principe E1 S1 E1 1 E2 S1 S2 mém. Table de vérité
S1 1 1 E1 1 E2 S1 S2 mém. Table de vérité E2 S2

42 Logique séquentielle Principe t t
Les sorties dépendent des entrées, des états précédents des entrées et des temps de retard dans les circuits

43 Logique séquentielle Principe S E1 Q T R E2 Table de vérité t T 1 R 1
R E2 1 R Table de vérité t S T 1 R 1 X S 1 X Q 1 t T mém. S t

44 Logique séquentielle D latch D E1 Q T E2 t Table de vérité T 1 D 1 X Q
D 1 X Q 1 mém.

45 Logique séquentielle D bascule D (D flip-flop) Q T T ’ t t t
Table de vérité T ’ t T 1,0 D 1 X Q 1 t T Q mém. t

46 Logique séquentielle Applications des bascules D D0:Dn
Registre parallèle Division de fréquence T t Q D Q t D T Q t

47 Logique séquentielle J K T Q bascule JK (JK flip-flop) J X 1 K T 0,1,
1 K T 0,1, état futur Qn Qn-1 mémor. mise à 0 mise à 1 toggle T t K J Q Toggle (J=1 et K=1) Mémor. (J=0 et K=0) Mise à 1 (J=1 et K=0) Mise à 0 (J=0 et K=1) J 1 X K état antérieur Qn-1 état futur Qn

48 Logique séquentielle Fonctions séquentielles: comptage t t t t 7 1 2 3
1 2 3 Chaque sortie est obtenue à partir de la précédente par une division par 2 de la fréquence

49 Logique séquentielle Fonctions séquentielles: comptage J Q K T 1 Q0 Q1
7 1 2 3 7 6 4

50 Logique séquentielle Fonctions séquentielles: comptage
Q0 change d ’état à chaque transition de Ck Q1 change d ’état à chaque transition de Ck, si Q0=1 Q1 change d ’état à chaque transition de Ck, si Q0 .Q1 =1 Q0 Q1 Q2 1 J Q K T J Q J Q Ck T T K Q K Q Compteur synchrone

51 Logique séquentielle Fonctions séquentielles: comptage

52 Logique séquentielle Fonctions séquentielles: registres D0:Dn
Registre parallèle: T Q0:Qn Les données d ’entrée (D0:Dn) sont transmises en sortie (Q0:Qn) à chaque front d ’horloge

53 Logique séquentielle Fonctions séquentielles: registres 1 1 1 D Q T D
1 1 1 D Q T D Q T Registre à décalage: D Q T Q T


Télécharger ppt "Systèmes numériques Du microprocesseur aux circuits logiques."

Présentations similaires


Annonces Google